cropper

CASE CLINIC
MEDCARE SERVICES

cropper
  • Welcome
  • Ask Case
  • Clinics
  • Departments
  • Medcare Insurance
  • Care Team
  • Our People
  • coming-soon
  • Connect
  • Loyalty Card
{"js":"PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CjxtZXRhIGNoYXJzZXQ9IlVURi04Ij4KPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAiPgo8dGl0bGU+Q2FzZSBDbGluaWMgwrcgVGlja2VyICsgRW1lcmdlbmN5IEJhcjwvdGl0bGU+CjxzdHlsZT4KKntib3gtc2l6aW5nOmJvcmRlci1ib3g7bWFyZ2luOjA7cGFkZGluZzowO30KYm9keXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O292ZXJmbG93LXg6aGlkZGVuO30KCi8qIOKUgOKUgCBTQ1JPTExJTkcgVElDS0VSIOKUgOKUgCAqLwoudG9wLXRpY2tlcnsKICBwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjExOwogIGJhY2tncm91bmQ6IzBBNzU0MTsKICBoZWlnaHQ6MzZweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyOwogIG92ZXJmbG93OmhpZGRlbjsKICBib3gtc2hhZG93OjAgMnB4IDE2cHggcmdiYSgxMCwxMTcsNjUsLjQpOwogIHdpZHRoOjEwMCU7Cn0KLnRpY2tlci10cmFja3sKICBkaXNwbGF5OmZsZXg7d2hpdGUtc3BhY2U6bm93cmFwOwogIGFuaW1hdGlvbjp0aWNrU2Nyb2xsIDY1cyBsaW5lYXIgaW5maW5pdGU7CiAgd2lsbC1jaGFuZ2U6dHJhbnNmb3JtOwp9Ci50aWNrZXItaXRlbXsKICBmb250LWZhbWlseTpJbnRlciwnSGVsdmV0aWNhIE5ldWUnLEFyaWFsLHNhbnMtc2VyaWY7CiAgZm9udC1zaXplOjEwcHg7Zm9udC13ZWlnaHQ6NzAwOwogIGxldHRlci1zcGFjaW5nOi4yZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOwogIGNvbG9yOndoaXRlO3BhZGRpbmc6MCAyOHB4OwogIGZsZXgtc2hyaW5rOjA7Cn0KLnRpY2tlci1zZXB7CiAgY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMzUpOwogIHBhZGRpbmc6MCA0cHg7ZmxleC1zaHJpbms6MDsKfQpAa2V5ZnJhbWVzIHRpY2tTY3JvbGx7CiAgMCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7fQogIDEwMCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7fQp9CgovKiDilIDilIAgRU1FUkdFTkNZIEJBUiDilIDilIAgKi8KLmVtZXJnZW5jeS1iYXJ7CiAgcG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxMDsKICBiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjMEI2MjM3LCMwQTc1NDEpOwogIHBhZGRpbmc6MTBweCAyNHB4OwogIGRpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7CiAganVzdGlmeS1jb250ZW50OmNlbnRlcjsKICBnYXA6MjBweDtmbGV4LXdyYXA6d3JhcDsKICB3aWR0aDoxMDAlOwp9Ci5lYi1wdWxzZXsKICB3aWR0aDo5cHg7aGVpZ2h0OjlweDsKICBiYWNrZ3JvdW5kOndoaXRlO2JvcmRlci1yYWRpdXM6NTAlOwogIGZsZXgtc2hyaW5rOjA7CiAgYW5pbWF0aW9uOmViUHVsc2UgMS40cyBlYXNlLWluLW91dCBpbmZpbml0ZTsKfQpAa2V5ZnJhbWVzIGViUHVsc2V7CiAgMCUsMTAwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlKDEpO30KICA1MCV7b3BhY2l0eTouMzt0cmFuc2Zvcm06c2NhbGUoMS41KTt9Cn0KLmViLXRleHR7CiAgZm9udC1mYW1pbHk6SW50ZXIsJ0hlbHZldGljYSBOZXVlJyxBcmlhbCxzYW5zLXNlcmlmOwogIGZvbnQtc2l6ZToxMXB4O2ZvbnQtd2VpZ2h0OjUwMDsKICBsZXR0ZXItc3BhY2luZzouMTJlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7CiAgY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuODUpOwp9Ci5lYi1udW17CiAgZm9udC1mYW1pbHk6SW50ZXIsJ0hlbHZldGljYSBOZXVlJyxBcmlhbCxzYW5zLXNlcmlmOwogIGZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjp3aGl0ZTsKfQouZWItbnVtIGF7Y29sb3I6d2hpdGU7dGV4dC1kZWNvcmF0aW9uOm5vbmU7fQouZWItc2Vwe2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjMpO30KCkBtZWRpYShtYXgtd2lkdGg6NjAwcHgpewogIC50aWNrZXItaXRlbXtmb250LXNpemU6OXB4O3BhZGRpbmc6MCAxOHB4O30KICAuZW1lcmdlbmN5LWJhcntwYWRkaW5nOjhweCAxNHB4O2dhcDoxMnB4O30KICAuZWItdGV4dHtmb250LXNpemU6MTBweDt9CiAgLmViLW51bXtmb250LXNpemU6MTJweDt9Cn0KPC9zdHlsZT4KPC9oZWFkPgo8Ym9keT4KCjwhLS0g4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQCiAgU0NST0xMSU5HIFRJQ0tFUgrilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgLS0+CjxkaXYgY2xhc3M9InRvcC10aWNrZXIiPgogIDxkaXYgY2xhc3M9InRpY2tlci10cmFjayI+CiAgICA8c3BhbiBjbGFzcz0idGlja2VyLWl0ZW0iPkNhc2UgQ2xpbmljIFVnYW5kYTwvc3Bhbj48c3BhbiBjbGFzcz0idGlja2VyLXNlcCI+4pyaPC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRpY2tlci1pdGVtIj5DYXNlIEhvc3BpdGFsIMK3IEthbXBhbGE8L3NwYW4+PHNwYW4gY2xhc3M9InRpY2tlci1zZXAiPsK3PC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRpY2tlci1pdGVtIj5FbWVyZ2VuY3kgMjQgSHJzIMK3IDA4MDAgMjExIDAwNTwvc3Bhbj48c3BhbiBjbGFzcz0idGlja2VyLXNlcCI+4pyaPC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRpY2tlci1pdGVtIj5DYXNlIE1lZENhcmUgSW5zdXJhbmNlPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aWNrZXItc2VwIj7Ctzwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJ0aWNrZXItaXRlbSI+Q2FzZSBNZWRpY2FsIFNlcnZpY2VzPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aWNrZXItc2VwIj7inJo8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0idGlja2VyLWl0ZW0iPkNhc2UgRGlhZ25vc3RpYyBDZW50cmU8L3NwYW4+PHNwYW4gY2xhc3M9InRpY2tlci1zZXAiPsK3PC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRpY2tlci1pdGVtIj5DYXNlIE1lZFNjaG9vbDwvc3Bhbj48c3BhbiBjbGFzcz0idGlja2VyLXNlcCI+4pyaPC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRpY2tlci1pdGVtIj5DYXNlIFBoYXJtYWN5PC9zcGFuPjxzcGFuIGNsYXNzPSJ0aWNrZXItc2VwIj7Ctzwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJ0aWNrZXItaXRlbSI+TG95YWx0eSBDYXJkIFByb2dyYW1tZSDCtyA1JSBCb251czwvc3Bhbj48c3BhbiBjbGFzcz0idGlja2VyLXNlcCI+4pyaPC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRpY2tlci1pdGVtIj5DYXNlIEhvc3BpdGFsIEVudGViYmUgwrcgMDM5MiAwMDQgMzE1PC9zcGFuPjxzcGFuIGNsYXNzPSJ0aWNrZXItc2VwIj7inJo8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0idGlja2VyLWl0ZW0iPkNhc2UgSG9zcGl0YWwgTmFhbHlhIMK3IDA3ODMgNzgzIDMzMzwvc3Bhbj48c3BhbiBjbGFzcz0idGlja2VyLXNlcCI+4pyaPC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRpY2tlci1pdGVtIj5DYXNlIEhvc3BpdGFsIEppbmphIMK3IDA3NDAgNTEzIDU1NTwvc3Bhbj48c3BhbiBjbGFzcz0idGlja2VyLXNlcCI+4pyaPC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRpY2tlci1pdGVtIj5DYXNlIEhvc3BpdGFsIEtpcmEgwrcgQ29taW5nIFNvb248L3NwYW4+PHNwYW4gY2xhc3M9InRpY2tlci1zZXAiPuKcmjwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJ0aWNrZXItaXRlbSI+QndleW9nZXJlcmUgwrcgT3BlbmluZyBTb29uPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aWNrZXItc2VwIj7inJo8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0idGlja2VyLWl0ZW0iPjMwIFllYXJzIFRyYW5zZm9ybWluZyBMaXZlcyDCtyBVZ2FuZGE8L3NwYW4+PHNwYW4gY2xhc3M9InRpY2tlci1zZXAiPuKcmjwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJ0aWNrZXItaXRlbSI+MzgsMDAwKyBITU8gTWVtYmVyczwvc3Bhbj48c3BhbiBjbGFzcz0idGlja2VyLXNlcCI+wrc8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0idGlja2VyLWl0ZW0iPklTTyBDZXJ0aWZpZWQgwrcgNTArIFNwZWNpYWxpc3RzPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aWNrZXItc2VwIj7inJo8L3NwYW4+CiAgICA8IS0tIERVUExJQ0FURSBmb3Igc2VhbWxlc3MgbG9vcCAtLT4KICAgIDxzcGFuIGNsYXNzPSJ0aWNrZXItaXRlbSI+Q2FzZSBDbGluaWMgVWdhbmRhPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aWNrZXItc2VwIj7inJo8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0idGlja2VyLWl0ZW0iPkNhc2UgSG9zcGl0YWwgwrcgS2FtcGFsYTwvc3Bhbj48c3BhbiBjbGFzcz0idGlja2VyLXNlcCI+wrc8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0idGlja2VyLWl0ZW0iPkVtZXJnZW5jeSAyNCBIcnMgwrcgMDgwMCAyMTEgMDA1PC9zcGFuPjxzcGFuIGNsYXNzPSJ0aWNrZXItc2VwIj7inJo8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0idGlja2VyLWl0ZW0iPkNhc2UgTWVkQ2FyZSBJbnN1cmFuY2U8L3NwYW4+PHNwYW4gY2xhc3M9InRpY2tlci1zZXAiPsK3PC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRpY2tlci1pdGVtIj5DYXNlIE1lZGljYWwgU2VydmljZXM8L3NwYW4+PHNwYW4gY2xhc3M9InRpY2tlci1zZXAiPuKcmjwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJ0aWNrZXItaXRlbSI+Q2FzZSBEaWFnbm9zdGljIENlbnRyZTwvc3Bhbj48c3BhbiBjbGFzcz0idGlja2VyLXNlcCI+wrc8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0idGlja2VyLWl0ZW0iPkNhc2UgTWVkU2Nob29sPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aWNrZXItc2VwIj7inJo8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0idGlja2VyLWl0ZW0iPkNhc2UgUGhhcm1hY3k8L3NwYW4+PHNwYW4gY2xhc3M9InRpY2tlci1zZXAiPsK3PC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRpY2tlci1pdGVtIj5Mb3lhbHR5IENhcmQgUHJvZ3JhbW1lIMK3IDUlIEJvbnVzPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aWNrZXItc2VwIj7inJo8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0idGlja2VyLWl0ZW0iPkNhc2UgSG9zcGl0YWwgRW50ZWJiZSDCtyAwMzkyIDAwNCAzMTU8L3NwYW4+PHNwYW4gY2xhc3M9InRpY2tlci1zZXAiPuKcmjwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJ0aWNrZXItaXRlbSI+Q2FzZSBIb3NwaXRhbCBOYWFseWEgwrcgMDc4MyA3ODMgMzMzPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aWNrZXItc2VwIj7inJo8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0idGlja2VyLWl0ZW0iPkNhc2UgSG9zcGl0YWwgSmluamEgwrcgMDc0MCA1MTMgNTU1PC9zcGFuPjxzcGFuIGNsYXNzPSJ0aWNrZXItc2VwIj7inJo8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0idGlja2VyLWl0ZW0iPkNhc2UgSG9zcGl0YWwgS2lyYSDCtyBDb21pbmcgU29vbjwvc3Bhbj48c3BhbiBjbGFzcz0idGlja2VyLXNlcCI+4pyaPC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRpY2tlci1pdGVtIj5Cd2V5b2dlcmVyZSDCtyBPcGVuaW5nIFNvb248L3NwYW4+PHNwYW4gY2xhc3M9InRpY2tlci1zZXAiPuKcmjwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJ0aWNrZXItaXRlbSI+MzAgWWVhcnMgVHJhbnNmb3JtaW5nIExpdmVzIMK3IFVnYW5kYTwvc3Bhbj48c3BhbiBjbGFzcz0idGlja2VyLXNlcCI+4pyaPC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRpY2tlci1pdGVtIj4zOCwwMDArIEhNTyBNZW1iZXJzPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aWNrZXItc2VwIj7Ctzwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJ0aWNrZXItaXRlbSI+SVNPIENlcnRpZmllZCDCtyA1MCsgU3BlY2lhbGlzdHM8L3NwYW4+PHNwYW4gY2xhc3M9InRpY2tlci1zZXAiPuKcmjwvc3Bhbj4KICA8L2Rpdj4KPC9kaXY+Cgo8IS0tIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkAogIEVNRVJHRU5DWSBCQVIK4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQIC0tPgo8ZGl2IGNsYXNzPSJlbWVyZ2VuY3ktYmFyIj4KICA8c3BhbiBjbGFzcz0iZWItcHVsc2UiPjwvc3Bhbj4KICA8c3BhbiBjbGFzcz0iZWItdGV4dCI+RW1lcmdlbmN5IFNlcnZpY2VzIMK3IDI0IEhvdXJzIMK3IDM2NSBEYXlzPC9zcGFuPgogIDxzcGFuIGNsYXNzPSJlYi1udW0iPjxhIGhyZWY9InRlbDowODAwMjExMDA1Ij5Ub2xsIEZyZWU6IDA4MDAgMjExIDAwNTwvYT48L3NwYW4+CiAgPHNwYW4gY2xhc3M9ImViLXNlcCI+fDwvc3Bhbj4KICA8c3BhbiBjbGFzcz0iZWItbnVtIj48YSBocmVmPSJodHRwczovL3dhLm1lLzI1Njc2NDIwOTg4OSI+V2hhdHNBcHA6ICsyNTYgNzY0IDIwOSA4ODk8L2E+PC9zcGFuPgo8L2Rpdj4KCjwvYm9keT4KPC9odG1sPg==","embed":""}
Case Clinic · Ticker + Emergency Bar
Case Clinic Uganda✚ Case Hospital · Kampala· Emergency 24 Hrs · 0800 211 005✚ Case MedCare Insurance· Case Medical Services✚ Case Diagnostic Centre· Case MedSchool✚ Case Pharmacy· Loyalty Card Programme · 5% Bonus✚ Case Hospital Entebbe · 0392 004 315✚ Case Hospital Naalya · 0783 783 333✚ Case Hospital Jinja · 0740 513 555✚ Case Hospital Kira · Coming Soon✚ Bweyogerere · Opening Soon✚ 30 Years Transforming Lives · Uganda✚ 38,000+ HMO Members· ISO Certified · 50+ Specialists✚ Case Clinic Uganda✚ Case Hospital · Kampala· Emergency 24 Hrs · 0800 211 005✚ Case MedCare Insurance· Case Medical Services✚ Case Diagnostic Centre· Case MedSchool✚ Case Pharmacy· Loyalty Card Programme · 5% Bonus✚ Case Hospital Entebbe · 0392 004 315✚ Case Hospital Naalya · 0783 783 333✚ Case Hospital Jinja · 0740 513 555✚ Case Hospital Kira · Coming Soon✚ Bweyogerere · Opening Soon✚ 30 Years Transforming Lives · Uganda✚ 38,000+ HMO Members· ISO Certified · 50+ Specialists✚
Emergency Services · 24 Hours · 365 Days Toll Free: 0800 211 005 | WhatsApp: +256 764 209 889
{"js":"PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CjxtZXRhIGNoYXJzZXQ9IlVURi04Ij4KPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAiPgo8dGl0bGU+VmlzaXQgQ2FzZSBDbGluaWMgVWdhbmRhIHwgRmx1ZW50IGluIEhlYWx0aGNhcmUgwrcgU2luY2UgMTk5NTwvdGl0bGU+CjxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJDYXNlIENsaW5pYyBVZ2FuZGEgMzAgeWVhcnMgdHJhbnNmb3JtaW5nIGxpdmVzLiBGb3VyIGxvY2F0aW9ucyBhY3Jvc3MgVWdhbmRhLiBFbWVyZ2VuY3kgY2FyZSAyNC83LiBDYXJkaW9sb2d5LCBkaWFseXNpcywgc3VyZ2VyeSwgbWF0ZXJuaXR5IGFuZCAyMCsgc3BlY2lhbHRpZXMuIj4KPG1ldGEgbmFtZT0ia2V5d29yZHMiIGNvbnRlbnQ9IkNhc2UgQ2xpbmljIFVnYW5kYSwgQ2FzZSBIb3NwaXRhbCBLYW1wYWxhLCBwcml2YXRlIGhvc3BpdGFsIFVnYW5kYSwgZGlhbHlzaXMgVWdhbmRhLCBzdXJnZXJ5IEthbXBhbGEsIG1hdGVybml0eSBob3NwaXRhbCBVZ2FuZGEsIENhc2UgTWVkQ2FyZSBpbnN1cmFuY2UiPgo8bWV0YSBwcm9wZXJ0eT0ib2c6dGl0bGUiIGNvbnRlbnQ9IkNhc2UgQ2xpbmljIFVnYW5kYSB8IEZsdWVudCBpbiBIZWFsdGhjYXJlIFNpbmNlIDE5OTUiPgo8bWV0YSBwcm9wZXJ0eT0ib2c6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9IjMwIHllYXJzIHRyYW5zZm9ybWluZyBsaXZlcy4gRm91ciBsb2NhdGlvbnMuIEVtZXJnZW5jeSBjYXJlIDI0LzcuIFVnYW5kYSdzIG1vc3QgdHJ1c3RlZCBwcml2YXRlIGhlYWx0aGNhcmUgbmV0d29yay4iPgo8bWV0YSBwcm9wZXJ0eT0ib2c6dHlwZSIgY29udGVudD0id2Vic2l0ZSI+CjxtZXRhIHByb3BlcnR5PSJvZzpzaXRlX25hbWUiIGNvbnRlbnQ9IkNhc2UgQ2xpbmljIFVnYW5kYSI+CjxsaW5rIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9UGxheWZhaXIrRGlzcGxheTppdGFsLHdnaHRAMCw0MDA7MCw2MDA7MCw3MDA7MCw5MDA7MSw0MDA7MSw3MDAmZmFtaWx5PUludGVyOndnaHRAMzAwOzQwMDs1MDA7NjAwOzcwMCZkaXNwbGF5PXN3YXAiIHJlbD0ic3R5bGVzaGVldCI+CjxzdHlsZT4KOnJvb3R7CiAgLS1ncmVlbjojMEE3NTQxOwogIC0tZ3JlZW4yOiMwRDhGNEU7CiAgLS1ncmVlbjM6IzBCNjIzNzsKICAtLWdyZWVubGlnaHQ6cmdiYSgxMCwxMTcsNjUsLjE0KTsKICAtLXB1cnBsZTojNEIxRDdEOwogIC0tcHVycGxlMjojNzA0MEI4OwogIC0tcHVycGxlbGlnaHQ6cmdiYSg3NSwyOSwxMjUsLjE1KTsKICAtLW9yYW5nZTojRkY2QjAwOwogIC0tb3JhbmdlMjojRkY4NTMzOwogIC0tb3JhbmdlbGlnaHQ6cmdiYSgyNTUsMTA3LDAsLjEyKTsKICAtLWluZGlnbzojMUYxNjUwOwogIC0taW5kaWdvMjojMkExRjcwOwogIC0taW5kaWdvMzojMTUwRjQwOwogIC0td2hpdGU6I0ZGRkZGRjsKICAtLWNyZWFtOiNGOEZCRjk7CiAgLS1ib2R5OnJnYmEoMjQ4LDI1MSwyNDksLjkyKTsKICAtLW11dGVkOnJnYmEoMjQ4LDI1MSwyNDksLjY4KTsKICAtLWJvcmRlcjpyZ2JhKDEwLDExNyw2NSwuMjgpOwogIC0tYm9yZGVyMjpyZ2JhKDEwLDExNyw2NSwuMTQpOwogIC0tYm9yZGVycHVycGxlOnJnYmEoMTEyLDY0LDE4NCwuMjgpOwp9Cip7Ym94LXNpemluZzpib3JkZXItYm94O21hcmdpbjowO3BhZGRpbmc6MDt9Cmh0bWx7c2Nyb2xsLWJlaGF2aW9yOnNtb290aDt9CmJvZHl7YmFja2dyb3VuZDp2YXIoLS1pbmRpZ28pO2NvbG9yOnZhcigtLWNyZWFtKTsKICBmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE1cHg7bGluZS1oZWlnaHQ6MS42NTsKICBvdmVyZmxvdy14OmhpZGRlbjt9Cgpib2R5OjpiZWZvcmV7Y29udGVudDonJztwb3NpdGlvbjpmaXhlZDtpbnNldDowO3otaW5kZXg6MDsKICBiYWNrZ3JvdW5kOgogICAgcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgNjAlIDQwJSBhdCAyMCUgMCUscmdiYSgxMCwxMTcsNjUsLjA3KSAwJSx0cmFuc3BhcmVudCA2MCUpLAogICAgcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgNTAlIDQwJSBhdCA4MCUgMTAwJSxyZ2JhKDc1LDI5LDEyNSwuMDgpIDAlLHRyYW5zcGFyZW50IDYwJSk7CiAgcG9pbnRlci1ldmVudHM6bm9uZTt9CgoKCi8qIOKUgOKUgCBIRUFERVIg4pSA4pSAICovCmhlYWRlcntwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjEwOwogIGJhY2tncm91bmQ6cmdiYSgxOSwxMyw1NiwuOTcpOwogIGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlcjIpOwogIHBhZGRpbmc6MTRweCA0OHB4IDE0cHg7CiAgZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjsKICBhbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEycHg7fQoKLyogYnJhbmQgc2Nyb2xsIHJvdyAqLwovKiDilIDilIAgQlJBTkQgU0NST0xMIE9VVEVSIOKAlCB0cnVseSBmdWxsIHdpZHRoIOKUgOKUgCAqLwouYnJhbmQtc2Nyb2xsLW91dGVyewogIHdpZHRoOjEwMCU7CiAgYmFja2dyb3VuZDpyZ2JhKDE5LDEzLDU2LC45Nyk7CiAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgxMCwxMTcsNjUsLjE0KTsKICBvdmVyZmxvdzpoaWRkZW47CiAgZGlzcGxheTpibG9jazt9Ci5icmFuZC1zY3JvbGwtd3JhcHsKICB3aWR0aDoxMDAlOwogIG92ZXJmbG93OmhpZGRlbjsKICBkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDowOwogIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7fQouYnJhbmQtc2Nyb2xsLXRyYWNrewogIGRpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7CiAgd2hpdGUtc3BhY2U6bm93cmFwO2dhcDowOwogIGFuaW1hdGlvbjpicmFuZFNjcm9sbCAxOHMgbGluZWFyIGluZmluaXRlO30KQGtleWZyYW1lcyBicmFuZFNjcm9sbHsKICAwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt9CiAgMTAwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt9Cn0KLmJyYW5kLW5hbWV7CiAgZm9udC1mYW1pbHk6J1BsYXlmYWlyIERpc3BsYXknLHNlcmlmOwogIGZvbnQtc2l6ZTpjbGFtcCgyMHB0LDMuOHZ3LDM2cHQpOwogIGZvbnQtd2VpZ2h0OjkwMDtjb2xvcjp2YXIoLS1jcmVhbSk7CiAgbGV0dGVyLXNwYWNpbmc6LS4wMWVtOwogIHBhZGRpbmc6MCA0MHB4O30KLmJyYW5kLW5hbWUgLmNje2NvbG9yOnZhcigtLWdyZWVuMik7fQouYnJhbmQtbmFtZS5ob3NwIC5jY3tjb2xvcjp2YXIoLS1vcmFuZ2UpO30KLmJyYW5kLW5hbWUuaW5zIC5jY3tjb2xvcjp2YXIoLS1wdXJwbGUyKTt9Ci5icmFuZC1uYW1lLnN2YyAuY2N7Y29sb3I6I0M5QTg0Qzt9Ci5icmFuZC1uYW1lLnByaW1hcnktYnJhbmR7CiAgZm9udC1zaXplOmNsYW1wKDI2cHQsNS41dncsNDhwdCk7CiAgY29sb3I6dmFyKC0tY3JlYW0pO30KLmJyYW5kLW5hbWUucHJpbWFyeS1icmFuZCAuY2N7CiAgY29sb3I6dmFyKC0tZ3JlZW4yKTt9Ci5icmFuZC1uYW1lLnBoYXJtIC5jY3tjb2xvcjojNEMxRDhGO30KLmJyYW5kLW5hbWUuZGlhZyAuY2N7Y29sb3I6I0U4NjUwQTt9Ci5icmFuZC1zZXB7CiAgY29sb3I6cmdiYSgxMCwxMTcsNjUsLjQpOwogIGZvbnQtc2l6ZToxMHB4O2ZsZXgtc2hyaW5rOjA7fQoKLyogZW1lcmdlbmN5IHJvdyDigJQgbWlkZGxlIGJldHdlZW4gYnJhbmRzIGFuZCBuYXYgKi8KLmhlYWRlci1lbWVyZy1yb3d7CiAgZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTJweDsKICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZsZXgtd3JhcDp3cmFwO30KLmJyYW5kLW11dGVkewogIGZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6OXB4OwogIGZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMjJlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7CiAgY29sb3I6dmFyKC0tbXV0ZWQpO30KLmJ0bi1lbWVyZ2VuY3l7cGFkZGluZzoxMHB4IDI4cHg7CiAgYmFja2dyb3VuZDp2YXIoLS1vcmFuZ2UpO2NvbG9yOndoaXRlOwogIGZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo3MDA7CiAgbGV0dGVyLXNwYWNpbmc6LjFlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7CiAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7Ym9yZGVyOm5vbmU7Y3Vyc29yOnBvaW50ZXI7CiAgdHJhbnNpdGlvbjphbGwgLjJzO2JvcmRlci1yYWRpdXM6MnB4OwogIGJveC1zaGFkb3c6MCA0cHggMTZweCByZ2JhKDI1NSwxMDcsMCwuMyk7fQouYnRuLWVtZXJnZW5jeTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLW9yYW5nZTIpOwogIHRyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpOwogIGJveC1zaGFkb3c6MCA2cHggMjBweCByZ2JhKDI1NSwxMDcsMCwuNDUpO30KCi8qIG5hdiByb3cgKi8KLmhlYWRlci1uYXZ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTZweDsKICBmbGV4LXdyYXA6d3JhcDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO30KLmgtbGlua3tmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6NTAwOwogIGNvbG9yOnZhcigtLW11dGVkKTt0ZXh0LWRlY29yYXRpb246bm9uZTtsZXR0ZXItc3BhY2luZzouMDVlbTsKICB0cmFuc2l0aW9uOmNvbG9yIC4yczt9Ci5oLWxpbms6aG92ZXJ7Y29sb3I6dmFyKC0tY3JlYW0pO30KLmxvZ28tc3Vie2Rpc3BsYXk6bm9uZTt9IC8qIGhpZGRlbiDigJQgYnJhbmRzIGFyZSBub3cgaW4gc2Nyb2xsICovCgovKiDilIDilIAgVFJVU1QgU1RSSVAg4pSA4pSAICovCi50cnVzdC1zdHJpcHsKICBkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7CiAganVzdGlmeS1jb250ZW50OmNlbnRlcjtmbGV4LXdyYXA6d3JhcDsKICBtYXJnaW4tYm90dG9tOjE2cHg7fQoudHJ1c3QtaXRlbXtmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7Zm9udC1zaXplOjkuNXB4OwogIGZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMTRlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7CiAgY29sb3I6dmFyKC0tZ3JlZW4yKTt9Ci50cnVzdC1zZXB7Y29sb3I6dmFyKC0tYm9yZGVyKTtmb250LXNpemU6MTBweDt9CgovKiDilIDilIAgSU5TVVJBTkNFIEJVVFRPTiDilIDilIAgKi8KLmJ0bi1pbnN1cmFuY2V7cGFkZGluZzoxNHB4IDI4cHg7CiAgYmFja2dyb3VuZDp2YXIoLS1wdXJwbGUyKTtjb2xvcjp3aGl0ZTsKICBmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6NzAwOwogIGxldHRlci1zcGFjaW5nOi4xZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOwogIHRleHQtZGVjb3JhdGlvbjpub25lO3RyYW5zaXRpb246YWxsIC4ycztib3JkZXItcmFkaXVzOjJweDt9Ci5idG4taW5zdXJhbmNlOmhvdmVye2JhY2tncm91bmQ6IzgwNTBDODsKICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMnB4KTsKICBib3gtc2hhZG93OjAgOHB4IDI0cHggcmdiYSgxMTIsNjQsMTg0LC4zNSk7fQoKLyog4pSA4pSAIEZFQVRVUkVEIFJFVklFVyDilIDilIAgKi8KLmZlYXR1cmVkLXJldmlld3sKICBtYXgtd2lkdGg6NzIwcHg7bWFyZ2luOjAgYXV0byAzNnB4OwogIHBhZGRpbmc6MCA0OHB4O30KLmZlYXR1cmVkLXJldmlldy1pbm5lcnsKICBiYWNrZ3JvdW5kOnJnYmEoMTAsMTE3LDY1LC4wOCk7CiAgYm9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpOwogIGJvcmRlci1sZWZ0OjRweCBzb2xpZCB2YXIoLS1vcmFuZ2UpOwogIHBhZGRpbmc6MjhweCAzMnB4O2JvcmRlci1yYWRpdXM6MnB4OwogIHBvc2l0aW9uOnJlbGF0aXZlO30KLmZlYXR1cmVkLWJhZGdlewogIGRpc3BsYXk6aW5saW5lLWJsb2NrOwogIGZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6OC41cHg7CiAgZm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi4xOGVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsKICBjb2xvcjp3aGl0ZTtiYWNrZ3JvdW5kOnZhcigtLW9yYW5nZSk7CiAgcGFkZGluZzo0cHggMTJweDtib3JkZXItcmFkaXVzOjJweDsKICBtYXJnaW4tYm90dG9tOjE2cHg7fQouZmVhdHVyZWQtcXVvdGV7CiAgZm9udC1mYW1pbHk6J1BsYXlmYWlyIERpc3BsYXknLHNlcmlmOwogIGZvbnQtc3R5bGU6aXRhbGljO2ZvbnQtc2l6ZToxNC41cHQ7CiAgY29sb3I6dmFyKC0tYm9keSk7bGluZS1oZWlnaHQ6MS43MjsKICBtYXJnaW4tYm90dG9tOjE2cHg7fQouZmVhdHVyZWQtc3RhcnN7CiAgY29sb3I6dmFyKC0tb3JhbmdlKTtmb250LXNpemU6MTRweDsKICBsZXR0ZXItc3BhY2luZzozcHg7bWFyZ2luLWJvdHRvbToxMnB4O30KLmZlYXR1cmVkLWF0dHJ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6M3B4O30KLmZlYXR1cmVkLW5hbWV7CiAgZm9udC1mYW1pbHk6J0ludGVyJyxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMXB4OwogIGZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMTJlbTsKICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6dmFyKC0tZ3JlZW4yKTt9Ci5mZWF0dXJlZC10aXRsZXsKICBmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEwLjVweDsKICBjb2xvcjp2YXIoLS1tdXRlZCk7fQoKLyog4pSA4pSAIFJFVklFV1MgU0NST0xMIOKUgOKUgCAqLwoucmV2aWV3c3twb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7CiAgcGFkZGluZzo0OHB4IDA7b3ZlcmZsb3c6aGlkZGVuOwogIGJhY2tncm91bmQ6dmFyKC0taW5kaWdvMik7CiAgYm9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyMik7CiAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYm9yZGVyMik7fQoucmV2aWV3cy1oZWFkZXJ7dGV4dC1hbGlnbjpjZW50ZXI7bWFyZ2luLWJvdHRvbToyOHB4O3BhZGRpbmc6MCA0OHB4O30KLnJldmlld3MtdHJhY2std3JhcHtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7fQoucmV2aWV3cy10cmFjay13cmFwOjpiZWZvcmUsCi5yZXZpZXdzLXRyYWNrLXdyYXA6OmFmdGVyewogIGNvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7d2lkdGg6ODBweDt6LWluZGV4OjI7CiAgcG9pbnRlci1ldmVudHM6bm9uZTt9Ci5yZXZpZXdzLXRyYWNrLXdyYXA6OmJlZm9yZXtsZWZ0OjA7CiAgYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdmFyKC0taW5kaWdvMiksdHJhbnNwYXJlbnQpO30KLnJldmlld3MtdHJhY2std3JhcDo6YWZ0ZXJ7cmlnaHQ6MDsKICBiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx0cmFuc3BhcmVudCx2YXIoLS1pbmRpZ28yKSk7fQoucmV2aWV3cy10cmFja3sKICBkaXNwbGF5OmZsZXg7Z2FwOjE2cHg7d2lkdGg6bWF4LWNvbnRlbnQ7CiAgYW5pbWF0aW9uOnJldmlld1Njcm9sbCAzNXMgbGluZWFyIGluZmluaXRlO30KLnJldmlld3MtdHJhY2s6aG92ZXJ7YW5pbWF0aW9uLXBsYXktc3RhdGU6cGF1c2VkO30KQGtleWZyYW1lcyByZXZpZXdTY3JvbGx7CiAgMCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7fQogIDEwMCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7fQp9Ci5yZXZpZXctY2FyZHsKICBiYWNrZ3JvdW5kOnJnYmEoMTAsMTE3LDY1LC4wNik7CiAgYm9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIyKTsKICBib3JkZXItbGVmdDozcHggc29saWQgdmFyKC0tZ3JlZW4pOwogIHBhZGRpbmc6MjBweCAyMnB4O3dpZHRoOjMwMHB4O2ZsZXgtc2hyaW5rOjA7CiAgYm9yZGVyLXJhZGl1czoycHg7fQoucmV2aWV3LXN0YXJze2NvbG9yOnZhcigtLW9yYW5nZSk7Zm9udC1zaXplOjExcHg7CiAgbGV0dGVyLXNwYWNpbmc6MnB4O21hcmdpbi1ib3R0b206OHB4O2Rpc3BsYXk6YmxvY2s7fQoucmV2aWV3LXRleHR7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tYm9keSk7CiAgbGluZS1oZWlnaHQ6MS43O21hcmdpbi1ib3R0b206MTJweDsKICBmb250LXN0eWxlOml0YWxpYzt9Ci5yZXZpZXctbmFtZXtmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEwcHg7CiAgZm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi4xMmVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsKICBjb2xvcjp2YXIoLS1ncmVlbjIpO30KCi8qIOKUgOKUgCBIRVJPIOKUgOKUgCAqLwouaGVyb3twb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7CiAgcGFkZGluZzo0MHB4IDQ4cHggNTZweDt0ZXh0LWFsaWduOmNlbnRlcjttYXgtd2lkdGg6ODIwcHg7bWFyZ2luOjAgYXV0bzt9Ci5oZXJvLXRhZ3tkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDsKICBmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEwcHg7Zm9udC13ZWlnaHQ6NjAwOwogIGxldHRlci1zcGFjaW5nOi4yMmVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtjb2xvcjp2YXIoLS1ncmVlbjIpOwogIG1hcmdpbi1ib3R0b206MjJweDtwYWRkaW5nOjZweCAxNnB4OwogIGJhY2tncm91bmQ6dmFyKC0tZ3JlZW5saWdodCk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpOwogIGJvcmRlci1yYWRpdXM6MnB4O30KLmhlcm8tdGFnOjpiZWZvcmV7Y29udGVudDon4peGJztmb250LXNpemU6N3B4O30KaDF7Zm9udC1mYW1pbHk6J1BsYXlmYWlyIERpc3BsYXknLHNlcmlmOwogIGZvbnQtc2l6ZTpjbGFtcCgyNnB0LDZ2dyw1NHB0KTtmb250LXdlaWdodDo5MDA7CiAgbGluZS1oZWlnaHQ6Ljk7Y29sb3I6dmFyKC0tY3JlYW0pO21hcmdpbi1ib3R0b206MThweDsKICBsZXR0ZXItc3BhY2luZzotLjAyZW07fQpoMSBlbXtjb2xvcjp2YXIoLS1ncmVlbjIpO2ZvbnQtc3R5bGU6aXRhbGljO30KLmhlcm8tZmx1ZW50e2ZvbnQtZmFtaWx5OidQbGF5ZmFpciBEaXNwbGF5JyxzZXJpZjtmb250LXN0eWxlOml0YWxpYzsKICBmb250LXNpemU6Y2xhbXAoMTRwdCwzdncsMjJwdCk7Y29sb3I6dmFyKC0tb3JhbmdlKTsKICBtYXJnaW4tYm90dG9tOjEycHg7ZGlzcGxheTpibG9jazt9Ci5oZXJvLXJ1bGV7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTJweDsKICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbjoxOHB4IDA7fQouaGVyby1ydWxlOjpiZWZvcmUsLmhlcm8tcnVsZTo6YWZ0ZXJ7Y29udGVudDonJzsKICB3aWR0aDo0MHB4O2hlaWdodDoxcHg7CiAgYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdHJhbnNwYXJlbnQsdmFyKC0tZ3JlZW4pKTt9Ci5oZXJvLXJ1bGUgc3Bhbntmb250LXNpemU6MTRweDtjb2xvcjp2YXIoLS1ncmVlbjIpO30KLmhlcm8tc3Vie2ZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6MTUuNXB4O2ZvbnQtd2VpZ2h0OjMwMDsKICBjb2xvcjp2YXIoLS1ib2R5KTtsaW5lLWhlaWdodDoxLjc1O21heC13aWR0aDo1ODBweDsKICBtYXJnaW46MCBhdXRvIDMycHg7fQouaGVyby12aWRlb3sKICB3aWR0aDoxMDAlO21heC13aWR0aDo2ODBweDsKICBtYXJnaW46MCBhdXRvIDMycHg7CiAgYm9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpOwogIGJvcmRlci1yYWRpdXM6NHB4O292ZXJmbG93OmhpZGRlbjsKICBib3gtc2hhZG93OjAgMTZweCA0OHB4IHJnYmEoMCwwLDAsLjQpOwogIGJhY2tncm91bmQ6dmFyKC0taW5kaWdvMik7fQouaGVyby12aWRlbyBpZnJhbWV7CiAgZGlzcGxheTpibG9jazt3aWR0aDoxMDAlOwogIG1pbi1oZWlnaHQ6MzIwcHg7Ym9yZGVyOm5vbmU7fQoKLmhlcm8tY3Rhc3tkaXNwbGF5OmZsZXg7Z2FwOjEycHg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbGV4LXdyYXA6d3JhcDt9Ci5idG4tcHJpbWFyeXtwYWRkaW5nOjE0cHggMjhweDsKICBiYWNrZ3JvdW5kOnZhcigtLW9yYW5nZSk7Y29sb3I6d2hpdGU7CiAgZm9udC1mYW1pbHk6J0ludGVyJyxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMXB4O2ZvbnQtd2VpZ2h0OjcwMDsKICBsZXR0ZXItc3BhY2luZzouMWVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsKICB0ZXh0LWRlY29yYXRpb246bm9uZTt0cmFuc2l0aW9uOmFsbCAuMnM7Ym9yZGVyLXJhZGl1czoycHg7fQouYnRuLXByaW1hcnk6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1vcmFuZ2UyKTsKICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMnB4KTsKICBib3gtc2hhZG93OjAgOHB4IDI0cHggcmdiYSgyNTUsMTA3LDAsLjM1KTt9Ci5idG4tb3V0bGluZXtwYWRkaW5nOjE0cHggMjhweDsKICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Y29sb3I6dmFyKC0tZ3JlZW4yKTsKICBiYWNrZ3JvdW5kOnZhcigtLWdyZWVubGlnaHQpOwogIGZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo2MDA7CiAgbGV0dGVyLXNwYWNpbmc6LjFlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7CiAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7dHJhbnNpdGlvbjphbGwgLjJzO2JvcmRlci1yYWRpdXM6MnB4O30KLmJ0bi1vdXRsaW5lOmhvdmVye2JhY2tncm91bmQ6cmdiYSgxMCwxMTcsNjUsLjE4KTsKICBib3JkZXItY29sb3I6dmFyKC0tZ3JlZW4yKTt9CgovKiDilIDilIAgRElWSURFUiDilIDilIAgKi8KLmRpdmlkZXJ7aGVpZ2h0OjFweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7CiAgYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdHJhbnNwYXJlbnQsdmFyKC0tYm9yZGVyMiksdHJhbnNwYXJlbnQpO30KCi8qIOKUgOKUgCBTVEFUUyDilIDilIAgKi8KLnN0YXRze3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTsKICBkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg0LDFmcik7CiAgZ2FwOjFweDtiYWNrZ3JvdW5kOnZhcigtLWJvcmRlcjIpO30KLnN0YXQtY3tiYWNrZ3JvdW5kOnZhcigtLWluZGlnbzIpO3BhZGRpbmc6MjhweCAxNnB4O3RleHQtYWxpZ246Y2VudGVyO30KLnN0YXQtbnVte2ZvbnQtZmFtaWx5OidQbGF5ZmFpciBEaXNwbGF5JyxzZXJpZjtmb250LXNpemU6MzBwdDsKICBmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tZ3JlZW4yKTtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjE7fQouc3RhdC1sYWJlbHtmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7Zm9udC1zaXplOjkuNXB4OwogIGZvbnQtd2VpZ2h0OjUwMDtsZXR0ZXItc3BhY2luZzouMTJlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7CiAgY29sb3I6dmFyKC0tbXV0ZWQpO21hcmdpbi10b3A6NnB4O2Rpc3BsYXk6YmxvY2s7fQoKLyog4pSA4pSAIFNFQ1RJT04g4pSA4pSAICovCi5zZWN0aW9ue3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTsKICBwYWRkaW5nOjcycHggNDhweDttYXgtd2lkdGg6MTA0MHB4O21hcmdpbjowIGF1dG87fQouc2VjLXRhZ3tmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7Zm9udC1zaXplOjkuNXB4O2ZvbnQtd2VpZ2h0OjcwMDsKICBsZXR0ZXItc3BhY2luZzouMjJlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6dmFyKC0tZ3JlZW4yKTsKICBtYXJnaW4tYm90dG9tOjEwcHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O30KLnNlYy10YWc6OmJlZm9yZXtjb250ZW50Oifil4YnO2ZvbnQtc2l6ZTo3cHg7fQpoMntmb250LWZhbWlseTonUGxheWZhaXIgRGlzcGxheScsc2VyaWY7CiAgZm9udC1zaXplOmNsYW1wKDE4cHQsNHZ3LDM0cHQpO2ZvbnQtd2VpZ2h0OjcwMDsKICBjb2xvcjp2YXIoLS1jcmVhbSk7bWFyZ2luLWJvdHRvbToyOHB4O2xpbmUtaGVpZ2h0OjE7fQpoMiBlbXtjb2xvcjp2YXIoLS1ncmVlbjIpO2ZvbnQtc3R5bGU6aXRhbGljO30KCi8qIOKUgOKUgCBTRVJWSUNFUyBHUklEIOKUgOKUgCAqLwouc2VydmljZXMtZ3JpZHtkaXNwbGF5OmdyaWQ7CiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgzLDFmcik7Z2FwOjJweDt9Ci5zdmMtY2FyZHtiYWNrZ3JvdW5kOnZhcigtLWluZGlnbzIpO3BhZGRpbmc6MjJweCAyMHB4OwogIGJvcmRlci1sZWZ0OjNweCBzb2xpZCB0cmFuc3BhcmVudDsKICB0cmFuc2l0aW9uOmJvcmRlci1sZWZ0LWNvbG9yIC4yNXMsYmFja2dyb3VuZCAuMjVzO2N1cnNvcjpkZWZhdWx0O30KLnN2Yy1jYXJkOmhvdmVye2JvcmRlci1sZWZ0LWNvbG9yOnZhcigtLWdyZWVuMik7CiAgYmFja2dyb3VuZDpyZ2JhKDEwLDExNyw2NSwuMDYpO30KLnN2Yy1pY29ue2ZvbnQtc2l6ZToxLjRyZW07bWFyZ2luLWJvdHRvbToxMHB4O2Rpc3BsYXk6YmxvY2s7fQouc3ZjLW5hbWV7Zm9udC1mYW1pbHk6J1BsYXlmYWlyIERpc3BsYXknLHNlcmlmO2ZvbnQtc2l6ZToxMy41cHQ7CiAgZm9udC13ZWlnaHQ6NzAwO2NvbG9yOnZhcigtLWNyZWFtKTttYXJnaW4tYm90dG9tOjZweDt9Ci5zdmMtZGVzY3tmb250LXNpemU6MTIuNXB4O2NvbG9yOnZhcigtLW11dGVkKTtsaW5lLWhlaWdodDoxLjY7fQoKLyog4pSA4pSAIEZJUlNUUyDilIDilIAgKi8KLmZpcnN0c3twb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7CiAgYmFja2dyb3VuZDp2YXIoLS1pbmRpZ28yKTsKICBib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIyKTsKICBib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIyKTsKICBwYWRkaW5nOjY0cHggNDhweDt9Ci5maXJzdHMtaW5uZXJ7bWF4LXdpZHRoOjEwNDBweDttYXJnaW46MCBhdXRvO30KLmZpcnN0cy1ncmlke2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIDFmcjsKICBnYXA6MnB4O21hcmdpbi10b3A6MjhweDt9Ci5maXJzdC1pdGVte2JhY2tncm91bmQ6cmdiYSgxMCwxMTcsNjUsLjA2KTsKICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcjIpOwogIGJvcmRlci1sZWZ0OjRweCBzb2xpZCB2YXIoLS1ncmVlbik7CiAgcGFkZGluZzoyMHB4IDIycHg7ZGlzcGxheTpmbGV4O2dhcDoxNnB4O2FsaWduLWl0ZW1zOnN0YXJ0O30KLmZpLXllYXJ7Zm9udC1mYW1pbHk6J0ludGVyJyxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTo5cHg7CiAgZm9udC13ZWlnaHQ6NzAwO2NvbG9yOnZhcigtLW9yYW5nZSk7bGV0dGVyLXNwYWNpbmc6LjFlbTsKICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7ZmxleC1zaHJpbms6MDttYXJnaW4tdG9wOjJweDsKICBiYWNrZ3JvdW5kOnZhcigtLW9yYW5nZWxpZ2h0KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDEwNywwLC4yKTsKICBwYWRkaW5nOjNweCA4cHg7Ym9yZGVyLXJhZGl1czoycHg7fQouZmktdGV4dHtmb250LXNpemU6MTNweDtjb2xvcjp2YXIoLS1ib2R5KTtsaW5lLWhlaWdodDoxLjY1O30KCi8qIOKUgOKUgCBMT0NBVElPTlMg4pSA4pSAICovCi5sb2NhdGlvbnMtZ3JpZHtkaXNwbGF5OmdyaWQ7CiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnI7CiAgZ2FwOjJweDttYXJnaW4tdG9wOjI4cHg7CiAgYWxpZ24taXRlbXM6c3RyZXRjaDt9Ci5sb2MtY2FyZHtiYWNrZ3JvdW5kOnZhcigtLWluZGlnbzIpO3BhZGRpbmc6MjRweCAyMnB4OwogIGJvcmRlci10b3A6M3B4IHNvbGlkIHZhcigtLWJvcmRlcjIpOwogIHRyYW5zaXRpb246Ym9yZGVyLXRvcC1jb2xvciAuMnMsYmFja2dyb3VuZCAuMnM7CiAgZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjsKICBtaW4taGVpZ2h0OjIyMHB4O30KLmxvYy1jYXJkOmhvdmVye2JvcmRlci10b3AtY29sb3I6dmFyKC0tcHVycGxlMik7CiAgYmFja2dyb3VuZDp2YXIoLS1wdXJwbGVsaWdodCk7fQoubG9jLWNhcmQuY29taW5nLXNvb257CiAgYm9yZGVyLXRvcC1jb2xvcjp2YXIoLS1vcmFuZ2UpOwogIGJhY2tncm91bmQ6cmdiYSgyNTUsMTA3LDAsLjA1KTt9Ci5sb2MtY2FyZC5jb21pbmctc29vbjpob3ZlcnsKICBiYWNrZ3JvdW5kOnJnYmEoMjU1LDEwNywwLC4wOSk7fQouY29taW5nLWJhZGdle2Rpc3BsYXk6aW5saW5lLWJsb2NrOwogIGZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6OHB4O2ZvbnQtd2VpZ2h0OjcwMDsKICBsZXR0ZXItc3BhY2luZzouMTRlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7CiAgYmFja2dyb3VuZDp2YXIoLS1vcmFuZ2UpO2NvbG9yOndoaXRlOwogIHBhZGRpbmc6M3B4IDEwcHg7Ym9yZGVyLXJhZGl1czoycHg7bWFyZ2luLWJvdHRvbToxMHB4OwogIGFuaW1hdGlvbjpwdWxzZU9wYWNpdHkgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7fQpAa2V5ZnJhbWVzIHB1bHNlT3BhY2l0eXsKICAwJSwxMDAle29wYWNpdHk6MTt9NTAle29wYWNpdHk6LjY7fX0KLmxvYy1uYW1le2ZvbnQtZmFtaWx5OidQbGF5ZmFpciBEaXNwbGF5JyxzZXJpZjtmb250LXNpemU6MTVwdDsKICBmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tY3JlYW0pO21hcmdpbi1ib3R0b206NHB4O30KLmxvYy1iYWRnZXtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7CiAgZm9udC1zaXplOjhweDtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjEyZW07CiAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOwogIGJhY2tncm91bmQ6dmFyKC0tZ3JlZW5saWdodCk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpOwogIGNvbG9yOnZhcigtLWdyZWVuMik7cGFkZGluZzoycHggOHB4O2JvcmRlci1yYWRpdXM6MnB4OwogIG1hcmdpbi1ib3R0b206MTRweDt9Ci5sb2MtZGV0YWlsc3tmbGV4OjE7fQoubG9jLWRldGFpbHtmb250LXNpemU6MTIuNXB4O2NvbG9yOnZhcigtLW11dGVkKTsKICBtYXJnaW4tYm90dG9tOjZweDtkaXNwbGF5OmZsZXg7Z2FwOjhweDthbGlnbi1pdGVtczpzdGFydDt9Ci5sb2MtZGV0YWlsIGF7Y29sb3I6dmFyKC0tbXV0ZWQpO3RleHQtZGVjb3JhdGlvbjpub25lOwogIHRyYW5zaXRpb246Y29sb3IgLjJzO30KLmxvYy1kZXRhaWwgYTpob3Zlcntjb2xvcjp2YXIoLS1jcmVhbSk7fQoKLyog4pSA4pSAIEZPVU5ERVIg4pSA4pSAICovCi5mb3VuZGVye3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTsKICBiYWNrZ3JvdW5kOnZhcigtLWluZGlnbzIpOwogIGJvcmRlci10b3A6MXB4IHNvbGlkIHZhcigtLWJvcmRlcjIpO3BhZGRpbmc6NjRweCA0OHB4O30KLmZvdW5kZXItaW5uZXJ7bWF4LXdpZHRoOjEwNDBweDttYXJnaW46MCBhdXRvOwogIGRpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIDFmcjsKICBnYXA6NDhweDthbGlnbi1pdGVtczpzdGFydDt9Ci5mb3VuZGVyLWxhYmVse2ZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6OXB4OwogIGZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMjJlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7CiAgY29sb3I6dmFyKC0tb3JhbmdlKTttYXJnaW4tYm90dG9tOjhweDtkaXNwbGF5OmJsb2NrO30KLmZvdW5kZXItbmFtZXtmb250LWZhbWlseTonUGxheWZhaXIgRGlzcGxheScsc2VyaWY7Zm9udC1zaXplOjI0cHQ7CiAgZm9udC13ZWlnaHQ6OTAwO2NvbG9yOnZhcigtLWNyZWFtKTttYXJnaW4tYm90dG9tOjRweDtsaW5lLWhlaWdodDoxLjE7fQouZm91bmRlci10aXRsZXtmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEwcHg7CiAgZm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi4xNGVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsKICBjb2xvcjp2YXIoLS1ncmVlbjIpO21hcmdpbi1ib3R0b206MThweDtkaXNwbGF5OmJsb2NrO30KLmZvdW5kZXItYmlve2ZvbnQtc2l6ZToxNHB4O2NvbG9yOnZhcigtLWJvZHkpO2xpbmUtaGVpZ2h0OjEuNzg7CiAgbWFyZ2luLWJvdHRvbToyMHB4O30KLmZvdW5kZXItY3JlZHN7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NXB4OwogIG1hcmdpbi1ib3R0b206MjJweDt9Ci5mYy1pdGVte2ZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6MTEuNXB4OwogIGNvbG9yOnZhcigtLW11dGVkKTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6c3RhcnQ7Z2FwOjhweDsKICBsaW5lLWhlaWdodDoxLjU7fQouZmMtaXRlbTo6YmVmb3Jle2NvbnRlbnQ6J+KXhic7Y29sb3I6dmFyKC0tZ3JlZW4yKTsKICBmb250LXNpemU6NnB4O2ZsZXgtc2hyaW5rOjA7bWFyZ2luLXRvcDo0cHg7fQouZm91bmRlci1saW5re2Rpc3BsYXk6aW5saW5lLWJsb2NrOwogIGZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6MTBweDtmb250LXdlaWdodDo3MDA7CiAgbGV0dGVyLXNwYWNpbmc6LjE0ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOwogIGNvbG9yOnZhcigtLW9yYW5nZSk7dGV4dC1kZWNvcmF0aW9uOm5vbmU7CiAgYm9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwxMDcsMCwuMyk7CiAgcGFkZGluZzoxMHB4IDIwcHg7Ym9yZGVyLXJhZGl1czoycHg7CiAgYmFja2dyb3VuZDp2YXIoLS1vcmFuZ2VsaWdodCk7dHJhbnNpdGlvbjphbGwgLjJzO30KLmZvdW5kZXItbGluazpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMjU1LDEwNywwLC4xOCk7fQouZm91bmRlci1yaWdodHtiYWNrZ3JvdW5kOnJnYmEoNzUsMjksMTI1LC4xNSk7CiAgYm9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXJwdXJwbGUpOwogIHBhZGRpbmc6MzBweDtib3JkZXItcmFkaXVzOjJweDtwb3NpdGlvbjpyZWxhdGl2ZTt9Ci5mb3VuZGVyLXJpZ2h0OjpiZWZvcmV7Y29udGVudDonIic7CiAgcG9zaXRpb246YWJzb2x1dGU7dG9wOi0yMHB4O2xlZnQ6MjBweDsKICBmb250LWZhbWlseTonUGxheWZhaXIgRGlzcGxheScsc2VyaWY7Zm9udC1zaXplOjYwcHQ7CiAgY29sb3I6dmFyKC0tcHVycGxlMik7bGluZS1oZWlnaHQ6MTtvcGFjaXR5Oi41O30KLmZyLXF1b3Rle2ZvbnQtZmFtaWx5OidQbGF5ZmFpciBEaXNwbGF5JyxzZXJpZjtmb250LXN0eWxlOml0YWxpYzsKICBmb250LXNpemU6MTRwdDtjb2xvcjp2YXIoLS1ib2R5KTtsaW5lLWhlaWdodDoxLjc7CiAgbWFyZ2luLWJvdHRvbToxOHB4O3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTt9Ci5mci1hdHRye2ZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6MTBweDtmb250LXdlaWdodDo1MDA7CiAgbGV0dGVyLXNwYWNpbmc6LjFlbTtjb2xvcjp2YXIoLS1tdXRlZCk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO30KLmZyLWZpcnN0c3ttYXJnaW4tdG9wOjIycHg7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6OHB4O30KLmZyLWZpcnN0e2ZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6MTEuNXB4OwogIGNvbG9yOnZhcigtLW11dGVkKTtkaXNwbGF5OmZsZXg7Z2FwOjhweDthbGlnbi1pdGVtczpzdGFydDsKICBwYWRkaW5nOjhweCAxMnB4O2JhY2tncm91bmQ6cmdiYSgxMCwxMTcsNjUsLjA2KTsKICBib3JkZXItbGVmdDoycHggc29saWQgdmFyKC0tZ3JlZW4pO2JvcmRlci1yYWRpdXM6MCAycHggMnB4IDA7fQouZnItZmlyc3Qgc3Bhbntjb2xvcjp2YXIoLS1ncmVlbjIpO2ZvbnQtd2VpZ2h0OjcwMDtmbGV4LXNocmluazowO30KCi8qIOKUgOKUgCBGUk9NIENBU0UgVE8gQ09NTVVOSVRZIOKUgOKUgCAqLwouY29tbXVuaXR5e3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTtwYWRkaW5nOjY0cHggNDhweDsKICB0ZXh0LWFsaWduOmNlbnRlcjt9Ci5jb21tdW5pdHktaW5uZXJ7bWF4LXdpZHRoOjYwMHB4O21hcmdpbjowIGF1dG87fQouY29tbXVuaXR5LXRhZ3tkaXNwbGF5OmlubGluZS1ibG9jazsKICBmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7Zm9udC1zaXplOjkuNXB4O2ZvbnQtd2VpZ2h0OjcwMDsKICBsZXR0ZXItc3BhY2luZzouMmVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtjb2xvcjp2YXIoLS1wdXJwbGUyKTsKICBtYXJnaW4tYm90dG9tOjEycHg7cGFkZGluZzo1cHggMTRweDsKICBiYWNrZ3JvdW5kOnZhcigtLXB1cnBsZWxpZ2h0KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcnB1cnBsZSk7CiAgYm9yZGVyLXJhZGl1czoycHg7fQouY29tbXVuaXR5LXRpdGxle2ZvbnQtZmFtaWx5OidQbGF5ZmFpciBEaXNwbGF5JyxzZXJpZjsKICBmb250LXNpemU6Y2xhbXAoMjBwdCw0dncsMzZwdCk7Zm9udC13ZWlnaHQ6NzAwOwogIGNvbG9yOnZhcigtLWNyZWFtKTtsaW5lLWhlaWdodDouOTU7bWFyZ2luLWJvdHRvbToxNHB4O30KLmNvbW11bml0eS10aXRsZSBlbXtjb2xvcjp2YXIoLS1ncmVlbjIpO2ZvbnQtc3R5bGU6aXRhbGljO30KLmNvbW11bml0eS1zdWJ7Zm9udC1zaXplOjE0cHg7Y29sb3I6dmFyKC0tYm9keSk7bGluZS1oZWlnaHQ6MS43NTsKICBtYXJnaW4tYm90dG9tOjI4cHg7fQoKLyog4pSA4pSAIENPTlRBQ1QgQkFORCDilIDilIAgKi8KLmNvbnRhY3QtYmFuZHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7CiAgYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLWdyZWVuMyksdmFyKC0tZ3JlZW4pKTsKICBwYWRkaW5nOjMycHggNDhweDt9Ci5jYi1pbm5lcnttYXgtd2lkdGg6MTA0MHB4O21hcmdpbjowIGF1dG87CiAgZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMywxZnIpOwogIGdhcDoyNHB4O2FsaWduLWl0ZW1zOmNlbnRlcjt9Ci5jYi1pdGVte3RleHQtYWxpZ246Y2VudGVyO30KLmNiLWxhYmVse2ZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6OC41cHg7Zm9udC13ZWlnaHQ6NjAwOwogIGxldHRlci1zcGFjaW5nOi4xOGVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsKICBjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC42NSk7bWFyZ2luLWJvdHRvbTo1cHg7ZGlzcGxheTpibG9jazt9Ci5jYi12YWx1ZXtmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE0cHg7CiAgZm9udC13ZWlnaHQ6NzAwO2NvbG9yOndoaXRlO30KLmNiLXZhbHVlIGF7Y29sb3I6d2hpdGU7dGV4dC1kZWNvcmF0aW9uOm5vbmU7fQouY2ItYmFkZ2V7Zm9udC1zaXplOjEwcHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNyk7CiAgZm9udC13ZWlnaHQ6NDAwO2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDoycHg7fQoKLyog4pSA4pSAIElOU1VSQU5DRSDilIDilIAgKi8KLmluc3VyYW5jZXtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7CiAgYmFja2dyb3VuZDp2YXIoLS1pbmRpZ28yKTsKICBib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIyKTtwYWRkaW5nOjU2cHggNDhweDt9Ci5pbnN1cmFuY2UtaW5uZXJ7bWF4LXdpZHRoOjEwNDBweDttYXJnaW46MCBhdXRvOwogIGRpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MS4yZnIgMWZyOwogIGdhcDo0MHB4O2FsaWduLWl0ZW1zOmNlbnRlcjt9Ci5pbnMtdGl0bGV7Zm9udC1mYW1pbHk6J1BsYXlmYWlyIERpc3BsYXknLHNlcmlmO2ZvbnQtc2l6ZTpjbGFtcCgxOHB0LDMuNXZ3LDMwcHQpOwogIGZvbnQtd2VpZ2h0OjcwMDtjb2xvcjp2YXIoLS1jcmVhbSk7bWFyZ2luLWJvdHRvbToxNHB4O2xpbmUtaGVpZ2h0OjEuMTt9Ci5pbnMtdGl0bGUgZW17Y29sb3I6dmFyKC0tcHVycGxlMik7Zm9udC1zdHlsZTppdGFsaWM7fQouaW5zLWJvZHl7Zm9udC1zaXplOjE0cHg7Y29sb3I6dmFyKC0tYm9keSk7bGluZS1oZWlnaHQ6MS43NTsKICBtYXJnaW4tYm90dG9tOjIwcHg7fQouaW5zLXBvaW50c3tkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo4cHg7bWFyZ2luLWJvdHRvbToyNHB4O30KLmlucy1wdHtmb250LXNpemU6MTNweDtjb2xvcjp2YXIoLS1tdXRlZCk7CiAgZGlzcGxheTpmbGV4O2dhcDo4cHg7YWxpZ24taXRlbXM6c3RhcnQ7fQouaW5zLXB0OjpiZWZvcmV7Y29udGVudDon4pyTJztjb2xvcjp2YXIoLS1ncmVlbjIpOwogIGZvbnQtd2VpZ2h0OjcwMDtmbGV4LXNocmluazowO30KLmlucy1yaWdodHtiYWNrZ3JvdW5kOnZhcigtLXB1cnBsZWxpZ2h0KTsKICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcnB1cnBsZSk7CiAgcGFkZGluZzoyOHB4O2JvcmRlci1yYWRpdXM6MnB4O3RleHQtYWxpZ246Y2VudGVyO30KLmlucy1udW17Zm9udC1mYW1pbHk6J1BsYXlmYWlyIERpc3BsYXknLHNlcmlmO2ZvbnQtc2l6ZTo0MHB0OwogIGZvbnQtd2VpZ2h0OjkwMDtjb2xvcjp2YXIoLS1wdXJwbGUyKTtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjE7fQouaW5zLWxhYmVse2ZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6MTBweDsKICBmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjE2ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOwogIGNvbG9yOnZhcigtLW11dGVkKTtkaXNwbGF5OmJsb2NrO21hcmdpbi10b3A6NHB4O21hcmdpbi1ib3R0b206MTZweDt9Ci5pbnMtZGV0YWlse2ZvbnQtc2l6ZToxM3B4O2NvbG9yOnZhcigtLWJvZHkpO2xpbmUtaGVpZ2h0OjEuNjt9CgovKiDilIDilIAgRk9PVEVSIOKUgOKUgCAqLwpmb290ZXJ7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxOwogIGJhY2tncm91bmQ6dmFyKC0taW5kaWdvMyk7CiAgYm9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyMik7cGFkZGluZzoyOHB4IDQ4cHg7fQouZm9vdGVyLWlubmVye21heC13aWR0aDoxMDQwcHg7bWFyZ2luOjAgYXV0bzt9Ci5mb290ZXItdG9we2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjsKICBmbGV4LXdyYXA6d3JhcDtnYXA6MjBweDttYXJnaW4tYm90dG9tOjIwcHg7cGFkZGluZy1ib3R0b206MjBweDsKICBib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIyKTt9Ci5mLWJyYW5kLW5hbWV7Zm9udC1mYW1pbHk6J1BsYXlmYWlyIERpc3BsYXknLHNlcmlmO2ZvbnQtc2l6ZToxNnB0OwogIGZvbnQtd2VpZ2h0OjkwMDtjb2xvcjp2YXIoLS1jcmVhbSk7bWFyZ2luLWJvdHRvbTo0cHg7fQouZi1icmFuZC1uYW1lIC5jY3tjb2xvcjp2YXIoLS1ncmVlbjIpO30KLmYtYnJhbmQtdGFne2ZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6OC41cHg7CiAgbGV0dGVyLXNwYWNpbmc6LjE4ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2NvbG9yOnZhcigtLW11dGVkKTt9Ci5mLWxpbmtze2Rpc3BsYXk6ZmxleDtnYXA6MjBweDtmbGV4LXdyYXA6d3JhcDthbGlnbi1pdGVtczpjZW50ZXI7fQouZi1saW5rcyBhe2ZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6MTFweDsKICBjb2xvcjp2YXIoLS1tdXRlZCk7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dHJhbnNpdGlvbjpjb2xvciAuMnM7fQouZi1saW5rcyBhOmhvdmVye2NvbG9yOnZhcigtLWNyZWFtKTt9Ci5mb290ZXItYm90dG9te2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjsKICBmbGV4LXdyYXA6d3JhcDtnYXA6OHB4O30KLmYtY29weXtmb250LWZhbWlseTonSW50ZXInLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEwLjVweDsKICBjb2xvcjp2YXIoLS1tdXRlZCk7fQouZi1hZGRyZXNze2ZvbnQtZmFtaWx5OidJbnRlcicsc2Fucy1zZXJpZjtmb250LXNpemU6MTAuNXB4OwogIGNvbG9yOnZhcigtLW11dGVkKTt0ZXh0LWFsaWduOnJpZ2h0O30KCkBrZXlmcmFtZXMgZmFkZS11cHtmcm9te29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgyMHB4KTt9CiAgdG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApO319Ci5oZXJve2FuaW1hdGlvbjpmYWRlLXVwIC45cyBlYXNlIGJvdGg7fQouc3RhdHMgLnN0YXQtY3thbmltYXRpb246ZmFkZS11cCAuN3MgZWFzZSBib3RoO30KLnN0YXRzIC5zdGF0LWM6bnRoLWNoaWxkKDIpe2FuaW1hdGlvbi1kZWxheTouMXM7fQouc3RhdHMgLnN0YXQtYzpudGgtY2hpbGQoMyl7YW5pbWF0aW9uLWRlbGF5Oi4yczt9Ci5zdGF0cyAuc3RhdC1jOm50aC1jaGlsZCg0KXthbmltYXRpb24tZGVsYXk6LjNzO30KCi5idG4tYm9va3sKICBiYWNrZ3JvdW5kOnZhcigtLWdyZWVuKSAhaW1wb3J0YW50OwogIGJveC1zaGFkb3c6MCA0cHggMTZweCByZ2JhKDEwLDExNyw2NSwuMykgIWltcG9ydGFudDt9Ci5idG4tYm9vazpob3ZlcnsKICBiYWNrZ3JvdW5kOnZhcigtLWdyZWVuMikgIWltcG9ydGFudDsKICBib3gtc2hhZG93OjAgNnB4IDIwcHggcmdiYSgxMCwxMTcsNjUsLjQ1KSAhaW1wb3J0YW50O30KLmhlYWRlci1taWQtdGV4dHsKICBkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4OwogIGZsZXgtd3JhcDp3cmFwO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZmxleDoxO30KLmJyYW5kLW11dGVkLXNlcHtjb2xvcjpyZ2JhKDI0OCwyNTEsMjQ5LC4yKTtmb250LXNpemU6MTBweDt9CgovKiBib29rIGJ1dHRvbiBvbiBjbGluaWMgY2FyZHMgKi8KLmxvYy1ib29rewogIGRpc3BsYXk6aW5saW5lLWJsb2NrOwogIG1hcmdpbi10b3A6YXV0bztwYWRkaW5nLXRvcDoxNHB4OwogIHBhZGRpbmc6OXB4IDE2cHg7CiAgYmFja2dyb3VuZDp2YXIoLS1ncmVlbik7Y29sb3I6d2hpdGU7CiAgZm9udC1mYW1pbHk6J0ludGVyJyxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMHB4O2ZvbnQtd2VpZ2h0OjcwMDsKICBsZXR0ZXItc3BhY2luZzouMWVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsKICB0ZXh0LWRlY29yYXRpb246bm9uZTtib3JkZXItcmFkaXVzOjJweDsKICB3aGl0ZS1zcGFjZTpub3dyYXA7d2lkdGg6Zml0LWNvbnRlbnQ7CiAgdHJhbnNpdGlvbjphbGwgLjJzO30KLmxvYy1ib29rOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tZ3JlZW4yKTsKICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTsKICBib3gtc2hhZG93OjAgNnB4IDE2cHggcmdiYSgxMCwxMTcsNjUsLjM1KTt9Ci5sb2MtYm9vay1vcmFuZ2V7CiAgYmFja2dyb3VuZDp2YXIoLS1vcmFuZ2UpICFpbXBvcnRhbnQ7fQoubG9jLWJvb2stb3JhbmdlOmhvdmVyewogIGJhY2tncm91bmQ6dmFyKC0tb3JhbmdlMikgIWltcG9ydGFudDsKICBib3gtc2hhZG93OjAgNnB4IDE2cHggcmdiYSgyNTUsMTA3LDAsLjM1KSAhaW1wb3J0YW50O30KCiAgMTAwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTt9Cn0KCi8qIOKUgOKUgCBOQVYgVVBEQVRFIOKUgOKUgCAqLwouaGVhZGVyLW5hdntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxNnB4O2ZsZXgtd3JhcDp3cmFwO30KCi8qIOKUgOKUgCBUWVBFV1JJVEVSIOKUgOKUgCAqLwoudHlwZXdyaXRlcntkaXNwbGF5OmlubGluZTtib3JkZXItcmlnaHQ6MnB4IHNvbGlkIHZhcigtLWdyZWVuMik7CiAgYW5pbWF0aW9uOmJsaW5rLWN1cnNvciAuNzVzIHN0ZXAtZW5kIGluZmluaXRlO30KQGtleWZyYW1lcyBibGluay1jdXJzb3J7CiAgMCUsMTAwJXtib3JkZXItY29sb3I6dmFyKC0tZ3JlZW4yKTt9CiAgNTAle2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudDt9Cn0KCkBtZWRpYShtYXgtd2lkdGg6NzIwcHgpewogIGhlYWRlciwuaGVybywuc2VjdGlvbiwuZmlyc3RzLC5mb3VuZGVyLC5pbnN1cmFuY2UsCiAgLmNvbW11bml0eSwuY29udGFjdC1iYW5kLC5lbWVyZ2VuY3ktYmFyLGZvb3RlcnsKICAgIHBhZGRpbmctbGVmdDoyMHB4O3BhZGRpbmctcmlnaHQ6MjBweDt9CiAgLnNlcnZpY2VzLWdyaWQsLmxvY2F0aW9ucy1ncmlkLC5maXJzdHMtZ3JpZCwKICAuZm91bmRlci1pbm5lciwuaW5zdXJhbmNlLWlubmVyLC5jYi1pbm5lcnsKICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7fQogIC5zdGF0c3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIDFmcjt9CiAgaDF7Zm9udC1zaXplOjI4cHQ7fQogIC5oZWFkZXItbmF2e2dhcDoxMHB4O30KICAuaC1saW5re2ZvbnQtc2l6ZToxMHB4O30KfQoKLyog4pSA4pSAIEZMT0FUSU5HIENST1NTRVMg4pSA4pSAICovCi5jcm9zc2VzLWxheWVyewogIHBvc2l0aW9uOmZpeGVkO2luc2V0OjA7ei1pbmRleDowOwogIHBvaW50ZXItZXZlbnRzOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO30KLmNyb3NzewogIHBvc2l0aW9uOmFic29sdXRlOwogIGZvbnQtc2l6ZTp2YXIoLS1zeiwyNHB4KTsKICBjb2xvcjp2YXIoLS1jb2wscmdiYSgxMCwxMTcsNjUsLjA4KSk7CiAgYW5pbWF0aW9uOmZsb2F0Q3Jvc3MgdmFyKC0tZHVyLDE4cykgZWFzZS1pbi1vdXQgaW5maW5pdGU7CiAgYW5pbWF0aW9uLWRlbGF5OnZhcigtLWRlbGF5LDBzKTsKICBsZWZ0OnZhcigtLXgsNTAlKTsKICB0b3A6MTEwJTsKICB1c2VyLXNlbGVjdDpub25lOwogIHdpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5O30KQGtleWZyYW1lcyBmbG9hdENyb3NzewogIDAlICB7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgcm90YXRlKDBkZWcpIHNjYWxlKC44KTsgb3BhY2l0eTowO30KICA4JSAge29wYWNpdHk6MTt9CiAgOTAlIHtvcGFjaXR5Oi42O30KICAxMDAle3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xMjB2aCkgcm90YXRlKDM2MGRlZykgc2NhbGUoMS4xKTsgb3BhY2l0eTowO30KfQoKLyog4pSA4pSAIFNDUk9MTCBSRVZFQUwg4pSA4pSAICovCi5yZXZlYWx7CiAgb3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDI4cHgpOwogIHRyYW5zaXRpb246b3BhY2l0eSAuN3MgZWFzZSx0cmFuc2Zvcm0gLjdzIGVhc2U7fQoucmV2ZWFsLnZpc2libGV7CiAgb3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApO30KLnJldmVhbC1kZWxheS0xe3RyYW5zaXRpb24tZGVsYXk6LjFzO30KLnJldmVhbC1kZWxheS0ye3RyYW5zaXRpb24tZGVsYXk6LjJzO30KLnJldmVhbC1kZWxheS0ze3RyYW5zaXRpb24tZGVsYXk6LjNzO30KLnJldmVhbC1kZWxheS00e3RyYW5zaXRpb24tZGVsYXk6LjRzO30KCi8qIOKUgOKUgCBGTE9BVElORyBIRUFERVIgQ1JPU1Mg4pSA4pSAICovCi5oZWFkZXItY3Jvc3N7CiAgcG9zaXRpb246Zml4ZWQ7Ym90dG9tOjI4cHg7cmlnaHQ6MjhweDt6LWluZGV4Ojk5OwogIHdpZHRoOjU2cHg7aGVpZ2h0OjU2cHg7Ym9yZGVyLXJhZGl1czo1MCU7CiAgYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLWdyZWVuKSx2YXIoLS1ncmVlbjIpKTsKICBkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7CiAgZm9udC1zaXplOjI0cHg7Y29sb3I6d2hpdGU7CiAgYm94LXNoYWRvdzowIDhweCAyOHB4IHJnYmEoMTAsMTE3LDY1LC40NSk7CiAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7CiAgYW5pbWF0aW9uOnB1bHNlQnRuIDIuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7CiAgdHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzO30KLmhlYWRlci1jcm9zczpob3Zlcnt0cmFuc2Zvcm06c2NhbGUoMS4xKTt9CkBrZXlmcmFtZXMgcHVsc2VCdG57CiAgMCUsMTAwJXtib3gtc2hhZG93OjAgOHB4IDI4cHggcmdiYSgxMCwxMTcsNjUsLjQ1KTt9CiAgNTAle2JveC1zaGFkb3c6MCA4cHggNDBweCByZ2JhKDEwLDExNyw2NSwuNyksCiAgICAwIDAgMCA4cHggcmdiYSgxMCwxMTcsNjUsLjEpO30KfQo8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgoKPCEtLSBGTE9BVElORyBDUk9TU0VTIExBWUVSIC0tPgo8ZGl2IGNsYXNzPSJjcm9zc2VzLWxheWVyIiBpZD0iY3Jvc3Nlc0xheWVyIj48L2Rpdj4KCjwhLS0gRkxPQVRJTkcgRU1FUkdFTkNZIEJVVFRPTiAtLT4KPGEgaHJlZj0idGVsOjA4MDAyMTEwMDUiIGNsYXNzPSJoZWFkZXItY3Jvc3MiIHRpdGxlPSJFbWVyZ2VuY3kiPuKcmjwvYT4KCjwvZGl2PgoKPCEtLSBCUkFORCBTQ1JPTEwg4oCUIGZ1bGwgd2lkdGgsIHNpdHMgYmV0d2VlbiB0aWNrZXIgYW5kIGhlYWRlciAtLT4KPGRpdiBjbGFzcz0iYnJhbmQtc2Nyb2xsLW91dGVyIj4KICA8ZGl2IGNsYXNzPSJicmFuZC1zY3JvbGwtd3JhcCI+CiAgICA8ZGl2IGNsYXNzPSJicmFuZC1zY3JvbGwtdHJhY2siPgogICAgICA8IS0tIHNldCAxIC0tPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtbmFtZSBwcmltYXJ5LWJyYW5kIj5DYXNlPHNwYW4gY2xhc3M9ImNjIj5DbGluaWM8L3NwYW4+PC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtc2VwIj7inJo8L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1uYW1lIGhvc3AiPkNhc2U8c3BhbiBjbGFzcz0iY2MiPkhvc3BpdGFsPC9zcGFuPjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLXNlcCI+4pyaPC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtbmFtZSBpbnMiPkNhc2U8c3BhbiBjbGFzcz0iY2MiPk1lZDwvc3Bhbj5JbnN1cmFuY2U8L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1zZXAiPuKcmjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLW5hbWUgc3ZjIj5DYXNlPHNwYW4gY2xhc3M9ImNjIj5NZWQ8L3NwYW4+U2VydmljZXM8L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1zZXAiPuKcmjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLW5hbWUgcGhhcm0iPkNhc2U8c3BhbiBjbGFzcz0iY2MiPlBoYXJtYWN5PC9zcGFuPjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLXNlcCI+4pyaPC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtbmFtZSBkaWFnIj5DYXNlPHNwYW4gY2xhc3M9ImNjIj5EaWFnbm9zdGljPC9zcGFuPjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLXNlcCI+4pyaPC9zcGFuPgogICAgICA8IS0tIHNldCAyIC0tPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtbmFtZSBwcmltYXJ5LWJyYW5kIj5DYXNlPHNwYW4gY2xhc3M9ImNjIj5DbGluaWM8L3NwYW4+PC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtc2VwIj7inJo8L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1uYW1lIGhvc3AiPkNhc2U8c3BhbiBjbGFzcz0iY2MiPkhvc3BpdGFsPC9zcGFuPjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLXNlcCI+4pyaPC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtbmFtZSBpbnMiPkNhc2U8c3BhbiBjbGFzcz0iY2MiPk1lZDwvc3Bhbj5JbnN1cmFuY2U8L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1zZXAiPuKcmjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLW5hbWUgc3ZjIj5DYXNlPHNwYW4gY2xhc3M9ImNjIj5NZWQ8L3NwYW4+U2VydmljZXM8L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1zZXAiPuKcmjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLW5hbWUgcGhhcm0iPkNhc2U8c3BhbiBjbGFzcz0iY2MiPlBoYXJtYWN5PC9zcGFuPjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLXNlcCI+4pyaPC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtbmFtZSBkaWFnIj5DYXNlPHNwYW4gY2xhc3M9ImNjIj5EaWFnbm9zdGljPC9zcGFuPjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLXNlcCI+4pyaPC9zcGFuPgogICAgICA8IS0tIGR1cGxpY2F0ZSBmb3Igc2VhbWxlc3MgbG9vcCAtLT4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLW5hbWUgcHJpbWFyeS1icmFuZCI+Q2FzZTxzcGFuIGNsYXNzPSJjYyI+Q2xpbmljPC9zcGFuPjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLXNlcCI+4pyaPC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtbmFtZSBob3NwIj5DYXNlPHNwYW4gY2xhc3M9ImNjIj5Ib3NwaXRhbDwvc3Bhbj48L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1zZXAiPuKcmjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLW5hbWUgaW5zIj5DYXNlPHNwYW4gY2xhc3M9ImNjIj5NZWQ8L3NwYW4+SW5zdXJhbmNlPC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtc2VwIj7inJo8L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1uYW1lIHN2YyI+Q2FzZTxzcGFuIGNsYXNzPSJjYyI+TWVkPC9zcGFuPlNlcnZpY2VzPC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtc2VwIj7inJo8L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1uYW1lIHBoYXJtIj5DYXNlPHNwYW4gY2xhc3M9ImNjIj5QaGFybWFjeTwvc3Bhbj48L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1zZXAiPuKcmjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLW5hbWUgZGlhZyI+Q2FzZTxzcGFuIGNsYXNzPSJjYyI+RGlhZ25vc3RpYzwvc3Bhbj48L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1zZXAiPuKcmjwvc3Bhbj4KICAgICAgPCEtLSBsb29wIDIgLS0+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1uYW1lIHByaW1hcnktYnJhbmQiPkNhc2U8c3BhbiBjbGFzcz0iY2MiPkNsaW5pYzwvc3Bhbj48L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1zZXAiPuKcmjwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLW5hbWUgaG9zcCI+Q2FzZTxzcGFuIGNsYXNzPSJjYyI+SG9zcGl0YWw8L3NwYW4+PC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtc2VwIj7inJo8L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1uYW1lIGlucyI+Q2FzZTxzcGFuIGNsYXNzPSJjYyI+TWVkPC9zcGFuPkluc3VyYW5jZTwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLXNlcCI+4pyaPC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtbmFtZSBzdmMiPkNhc2U8c3BhbiBjbGFzcz0iY2MiPk1lZDwvc3Bhbj5TZXJ2aWNlczwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLXNlcCI+4pyaPC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtbmFtZSBwaGFybSI+Q2FzZTxzcGFuIGNsYXNzPSJjYyI+UGhhcm1hY3k8L3NwYW4+PC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtc2VwIj7inJo8L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJicmFuZC1uYW1lIGRpYWciPkNhc2U8c3BhbiBjbGFzcz0iY2MiPkRpYWdub3N0aWM8L3NwYW4+PC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtc2VwIj7inJo8L3NwYW4+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+Cgo8IS0tIEhFQURFUiAtLT4KPGhlYWRlcj4KCiAgPCEtLSBNSURETEUgUk9XIOKAlCB0d28gYnV0dG9ucyDCtyBncmF5IHRleHQgc2FuZHdpY2hlZCBiZXR3ZWVuIC0tPgogIDxkaXYgY2xhc3M9ImhlYWRlci1lbWVyZy1yb3ciPgogICAgPGEgaHJlZj0idGVsOjA4MDAyMTEwMDUiIGNsYXNzPSJidG4tZW1lcmdlbmN5Ij7inJogRW1lcmdlbmN5PC9hPgogICAgPGRpdiBjbGFzcz0iaGVhZGVyLW1pZC10ZXh0Ij4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLW11dGVkIj5LYW1wYWxhIMK3IEVudGViYmUgwrcgTmFhbHlhIMK3IEppbmphPC9zcGFuPgogICAgICA8c3BhbiBjbGFzcz0iYnJhbmQtbXV0ZWQtc2VwIj7Ctzwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9ImJyYW5kLW11dGVkIj5IZWFsdGggSW5zdXJhbmNlIMK3IDM4LDAwMCBNZW1iZXJzPC9zcGFuPgogICAgPC9kaXY+CiAgICA8YSBocmVmPSJ0ZWw6KzI1NjcwMTI1MDM2MiIgY2xhc3M9ImJ0bi1lbWVyZ2VuY3kgYnRuLWJvb2siPvCfk4UgQm9vayBhbiBBcHBvaW50bWVudDwvYT4KICA8L2Rpdj4KCiAgPCEtLSBOQVYgUk9XIC0tPgogIDxuYXYgY2xhc3M9ImhlYWRlci1uYXYiPgogICAgPGEgaHJlZj0iI2thbXBhbGEiIGNsYXNzPSJoLWxpbmsiPkthbXBhbGE8L2E+CiAgICA8YSBocmVmPSIjZW50ZWJiZSIgY2xhc3M9ImgtbGluayI+RW50ZWJiZTwvYT4KICAgIDxhIGhyZWY9IiNuYWFseWEiIGNsYXNzPSJoLWxpbmsiPk5hYWx5YTwvYT4KICAgIDxhIGhyZWY9IiNqaW5qYSIgY2xhc3M9ImgtbGluayI+SmluamE8L2E+CiAgICA8YSBocmVmPSJodHRwczovL2Nhc2VjbGluaWMubmV3cyIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJoLWxpbmsiPkhlYWx0aCBOZXdzPC9hPgogIDwvbmF2PgoKPC9oZWFkZXI+Cgo8IS0tIEhFUk8gLS0+CjxkaXYgY2xhc3M9Imhlcm8iPgogIDxkaXYgY2xhc3M9InRydXN0LXN0cmlwIj4KICAgIDxzcGFuIGNsYXNzPSJ0cnVzdC1pdGVtIj7inJogSVNPIENlcnRpZmllZDwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJ0cnVzdC1zZXAiPsK3PC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRydXN0LWl0ZW0iPuKcmiAxMDAgQmVkczwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJ0cnVzdC1zZXAiPsK3PC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRydXN0LWl0ZW0iPuKcmiA1MCsgU3BlY2lhbGlzdHM8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0idHJ1c3Qtc2VwIj7Ctzwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJ0cnVzdC1pdGVtIj7inJogU2luY2UgMTk5NTwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJ0cnVzdC1zZXAiPsK3PC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InRydXN0LWl0ZW0iPuKcmiBFbWVyZ2VuY3kgMjQgSHJzPC9zcGFuPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9Imhlcm8tdGFnIj4zMCBZZWFycyBUcmFuc2Zvcm1pbmcgTGl2ZXMgwrcgVWdhbmRhPC9kaXY+CiAgPGgxIGlkPSJoZXJvUGhyYXNlIj5XaGVyZSBVZ2FuZGE8YnI+Q29tZXMgdG8gPGVtPkhlYWwuPC9lbT48L2gxPgogIDxzcGFuIGNsYXNzPSJoZXJvLWZsdWVudCIgaWQ9Imhlcm9GbHVlbnQiPkZsdWVudCBpbiBIZWFsdGhjYXJlLjwvc3Bhbj4KICA8ZGl2IGNsYXNzPSJoZXJvLXJ1bGUiPgogICAgPHNwYW4+4peGPC9zcGFuPgogIDwvZGl2PgogIDxwIGNsYXNzPSJoZXJvLXN1YiI+RnJvbSB0aGUgZmlyc3QgcHJpdmF0ZSBkaWFseXNpcyBjZW50cmUgaW4gVWdhbmRhIHRvIHBpb25lZXJpbmcgYmFyaWF0cmljIGFuZCBsYXBhcm9zY29waWMgc3VyZ2VyeSBDYXNlIENsaW5pYyBoYXMgYmVlbiBVZ2FuZGEncyBtb3N0IHRydXN0ZWQgbmFtZSBpbiB3b3JsZC1jbGFzcyBwcml2YXRlIGhlYWx0aGNhcmUgZm9yIHRoaXJ0eSB5ZWFycyBhbmQgY291bnRpbmcuPC9wPgoKICA8IS0tIFZJREVPIC0tPgogIDxkaXYgY2xhc3M9Imhlcm8tdmlkZW8iPgogICAgPGRpdiBpZD0idnBfZW1iZWRfd3JhcCIgc3R5bGU9IndpZHRoOjEwMCU7Ij4KICAgICAgPGlmcmFtZSBpZD0idnBfdmlkZW9fZW1iZWQiCiAgICAgICAgYWxsb3c9ImF1dG9wbGF5IgogICAgICAgIGRhdGEtcmF0ZT0iMS43OTEwMTU2MjUiCiAgICAgICAgZGF0YS1zdGlja3k9InRvcC1yaWdodCIKICAgICAgICBzcmM9Imh0dHBzOi8vYXBwLnZpZGphY2suY29tL2VtYmVkLzE2OTA1IgogICAgICAgIHN0eWxlPSJ3aWR0aDoxMDAlO3otaW5kZXg6MTAwMDAwMDsiCiAgICAgICAgYWxsb3dmdWxsc2NyZWVuPSJ0cnVlIgogICAgICAgIHdlYmtpdGFsbG93ZnVsbHNjcmVlbj0idHJ1ZSIKICAgICAgICBtb3phbGxvd2Z1bGxzY3JlZW49InRydWUiPgogICAgICA8L2lmcmFtZT4KICAgICAgPHNjcmlwdCBzcmM9Imh0dHBzOi8vYXBwLnZpZGphY2suY29tL2pzL3ZwX2VtYmVkLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGFzeW5jPjwvc2NyaXB0PgogICAgPC9kaXY+CiAgPC9kaXY+CgogIDxkaXYgY2xhc3M9Imhlcm8tY3RhcyI+CiAgICA8YSBocmVmPSJ0ZWw6KzI1NjcwMTI1MDM2MiIgY2xhc3M9ImJ0bi1wcmltYXJ5Ij7inJogU2NoZWR1bGUgYSBWaXNpdDwvYT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vY2FzZWNsaW5pYy5vcmcvbWVkaWNhbC1pbnN1cmFuY2UiIGNsYXNzPSJidG4taW5zdXJhbmNlIj7wn5uh77iPIEV4cGxvcmUgSGVhbHRoIEluc3VyYW5jZTwvYT4KICAgIDxhIGhyZWY9Imh0dHBzOi8vY2FzZWNsaW5pYy5uZXdzIiB0YXJnZXQ9Il9ibGFuayIgY2xhc3M9ImJ0bi1vdXRsaW5lIj5Gcm9tIENhc2UgdG8gQ29tbXVuaXR5IOKGkjwvYT4KICA8L2Rpdj4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJkaXZpZGVyIj48L2Rpdj4KCjwhLS0gU1RBVFMgLS0+CjxkaXYgY2xhc3M9InN0YXRzIj4KICA8ZGl2IGNsYXNzPSJzdGF0LWMiPgogICAgPHNwYW4gY2xhc3M9InN0YXQtbnVtIj4zMCs8L3NwYW4+CiAgICA8c3BhbiBjbGFzcz0ic3RhdC1sYWJlbCI+WWVhcnMgb2YgRXhjZWxsZW5jZTwvc3Bhbj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJzdGF0LWMiPgogICAgPHNwYW4gY2xhc3M9InN0YXQtbnVtIj41PC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InN0YXQtbGFiZWwiPkxvY2F0aW9ucyDCtyA1dGggQ29taW5nIFNvb248L3NwYW4+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0ic3RhdC1jIj4KICAgIDxzcGFuIGNsYXNzPSJzdGF0LW51bSI+MjQvNzwvc3Bhbj4KICAgIDxzcGFuIGNsYXNzPSJzdGF0LWxhYmVsIj5FbWVyZ2VuY3kgQ2FyZTwvc3Bhbj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJzdGF0LWMiPgogICAgPHNwYW4gY2xhc3M9InN0YXQtbnVtIj4zOEsrPC9zcGFuPgogICAgPHNwYW4gY2xhc3M9InN0YXQtbGFiZWwiPkhNTyBNZW1iZXJzPC9zcGFuPgogIDwvZGl2Pgo8L2Rpdj4KCjxkaXYgY2xhc3M9ImRpdmlkZXIiPjwvZGl2PgoKPCEtLSBTRVJWSUNFUyAtLT4KPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgPGRpdiBjbGFzcz0ic2VjLXRhZyI+Q29tcHJlaGVuc2l2ZSBDYXJlIFByb3ZpZGVyczwvZGl2PgogIDxoMj5NZWRpY2FsIFNlcnZpY2VzIDxlbT5XZSBPZmZlcjwvZW0+PC9oMj4KICA8ZGl2IGNsYXNzPSJzZXJ2aWNlcy1ncmlkIj4KCiAgICA8ZGl2IGNsYXNzPSJzdmMtY2FyZCI+CiAgICAgIDxzcGFuIGNsYXNzPSJzdmMtaWNvbiI+8J+rgTwvc3Bhbj4KICAgICAgPGRpdiBjbGFzcz0ic3ZjLW5hbWUiPkhhZW1vZGlhbHlzaXM8L2Rpdj4KICAgICAgPHAgY2xhc3M9InN2Yy1kZXNjIj5VZ2FuZGEncyBmaXJzdCBwcml2YXRlIGRpYWx5c2lzIGNlbnRyZS4gQWR2YW5jZWQgcmVuYWwgY2FyZSBmb3IgY2hyb25pYyBhbmQgYWN1dGUga2lkbmV5IGNvbmRpdGlvbnMgYXZhaWxhYmxlIGFjcm9zcyBvdXIgbmV0d29yay48L3A+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJzdmMtY2FyZCI+CiAgICAgIDxzcGFuIGNsYXNzPSJzdmMtaWNvbiI+4p2k77iPPC9zcGFuPgogICAgICA8ZGl2IGNsYXNzPSJzdmMtbmFtZSI+Q2FyZGlvbG9neTwvZGl2PgogICAgICA8cCBjbGFzcz0ic3ZjLWRlc2MiPlNwZWNpYWxpc3QgY2FyZGlhYyBjYXJlIGZyb20gcmVub3duZWQgY2FyZGlvbG9naXN0cyBhbmQgc3VyZ2VvbnMuIERpYWdub3NpcywgdHJlYXRtZW50LCBhbmQgb25nb2luZyBtYW5hZ2VtZW50IG9mIGhlYXJ0IGNvbmRpdGlvbnMuPC9wPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic3ZjLWNhcmQiPgogICAgICA8c3BhbiBjbGFzcz0ic3ZjLWljb24iPvCflKw8L3NwYW4+CiAgICAgIDxkaXYgY2xhc3M9InN2Yy1uYW1lIj5HZW5lcmFsIFN1cmdlcnk8L2Rpdj4KICAgICAgPHAgY2xhc3M9InN2Yy1kZXNjIj5QaW9uZWVycyBvZiBtaW5pbWFsbHkgaW52YXNpdmUga2V5aG9sZSBzdXJnZXJ5IGluIFVnYW5kYS4gR2VuZXJhbCwgYmFyaWF0cmljLCBhbmQgbGFwYXJvc2NvcGljIHByb2NlZHVyZXMgd2l0aCB3b3JsZC1jbGFzcyBleHBlcnRpc2UuPC9wPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic3ZjLWNhcmQiPgogICAgICA8c3BhbiBjbGFzcz0ic3ZjLWljb24iPvCfjLg8L3NwYW4+CiAgICAgIDxkaXYgY2xhc3M9InN2Yy1uYW1lIj5NYXRlcm5hbCBIZWFsdGggJiBHeW5hZWNvbG9neTwvZGl2PgogICAgICA8cCBjbGFzcz0ic3ZjLWRlc2MiPkNvbXByZWhlbnNpdmUgY2FyZSBmcm9tIGFudGVuYXRhbCB0aHJvdWdoIHBvc3RuYXRhbC4gU2FmZSwgc3VwcG9ydGVkIG1hdGVybml0eSBzZXJ2aWNlcyBmb3IgbW90aGVyIGFuZCBjaGlsZCBhdCBldmVyeSBDYXNlIGxvY2F0aW9uLjwvcD4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9InN2Yy1jYXJkIj4KICAgICAgPHNwYW4gY2xhc3M9InN2Yy1pY29uIj7wn6e4PC9zcGFuPgogICAgICA8ZGl2IGNsYXNzPSJzdmMtbmFtZSI+UGFlZGlhdHJpY3M8L2Rpdj4KICAgICAgPHAgY2xhc3M9InN2Yy1kZXNjIj5EZWRpY2F0ZWQgY2hpbGQgaGVhbHRoIHNwZWNpYWxpc3RzIHByb3ZpZGluZyBleHBlcnQgY2FyZSBmb3IgaW5mYW50cywgY2hpbGRyZW4sIGFuZCBhZG9sZXNjZW50cyBhY3Jvc3Mgb3VyIENhc2UgQ2xpbmljIG5ldHdvcmsuPC9wPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic3ZjLWNhcmQiPgogICAgICA8c3BhbiBjbGFzcz0ic3ZjLWljb24iPvCfqbo8L3NwYW4+CiAgICAgIDxkaXYgY2xhc3M9InN2Yy1uYW1lIj5FbWVyZ2VuY3kgJiBDcml0aWNhbCBDYXJlPC9kaXY+CiAgICAgIDxwIGNsYXNzPSJzdmMtZGVzYyI+MjQtaG91ciBlbWVyZ2VuY3kgc2VydmljZXMgMzY1IGRheXMgYSB5ZWFyLiBUb2xsIGZyZWU6IDA4MDAgMjExIDAwNS4gRXF1aXBwZWQgYW5kIHJlYWR5IGF0IGFueSBob3VyIGZvciBhbnkgZW1lcmdlbmN5LjwvcD4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9InN2Yy1jYXJkIj4KICAgICAgPHNwYW4gY2xhc3M9InN2Yy1pY29uIj7wn6eqPC9zcGFuPgogICAgICA8ZGl2IGNsYXNzPSJzdmMtbmFtZSI+TGFib3JhdG9yeSAmIERpYWdub3N0aWNzPC9kaXY+CiAgICAgIDxwIGNsYXNzPSJzdmMtZGVzYyI+QWR2YW5jZWQgbGFib3JhdG9yeSBzZXJ2aWNlcywgaW1hZ2luZywgdWx0cmFzb3VuZCwgWC1yYXksIGFuZCBwYXRob2xvZ3kuIEZhc3QsIGFjY3VyYXRlIHJlc3VsdHMgdG8gc3VwcG9ydCB5b3VyIHNwZWNpYWxpc3QgY2FyZS48L3A+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJzdmMtY2FyZCI+CiAgICAgIDxzcGFuIGNsYXNzPSJzdmMtaWNvbiI+8J+Rge+4jzwvc3Bhbj4KICAgICAgPGRpdiBjbGFzcz0ic3ZjLW5hbWUiPkV5ZSBDbGluaWMgwrcgRU5UIMK3IERlcm1hdG9sb2d5PC9kaXY+CiAgICAgIDxwIGNsYXNzPSJzdmMtZGVzYyI+U3BlY2lhbGlzdCBjbGluaWNzIGZvciBleWVzLCBlYXJzLCBub3NlIGFuZCB0aHJvYXQsIGFuZCBza2luIGNvbmRpdGlvbnMuIEV4cGVydCBjb25zdWx0YW50cyBhY3Jvc3MgYWxsIENhc2UgaG9zcGl0YWwgbG9jYXRpb25zLjwvcD4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9InN2Yy1jYXJkIj4KICAgICAgPHNwYW4gY2xhc3M9InN2Yy1pY29uIj7wn6a3PC9zcGFuPgogICAgICA8ZGl2IGNsYXNzPSJzdmMtbmFtZSI+RGVudGFsIFNlcnZpY2VzPC9kaXY+CiAgICAgIDxwIGNsYXNzPSJzdmMtZGVzYyI+Q29tcHJlaGVuc2l2ZSBkZW50YWwgY2FyZSBmb3IgdGhlIHdob2xlIGZhbWlseS4gUm91dGluZSBjaGVjay11cHMsIHJlc3RvcmF0aXZlIGRlbnRpc3RyeSwgYW5kIHNwZWNpYWxpc3QgZGVudGFsIHRyZWF0bWVudHMuPC9wPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic3ZjLWNhcmQiPgogICAgICA8c3BhbiBjbGFzcz0ic3ZjLWljb24iPvCflK08L3NwYW4+CiAgICAgIDxkaXYgY2xhc3M9InN2Yy1uYW1lIj5FbmRvc2NvcHkgJiBHYXN0cm9lbnRlcm9sb2d5PC9kaXY+CiAgICAgIDxwIGNsYXNzPSJzdmMtZGVzYyI+U3BlY2lhbGlzdCBkaWdlc3RpdmUgaGVhbHRoIHNlcnZpY2VzIGluY2x1ZGluZyB1cHBlciBhbmQgbG93ZXIgR0kgZW5kb3Njb3B5LCBjb2xvbm9zY29weSwgYW5kIGdhc3Ryb2VudGVyb2xvZ3kgY29uc3VsdGF0aW9ucy48L3A+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJzdmMtY2FyZCI+CiAgICAgIDxzcGFuIGNsYXNzPSJzdmMtaWNvbiI+8J+SiTwvc3Bhbj4KICAgICAgPGRpdiBjbGFzcz0ic3ZjLW5hbWUiPlZhY2NpbmF0aW9uICYgUGhhcm1hY3k8L2Rpdj4KICAgICAgPHAgY2xhc3M9InN2Yy1kZXNjIj5GdWxsIHZhY2NpbmF0aW9uIHNlcnZpY2VzIGZvciBjaGlsZHJlbiBhbmQgYWR1bHRzLiBJbi1ob3VzZSBwaGFybWFjeSB3aXRoIGEgY29tcHJlaGVuc2l2ZSByYW5nZSBvZiBtZWRpY2F0aW9ucyBmb3IgYWxsIHBhdGllbnRzLjwvcD4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9InN2Yy1jYXJkIj4KICAgICAgPHNwYW4gY2xhc3M9InN2Yy1pY29uIj7wn6m8PC9zcGFuPgogICAgICA8ZGl2IGNsYXNzPSJzdmMtbmFtZSI+T3J0aG9wYWVkaWNzPC9kaXY+CiAgICAgIDxwIGNsYXNzPSJzdmMtZGVzYyI+RXhwZXJ0IGJvbmUsIGpvaW50LCBhbmQgbXVzY3Vsb3NrZWxldGFsIGNhcmUgYWxvbmdzaWRlIHNwZWNpYWxpc3QgZW5kb2NyaW5vbG9neSBmb3IgZGlhYmV0ZXMsIHRoeXJvaWQsIGFuZCBob3Jtb25hbCBjb25kaXRpb25zLjwvcD4KICAgIDwvZGl2PgoKICA8L2Rpdj4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJkaXZpZGVyIj48L2Rpdj4KCjwhLS0gUEFUSUVOVCBSRVZJRVdTIC0tPgo8ZGl2IGNsYXNzPSJyZXZpZXdzIj4KICA8ZGl2IGNsYXNzPSJyZXZpZXdzLWhlYWRlciI+CiAgICA8ZGl2IGNsYXNzPSJzZWMtdGFnIiBzdHlsZT0ianVzdGlmeS1jb250ZW50OmNlbnRlcjsiPlBhdGllbnQgVm9pY2VzPC9kaXY+CiAgICA8aDI+V2hhdCBPdXIgPGVtPlBhdGllbnRzIFNheTwvZW0+PC9oMj4KICA8L2Rpdj4KCiAgPCEtLSBGRUFUVVJFRCBURVNUSU1PTklBTCDigJQgQ0FQVEFJTiBEQVZJRCBDTEFSSyAtLT4KICA8ZGl2IGNsYXNzPSJmZWF0dXJlZC1yZXZpZXciPgogICAgPGRpdiBjbGFzcz0iZmVhdHVyZWQtcmV2aWV3LWlubmVyIj4KICAgICAgPHNwYW4gY2xhc3M9ImZlYXR1cmVkLWJhZGdlIj7inIjvuI8gSW50ZXJuYXRpb25hbCBQYXRpZW50IMK3IFVTQTwvc3Bhbj4KICAgICAgPHAgY2xhc3M9ImZlYXR1cmVkLXF1b3RlIj4iSSBoYXZlIHRyYXZlbGxlZCB0byBldmVyeSBjb3JuZXIgb2YgdGhpcyB3b3JsZCBhcyBhIGNvbW1lcmNpYWwgcGlsb3QuIFdoZW4gSSBmZWxsIGlsbCBkdXJpbmcgbXkgc2Vjb25kIHZpc2l0IHRvIFVnYW5kYSwgQ2FzZSBDbGluaWMgdG9vayBjYXJlIG9mIGV2ZXJ5dGhpbmcg4oCUIGVtZXJnZW5jeSB0cmVhdG1lbnQsIGhvbWUgdmlzaXRzLCBhbmQgYSBmdWxsIG1lZGljYWwgd29yay11cC4gV2Vla3Mgb2YgY2FyZSwgaGFuZGxlZCB3aXRoIHByb2Zlc3Npb25hbGlzbSBhbmQgd2FybXRoIEkgaG9uZXN0bHkgZGlkIG5vdCBleHBlY3QuIEkgaGF2ZSBleHBlcmllbmNlZCBoZWFsdGhjYXJlIG9uIGZpdmUgY29udGluZW50cy4gQ2FzZSBDbGluaWMgc3RhbmRzIHdpdGggdGhlIGJlc3QuIjwvcD4KICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZWQtc3RhcnMiPuKYheKYheKYheKYheKYhTwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlZC1hdHRyIj4KICAgICAgICA8c3BhbiBjbGFzcz0iZmVhdHVyZWQtbmFtZSI+Q2FwdGFpbiBEYXZpZCBDbGFyayAoUmV0Lik8L3NwYW4+CiAgICAgICAgPHNwYW4gY2xhc3M9ImZlYXR1cmVkLXRpdGxlIj5Db21tZXJjaWFsIFBpbG90IMK3IFVTQSBSZXNpZGVudCDCtyBWaXNpdGluZyBVZ2FuZGE8L3NwYW4+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgPC9kaXY+CgogIDwhLS0gU0NST0xMSU5HIFJFVklFV1MgLS0+CiAgPGRpdiBjbGFzcz0icmV2aWV3cy10cmFjay13cmFwIj4KICAgIDxkaXYgY2xhc3M9InJldmlld3MtdHJhY2siPgoKICAgICAgPCEtLSBTRVQgMSAtLT4KICAgICAgPGRpdiBjbGFzcz0icmV2aWV3LWNhcmQiPgogICAgICAgIDxzcGFuIGNsYXNzPSJyZXZpZXctc3RhcnMiPuKYheKYheKYheKYheKYhTwvc3Bhbj4KICAgICAgICA8cCBjbGFzcz0icmV2aWV3LXRleHQiPiJFeGNlbGxlbnQgbWVkaWNhbCBjYXJlIGFuZCBhdHRlbnRpb24uIENhbWUgaW4gZm9yIGEgZmFtaWx5IG1lbWJlciB3aG8gaGFkIGFuIGFjY2lkZW50IGFuZCBzZXZlcmUgaGVhZCB0cmF1bWEgYW5kIGZyYWN0dXJlZCBza3VsbC4gVGhlIGluLWhvdXNlIG5ldXJvc3VyZ2VvbiBEci4gSHVzc2VpbiBhbmQgaGlzIHRlYW0gZGlkIGEgZmFudGFzdGljIGpvYi4iPC9wPgogICAgICAgIDxzcGFuIGNsYXNzPSJyZXZpZXctbmFtZSI+QWhtZWQgU2F0dGk8L3NwYW4+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0icmV2aWV3LWNhcmQiPgogICAgICAgIDxzcGFuIGNsYXNzPSJyZXZpZXctc3RhcnMiPuKYheKYheKYheKYheKYhTwvc3Bhbj4KICAgICAgICA8cCBjbGFzcz0icmV2aWV3LXRleHQiPiJJIHdhcyB0aGVyZSBmb3Igc2l4IGRheXMsIHRocmVlIGluIElDVSwgYnV0IHRoZSBjYXJlIGFuZCBhdHRlbnRpb24gd2FzIGNvbW1lbmRhYmxlLiBTcGVjaWFsIGFwcHJlY2lhdGlvbiB0byB0aGUgd2hvbGUgSUNVIHRlYW06IEFzaHJhZiwgS2FyaW0sIE5pY2hvbGFzLCBWaXZpYW4sIGFuZCB0aGUgcmVzdC4gSSBhbSB0cnVseSBncmF0ZWZ1bC4iPC9wPgogICAgICAgIDxzcGFuIGNsYXNzPSJyZXZpZXctbmFtZSI+RGF2aWQgTm55b25kbzwvc3Bhbj4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJyZXZpZXctY2FyZCI+CiAgICAgICAgPHNwYW4gY2xhc3M9InJldmlldy1zdGFycyI+4piF4piF4piF4piF4piFPC9zcGFuPgogICAgICAgIDxwIGNsYXNzPSJyZXZpZXctdGV4dCI+IkkgYW0gc3BlYWtpbmcgZnJvbSBCYW5nbGFkZXNoLiBJIHdhcyBhZG1pdHRlZCB0byBDYXNlIEhvc3BpdGFsIGluIEphbnVhcnkgMjAyMiBkdXJpbmcgYSBVTiBtaXNzaW9uIGluIENlbnRyYWwgQWZyaWNhLiBJIHN0aWxsIHJlbWVtYmVyIHRoZSBkb2N0b3JzIGFuZCBudXJzZXMuIEkgbWlzcyB0aGVtLiBJIHdhcyB2ZXJ5IHNhdGlzZmllZCB3aXRoIHRoZWlyIGxvdmUgYW5kIGNhcmUuIjwvcD4KICAgICAgICA8c3BhbiBjbGFzcz0icmV2aWV3LW5hbWUiPk1laGVkaSBIYXNhbiDCtyBCYW5nbGFkZXNoPC9zcGFuPgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9InJldmlldy1jYXJkIj4KICAgICAgICA8c3BhbiBjbGFzcz0icmV2aWV3LXN0YXJzIj7imIXimIXimIXimIXimIU8L3NwYW4+CiAgICAgICAgPHAgY2xhc3M9InJldmlldy10ZXh0Ij4iV2l0aCBhIGRhbWFnZWQgaW50ZXN0aW5lIGFuZCBtdWx0aXBsZSBmcmFjdHVyZXMsIE5rd2FuemkgZmFjZWQgb25lIG9mIHRoZSB0b3VnaGVzdCBiYXR0bGVzIG9mIGhpcyBsaWZlLiBUaHJvdWdoIHRoZSBkZWRpY2F0ZWQgY2FyZSBvZiB0aGUgQ2FzZSBIb3NwaXRhbCB0ZWFtLCBoZSBmb3VnaHQgYmFjayBmcm9tIHRoZSBicmluayBvZiBkZWF0aCB0byBhIGZ1bGwgcmVjb3ZlcnkuIjwvcD4KICAgICAgICA8c3BhbiBjbGFzcz0icmV2aWV3LW5hbWUiPk5rd2FuemkgV2lsc29uIMK3IEthbXBhbGE8L3NwYW4+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0icmV2aWV3LWNhcmQiPgogICAgICAgIDxzcGFuIGNsYXNzPSJyZXZpZXctc3RhcnMiPuKYheKYheKYheKYheKYhTwvc3Bhbj4KICAgICAgICA8cCBjbGFzcz0icmV2aWV3LXRleHQiPiIzMCB5ZWFycyBvZiB0cnVzdGVkIGhlYWx0aGNhcmUuIENhc2UgQ2xpbmljIGhhcyBhbHdheXMgYmVlbiBvdXIgZmFtaWx5J3MgZmlyc3QgY2hvaWNlLiBUaGUgZG9jdG9ycyBhcmUgdGhvcm91Z2gsIHRoZSBzdGFmZiBhcmUgd2FybSwgYW5kIHRoZSBmYWNpbGl0eSBpcyBhbHdheXMgY2xlYW4gYW5kIHByb2Zlc3Npb25hbC4iPC9wPgogICAgICAgIDxzcGFuIGNsYXNzPSJyZXZpZXctbmFtZSI+Q2FzZSBDbGluaWMgUGF0aWVudCDCtyBVZ2FuZGE8L3NwYW4+CiAgICAgIDwvZGl2PgoKICAgICAgPCEtLSBTRVQgMiDigJQgZHVwbGljYXRlIGZvciBzZWFtbGVzcyBsb29wIC0tPgogICAgICA8ZGl2IGNsYXNzPSJyZXZpZXctY2FyZCI+CiAgICAgICAgPHNwYW4gY2xhc3M9InJldmlldy1zdGFycyI+4piF4piF4piF4piF4piFPC9zcGFuPgogICAgICAgIDxwIGNsYXNzPSJyZXZpZXctdGV4dCI+IkV4Y2VsbGVudCBtZWRpY2FsIGNhcmUgYW5kIGF0dGVudGlvbi4gQ2FtZSBpbiBmb3IgYSBmYW1pbHkgbWVtYmVyIHdobyBoYWQgYW4gYWNjaWRlbnQgYW5kIHNldmVyZSBoZWFkIHRyYXVtYSBhbmQgZnJhY3R1cmVkIHNrdWxsLiBUaGUgaW4taG91c2UgbmV1cm9zdXJnZW9uIERyLiBIdXNzZWluIGFuZCBoaXMgdGVhbSBkaWQgYSBmYW50YXN0aWMgam9iLiI8L3A+CiAgICAgICAgPHNwYW4gY2xhc3M9InJldmlldy1uYW1lIj5BaG1lZCBTYXR0aTwvc3Bhbj4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJyZXZpZXctY2FyZCI+CiAgICAgICAgPHNwYW4gY2xhc3M9InJldmlldy1zdGFycyI+4piF4piF4piF4piF4piFPC9zcGFuPgogICAgICAgIDxwIGNsYXNzPSJyZXZpZXctdGV4dCI+Ikkgd2FzIHRoZXJlIGZvciBzaXggZGF5cywgdGhyZWUgaW4gSUNVLCBidXQgdGhlIGNhcmUgYW5kIGF0dGVudGlvbiB3YXMgY29tbWVuZGFibGUuIFNwZWNpYWwgYXBwcmVjaWF0aW9uIHRvIHRoZSB3aG9sZSBJQ1UgdGVhbTogQXNocmFmLCBLYXJpbSwgTmljaG9sYXMsIFZpdmlhbiwgYW5kIHRoZSByZXN0LiBJIGFtIHRydWx5IGdyYXRlZnVsLiI8L3A+CiAgICAgICAgPHNwYW4gY2xhc3M9InJldmlldy1uYW1lIj5EYXZpZCBObnlvbmRvPC9zcGFuPgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9InJldmlldy1jYXJkIj4KICAgICAgICA8c3BhbiBjbGFzcz0icmV2aWV3LXN0YXJzIj7imIXimIXimIXimIXimIU8L3NwYW4+CiAgICAgICAgPHAgY2xhc3M9InJldmlldy10ZXh0Ij4iSSBhbSBzcGVha2luZyBmcm9tIEJhbmdsYWRlc2guIEkgd2FzIGFkbWl0dGVkIHRvIENhc2UgSG9zcGl0YWwgaW4gSmFudWFyeSAyMDIyIGR1cmluZyBhIFVOIG1pc3Npb24gaW4gQ2VudHJhbCBBZnJpY2EuIEkgc3RpbGwgcmVtZW1iZXIgdGhlIGRvY3RvcnMgYW5kIG51cnNlcy4gSSBtaXNzIHRoZW0uIEkgd2FzIHZlcnkgc2F0aXNmaWVkIHdpdGggdGhlaXIgbG92ZSBhbmQgY2FyZS4iPC9wPgogICAgICAgIDxzcGFuIGNsYXNzPSJyZXZpZXctbmFtZSI+TWVoZWRpIEhhc2FuIMK3IEJhbmdsYWRlc2g8L3NwYW4+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0icmV2aWV3LWNhcmQiPgogICAgICAgIDxzcGFuIGNsYXNzPSJyZXZpZXctc3RhcnMiPuKYheKYheKYheKYheKYhTwvc3Bhbj4KICAgICAgICA8cCBjbGFzcz0icmV2aWV3LXRleHQiPiJXaXRoIGEgZGFtYWdlZCBpbnRlc3RpbmUgYW5kIG11bHRpcGxlIGZyYWN0dXJlcywgTmt3YW56aSBmYWNlZCBvbmUgb2YgdGhlIHRvdWdoZXN0IGJhdHRsZXMgb2YgaGlzIGxpZmUuIFRocm91Z2ggdGhlIGRlZGljYXRlZCBjYXJlIG9mIHRoZSBDYXNlIEhvc3BpdGFsIHRlYW0sIGhlIGZvdWdodCBiYWNrIGZyb20gdGhlIGJyaW5rIG9mIGRlYXRoIHRvIGEgZnVsbCByZWNvdmVyeS4iPC9wPgogICAgICAgIDxzcGFuIGNsYXNzPSJyZXZpZXctbmFtZSI+Tmt3YW56aSBXaWxzb24gwrcgS2FtcGFsYTwvc3Bhbj4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJyZXZpZXctY2FyZCI+CiAgICAgICAgPHNwYW4gY2xhc3M9InJldmlldy1zdGFycyI+4piF4piF4piF4piF4piFPC9zcGFuPgogICAgICAgIDxwIGNsYXNzPSJyZXZpZXctdGV4dCI+IjMwIHllYXJzIG9mIHRydXN0ZWQgaGVhbHRoY2FyZS4gQ2FzZSBDbGluaWMgaGFzIGFsd2F5cyBiZWVuIG91ciBmYW1pbHkncyBmaXJzdCBjaG9pY2UuIFRoZSBkb2N0b3JzIGFyZSB0aG9yb3VnaCwgdGhlIHN0YWZmIGFyZSB3YXJtLCBhbmQgdGhlIGZhY2lsaXR5IGlzIGFsd2F5cyBjbGVhbiBhbmQgcHJvZmVzc2lvbmFsLiI8L3A+CiAgICAgICAgPHNwYW4gY2xhc3M9InJldmlldy1uYW1lIj5DYXNlIENsaW5pYyBQYXRpZW50IMK3IFVnYW5kYTwvc3Bhbj4KICAgICAgPC9kaXY+CgogICAgPC9kaXY+CiAgPC9kaXY+CjwvZGl2PgoKPCEtLSBNRURJQ0FMIEZJUlNUUyAtLT4KPGRpdiBjbGFzcz0iZmlyc3RzIj4KICA8ZGl2IGNsYXNzPSJmaXJzdHMtaW5uZXIiPgogICAgPGRpdiBjbGFzcz0ic2VjLXRhZyI+UGlvbmVlcmluZyBFeGNlbGxlbmNlPC9kaXY+CiAgICA8aDI+VWdhbmRhJ3MgPGVtPk1lZGljYWwgRmlyc3RzPC9lbT48L2gyPgogICAgPGRpdiBjbGFzcz0iZmlyc3RzLWdyaWQiPgogICAgICA8ZGl2IGNsYXNzPSJmaXJzdC1pdGVtIj4KICAgICAgICA8c3BhbiBjbGFzcz0iZmkteWVhciI+T2N0IDIwMDA8L3NwYW4+CiAgICAgICAgPHNwYW4gY2xhc3M9ImZpLXRleHQiPkZpcnN0IHByaXZhdGUgaGFlbW9kaWFseXNpcyB0cmVhdG1lbnQgaW4gVWdhbmRhIGdpdmluZyBVZ2FuZGFuIHBhdGllbnRzIGxpZmUtc2F2aW5nIHJlbmFsIGNhcmUgYXQgaG9tZSBmb3IgdGhlIGZpcnN0IHRpbWUuPC9zcGFuPgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iZmlyc3QtaXRlbSI+CiAgICAgICAgPHNwYW4gY2xhc3M9ImZpLXllYXIiPjIwMDQ8L3NwYW4+CiAgICAgICAgPHNwYW4gY2xhc3M9ImZpLXRleHQiPkZpcnN0IGxhcGFyb3Njb3BpYyBjaG9sZWN5c3RlY3RvbXkgYXQgTXVsYWdvIEhvc3BpdGFsIHBpb25lZXJpbmcga2V5aG9sZSBzdXJnZXJ5IGluIFVnYW5kYSdzIGxlYWRpbmcgbmF0aW9uYWwgcmVmZXJyYWwgY2VudHJlLjwvc3Bhbj4KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImZpcnN0LWl0ZW0iPgogICAgICAgIDxzcGFuIGNsYXNzPSJmaS15ZWFyIj5QaW9uZWVyPC9zcGFuPgogICAgICAgIDxzcGFuIGNsYXNzPSJmaS10ZXh0Ij5QaW9uZWVyIG9mIGJhcmlhdHJpYyBzdXJnZXJ5IGluIFVnYW5kYSBwcm92aWRpbmcgc3VyZ2ljYWwgc29sdXRpb25zIGFzIFVnYW5kYSBmYWNlcyByaXNpbmcgb2Jlc2l0eS1yZWxhdGVkIGlsbG5lc3MgYWNyb3NzIHRoZSBjb3VudHJ5Ljwvc3Bhbj4KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImZpcnN0LWl0ZW0iPgogICAgICAgIDxzcGFuIGNsYXNzPSJmaS15ZWFyIj4zMCBZZWFyczwvc3Bhbj4KICAgICAgICA8c3BhbiBjbGFzcz0iZmktdGV4dCI+U2VuaW9yIExlY3R1cmVyLCBEZXBhcnRtZW50IG9mIFN1cmdlcnksIE1ha2VyZXJlIFVuaXZlcnNpdHkgc2hhcGluZyBVZ2FuZGEncyBuZXh0IGdlbmVyYXRpb24gb2Ygc3VyZ2VvbnMgd2hpbGUgY29udGludWluZyB0byBwcmFjdGlzZS48L3NwYW4+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgPC9kaXY+CjwvZGl2PgoKPGRpdiBjbGFzcz0iZGl2aWRlciI+PC9kaXY+Cgo8IS0tIExPQ0FUSU9OUyAtLT4KPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgPGRpdiBjbGFzcz0ic2VjLXRhZyI+Rm91ciBMb2NhdGlvbnMgwrcgVWdhbmRhPC9kaXY+CiAgPGgyPkNhc2UgQ2xpbmljIDxlbT5Ib3NwaXRhbCBMb2NhdGlvbnM8L2VtPjwvaDI+CiAgPGRpdiBjbGFzcz0ibG9jYXRpb25zLWdyaWQiPgoKICAgIDxkaXYgY2xhc3M9ImxvYy1jYXJkIiBpZD0ia2FtcGFsYSI+CiAgICAgIDxkaXYgY2xhc3M9ImxvYy1uYW1lIj5DYXNlIEhvc3BpdGFsIEthbXBhbGE8L2Rpdj4KICAgICAgPHNwYW4gY2xhc3M9ImxvYy1iYWRnZSI+TWFpbiBIb3NwaXRhbCDCtyAyNC83IEVtZXJnZW5jeTwvc3Bhbj4KICAgICAgPGRpdiBjbGFzcz0ibG9jLWRldGFpbHMiPgogICAgICAgIDxkaXYgY2xhc3M9ImxvYy1kZXRhaWwiPvCfk40gPHNwYW4+UGxvdCA2OS03MSBCdWdhbmRhIFJvYWQsIEthbXBhbGE8L3NwYW4+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibG9jLWRldGFpbCI+8J+TniA8YSBocmVmPSJ0ZWw6MDgwMDIxMTAwNSI+VG9sbCBGcmVlOiAwODAwIDIxMSAwMDU8L2E+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibG9jLWRldGFpbCI+8J+TniA8YSBocmVmPSJ0ZWw6KzI1NjcwMTI1MDM2MiI+KzI1NiA3MDEgMjUwIDM2MjwvYT48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJsb2MtZGV0YWlsIj7inInvuI8gPGEgaHJlZj0ibWFpbHRvOmhvc3BpdGFsQGNhc2VtZWRzZXJ2aWNlcy5vcmciPmhvc3BpdGFsQGNhc2VtZWRzZXJ2aWNlcy5vcmc8L2E+PC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8YSBocmVmPSJ0ZWw6KzI1NjcwMTI1MDM2MiIgY2xhc3M9ImxvYy1ib29rIj7wn5OFIFNjaGVkdWxlIGEgVmlzaXQ8L2E+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJsb2MtY2FyZCIgaWQ9ImVudGViYmUiPgogICAgICA8ZGl2IGNsYXNzPSJsb2MtbmFtZSI+Q2FzZSBIb3NwaXRhbCBFbnRlYmJlPC9kaXY+CiAgICAgIDxzcGFuIGNsYXNzPSJsb2MtYmFkZ2UiPlNhdGVsbGl0ZSBMb2NhdGlvbjwvc3Bhbj4KICAgICAgPGRpdiBjbGFzcz0ibG9jLWRldGFpbHMiPgogICAgICAgIDxkaXYgY2xhc3M9ImxvYy1kZXRhaWwiPvCfk40gPHNwYW4+UGxvdCA3My03NSBLaXRvb3JvIFJvYWQsIEVudGViYmU8L3NwYW4+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibG9jLWRldGFpbCI+8J+TniA8YSBocmVmPSJ0ZWw6MDM5MjAwNDMxNSI+MDM5MiAwMDQgMzE1PC9hPjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImxvYy1kZXRhaWwiPvCfk54gPGEgaHJlZj0idGVsOjA3MDcyNTAzNjIiPjA3MDcgMjUwIDM2MjwvYT48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJsb2MtZGV0YWlsIj7inInvuI8gPGEgaHJlZj0ibWFpbHRvOmNhc2VtZWRjYXJlX2VudGViYmVAY2FzZW1lZHNlcnZpY2VzLm9yZyI+ZW50ZWJiZUBjYXNlbWVkc2VydmljZXMub3JnPC9hPjwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgPGEgaHJlZj0idGVsOjAzOTIwMDQzMTUiIGNsYXNzPSJsb2MtYm9vayI+8J+ThSBTY2hlZHVsZSBhIFZpc2l0PC9hPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibG9jLWNhcmQiIGlkPSJuYWFseWEiPgogICAgICA8ZGl2IGNsYXNzPSJsb2MtbmFtZSI+Q2FzZSBIb3NwaXRhbCBOYWFseWE8L2Rpdj4KICAgICAgPHNwYW4gY2xhc3M9ImxvYy1iYWRnZSI+U2F0ZWxsaXRlIExvY2F0aW9uPC9zcGFuPgogICAgICA8ZGl2IGNsYXNzPSJsb2MtZGV0YWlscyI+CiAgICAgICAgPGRpdiBjbGFzcz0ibG9jLWRldGFpbCI+8J+TjSA8c3Bhbj5QbG90IDgyNiwgTmFhbHlhIExhbmUsIEthbXBhbGE8L3NwYW4+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibG9jLWRldGFpbCI+8J+TniA8YSBocmVmPSJ0ZWw6MDc4Mzc4MzMzMyI+MDc4MyA3ODMgMzMzPC9hPjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImxvYy1kZXRhaWwiPvCfk54gPGEgaHJlZj0idGVsOjA3NDE1NDE3MDAiPjA3NDEgNTQxIDcwMDwvYT48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJsb2MtZGV0YWlsIj7inInvuI8gPGEgaHJlZj0ibWFpbHRvOmNhc2VtZWRjYXJlX25hYWx5YUBjYXNlbWVkc2VydmljZXMub3JnIj5uYWFseWFAY2FzZW1lZHNlcnZpY2VzLm9yZzwvYT48L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIDxhIGhyZWY9InRlbDowNzgzNzgzMzMzIiBjbGFzcz0ibG9jLWJvb2siPvCfk4UgU2NoZWR1bGUgYSBWaXNpdDwvYT4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9ImxvYy1jYXJkIiBpZD0iamluamEiPgogICAgICA8ZGl2IGNsYXNzPSJsb2MtbmFtZSI+Q2FzZSBIb3NwaXRhbCBKaW5qYTwvZGl2PgogICAgICA8c3BhbiBjbGFzcz0ibG9jLWJhZGdlIj5TYXRlbGxpdGUgTG9jYXRpb248L3NwYW4+CiAgICAgIDxkaXYgY2xhc3M9ImxvYy1kZXRhaWxzIj4KICAgICAgICA8ZGl2IGNsYXNzPSJsb2MtZGV0YWlsIj7wn5ONIDxzcGFuPlBsb3QgMzUgQ2xpdmUgV2VzdC9OYWx1ZmVueWEgUm9hZCwgSmluamE8L3NwYW4+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibG9jLWRldGFpbCI+8J+TniA8YSBocmVmPSJ0ZWw6MDc0MDUxMzU1NSI+MDc0MCA1MTMgNTU1PC9hPjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImxvYy1kZXRhaWwiPvCfk54gPGEgaHJlZj0idGVsOjA3NjQyMDk4OTAiPjA3NjQgMjA5IDg5MDwvYT48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJsb2MtZGV0YWlsIj7inInvuI8gPGEgaHJlZj0ibWFpbHRvOmNhc2VtZWRjYXJlX2ppbmphQGNhc2VtZWRzZXJ2aWNlcy5vcmciPmppbmphQGNhc2VtZWRzZXJ2aWNlcy5vcmc8L2E+PC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8YSBocmVmPSJ0ZWw6MDc0MDUxMzU1NSIgY2xhc3M9ImxvYy1ib29rIj7wn5OFIFNjaGVkdWxlIGEgVmlzaXQ8L2E+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJsb2MtY2FyZCBjb21pbmctc29vbiI+CiAgICAgIDxzcGFuIGNsYXNzPSJjb21pbmctYmFkZ2UiPvCflJQgT3BlbmluZyBTb29uPC9zcGFuPgogICAgICA8ZGl2IGNsYXNzPSJsb2MtbmFtZSI+Q2FzZSBDbGluaWMgQndleW9nZXJlcmU8L2Rpdj4KICAgICAgPHNwYW4gY2xhc3M9ImxvYy1iYWRnZSI+NXRoIExvY2F0aW9uIMK3IENvbWluZyBTb29uPC9zcGFuPgogICAgICA8ZGl2IGNsYXNzPSJsb2MtZGV0YWlscyI+CiAgICAgICAgPGRpdiBjbGFzcz0ibG9jLWRldGFpbCI+8J+TjSA8c3Bhbj5Cd2V5b2dlcmVyZSwgS2FtcGFsYTwvc3Bhbj48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJsb2MtZGV0YWlsIj7inJogPHNwYW4+UHJlbWl1bSB0cnVzdGVkIGhlYWx0aGNhcmUgY29taW5nIHRvIHlvdXIgbmVpZ2hib3VyaG9vZC4gRm9sbG93IHVzIHRvIGJlIGZpcnN0IHRvIGtub3cuPC9zcGFuPjwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgPGEgaHJlZj0iaHR0cHM6Ly93d3cubGlua2VkaW4uY29tL2NvbXBhbnkvY2FzZS1ob3NwaXRhbC8iIHRhcmdldD0iX2JsYW5rIiBjbGFzcz0ibG9jLWJvb2sgbG9jLWJvb2stb3JhbmdlIj7wn5SUIEZvbGxvdyBmb3IgVXBkYXRlczwvYT4KICAgIDwvZGl2PgoKICA8L2Rpdj4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJkaXZpZGVyIj48L2Rpdj4KCjwhLS0gSU5TVVJBTkNFIC0tPgo8ZGl2IGNsYXNzPSJpbnN1cmFuY2UiPgogIDxkaXYgY2xhc3M9Imluc3VyYW5jZS1pbm5lciI+CiAgICA8ZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzZWMtdGFnIj5DYXNlIE1lZENhcmU8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iaW5zLXRpdGxlIj5IZWFsdGggSW5zdXJhbmNlPGJyPjxlbT5CdWlsdCBmb3IgVWdhbmRhLjwvZW0+PC9kaXY+CiAgICAgIDxwIGNsYXNzPSJpbnMtYm9keSI+Q2FzZSBNZWRDYXJlIEluc3VyYW5jZSBTZXJ2aWNlcyBwcm92aWRlcyBjb21wcmVoZW5zaXZlIGhlYWx0aCBjb3ZlcmFnZSBmb3IgaW5kaXZpZHVhbHMsIGZhbWlsaWVzLCBhbmQgY29ycG9yYXRlcyBhY3Jvc3MgVWdhbmRhLiBBcyBwYXJ0IG9mIHRoZSBDYXNlIE1lZGljYWwgU2VydmljZXMgZmFtaWx5LCB5b3VyIGluc3VyYW5jZSBpcyBiYWNrZWQgYnkgMzAgeWVhcnMgb2YgdHJ1c3RlZCBoZWFsdGhjYXJlIGV4cGVydGlzZS48L3A+CiAgICAgIDxkaXYgY2xhc3M9Imlucy1wb2ludHMiPgogICAgICAgIDxkaXYgY2xhc3M9Imlucy1wdCI+SW5kaXZpZHVhbCBhbmQgZmFtaWx5IGhlYWx0aCBwbGFuczwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Imlucy1wdCI+Q29ycG9yYXRlIGFuZCBncm91cCBoZWFsdGggcGFja2FnZXM8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJpbnMtcHQiPkNvdmVyYWdlIGFjcm9zcyBhbGwgZm91ciBDYXNlIGxvY2F0aW9uczwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Imlucy1wdCI+TGlua2VkIGxveWFsdHkgYW5kIGNvdXBvbiBjYXJkIHByb2dyYW1tZTwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Imlucy1wdCI+RXhlY3V0aXZlIGhlYWx0aCBzY3JlZW5pbmcgcGFja2FnZXM8L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIDxhIGhyZWY9Im1haWx0bzpob3NwaXRhbEBjYXNlbWVkc2VydmljZXMub3JnIiBjbGFzcz0iYnRuLW91dGxpbmUiPkVucXVpcmUgQWJvdXQgQ292ZXJhZ2Ug4oaSPC9hPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJpbnMtcmlnaHQiPgogICAgICA8c3BhbiBjbGFzcz0iaW5zLW51bSI+MzgsMDAwKzwvc3Bhbj4KICAgICAgPHNwYW4gY2xhc3M9Imlucy1sYWJlbCI+QWN0aXZlIEhNTyBNZW1iZXJzPC9zcGFuPgogICAgICA8cCBjbGFzcz0iaW5zLWRldGFpbCI+VWdhbmRhbnMgYW5kIEVhc3QgQWZyaWNhbnMgd2hvIGhhdmUgY2hvc2VuIENhc2UgTWVkQ2FyZSBmb3IgdGhlaXIgaGVhbHRoIGluc3VyYW5jZSBjb3ZlcmFnZSBhbmQgdHJ1c3RlZCB0aGUgQ2FzZSBuYW1lIHRvIHByb3RlY3QgdGhlaXIgZmFtaWxpZXMuPC9wPgogICAgPC9kaXY+CiAgPC9kaXY+CjwvZGl2PgoKPGRpdiBjbGFzcz0iZGl2aWRlciI+PC9kaXY+Cgo8IS0tIEZPVU5ERVIgLS0+CjxkaXYgY2xhc3M9ImZvdW5kZXIiPgogIDxkaXYgY2xhc3M9ImZvdW5kZXItaW5uZXIiPgogICAgPGRpdj4KICAgICAgPHNwYW4gY2xhc3M9ImZvdW5kZXItbGFiZWwiPuKXhiBPdXIgRm91bmRlcjwvc3Bhbj4KICAgICAgPGRpdiBjbGFzcz0iZm91bmRlci1uYW1lIj5Eci4gQS5LLiBTZWJiYWFsZTwvZGl2PgogICAgICA8c3BhbiBjbGFzcz0iZm91bmRlci10aXRsZSI+Rm91bmRlciAmIE1lZGljYWwgRGlyZWN0b3IgwrcgQ2FzZSBNZWRpY2FsIFNlcnZpY2VzIFVnYW5kYTwvc3Bhbj4KICAgICAgPHAgY2xhc3M9ImZvdW5kZXItYmlvIj5JbiAxOTk1LCBEci4gU2ViYmFhbGUgZm91bmRlZCBDYXNlIENsaW5pYyB3aXRoIGEgc2luZ3VsYXIgY29udmljdGlvbiB0aGF0IFVnYW5kYSBkZXNlcnZlZCB3b3JsZC1jbGFzcyBwcml2YXRlIGhlYWx0aGNhcmUuIE5vdCBhcyBhIGRpc3RhbnQgYXNwaXJhdGlvbiwgYnV0IGFzIGEgcHJlc2VudCByZWFsaXR5LiBUaGlydHkgeWVhcnMgbGF0ZXIsIHRoYXQgY29udmljdGlvbiBpcyBhIGZvdXItbG9jYXRpb24gbWVkaWNhbCBuZXR3b3JrIHRoYXQgaGFzIHBpb25lZXJlZCBwcm9jZWR1cmVzIG5ldmVyIGJlZm9yZSBwZXJmb3JtZWQgaW4gVWdhbmRhIGFuZCBzaGFwZWQgdGhlIGNhcmVlcnMgb2YgYSBnZW5lcmF0aW9uIG9mIFVnYW5kYW4gc3VyZ2VvbnMuPC9wPgogICAgICA8ZGl2IGNsYXNzPSJmb3VuZGVyLWNyZWRzIj4KICAgICAgICA8c3BhbiBjbGFzcz0iZmMtaXRlbSI+RmVsbG93IMK3IEFzc29jaWF0aW9uIG9mIFN1cmdlb25zIG9mIEVhc3QgQWZyaWNhIChBU0VBKTwvc3Bhbj4KICAgICAgICA8c3BhbiBjbGFzcz0iZmMtaXRlbSI+RmVsbG93IMK3IENvbGxlZ2Ugb2YgU3VyZ2VvbnMgb2YgRWFzdCwgQ2VudHJhbCAmIFNvdXRoZXJuIEFmcmljYSAoRkNTLUVDU0EpPC9zcGFuPgogICAgICAgIDxzcGFuIGNsYXNzPSJmYy1pdGVtIj5GZWxsb3cgwrcgSW50ZXJuYXRpb25hbCBDb2xsZWdlIG9mIFN1cmdlb25zIChGSUNTKTwvc3Bhbj4KICAgICAgICA8c3BhbiBjbGFzcz0iZmMtaXRlbSI+U2VuaW9yIExlY3R1cmVyIMK3IERlcGFydG1lbnQgb2YgU3VyZ2VyeSDCtyBNYWtlcmVyZSBVbml2ZXJzaXR5PC9zcGFuPgogICAgICAgIDxzcGFuIGNsYXNzPSJmYy1pdGVtIj5GaXZlIHB1Ymxpc2hlZCByZXNlYXJjaCBwYXBlcnMgwrcgSW50ZXJuYXRpb25hbCBmZWxsb3dzaGlwIGhvbGRlcjwvc3Bhbj4KICAgICAgPC9kaXY+CiAgICAgIDxhIGhyZWY9Imh0dHBzOi8vY2FzZWNsaW5pYy5vcmcvZm91bmRlciIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJmb3VuZGVyLWxpbmsiPgogICAgICAgIFZpZXcgRm91bmRlciBEaWdpdGFsIENhcmQg4oaSCiAgICAgIDwvYT4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0iZm91bmRlci1yaWdodCI+CiAgICAgIDxwIGNsYXNzPSJmci1xdW90ZSI+V2hhdCB5b3UgaGF2ZSBidWlsdCBpcyBleHRyYW9yZGluYXJ5LiBZb3Ugc3RhcnRlZCBDYXNlIENsaW5pYyB3aXRoIGEgc3VyZ2ljYWwgbWluZCBhbmQgdGhlIGtpbmQgb2Ygc3R1YmJvcm4gYmVsaWVmIGluIFVnYW5kYSdzIGNhcGFjaXR5IHRvIGhhdmUgd29ybGQtY2xhc3MgcHJpdmF0ZSBoZWFsdGhjYXJlIHRoYXQgbW9zdCBwZW9wbGUgd291bGQgaGF2ZSBkaXNtaXNzZWQgYXMgYXJyb2dhbmNlLiBUaGV5IHdlcmUgd3JvbmcuIFlvdSB3ZXJlIHJpZ2h0LjwvcD4KICAgICAgPHNwYW4gY2xhc3M9ImZyLWF0dHIiPk5hc3Nha2EgVGFraWEgKFJOIFJ0ZC4gMjAxNSk8L3NwYW4+CiAgICAgIDxkaXYgY2xhc3M9ImZyLWZpcnN0cyI+CiAgICAgICAgPGRpdiBjbGFzcz0iZnItZmlyc3QiPjxzcGFuPjIwMDA8L3NwYW4+Rmlyc3QgcHJpdmF0ZSBkaWFseXNpcyBpbiBVZ2FuZGE8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJmci1maXJzdCI+PHNwYW4+MjAwNDwvc3Bhbj5GaXJzdCBsYXBhcm9zY29waWMgc3VyZ2VyeSBhdCBNdWxhZ288L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJmci1maXJzdCI+PHNwYW4+UGlvbmVlcjwvc3Bhbj5CYXJpYXRyaWMgc3VyZ2VyeSBpbiBVZ2FuZGE8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJkaXZpZGVyIj48L2Rpdj4KCjwhLS0gRlJPTSBDQVNFIFRPIENPTU1VTklUWSAtLT4KPGRpdiBjbGFzcz0iY29tbXVuaXR5Ij4KICA8ZGl2IGNsYXNzPSJjb21tdW5pdHktaW5uZXIiPgogICAgPGRpdiBjbGFzcz0iY29tbXVuaXR5LXRhZyI+SGVhbHRoIEVkdWNhdGlvbiDCtyBOZXdzIMK3IFdlbGxuZXNzPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJjb21tdW5pdHktdGl0bGUiPkZyb20gQ2FzZTxicj50byA8ZW0+Q29tbXVuaXR5LjwvZW0+PC9kaXY+CiAgICA8cCBjbGFzcz0iY29tbXVuaXR5LXN1YiI+VWdhbmRhJ3MgZ28tdG8gaGVhbHRoIGFuZCB3ZWxsbmVzcyBtZWRpYSBodWIuIEV4cGVydCBtZWRpY2FsIGNvbnRlbnQsIHBhdGllbnQgc3RvcmllcywgaGVhbHRoIHRpcHMsIHN0YWZmIGZlYXR1cmVzIGFsbCBwb3dlcmVkIGJ5IENhc2UgTWVkaWNhbCBDZW50cmUgYW5kIGJ1aWx0IGZvciBpbmZvcm1lZCBjb21tdW5pdGllcy48L3A+CiAgICA8YSBocmVmPSJodHRwczovL2Nhc2VjbGluaWMubmV3cyIgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJidG4tcHJpbWFyeSI+CiAgICAgIFZpc2l0IENhc2UgQ2xpbmljIE5ld3Mg4oaSCiAgICA8L2E+CiAgPC9kaXY+CjwvZGl2PgoKPCEtLSBDT05UQUNUIEJBTkQgLS0+CjxkaXYgY2xhc3M9ImNvbnRhY3QtYmFuZCI+CiAgPGRpdiBjbGFzcz0iY2ItaW5uZXIiPgogICAgPGRpdiBjbGFzcz0iY2ItaXRlbSI+CiAgICAgIDxzcGFuIGNsYXNzPSJjYi1sYWJlbCI+4pyaIEVtZXJnZW5jeSDCtyAyNCBIb3Vyczwvc3Bhbj4KICAgICAgPGRpdiBjbGFzcz0iY2ItdmFsdWUiPjxhIGhyZWY9InRlbDowODAwMjExMDA1Ij5Ub2xsIEZyZWU6IDA4MDAgMjExIDAwNTwvYT48L2Rpdj4KICAgICAgPHNwYW4gY2xhc3M9ImNiLWJhZGdlIj5PcGVuIDM2NSBEYXlzIMK3IEFsbCBMb2NhdGlvbnM8L3NwYW4+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9ImNiLWl0ZW0iPgogICAgICA8c3BhbiBjbGFzcz0iY2ItbGFiZWwiPkdlbmVyYWwgSW5xdWlyaWVzPC9zcGFuPgogICAgICA8ZGl2IGNsYXNzPSJjYi12YWx1ZSI+PGEgaHJlZj0idGVsOisyNTY3MDEyNTAzNjIiPisyNTYgNzAxIDI1MCAzNjI8L2E+PC9kaXY+CiAgICAgIDxzcGFuIGNsYXNzPSJjYi1iYWRnZSI+TW9uZGF5IFN1bmRheTwvc3Bhbj4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0iY2ItaXRlbSI+CiAgICAgIDxzcGFuIGNsYXNzPSJjYi1sYWJlbCI+V2hhdHNBcHAgwrcgQm9vayBOb3c8L3NwYW4+CiAgICAgIDxkaXYgY2xhc3M9ImNiLXZhbHVlIj48YSBocmVmPSJodHRwczovL3dhLm1lLzI1Njc2NDIwOTg4OSIgdGFyZ2V0PSJfYmxhbmsiPisyNTYgNzY0IDIwOSA4ODk8L2E+PC9kaXY+CiAgICAgIDxzcGFuIGNsYXNzPSJjYi1iYWRnZSI+RmFzdGVzdCBSZXNwb25zZTwvc3Bhbj4KICAgIDwvZGl2PgogIDwvZGl2Pgo8L2Rpdj4KCjwhLS0gRk9PVEVSIC0tPgo8Zm9vdGVyPgogIDxkaXYgY2xhc3M9ImZvb3Rlci1pbm5lciI+CiAgICA8ZGl2IGNsYXNzPSJmb290ZXItdG9wIj4KICAgICAgPGRpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJmLWJyYW5kLW5hbWUiPkNhc2U8c3BhbiBjbGFzcz0iY2MiPkNsaW5pYzwvc3Bhbj4gVWdhbmRhPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iZi1icmFuZC10YWciPkZsdWVudCBpbiBIZWFsdGhjYXJlIMK3IFNpbmNlIDE5OTU8L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImYtbGlua3MiPgogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vY2FzZWNsaW5pYy5uZXdzIiB0YXJnZXQ9Il9ibGFuayI+SGVhbHRoIE5ld3M8L2E+CiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9jYXNlY2xpbmljLm9yZy9mb3VuZGVyIj5Gb3VuZGVyPC9hPgogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9DYXNlSG9zcGl0YWxVZy8iIHRhcmdldD0iX2JsYW5rIj5GYWNlYm9vazwvYT4KICAgICAgICA8YSBocmVmPSJodHRwczovL3d3dy5pbnN0YWdyYW0uY29tL2Nhc2Vob3NwaXRhbHVnIiB0YXJnZXQ9Il9ibGFuayI+SW5zdGFncmFtPC9hPgogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vY2FzZW1lZHNlcnZpY2VzIiB0YXJnZXQ9Il9ibGFuayI+VHdpdHRlcjwvYT4KICAgICAgICA8YSBocmVmPSJodHRwczovL3d3dy5saW5rZWRpbi5jb20vY29tcGFueS9jYXNlLWhvc3BpdGFsLyIgdGFyZ2V0PSJfYmxhbmsiPkxpbmtlZEluPC9hPgogICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL0BjYXNlaG9zcGl0YWx1ZzM5MTMiIHRhcmdldD0iX2JsYW5rIj5Zb3VUdWJlPC9hPgogICAgICAgIDxhIGhyZWY9Im1haWx0bzpob3NwaXRhbEBjYXNlbWVkc2VydmljZXMub3JnIj5FbWFpbCBVczwvYT4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9ImZvb3Rlci1ib3R0b20iPgogICAgICA8ZGl2IGNsYXNzPSJmLWNvcHkiPsKpIDIwMjYgQ2FzZSBDbGluaWMgVWdhbmRhIMK3IEFsbCBSaWdodHMgUmVzZXJ2ZWQ8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iZi1hZGRyZXNzIj5QbG90IDY5LTcxIEJ1Z2FuZGEgUm9hZCwgS2FtcGFsYSwgVWdhbmRhLCBFYXN0IEFmcmljYTwvZGl2PgogICAgPC9kaXY+CiAgPC9kaXY+CjwvZm9vdGVyPgoKPHNjcmlwdD4KLy8g4pSA4pSAIEJSQU5ERUQgRkxPQVRJTkcgRE9VQkxFIENST1NTRVMg4pSA4pSACihmdW5jdGlvbigpewogIHZhciBsYXllciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjcm9zc2VzTGF5ZXInKTsKICAvLyBvdXRlciBhbHdheXMgZ3JlZW4gwrcgaW5uZXIgPSBicmFuZCBjb2xvdXIKICB2YXIgYnJhbmRzID0gWwogICAge2lubmVyOicjMEE3NTQxJywgbGFiZWw6J2hvc3BpdGFsJ30sICAgIC8vIENhc2UgSG9zcGl0YWwgwrcgZ3JlZW4KICAgIHtpbm5lcjonIzI1NjNFQicsIGxhYmVsOidtZWRzY2hvb2wnfSwgICAvLyBDYXNlIE1lZFNjaG9vbCDCtyBibHVlCiAgICB7aW5uZXI6JyNGRjZCMDAnLCBsYWJlbDonbWVkY2FyZSd9LCAgICAgLy8gQ2FzZSBNZWRDYXJlIMK3IG9yYW5nZQogICAge2lubmVyOicjQjk0MDQwJywgbGFiZWw6J2luc3VyYW5jZSd9LCAgIC8vIENhc2UgTWVkIEluc3VyYW5jZSDCtyBydXN0CiAgICB7aW5uZXI6JyM2QjIxQTgnLCBsYWJlbDonc2VydmljZXMnfSwgICAgLy8gQ2FzZSBNZWRpY2FsIFNlcnZpY2VzIMK3IHB1cnBsZQogICAge2lubmVyOicjRTg2NTBBJywgbGFiZWw6J2RpYWdub3N0aWMnfSwgIC8vIENhc2UgRGlhZ25vc3RpYyDCtyBvcmFuZ2UtaXNoCiAgICB7aW5uZXI6JyM0QzFEOEYnLCBsYWJlbDoncGhhcm1hY3knfSwgICAgLy8gQ2FzZSBQaGFybWFjeSDCtyBwdXJwbGUgaW5kaWdvCiAgICB7aW5uZXI6JyMwQTc1NDEnLCBsYWJlbDonaG9zcGl0YWwyJ30sICAgLy8gcmVwZWF0CiAgICB7aW5uZXI6JyMyNTYzRUInLCBsYWJlbDonbWVkc2Nob29sMid9LAogICAge2lubmVyOicjRkY2QjAwJywgbGFiZWw6J21lZGNhcmUyJ30sCiAgICB7aW5uZXI6JyNCOTQwNDAnLCBsYWJlbDonaW5zdXJhbmNlMid9LAogICAge2lubmVyOicjNkIyMUE4JywgbGFiZWw6J3NlcnZpY2VzMid9LAogICAge2lubmVyOicjRTg2NTBBJywgbGFiZWw6J2RpYWdub3N0aWMyJ30sCiAgICB7aW5uZXI6JyM0QzFEOEYnLCBsYWJlbDoncGhhcm1hY3kyJ30sCiAgICB7aW5uZXI6JyMwQTc1NDEnLCBsYWJlbDonaG9zcGl0YWwzJ30sCiAgXTsKCiAgdmFyIHBvc2l0aW9ucyA9IFsKICAgIHt4OjQsICBzejoyOCwgZHVyOjI0LCBkZWxheTowfSwKICAgIHt4OjExLCBzejo0OCwgZHVyOjMyLCBkZWxheTo0fSwKICAgIHt4OjE5LCBzejoyMCwgZHVyOjE5LCBkZWxheTo4fSwKICAgIHt4OjI3LCBzejo2MCwgZHVyOjI4LCBkZWxheToyfSwKICAgIHt4OjMzLCBzejozMiwgZHVyOjIyLCBkZWxheToxMX0sCiAgICB7eDo0MSwgc3o6MTgsIGR1cjozNSwgZGVsYXk6Nn0sCiAgICB7eDo0OSwgc3o6NDQsIGR1cjoyNiwgZGVsYXk6MX0sCiAgICB7eDo1Niwgc3o6MjYsIGR1cjoyMCwgZGVsYXk6OX0sCiAgICB7eDo2Mywgc3o6NTIsIGR1cjozMCwgZGVsYXk6NX0sCiAgICB7eDo3MSwgc3o6MjIsIGR1cjoxOCwgZGVsYXk6MTN9LAogICAge3g6NzgsIHN6OjM4LCBkdXI6MjcsIGRlbGF5OjN9LAogICAge3g6ODQsIHN6OjE2LCBkdXI6MjMsIGRlbGF5Ojd9LAogICAge3g6ODksIHN6OjU2LCBkdXI6MzEsIGRlbGF5OjEwfSwKICAgIHt4Ojk0LCBzejozMCwgZHVyOjIxLCBkZWxheToxNH0sCiAgICB7eDo3LCAgc3o6NDIsIGR1cjoyOSwgZGVsYXk6MTJ9LAogIF07CgogIGJyYW5kcy5mb3JFYWNoKGZ1bmN0aW9uKGIsIGkpewogICAgdmFyIHBvcyA9IHBvc2l0aW9uc1tpXTsKICAgIHZhciBzeiA9IHBvcy5zejsKICAgIHZhciBvdXRlciA9ICcjMEE3NTQxJzsKICAgIHZhciBpbm5lciA9IGIuaW5uZXI7CiAgICB2YXIgb3AgPSAwLjA3ICsgKGkgJSA0KSAqIDAuMDE1OwoKICAgIC8vIEJ1aWxkIFNWRyBkb3VibGUgY3Jvc3MKICAgIC8vIE91dGVyIGdyZWVuIGNyb3NzIGJhcnMgwrcgaW5uZXIgdGhpbiBicmFuZC1jb2xvdXIgY3Jvc3MKICAgIHZhciBiYXJXICA9IE1hdGgucm91bmQoc3ogKiAwLjMwKTsgIC8vIG91dGVyIGJhciB3aWR0aAogICAgdmFyIGJhcldJID0gTWF0aC5yb3VuZChzeiAqIDAuMTQpOyAgLy8gaW5uZXIgYmFyIHdpZHRoCiAgICB2YXIgb2ZmICAgPSBNYXRoLnJvdW5kKChzeiAtIGJhclcpICAvIDIpOwogICAgdmFyIG9mZkkgID0gTWF0aC5yb3VuZCgoc3ogLSBiYXJXSSkgLyAyKTsKICAgIHZhciBwYWQgICA9IE1hdGgucm91bmQoc3ogKiAwLjA4KTsgIC8vIGlubmVyIGNyb3NzIHBhZGRpbmcgZnJvbSBlZGdlCgogICAgdmFyIHN2ZyA9IFsKICAgICAgJzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIicsCiAgICAgICcgdmlld0JveD0iMCAwICcrc3orJyAnK3N6KyciJywKICAgICAgJyB3aWR0aD0iJytzeisnIiBoZWlnaHQ9Iicrc3orJyInLAogICAgICAnIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OicrcG9zLngrJyU7dG9wOjExMCU7JywKICAgICAgJ29wYWNpdHk6JytvcCsnOycsCiAgICAgICdhbmltYXRpb246ZmxvYXRDcm9zcyAnK3Bvcy5kdXIrJ3MgZWFzZS1pbi1vdXQgJytwb3MuZGVsYXkrJ3MgaW5maW5pdGU7JywKICAgICAgJ3dpbGwtY2hhbmdlOnRyYW5zZm9ybTtwb2ludGVyLWV2ZW50czpub25lOyI+JywKICAgICAgLy8gb3V0ZXIgZ3JlZW4gY3Jvc3MKICAgICAgJzxyZWN0IHg9Iicrb2ZmKyciIHk9IjAiIHdpZHRoPSInK2JhclcrJyIgaGVpZ2h0PSInK3N6KyciIGZpbGw9Iicrb3V0ZXIrJyIgcng9IjEiLz4nLAogICAgICAnPHJlY3QgeD0iMCIgeT0iJytvZmYrJyIgd2lkdGg9Iicrc3orJyIgaGVpZ2h0PSInK2JhclcrJyIgZmlsbD0iJytvdXRlcisnIiByeD0iMSIvPicsCiAgICAgIC8vIGlubmVyIGJyYW5kIGNyb3NzICh0aGlubmVyLCBpbnNldCBmcm9tIGVkZ2UpCiAgICAgICc8cmVjdCB4PSInK29mZkkrJyIgeT0iJytwYWQrJyIgd2lkdGg9IicrYmFyV0krJyIgaGVpZ2h0PSInKyhzei1wYWQqMikrJyIgZmlsbD0iJytpbm5lcisnIiByeD0iMC41Ii8+JywKICAgICAgJzxyZWN0IHg9IicrcGFkKyciIHk9Iicrb2ZmSSsnIiB3aWR0aD0iJysoc3otcGFkKjIpKyciIGhlaWdodD0iJytiYXJXSSsnIiBmaWxsPSInK2lubmVyKyciIHJ4PSIwLjUiLz4nLAogICAgICAnPC9zdmc+JwogICAgXS5qb2luKCcnKTsKCiAgICB2YXIgd3JhcHBlciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwogICAgd3JhcHBlci5zdHlsZS5jc3NUZXh0ID0KICAgICAgJ3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6Jytwb3MueCsnJTt0b3A6MTEwJTtwb2ludGVyLWV2ZW50czpub25lOycrCiAgICAgICdhbmltYXRpb246ZmxvYXRDcm9zcyAnK3Bvcy5kdXIrJ3MgZWFzZS1pbi1vdXQgJytwb3MuZGVsYXkrJ3MgaW5maW5pdGU7JysKICAgICAgJ3dpbGwtY2hhbmdlOnRyYW5zZm9ybTsnOwogICAgd3JhcHBlci5pbm5lckhUTUwgPSBzdmc7CiAgICAvLyByZW1vdmUgZHVwbGljYXRlIGFuaW1hdGlvbiBmcm9tIHN2ZyAod3JhcHBlciBoYW5kbGVzIGl0KQogICAgdmFyIHN2Z0VsID0gd3JhcHBlci5xdWVyeVNlbGVjdG9yKCdzdmcnKTsKICAgIHN2Z0VsLnN0eWxlLmFuaW1hdGlvbiA9ICdub25lJzsKICAgIHN2Z0VsLnN0eWxlLnBvc2l0aW9uID0gJ3N0YXRpYyc7CiAgICBzdmdFbC5zdHlsZS50b3AgPSAnYXV0byc7CiAgICBzdmdFbC5zdHlsZS5sZWZ0ID0gJ2F1dG8nOwogICAgbGF5ZXIuYXBwZW5kQ2hpbGQod3JhcHBlcik7CiAgfSk7Cn0pKCk7CgovLyDilIDilIAgTE9PUElORyBIRVJPIFBIUkFTRVMg4pSA4pSACihmdW5jdGlvbigpewogIHZhciBwaHJhc2VzID0gWwogICAge2xpbmUxOidXaGVyZSBVZ2FuZGEnLCBsaW5lMjonQ29tZXMgdG8nLCBlbTonSGVhbC4nfSwKICAgIHtsaW5lMTonV2hlcmUgRmFtaWxpZXMnLCBsaW5lMjonQ29tZSB0bycsIGVtOidUcnVzdC4nfSwKICAgIHtsaW5lMTonV2hlcmUgQWZyaWNhJywgbGluZTI6J0ZpbmRzIFdvcmxkLUNsYXNzJywgZW06J0NhcmUuJ30sCiAgXTsKICB2YXIgZmx1ZW50cyA9IFsKICAgICdGbHVlbnQgaW4gSGVhbHRoY2FyZS4nLAogICAgJ1lvdXIgSGVhbHRoLiBPdXIgQ2FsbGluZy4nLAogICAgJ1RoaXJ0eSBZZWFycy4gU3RpbGwgTGVhZGluZy4nLAogIF07CiAgdmFyIGgxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2hlcm9QaHJhc2UnKTsKICB2YXIgZmwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaGVyb0ZsdWVudCcpOwogIHZhciBpZHggPSAwOwoKICBmdW5jdGlvbiB0eXBlUGhyYXNlKGVsLCBodG1sLCBzcGVlZCwgY2IpewogICAgdmFyIHRleHQgPSBodG1sLnJlcGxhY2UoLzxbXj5dKz4vZywnJykucmVwbGFjZSgvXG4vZywnICcpOwogICAgZWwuc3R5bGUub3BhY2l0eSA9ICcwJzsKICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKXsKICAgICAgZWwuaW5uZXJIVE1MID0gJyc7CiAgICAgIGVsLnN0eWxlLm9wYWNpdHkgPSAnMSc7CiAgICAgIGVsLnN0eWxlLnRyYW5zaXRpb24gPSAnb3BhY2l0eSAuNHMnOwogICAgICB2YXIgc3BhbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTsKICAgICAgc3Bhbi5jbGFzc05hbWUgPSAndHlwZXdyaXRlcic7CiAgICAgIGVsLmFwcGVuZENoaWxkKHNwYW4pOwogICAgICB2YXIgaSA9IDA7CiAgICAgIHZhciBpdiA9IHNldEludGVydmFsKGZ1bmN0aW9uKCl7CiAgICAgICAgaWYoaSA8PSB0ZXh0Lmxlbmd0aCl7CiAgICAgICAgICBzcGFuLnRleHRDb250ZW50ID0gdGV4dC5zbGljZSgwLGkpOwogICAgICAgICAgaSsrOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjbGVhckludGVydmFsKGl2KTsKICAgICAgICAgIGVsLmlubmVySFRNTCA9IGh0bWw7CiAgICAgICAgICBpZihjYikgc2V0VGltZW91dChjYiwgMzIwMCk7CiAgICAgICAgfQogICAgICB9LCBzcGVlZCB8fCA0MCk7CiAgICB9LCA0MDApOwogIH0KCiAgZnVuY3Rpb24gc2hvd05leHQoKXsKICAgIHZhciBwID0gcGhyYXNlc1tpZHhdOwogICAgdmFyIGh0bWwgPSBwLmxpbmUxICsgJzxicj4nK3AubGluZTIrJyA8ZW0+JytwLmVtKyc8L2VtPic7CiAgICB0eXBlUGhyYXNlKGgxLCBodG1sLCAzOCwgZnVuY3Rpb24oKXsKICAgICAgaWR4ID0gKGlkeCArIDEpICUgcGhyYXNlcy5sZW5ndGg7CiAgICAgIHNob3dOZXh0KCk7CiAgICB9KTsKICAgIGZsLnN0eWxlLnRyYW5zaXRpb24gPSAnb3BhY2l0eSAuNXMnOwogICAgZmwuc3R5bGUub3BhY2l0eSA9ICcwJzsKICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKXsKICAgICAgZmwudGV4dENvbnRlbnQgPSBmbHVlbnRzW2lkeF07CiAgICAgIGZsLnN0eWxlLm9wYWNpdHkgPSAnMSc7CiAgICB9LCA4MDApOwogIH0KCiAgc2V0VGltZW91dChzaG93TmV4dCwgMzAwKTsKfSkoKTsKCi8vIOKUgOKUgCBUWVBFV1JJVEVSIEZPUiBIMiBBTkQgU0VDLVRBR1Mg4pSA4pSACihmdW5jdGlvbigpewogIGZ1bmN0aW9uIHR5cGV3cml0ZShlbCwgc3BlZWQpewogICAgc3BlZWQgPSBzcGVlZCB8fCAzODsKICAgIHZhciBmdWxsID0gZWwuaW5uZXJIVE1MOwogICAgdmFyIHRleHQgPSBlbC50ZXh0Q29udGVudDsKICAgIGVsLmlubmVySFRNTCA9ICcnOwogICAgdmFyIHNwYW4gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7CiAgICBzcGFuLmNsYXNzTmFtZSA9ICd0eXBld3JpdGVyJzsKICAgIGVsLmFwcGVuZENoaWxkKHNwYW4pOwogICAgdmFyIGkgPSAwOwogICAgdmFyIGludGVydmFsID0gc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXsKICAgICAgaWYoaSA8PSB0ZXh0Lmxlbmd0aCl7CiAgICAgICAgc3Bhbi50ZXh0Q29udGVudCA9IHRleHQuc2xpY2UoMCxpKTsKICAgICAgICBpKys7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgY2xlYXJJbnRlcnZhbChpbnRlcnZhbCk7CiAgICAgICAgZWwuaW5uZXJIVE1MID0gZnVsbDsKICAgICAgfQogICAgfSwgc3BlZWQpOwogIH0KCiAgLy8gVHlwZSBoMiBhbmQgc2VjLXRhZ3Mgd2hlbiBzY3JvbGxlZCBpbnRvIHZpZXcKICB2YXIgdGFyZ2V0cyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2gyLCAuc2VjLXRhZycpOwogIHZhciB0eXBlZCA9IG5ldyBTZXQoKTsKICB2YXIgb2JzID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGZ1bmN0aW9uKGVudHJpZXMpewogICAgZW50cmllcy5mb3JFYWNoKGZ1bmN0aW9uKGUpewogICAgICBpZihlLmlzSW50ZXJzZWN0aW5nICYmICF0eXBlZC5oYXMoZS50YXJnZXQpKXsKICAgICAgICB0eXBlZC5hZGQoZS50YXJnZXQpOwogICAgICAgIHZhciBzcGVlZCA9IGUudGFyZ2V0LnRhZ05hbWUgPT09ICdIMicgPyA0MCA6IDI1OwogICAgICAgIHR5cGV3cml0ZShlLnRhcmdldCwgc3BlZWQpOwogICAgICB9CiAgICB9KTsKICB9LHt0aHJlc2hvbGQ6LjN9KTsKICB0YXJnZXRzLmZvckVhY2goZnVuY3Rpb24oZWwpeyBvYnMub2JzZXJ2ZShlbCk7IH0pOwp9KSgpOwooZnVuY3Rpb24oKXsKICB2YXIgZWxzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgKICAgICcuc3RhdC1jLC5zdmMtY2FyZCwuZmlyc3QtaXRlbSwubG9jLWNhcmQsJysKICAgICcuZm91bmRlci1pbm5lciwuaW5zLXRpdGxlLC5pbnMtcmlnaHQsJysKICAgICcuY29tbXVuaXR5LWlubmVyLC5mYy1pdGVtJwogICk7CiAgZWxzLmZvckVhY2goZnVuY3Rpb24oZWwpe2VsLmNsYXNzTGlzdC5hZGQoJ3JldmVhbCcpO30pOwoKICB2YXIgaW8gPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZnVuY3Rpb24oZW50cmllcyl7CiAgICBlbnRyaWVzLmZvckVhY2goZnVuY3Rpb24oZSl7CiAgICAgIGlmKGUuaXNJbnRlcnNlY3RpbmcpewogICAgICAgIGUudGFyZ2V0LmNsYXNzTGlzdC5hZGQoJ3Zpc2libGUnKTsKICAgICAgICBpby51bm9ic2VydmUoZS50YXJnZXQpOwogICAgICB9CiAgICB9KTsKICB9LHt0aHJlc2hvbGQ6LjEyfSk7CgogIGVscy5mb3JFYWNoKGZ1bmN0aW9uKGVsKXtpby5vYnNlcnZlKGVsKTt9KTsKCiAgLy8gc3RhZ2dlciBjYXJkcyBpbiBncmlkcwogIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5zdmMtY2FyZCcpLmZvckVhY2goZnVuY3Rpb24oZWwsaSl7CiAgICBlbC5zdHlsZS50cmFuc2l0aW9uRGVsYXkgPSAoaSAqIDAuMDYpKydzJzsKICB9KTsKICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcubG9jLWNhcmQnKS5mb3JFYWNoKGZ1bmN0aW9uKGVsLGkpewogICAgZWwuc3R5bGUudHJhbnNpdGlvbkRlbGF5ID0gKGkgKiAwLjA4KSsncyc7CiAgfSk7CiAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLnN0YXQtYycpLmZvckVhY2goZnVuY3Rpb24oZWwsaSl7CiAgICBlbC5zdHlsZS50cmFuc2l0aW9uRGVsYXkgPSAoaSAqIDAuMSkrJ3MnOwogIH0pOwp9KSgpOwo8L3NjcmlwdD4KPC9ib2R5Pgo8L2h0bWw+","embed":""}
Visit Case Clinic Uganda | Fluent in Healthcare · Since 1995
✚
CaseClinic ✚ CaseHospital ✚ CaseMedInsurance ✚ CaseMedServices ✚ CasePharmacy ✚ CaseDiagnostic ✚ CaseClinic ✚ CaseHospital ✚ CaseMedInsurance ✚ CaseMedServices ✚ CasePharmacy ✚ CaseDiagnostic ✚ CaseClinic ✚ CaseHospital ✚ CaseMedInsurance ✚ CaseMedServices ✚ CasePharmacy ✚ CaseDiagnostic ✚ CaseClinic ✚ CaseHospital ✚ CaseMedInsurance ✚ CaseMedServices ✚ CasePharmacy ✚ CaseDiagnostic ✚
✚ Emergency
Kampala · Entebbe · Naalya · Jinja · Health Insurance · 38,000 Members
📅 Book an Appointment
Kampala Entebbe Naalya Jinja Health News
✚ ISO Certified · ✚ 100 Beds · ✚ 50+ Specialists · ✚ Since 1995 · ✚ Emergency 24 Hrs
30 Years Transforming Lives · Uganda

