Tm90aXppZSBnaW9ybmFsaWVyZSB8IE1pY3JvU3RyYXRlZ3kgaGEgZGkgbnVvdm8gYWNxdWlzaXRvIDE0LjYyMCBCaXRjb2luOyBFdGhlcmV1bSBMYXllciAyIGUgaSBwcm9nZXR0aSBkZWxsJ2Vjb3Npc3RlbWEgTFNEIGluIGdlbmVyYWxlIGF1bWVudGFubzsgTUVUSVMgw6ggc2FsaXRvIGRpIG9sdHJlIGlsIDIwJSBkdXJhbnRlIGxhIGd
Wy8vXTpjb250ZW50LXR5cGUtTUFSS0RPV04tRE9OT1QtREVMRVRFDQohW10oaHR0cHM6Ly9naW1nMi5nYXRlaW1nLmNvbS9pbWFnZS9hcnRpY2xlLzE3MDM3NDYwNDExXzIwLnBuZykKCiMjIENyeXB0byBEYWlseSBEaWdlc3Q6IE1pY3JvU3RyYXRlZ3kgaGEgbnVvdmFtZW50ZSBhY3F1aXNpdG8gMTQuNjIwIEJpdGNvaW5zLCBpIHByb2dldHRpIEV0aGVyZXVtIExheWVyIDIgZSBMU0QgRWNvc3lzdGVtIGF1bWVudGFubyBpbiBnZW5lcmFsZQoKSWwgcGnDuSBncmFuZGUgY29ub3NjaXV0byBiYWxlbmEgZGkgW0JpdGNvaW5dKC9wcmljZS9iaXRjb2luLWJ0YyksIE1pY3JvU3RyYXRlZ3ksIGhhIGF1bWVudGF0byBkaSBudW92byBsZSBzdWUgcmlzZXJ2ZS4KCk1pY2hhZWwgU2F5bG9yLCBQcmVzaWRlbnRlIGVzZWN1dGl2byBkaSBNU1RSLCBoYSByaXZlbGF0byBzdWxsYSBwaWF0dGFmb3JtYSBYIGNoZSBNaWNyb1N0cmF0ZWd5IGhhIG51b3ZhbWVudGUgYWNxdWlzaXRvIDE0LjYyMCBCaXRjb2luIHBlciA2MTUsNyBtaWxpb25pIGRpIGRvbGxhcmksIGNvbiB1biBwcmV6em8gbWVkaW8gZGkgNDIuMTEwIGRvbGxhcmkuIEFsIDI2IGRpY2VtYnJlIDIwMjMsIE1pY3JvU3RyYXRlZ3kgZGV0aWVuZSBhdHR1YWxtZW50ZSAxODkuMTUwIEJUQyBlIGxpIHN0YSBhY3F1aXNlbmRvIHBlciBjaXJjYSA1LDkgbWlsaWFyZGkgZGkgZG9sbGFyaSwgY29uIHVuIHByZXp6byBtZWRpbyBkaSAzMS4xNjggZG9sbGFyaS4KCkNvbiB1biBjYW50byBhcm1vbmlvc28sIENhdGhpZSBXb29kIGhhIGVzcHJlc3NvIHVuIGF0dGVnZ2lhbWVudG8gcG9zaXRpdm8gZSBvdHRpbWlzdGEgbmVpIGNvbmZyb250aSBkZWxsJ2FwcHJvdmF6aW9uZSBkZWwgQml0Y29pbiBFVEYuCgpTZWNvbmRvIEJlbnppbmdhLCBDYXRoaWUgV29vZCwgZm9uZGF0cmljZSBlIENFTyBkaSBBcmsgSW52ZXN0LCBoYSByZWNlbnRlbWVudGUgcmlsYXNjaWF0byB1bidpbnRlcnZpc3RhIGEgQ05CQy4gUmlndWFyZG8gYWxsJ0VURiBCaXRjb2luIHNwb3QgJ0FSSyAyMVNIQVJFUyBCSVRDT0lOIEVURicgbGFuY2lhdG8gY29uZ2l1bnRhbWVudGUgZGEgQVJLIEludmVzdCBlIDIxIFNoYXJlcywgaGEgZGljaGlhcmF0byBjaGUgbGEgU2VjdXJpdGllcyBhbmQgRXhjaGFuZ2UgQ29tbWlzc2lvbiBkZWdsaSBTdGF0aSBVbml0aSBoYSBtaWdsaW9yYXRvIGxhIHN1YSAncHJvZm9uZGl0w6AgZGkgY29ub3NjZW56YScgZGVsbGUgY3JpcHRvdmFsdXRlIGUgcG90cmViYmUgYXBwcm92YXJlIGwnRVRGIEJpdGNvaW4gc3BvdCBwcmVzZW50YXRvIHByaW1hIGRlbCAxMCBnZW5uYWlvIDIwMjQuCgpJbm9sdHJlLCBXb29kIGhhIHNvdHRvbGluZWF0byBsJ2ltcG9ydGFuemEgZGVnbGkgRVRGIG5lbCBzdGltb2xhcmUgbCdpbnRlcmVzc2UgaXN0aXR1emlvbmFsZSBuZWwgY2FtcG8gZGVsbGEgY3JpcHRvdmFsdXRhLiBVbmEgdm9sdGEgY2hlIGlzdGl0dXppb25pIGUgaW52ZXN0aXRvcmkgc2kgc2FyYW5ubyBzdGFiaWxpdGksIGNlcmNoZXJhbm5vIG1vZGkgcGVyIGRpdmVyc2lmaWNhcmUgaSBsb3JvIHBvcnRhZm9nbGkgZGkgaW52ZXN0aW1lbnRvLiBQYXJsYW5kbyBkZWxsJ2ltcGF0dG8gZGVsbGUgYXBwcm92YXppb25pIGRlZ2xpIEVURiBzcG90IHN1bCBwcmV6em8gZGVsIEJpdGNvaW4sIFdvb2QgaGEgYWZmZXJtYXRvIGNoZSBxdWVzdG8gYXZyw6AgdW4gaW1wYXR0byBhIGJyZXZlIHRlcm1pbmUuIFR1dHRhdmlhLCBsZWkgY3JlZGUgY2hlIGxhIHByb21vemlvbmUgZGVsIEJpdGNvaW4gaXN0aXR1emlvbmFsZSBhdnLDoCB1biBpbXBhdHRvIHNpZ25pZmljYXRpdm8gc3VpIHByZXp6aSBkZWxsZSBwcmluY2lwYWxpIGNyaXB0b3ZhbHV0ZS4KCkluIHJpc3Bvc3RhIGEgY2nDsiwgTWF4IEtlaXNlciwgY29uc3VsZW50ZSBzZW5pb3IgZGVsIFByZXNpZGVudGUgZGkgRWwgU2FsdmFkb3IsIGhhIHNtZW50aXRvIGxhIGRpY2hpYXJhemlvbmUgZGkgQ2F0aGllIFdvb2Qgc3VpIHNvY2lhbCBtZWRpYSBjaGUg4oCcc2UgZ2xpIEVURiBCaXRjb2luIHNwb3QgdmVuZ29ubyBhcHByb3ZhdGksIGF0dGlyZXJhbm5vIHBpw7kgaXN0aXR1emlvbmkgYSBlbnRyYXJl4oCdLCBhZmZlcm1hbmRvIGNoZSBxdWVzdGEgYWZmZXJtYXppb25lIMOoIGZ1b3J2aWFudGUuIFR1dHRpIGdsaSBFVEYgQml0Y29pbiBzcG90IGNyZWF0aSBpbiBjb250YW50aSBzb25vIHNvbG8gc3RydW1lbnRpIHByb3h5IHBlciBnbGkgaW52ZXN0aXRvcmkgcGVyIHRyYWNjaWFyZSBpIHByZXp6aSBkZWwgQlRDIGUgbm9uIHBvc3Nvbm8gb3R0ZW5lcmUgQlRDIGVmZmV0dGl2aS4KCkEgcmlndWFyZG8sIGdsaSBhbmFsaXN0aSBFVEYgZGkgQmxvb21iZXJnIGhhbm5vIGRpY2hpYXJhdG8gY2hlIGluIHJlYWx0w6AsIHNlIGdsaSBFVEYgZGkgQml0Y29pbiBwb3Nzb25vIGVzc2VyZSBjcmVhdGkgc29sbyBpbiBjb250YW50aSwgYW56aWNow6kgaW4gQlRDIChjcmVhdGkgaW4gZm9ybWEgZmlzaWNhKSwgYWxsb3JhIGxhIG1hZ2dpb3IgcGFydGUgZGVsbGUgcGVyc29uZSBub24gY29pbnZvbHRlIGluIGNyaXB0b3ZhbHV0ZSAoc29wcmF0dHV0dG8gbGUgaXN0aXR1emlvbmkgZGkgZ2VzdGlvbmUgcGF0cmltb25pYWxlIGNoZSBjb250cm9sbGFubyAkMzMgdHJpbGlvbmkgZGkgYXNzZXQpIG5vbiBhdnJhbm5vIG1vbHRvIGRhIGZhcmUuIEluIGVmZmV0dGksIHByZWZlcmlzY29ubyBndWFkYWduYXJlIGRvbGxhcmkgZGEgZXNzYSwgdm9nbGlvbm8gc29sbyBlc3Nlcm5lIGVzcG9zdGkuCgpJbCAyOCBkaWNlbWJyZSwgc2Vjb25kbyBxdWFudG8gcmlwb3J0YXRvIGRhIEJsb29tYmVyZyBjaXRhbmRvIGZvbnRpIGludGVybmUsIGZpbm8gYSBtZXTDoCBkaWNlbWJyZSBpbCBmb25kbyBkaSB0b2tlbiBsaXF1aWRpIGRpIFBhbnRlcmEgQ2FwaXRhbCDDqCBzYWxpdG8gcXVhc2kgZGVsbCc4MCUgcXVlc3QnYW5ubyBkb3BvIGVzc2VyZSBzY2VzbyBkZWxsJzgwJSBuZWwgMjAyMi4gSWwgZm9uZG8gZGkgdG9rZW4gbW9iaWxpIGRpIFBhbnRlcmEgQ2FwaXRhbCBzcGVyYSBkaSB1dGlsaXp6YXJlIEFsdGNvaW5zICh0b2tlbiBkaXZlcnNpIGRhIEJpdGNvaW4gZSBbRXRoZXJldW1dKC9wcmljZS9ldGhlcmV1bS1ldGgpIHBlciBvdHRlbmVyZSB1biBhdW1lbnRvIGwnYW5ubyBwcm9zc2ltby4KCkNvc21vIEppYW5nLCB1biBnZXN0b3JlIGRpIHBvcnRhZm9nbGlvIHByZXNzbyBQYW50ZXJhLCBoYSBkaWNoaWFyYXRvIGluIHVuJ2ludGVydmlzdGEgY2hlIGRvcG8gbCdhc2Nlc2EgZGkgQml0Y29pbiwgZ2xpIEFsdGNvaW4gaGFubm8gc2VtcHJlIG90dGVudXRvIHJpc3VsdGF0aSBtaWdsaW9yaSByaXNwZXR0byBhbCBtZXJjYXRvIG5lbGxhIHNlY29uZGEgZmFzZSBkZWwgcmltYmFsem8sIGUgbGEgc2NlbHRhIGRlbCB0b2tlbiDDqCBlZmZldHRpdmFtZW50ZSBpbXBvcnRhbnRlLiBJIHN1b2kgc29jaSBsaW1pdGF0aSBjaSBzdGFubm8gY2hpZWRlbmRvIGRpIGRpc2ludmVzdGlyZSBhc3NldCBhbCBkaSBmdW9yaSBkaSBCaXRjb2luLgoKRSBsJ2FyZ29tZW50byBjZW50cmFsZSBkaSBQYW50ZXJhIMOoIGNoZSBzZSBjcmVkaWFtbyBjaGUgcXVlc3RhIGluZHVzdHJpYSBzaSBzdmlsdXBwZXLDoCwgZG9iYmlhbW8gY29uY2VudHJhcmNpIHN1aSBwcm90b2NvbGxpIGNoZSBwb3Nzb25vIHZlcmFtZW50ZSBnZW5lcmFyZSBlbnRyYXRlLiBBdHR1YWxtZW50ZSwgdW5hIGRlbGxlIHBvc2l6aW9uaSBwacO5IGdyYW5kaSBkaSBQYW50ZXJhIENhcGl0YWwgw6ggW2RZZFhdKC9wcmljZS9keWR4LWR5ZHgpLCBjb24gQml0Y29pbiBlZCBFdGhlcmV1bSBjaGUgcmFwcHJlc2VudGFubyBtZW5vIGRlbCA0MCUgZGVsIHRvdGFsZSBkZWwgZm9uZG8uCgpEaSByZWNlbnRlLCBhbGxhIENvbmZlcmVuemEgc3VsbG8gU3ZpbHVwcG8gZGVsbCdFY29ub21pYSBEaWdpdGFsZSBkZWxsYSBHcmVhdGVyIEJheSBBcmVhIGRlbGxhIENpbmEgZGVsIEd1YW5nZG9uZyBIb25nIEtvbmcgTWFjYW8sIExpIEhhb2xvbmcsIHByZXNpZGVudGUgZGVsIEdyZWF0ZXIgQmF5IEFyZWEgQ2FwaXRhbCBHcm91cCwgaGEgYWZmZXJtYXRvIGNoZSBpbCBHcmVhdGVyIEJheSBBcmVhIENhcGl0YWwgR3JvdXAgKEdCQSBDYXBpdGFsKSBhbm51bmNlcsOgIGlsIGxhbmNpbyBkaSB1biBmb25kbyBpbmR1c3RyaWFsZSBXZWIzLjAgZGkgMTAgbWlsaWFyZGkgZGkgeXVhbiBwZXIgaW52ZXN0aXJlIGluIHRyYWNjZSBnbG9iYWxtZW50ZSBjb3JyZWxhdGUgbmVpIHNldHRvcmkgZGVnbGkgYXNzZXQgeXVhbiwgbWV0YXZlcnNlLCBORlQsIFJXQSwgZWNjLiwgYWl1dGFuZG8gaWwgR3Vhbmdkb25nIEhvbmcgS29uZyBNYWNhbyBHcmVhdGVyIEJheSBBcmVhIGEgZGl2ZW50YXJlIGxhIOKAnGNhcGl0YWxlIG1vbmRpYWxlIGRlZ2xpIGFzc2V0IHl1YW7igJ0uCgpTaSByaXBvcnRhIGNoZSBkdXJhbnRlIGxhIGNvbmZlcmVuemEgc2lhbm8gc3RhdGUgYW5jaGUgZWZmZXR0dWF0ZSBkaXZlcnNlIGNlcmltb25pZSBkaSBmaXJtYSwgY29uIEdyZWF0ZXIgQmF5IEFyZWEgQ2FwaXRhbCBHcm91cCwgaWwgY29taXRhdG8gb3JnYW5penphdG9yZSBkZWxsYSBjb25mZXJlbnphIGUgZGl2ZXJzaSBwYXJ0bmVyIGNoZSBoYW5ubyBmaXJtYXRvIGNvbnRyYXR0aS4gSW4gZnV0dXJvLCBsYSBjb29wZXJhemlvbmUgdmVycsOgIHJlYWxpenphdGEgaW4gc2V0dG9yaSBjb21lIGwnZWNvbm9taWEgZGlnaXRhbGUsIGdsaSBhc3NldCBtZXRhLCBpbCBXZWIgMy4wIGUgaWwgbWV0YXZlcnNvLgoKSWwgMjggZGljZW1icmUsIEdyYXlzY2FsZSBoYSB1ZmZpY2lhbG1lbnRlIHB1YmJsaWNhdG8gc3VpIHNvY2lhbCBtZWRpYSBjaGUgRVRIIGhhIGdlbmVyYXRvIGZvcnRpIHJlbmRpbWVudGkgKG9sdHJlIGwnODAlKSBuZWwgMjAyMywgbWEgbGUgc3VlIHByZXN0YXppb25pIHNvbm8gcmltYXN0ZSBpbmRpZXRybyByaXNwZXR0byBhIEJUQyBlIGFkIGFsY3VuaSBhbHRyaSB0b2tlbiBibG9ja2NoYWluIHNtYXJ0IGNvbnRyYWN0LiBJbCByYXBwb3J0byB0cmEgZ2xpIGluZGljaSBkZWkgcHJlenppIGRpIEVUSCBlIEJUQyBoYSByZWNlbnRlbWVudGUgcmFnZ2l1bnRvIGlsIHN1byBsaXZlbGxvIHBpw7kgYmFzc28gZGEgbWV0w6AgMjAyMS4KCkluIHJlYWx0w6AsIGlsIHRhc3NvIGRpIGNyZXNjaXRhIGRlbGxhIG1hZ2dpb3IgcGFydGUgZGVpIHRva2VuIGRlbGxlIHBpYXR0YWZvcm1lIHNtYXJ0IGNvbnRyYWN0IHF1ZXN0J2Fubm8gw6ggaW5mZXJpb3JlIGEgcXVlbGxvIGRlbCBCaXRjb2luLCBlIGwnRVRIIMOoIHNvc3RhbnppYWxtZW50ZSBpbiBsaW5lYSBjb24gcXVlc3RvIGdydXBwbyBzaW1pbGUuIEwnaW5kaWNlIENyeXB0b1NlY3RvciBkZWxsYSBwaWF0dGFmb3JtYSBzbWFydCBjb250cmFjdCBncmF5c2NhbGUgZGkgRlRTRSDDqCBhdW1lbnRhdG8gZGkgY2lyY2EgaWwgOTQlIG5lbCAyMDIzLCBzb2xvIGxlZ2dlcm1lbnRlIHN1cGVyaW9yZSBhbGwnYXVtZW50byBkZWxsJ0VUSC4gQW5jaGUgc2UgbCdFVEggw6ggaW4gcml0YXJkbyByaXNwZXR0byBhbCBCaXRjb2luIGUgYWQgYWxjdW5pIGFsdHJpIGFzc2V0IGNyaXR0b2dyYWZpY2kgbmVsIDIwMjMsIHN1cGVyYSBjb211bnF1ZSBsZSBjbGFzc2kgZGkgYXR0aXZpdMOgIHRyYWRpemlvbmFsaS4gUGVydGFudG8sIHJpdGVuaWFtbyBjaGUgaWwgcmltYmFsem8gZGVsbCdFVEggZGViYmEgZXNzZXJlIGNvbnNpZGVyYXRvIGNvbWUgcHJvdmEgZGVsbCdlc3BhbnNpb25lIGRlbCByZWN1cGVybyBjcml0dG9ncmFmaWNvLgoKSWwgMjggZGljZW1icmUsIHNlY29uZG8gbCd1bHRpbW8gbWVyY2F0byBkaSBHYXRlLmlvLCBFdGhlcmV1bSBoYSBicmV2ZW1lbnRlIHJhZ2dpdW50byBpICQyLjQwMCBlZCDDqCBvcmEgcXVvdGF0byBhICQyLjM5OSw1NSwgY29uIHVuIGF1bWVudG8gZGVsIDcsNjMlIG5lbGxlIHVsdGltZSAyNCBvcmUuCgpTZWNvbmRvIGkgZGF0aSBkaSBMMkJFQVQsIGlsIFRWTCBkZWxsYSByZXRlIE1ldGlzIEFuZHJvbWVkYSBwb3RyZWJiZSBlc3NlcmUgaW5mbHVlbnphdG8gZGFsbCdhdW1lbnRvIGRlaSBwcmV6emkgZGVsbGUgbW9uZXRlLCByYWdnaXVuZ2VuZG8gNjk1IG1pbGlvbmkgZGkgZG9sbGFyaSwgY29uIHVuIGF1bWVudG8gZGVsIDU2MCUgaW4gNyBnaW9ybmkuIEF0dHVhbG1lbnRlIMOoIGFsIHRlcnpvIHBvc3RvIHBlciBpbCBUVkwgbmVsbGEgcmV0ZSBFdGhlcmV1bSBMYXllciAyLCBjb24gdW4gZGl2YXJpbyBkaSBtZW5vIGRpIDEgbWlsaW9uZSBkaSBkb2xsYXJpIHJpc3BldHRvIGFsIFRWTCBkZWxsYSByZXRlIEJhc2UsIGFsIHRlcnpvIHBvc3RvICgkNjk2IG1pbGlvbmkpLgoKSWwgMjcgZGljZW1icmUsIHNlY29uZG8gaSBkYXRpIGRpIG1lcmNhdG8gZGkgR2F0ZS5pbywgTUVUSVMgaGEgc3VwZXJhdG8gaSA5MCBkb2xsYXJpIGVkIMOoIG9yYSBxdW90YXRvIGEgOTAsNyBkb2xsYXJpLCBjb24gdW4gYXVtZW50byBnaW9ybmFsaWVybyBkZWwgMjAsOCUgZSB1biBhdW1lbnRvIGRpIDE1NSUgaW4gNCBnaW9ybmkuCgpJbmZsdWVuemF0byBkYWxsJ2FydGljb2xvIGRpIFZpdGFsaWsgY2hlIHByb3BvbmUgdHJlIG1ldG9kaSBwZXIgc2VtcGxpZmljYXJlIGlsIGxhdG8gZGVsIG1lc3NhZ2dpbyBkZWwgbWVjY2FuaXNtbyBQT1MgZGkgRXRoZXJldW0sIGlsIHRva2VuIGRlbCBwcm9nZXR0byBMYXllciAyIGhhIHJlZ2lzdHJhdG8gdW5hIHRlbmRlbnphIGdlbmVyYWxlIGFsIHJpYWx6byBpbCAyNyBkaWNlbWJyZSwgY29uIHVuIGF1bWVudG8gZGkgT1AgZGVsIDE5LDM4JSBpbiAyNCBvcmUgZSBvcmEgdmllbmUgcXVvdGF0byBhICQzLDkyOyBNQVRJQyBoYSByZWdpc3RyYXRvIHVuIGF1bWVudG8gZGVsIDE4LDM0JSBpbiAyNCBvcmUgZWQgw6ggYXR0dWFsbWVudGUgcXVvdGF0byBhICQxLDA2OyBNRVRJUyBoYSByZWdpc3RyYXRvIHVuIGF1bWVudG8gZGVsIDE3LDElIGluIDI0IG9yZSBlZCDDqCBhdHR1YWxtZW50ZSBxdW90YXRvIGEgJDg2LDcxOyBBUkIgw6ggYXVtZW50YXRvIGRlbCAxMCw3NCUgaW4gMjQgb3JlIGVkIMOoIG9yYSBxdW90YXRvIGEgJDEsNDguCgpJbCAyOCBkaWNlbWJyZSwgYW5jaGUgaSB0b2tlbiBkaSBnb3Zlcm5hbmNlIGRlbCBwcm90b2NvbGxvIExTRCBoYW5ubyByZWdpc3RyYXRvIHVuIHRyZW5kIGdlbmVyYWxlIGFsIHJpYWx6bywgY29uIExETyBjaGUgYXR0dWFsbWVudGUgcXVvdGEgJDIuODMsIHVuIGF1bWVudG8gZGVsIDE2LjglIG5lbGxlIHVsdGltZSAyNCBvcmU7IFBFTkRMRSBxdW90YSBhdHR1YWxtZW50ZSAkMS4yNzA2LCBjb24gdW4gYXVtZW50byBkZWwgMTQuMzclIG5lbGxlIHVsdGltZSAyNCBvcmU7IFNTViBxdW90YSBhdHR1YWxtZW50ZSAkMjYuNCwgY29uIHVuIGF1bWVudG8gZGVsIDEyLjc0JSBuZWxsZSB1bHRpbWUgMjQgb3JlOyBlIFJQTCBxdW90YSBhdHR1YWxtZW50ZSAkMzIuMywgY29uIHVuIGF1bWVudG8gZGVsIDEyLjIlIG5lbGxlIHVsdGltZSAyNCBvcmUuCgojIyBUZW5kZW56ZSBwcmluY2lwYWxpIGRlaSB0b2tlbiBkaSBvZ2dpCgojIyMgQlRDCgohW10oaHR0cHM6Ly9naW1nMi5nYXRlaW1nLmNvbS9pbWFnZS9hcnRpY2xlLzE3MDM3NDYyNDZCVEMucG5nKQpRdWVzdGEgc2V0dGltYW5hIHNpIMOoIHJlZ2lzdHJhdGEgdW5hIGNvbnRpbnVhIGFsdGEgdm9sYXRpbGl0w6AsIGNvbiB1biBhbHRybyBtb3ZpbWVudG8gdmVyc28gbGl2ZWxsaSBjaGlhdmUgcXVlc3RhIG1hdHRpbmEuIEkgbGl2ZWxsaSBkaSByZXNpc3RlbnphIHNvcHJhIGluY2x1ZG9ubyAkNDUuMzQ1IGUgJDQ3Ljk5MCwgbWVudHJlIGkgbGl2ZWxsaSBkaSBzdXBwb3J0byBzb3R0byBzb25vIGEgJDQxLjQ1MCBlICQ0MC4yODAuIFNlZ25hbGkgZGkgY29udmVyZ2VuemEgYWwgcHVudG8gcGnDuSBhbHRvIHN1Z2dlcmlzY29ubyB1bmEgcG9zc2liaWxlIGRlY2lzaW9uZSBkaSBtZXJjYXRvIGVudHJvIG1ldMOgIGRlbCBwcm9zc2ltbyBtZXNlLgoKIyMjIEVUSAoKIVtdKGh0dHBzOi8vZ2ltZzIuZ2F0ZWltZy5jb20vaW1hZ2UvYXJ0aWNsZS8xNzAzNzQ2MjYwRVRILnBuZykKU2kgw6ggZm9ybWF0byB1biBtb2RlbGxvIGRpIHRlc3RhIGUgc3BhbGxlIGludmVyc2UgYSBicmV2ZSB0ZXJtaW5lIGRpIHF1YXR0cm8gb3JlLCBjaGUgaW5kaWNhIHVuIHRyZW5kIHJpYWx6aXN0YS4gTmVsIGJyZXZlIHRlcm1pbmUsIMOoIGNydWNpYWxlIG1hbnRlbmVyZSB1biB2YWxvcmUgc3VwZXJpb3JlIGEgJDIuNDg5LCBjb24gbGEgc3RyYXRlZ2lhIGNoZSBtb3N0cmEgcHJvZml0dGkgc29zdGVudXRpIGEgcGFydGlyZSBkYSAkMi4xODAuIElsIHN1cHBvcnRvIGFsIHJpYmFzc28gc2kgw6ggc3Bvc3RhdG8gc3UgdW4gbGl2ZWxsbyBjaGlhdmUgZGkgJDIuMzgxLgoKIyMjIEdUCgohW10oaHR0cHM6Ly9naW1nMi5nYXRlaW1nLmNvbS9pbWFnZS9hcnRpY2xlLzE3MDM3NDYyNzRHVC5wbmcpCklsIGdyYWZpY28gc2V0dGltYW5hbGUgc2VnbmEgbCdpbml6aW8gZGVsbGEgc2Vjb25kYSBmYXNlIGRpIHVuIG1lcmNhdG8gcmlhbHppc3RhLCBjb24gdW4gY2hpYXJvIHRyZW5kIGFsIHJpYWx6by4gSWwgZ3JhZmljbyBhIHF1YXR0cm8gb3JlIGEgYnJldmUgdGVybWluZSBjb250aW51YSBhIG1vc3RyYXJlIHVuYSBjb252ZXJnZW56YSwgYW50aWNpcGFuZG8gdW5hIHByb3NzaW1hIHJvdHR1cmEgcmlhbHppc3RhIG5lbCBzZXR0b3JlIGRlbGxlIG1vbmV0ZSBkaSBwaWF0dGFmb3JtYS4gSSBwcmV6emkgdGFyZ2V0IHNvbm8gJDEyLjg3NywgJDE4Ljk3NywgJDI4LjU4IGUgJDQ0Ljk5LiBTaSBjb25zaWdsaWEgdW5hIHBvc2l6aW9uZSBhIGx1bmdvIHRlcm1pbmUuCgojIyBNYWNybzogTCdpbmRpY2UgZGVsIGRvbGxhcm8gc3RhdHVuaXRlbnNlIMOoIHNjZXNvIGEgdW4gbnVvdm8gbWluaW1vLCBpbCAyMDI0IHBvdHJlYmJlIGRpdmVudGFyZSBsJ2Fubm8gZGVpIHRhZ2xpIGRlaSB0YXNzaSBkaSBpbnRlcmVzc2U/CgpNZXJjb2xlZMOsLCBsJ2luZGljZSBkZWwgZG9sbGFybyBhbWVyaWNhbm8gaGEgYWNjZWxlcmF0byBsYSBzdWEgY2FkdXRhIGR1cmFudGUgaWwgbWVyY2F0byBhbWVyaWNhbm8gZWQgw6ggc2Nlc28gYWwgZGkgc290dG8gZGVsIGxpdmVsbG8gZGkgMTAxLCByYWdnaXVuZ2VuZG8gdW4gbnVvdm8gbWluaW1vIGRhIGx1Z2xpbyBkaSBxdWVzdCdhbm5vLiBBbGxhIGZpbmUgaGEgY2hpdXNvIGluIHJpYmFzc28gZGVsbG8gMCw2JSBhIDEwMCw5NDsgSWwgcmVuZGltZW50byBkZWkgdGl0b2xpIGRlbCBUZXNvcm8gYW1lcmljYW5vIMOoIGRpbWludWl0byBuZXR0YW1lbnRlLCBjb24gaWwgcmVuZGltZW50byBkZWNlbm5hbGUgY2hlIMOoIHNjZXNvIGFsIGRpIHNvdHRvIGRlbCBsaXZlbGxvIGRlbCAzLDglIGUgYWxsYSBmaW5lIGhhIGNoaXVzbyBhbCAzLDc4OSUuIElsIHJlbmRpbWVudG8gZGVpIHRpdG9saSBkZWwgVGVzb3JvIGEgZHVlIGFubmksIGNoZSBzb25vIHBpw7kgc2Vuc2liaWxpIGFpIHRhc3NpIGRpIGludGVyZXNzZSBkZWxsYSBwb2xpdGljYSBkZWxsYSBGZWRlcmFsIFJlc2VydmUsIGhhIGNoaXVzbyBhbCA0LDI0MCUuCgpMJ29ybyBzcG90IGhhIGNvbnRpbnVhdG8gbGEgc3VhIHRlbmRlbnphIGFsIHJpYWx6bywgc3VwZXJhbmRvIGlsIGxpdmVsbG8gZGkgMjA4MCBkdXJhbnRlIGlsIG1lcmNhdG8gc3RhdHVuaXRlbnNlIGUgcmFnZ2l1bmdlbmRvIHVuIG1hc3NpbW8gaW50cmFkYXkgZGkgJCAyMDg0LDQ5LCB0b2NjYW5kbyB1biBudW92byBtYXNzaW1vIGluIHF1YXNpIHRyZSBzZXR0aW1hbmUuIFR1dHRhdmlhLCBub24gw6ggcml1c2NpdG8gYSBzdGFiaWxpenphcnNpIHNvcHJhIGlsIGxpdmVsbG8gZGkgMjA4MCBlIGFsbGEgZmluZSBoYSBjaGl1c28gaW4gcmlhbHpvIGRlbGxvIDAsNDclIGEgJCAyMDc3LDA3IHBlciBvbmNpYTsgTCdhcmdlbnRvIHNwb3Qgw6ggc2FsaXRvIGRlbGxvIDAsMTglIHBlciBjaGl1ZGVyZSBhICQgMjQsMjcgcGVyIG9uY2lhLgoKUG9pY2jDqSBsZSBjb21wYWduaWUgZGkgbmF2aWdhemlvbmUgZ2xvYmFsaSBzdGFubm8gcGVyIHRvcm5hcmUgbmVsIE1hciBSb3NzbywgbGUgZHVlIGNvbXBhZ25pZSBwZXRyb2xpZmVyZSBoYW5ubyBxdWFzaSBjYW5jZWxsYXRvIGkgZ3VhZGFnbmkgZGkgaWVyaS4gSWwgZ3JlZ2dpbyBXVEkgw6ggY3JvbGxhdG8gc2lnbmlmaWNhdGl2YW1lbnRlIGRhbCBtZXJjYXRvIGV1cm9wZW8sIHNjZW5kZW5kbyBzb3R0byBpIDc1IGRvbGxhcmkgZSBhcnJpdmFuZG8gYSB1biBtaW5pbW8gaW50cmFkYXkgZGkgNzMsNzggZG9sbGFyaSwgY2hpdWRlbmRvIGluZmluZSBpbiByaWJhc3NvIGRlbCAyJSBhIDczLDc4IGRvbGxhcmkgYWwgYmFyaWxlOyBpbCBncmVnZ2lvIEJyZW50IG5vbiDDqCByaXVzY2l0byBhIHN0YWJpbGl6emFyc2kgc29wcmEgbGEgc29nbGlhIGRlaSA4MCBkb2xsYXJpIGUgaGEgY2hpdXNvIGluIHJpYmFzc28gZGVsbCcxLDcyJSBhIDc5LDI0IGRvbGxhcmkgYWwgYmFyaWxlLgoKSSBwcmluY2lwYWxpIGluZGljaSBhemlvbmFyaSBzdGF0dW5pdGVuc2kgaGFubm8gY2hpdXNvIGxlZ2dlcm1lbnRlIGluIHJpYWx6bywgY29uIGlsIERvdyBKb25lcyBpbiBhdW1lbnRvIGRlbGxvIDAsMyUsIGwnUyZQIDUwMCBkZWxsbyAwLDE0JSBlIGlsIE5hc2RhcSBkZWxsbyAwLDE2JS4gTGUgYXppb25pIGRlbCBzZXR0b3JlIGRlbGxlIHZhbHV0ZSBkaWdpdGFsaSBoYW5ubyBndWlkYXRvIGlsIG1lcmNhdG8gYWwgcmlhbHpvLCBjb24gTWljcm9TdHJhdGVneSAoTVNUUi4gTykgY2hlIGhhIGNoaXVzbyBpbiByaWFsem8gZGkgb2x0cmUgbCcxMSUgYSBjYXVzYSBkaSBmYXR0b3JpIHBvc2l0aXZpIGxlZ2F0aSBhbGwnYXVtZW50byBkZWxsZSBwYXJ0ZWNpcGF6aW9uaSBkaSBNU1RSIGluIEJpdGNvaW4uCgpSZWNlbnRlbWVudGUsIHNvbmRhZ2dpIGNvbmRvdHRpIGRhIGRpdmVyc2UgYmFuY2hlIHJlZ2lvbmFsaSBkZWxsYSBGZWRlcmFsIFJlc2VydmUsIHRyYSBjdWkgTmV3IFlvcmsgZSBEYWxsYXMsIGhhbm5vIG1vc3RyYXRvIGNoZSBpIGRhdG9yaSBkaSBsYXZvcm8gYW1lcmljYW5pIHNpIGFzcGV0dGFubyBkaSByaWR1cnJlIGxlIGFzc3VuemlvbmkgbmVsIDIwMjQsIGlsIGNoZSBkb3ZyZWJiZSBsaW1pdGFyZSBsYSBjcmVzY2l0YSBkZWkgc2FsYXJpIGUgbWl0aWdhcmUgbGUgcHJlc3Npb25pIGluZmxhemlvbmlzdGljaGUuIEkgZGF0aSBtb3N0cmFubyBjaGUgbGUgbWlzdXJlIGRlbGxhIEZlZGVyYWwgUmVzZXJ2ZSB2b2x0ZSBhIHJhbGxlbnRhcmUgbGEgY3Jlc2NpdGEgZWNvbm9taWNhIGUgY29udGVuZXJlIGwnaW5mbGF6aW9uZSBzdGFubm8gaW5mbHVlbnphbmRvIGwnZWNvbm9taWEsIGlsIGNoZSBzaWduaWZpY2EgdW5hIHJpZHV6aW9uZSBkZWxsJ29jY3VwYXppb25lIG1hIG5vbiB1bmEgY29udHJhemlvbmUgZGlyZXR0YS4KCkNvbCBwYXNzYXJlIGRlbCB0ZW1wbyBlIGwnaW5ncmVzc28gbmVsIDIwMjQsIGkgdGFnbGkgZGVpIHRhc3NpIGRpIGludGVyZXNzZSBzb25vIGRpdmVudGF0aSB1bmEgcGFyb2xhIGNoaWF2ZSBmb25kYW1lbnRhbGUgbmVsbGEgcG9saXRpY2EgZGVsbGEgRmVkZXJhbCBSZXNlcnZlLiBOZWwgZnJhdHRlbXBvLCBjb24gbCdhcnJpdm8gZGVsIG51b3ZvIGFubm8sIGNhbWJpZXLDoCBhbmNoZSBsJ2VsZW5jbyBkZWdsaSB1ZmZpY2lhbGkgY29uIGRpcml0dG8gZGkgdm90byBhbGxhIHJpdW5pb25lIGRlbCBGT01DIGRlbGxhIEZlZGVyYWwgUmVzZXJ2ZS4KCklsIEZlZGVyYWwgT3BlbiBNYXJrZXQgQ29tbWl0dGVlIChGT01DKSBkZWxsYSBGZWRlcmFsIFJlc2VydmUgw6ggY29tcG9zdG8gZGEgZG9kaWNpIG1lbWJyaSBlIHRpZW5lIG90dG8gcml1bmlvbmkgYWxsJ2Fubm8gcGVyIGRpc2N1dGVyZSBkZWxsZSBjb25kaXppb25pIGVjb25vbWljaGUgZSBmaW5hbnppYXJpZSBlIHZvdGFyZSBzdWxsZSBhZGVndWF0ZSBwb2xpdGljaGUgbW9uZXRhcmllIHBlciByYWdnaXVuZ2VyZSBnbGkgb2JpZXR0aXZpIGRpIG1hc3NpbWl6emFyZSBsJ29jY3VwYXppb25lIGUgc3RhYmlsaXp6YXJlIGkgcHJlenppLgoKRHVyYW50ZSBpbCBsb3JvIG1hbmRhdG8sIGkgc2V0dGUgbWVtYnJpIGRlbCBDb25zaWdsaW8gZGkgQW1taW5pc3RyYXppb25lIGRlbGxhIEZlZGVyYWwgUmVzZXJ2ZSBoYW5ubyBkaXJpdHRpIGRpIHZvdG8gcGVybWFuZW50aSBlIHBvc3Nvbm8gZXNwcmltZXJlIHVuIHZvdG8gY3J1Y2lhbGUgYWQgb2duaSByaXVuaW9uZTsgRXNzZW5kbyBpbCBjZW50cm8gZmluYW56aWFyaW8gZGVnbGkgU3RhdGkgVW5pdGksIE5ldyBZb3JrIMOoIGlsIGx1b2dvIHBpw7kgc3ZpbHVwcGF0byBlY29ub21pY2FtZW50ZSBlIGZpbmFuemlhcmlhbWVudGUgYXR0aXZvIGRlbCBwYWVzZSwgcXVpbmRpIGlsIFByZXNpZGVudGUgZGVsbGEgRmVkZXJhbCBSZXNlcnZlIGRpIE5ldyBZb3JrIGhhIGFuY2hlIGRpcml0dGkgZGkgdm90byBwZXJtYW5lbnRpLiBHbGkgYWx0cmkgMTEgcHJlc2lkZW50aSByZWdpb25hbGkgZGVsbGUgRmVkZXJhbCBSZXNlcnZlIGNvbmRpdmlkb25vIDQgZGlyaXR0aSBkaSB2b3RvIGUgc2kgYWx0ZXJuYW5vIGFubnVhbG1lbnRlLiBBbmNoZSBnbGkgdWZmaWNpYWxpIHNlbnphIGRpcml0dGkgZGkgdm90byBzb25vIHRlbnV0aSBhIHBhcnRlY2lwYXJlIGFsbGUgcml1bmlvbmkgZSBwYXJ0ZWNpcGFyZSBhbGxlIGRpc2N1c3Npb25pLgoKTmVsIDIwMjQsIG9sdHJlIGFnbGkgdWZmaWNpYWxpIGNvbiBkaXJpdHRvIGRpIHZvdG8gcGVybWFuZW50ZSwgaWwgY29taXRhdG8gZGkgdm90byByb3RhdGl2byDDqCBjb21wb3N0byBkYWwgcHJlc2lkZW50ZSBkZWxsYSBGZWQgZGkgQXRsYW50YSBCb3N0aWMsIGRhbCBwcmVzaWRlbnRlIGRlbGxhIEZlZCBkaSBTYW4gRnJhbmNpc2NvIERhbGV5LCBkYWwgcHJlc2lkZW50ZSBkZWxsYSBGZWQgZGkgQ2xldmVsYW5kIE1lc3RlciBlIGRhbCBwcmVzaWRlbnRlIGRlbGxhIEZlZCBkaSBSaWNobW9uZCBCYXJraW4uIEwnZWxlbmNvIGRlaSBtZW1icmkgZGVsIGNvbWl0YXRvIGRpIHZvdG8gcm90YXRpdm8gY2FtYmlhIGFubnVhbG1lbnRlLCBhdmVuZG8gY29zw6wgaWwgbWFnZ2lvciBpbXBhdHRvIHN1bCB2b3RvLgoKTmVsIGNvbXBsZXNzbywgdHJhIGkgZnVuemlvbmFyaSBjb24gZGlyaXR0byBkaSB2b3RvIHBlcm1hbmVudGUsIGwnYXR0ZWdnaWFtZW50byBkaSBXYWxsZXIgaGEgbW9zdHJhdG8gdW4gY2hpYXJvIHNwb3N0YW1lbnRvIHZlcnNvIHVuYSBwb3NpemlvbmUgImNvbG9tYmlhbmEiLCBtZW50cmUgbmVsIGNvbWl0YXRvIGRpIHZvdG8gcm90YW50ZSBkZWwgMjAyNCwgbGEgdGVuZGVuemEgdmVyc28gdW5hIHBvc2l6aW9uZSAiY29sb21iaWFuYSIgc2VtYnJhIGVzc2VyZSBhbmNvcmEgcGnDuSBmb3J0ZS4gRW50cmFuZG8gbmVsbCdhbm5vIGRlaSB0YWdsaSBkZWkgdGFzc2kgZGkgaW50ZXJlc3NlLCB1bmEgdGFsZSBjb21iaW5hemlvbmUgImZhbGNvIGUgY29sb21iYSIgcG90cmViYmUgcmVuZGVyZSBsYSBGZWRlcmFsIFJlc2VydmUgcGnDuSBhYmlsZS4KCjxkaXYgY2xhc3M9ImJsb2ctZGV0YWlscy1pbmZvIj4KPGRpdj5BdXRvcmU6PHN0cm9uZz5CeXJvbiBCLjwvc3Ryb25nPiwgUmljZXJjYXRvcmUgR2F0ZS5pbwo8ZGl2PlRyYWR1dHRvcmU6IEpveSBaLgo8ZGl2IGNsYXNzPSJpbmZvLXRpcHMiPipRdWVzdG8gYXJ0aWNvbG8gcmFwcHJlc2VudGEgc29sbyBsZSBvcGluaW9uaSBkZWwgcmljZXJjYXRvcmUgZSBub24gY29zdGl0dWlzY2UgYWxjdW4gc3VnZ2VyaW1lbnRvIGRpIGludmVzdGltZW50by4KPGRpdj4qR2F0ZS5pbyBzaSByaXNlcnZhIHR1dHRpIGkgZGlyaXR0aSBzdSBxdWVzdG8gYXJ0aWNvbG8uIFNhcsOgIGNvbnNlbnRpdG8gaWwgcmVwb3N0YWdnaW8gZGVsbCYjMzk7YXJ0aWNvbG8gYSBjb25kaXppb25lIGNoZSBzaSBmYWNjaWEgcmlmZXJpbWVudG8gYSBHYXRlLmlvLiBJbiB0dXR0aSBpIGNhc2ksIHNhcmFubm8gaW50cmFwcmVzZSBhemlvbmkgbGVnYWxpIHBlciB2aW9sYXppb25lIGRlbCBjb3B5cmlnaHQuCjwvZGl2PjxwPjwvcD4KPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+