PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo9ICAgIEQgbyBiIHIgbyBkIG8gmiBsIGkgICB1ICAgVklNICAgcCByIGkgciB1IOggbiBpIGsgIC0gICAgVmVyemlqYSAxLjcgICAgICA9Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCiAgICAgVmltIGplIHZybG8gbW/mYW4gZWRpdG9yIGtvamkgaW1hIG1ub2dvIG5hcmVkYmksIHByZXZpmmUgZGEgYmkgaWgKICAgICBzZSBzdmloIG92ZGplIHNwb21lbnVsby4gIE5hbWplbmEgcHJpcnXobmlrYSBqZSBvYmphc25pdGkgZG92b2xqbm8KICAgICBuYXJlZGJpIGtha28gYmkgcG/oZXRuaWNpIHpuYXRubyBsYWuaZSBrb3Jpc3RpbGkgb3ZhaiBzdmVzdHJhbiBlZGl0b3IuCgogICAgIFByaWJsaZ5ubyB2cmlqZW1lIHBvdHJlYm5vIHphIHVzcGplmmFuIHphdnKaZXRhayBwcmlydehuaWthIGplIG9rbwogICAgIDMwIG1pbnV0YSBhIG92aXNpIG8gdG9tZSBrb2xpa28g5mUgdGUgdnJlbWVuYSBvZHZvaml0aSB6YSB2amWeYmFuamUuCgogICAgIFVQT1pPUkVOSkU6CiAgICAgTmFyZWRiZSB1IG92b20gcHJpcnXobmlrdSDmZSBwcm9taWplbml0aSBvdmFqIHRla3N0LgogICAgIE5hcHJhdml0ZSBrb3BpanUgb3ZlIGRhdG90ZWtlIGtha28gYmkgc3RlIG5hIGlzdG9qIHZqZZ5iYWxpCiAgICAgKGFrbyBzdGUgcG9rcmVudWxpICJ2aW10dXRvciIgb3ZvIGplIHZl5iBrb3BpamEpLgoKICAgICBWcmxvIGplIHZhnm5vIHByaW1pamV0aXRpIGRhIGplIG92YWogcHJpcnXobmlrIG5hbWlqZW5qZW4gemEgdmplnmJhbmplLgogICAgIFByZWNpem5pamUsIG1vcmF0ZSBpenZymml0aSBuYXJlZGJlIHUgVmltLXUga2FrbyBiaSBzdGUgaXN0ZSBuYXXoaWxpCiAgICAgcHJhdmlsbm8ga29yaXN0aXRpLiBBa28gc2FtbyDoaXRhdGUgdGVrc3QsIHphYm9yYXZpdGkg5mUgdGUgbmFyZWRiZSEKCiAgICAgQWtvIGplIENhcHNMb2NrIHVrbGp16GVuIElTS0xKVchJVEUgZ2EuICBQcml0aXNrYWp0ZSB0aXBrdSAgaiAga2FrbwogICAgIGJpIHBvbWFrbGkga3Vyc29yIHN2ZSBkb2sgTGVrY2lqYSAxLjEgbmUgaXNwdW5pIGVrcmFuLgoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgkJICAgICAgTGVrY2lqYSAxLjE6ICBQT01JQ0FOSkUgS1VSU09SQQoKCiAqKiBaYSBwb21pY2FuamUga3Vyc29yYSwgcHJpdGlzbml0ZSBoLGosayxsIHRpcGtlIGtha28gamUgcHJpa2F6YW5vICoqCgkgICAgIF4KCSAgICAgawkJICAgIFNhdmpldDogIGggdGlwa2EgamUgbGlqZXZvIGkgcG9taehlIGt1cnNvciBsaWpldm8uCiAgICAgICA8IGgJIGwgPgkJICAgbCB0aXBrYSBqZSBkZXNubyBpIHBvbWnoZSBrdXJzb3IgZGVzbm8uCgkgICAgIGogICAgICAgICAgICAgICAgICAgICBqIGl6Z2xlZGEga2FvIHN0cmVsaWNhIHVzbWplcmVuYSBkb2xqZS4KCSAgICAgdgogIDEuIFBvbWnoaXRlIGt1cnNvciBwbyBla3JhbnUgZG9rIHNlIG5lIG5hdmlrbmV0ZSBuYSBrb3JpmnRlbmplLgoKICAyLiBEcp5pdGUgdGlwa3UgKGopIHByaXRpc251dG9tLgogICAgIFNhZGEgem5hdGUga2FrbyBkb+ZpIGRvIHNsamVkZeZlIGxla2NpamUuCgogIDMuIEtvcmlzdGXmaSB0aXBrdSBqIHByaWpl8Gl0ZSBuYSBzbGplZGXmdSBsZWtjaWp1IDEuMi4KCk5BUE9NRU5BOiAgQWtvIG5pc3RlIHNpZ3VybmkgmnRvIHN0ZSB6YXByYXZvIHByaXRpc251bGkgdXZpamVrIGtvcmlzdGl0ZQogICAgICAgICAgIHRpcGt1IDxFU0M+IGtha28gYmkgcHJlmmxpIHUgTm9ybWFsIG1vZCBpIG9uZGEgcG9rdZphanRlIHBvbm92bm8uCgpOQVBPTUVOQTogIEt1cnNvcnNrZSB0aXBrZSByYWRlIGlzdG8uICBLb3JpmnRlbmplIGhqa2wgdGlwYWthIGplIHpuYXRubwogICAgICAgICAgIGJynmUsIG5ha29uIJp0byBzZSBqZWRub20gbmF2aWtuZXRlIG5hIG5qaWhvdm8ga29yaZp0ZW5qZS4gIFN0dmFybm8hCgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkJICAgTGVrY2lqYSAxLjI6IElaTEFaIElaIFZJTS1hCgoKICAhISBVUE9aT1JFTkpFOiBQcmlqZSBpenZv8GVuamEgYmlsbyBrb2plZyBrb3Jha2EsCiAgICAgICAgICAgICAgICAgcHJv6Gl0YWp0ZSBjaWplbHUgbGVrY2lqdSEhCgogIDEuIFByaXRpc25pdGUgPEVTQz4gdGlwa3UgKFZpbSBqZSBzYWRhIHUgTm9ybWFsIG1vZHUpLgoKICAyLiBPdGlwa2FqdGU6CTpxISA8RU5URVI+LgogICAgIEl6bGF6IGl6IGVkaXRvcmEsIEdVQkUgc2Ugc3ZlIG5hcHJhdmxqZW5lIHByb21qZW5lLgoKICAzLiBLYWRhIHNlIHBvamF2aSBsanVza2EsIHV0aXBrYWp0ZSBuYXJlZGJ1IGtvamEgamUgcG9rcmVudWxhCiAgICAgb3ZhaiBwcmlydehuaWs6CQl2aW10dXRvciA8RU5URVI+CgogIDQuIEFrbyBzdGUgdXBhbXRpbGkgb3ZlIGtvcmFrZSwgaXp2cpppdGUgaWggcmVkb20gb2QgMSBkbyAzCiAgICAga2FrbyBiaSBwb25vdm5vIHBva3JlbnVsaSBlZGl0b3IuCgpOQVBPTUVOQTogIDpxISA8RU5URVI+ICBwb25pmnRhdmEgc3ZlIHByb21qZW5lIGtvamUgc3RlIG5hcHJhdmlsaS4KICAgICAgICAgICBVIHNsamVkZeZpbSBsZWtjaWphbWEgbmF16Gl0IOZlIHRlIGtha28gcHJvbWplbmUgc2HodXZhdGkuCgogIDUuIFBvbWFrbml0ZSBrdXJzb3IgbmEgTGVrY2lqdSAxLjMuCgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkgICAgTGVrY2lqYSAxLjM6IFBST01KRU5BIFRFS1NUQSAtIEJSSVNBTkpFCgoKCSAgICAgICoqIFByaXRpc25pdGUgIHggIHphIGJyaXNhbmplIHpuYWthIHBvZCBrdXJzb3JvbS4gKioKCiAgMS4gUG9tYWtuaXRlIGt1cnNvciBuYSBsaW5panUgb3puYehlbnUgcyAtLS0+LgoKICAyLiBLYWtvIGJpIHN0ZSBpc3ByYXZpbGkgcG9ncmWaa2UsIHBvbWnoaXRlIGt1cnNvciBkb2sgc2UKICAgICBuZSBidWRlIG5hbGF6aW8gbmEgc2xvdnUga29qZWcgdHJlYmF0ZSBpemJyaXNhdGkuCgogIDMuIFByaXRpc25pdGUgdGlwa3UgeCBrYWtvIGJpIHVrbG9uaWxpIG5lnmVsamVubyBzbG92by4KCiAgNC4gUG9ub3ZpdGUga29yYWtlIG9kIDIgZG8gNCBkb2sgbmUgaXNwcmF2aXRlIHN2ZSBwb2dyZZprZS4KCi0tLT4gS0tLcmF2YWEgamVlIHByZXNza2/oaWxhIG1tamVzZWNjYy4KCiAgNS4gTmFrb24gmnRvIGlzcHJhdml0ZSBsaW5panUsIHByaWpl8Gl0ZSBuYSBsZWtjaWp1IDEuNC4KCk5BUE9NRU5BOiAgS29yaXN0ZeZpIG92YWogcHJpcnXobmlrIG5lIHBva3WaYXZhanRlIHBhbXRpdGkKICAgICAgICAgICB2ZeYgdehpdGUgcHJpbWplbm9tLgoKCn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoJCSBMZWtjaWphIDEuNDogUFJPTUpFTkEgVEVLU1RBIC0gVUJBQ0lWQU5KRQoKCgkgICoqIFByaXRpc25pdGUgIGkgIHphIHViYWNpdmFuamUgdGVrc3RhIGlzcHJlZCBrdXJzb3JhLiAqKgoKICAxLiBQb21ha25pdGUga3Vyc29yIG5hIHBydnUgc2xqZWRl5nUgbGluaWp1IG96bmHoZW51IHMgLS0tPi4KCiAgMi4gS2FrbyBiaSBuYXByYXZpbGkgcHJ2dSBsaW5panUgaXN0b3ZqZXRub2ogZHJ1Z29qLCBwb21ha25pdGUKICAgICBrdXJzb3IgbmEgcHJ2aSB6bmFrIFBPU0xJSkUga29qZWcg5mUgdGUgdXRpcGthdGkgcG90cmViYW4gdGVrc3QuCgogIDMuIFByaXRpc25pdGUgIGkgIHRlIHV0aXBrYWp0ZSBwb3RyZWJuZSBuYWRvcHVuZS4KCiAgNC4gTmFrb24gmnRvIGlzcHJhdml0ZSBwb2dyZZprdSBwcml0aXNuaXRlIDxFU0M+IGtha28gYmkgdnJhdGlsaSBWaW0KICAgICB1IE5vcm1hbCBtb2QuIFBvbm92aXRlIGtvcmFrZSBvZCAyIGRvIDQga2FrbyBiaSBpc3ByYXZpbGkgc3ZlIHBvZ3JlmmtlLgoKLS0tPiBOZWRqZSBubyB0ZWthIG9kIHYgbGluLgotLS0+IE5lZG9zdGFqZSBuZZp0byB0ZWtzdGEgb2Qgb3ZlIGxpbmlqZS4KCiAgNS4gUHJpamXwaXRlIG5hIHNsamVkZeZ1IGxla2NpanUuCgoKCn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoJCSAgICBMZWtjaWphIDEuNTogUFJPTUpFTkEgVEVLU1RBIC0gRE9EQVZBTkpFCgoKCSAgICAgICAgICAgKiogUHJpdGlzbml0ZSAgQSAgemEgZG9kYXZhbmplIHRla3N0YS4gKioKCiAgMS4gUG9tYWtuaXRlIGt1cnNvciBuYSBwcnZ1IHNsamVkZeZ1IGxpbmlqdSBvem5h6GVudSBzIC0tLT4uCiAgICAgTmlqZSB2YZ5ubyBuYSBrb2plbSBzZSBzbG92dSBuYWxhemkga3Vyc29yIG5hIHRvaiBsaW5pamkuCgogIDIuIFByaXRpc25pdGUgIEEgIGkgbmFwcmF2aXRlIHBvdHJlYm5lIHByb21qZW5lLgoKICAzLiBOYWtvbiCadG8gc3RlIGRvZGFsaSB0ZWtzdCwgcHJpdGlzbml0ZSA8RVNDPgogICAgIHphIHBvdnJhdGFrIHUgTm9ybWFsIG1vZC4KCiAgNC4gUG9tYWtuaXRlIGt1cnNvciBuYSBkcnVndSBsaW5panUgb3puYehlbnUgcyAtLS0+CiAgICAgaSBwb25vdml0ZSBrb3Jha2UgMiBpIDMgZG9rIG5lIHBvcHJhdml0ZSB0ZWtzdC4KCi0tLT4gSW1hIG5lmnRvIHRla3N0YSBrb2ppIG5lZG9zdGFqZSBuCiAgICAgSW1hIG5lmnRvIHRla3N0YSBrb2ppIG5lZG9zdGFqZSBuYSBvdm9qIGxpbmlqaS4KLS0tPiBJbWEgbmWadG8gdGVrc3RhIGtvamkgbmUKICAgICBJbWEgbmWadG8gdGVrc3RhIGtvamkgbmVkb3N0YWplIGJhmiBvdmRqZS4KCiAgNS4gUHJpamXwaXRlIG5hIGxla2NpanUgMS42Lgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkgICAgIExla2NpamEgMS42OiBQUk9NSkVOQSBEQVRPVEVLRQoKCiAgICAgKiogS29yaXN0aXRlICA6d3EgIHphIHNwcmVtYW5qZSB0ZWtzdGEgaSBuYXB1mnRhbmplIFZpbS1hLiAqKgoKICAhISBVUE9aT1JFTkpFOiBQcmlqZSBpenZymmF2YW5qYSBiaWxvIGtvamVnIGtvcmFrYSwgcHJv6Gl0YWp0ZSBsZWtjaWp1ISEKCiAgMS4gSXph8Gl0ZSBpeiBwcm9ncmFtYSBrYW8gc3RvIHN0ZSBuYXByYXZpbGkgdSBsZWtjaWppIDEuMjogIDpxIQoKICAyLiBJeiBsanVza2UgdXRpcGthanRlIHNsamVkZeZ1IG5hcmVkYnU6ICB2aW0gdHV0b3IgPEVOVEVSPgogICAgICd2aW0nIGplIG5hcmVkYmEgcG9rcmV0YW5qYSBWaW0gZWRpdG9yYSwgJ3R1dG9yJyBqZSBpbWUgZGF0b3Rla2Uga29qdQogICAgIJ5lbGl0ZSB1cmXwaXZhdGkuICBLb3Jpc3RpdGUgZGF0b3Rla3Uga29qdSBpbWF0ZSBvdmxhc3RpIG1pamVuamF0aS4KCiAgMy4gVWJhY2l0ZSBpIGl6YnJpmml0ZSB0ZWtzdCBrYW8gmnRvIHN0ZSB0byBuYXByYXZpbGkgdSBsZWtjaWphbWEgcHJpamUuCgogIDQuIFNh6HV2YWp0ZSBwcm9tamVuamVuaSB0ZWtzdCBpIGl6YfBpdGUgaXogVmltLWE6ICA6d3EgIDxFTlRFUj4KCiAgNS4gUG9ub3ZubyBwb2tyZW5pdGUgdmltdHV0b3IgaSBuYXN0YXZpdGUg6Gl0YXRpIHNhnmV0YWsga29qaSBzbGplZGkuCgogIDYuIE5ha29uIHN0byBwcm/oaXRhdGUgZ29ybmplIGtvcmFrZSBpIHUgcG90cHVub3N0aSBpaCByYXp1bWlqZXRlOgogICAgIGl6dnKaaXRlIGloLgoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgkJCSAgICAgIExla2NpamEgMSBTQY5FVEFLCgoKICAxLiBLdXJzb3Igc2UgcG9taehlIHN0cmVsaWNhbWEgaWxpIHBvbW/mdSBoamtsIHRpcGFrYS4KCWggKGxpamV2bykJaiAoZG9samUpCWsgKGdvcmUpCWwgKGRlc25vKQoKICAyLiBQb2tyZXRhbmplIFZpbS1hIGl6IGxqdXNrZTogIHZpbSBJTUVfREFUT1RFS0UgPEVOVEVSPgoKICAzLiBJemxhejoJPEVTQz4JOnEhIDxFTlRFUj4gCXN2ZSBwcm9tamVuZSBzdSBpemd1YmxqZW5lLgogICAgICAgSUxJOgk8RVNDPgk6d3EgPEVOVEVSPiAJcHJvbWplbmUgc3Ugc2HodXZhbmUuCgogIDQuIEJyaXNhbmplIHpuYWthIG5hIGtvamVtIHNlIG5hbGF6aSBrdXJzb3I6ICB4CgogIDUuIFViYWNpdmFuamEgaWxpIGRvZGF2YW5qZSB0ZWtzdGE6CgkgaSAgIHV0aXBrYWp0ZSB0ZWtzdCA8RVNDPgl1bm9zIGlzcHJlZCBrdXJzb3JhCgkgQSAgIHV0aXBrYWp0ZSB0ZWtzdCA8RVNDPglkb2RhdmFuamUgbmEga3JhanUgbGluaWplCgpOQVBPTUVOQTogIFRpcGthbmplbSB0aXBrZSA8RVNDPiBwcmViYWN1amUgVmltIHUgTm9ybWFsIG1vZCBpCiAgICAgICAgICAgcHJla2lkYSBuZZ5lbGplbnUgaWxpIGRqZWxvbWnobm8gemF2cpplbnUgbmFyZWRidS4KCk5hc3Rhdml0ZSDoaXRhdGkgTGVrY2lqdSAyLgoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgkJCUxla2NpamEgMi4xOiBOQVJFREJFIEJSSVNBTkpBCgoKCQkgKiogVGlwa2FqdGUgIGR3ICB6YSBicmlzYW5qZSByaWpl6GkuICoqCgogIDEuIFByaXRpc25pdGUgIDxFU0M+ICBrYWtvIGJpIGJpbGkgc2lndXJuaSBkYSBqZSBWaW0gdSBOb3JtYWwgbW9kdS4KCiAgMi4gUG9tYWtuaXRlIGt1cnNvciBuYSBsaW5panUgb3puYehlbnUgcyAtLS0+LgoKICAzLiBQb21ha25pdGUga3Vyc29yIG5hIHBv6GV0YWsgcmlqZehpIGtvanUgdHJlYmEgaXpicmlzYXRpLgoKICA0LiBPdGlwa2FqdGUgIGR3ICBrYWtvIGJpIHVrbG9uaWxpIHJpamXoLgoKTkFQT01FTkE6ICBWaW0g5mUgcHJpa2F6YXRpIHNsb3ZvICBkICBuYSB6YWRuam9qIGxpbmlqaSBrYWQgZ2Egb3RpcGthdGUuCiAgICAgICAgICAgVmltIOhla2EgZGEgb3RpcGthdGUgIHcgLiAgQWtvIGplIHByaWthemFubyBuZWtvIGRydWdvIHNsb3ZvLAogICAgICAgICAgIGtyaXZvIHN0ZSBvdGlwa2FsaTsgcHJpdGlzbml0ZSA8RVNDPiBpIHBva3WaYWp0ZSBwb25vdm5vLgoKLS0tPiBOZWtlIHJpamXoaSBzbWlqZZpubyBuZSBwcmlwYWRhanUgbmEgcGFwaXIgb3ZvaiByZehlbmljaS4KCiAgNS4gUG9ub3ZpdGUga29yYWtlIDMgaSA0IGRvayBuZSBpc3ByYXZpdGUgcmXoZW5pY3U7CiAgICAgcHJpamXwaXRlIG5hIExla2NpanUgMi4yLgoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgkJICAgICAgTGVrY2lqYSAyLjI6IEpPiiBCUklTQU5KQQoKCiAgICAgICAqKiBPdGlwa2FqdGUgIGQkIHphIGJyaXNhbmplIHpuYWtvdmEgZG8ga3JhamEgbGluaWplLiAqKgoKICAxLiBQcml0aXNuaXRlICA8RVNDPiAga2FrbyBiaSBiaWxpCiAgICAgc2lndXJuaSBkYSBqZSBWaW0gdSBOb3JtYWwgbW9kdS4KCiAgMi4gUG9tYWtuaXRlIGt1cnNvciBuYSBsaW5panUgb3puYehlbnUgcyAgLS0tPi4KCiAgMy4gUG9tYWtuaXRlIGt1cnNvciBkbyBrcmFqYSBpc3ByYXZuZSByZehlbmljZQogICAgIChQT1NMSkUgcHJ2ZSAuICkuCgogIDQuIE90aXBrYWp0ZSAgZCQKICAgICBrYWtvIGJpIGl6YnJpc2FsaSBzdmUgem5ha292ZSBkbyBrcmFqYSBsaW5pamUuCgotLS0+IE5ldGtvIGplIHV0aXBrYW8ga3JhaiBvdmUgbGluaWplIGR2YXB1dC4ga3JhaiBvdmUgbGluaWplIGR2YXB1dC4KCiAgNS4gUHJpamXwaXRlIG5hIExla2NpanUgMi4zIHphIGJvbGplIG9iamGabmplbmplLgoKCgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCSAgICAgIExla2NpamEgMi4zOiBVS1JBVEtPIE8gT1BFUkFUT1JJTUEgSSBQT0tSRVRJTUEKCgogIE1ub2dvIG5hcmVkYmkga29qZSBtaWplbmphanUgdGVrc3Qgc2Ugc2FzdG9qZSBvZCBvcGVyYXRvcmEgaSBwb2tyZXRhLgogIE9ibGlrIG5hcmVkYmUgYnJpc2FuamEgc2EgIGQgIG9wZXJhdG9yb20gamUgc2xqZWRl5mk6CgogIAlkICAgcG9rcmV0CgogIFByaSDoZW11IGplOgogICAgZCAgICAgIC0gb3BlcmF0b3IgYnJpc2FuamEuCiAgICBwb2tyZXQgLSBvbm8gbmEg6GVtdSDmZSBzZSBvcGVyYWNpamEgaXp2cpphdmF0aSAobmF2ZWRlbm8gdSBuYXN0YXZrdSkuCgogIEtyYXRrYSBsaXN0YSBwb2tyZXRhOgogICAgdyAtIHN2ZSBkbyBwb+hldGthIHNsamVkZeZlIHJpamXoaSwgTkUgVUtMSlXIVUpVxkkgcHJ2byBzbG92by4KICAgIGUgLSBzdmUgZG8ga3JhamEgdHJlbnV0YehuZSByaWpl6GksIFVLTEpVyFVKVcZJIHphZG5qZSBzbG92by4KICAgICQgLSBzdmUgZG8ga3JhamUgbGluaWplLCBVS0xKVchVSlXGSSB6YWRuamUgc2xvdm8uCgogIFRpcGthbmplbSAgZGUgIOZlIHNlIGJyaXNhdGkgb2Qga3Vyc29yYSBkbyBrcmFqYSByaWpl6GkuCgpOQVBPTUVOQTogIFByaXRpc2thanXmaSBzYW1vIHBva3JldGUgZG9rIHN0ZSB1IE5vcm1hbCBtb2R1IGJleiBvcGVyYXRvcmEg5mUKICAgICAgICAgICBwb21pY2F0aSBrdXJzb3Iga2FvIJp0byBqZSBuYXZlZGVuby4KCn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoJCSAgTGVrY2lqYSAyLjQ6IEtPUkmKVEVOSkUgQlJPSkFOSkEgWkEgUE9LUkVURQoKCiAgKiogVGlwa2FuamVtIG5la29nIGJyb2phIHByaWplIHBva3JldGEsIHBva3JldCBzZSBpenZymmF2YSB0b2xpa28gcHV0YS4gKioKCiAgMS4gUG9tYWtuaXRlIGt1cnNvciBuYSBsaW5panUgb3puYehlbnUgcyAtLS0+LgoKICAyLiBPdGlwa2FqdGUgIDJ3ICBkYSBwb21ha25ldGUga3Vyc29yIGR2aWplIHJpamXoaSBuYXByaWplZC4KCiAgMy4gT3RpcGthanRlICAzZSAgZGEgcG9tYWtuZXRlIGt1cnNvciBuYSBrcmFqIHRyZeZlIHJpamXoaSBuYXByaWplZC4KCiAgNC4gT3RpcGthanRlICAwICAobnVsdSkgZGEgcG9tYWtuZXRlIGt1cnNvciBuYSBwb+hldGFrIGxpbmlqZS4KCiAgNS4gUG9ub3ZpdGUga29yYWtlIDIgaSAzIHMgbmVraW0gZHJ1Z2ltIGJyb2pldmltYS4KCi0tLT4gUmXoZW5pY2Egc2EgcmlqZehpbWEgcG8ga29qb2ogbW+eZXRlIHBvbWljYXRpIGt1cnNvci4KCiAgNi4gUHJpamXwaXRlIG5hIExla2NpanUgMi41LgoKCgoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgICAgICBMZWtjaWphIDIuNTogS09SSYpURU5KRSBCUk9KQU5KQSBaQSBWRcZFIEJSSVNBTkpFCgoKCSAgKiogVGlwa2FuamUgYnJvamEgTiBzIG9wZXJhdG9yb20gcG9uYXZsamEgZ2EgTi1wdXRhLiAqKgoKICBVIGtvbWJpbmFjaWppIG9wZXJhdG9yYSBicmlzYW5qYSBpIHBva3JldGEgc3BvbWVudXRpaCBpem5hZAogIHViYWN1amV0ZSBicm9qIHByaWplIHBva3JldGEga2FrbyBiaSBpemJyaXNhbGkgdmmaZSB6bmFrb3ZhOgoKCSBkICAgYnJvaiAgIHBva3JldAoKICAxLiBQb21ha25pdGUga3Vyc29yIG5hIHBydm8gc2xvdm8gdSByaWpl6Gkgc2EgVkVMSUtJTSBTTE9WSU1BCiAgICAgb3puYehlbnUgcyAtLS0+LgoKICAyLiBPdGlwa2FqdGUgIDJkdyAgZGEgaXpicmmaZXRlIGR2aWplIHJpamXoaSBzYSBWRUxJS0lNIFNMT1ZJTUEKCiAgMy4gUG9ub3ZpdGUga29yYWtlIDEgaSAyIHNhIHJhemxp6Gl0aW0gYnJvamV2aW1hIGRhIGl6YnJpmmV0ZQogICAgIHV6YXN0b3BuZSByaWpl6Gkgc2EgVkVMSUtJTSBTTE9WSU1BIHNhIHNhbW8gamVkbm9tIG5hcmVkYm9tLgoKLS0tPiBvdmEgQUJDyMYgRNBFIGxpbmlqYSBGR0hJIEpLIExNTiBPUCByaWpl6GkgamUgUlOKIFRVVlqOIHBvcHJhdmxqZW5hLgoKCgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkgICAgIExla2NpamEgMi42OiBPUEVSSVJBTkpFIE5BRCBMSU5JSkFNQQoKCgkgICAgICAgKiogT3RpcGthanRlICBkZCAgIHphIGJyaXNhbmplIGNpamVsZSBsaW5pamUuICoqCgogIFpib2cgdehlc3RhbG9zdGkgYnJpc2FuamEgY2lqZWxpaCBsaW5pamEsIGRpemFqbmVyaSBWaS1hIHN1IG9kbHXoaWxpIGRhCiAgamUgbGFrmmUgYnJpc2F0aSBsaW5pamUgdGlwa2FuamVtICBkICBkdmFwdXQuCgogIDEuIFBvbWFrbml0ZSBrdXJzb3IgbmEgZHJ1Z3UgbGluaWp1IHUgZG9uam9qIGtpdGljaS4KICAyLiBPdGlwa2FqdGUgIGRkICBrYWtvIGJpIGl6YnJpc2FsaSBsaW5panUuCiAgMy4gUG9tYWtuaXRlIGt1cnNvciBuYSDoZXR2cnR1IGxpbmlqdS4KICA0LiBPdGlwa2FqdGUgICAyZGQgICBrYWtvIGJpIGl6YnJpc2FsaSBkdmlqZSBsaW5pamUuCgotLS0+ICAxKSAgUnWeZSBzdSBjcnZlbmUsCi0tLT4gIDIpICBQbGGeYSBqZSBzdXBlciwKLS0tPiAgMykgIExqdWJpY2Ugc3UgcGxhdmUsCi0tLT4gIDQpICBJbWFtIGF1dG8sCi0tLT4gIDUpICBTYXRvdmkgdWthenVqdSB2cmlqZW1lLAotLS0+ICA2KSAgimXmZXIgamUgc2xhZGFrCi0tLT4gIDcpICBLYW8gaSB0aS4KCgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkgICAgICBMZWtjaWphIDIuNzogTkFSRURCQSBQT05JilRFTkpBCgoKICAqKiBQcml0aXNuaXRlICB1ICB6YSBwb25pmnRlbmplIHphZG5qZSBuYXJlZGJlLCAgVSAgemEgY2lqZWx1IGxpbmlqdS4gKioKCiAgMS4gUG9tYWtuaXRlIGt1cnNvciBuYSBsaW5panUgb3puYehlbnUgcyAtLS0+IGkgcG9zdGF2aXRlIGt1cnNvciBuYSBwcnZ1CiAgICAgcG9ncmWaa3UuCiAgMi4gT3RpcGthanRlICB4ICBrYWtvIGJpIGl6YnJpc2FsaSBwcnZpIG5lnmVsamVuaSB6bmFrLgogIDMuIE90aXBrYWp0ZSAgdSAga2FrbyBiaSBwb25pmnRpbGkgemFkbmp1IGl6dnKaZW51IG5hcmVkYnUuCiAgNC4gT3ZhaiBwdXQgaXNwcmF2aXRlIHN2ZSBwb2dyZZprZSBuYSBsaW5pamkga29yaXN0ZeZpICB4ICBuYXJlZGJ1LgogIDUuIFNhZGEgdXRpcGthanRlIHZlbGlrbyAgVSAga2FrbyBiaSBwb25pmnRpbGkgc3ZlIHByb21qZW5lCiAgICAgbmEgbGluaWppLCB2cmHmYWp15mkgamUgdSBwcmlqYZpuamUgc3RhbmplLgogIDYuIFNhZGEgdXRpcGthanRlICB1ICBuZWtvbGlrbyBwdXRhIGtha28gYmkgcG9uaZp0aWxpICBVCiAgICAgaSBwcmlqYZpuamUgbmFyZWRiZS4KICA3LiBTYWRhIHV0aXBrYWp0ZSBDVFJMLVIgKGRynmXmaSAgQ1RSTCAgdGlwa3UgcHJpdGlzbnV0b20gZG9rCiAgICAgbmUgcHJpdGlzbmV0ZSAgUikgbmVrb2xpa28gcHV0YSBrYWtvIGJpIHZyYXRpbGkgcHJvbWplbmUKICAgICAocG9uaZp0aWxpIHBvbmmadGVuamEpLgoKLS0tPiBQb29wcmF2aXRlIHBvZ3JlmmtlIG5uYSBvdnZvaiBsaW5pamkgaWkgcG9vbmmadGl0ZWVlIGloLgoKICA4LiBWcmxvIGtvcmlzbmUgbmFyZWRiZS4gIFByaWpl8Gl0ZSBuYSBzYZ5ldGFrIExla2NpamUgMi4KCn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoJCQkgICAgICBMZWtjaWphIDIgU0GORVRBSwoKCiAgMS4gQnJpc2FuamUgb2Qga3Vyc29yYSBkbyBzbGplZGXmZSByaWpl6Gk6ICAgIGR3CiAgMi4gQnJpc2FuamUgb2Qga3Vyc29yYSBkbyBrcmFqYSBsaW5pamU6ICAgIGQkCiAgMy4gQnJpc2FuamUgY2lqZWxlIGxpbmlqZTogICAgZGQKCiAgNC4gWmEgcG9uYXZsamFuamUgcG9rcmV0YSBwcmV0aG9kaXRlIG11IGJyb2o6ICAgMncKICA1LiBPYmxpayBuYXJlZGJlIG1pamVuamFuamE6CiAgICAgICAgICAgICAgIG9wZXJhdG9yICAgW2Jyb2pdICAgcG9rcmV0CiAgICAgZ2RqZSBqZToKICAgICAgIG9wZXJhdG9yIC0gmnRvIG5hcHJhdml0aSwgbnByLiAgIGQgIHphIGJyaXNhbmplCiAgICAgICBbYnJval0gICAtIG5lb2JhdmV6YW4gYnJvaiBwb25hdmxqYW5qYSBwb2tyZXRhCiAgICAgICBwb2tyZXQgICAtIGtyZXRhbmplIHBvIHRla3N0dSBwbyBrb2plbSBzZSBvcGVyaXJhLAogICAgICAgICAgICAgICAgICBrYW8gmnRvIGplOiB3IChyaWpl6CksICQgKGtyYWogbGluaWplKSwgaXRkLgoKICA2LiBQb3N0YXZsamFuamUga3Vyc29yYSBuYSBwb+hldGFrIGxpbmlqZTogIDAKCiAgNy4gWmEgcG9uaZp0ZW5qZSBwcmV0aG9kbmloIHByb21qZW5hLCBwcml0aXNuaXRlOgkgIHUgIChtYWxvIHUpCiAgICAgWmEgcG9uaZp0ZW5qZSBzdmloIHByb21qZW5hIG5hIGxpbmlqaSwgcHJpdGlzbml0ZTogICBVICAodmVsaWtvIFUpCiAgICAgWmEgdnJh5mFuamEgcHJvbWplbmEsIHV0aXBrYWp0ZToJQ1RSTC1SCgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkgICAgICAgTGVrY2lqYSAzLjE6IE5BUkVEQkEgUE9TVEFWSQoKCgkqKiBwICB6YSB1bm9zIHByZXRob2RubyBpemJyaXNhbm9nIHRla3N0YSBpemEga3Vyc29yYS4gKioKCiAgMS4gUG9tYWtuaXRlIGt1cnNvciBuYSBwcnZ1IHNsamVkZeZ1IGxpbmlqdSBvem5h6GVudSBzIC0tLT4uCgogIDIuIE90aXBrYWp0ZSAgZGQgIGtha28gYmkgaXpicmlzYWxpIGxpbmlqdSBpIHNwcmVtaWxpIGplIHUgVmltIHJlZ2lzdGFyLgoKICAzLiBQb21ha25pdGUga3Vyc29yIG5hIGxpbmlqdSBjKSwgSVpOQUQgbGluaWplIGtvanUgdHJlYmF0ZSB1bmlqZXRpLgoKICA0LiBPdGlwa2FqdGUgIHAgIGtha28gYmkgcG9zdGF2aWxpIGxpbmlqdSBpc3BvZCBrdXJzb3JhLgoKICA1LiBQb25vdml0ZSBrb3Jha2UgMiBkbyA0IGtha28gYmkgcG9zdGF2aWxpIHN2ZSBsaW5pamUgdSBwcmF2aWxub20KICAgICByYXNwb3JlZHUuCgotLS0+IGQpIE1vnmWaIGxpIGkgdGkgbmF16Gl0aT8KLS0tPiBiKSBManViaWNlIHN1IHBsYXZlLAotLS0+IGMpIEludGVsaWdlbmNpamEgamUgbmF16GVuYSwKLS0tPiBhKSBSdZ5lIHN1IGNydmVuZSwKCgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkgICAgICAgTGVrY2lqYSAzLjI6IE5BUkVEQkEgUFJPTUpFTkUKCgogICAgICAqKiBPdGlwa2FqdGUgIHJ4ICB6YSB6YW1qZW51IHNsb3ZhIGlzcG9kIGt1cnNvcmEgc2Egc2xvdm9tICB4IC4gKioKCiAgMS4gUG9tYWtuaXRlIGt1cnNvciBuYSBwcnZ1IHNsamVkZeZ1IGxpbmlqdSBvem5h6GVudSBzIC0tLT4uCgogIDIuIFBvbWFrbml0ZSBrdXJzb3IgdGFrbyBkYSBzZSBuYWxhemkgbmEgcHJ2b2ogcG9ncmWaY2kuCgogIDMuIE90aXBrYWp0ZSAgciAgaSBuYWtvbiB0b2dhIGlzcHJhdmFuIHpuYWsgbmEgdG9tIG1qZXN0dS4KCiAgNC4gUG9ub3ZpdGUga29yYWtlIDIgaSAzIHN2ZSBkb2sgcHJ2YQogICAgIGxpbmlqZSBuZSBidWRlIGlzdG92amV0bmEgZHJ1Z29qLgoKLS0tPiAgS2VkZSBqdSBvdnUgbGltaWphIHR1cGphbmEsIG5hdGtvIGplIHByb3R1c2thbyBrcnV2ZSB0dXBrZSEKLS0tPiAgS2FkYSBqZSBvdmEgbGluaWphIHRpcGthbmEsIG5ldGtvIGplIHByaXRpc2thbyBrcml2ZSB0aXBrZSEKCiAgNS4gUHJpamXwaXRlIG5hIExla2NpanUgMy4yLgoKTkFQT01FTkE6ICBQcmlzamV0aXRlIGRhIHRyZWJhdGUgdehpdGkgdmplnmJhbmplbSwgbmUgcGFt5mVuamVtLgoKCn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoJCSAgICBMZWtjaWphIDMuMzogT1BFUkFUT1IgTUlKRU5KQU5KQQoKCgkgICoqIFphIG1pamVuamFuamUgZG8ga3JhamEgcmlqZehpLCBpc3RpcGthanRlICBjZSAuICoqCgogIDEuIFBvbWFrbml0ZSBrdXJzb3IgbmEgcHJ2dSBzbGplZGXmdSBsaW5panUgb3puYehlbnUgcyAtLS0+LgoKICAyLiBQb3N0YXZpdGUga3Vyc29yIG5hICBhICB1ICBsYWNrbWIuCgogIDMuIE90aXBrYWp0ZSAgY2UgIGkgaXNwcmF2aXRlIHJpamXoICh1IG92b20gc2x16GFqdSBvdGlwa2FqdGUgIGluaWphICkuCgogIDQuIFByaXRpc25pdGUgPEVTQz4gaSBwb21ha25pdGUga3Vyc29yIG5hIHNsamVkZeZpIHpuYWsKICAgICBrb2plZyBqZSBwb3RyZWJubyBpc3ByYXZpdGkuCgogIDUuIFBvbm92aXRlIGtvcmFrZSAzIGkgNCBzdmUgZG9rIHBydmEgcmXoZW5pY2EgbmUgcG9zdGFuZSBpc3RvdmpldG5hCiAgICAgZHJ1Z29qLgoKLS0tPiBPdmEgbGFja21iIGltYSBuZWtvbGlrbyByamxjYWgga29qZSB0cmZjYiBtaWpkbWxmc3ouCi0tLT4gT3ZhIGxpbmlqYSBpbWEgbmVrb2xpa28gcmlqZehpIGtvamUgdHJlYmEgbWlqZW5qYXRpLgoKUHJpbWlqZXRpdGUgZGEgIGNlICBicmmaZSByaWpl6CBpIHBvc3RhdmxqYSBWaW0gdSBJbnNlcnQgbW9kLgoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgkgICAgICAgICBMZWtjaWphIDMuNDogSk+KIE1JSkVOSkFOSkEgS09SSYpURU5KRU0gYwoKCiAgICAqKiBOYXJlZGJhIG1pamVuamFuamEgc2Uga29yaXN0aSBzYSBpc3RpbSBwb2tyZXRpbWEga2FvIGkgYnJpc2FuamUuICoqCgogIDEuIE9wZXJhdG9yIG1pamVuamFuamEgc2Uga29yaXN0aSBuYSBpc3RpIG5h6GluIGthbyBpIG9wZXJhdG9yIGJyaXNhbmphOgoKICAgICAgICAgYyAgICBbYnJval0gICBwb2tyZXQKCiAgMi4gUG9rcmV0aSBzdSBpc3RpLCBucHI6ICAgdyAocmlqZegpIGkgICQgKGtyYWogbGluaWplKS4KCiAgMy4gUG9tYWtuaXRlIGt1cnNvciBuYSBwcnZ1IHNsamVkZeZ1IGxpbmlqdSBvem5h6GVudSBzIC0tLT4uCgogIDQuIFBvbWFrbml0ZSBrdXJzb3IgbmEgcHJ2dSBwb2dyZZprdS4KCiAgNS4gT3RpcGthanRlICBjJCAgaSB1dGlwa2FqdGUgb3N0YXRhayBsaW5pamUgdGFrbyBkYSBidWRlIGlzdG92amV0bmEKICAgICBkcnVnb2ogdGUgcHJpdGlzbml0ZSA8RVNDPi4KCi0tLT4gS3JhaiBvdmUgbGluaWplIHRyZWJhIHBvbW/mIHRha28gZGEgaXpnbGVkYSBrYW8gbGluaWphIGlzcG9kLgotLS0+IEtyYWogb3ZlIGxpbmlqZSB0cmViYSBpc3ByYXZpdGkga29yaZp0ZW5qZW0gYyQgbmFyZWRiZS4KCk5BUE9NRU5BOiAgTW+eZXRlIGtvcmlzdGl0aSBCYWNrc3BhY2UgemEgaXNwcmF2bGphbmplIGdyZZpha2EuCn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoJCQkgICAgICBMZWtjaWphIDMgU0GORVRBSwoKCiAgMS4gWmEgcG9zdGF2bGphbmplIHRla3N0YSBrb2ppIGplIHVwcmF2byBpemJyaXNhbiwgcHJpdGlzbml0ZSAgcCAuIE92bwogICAgIHBvc3RhdmxqYSB0ZWtzdCBJWkEga3Vyc29yYSAoYWtvIGplIHBhayBsaW5pamEgaXpicmlzYW5hIHRla3N0IHNlCiAgICAgcG9zdGF2bGphIG5hIGxpbmlqdSBpc3BvZCBrdXJzb3JhKS4KCiAgMi4gWmEgcHJvbWplbnUgem5ha2EgbmEga29qZW0gc2UgbmFsYXppIGt1cnNvciwgcHJpdGlzbml0ZSAgciAgaSBuYWtvbiB0b2dhCiAgICAgnmVsamVuaSB6bmFrLgoKICAzLiBPcGVyYXRvciBtaWplbmphbmphIGRvenZvbGphdmEgcHJvbWplbnUgdGVrc3RhIG9kIGt1cnNvcmEgZG8gcG96aWNpamUgZG8KICAgICBrb2plIGRvdmVkZSBwb2tyZXQuIHRqLiBPdGlwa2FqdGUgIGNlICB6YSBtaWplbmphbmplIG9kIGt1cnNvcmEgZG8ga3JhamEKICAgICByaWpl6GksIGMkICB6YSBtaWplbmphbmplIG9kIGt1cnNvcmEgZG8ga3JhamEgbGluaWplLgoKICA0LiBPYmxpayBuYXJlZGJlIG1pamVuamFuamE6CgoJIGMgICBbYnJval0gICBwb2tyZXQKClByaWpl8Gl0ZSBuYSBzbGplZGXmdSBsZWtjaWp1LgoKCgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCSAgICAgIExla2NpamEgNC4xOiBQT1pJQ0lKQSBLVVJTT1JBIEkgU1RBVFVTIERBVE9URUtFCgogICoqIENUUkwtRyB6YSBwcmlrYXogcG96aWNpamUga3Vyc29yYSB1IGRhdG90ZWNpIGkgc3RhdHVzIGRhdG90ZWtlLgogICAgIFByaXRpc25pdGUgIEcgIHphIHBvbWljYW5qZSBrdXJzb3JhIG5hIG5la3UgbGluaWp1IHUgZGF0b3RlY2kuICoqCgpOQVBPTUVOQTogIFByb+hpdGFqdGUgY2lqZWx1IGxla2NpanUgcHJpamUgaXp2cpplbmphIGJpbG8ga29qZWcga29yYWthISEKCiAgMS4gRHKeaXRlIEN0cmwgdGlwa3UgcHJpdGlzbnV0b20gaSBwcml0aXNuaXRlICBnIC4gIFVrcmF0a286IENUUkwtRy4KICAgICBWaW0g5mUgaXNwaXNhdGkgcG9ydWt1IG5hIGRudSBla3JhbmEgc2EgaW1lbm9tIGRhdG90ZWtlIGkgcG96aWNpam9tCiAgICAga3Vyc29yYSB1IGRhdG90ZWNpLiAgWmFwYW10aXRlIGJyb2ogbGluaWplIHphIDMuIGtvcmFrLgoKTkFQT01FTkE6ICBNb55ldGUgdmlkamV0aSBwb3ppY2lqdSBrdXJzb3JhIHUgZG9uamVtIGRlc25vbSBrdXR1IGFrbwogICAgICAgICAgIGplIHBvc3RhdmthICdydWxlcicgYWt0aXZpcmFuYSAob2JqYZpuamVubyB1IDYuIGxla2NpamkpLgoKICAyLiBQcml0aXNuaXRlICBHICB6YSBwb21pY2FuamUga3Vyc29yYSBuYSBrcmFqIGRhdG90ZWtlLgogICAgIE90aXBrYWp0ZSAgZ2cgIHphIHBvbWljYW5qZSBrdXJzb3JhIG5hIHBv6GV0YWsgZGF0b3Rla2UuCgogIDMuIE90aXBrYWp0ZSBicm9qIGxpbmlqZSBuYSBrb2pvaiBzdGUgYmlsaSBtYWxvcHJpamUgaSB6YXRpbSAgRyAuICBLdXJzb3IKICAgICDmZSBzZSB2cmF0aXRpIG5hIGxpbmlqdSBuYSBrb2pvaiBzZSBuYWxhemlvIGthZGEgc3RlIG90aXBrYWxpIENUUkwtRy4KCiAgNC4gQWtvIHN0ZSBzcHJlbW5pLCBpenZymml0ZSBrb3Jha2Ugb2QgMSBkbyAzLgoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgkJCUxla2NpamEgNC4yOiBOQVJFREJFIFRSQY5FTkpBCgogICAgICAgKiogT3RpcGthanRlICAvICBpIG5ha29uIHRvZ2EgaXpyYXoga29qZWcgnmVsaXRlIHRyYZ5pdGkuICoqCgogIDEuIFUgTm9ybWFsIG1vZHUgb3RpcGthanRlICAvICB6bmFrLiAgUHJpbWlqZXRpdGUgZGEgc2Ugem5hawogICAgIHBvamF2aW8gemFqZWRubyBzYSBrdXJzb3JvbSBuYSBkbnUgZWtyYW5hIGthbyBrb2QgIDogIG5hcmVkYmUuCgogIDIuIFNhZGEgb3RpcGthanRlICdncnJycmWaa2EnIDxFTlRFUj4uICBUbyBqZSByaWpl6CBrb2p1IHphcHJhdm8gdHJhnml0ZS4KCiAgMy4gWmEgcG9ub3ZubyB0cmGeZW5qZSBpc3RvZyBpenJhemEsIG90aXBrYWp0ZSAgbiAuCiAgICAgWmEgdHJhnmVuamUgaXN0b2cgaXpyYXphIGFsaSB1IHN1cHJvdG5vbSBzbWplcnUsIG90aXBrYWp0ZSAgTiAuCgogIDQuIFphIHRyYZ5lbmplIGl6cmF6YSB1bmF0cmFnLCBrb3Jpc3RpdGUgID8gIHVtamVzdG8gIC8gLgoKICA1LiBaYSBwb3ZyYXRhayBuYSBwcmV0aG9kbnUgcG96aWNpanUga29yaXN0aXRlICBDVFJMLU8gIChkcp5pdGUgQ3RybAogICAgIHByaXRpc251dGltIGRvayBuZSBwcml0aXNuZXRlIHRpcGt1IG8pLiAgUG9uYXZsamFqdGUgc3ZlIGRvayBzZSBuZQogICAgIHZyYXRpdGUgbmEgcG/oZXRhay4gIENUUkwtSSBzbGnobm8ga2FvIENUUkwtTyBhbGkgdSBzdXByb3Rub20gc21qZXJ1LgoKLS0tPiAicG9ncnJycmWaa2EiIGplIHBvZ3Jlmm5vOyB1bWplc3RvIHBvZ3JycnJlmmthIHRyZWJhIHN0YWphdGkgcG9ncmWaa2EuCgpOQVBPTUVOQTogIEFrbyBzZSB0cmGeZW5qZW0gZG/wZSBkbyBrcmFqYSBkYXRvdGVrZSBuYXN0YXZpdCDmZSBzZSBvZCBuamVub2cKICAgICAgICAgICBwb+hldGthIG9zaW0gYWtvIGplIHBvc3RhdmthICd3cmFwc2NhbicgZGVha3RpdmlyYW5hLgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkgIExla2NpamEgNC4zOiBUUkGORU5KRSBQUklQQURBSlXGRSBaQUdSQURFCgoKCSoqIE90aXBrYWp0ZSAgJSAgemEgcHJvbmFsYXphayBwcmlwYWRhanXmZSApLCBdIGlsaSB9IC4gKioKCiAgMS4gUG9zdGF2aXRlIGt1cnNvciBuYSBiaWxvIGtvanUgb2QgICggLCAgWyAgaWxpICB7CiAgICAgb3R2b3JlbmloIHphZ3JhZGEgdSBsaW5pamkgb3puYehlbm9qIHMgLS0tPi4KCiAgMi4gT3RpcGthanRlIHpuYWsgICUgLgoKICAzLiBLdXJzb3Ig5mUgc2UgcG9tYWtudXRpIG5hIHByaXBhZGFqdeZ1IHphdHZvcmVudSB6YWdyYWR1LgoKICA0LiBPdGlwa2FqdGUgICUgIGtha28gYmkgcG9tYWtsaSBrdXJzb3IgbmEgZHJ1Z3UgcHJpcGFkYWp15nUgemFncmFkdS4KCiAgNS4gUG9tYWtuaXRlIGt1cnNvciBuYSBuZWt1IG9kICgsKSxbLF0seyBpbGkgfSBpIHBvbm92aXRlICAlICBuYXJlZGJ1LgoKLS0tPiBMaW5pamEgKCB0ZXN0aXJhbmphIG9iaehuaWggKCBbIHVnbGF0aWggXSBpIHsgdml0aehhc3RpaCB9IHphZ3JhZGEuKSkKCgpOQVBPTUVOQTogIFZybG8ga29yaXNubyB1IGlzcHJhdmxqYW5qdSBrb2RhIHNhIG5lcHJpcGFkYWp15mltIHphZ3JhZGFtYSEKCgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkgICAgICBMZWtjaWphIDQuNDogTkFSRURCRSBaQU1JSkVORQoKCiAgICAgICAqKiBPdGlwa2FqdGUgIDpzL3N0YXJvL25vdm8vZyAgZGEgemFtaWplbml0ZSAnc3Rhcm8nIHphICdub3ZvJy4gKioKCiAgMS4gUG9tYWtuaXRlIGt1cnNvciBuYSBsaW5panUgb3puYehlbnUgcyAtLS0+LgoKICAyLiBPdGlwa2FqdGUgIDpzL2N2cuboL2N2cuggPEVOVEVSPiAuICBQcmltamV0aXRlIGRhIG92YSBuYXJlZGJhIHphbWplbmp1amUKICAgICBzYW1vIHBydmkgImN2cuboIiB1IGxpbmlqaS4KCiAgMy4gT3RpcGthanRlICA6cy9jdnLm6C9jdnLoL2cgLiAgRG9kYXZhbmplICBnICBzdGF2a2Ugem5h6GkgZGEg5mUgc2UgbmFyZWRiYQogICAgIGl6dnKaaXRpIG5hIGNpamVsb2ogbGluaWppLCB6YW1qZW5qaXZhbmplbSBzdmloICJjdnLm6CIgdSBsaW5pamkuCgotLS0+IGkgY3Zy5uhpIGN2cuboaSBjdnLm6GFrIG5hIOh2b3J1IGNybmUgc21y6GUuCgogIDQuIFphIHphbWplbnUgc3ZpaCBpenJhemEgdSByYXNwb251IGR2aWp1IGxpbmlqYSwKICAgICBvdGlwa2FqdGUgOiMsI3Mvc3Rhcm8vbm92by9nICAgIywjIHN1IGJyb2pldmkgbGluaWplIGRhdG90ZWtlIG5hIGtvamltYQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZSBpem1l8HUgbmppaCDmZSBzZSBpenZymml0aSB6YW1qZW5hLgogICAgIE90aXBrYWp0ZSA6JXMvc3Rhcm8vbm92by9nICAgICB6YSB6YW1qZW51IHN2aWggaXpyYXphIHUgY2lqZWxvaiBkYXRvdGVjaS4KICAgICBPdGlwa2FqdGUgOiVzL3N0YXJvL25vdm8vZ2MgICAgemEgcHJvbmFsYXphayBzdmFrb2cgaXpyYXphIHUgZGF0b3RlY2kgaQogICAgIAkJCSAgICAgICAgICAgIHBvdHZyZHUgemFtamVuZS4KCn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoJCQkgICAgICBMZWtjaWphIDQgU0GORVRBSwoKCiAgMS4gQ1RSTC1HICBwcmlrYXp1amUgcG96aWNpanUga3Vyc29yYSB1IGRhdG90ZWNpIGkgc3RhdHVzIGRhdG90ZWtlLgogICAgICAgICAgICAgRyAgcG9zdGF2bGphIGt1cnNvciBuYSB6YWRuanUgbGluaWp1IGRhdG90ZWtlLgogICAgIGJyb2ogICAgRyAgcG9zdGF2bGphIGt1cnNvciBuYSAgYnJvaiAgbGluaWp1LgogICAgICAgICAgICBnZyAgcG9zdGF2bGphIGt1cnNvciBuYSBwcnZ1IGxpbmlqdS4KCiAgMi4gVGlwa2FuamUgIC8gIHNhIGl6cmF6b20gdHJhnmkgVU5BUFJJSkVEIHRhaiBpenJhei4KICAgICBUaXBrYW5qZSAgPyAgc2EgaXpyYXpvbSB0cmGeaSBVTkFUUkFHIHRhaiBpenJhei4KICAgICBOYWtvbiBuYXJlZGJlIHRyYZ5lbmphIGtvcmlzdGl0ZSAgbiAgemEgcHJvbmFsYXphayBpenJhemEgdSBpc3RvbQogICAgIHNtamVydSwgaSAgTiAgemEgcHJvbmFsYXphayBpc3RvZyBpenJhemEgYWxpIHUgc3Vwcm90bm9tIHNtamVydS4KICAgICBDVFJMLU8gdnJh5mEga3Vyc29yIG5hIHByZXRob2RudSBwb3ppY2lqdSwgQ1RSTC1JIG5hIHNsamVkZeZ1IHBvemljaWp1LgoKICAzLiBUaXBrYW5qZSAgJSAgZG9rIGplIGt1cnNvciBuYSB6YWdyYWRpIHBvbWnoZSBnYSBuYSBwcmlwYWRhanXmdSB6YWdyYWR1LgoKICA0LiBaYSB6YW1qZW51IHBydm9nIGl6cmF6YSBzdGFybyB6YSBpenJheiBub3ZvCSAgIDpzL3N0YXJvL25vdm8KICAgICBaYSB6YW1qZW51IHN2aWggaXpyYXphIHN0YXJvIG5hIGNpamVsb2ogbGluaWppCSAgIDpzL3N0YXJvL25vdm8vZwogICAgIFphIHphbWplbnUgc3ZpaCBpenJhemEgc3Rhcm8gdSByYXNwb251IGxpbmlqYSAjLCMgICAgIDojLCNzL3N0YXJvL25vdm8vZwogICAgIFphIHphbWplbnUgdSBjaWplbG9qIGRhdG90ZWNpCQkJICAgOiVzL3N0YXJvL25vdm8vZwogICAgIFphIHBvdHZyZHUgc3Zha2UgemFtamVuZSBkb2RhanRlICdjJwkJICAgOiVzL3N0YXJvL25vdm8vZ2MKCn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoJCSAgTGVrY2lqYSA1LjE6IElaVlKKQVZBTkpFIFZBTkpTS0lIIE5BUkVEQkkKCgoJKiogT3RpcGthanRlICA6ISAgc2EgdmFuanNrb20gbmFyZWRib20ga29qdSCeZWxpdGUgaXp2cpppdGkuICoqCgogIDEuIE90aXBrYWp0ZSBwb3puYXR1IG5hcmVkYnUgIDogIGtha28gYmkga3Vyc29yIHByZW1qZXN0aWxpIG5hIGRubwogICAgIGVrcmFuYS4gIFRpbWUgb21vZ3XmYXZhdGUgdW5vcyBuYXJlZGJlIHUgbmFyZWRiZW5vaiBsaW5pamkuCgogIDIuIE90aXBrYWp0ZSB6bmFrICAhICAodXNrbGnobmlrKS4gIFRha28gb21vZ3XmYXZhdGUKICAgICBpenZymmF2YW5qZSBuYXJlZGJlIHZhbmpza2UgbGp1c2tlLgoKICAzLiBLYW8gcHJpbWplciBvdGlwa2FqdGUgICBscyAgIG5ha29uICEgdGUgcHJpdGlzbml0ZSA8RU5URVI+LgogICAgIE92byDmZSBwcmlrYXphdGkgc2Fkcp5haiBkaXJla3RvcmlqYSwga2FvIGRhIHN0ZSB1IGxqdXNjaS4KICAgICBLb3Jpc3RpdGUgICA6IWRpciAgIGFrbyAgIDohbHMgICBuZSByYWRpLgoKTkFQT01FTkE6ICBNb2d15mUgamUgaXp2cpphdmF0aSBiaWxvIGtvanUgdmFuanNrdSBuYXJlZGJ1IG5hIG92YWogbmHoaW4sCiAgICAgICAgICAgemFqZWRubyBzYSBuamVuaW0gYXJndW1lbnRpbWEuCgpOQVBPTUVOQTogIFN2ZSAgOiAgbmFyZWRiZSBzZSBpenZymmF2YWp1IG5ha29uIJp0byBwcml0aXNuZXRlIDxFTlRFUj4KCSAgIFUgZGFsam5qZW0gdGVrc3R1IHRvIG5l5mUgdXZpamVrIGJpdGkgbmFwb21lbnV0by4KCgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkgICBMZWtjaWphIDUuMjogVkmKRSBPIFNQUkVNQU5KVSBEQVRPVEVLQQoKICAgICAgICAgICAqKiBaYSBzcHJlbWFuamUgcHJvbWplbmEsIG90aXBrYWp0ZSAgOncgSU1FX0RBVE9URUtFLiAqKgoKICAxLiBPdGlwa2FqdGUgICA6IWRpciAgIGlsaSAgIDohbHMgICB6YSBwcmVnbGVkIGRpcmVrdG9yaWphLgogICAgIFZl5iB6bmF0ZSBkYSBtb3JhdGUgcHJpdGlzbnV0aSA8RU5URVI+IG5hIGtyYWp1IHRpcGthbmphLgoKICAyLiBJemFiZXJpdGUgaW1lIGRhdG90ZWtlIGtvamEgam+aIG5lIHBvc3RvamksIG5wci4gVEVTVC4KCiAgMy4gT3RpcGthanRlOgkgOncgVEVTVCAgIChnZGplIGplIFRFU1QgaW1lIGtvamUgc3RlIHByZXRob2RubyBvZGFicmFsaS4pCgogIDQuIFRpbWUg5mUgdGUgc3ByZW1pdGkgY2lqZWx1IGRhdG90ZWt1IChWaW0gVHV0b3IpIHBvZCBpbWVub20gVEVTVC4KICAgICBaYSBwcm92amVydSwgb3RpcGthanRlIHBvbm92bm8gICA6IWRpciAgIGlsaSAgIDohbHMKICAgICB6YSBwcmVnbGVkIGRpcmVrdG9yaWphLgoKTkFQT01FTkE6ICBBa28gYmkgbmFwdXN0aWxpIFZpbSBpIHBvbm92bm8gZ2EgcG9rcmVudWxpIHNhIHZpbSBURVNUICwKICAgICAgICAgICBkYXRvdGVrYSBiaSBiaWxhIHBvdHB1bmEga29waWphIG92ZSBkYXRvdGVrZSB1IHRyZW51dGt1CiAgICAgICAgICAga2FkYSBzdGUgamUgc3ByZW1pbGkuCgogIDUuIEl6YnJpmml0ZSBkYXRvdGVrdSB0YWtvIGRhIG90aXBrYXRlIChNUy1ET1MpOgk6IWRlbCBURVNUCgkJCQkgICAgICAgaWxpIChVbml4KToJOiFybSBURVNUCgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkgIExla2NpamEgNS4zOiBTUFJFTUFOSkUgT1pOQchFTk9HIFRFS1NUQQoKCiAgICoqIEtha28gYmkgc3ByZW1pbGkgZGlvIGRhdG90ZWtlLCBvdGlwa2FqdGUgIHYgIHBva3JldCAgOncgSU1FX0RBVE9URUtFICoqCgogIDEuIFBvbWFrbml0ZSBrdXJzb3IgbmEgb3Z1IGxpbmlqdS4KCiAgMi4gUHJpdGlzbml0ZSAgdiAgaSBwb21ha25pdGUga3Vyc29yIHBldCBsaW5pamEgaXNwb2Qgb3ZlLgogICAgIFByaW1pamV0aXRlIHByb21qZW51LCBvem5h6GVuaSB0ZWtzdCBzZSByYXpsaWt1amUgb2Qgb2Jp6G5vZy4KCiAgMy4gUHJpdGlzbml0ZSAgOiAgem5hay4gIE5hIGRudSBla3JhbmEgcG9qYXZpdCDmZSBzZSAgOic8LCc+IC4KCiAgNC4gT3RpcGthanRlICB3IFRFU1QgICwgcHJpdG9tIGplIFRFU1QgaW1lIGRhdG90ZWtlIGtvamEgam+aIG5lIHBvc3RvamkuCiAgICAgUHJvdmplcml0ZSBkYSB6YWlzdGEgcGmaZSAgOic8LCc+dyBURVNUCiAgICAgcHJpamUgbmVnbyCadG8gcHJpdGlzbml0ZSA8RU5URVI+LgoKICA1LiBWaW0g5mUgc3ByZW1pdGkgb3puYehlbmkgdGVrc3QgdSBURVNULiAgUHJvdmplcml0ZSBzYSA6IWRpciAgaWxpICAhbHMgLgogICAgIE5lbW9qdGUgamUgam+aIGJyaXNhdGkhICBLb3Jpc3RpdGkg5mUgdGUgamUgdSBzbGplZGXmb2ogbGVrY2lqaS4KCk5BUE9NRU5BOiAgVGlwa2EgIHYgIHphcG/oaW5qZSBWaXp1YWxubyBvem5h6GF2YW5qZS4gIE1vnmV0ZSBwb21pY2F0aSBrdXJzb3IKICAgICAgICAgICB1bmFva29sbyBrYWtvIGJpIG1pamVuamFsaSB2ZWxp6GludSBvem5h6GVub2cgdGVrc3RhLiBNb55ldGUKICAgICAgICAgICBrb3Jpc3RpdGkgaSBvcGVyYXRvcmUuICBOcHIsICBkICDmZSBpemJyaXNhdGkgb3puYehlbmkgdGVrc3QuCn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoJCSAgIExla2NpamEgNS40OiBVyElUQVZBTkpFIERBVE9URUtBCgoKICAgICAgICoqIFphIHViYWNpdmFuamUgc2Fkcp5hamEgZGF0b3Rla2UsIG90aXBrYWp0ZSAgOnIgSU1FX0RBVE9URUtFICAqKgoKICAxLiBQb3N0YXZpdGUga3Vyc29yIGl6bmFkIG92ZSBsaW5pamUuCgpOQVBPTUVOQTogIE5ha29uIJp0byBpenZymml0ZSAyLiBrb3JhayB2aWRqZXRpIOZlIHRlIHRla3N0IGl6IExla2NpamUgNS4zLgogICAgICAgICAgIFN0b2dhIHBvbWFrbml0ZSBrdXJzb3IgRE9MSkUga2FrbyBiaSBwb25vdm5vIHZpZGplbGkgb3Z1IGxla2NpanUuCgogIDIuIFXoaXRhanRlIHZhmnUgVEVTVCBkYXRvdGVrdSBrb3Jpc3Rl5mkgbmFyZWRidSAgIDpyIFRFU1QKICAgICBnZGplIGplIFRFU1QgaW1lIGRhdG90ZWtlIGtvanUgc3RlIGtvcmlzdGlsaSB1IHByZXRob2Rub2ogbGVrY2lqaS4KICAgICBTYWRynmFqIHXoaXRhbmUgZGF0b3Rla2UgamUgdWJh6GVuIGxpbmlqdSBpc3BvZCBrdXJzb3JhLgoKICAzLiBLYWtvIGJpIHByb3ZqZXJpbGkgZGEgamUgZGF0b3Rla2EgdehpdGFuYSwgdnJhdGl0ZSBrdXJzb3IgdW5hdHJhZyBpCiAgICAgcHJpbWlqZXRpdGUgZHZpamUga29waWplIExla2NpamUgNS4zLCBvcmlnaW5hbG51IGkgb251IGl6IGRhdG90ZWtlLgoKTkFQT01FTkE6ICBNb55ldGUgdGFrb/BlciB16Gl0YXRpIGlzcGlzIHZhbmpza2UgbmFyZWRiZS4gIE5wciwgIDpyICFscwogICAgICAgICAgIOZlIHXoaXRhdGkgaXNwaXMgIGxzICBuYXJlZGJlIGkgcG9zdGF2aXRpIGlzcGlzIGxpbmlqdSBpc3BvZAogICAgICAgICAgIGt1cnNvcmEuCgoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgkJCSAgICAgIExla2NpamEgNSBTQY5FVEFLCgoKICAxLiAgOiFuYXJlZGJhICBpenZymmF2YSB2YW5qc2t1IG5hcmVkYnUuCgogICAgICBLb3Jpc25pIHByaW1qZXJpOgoJIChNUy1ET1MpCSAgKFVuaXgpCgkgIDohZGlyCQkgICA6IWxzCQkgICAtICBwcmVnbGVkIGRpcmVrdG9yaWphLgoJICA6IWRlbCBEQVRPVEVLQSAgIDohcm0gREFUT1RFS0EgICAtICBicmmaZSBkYXRvdGVrdSBEQVRPVEVLQS4KCiAgMi4gIDp3IERBVE9URUtBICB6YXBpc3VqZSB0cmVudXRh6G51IGRhdG90ZWt1IG5hIGRpc2sgc2EgaW1lbm9tIERBVE9URUtBLgoKICAzLiAgdiAgcG9rcmV0ICA6dyBJTUVfREFUT1RFS0UgIHNwcmVtYSB2aXp1YWxubyBvem5h6GVuZSBsaW5pamUgdQogICAgICBkYXRvdGVrdSBJTUVfREFUT1RFS0UuCgogIDQuICA6ciBJTUVfREFUT1RFS0UgIHXoaXRhdmEgZGF0b3Rla3UgSU1FX0RBVE9URUtFIHNhIGRpc2thIGkgc3RhdmxqYQogICAgICBuamVuIHNhZHKeYWogbGluaWp1IGlzcG9kIGt1cnNvcmEuCgogIDUuICA6ciAhZGlyICB16Gl0YXZhIGlzcGlzIG5hcmVkYmUgZGlyIGkgcG9zdGF2bGphIHNhZHKeYWogaXNwaXNhIGxpbmlqdQogICAgICBpc3BvZCBrdXJzb3JhLgoKCn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoJCQkgTGVrY2lqYSA2LjE6IE5BUkVEQkEgT1RWT1JJCgoKCSoqIFByaXRpc25pdGUgIG8gIGtha28gYmkgb3R2b3JpbGkgbGluaWp1IGlzcG9kIGt1cnNvcmEKCSAgIGkgcHJlmmxpIHUgSW5zZXJ0IG1vZC4gKioKCiAgMS4gUG9tYWtuaXRlIGt1cnNvciBuYSBzbGplZGXmdSBsaW5panUgb3puYehlbnUgcyAtLS0+LgoKICAyLiBPdGlwa2FqdGUgbWFsbyAgbyAga2FrbyBiaSBvdHZvcmlsaSBub3Z1IGxpbmlqdSBJU1BPRCBrdXJzb3JhCiAgICAgaSBwcmWabGkgdSBJbnNlcnQgbW9kLgoKICAzLiBPdGlwa2FqdGUgbmWadG8gdGVrc3RhIGkgbmFrb24gdG9nYSBwcml0aXNuaXRlIDxFU0M+CiAgICAga2FrbyBiaSBuYXB1c3RpbGkgSW5zZXJ0IG1vZC4KCi0tLT4gTmFrb24gmnRvIHByaXRpc25ldGUgIG8gIGt1cnNvciDmZSBwcmXmaSB1IG5vdnUgbGluaWp1IHUgSW5zZXJ0IG1vZC4KCiAgNC4gWmEgb3R2YXJhbmplIGxpbmlqZSBJWk5BRCBrdXJzb3JhLCBvdGlwa2FqdGUgdW1qZXN0byBtYWxvZyBvIHZlbGlrbyBPICwKICAgICBQb2t1mmFqdGUgbmEgZG9uam9qIGxpbmlqaSBvem5h6GVub2ogcyAtLS0+LgoKLS0tPiBPdHZvcml0ZSBsaW5panUgaXpuYWQgb3ZlIC0gb3RpcGthanRlIE8gZG9rIGplIGt1cnNvciBuYSBvdm9qIGxpbmlqaS4KCgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkJTGVrY2lqYSA2LjI6IE5BUkVEQkEgRE9EQUoKCgoJICAgICAqKiBPdGlwa2FqdGUgIGEgIHphIGRvZGF2YW5qZSB0ZWtzdGEgSVpBIGt1cnNvcmEuICoqCgogIDEuIFBvbWFrbml0ZSBrdXJzb3IgbmEgcG/oZXRhayBzbGplZGXmZSBsaW5pamUgb3puYehlbmUgcyAtLS0+LgogIAogIDIuIFRpcGthanRlICBlICBkb2sgc2Uga3Vyc29yIG5lIG5hbGF6aSBuYSBrcmFqdSAgbGkgLgoKICAzLiBPdGlwa2FqdGUgIGEgIChtYWxvKSBrYWtvIGJpIGRvZGFsaSB0ZWtzdCBJWkEga3Vyc29yYS4KCiAgNC4gRG9wdW5pdGUgcmlqZegga2FvIJp0byBqZSBuYSBsaW5pamkgaXNwb2QuCiAgICAgUHJpdGlzbml0ZSA8RVNDPiB6YSBpemxheiBpeiBJbnNlcnQgbW9kYS4KCiAgNS4gU2EgIGUgIHByaWpl8Gl0ZSBuYSBzbGplZGXmdSBuZXBvdHB1bnUgcmlqZeggaSBwb25vdml0ZSBrb3Jha2UgMyBpIDQuCiAgCi0tLT4gT3ZhIGxpIG9tb2d15mF2YSB2amUgZG9kYXYgdGVrc3RhIG5la29qIGxpbmlqaS4KLS0tPiBPdmEgbGluaWphIG9tb2d15mF2YSB2amWeYmFuamUgZG9kYXZhbmphIHRla3N0YSBuZWtvaiBsaW5pamkuCgpOQVBPTUVOQTogIFNhIGksIGEsIGkgIEEgIHByZWxheml0ZSB1IGlzdGkgSW5zZXJ0IG1vZCwgamVkaW5hCiAgICAgICAgICAgcmF6bGlrYSBqZSB1IHBvemljaWppIG9kIGtvamUg5mUgc2UgdGVrc3QgdWJhY2l2YXRpLgoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgkJICAgIExla2NpamEgNi4zOiBEUlVHSSBOQchJTiBNSUpFTkpBTkpBCgoKICAgICAgKiogT3RpcGthanRlIHZlbGlrbyAgUiAga2FrbyBiaSB6YW1pamVsaWxpIHZpmmUgb2QgamVkbm9nIHpuYWthLiAqKgoKICAxLiBQb21ha25pdGUga3Vyc29yIG5hIHBydnUgc2xqZWRl5nUgbGluaWp1IG96bmHoZW51IHMgLS0tPi4KICAgICBQb21ha25pdGUga3Vyc29yIG5hIHBv6GV0YWsgcHJ2b2cgIHh4eCAuCgogIDIuIFByaXRpc25pdGUgIFIgIGkgb3RpcGthanRlIGJyb2oga29qaSBqZSBsaW5panUgaXNwb2QsCiAgICAgdGFrbyBkYSB6YW1pamVuaSB4eHggLgoKICAzLiBQcml0aXNuaXRlIDxFU0M+IHphIGl6bGF6IGl6IFJlcGxhY2UgbW9kYS4KICAgICBQcmltaWpldGl0ZSBkYSBqZSBvc3RhdGFrIGxpbmlqZSBvc3RhbyBuZXByb21qZW5qZW4uCgogIDUuIFBvbm92aXRlIGtvcmFrZSBrYWtvIGJpIHphbWlqZW5pbGkgcHJlb3N0YWxpIHh4eC4KCi0tLT4gWmJyYWphbmplOiAxMjMgcGx1cyB4eHggamUgeHh4LgotLS0+IFpicmFqYW5qZTogMTIzIHBsdXMgNDU2IGplIDU3OS4KCk5BUE9NRU5BOiAgUmVwbGFjZSBtb2QgamUga2FvIEluc2VydCBtb2QsIGFsaSBzYSBiaXRub20gcmF6bGlrb20sCiAgICAgICAgICAgc3Zha2kgb3RpcGthbmkgem5hayBicmmaZSB2ZeYgcG9zdG9qZeZpLgoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgkJTGVrY2lqYSA2LjQ6IEtPUElSQU5KRSBJIExJSkVQTEpFTkpFIFRFS1NUQQoKCiAgICAqKiBLb3Jpc3RpdGUgIHkgIG9wZXJhdG9yIHphIGtvcGlyYW5qZSBhICBwICB6YSBsaWplcGxqZW5qZSB0ZWtzdGEuICoqCgogIDEuIFBvbWFrbml0ZSBrdXJzb3IgbmEgbGluaWp1IHMgLS0tPiAgaSBwb3N0YXZpdGUga3Vyc29yIG5ha29uICJhKSIuCiAgCiAgMi4gUG9rcmVuaXRlIFZpc3VhbCBtb2Qgc2EgIHYgIGkgcG9tYWtuaXRlIGt1cnNvciBzdmUgZG8gaXNwcmVkICJwcnZhIi4KICAKICAzLiBQcml0aXNuaXRlICB5ICBrYWtvIGJpIGtvcGlyYWxpIG96bmHoZW5pIHRla3N0LgoKICA0LiBQb21ha25pdGUga3Vyc29yIGRvIGtyYWphIHNsamVkZeZlIGxpbmlqZTogIGokCgogIDUuIFByaXRpc25pdGUgIHAgIGtha28gYmkgemFsaWplcGlsaSB0ZWtzdC4gIE9uZGEgdXRpcGthanRlOiAgZHJ1Z2EgPEVTQz4gLgoKICA2LiBLb3Jpc3RpdGUgVmlzdWFsIG1vZCBrYWtvIGJpIG96bmHoaWxpICIgbGluaWphLiIsIGtvcGlyYWp0ZTogIHkgLCBrdXJzb3IKICAgICBwb3N0YXZpdGUgbmEga3JhaiBzbGplZGXmZSBsaW5pamU6ICBqJCAgaSBvbmRqZSB6YWxpamVwaXRlIHRla3N0OiAgcCAuCgotLS0+ICBhKSBvdm8gamUgcHJ2YSBsaW5pamEuCiAgICAgIGIpCgpOQVBPTUVOQTogIG1vnmV0ZSBrb3Jpc3RpdGkgIHkgIGthbyBvcGVyYXRvcjsgIHl3ICAga29waXJhIGplZG51IHJpamXoLgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkgICAgTGVrY2lqYSA2LjU6IE1JSkVOSkFOSkUgUE9TVEFWS0kKCgogKiogUG9zdGF2a2E6IG5hcmVkYmUgdHJhnmVuamEgaSB6YW1pamVuZSBuZSByYXpsaWt1anUgVkVMSUtBIGkgbWFsYSBzbG92YSAqKgoKICAxLiBQb3RyYZ5pdGUgJ3Jhemxpa2EnIHRpcGthbmplbTogICAvcmF6bGlrYSAgPEVOVEVSPgogICAgIE5la29saWtvIHB1dGEgcG9ub3ZpdGUgcHJpdGlza2FuamVtICBuIC4KCiAgMi4gQWt0aXZpcmFqdGUgJ2ljJyAoSWdub3JlIGNhc2UpIHBvc3Rhdmt1OiAgIDpzZXQgaWMKCiAgMy4gUG9ub3ZubyBwb3RyYZ5pdGUgJ3Jhemxpa2EnIHRpcGthbmplbSAgbgogICAgIFByaW1pamV0aXRlIGRhIHN1IHNhZGEgaSBSQVpMSUtBIGkgUmF6bGlrYSBwcm9uYfBlbmkuCgogIDQuIEFrdGl2aXJhanRlICdobHNlYXJjaCcgaSAnaW5jc2VhcmNoJyBwb3N0YXZrZTogIDpzZXQgaGxzIGlzCgogIDUuIE90aXBrYWp0ZSBuYXJlZGJ1IHRyYZ5lbmphIGkgcHJpbWlqZXRpdGUgcmF6bGlrZTogIC9yYXpsaWthIDxFTlRFUj4KCiAgNi4gWmEgZGVha3RpdmlyYW5qZSAgaWMgIHBvc3RhdmtlIGtvcmlzdGl0ZTogIDpzZXQgbm9pYwoKTkFQT01FTkE6ICBaYSBuZW96bmHoYXZhbmplIHByb25h8GVuaWggaXpyYXphIG90aXBrYWp0ZTogICA6bm9obHNlYXJjaApOQVBPTUVOQTogIEJleiByYXpsaWtvdmFuamEgdmVsaWtpaCBpIG1hbGloIHNsb3ZhIHUgc2FtbyBqZWRub2ogbmFyZWRiaQoJICAga29yaXN0aXRlICBcYyB1IGl6cmF6dTogIC9yYXpsaWthXGMgIDxFTlRFUj4Kfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgkJCSAgICAgIExla2NpamEgNiBTQY5FVEFLCgogIDEuIFByaXRpc25pdGUgIG8gIHphIG90dmFyYW5qZSBsaW5pamUgSVNQT0Qga3Vyc29yYSBpIHByZWxhemFrIHUgSW5zZXJ0IG1vZC4KICAgICBQcml0aXNuaXRlICBPICB6YSBvdHZhcmFuamUgbGluaWplIElaTkFEIGt1cnNvcmEuCgogIDIuIFByaXRpc25pdGUgIGEgIHphIHVub3MgdGVrc3RhIElaQSBrdXJzb3JhLgogICAgIFByaXRpc25pdGUgIEEgIHphIHVub3MgdGVrc3RhIG5hIGtyYWp1IGxpbmlqZS4KCiAgMy4gTmFyZWRiYSAgZSAgcG9taehlIGt1cnNvciBuYSBrcmFqIHJpamXoaS4KCiAgNC4gT3BlcmF0b3IgIHkgIGtvcGlyYSB0ZWtzdCwgIHAgIGdhIGxpamVwaS4KCiAgNS4gVGlwa2FuamVtIHZlbGlrb2cgIFIgIFZpbSBwcmVsYXppIHUgUmVwbGFjZSBtb2QgZG9rIG5lIHByaXRpc25ldGUgPEVTQz4gLgoKICA2LiBUaXBrYW5qZW0gIjpzZXQgeHh4IiBha3RpdmlyYSBwb3N0YXZrdSAieHh4Ii4gIE5la2UgcG9zdGF2a2Ugc3U6CiAgCSdpYycgJ2lnbm9yZWNhc2UnCW5lIHJhemxpa3VqZSB2ZWxpa2EvbWFsYSBzbG92YSBwcmkgdHJhnmVuanUKCSdpcycgJ2luY3NlYXJjaCcJdHJhnmkgbmVkb3ZymmVuZSBpenJhemUKCSdobHMnICdobHNlYXJjaCcJb3puYehpIHN2ZSBwcm9uYfBlbmUgaXpyYXplCiAgICAgTW+eZXRlIGtvcmlzdGl0ZSBkdWdvIGlsaSBrcmF0a28gaW1lIHBvc3RhdmtlLgoKICA3LiBQcmV0aG9kaXRlICJubyIgaW1lbnUgcG9zdGF2a2UgemEgZGVha3RpdmlyYW5qZSBpc3RlOiAgIDpzZXQgbm9pYwoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgkJICAgICAgIExla2NpamEgNy4xOiBET0JJVkFOSkUgUE9NT8ZJCgoKCQkgICAqKiBLb3Jpc3RpdGUgb24tbGluZSBzdXN0YXYgcG9tb+ZpICoqCgogIFZpbSBpbWEgZGV0YWxqYW4gb24tbGluZSBzdXN0YXYgcG9tb+ZpLgogIFphIHBv6GV0YWssIHBva3WaYWp0ZSBqZWRubyBvZCBzbGplZGXmZWc6CgktIHByaXRpc25pdGUgPEhFTFA+IHRpcGt1IChha28gamUgdmGaYSB0aXBrb3ZuaWNhIGltYSkKCS0gcHJpdGlzbml0ZSA8RjE+IHRpcGt1IChha28gamUgdmGaYSB0aXBrb3ZuaWNhIGltYSkKCS0gdXRpcGthanRlICAgOmhlbHAgPEVOVEVSPgoKICBQcm/oaXRhanRlIHRla3N0IHUgcHJvem9ydSBwb21v5mkga2FrbyBiaSBzdGUgc2Ugem5hbGkgc2x1nml0aSBpc3RvbS4KICBUaXBrYW5qZW0gIENUUkwtVyBDVFJMLVcgICBwcmVsYXppdGUgaXogamVkbm9nIHByb3pvcmEgdSBkcnVnaS4KICBPdGlwa2FqdGUgICAgOnEgPEVOVEVSPiAgICBrYWtvIGJpIHphdHZvcmlsaSBwcm96b3IgcG9tb+ZpLgoKICBQcm9uYeZpIOZlIHRlIHBvbW/mIG8gYmlsbyBrb2pvaiB0ZW1pLCB0YWtvIGRhIGRvZGF0ZSB1cGl0IHNhbW9qCiAgIjpoZWxwIiBuYXJlZGJpLiAgUG9rdZphanRlIChuZSB6YWJvcmF2aXRlIHByaXRpc251dGkgPEVOVEVSPik6CgoJOmhlbHAgdwoJOmhlbHAgY19DVFJMLUQKCTpoZWxwIGluc2VydC1pbmRleAoJOmhlbHAgdXNlci1tYW51YWwKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgkJCUxla2NpamEgNy4yOiBQUkFWTEpFTkpFIFNLUklQVEUKCgoJCSAgICAgICAqKiBBa3RpdmlyYWp0ZSBWaW0gbW9ndeZub3N0aSAqKgoKICBWaW0gaW1hIG1ub2dvIHZpmmUgYWxhdGEgb2QgVmktamEsIGFsaSB2ZeZpbmEgbmppaCBuaWplIGFrdGl2aXJhbmEuCiAgS2FrbyBiaSBtb2dsaSBrb3Jpc3RpdGkgdmmaZSBtb2d15m5vc3RpIG5hcHJhdml0ZSAidmltcmMiIGRhdG90ZWt1LgoKICAxLiBVcmVkaXRlICJ2aW1yYyIgZGF0b3Rla3UuICBPdm8gb3Zpc2kgbyB2YZplbSBzaXN0ZW11OgoJOmUgfi8udmltcmMJCXphIFVuaXgKCTplICRWSU0vX3ZpbXJjCQl6YSBNUy1XaW5kb3dzCgogIDIuIFNhZGEgdehpdGFqdGUgcHJpbWplciBzYWRynmFqYSAidmltcmMiIGRhdG90ZWtlOgoJOnIgJFZJTVJVTlRJTUUvdmltcmNfZXhhbXBsZS52aW0KCiAgMy4gU2HodXZhanRlIGRhdG90ZWt1IHNhOgoJOncKCiAgU2xqZWRl5mVnIHB1dGEga2FkYSBwb2tyZW5ldGUgVmltLCBib2phbmplIHNpbnRha3NlIHRla3N0YSBiaXRpIOZlCiAgYWt0aXZpcmFuby4gU3ZlIHZhmmUgcG9zdGF2a2UgbW+eZXRlIGRvZGF0aSB1ICJ2aW1yYyIgZGF0b3Rla3UuCiAgWmEgdmmaZSBpbmZvcm1hY2lqYSBvdGlwa2FqdGUgIDpoZWxwIHZpbXJjLWludHJvCgp+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KCQkgICAgIExla2NpamEgNy4zOiBBVVRPTUFUU0tPIERPVlKKQVZBTkpFCgoKCSoqIERvdnKaYXZhbmplIGl6IG5hcmVkYmVuZSBsaW5pamUgcG9tb+Z1IENUUkwtRCBpIDxUQUI+ICoqCgogIDEuIFByb3ZqZXJpdGUgZGEgVmltIG5pamUgdSBWaSBtb2R1OiAgOnNldCBub2NwCgogIDIuIFBvZ2xlZGFqdGUga29qZSBkYXRvdGVrZSBwb3N0b2plIHUgZGlyZWt0b3JpanU6ICA6IWxzICAgb3IgIDohZGlyCgogIDMuIE90aXBrYWp0ZSBwb+hldGFrIG5hcmVkYmU6ICA6ZQoKICA0LiBUaXBrYWp0ZSAgQ1RSTC1EICBpIHByaWthemF0aSDmZSBzZSBsaXN0YSBuYXJlZGJpIGtvamUgemFwb+hpbmp1IHNhICJlIi4KCiAgNS4gUHJpdGlzbml0ZSA8VEFCPiAgaSBWaW0g5mUgZG9wdW5pdGkgdW5vcyB1IG5hcmVkYnUgIjplZGl0Ii4KCiAgNi4gRG9kYWp0ZSByYXptYWsgaSBwb+hldGFrIGRhdG90ZWtlOiAgOmVkaXQgRklMCgogIDcuIFByaXRpc25pdGUgPFRBQj4uICBWaW0g5mUgbmFkb3B1bml0aSBpbWUgZGF0b3Rla2UgKGFrbyBqZSBqZWRpbnN0dmVubykuCgpOQVBPTUVOQTogIE1vZ3XmZSBqZSBkb3B1bml0aSBtbm9nZSBuYXJlZGJlLiAgS29yaXN0aXRlIENUUkwtRCBpIDxUQUI+LgogICAgICAgICAgIE5hcm/oaXRvIGplIGtvcmlzbm8gemEgIDpoZWxwICBuYXJlZGJlLgoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CgkJCSAgICAgIExla2NpamEgNyBTQY5FVEFLCgoKICAxLiBPdGlwa2FqdGUgIDpoZWxwICBpbGkgcHJpdGlzbml0ZSA8RjE+IGlsaSA8SGVscD4gIHphIHBvbW/mLgoKICAyLiBPdGlwa2FqdGUgIDpoZWxwIG5hcmVkYmEgIGtha28gYmkgZG9iaWxpIHBvbW/mIHphICBuYXJlZGJhIC4KCiAgMy4gT3RpcGthanRlICBDVFJMLVcgQ1RSTC1XICB6YSBwcmVsYXphayB1IGRydWdpIHByb3pvcgoKICA0LiBPdGlwa2FqdGUgIDpxICBrYWtvIGJpIHphdHZvcmlsaSBwcm96b3IgcG9tb+ZpCgogIDUuIE5hcHJhdml0ZSB2aW1yYyBza3JpcHR1IHphIHBvZGl6YW5qZSBrYWtvIGJpIHUgbmp1IHNwcmVtYWxpCiAgICAgdmGaZSBvbWlsamVuZSBwb3N0YXZrZS4KCiAgNi4gS2FkYSB0aXBrYXRlIG5hcmVkYnUga29qYSB6YXBv6GluamUgc2EgIDoKICAgICBwcml0aXNuaXRlIENUUkwtRCBrYWtvIGJpIHZpZGplbGkgbW9ndeZlIHZhbGphbmUgdnJpamVkbm9zdGkuCiAgICAgUHJpdGlzbml0ZSA8VEFCPiBrYWtvIGJpIG9kYWJyYWxpIGplZG51IG9kIG5qaWguCgoKCgoKfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgS3Jhai4gIENpbGogcHJpcnXobmlrYSBqZSBkYSBwb2thnmUga3JhdGFrIHByZWdsZWQgVmltIGVkaXRvcmEsIHRlayB0b2xpa28KICBkYSBvbW9ndeZpIG5qZWdvdm8ga29yaZp0ZW5qZS4gUHJpcnXobmlrIG5pamUgcG90cHVuIGplciBWaW0gaW1hIG1ub2dvIHZpmmUKICBuYXJlZGJpLiBaYSB2aZplIGluZm9ybWFjaWphOiAiOmhlbHAgdXNlci1tYW51YWwiLgoKICBaYSDoaXRhbmplIGkga29yaZp0ZW5qZSwgcHJlcG9ydehhbW86CglWaW0gLSBWaSBJbXByb3ZlZCAtIGJ5IFN0ZXZlIE91YWxsaW5lCglJemRhdmHoOiBOZXcgUmlkZXJzCiAgUHJ2YSBrbmppZ2EgcG90cHVubyBwb3N2ZeZlbmEgVmltLXUuIFZybG8ga29yaXNuYSB6YSBwb+hldG5pa2UuCiAgU2EgbW5vZ28gcHJpbWplcmEgaSBzbGlrYS4KICBQb3NqZXRpdGUgaHR0cDovL2ljY2YtaG9sbGFuZC5vcmcvY2xpY2s1Lmh0bWwKCiAgU2xqZWRl5mEga25qaWdhIGplIG5lmnRvIHN0YXJpamEgaSB2aZplIG8gVmktdSBuZWdvIG8gVmltLXUsIHByZXBvcnXoYW1vOgoJTGVhcm5pbmcgdGhlIFZpIEVkaXRvciAtIGJ5IExpbmRhIExhbWIKCUl6ZGF2Yeg6IE8nUmVpbGx5ICYgQXNzb2NpYXRlcyBJbmMuCiAgU29saWRuYSBrbmppZ2EsIG1vnmV0ZSBzYXpuYXRpIHNrb3JvIHN2ZSCadG8gbW+eZXRlIG5hcHJhdml0aQogIHUgVmktdS4gimVzdG8gaXpkYW5qZSBpbWEgbmWadG8gaW5mb3JtYWNpamEgaSBvIFZpbS11LgoKICBPdmFqIHByaXJ16G5payBzdSBuYXBpc2FsaTogTWljaGFlbCBDLiBQaWVyY2UgaSBSb2JlcnQgSy4gV2FyZSwKICBDb2xvcmFkbyBTY2hvb2wgb2YgTWluZXMga29yaXN0ZeZpIGlkZWplIENoYXJsZXMgU21pdGgsCiAgQ29sb3JhZG8gU3RhdGUgVW5pdmVyc2l0eS4gIEUtcG+adGE6IGJ3YXJlQG1pbmVzLmNvbG9yYWRvLmVkdS4KCiAgTmFrbmFkbmUgcHJvbWplbmUgbmFwcmF2aW8gamUgQnJhbSBNb29sZW5hYXIuCn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoKICBQcmV2ZW8gbmEgaHJ2YXRza2k6IFBhdWwgQi4gTWFob2wgPG9uZW1kYUBnbWFpbC5jb20+CiAgUHJlaW5ha2EgMS40MiwgTGlwYW5qIDIwMDgKCgo=