Where Uganda
Comes to Heal.

Fluent in Healthcare.
◆

From the first private dialysis centre in Uganda to pioneering bariatric and laparoscopic surgery Case Clinic has been Uganda's most trusted name in world-class private healthcare for thirty years and counting.

✚ Schedule a Visit 🛡️ Explore Health Insurance From Case to Community →
30+ Years of Excellence
5 Locations · 5th Coming Soon
24/7 Emergency Care
38K+ HMO Members
Comprehensive Care Providers

Medical Services We Offer

🫁
Haemodialysis

Uganda's first private dialysis centre. Advanced renal care for chronic and acute kidney conditions available across our network.

❤️
Cardiology

Specialist cardiac care from renowned cardiologists and surgeons. Diagnosis, treatment, and ongoing management of heart conditions.

🔬
General Surgery

Pioneers of minimally invasive keyhole surgery in Uganda. General, bariatric, and laparoscopic procedures with world-class expertise.

🌸
Maternal Health & Gynaecology

Comprehensive care from antenatal through postnatal. Safe, supported maternity services for mother and child at every Case location.

🧸
Paediatrics

Dedicated child health specialists providing expert care for infants, children, and adolescents across our Case Clinic network.

🩺
Emergency & Critical Care

24-hour emergency services 365 days a year. Toll free: 0800 211 005. Equipped and ready at any hour for any emergency.

