MS4gSU5UUk9EVVpJT05FCgpXaW5lIOggdW4gcHJvZ3JhbW1hIGNoZSBwZXJtZXR0ZSBkaSBlc2VndWlyZSBwcm9ncmFtbWkgc3ZpbHVwcGF0aSBwZXIgTWljcm9zb2Z0CldpbmRvd3MgKGNvbXByZXNpIGVzZWd1aWJpbGkgRE9TLCBXaW5kb3dzIDMueCBlIFdpbjMyKSBzdSBVbml4LiBFJyBjb3N0aXR1aXRvCmRhIHVuIGNhcmljYXRvcmUgZGkgcHJvZ3JhbW1hIGNoZSBjYXJpY2EgZWQgZXNlZ3VlIGNvZGljZSBiaW5hcmlvIE1pY3Jvc29mdApXaW5kb3dzLCBlZCB1bmEgbGlicmVyaWEgKGNoaWFtYXRhIFdpbmVsaWIpIGNoZSBpbXBsZW1lbnRhIGxlIGNoaWFtYXRlIGFsbGUgQVBJCldpbmRvd3MgdXNhbmRvIGlsIGxvcm8gZXF1aXZhbGVudGUgVW5peCBlIFgxMS4gTGEgbGlicmVyaWEgcHXyIGVzc2VyZSB1c2F0YQphbmNoZSBwZXIgcG9ydGFyZSBjb2RpY2UgV2luMzIgaW4gZXNlZ3VpYmlsaSBVbml4IG5hdGl2aS4KV2luZSDoIHVuIGZyZWUgc29mdHdhcmUsIHJpbGFzY2lhdG8gc290dG8gR05VIExHUEw7IGxlZ2dpIGlsIGZpbGUgTElDRU5TRSBwZXIgaQpkZXR0YWdsaS4KCjIuIFFVSUNLIFNUQVJUCgpPZ25pIHZvbHRhIGNoZSBzaSBjb21waWxhIGRhbCBzb3JnZW50ZSwg6CByYWNjb21hbmRhYmlsZSB1c2FyZSBpbCBXaW5lIGluc3RhbGxlcgpwZXIgY29tcGlsYXJlIGUgaW5zdGFsbGFyZSBXaW5lLiBEYWxsYSBkaXJlY3RvcnkgZGkgcHJpbmNpcGFsZSBkZWwKc29yZ2VudGUgV2luZSwgZXNlZ3VpOgoKLi90b29scy93aW5laW5zdGFsbAoKRXNlZ3VpIGkgcHJvZ3JhbW1pIGNvbiAid2luZSBbb3B6aW9uaV0gcHJvZ3JhbW1hIi4gUGVyIGFsdHJlIGluZm9ybWF6aW9uaSBlCnJpc29sdXppb25lIGRpIHByb2JsZW1pLCBsZWdnaSBpbCByZXN0byBkaSBxdWVzdG8gZmlsZSwgbGEgcGFnaW5hIFdpbmUgbWFuLCAKZWQgaW4gbW9kbyBwYXJ0aWNvbGFyZSBsYSBub3Rldm9sZSBxdWFudGl04CBkaSBpbmZvcm1hemlvbmkgY2hlIHB1b2kgdHJvdmFyZSBhCmh0dHA6Ly93d3cud2luZWhxLm9yZy4KCjMuIFJFUVVJU0lUSSBNSU5JTUkgREkgU0lTVEVNQQoKUGVyIGNvbXBpbGFyZSBlZCBlc2VndWlyZSBXaW5lLCBkZXZpIGF2ZXJlIHVubyBkZWkgc2VndWVudGk6CgoJTGludXggdmVyc2lvbmUgMi4wLjM2IG8gc3VwZXJpb3JlCglGcmVlQlNEIDQueCBvIEZyZWVCU0QgNS1DT1JSRU5URSBvIHN1cGVyaW9yZQoJU29sYXJpcyB4ODYgMi41IG8gc3VwZXJpb3JlCglOZXRCU0QtQ09SUkVOVEUKCnBvaWNo6SBXaW5lIHJpY2hpZWRlIGlsIHN1cHBvcnRvIGFsIEtlcm5lbC1sZXZlbCB0aHJlYWQgcGVyIGVzc2VyZSBlc2VndWl0bywKc29sbyBpIHNpc3RlbWkgb3BlcmF0aXZpIHNvcHJhIG1lbnppb25hdGkgc29ubyBzdXBwb3J0YXRpLgpBbHRyaSBzaXN0ZW1pIG9wZXJhdGl2aSBjaGUgc3VwcG9ydGFubyBpIGtlcm5lbCB0aHJlYWRzIHBvdHJhbm5vIGVzc2VyZQpzdXBwb3J0YXRpIGluIGZ1dHVyby4KCkluZm9ybWF6aW9uaSBMaW51eDoKCk1lbnRyZSBMaW51eCAyLjIueCBkb3ZyZWJiZSBmdW56aW9uYXJlLCBMaW51eCAyLjAueCBwb3RyZWJiZSBmdW56aW9uYXJlCih2ZXJzaW9uaSBwafkgdmVjY2hpZSBkZWxsYSAyLjAueCBhdmV2YW5vIGNyYXNoIGNvbGxlZ2F0aSBhaSB0aHJlYWQpLCDoCmNvbnNpZ2xpYWJpbGUgcXVpbmRpIGF2ZXJlIHVuYSB2ZXJzaW9uZSBjb3JyZW50ZSBkZWwgS2VybmVsIGNvbWUgbGEgMi40LnguCgpJbmZvcm1hemlvbmkgRnJlZUJTRDoKCkFzc2ljdXJhdGkgY2hlIGxlIG9wemlvbmkgVVNFUl9MRFQsIFNZU1ZTSE0sIFNZU1ZTRU0sIGUgU1lTVk1TRyBzaWFubyBhYmlsaXRhdGUgbmVsCktlcm5lbC4gQWx0cmUgaW5mb3JtYXppb25pIHNpIHRyb3Zhbm8gbmVsIHBvcnRzIHRyZWU6CmZ0cDovL2Z0cC5mcmVlYnNkLm9yZy9wdWIvRnJlZUJTRC9wb3J0cy9wb3J0cy9lbXVsYXRvcnMvd2luZS8KCkluZm9ybWF6aW9uaSBTb2xhcmlzOgoKU2Fy4CBuZWNlc3NhcmlvIGNvbXBpbGFyZSBXaW5lIGNvbiBsJ2luc2llbWUgZGkgdG9vbCBHTlUgKGdjYywgZ2FzLCBldGMuKS4KQXR0ZW56aW9uZSA6IGluc3RhbGxhcmUgZ2FzICpub24qIHNpZ25pZmljYSBjaGUgcXVlc3RvIHNhcuAgdXNhdG8gZGEgZ2NjLgpFJyBuZWNlc3NhcmlvIHJpY29tcGlsYXJlIGdjYyBkb3BvIGF2ZXIgaW5zdGFsbGF0byBnYXMgbyBzeW1ibGlua2luZyBjYywgY29z7Apjb21lIGxvIOggcGVyIGxkIGRlbGxlIGdudSB0b29scy4KCkluZm9ybWF6aW9uaSBOZXRCU0Q6CgpBc3NpY3VyYXRpIGNoZSBsZSBvcHppb25pIFVTRVJfTERULCBTWVNWU0hNLCBTWVNWU0VNLCBlIFNZU1ZNU0cgc2lhbm8gYWJpbGl0YXRlIG5lbApLZXJuZWwuCgpGaWxlIFN5c3RlbSBzdXBwb3J0YXRpOgpXaW5lIGRvdnJlYmJlIHBvdGVyIGVzc2VyZSBlc2VndWl0byBzdWxsYSBtYWdnaW9yYW56YSBkZWkgZmlsZSBzeXN0ZW0uIFR1dHRhdmlhLApXaW5lIHBvdHJlYmJlIG5vbiBwYXJ0aXJlIHNlIHVtc2RvcyDoIHVzYXRvIHBlciBsYSBkaXJlY3RvcnkgL3RtcC4gQWxjdW5pCnByb2JsZW1pIGRpIGNvbXBhdGliaWxpdOAgc29ubyBzdGF0aSByaXBvcnRhdGkgdXNhbmRvIGwnYWNjZXNzbyBhaSBmaWxlCmF0dHJhdmVyc28gU2FtYmEuIElub2x0cmUsIHBvaWNo6SBOVEZTIHB18iBlc3NlcmUgdXNhdG8gaW4gbWFuaWVyYSBzaWN1cmEgc29sbwpjb24gYWNjZXNzbyBkaSBzb2xhIGxldHR1cmEgcGVyIG9yYSwgc2NvbnNpZ2xpYW1vIGwndXRpbGl6em8gZGVsIE5URlMsIHBvaWNo6SBpCnByb2dyYW1taSBXaW5kb3dzIGhhbm5vIGJpc29nbm8gZGkgYXZlcmUgYWNjZXNzbyBpbiBzY3JpdHR1cmEgb3Z1bnF1ZS4KTmVsIGNhc28gIGRpIGZpbGUgTlRGUywgcXVlc3RpIHZhbm5vIGNvcGlhdGkgaW4gdW5hIGxvY2F6aW9uZSBuZWxsYSBxdWFsZSBzaSBoYQphY2Nlc3NvIGluIHNjcml0dHVyYS4KClJlcXVpc2l0aSBiYXNlOgoKRGV2ZSBlc3NlcmUgaW5zdGFsbGF0byBhbmNoZSBsJ1gxMSBkZXZlbG9wbWVudCBpbmNsdXNpIGkgZmlsZSAoY2hpYW1hdG8KeGxpYjZnLWRldiBpbiBEZWJpYW4gZSBYZnJlZTg2LWRldmVsIGluIFJlZEhhdCkuCgpUb29sIGRpIGNvbXBpbGF6aW9uZSBuZWNlc3Nhcmk6CgpTdSBzaXN0ZW1pIHg4NiDoIHJpY2hpZXN0YSB1bmEgdmVyc2lvbmUgZ2NjID49IGEgMi43LjIuClZlcnNpb25pIHBp+SB2ZWNjaGllIHBvdHJlYmJlcm8gYXZlcmUgZGVpIHByb2JsZW1pIHF1YW5kbyBhbGN1bmkgZmlsZSB2ZW5nb25vCmNvbXBpbGF0aSBjb24gbCdvdHRpbWl6emF6aW9uZSwgYSBjYXVzYSBkaSBwcm9ibGVtaSBjb24gbGEgZ2VzdGlvbmUgZGVnbGkgaGVhZGVyCmRlaSBmaWxlLiBQZ2NjIGFsIG1vbWVudG8gbm9uIGZ1bnppb25hIGNvbiBXaW5lLiBMYSBjYXVzYSBkaSBxdWVzdG8gcHJvYmxlbWEK6CBzY29ub3NjaXV0YS4KCkNoaWFyYW1lbnRlIOggbmVjZXNzYXJpbyBhbmNoZSAibWFrZSIgKHBp+SBwcmVjaXNhbWVudGUgR05VIG1ha2UpLgoKRScgbmVjZXNzYXJpbyBhbmNoZSBmbGV4IHZlcnNpb25lIDIuNSBvIHN1Y2Nlc3NpdmEgZSBiaXNvbi4KU2Ugc3RhaSB1c2FuZG8gdW5hIFJlZEhhdCBvIERlYmlhbiwgaW5zdGFsbGEgaSBwYWNjaGV0dGkgRmxleCBlIEJpc29uLgoKTGlicmVyaWUgcGVyIHN1cHBvcnRpIG9wemlvbmFsaToKClNlIHZ1b2kgaWwgc3VwcG9ydG8gYWxsYSBzdGFtcGEgQ1VQUywgaW5zdGFsbGEgaSBwYWNjaGV0dGkgc2lhIGN1cHMgY2hlCmN1cHMtZGV2ZWwuCgo0LiBDT01QSUxBWklPTkUKCk5lbCBjYXNvIGluIGN1aSBzaSBzY2VnbGllc3NlIGRpIG5vbiB1dGlsaXp6YXJlIFdpbmVpbnN0YWxsLCBlc2VndWkgaSBzZWd1ZW50aQpjb21hbmRpIHBlciBjb21waWxhcmUgV2luZToKCi4vY29uZmlndXJlCm1ha2UgZGVwZW5kCm1ha2UKClF1ZXN0byBjb21waWxlcuAgaWwgcHJvZ3JhbW1hICJ3aW5lIiBlIG51bWVyb3NlIGxpYnJlcmllIGUgYmluYXJpIGRpIHN1cHBvcnRvLgpJbCBwcm9ncm1tYSAid2luZSIgY2FyaWNhIGVkIGVzZWd1ZSBnbGkgZXNlZ3VpYmlsaSBXaW5kb3dzLgpMYSBsaWJyZXJpYSAibGlid2luZSIgKCJXaW5lbGliIikgcHXyIGVzc2VyZSB1c2F0YSBwZXIgY29tcGlsYXJlIGUgbGlua2FyZSBpbApjb2RpY2Ugc29yZ2VudGUgV2luZG93cyBzb3R0byBVbml4LgoKUGVyIHZlZGVyZSBsZSBvcHppb25pIGRlbGxhIGNvbmZpZ3VyYXppb25lIGRlbGxhIGNvbXBpbGF6aW9uZSwgZXNlZ3VpCi4vY29uZmlndXJlIC1oZWxwLgoKUGVyIGZhcmUgbCdhZ2dpb3JuYW1lbnRvIGFkIHVuYSBudW92YSB2ZXJzaW9uZSB1dGlsaXp6YW5kbyB1bmEgcGF0Y2gsIHByaW1hIGVudHJhCm5lbGxhIGRpcmVjdG9yeSBwcmluY2lwYWxlIGRlaSBzb3JnZW50aSAocXVlbGxhIGNoZSBjb250aWVuZSBxdWVzdG8KZmlsZSBSRUFETUUpLiBRdWluZGkgZXNlZ3VpICJtYWtlIGRpc3RjbGVhbiIsIGVkIGFwcGxpY2EgbGEgcGF0Y2ggYWxsYSByZWxlYXNlIGNvbjoKCglHdW56aXAgLWMgcGF0Y2gtZmlsZSB8IHBhdGNoIC1wMQoKZG92ZSAicGF0Y2gtZmlsZSIg6CBpbCBub21lIGRlbGxhIHBhdGNoIChxdWFsY29zYSBjb21lIFdpbmUtYWFtbWdnLmRpZmYuZ3opLgpQdW9pIHF1aW5kaSByaWVzZWd1aXJlICIuL2NvbmZpZ3VyZSIsIGUgcXVpbmRpIGVzZWd1aXJlICJtYWtlIGRlcGVuZCAmJiBtYWtlIi4KCjUuIFNFVFVQCgpVbmEgdm9sdGEgY2hlIFdpbmUg6CBzdGF0byBjb21waWxhdG8gY29ycmV0dGFtZW50ZSwgcHVvaSBlc2VndWlyZQoibWFrZSBpbnN0YWxsIjsgcXVlc3RvIGluc3RhbGxlcuAgZ2xpIGVzZWd1aWJpbGkgd2luZSwgbGEgcGFnaW5hIFdpbmUgbWFuLCBlCnBvY2hpIGFsdHJpIGZpbGUgbmVjZXNzYXJpLgoKTm9uIGRpbWVudGljYXJ0aSBkaSBkaXNpbnN0YWxsYXJlIHF1YWxzaWFzaSBwcmVjZWRlbnRlIGluc3RhbGxhemlvbmUgZGkgV2luZSBpbgpjb25mbGl0dG8uIFByb3ZhIHNpYSAiZHBrZyAtciB3aW5lIiBvICJycG0gLWUgd2luZSIgbyAibWFrZSB1bmluc3RhbGwiIHByaW1hIGRpCmluc3RhbGxhcmUuCgpDb250cm9sbGEgbCdhcmVhIFN1cHBvcnQgc3UgaHR0cDovL3d3dy53aW5laHEub3JnLyBwZXIgc3VnZ2VyaW1lbnRpIHN1bGxhCmNvbmZpZ3VyYXppb25lLgoKTmVsIGNhc28gZGkgZXJyb3JpIGRpIGNhcmljYW1lbnRvIGRlbGxlIGxpYnJlcmllCihlLmcuICJFcnJvciB3aGlsZSBsb2FkaW5nIHNoYXJlZCBsaWJyYXJpZXM6IGxpYm50ZGxsLnNvIiksIGFjY2VydGF0aSBkaQphZ2dpdW5nZXJlIGlsIHBlcmNvcnNvIGRlbGxhIGRpcmVjdG9yeSBhIC9ldGMvbGQuc28uY29uZiBlZCBlc2VndWkgbGRjb25maWcgY29tZQpyb290LgoKNi4gRVNFR1VJUkUgSSBQUk9HUkFNTUkKClF1YW5kbyBzaSBlc2VndWUgV2luZSwgc2kgcHXyIHNwZWNpZmljYXJlIGwnaW50ZXJvIHBlcmNvcnNvIGRlbGwnZXNlZ3VpYmlsZSBvCnNvbG8gaWwgbm9tZSBkZWwgZmlsZS4KClBlciBlc2VtcGlvOiBwZXIgZXNlZ3VpcmUgU29saXRhcmlvOgoKCXdpbmUgc29sCShVdGlsaXp6YW5kbyBpbCBwZXJjb3JzbyBkaSByaWNlcmNhIGNvbWUgc3BlY2lmaWNhdG8KCXdpbmUgc29sLmV4ZSAgICAgIG5lbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIHBlciBsb2NhbGl6emFyZSBpbCBmaWxlKQoKCXdpbmUgYzpcXHdpbmRvd3NcXHNvbC5leGUgKHV0aWxpenphbmRvIGxhIHNpbnRhc3NpIERPUykKCXdpbmUgL3Vzci93aW5kb3dzL3NvbC5leGUgKHV0aWxpenphbmRvIGxhIHNpbnRhc3NpIFVuaXgpCgl3aW5lIHNvbC5leGUgL3BhcmFtZXRlcjEgLXBhcmFtZXRlcjIgcGFyYW1ldGVyMwoJCQkJICAoY2hpYW1hIGlsIHByb2dyYW1tYSBjb24gZGVpIHBhcmFtZXRyaSkKCk5vdGE6IGlsIHBlcmNvcnNvIGRlbCBmaWxlIHB18iBlc3NlcmUgYWdnaXVudG8gYWwgcGVyY29yc28gcXVhbmRvIOggZm9ybml0byB1bgpub21lIGludGVybyBzdWxsYSBjb21tYW5kbGluZS4KCldpbmUgbm9uIOggYW5jb3JhIGNvbXBsZXRvLCBxdWluZGkgbW9sdGkgcHJvZ3JhbW1pIHBvdHJlYmJlcm8gYW5kYXJlIGluIGNyYXNoLiBTZQp3aW5lZGJnIOggc2V0dGF0byBjb3JyZXR0YW1lbnRlIGluIGFjY29yZG8gY29uIGxhIGRvY3VtZW50YXppb25lIGNvbnRlbnV0YSBpbgpkb2N1bWVudGF0aW9uL2RlYnVnZ2VyLnNnbWwsIHNhcmFpIG1hbmRhdG8gYWxsJ2ludGVybm8gZGkgdW4gZGVidWdnZXIgY29z7Apwb3RyYWkgc3R1ZGlhcmUgZSByaXNvbHZlcmUgaWwgcHJvYmxlbWEuClBlciBtYWdnaW9yaSBpbmZvcm1hemlvbmkgc3UgY29tZSBmYXJlIGNp8iwgcGVyIGZhdm9yZSBsZWdnaSBpbCBmaWxlCmRvY3VtZW50YXRpb24vZGVidWdnaW5nLnNnbWwuCgpEb3ZyZXN0aSBmYXJlIHVuIGJhY2t1cCBkaSB0dXR0aSBpIHR1b2kgZmlsZSBpbXBvcnRhbnRpIGFpIHF1YWxpIGNvbmNlZGkKbCdhY2Nlc3NvIGRhIHBhcnRlIGRpIFdpbmUsIG9wcHVyZSBjcmVhbmUgdW5hIHNwZWNpYWxlIGNvcGlhIFdpbmUsIHBvaWNo6SBzaQpzb25vIHZlcmlmaWNhdGkgZGVpIGNhc2kgZGkgdXRlbnRpIGNoZSBoYW5ubyByaXBvcnRhdG8gbGEgY29ycnV6aW9uZSBkaSBmaWxlLgpOT04gZXNlZ3VpcmUgRXhwbG9yZXIsIGFkIGVzZW1waW8sIHNlIG5vbiBoYWkgdW4gYmFja3VwIGFwcHJvcHJpYXRvLCBwZXJjaOkgYQp2b2x0ZSByaW5vbWluYS9zdG9ycGlhIGRpdmVyc2UgZGlyZWN0b3J5LiBBbmNoZSBhbHRyZSBhcHBsaWNhemlvbmkgTVMgbm9uIHNvbm8Kc2ljdXJlIGNvbWUgYWQgZXNlbXBpbyBNZXNzZW5nZXIsIHZpc3RvIGNoZSBsYW5jaWFubyBFeHBsb3JlciBpbiB1biBtb2RvIG8KbmVsbCdhbHRyby4gUXVlc3RlIHBhcnRpY29sYXJpIGNvcnJ1emlvbmkgKCEkISQhJCEkLnBmcikgcG9zc29ubyBlc3NlcmUKcGFyemlhbG1lbnRlIGNvcnJldHRlIHV0aWxpenphbmRvCmh0dHA6Ly9ob21lLm5leGdvLmRlL2FuZGkubW9oci9kb3dubG9hZC9kZWNvcnJ1cHRfZXhwbG9yZXIKCjcuIFBFUiBPVFRFTkVSRSBQSVUnIElORk9STUFaSU9OSQoKV1dXOiAJVW4gZ3JhbiBxdWFudGl0YXRpdm8gZGkgaW5mb3JtYXppb25pIG1lc3NlIGEgZGlzcG9zaXppb25lIGRhIFdpbmVIUSBzdSBXaW5lCgnoIGRpc3BvbmliaWxlIGFsbCdpbmRpcml6em8gaHR0cDovL3d3dy53aW5laHEub3JnLzogdmFyaWUgZ3VpZGUgc3UgV2luZSwKCWRhdGFiYXNlLCBpZGVudGlmaWNhemlvbmUgZGkgYnVnLiBRdWVzdG8g6CBwcm9iYWJpbG1lbnRlIGlsIG1pZ2xpb3IgcHVudG8gZGkKCXBhcnRlbnphLgoKRkFROiAJTGUgRkFRIGRpIFdpbmUgc2kgdHJvdmFubyBhbGwnaW5kaXJpenpvIGh0dHA6Ly93d3cud2luZWhxLm9yZy9GQVEKClVzZW5ldDogUHVvaSBkaXNjdXRlcmUgZGkgYXJnb21lbnRpIGNvbGxlZ2F0aSBhIFdpbmUgZWQgb3R0ZW5lcmUgYWl1dG8gc3UKCWNvbXAuZW11bGF0b3JzLm1zLXdpbmRvd3Mud2luZS4KCkJ1Z3M6CSBTZWduYWxhIGkgQnVnIHN1IFdpbmUgQnVnemlsbGEgYWxsJ2luZGlyaXp6byBodHRwOi8vYnVncy53aW5laHEub3JnCglwZXIgZmF2b3JlIGNlcmNhIG5lbCBkYXRhYmFzZSBkaSBidWd6aWxsYSBwZXIgdmVyaWZpY2FyZSBjaGUgaWwgdHVvIHByb2JsZW1hCglub24gc2lhIGdp4CBzdGF0byB0cm92YXRvIHByaW1hIGRpIHBvc3RhcmUgdW4gcmFwcG9ydG8gc3UgdW4gYnVnLgoJUHVvaSBhbmNoZSBtYW5kYXJlIGxlIHNlZ25hbGF6aW9uaSBzdWkgYnVnIGEgY29tcC5lbXVsYXRvcnMubXMtd2luZG93cy53aW5lLgoKSVJDOgkgQWl1dG8gb25saW5lIOggZGlzcG9uaWJpbGUgbmVsIGNhbmFsZSAjd2luZWhxIHN1IGlyYy5mcmVlbm9kZS5uZXQuCgpDVlM6IAlMJ2FsYmVybyBkaSBzdmlsdXBwbyBjb3JyZW50ZSBkaSB3aW5lIGUnIGRpc3BvbmliaWxlIGluIENWUy4gVmlzaXRhCglodHRwOi8vd3d3LndpbmVocS5vcmcvY3ZzIHBlciB1bHRlcmlvcmkgaW5mb3JtYXppb25pLgoKTWFpbGluZyBsaXN0OgoJRXNpc3Rvbm8gZGl2ZXJzZSBtYWlsaW5nIGxpc3QgcGVyIGdsaSBzdmlsdXBwYXRvcmkgZGkgV2luZTsgdmlzaXRhCglodHRwOi8vd3d3LndpbmVocS5vcmcvZm9ydW1zIHBlciB1bHRlcmlvcmkgaW5mb3JtYXppb25pLgoKU2UgYWdnaXVuZ2kgcXVhbGNvc2EsIG8gY29ycmVnZ2kgdW4gYnVnLCBwZXIgZmF2b3JlIG1hbmRhIHVuYSBwYXRjaCAobmVsIGZvcm1hdG8KJ2RpZmYgLXUnKSBhIHdpbmUtcGF0Y2hlc0B3aW5laHEub3JnIHBlciBlc3NlcmUgZmFybG8gaW5jbHVkZXJlIG5lbGxhIHByb3NzaW1hIHJlbGVhc2UuCgotLQpBbGV4YW5kcmUgSnVsbGlhcmQKanVsbGlhcmRAd2luZWhxLm9yZwoKdHJhZG90dG8gZGE6CkZyYW5jZXNjbyBEaSBQdW56aW8KZnJhbmNlc2NvX2RpcHVuemlvQHZpcmdpbGlvLml0CnNlIHRyb3ZpIGVycm9yaSBuZWxsYSB0cmFkdXppb25lIHBlciBmYXZvcmUgc2VnbmFsYWxpIHRyYW1pdGUgZS1tYWlsLiBHcmF6aWUKVHJhZHV6aW9uZSBhZ2dpb3JuYXRhIGlsIDE4LzAxLzIwMDQgZGEgSXZhbiBMZW8gUHVvdGkKUG90ZXRlIGNvbnRhdGFybWkgYWxsJ2luZGlyaXp6byBwdW90aUBpbndpbmQuaXQK