MS4gSU5UUk9EVVpJT05FCgpXaW5lIOggdW4gcHJvZ3JhbW1hIGNoZSBwZXJtZXR0ZSBkaSBlc2VndWlyZSBwcm9ncmFtbWkgc3ZpbHVwcGF0aSBwZXIgTWljcm9zb2Z0CldpbmRvd3MgKGNvbXByZXNpIGVzZWd1aWJpbGkgRE9TLCBXaW5kb3dzIDMueCBlIFdpbjMyKSBzdSBVbml4LiBFJyBjb3N0aXR1aXRvCmRhIHVuIGNhcmljYXRvcmUgZGkgcHJvZ3JhbW1hIGNoZSBjYXJpY2EgZWQgZXNlZ3VlIGNvZGljZSBiaW5hcmlvIE1pY3Jvc29mdApXaW5kb3dzLCBlZCB1bmEgbGlicmVyaWEgKGNoaWFtYXRhIFdpbmVsaWIpIGNoZSBpbXBsZW1lbnRhIGxlIGNoaWFtYXRlIGFsbGUgQVBJCldpbmRvd3MgdXNhbmRvIGlsIGxvcm8gZXF1aXZhbGVudGUgVW5peCBlIFgxMS4gTGEgbGlicmVyaWEgcHXyIGVzc2VyZSB1c2F0YQphbmNoZSBwZXIgcG9ydGFyZSBjb2RpY2UgV2luMzIgaW4gZXNlZ3VpYmlsaSBVbml4IG5hdGl2aS4KV2luZSDoIHVuIGZyZWUgc29mdHdhcmUsIHJpbGFzY2lhdG8gc290dG8gR05VIExHUEw7IGxlZ2dpIGlsIGZpbGUgTElDRU5TRSBwZXIgaQpkZXR0YWdsaS4KCjIuIFFVSUNLIFNUQVJUCgpPZ25pIHZvbHRhIGNoZSBzaSBjb21waWxhIGRhbCBzb3JnZW50ZSwg6CByYWNjb21hbmRhYmlsZSB1c2FyZSBpbCBXaW5lIGluc3RhbGxlcgpwZXIgY29tcGlsYXJlIGUgaW5zdGFsbGFyZSBXaW5lLiBEYWxsYSBkaXJlY3RvcnkgZGkgcHJpbmNpcGFsZSBkZWwKc29yZ2VudGUgV2luZSwgZXNlZ3VpOgoKLi90b29scy93aW5laW5zdGFsbAoKRXNlZ3VpIGkgcHJvZ3JhbW1pIGNvbiAid2luZSBbb3B6aW9uaV0gcHJvZ3JhbW1hIi4gUGVyIGFsdHJlIGluZm9ybWF6aW9uaSBlCnJpc29sdXppb25lIGRpIHByb2JsZW1pLCBsZWdnaSBpbCByZXN0byBkaSBxdWVzdG8gZmlsZSwgbGEgcGFnaW5hIFdpbmUgbWFuLCBpCmZpbGUgbmVsbGEgZGlyZWN0b3J5IGRvY3VtZW50YXppb25lIGRlbCBzb3JnZW50ZSBXaW5lIChsZWdnaSAiRE9DVU1FTlRBWklPTkUiKSwKZWQgaW4gbW9kbyBwYXJ0aWNvbGFyZSBsYSBub3Rldm9sZSBxdWFudGl04CBkaSBpbmZvcm1hemlvbmkgY2hlIHB1b2kgdHJvdmFyZSBhCmh0dHA6Ly93d3cud2luZWhxLm9yZy4KCjMuIFJFUVVJU0lUSSBNSU5JTUkgREkgU0lTVEVNQQoKUGVyIGNvbXBpbGFyZSBlZCBlc2VndWlyZSBXaW5lLCBkZXZpIGF2ZXJlIHVubyBkZWkgc2VndWVudGk6CgoJTGludXggdmVyc2lvbmUgMi4wLjM2IG8gc3VwZXJpb3JlCglGcmVlQlNEIDQueCBvIEZyZWVCU0QgNS1DT1JSRU5URSBvIHN1cGVyaW9yZQoJU29sYXJpcyB4ODYgMi41IG8gc3VwZXJpb3JlCglOZXRCU0QtQ09SUkVOVEUKCnBvaWNo6SBXaW5lIHJpY2hpZWRlIGlsIHN1cHBvcnRvIGFsIEtlcm5lbC1sZXZlbCB0aHJlYWQgcGVyIGVzc2VyZSBlc2VndWl0bywKc29sbyBpIHNpc3RlbWkgb3BlcmF0aXZpIHNvcHJhIG1lbnppb25hdGkgc29ubyBzdXBwb3J0YXRpLgpBbHRyaSBzaXN0ZW1pIG9wZXJhdGl2aSBjaGUgc3VwcG9ydGFubyBpIGtlcm5lbCB0aHJlYWRzIHBvdHJhbm5vIGVzc2VyZQpzdXBwb3J0YXRpIGluIGZ1dHVyby4KCkluZm9ybWF6aW9uaSBMaW51eDoKCk1lbnRyZSBMaW51eCAyLjIueCBkb3ZyZWJiZSBmdW56aW9uYXJlLCBMaW51eCAyLjAueCBwb3RyZWJiZSBmdW56aW9uYXJlCih2ZXJzaW9uaSBwafkgdmVjY2hpZSBkZWxsYSAyLjAueCBhdmV2YW5vIGNyYXNoIGNvbGxlZ2F0aSBhaSB0aHJlYWQpLCDoCmNvbnNpZ2xpYWJpbGUgcXVpbmRpIGF2ZXJlIHVuYSB2ZXJzaW9uZSBjb3JyZW50ZSBkZWwgS2VybmVsIGNvbWUgbGEgMi40LnguCgpJbmZvcm1hemlvbmkgRnJlZUJTRDoKCkFzc2ljdXJhdGkgY2hlIGxlIG9wemlvbmkgVVNFUl9MRFQsIFNZU1ZTSE0sIFNZU1ZTRU0sIGUgU1lTVk1TRyBzaWFubyBhYmlsaXRhdGUgbmVsCktlcm5lbC4gQWx0cmUgaW5mb3JtYXppb25pIHNpIHRyb3Zhbm8gbmVsIHBvcnRzIHRyZWU6CmZ0cDovL2Z0cC5mcmVlYnNkLm9yZy9wdWIvRnJlZUJTRC9wb3J0cy9wb3J0cy9lbXVsYXRvcnMvd2luZS8KCkluZm9ybWF6aW9uaSBTb2xhcmlzOgoKU2Fy4CBuZWNlc3NhcmlvIGNvbXBpbGFyZSBXaW5lIGNvbiBsJ2luc2llbWUgZGkgdG9vbCBHTlUgKGdjYywgZ2FzLCBldGMuKS4KQXR0ZW56aW9uZSA6IGluc3RhbGxhcmUgZ2FzICpub24qIHNpZ25pZmljYSBjaGUgcXVlc3RvIHNhcuAgdXNhdG8gZGEgZ2NjLgpFJyBuZWNlc3NhcmlvIHJpY29tcGlsYXJlIGdjYyBkb3BvIGF2ZXIgaW5zdGFsbGF0byBnYXMgbyBzeW1ibGlua2luZyBjYywgY29z7Apjb21lIGxvIOggcGVyIGxkIGRlbGxlIGdudSB0b29scy4KCkluZm9ybWF6aW9uaSBOZXRCU0Q6CgpBc3NpY3VyYXRpIGNoZSBsZSBvcHppb25pIFVTRVJfTERULCBTWVNWU0hNLCBTWVNWU0VNLCBlIFNZU1ZNU0cgc2lhbm8gYWJpbGl0YXRlIG5lbApLZXJuZWwuCgpGaWxlIFN5c3RlbSBzdXBwb3J0YXRpOgpXaW5lIGRvdnJlYmJlIHBvdGVyIGVzc2VyZSBlc2VndWl0byBzdWxsYSBtYWdnaW9yYW56YSBkZWkgZmlsZSBzeXN0ZW0uIFR1dHRhdmlhLApXaW5lIHBvdHJlYmJlIG5vbiBwYXJ0aXJlIHNlIHVtc2RvcyDoIHVzYXRvIHBlciBsYSBkaXJlY3RvcnkgL3RtcC4gQWxjdW5pCnByb2JsZW1pIGRpIGNvbXBhdGliaWxpdOAgc29ubyBzdGF0aSByaXBvcnRhdGkgdXNhbmRvIGwnYWNjZXNzbyBhaSBmaWxlCmF0dHJhdmVyc28gU2FtYmEuIElub2x0cmUsIHBvaWNo6SBOVEZTIHB18iBlc3NlcmUgdXNhdG8gaW4gbWFuaWVyYSBzaWN1cmEgc29sbwpjb24gYWNjZXNzbyBkaSBzb2xhIGxldHR1cmEgcGVyIG9yYSwgc2NvbnNpZ2xpYW1vIGwndXRpbGl6em8gZGVsIE5URlMsIHBvaWNo6SBpCnByb2dyYW1taSBXaW5kb3dzIGhhbm5vIGJpc29nbm8gZGkgYXZlcmUgYWNjZXNzbyBpbiBzY3JpdHR1cmEgb3Z1bnF1ZS4KTmVsIGNhc28gIGRpIGZpbGUgTlRGUywgcXVlc3RpIHZhbm5vIGNvcGlhdGkgaW4gdW5hIGxvY2F6aW9uZSBuZWxsYSBxdWFsZSBzaSBoYQphY2Nlc3NvIGluIHNjcml0dHVyYS4KClJlcXVpc2l0aSBiYXNlOgoKRGV2ZSBlc3NlcmUgaW5zdGFsbGF0byBhbmNoZSBsJ1gxMSBkZXZlbG9wbWVudCBpbmNsdXNpIGkgZmlsZSAoY2hpYW1hdG8KeGxpYjZnLWRldiBpbiBEZWJpYW4gZSBYZnJlZTg2LWRldmVsIGluIFJlZEhhdCkuCgpUb29sIGRpIGNvbXBpbGF6aW9uZSBuZWNlc3Nhcmk6CgpTdSBzaXN0ZW1pIHg4NiDoIHJpY2hpZXN0YSB1bmEgdmVyc2lvbmUgZ2NjID49IGEgMi43LjIuClZlcnNpb25pIHBp+SB2ZWNjaGllIHBvdHJlYmJlcm8gYXZlcmUgZGVpIHByb2JsZW1pIHF1YW5kbyBhbGN1bmkgZmlsZSB2ZW5nb25vCmNvbXBpbGF0aSBjb24gbCdvdHRpbWl6emF6aW9uZSwgYSBjYXVzYSBkaSBwcm9ibGVtaSBjb24gbGEgZ2VzdGlvbmUgZGVnbGkgaGVhZGVyCmRlaSBmaWxlLiBQZ2NjIGFsIG1vbWVudG8gbm9uIGZ1bnppb25hIGNvbiBXaW5lLiBMYSBjYXVzYSBkaSBxdWVzdG8gcHJvYmxlbWEK6CBzY29ub3NjaXV0YS4KCkNoaWFyYW1lbnRlIOggbmVjZXNzYXJpbyBhbmNoZSAibWFrZSIgKHBp+SBwcmVjaXNhbWVudGUgR05VIG1ha2UpLgoKRScgbmVjZXNzYXJpbyBhbmNoZSBmbGV4IHZlcnNpb25lIDIuNSBvIHN1Y2Nlc3NpdmEgZSBiaXNvbi4KU2Ugc3RhaSB1c2FuZG8gdW5hIFJlZEhhdCBvIERlYmlhbiwgaW5zdGFsbGEgaSBwYWNjaGV0dGkgRmxleCBlIEJpc29uLgoKTGlicmVyaWUgcGVyIHN1cHBvcnRpIG9wemlvbmFsaToKClNlIHZ1b2kgaWwgc3VwcG9ydG8gYWxsYSBzdGFtcGEgQ1VQUywgaW5zdGFsbGEgaSBwYWNjaGV0dGkgc2lhIGN1cHMgY2hlCmN1cHMtZGV2ZWwuCgpOZWwgY2FzbyBpbiBjdWkgdm9sZXNzaSBjb21waWxhcmUgbGEgZG9jdW1lbnRhemlvbmUgZGEgc29sbywgbGVnZ2kgbGEgc2V6aW9uZQoiRE9DVU1FTlRBWklPTkUiLgoKNC4gQ09NUElMQVpJT05FCgpOZWwgY2FzbyBpbiBjdWkgc2kgc2NlZ2xpZXNzZSBkaSBub24gdXRpbGl6emFyZSBXaW5laW5zdGFsbCwgZXNlZ3VpIGkgc2VndWVudGkKY29tYW5kaSBwZXIgY29tcGlsYXJlIFdpbmU6CgouL2NvbmZpZ3VyZQptYWtlIGRlcGVuZAptYWtlCgpRdWVzdG8gY29tcGlsZXLgIGlsIHByb2dyYW1tYSAid2luZSIgZSBudW1lcm9zZSBsaWJyZXJpZSBlIGJpbmFyaSBkaSBzdXBwb3J0by4KSWwgcHJvZ3JtbWEgIndpbmUiIGNhcmljYSBlZCBlc2VndWUgZ2xpIGVzZWd1aWJpbGkgV2luZG93cy4KTGEgbGlicmVyaWEgImxpYndpbmUiICgiV2luZWxpYiIpIHB18iBlc3NlcmUgdXNhdGEgcGVyIGNvbXBpbGFyZSBlIGxpbmthcmUgaWwKY29kaWNlIHNvcmdlbnRlIFdpbmRvd3Mgc290dG8gVW5peC4KClBlciB2ZWRlcmUgbGUgb3B6aW9uaSBkZWxsYSBjb25maWd1cmF6aW9uZSBkZWxsYSBjb21waWxhemlvbmUsIGVzZWd1aQouL2NvbmZpZ3VyZSAtaGVscC4KClBlciBmYXJlIGwnYWdnaW9ybmFtZW50byBhZCB1bmEgbnVvdmEgdmVyc2lvbmUgdXRpbGl6emFuZG8gdW5hIHBhdGNoLCBwcmltYSBlbnRyYQpuZWxsYSBkaXJlY3RvcnkgcHJpbmNpcGFsZSBkZWkgc29yZ2VudGkgKHF1ZWxsYSBjaGUgY29udGllbmUgcXVlc3RvCmZpbGUgUkVBRE1FKS4gUXVpbmRpIGVzZWd1aSAibWFrZSBkaXN0Y2xlYW4iLCBlZCBhcHBsaWNhIGxhIHBhdGNoIGFsbGEgcmVsZWFzZSBjb246CgoJR3VuemlwIC1jIHBhdGNoLWZpbGUgfCBwYXRjaCAtcDEKCmRvdmUgInBhdGNoLWZpbGUiIOggaWwgbm9tZSBkZWxsYSBwYXRjaCAocXVhbGNvc2EgY29tZSBXaW5lLWFhbW1nZy5kaWZmLmd6KS4KUHVvaSBxdWluZGkgcmllc2VndWlyZSAiLi9jb25maWd1cmUiLCBlIHF1aW5kaSBlc2VndWlyZSAibWFrZSBkZXBlbmQgJiYgbWFrZSIuCgo1LiBTRVRVUAoKVW5hIHZvbHRhIGNoZSBXaW5lIOggc3RhdG8gY29tcGlsYXRvIGNvcnJldHRhbWVudGUsIHB1b2kgZXNlZ3VpcmUKIm1ha2UgaW5zdGFsbCI7IHF1ZXN0byBpbnN0YWxsZXLgIGdsaSBlc2VndWliaWxpIHdpbmUsIGxhIHBhZ2luYSBXaW5lIG1hbiwgZQpwb2NoaSBhbHRyaSBmaWxlIG5lY2Vzc2FyaS4KCk5vbiBkaW1lbnRpY2FydGkgZGkgZGlzaW5zdGFsbGFyZSBxdWFsc2lhc2kgcHJlY2VkZW50ZSBpbnN0YWxsYXppb25lIGRpIFdpbmUgaW4KY29uZmxpdHRvLiBQcm92YSBzaWEgImRwa2cgLXIgd2luZSIgbyAicnBtIC1lIHdpbmUiIG8gIm1ha2UgdW5pbnN0YWxsIiBwcmltYSBkaQppbnN0YWxsYXJlLgoKU2UgdnVvaSBsZWdnZXJlIGxhIGRvY3VtZW50YXppb25lIGZvcm5pdGEgY29uIGlsIHNvcmdlbnRlIFdpbmUsIGNvbnRyb2xsYSBsYQpzZXppb25lICJET0NVTUVOVEFaSU9ORSIuCgpXaW5lIGhhIGJpc29nbm8gZGkgdW4gZmlsZSBkaSBjb25maWd1cmF6aW9uZSBjaGlhbWF0byAiY29uZmlnIiBuZWxsYSB0dWEKZGlyZWN0b3J5IH4vLndpbmUuIElsIGZvcm1hdG8gZGkgcXVlc3RvIGZpbGUg6CBzcGllZ2F0byBuZWxsYSBwYWdpbmEgY29uZmlnIGZpbGUKbWFuIChkb2N1bWVudGF0aW9uL3dpbmUuY29uZi5tYW4pLgpJbCBmaWxlIGRvY3VtZW50YXRpb24vc2FtcGxlcy9jb25maWcgY29udGllbmUgdW4gZXNlbXBpbyBkaSBmaWxlIGRpCmNvbmZpZ3VyYXppb25lIGNoZSBkZXZlIGVzc2VyZSBhZGF0dGF0byBlIGNvcGlhdG8gbmVsbGEgbG9jYXppb25lIG1lbnppb25hdGEgaW4KcHJlY2VkZW56YS4KCkNvbnRyb2xsYSBsJ2FyZWEgU3VwcG9ydCBzdSBodHRwOi8vd3d3LndpbmVocS5vcmcvIHBlciBhbHRyaSBzdWdnZXJpbWVudGkgc3VsbGEKY29uZmlndXJhemlvbmUuCgpOZWwgY2FzbyBkaSBlcnJvcmkgZGkgY2FyaWNhbWVudG8gZGVsbGUgbGlicmVyaWUKKGUuZy4gIkVycm9yIHdoaWxlIGxvYWRpbmcgc2hhcmVkIGxpYnJhcmllczogbGlibnRkbGwuc28iKSwgYWNjZXJ0YXRpIGRpCmFnZ2l1bmdlcmUgaWwgcGVyY29yc28gZGVsbGEgZGlyZWN0b3J5IGEgL2V0Yy9sZC5zby5jb25mIGVkIGVzZWd1aSBsZGNvbmZpZyBjb21lCnJvb3QuCgo2LiBFU0VHVUlSRSBJIFBST0dSQU1NSQoKUXVhbmRvIHNpIGVzZWd1ZSBXaW5lLCBzaSBwdfIgc3BlY2lmaWNhcmUgbCdpbnRlcm8gcGVyY29yc28gZGVsbCdlc2VndWliaWxlIG8Kc29sbyBpbCBub21lIGRlbCBmaWxlLgoKUGVyIGVzZW1waW86IHBlciBlc2VndWlyZSBTb2xpdGFyaW86CgoJd2luZSBzb2wJKFV0aWxpenphbmRvIGlsIHBlcmNvcnNvIGRpIHJpY2VyY2EgY29tZSBzcGVjaWZpY2F0bwoJd2luZSBzb2wuZXhlICAgICAgbmVsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgcGVyIGxvY2FsaXp6YXJlIGlsIGZpbGUpCgoJd2luZSBjOlxcd2luZG93c1xcc29sLmV4ZSAodXRpbGl6emFuZG8gbGEgc2ludGFzc2kgRE9TKQoJd2luZSAvdXNyL3dpbmRvd3Mvc29sLmV4ZSAodXRpbGl6emFuZG8gbGEgc2ludGFzc2kgVW5peCkKCXdpbmUgc29sLmV4ZSAvcGFyYW1ldGVyMSAtcGFyYW1ldGVyMiBwYXJhbWV0ZXIzCgkJCQkgIChjaGlhbWEgaWwgcHJvZ3JhbW1hIGNvbiBkZWkgcGFyYW1ldHJpKQoKTm90YTogaWwgcGVyY29yc28gZGVsIGZpbGUgcHXyIGVzc2VyZSBhZ2dpdW50byBhbCBwZXJjb3JzbyBxdWFuZG8g6CBmb3JuaXRvIHVuCm5vbWUgaW50ZXJvIHN1bGxhIGNvbW1hbmRsaW5lLgoKV2luZSBub24g6CBhbmNvcmEgY29tcGxldG8sIHF1aW5kaSBtb2x0aSBwcm9ncmFtbWkgcG90cmViYmVybyBhbmRhcmUgaW4gY3Jhc2guIFNlCndpbmVkYmcg6CBzZXR0YXRvIGNvcnJldHRhbWVudGUgaW4gYWNjb3JkbyBjb24gbGEgZG9jdW1lbnRhemlvbmUgY29udGVudXRhIGluCmRvY3VtZW50YXRpb24vZGVidWdnZXIuc2dtbCwgc2FyYWkgbWFuZGF0byBhbGwnaW50ZXJubyBkaSB1biBkZWJ1Z2dlciBjb3PsCnBvdHJhaSBzdHVkaWFyZSBlIHJpc29sdmVyZSBpbCBwcm9ibGVtYS4KUGVyIG1hZ2dpb3JpIGluZm9ybWF6aW9uaSBzdSBjb21lIGZhcmUgY2nyLCBwZXIgZmF2b3JlIGxlZ2dpIGlsIGZpbGUKZG9jdW1lbnRhdGlvbi9kZWJ1Z2dpbmcuc2dtbC4KCkRvdnJlc3RpIGZhcmUgdW4gYmFja3VwIGRpIHR1dHRpIGkgdHVvaSBmaWxlIGltcG9ydGFudGkgYWkgcXVhbGkgY29uY2VkaQpsJ2FjY2Vzc28gZGEgcGFydGUgZGkgV2luZSwgb3BwdXJlIGNyZWFuZSB1bmEgc3BlY2lhbGUgY29waWEgV2luZSwgcG9pY2jpIHNpCnNvbm8gdmVyaWZpY2F0aSBkZWkgY2FzaSBkaSB1dGVudGkgY2hlIGhhbm5vIHJpcG9ydGF0byBsYSBjb3JydXppb25lIGRpIGZpbGUuCk5PTiBlc2VndWlyZSBFeHBsb3JlciwgYWQgZXNlbXBpbywgc2Ugbm9uIGhhaSB1biBiYWNrdXAgYXBwcm9wcmlhdG8sIHBlcmNo6SBhCnZvbHRlIHJpbm9taW5hL3N0b3JwaWEgZGl2ZXJzZSBkaXJlY3RvcnkuIEFuY2hlIGFsdHJlIGFwcGxpY2F6aW9uaSBNUyBub24gc29ubwpzaWN1cmUgY29tZSBhZCBlc2VtcGlvIE1lc3NlbmdlciwgdmlzdG8gY2hlIGxhbmNpYW5vIEV4cGxvcmVyIGluIHVuIG1vZG8gbwpuZWxsJ2FsdHJvLiBRdWVzdGUgcGFydGljb2xhcmkgY29ycnV6aW9uaSAoISQhJCEkISQucGZyKSBwb3Nzb25vIGVzc2VyZQpwYXJ6aWFsbWVudGUgY29ycmV0dGUgdXRpbGl6emFuZG8KaHR0cDovL2hvbWUubmV4Z28uZGUvYW5kaS5tb2hyL2Rvd25sb2FkL2RlY29ycnVwdF9leHBsb3JlcgoKNy4gRE9DVU1FTlRBWklPTkUKClB1b2kgdHJvdmFyZSBkZWxsYSBkb2N1bWVudGF6aW9uZSAoZGl2ZXJzZSBndWlkZSBwZXIgV2luZSBldGMuKSBuZWxsYSBkaXJlY3RvcnkKZG9jdW1lbnRhdGlvbi8gKGEgcGFydGUgcXVlbGxlIGRpc3BvbmliaWxpIHN1IFdpbmVIUSkuCgpTZSB2dW9pIHByb2Nlc3NhcmUgaSBmaWxlIFNHTUwsIHB1b2kgZXNlZ3VpcmUgIm1ha2UgZG9jIiBuZWxsYSBkaXJlY3RvcnkKZG9jdW1lbnRhdGlvbi8uClBlciBmYXJlIGNp8iDoIHJpY2hpZXN0byBpbCBwYWNjaGV0dG8gZGkgdG9vbCBzZ21sIChwZXIgZGIyaHRtbCwgZGIycHMsIGRiMnBkZikKY2hpYW1hdGk6CgpEZWJpYW46CQlkb2Nib29rLXV0aWxzCk1hbmRyYWtlOglzZ21sLXRvb2xzLUEuQi5DLUREbWRrClN1U0U6CQlkb2Nia3Rscy1BLkJCLkMtREQKCjguIFBFUiBPVFRFTkVSRSBQSVUnIElORk9STUFaSU9OSQoKV1dXOiAJVW4gZ3JhbiBxdWFudGl0YXRpdm8gZGkgaW5mb3JtYXppb25pIG1lc3NlIGEgZGlzcG9zaXppb25lIGRhIFdpbmVIUSBzdSBXaW5lCgnoIGRpc3BvbmliaWxlIGFsbCdpbmRpcml6em8gaHR0cDovL3d3dy53aW5laHEub3JnLzogdmFyaWUgZ3VpZGUgc3UgV2luZSwKCWRhdGFiYXNlLCBpZGVudGlmaWNhemlvbmUgZGkgYnVnLiBRdWVzdG8g6CBwcm9iYWJpbG1lbnRlIGlsIG1pZ2xpb3IgcHVudG8gZGkKCXBhcnRlbnphLgoKRkFROiAJTGUgRkFRIGRpIFdpbmUgc2kgdHJvdmFubyBhbGwnaW5kaXJpenpvIGh0dHA6Ly93d3cud2luZWhxLm9yZy9GQVEKClVzZW5ldDogUHVvaSBkaXNjdXRlcmUgZGkgYXJnb21lbnRpIGNvbGxlZ2F0aSBhIFdpbmUgZWQgb3R0ZW5lcmUgYWl1dG8gc3UKCWNvbXAuZW11bGF0b3JzLm1zLXdpbmRvd3Mud2luZS4KCkJ1Z3M6CSBTZWduYWxhIGkgQnVnIHN1IFdpbmUgQnVnemlsbGEgYWxsJ2luZGlyaXp6byBodHRwOi8vYnVncy53aW5laHEub3JnCglwZXIgZmF2b3JlIGNlcmNhIG5lbCBkYXRhYmFzZSBkaSBidWd6aWxsYSBwZXIgdmVyaWZpY2FyZSBjaGUgaWwgdHVvIHByb2JsZW1hCglub24gc2lhIGdp4CBzdGF0byB0cm92YXRvIHByaW1hIGRpIHBvc3RhcmUgdW4gcmFwcG9ydG8gc3UgdW4gYnVnLgoJUHVvaSBhbmNoZSBtYW5kYXJlIGxlIHNlZ25hbGF6aW9uaSBzdWkgYnVnIGEgY29tcC5lbXVsYXRvcnMubXMtd2luZG93cy53aW5lLgoJUGVyIGZhdm9yZSBsZWdnaSBpbCBmaWxlIGRvY3VtZW50YXRpb24vYnVncy5zZ21sIHBlciB2ZXJpZmljYXJlIHF1YWxpCglpbmZvcm1hemlvbmkgc29ubyByaWNoaWVzdGUuCgpJUkM6CSBBaXV0byBvbmxpbmUg6CBkaXNwb25pYmlsZSBuZWwgY2FuYWxlICN3aW5laHEgc3UgaXJjLmZyZWVub2RlLm5ldC4KCkNWUzogCUwnYWxiZXJvIGRpIHN2aWx1cHBvIGNvcnJlbnRlIGRpIHdpbmUgZScgZGlzcG9uaWJpbGUgaW4gQ1ZTLiBWaXNpdGEKCWh0dHA6Ly93d3cud2luZWhxLm9yZy9jdnMgcGVyIHVsdGVyaW9yaSBpbmZvcm1hemlvbmkuCgpNYWlsaW5nIGxpc3Q6CglFc2lzdG9ubyBkaXZlcnNlIG1haWxpbmcgbGlzdCBwZXIgZ2xpIHN2aWx1cHBhdG9yaSBkaSBXaW5lOyB2aXNpdGEKCWh0dHA6Ly93d3cud2luZWhxLm9yZy9mb3J1bXMgcGVyIHVsdGVyaW9yaSBpbmZvcm1hemlvbmkuCgpTZSBhZ2dpdW5naSBxdWFsY29zYSwgbyBjb3JyZWdnaSB1biBidWcsIHBlciBmYXZvcmUgbWFuZGEgdW5hIHBhdGNoIChuZWwgZm9ybWF0bwonZGlmZiAtdScpIGEgd2luZS1wYXRjaGVzQHdpbmVocS5vcmcgcGVyIGVzc2VyZSBmYXJsbyBpbmNsdWRlcmUgbmVsbGEgcHJvc3NpbWEgcmVsZWFzZS4KCi0tCkFsZXhhbmRyZSBKdWxsaWFyZApqdWxsaWFyZEB3aW5laHEub3JnCgp0cmFkb3R0byBkYToKRnJhbmNlc2NvIERpIFB1bnppbwpmcmFuY2VzY29fZGlwdW56aW9AdmlyZ2lsaW8uaXQKc2UgdHJvdmkgZXJyb3JpIG5lbGxhIHRyYWR1emlvbmUgcGVyIGZhdm9yZSBzZWduYWxhbGkgdHJhbWl0ZSBlLW1haWwuIEdyYXppZQpUcmFkdXppb25lIGFnZ2lvcm5hdGEgaWwgMTgvMDEvMjAwNCBkYSBJdmFuIExlbyBQdW90aQpQb3RldGUgY29udGF0YXJtaSBhbGwnaW5kaXJpenpvIHB1b3RpQGlud2luZC5pdAo=