🧪
Laboratory & Diagnostics

Advanced laboratory services, imaging, ultrasound, X-ray, and pathology. Fast, accurate results to support your specialist care.

👁️
Eye Clinic · ENT · Dermatology

Specialist clinics for eyes, ears, nose and throat, and skin conditions. Expert consultants across all Case hospital locations.

🦷
Dental Services

Comprehensive dental care for the whole family. Routine check-ups, restorative dentistry, and specialist dental treatments.

🔭
Endoscopy & Gastroenterology

Specialist digestive health services including upper and lower GI endoscopy, colonoscopy, and gastroenterology consultations.

💉
Vaccination & Pharmacy

Full vaccination services for children and adults. In-house pharmacy with a comprehensive range of medications for all patients.

🩼
Orthopaedics

Expert bone, joint, and musculoskeletal care alongside specialist endocrinology for diabetes, thyroid, and hormonal conditions.

Patient Voices

What Our Patients Say

✈️ International Patient · USA

"I have travelled to every corner of this world as a commercial pilot. When I fell ill during my second visit to Uganda, Case Clinic took care of everything — emergency treatment, home visits, and a full medical work-up. Weeks of care, handled with professionalism and warmth I honestly did not expect. I have experienced healthcare on five continents. Case Clinic stands with the best."

★★★★★
Captain David Clark (Ret.) Commercial Pilot · USA Resident · Visiting Uganda
★★★★★

"Excellent medical care and attention. Came in for a family member who had an accident and severe head trauma and fractured skull. The in-house neurosurgeon Dr. Hussein and his team did a fantastic job."

Ahmed Satti
★★★★★

"I was there for six days, three in ICU, but the care and attention was commendable. Special appreciation to the whole ICU team: Ashraf, Karim, Nicholas, Vivian, and the rest. I am truly grateful."

David Nnyondo
★★★★★

"I am speaking from Bangladesh. I was admitted to Case Hospital in January 2022 during a UN mission in Central Africa. I still remember the doctors and nurses. I miss them. I was very satisfied with their love and care."

Mehedi Hasan · Bangladesh
★★★★★

"With a damaged intestine and multiple fractures, Nkwanzi faced one of the toughest battles of his life. Through the dedicated care of the Case Hospital team, he fought back from the brink of death to a full recovery."

Nkwanzi Wilson · Kampala
★★★★★

"30 years of trusted healthcare. Case Clinic has always been our family's first choice. The doctors are thorough, the staff are warm, and the facility is always clean and professional."

Case Clinic Patient · Uganda
★★★★★

"Excellent medical care and attention. Came in for a family member who had an accident and severe head trauma and fractured skull. The in-house neurosurgeon Dr. Hussein and his team did a fantastic job."

Ahmed Satti
★★★★★

"I was there for six days, three in ICU, but the care and attention was commendable. Special appreciation to the whole ICU team: Ashraf, Karim, Nicholas, Vivian, and the rest. I am truly grateful."

David Nnyondo
★★★★★

"I am speaking from Bangladesh. I was admitted to Case Hospital in January 2022 during a UN mission in Central Africa. I still remember the doctors and nurses. I miss them. I was very satisfied with their love and care."

Mehedi Hasan · Bangladesh
★★★★★

"With a damaged intestine and multiple fractures, Nkwanzi faced one of the toughest battles of his life. Through the dedicated care of the Case Hospital team, he fought back from the brink of death to a full recovery."

Nkwanzi Wilson · Kampala
★★★★★

"30 years of trusted healthcare. Case Clinic has always been our family's first choice. The doctors are thorough, the staff are warm, and the facility is always clean and professional."

Case Clinic Patient · Uganda
Pioneering Excellence

Uganda's Medical Firsts

Oct 2000 First private haemodialysis treatment in Uganda giving Ugandan patients life-saving renal care at home for the first time.
2004 First laparoscopic cholecystectomy at Mulago Hospital pioneering keyhole surgery in Uganda's leading national referral centre.
Pioneer Pioneer of bariatric surgery in Uganda providing surgical solutions as Uganda faces rising obesity-related illness across the country.
30 Years Senior Lecturer, Department of Surgery, Makerere University shaping Uganda's next generation of surgeons while continuing to practise.
Four Locations · Uganda

Case Clinic Hospital Locations

Case Hospital Kampala
Main Hospital · 24/7 Emergency
📍 Plot 69-71 Buganda Road, Kampala
📞 Toll Free: 0800 211 005
📞 +256 701 250 362
✉️ hospital@casemedservices.org
📅 Schedule a Visit
Case Hospital Entebbe
Satellite Location
📍 Plot 73-75 Kitooro Road, Entebbe
📞 0392 004 315
📞 0707 250 362
✉️ entebbe@casemedservices.org
📅 Schedule a Visit
Case Hospital Naalya
Satellite Location
📍 Plot 826, Naalya Lane, Kampala
📞 0783 783 333
📞 0741 541 700
✉️ naalya@casemedservices.org
📅 Schedule a Visit
Case Hospital Jinja
Satellite Location
📍 Plot 35 Clive West/Nalufenya Road, Jinja
📞 0740 513 555
📞 0764 209 890
✉️ jinja@casemedservices.org
📅 Schedule a Visit
🔔 Opening Soon
Case Clinic Bweyogerere
5th Location · Coming Soon
📍 Bweyogerere, Kampala
✚ Premium trusted healthcare coming to your neighbourhood. Follow us to be first to know.
🔔 Follow for Updates
Case MedCare
Health Insurance
Built for Uganda.

Case MedCare Insurance Services provides comprehensive health coverage for individuals, families, and corporates across Uganda. As part of the Case Medical Services family, your insurance is backed by 30 years of trusted healthcare expertise.

Individual and family health plans
Corporate and group health packages
Coverage across all four Case locations
Linked loyalty and coupon card programme
Executive health screening packages
Enquire About Coverage →
38,000+ Active HMO Members

Ugandans and East Africans who have chosen Case MedCare for their health insurance coverage and trusted the Case name to protect their families.

◆ Our Founder
Dr. A.K. Sebbaale
Founder & Medical Director · Case Medical Services Uganda

In 1995, Dr. Sebbaale founded Case Clinic with a singular conviction that Uganda deserved world-class private healthcare. Not as a distant aspiration, but as a present reality. Thirty years later, that conviction is a four-location medical network that has pioneered procedures never before performed in Uganda and shaped the careers of a generation of Ugandan surgeons.

Fellow · Association of Surgeons of East Africa (ASEA) Fellow · College of Surgeons of East, Central & Southern Africa (FCS-ECSA) Fellow · International College of Surgeons (FICS) Senior Lecturer · Department of Surgery · Makerere University Five published research papers · International fellowship holder
View Founder Digital Card →

What you have built is extraordinary. You started Case Clinic with a surgical mind and the kind of stubborn belief in Uganda's capacity to have world-class private healthcare that most people would have dismissed as arrogance. They were wrong. You were right.

Nassaka Takia (RN Rtd. 2015)
2000First private dialysis in Uganda
2004First laparoscopic surgery at Mulago
PioneerBariatric surgery in Uganda
Health Education · News · Wellness
From Case
to Community.

Uganda's go-to health and wellness media hub. Expert medical content, patient stories, health tips, staff features all powered by Case Medical Centre and built for informed communities.

Visit Case Clinic News →
✚ Emergency · 24 Hours
Toll Free: 0800 211 005
Open 365 Days · All Locations
General Inquiries
+256 701 250 362
Monday Sunday
WhatsApp · Book Now
+256 764 209 889
Fastest Response
CaseClinic Uganda
Fluent in Healthcare · Since 1995
Health News Founder Facebook Instagram Twitter LinkedIn YouTube Email Us
© 2026 Case Clinic Uganda · All Rights Reserved
Plot 69-71 Buganda Road, Kampala, Uganda, East Africa
Image Gallery Grid
T
Please Check Your Email
We Will Be Following Up Shortly
*
*
*

warning