PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo9ICAgIEQgbyBiIHIgbyBkIG8gmiBsIGkgICB1ICAgVklNICAgcCByIGkgciB1IOggbiBpIGsgIC0gICAgVmVyemlqYSAxLjcgICAgICA9Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCiAgICAgVmltIGplIG1v5mFuIGVkaXRvciBzYSBtbm9nbyBrb21hbmRpLCBzdXZpmmUgZGEgYmlzbW8gaWggb3ZkZSBzdmUKICAgICBvcGlzYWxpLiAgUHJpcnXobmlrIGplIHphbWmabGplbiBkYSBvcGmaZSBkb3ZvbGpubyBrb21hbmRpIGRhIGJpc3RlCiAgICAgbW9nbGkgbGFnb2RubyBkYSBrb3Jpc3RpdGUgVmltIGthbyBlZGl0b3Igb3CadGUgbmFtZW5lLgoKICAgICBQcmlibGmebm8gdnJlbWUgcG90cmVibm8gemEgdXNwZZphbiB6YXZymmV0YWsgcHJpcnXobmlrYSBqZSBpem1l8HUKICAgICAyNSBpIDMwIG1pbnV0YSwgdSB6YXZpc25vc3RpIG9kIHZyZW1lbmEgcG90cm+aZW5vZyBuYSB2ZZ5idS4KCiAgICAgVVBPWk9SRU5KRToKICAgICBLb21hbmRlIHUgbGVrY2lqYW1hIOZlIG1lbmphdGkgdGVrc3QuICBJc2tvcGlyYWp0ZSBvdmFqIGZhamwgaQogICAgIHZlnmJhanRlIG5hIGtvcGlqaSAoYWtvIHN0ZSBwb2tyZW51bGkgInZpbXR1dG9yIiBvdm8gamUgdmXmIGtvcGlqYSkuCgogICAgIFZhnm5vIGplIHVwYW10aXRpIGRhIGplIG92YWogcHJpcnXobmlrIHphbWmabGplbiB6YSBha3Rpdm51IHZlnmJ1LgogICAgIFRvIHpuYehpIGRhIG1vcmF0ZSB1cG90cmVibGphdmF0aSBrb21hbmRlIG8ga29qaW1hIOhpdGF0ZSBkYSBiaXN0ZQogICAgIGloIG5hdehpbGkuICBBa28gc2FtbyDoaXRhdGUgdGVrc3QsIHphYm9yYXZp5mV0ZSBrb21hbmRlIQoKICAgICBBa28gamUgQ2FwcyBMb2NrIHVrbGp16GVuIElTS0xKVchJVEUgZ2EuICBQcml0aXNuaXRlIHRhc3RlciAgaiAgZG92b2xqbm8KICAgICBwdXRhIGRhIGxla2NpamEgMS4xIGNlbGEgc3RhbmUgbmEgZWtyYW4uCgp+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+fn4KCQkgICAgICBMZWtjaWphIDEuMTogIFBPTUVSQU5KRSBLVVJTT1JBCgoKICoqIFphIHBvbWVyYW5qZSBrdXJzb3JhLCBwcml0aXNrYWp0ZSB0YXN0ZXJlIGgsaixrLGwga2FrbyBqZSBwcmlrYXphbm8gKioKCSAgICAgXgoJICAgICBrCQkgICAgU2F2ZXQ6IGggamUgcyBsZXZlIHN0cmFuZSBpIHBvbWVyYSBrdXJzb3IgdSBsZXZvLgogICAgICAgPCBoCSBsID4JCSAgIGwgamUgcyBkZXNuZSBzdHJhbmUgaSBwb21lcmEga3Vyc29yIHUgZGVzbm8uCgkgICAgIGogICAgICAgICAgICAgICAgICAgICBqIGl6Z2xlZGEga2FvIHN0cmVsaWNhIG5hbmmeZS4KCSAgICAgdgogIDEuIFBvbWVyYWp0ZSBrdXJzb3IgcG8gZWtyYW51IGRvayBzZSBuZSBuYXZpa25ldGUgbmEga29tYW5kZS4KCiAgMi4gUHJpdGlzbml0ZSB0YXN0ZXIgKGopIGRvayBuZSBwb+huZSBkYSBzZSBwb25hdmxqYS4KICAgICBTYWRhIHpuYXRlIGtha28gZGEgZG/wZXRlIGRvIG5hcmVkbmUgbGVrY2lqZS4KCiAgMy4gS29yaXN0ZeZpIHRhc3RlciBqIHByZfBpdGUgbmEgbGVrY2lqdSAxLjIuCgpOQVBPTUVOQTogIEFrbyBuaXN0ZSBzaWd1cm5pIJp0YSBzdGUgemFwcmF2byBwcml0aXNudWxpLCBwcml0aXNuaXRlIDxFU0M+CiAgICAgICAgICAgemEgcHJlbGF6YWsgdSBOb3JtYWwgbW9kIGkgcG9rdZphanRlIHBvbm92by4KCk5BUE9NRU5BOiAgU3RyZWxpY2UgdGFrb/BlIHBvbWVyYWp1IGt1cnNvciwgYWxpIGtvcmma5mVuamUgdGFzdGVyYSBoamtsIGplCiAgICAgICAgICAgem5hdG5vIGJynmUsIGthZCBzZSBqZWRub20gbmF2aWtuZXRlIG5hIG5qaWguICBaYWlzdGEhCgp+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+fn4KCQkJICAgTGVrY2lqYSAxLjI6IElaTEFaQUsgSVogVklNLWEKCgogICEhIFVQT1pPUkVOSkU6IFByZSBpenZv8GVuamEgYmlsbyBrb2cga29yYWthLCBwcm/oaXRhanRlIGNlbHUgbGVrY2lqdSEhCgogIDEuIFByaXRpc25pdGUgPEVTQz4gKGVkaXRvciBqZSBzYWRhIHUgTm9ybWFsIG1vZHUpLgoKICAyLiBPdGt1Y2FqdGU6CTpxISA8RU5URVI+LgogICAgIE92aW1lIHNlIGl6bGF6aSBpeiBlZGl0b3JhLCBzYSBHVUJJVEtPTSBzdmloIGl6bWVuYS4KCiAgMy4gS2FkYSBzZSBwb2phdmkga29tYW5kbmkgcHJvbXB0LCB1bmVzaXRlIGtvbWFuZHUga29qYSBqZSBwb2tyZW51bGEKICAgICBvdmFqIHByaXJ16G5pazoJCXZpbXR1dG9yIDxFTlRFUj4KCiAgNC4gQWtvIHN0ZSB1cGFtdGlsaSBvdmUga29yYWtlLCBpenZymml0ZSBpaCByZWRvbSBvZCAxIGRvIDMgZGEgYmlzdGUKICAgICBpemGabGkgaXogZWRpdG9yYSBpIHBvbm92byBnYSBwb2tyZW51bGkuCgpOQVBPTUVOQTogIDpxISA8RU5URVI+ICBwb25pmnRhdmEgc3ZlIGl6bWVuZSBrb2plIHN0ZSBuYXByYXZpbGkuCiAgICAgICAgICAgVSBuYXJlZG5pbSBsZWtjaWphbWEgbmF16GnmZXRlIGtha28gZGEgc2HodXZhdGUgaXptZW5lLgoKICA1LiBQb21lcml0ZSBrdXJzb3IgbmEgbGVrY2lqdSAxLjMuCgoKfn5+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+CgkJICAgIExla2NpamEgMS4zOiBJWk1FTkEgVEVLU1RBIC0gQlJJU0FOSkUKCgoJICAgICAgKiogUHJpdGlzbml0ZSAgeCAgemEgYnJpc2FuamUgem5ha2EgcG9kIGt1cnNvcm9tLiAqKgoKICAxLiBQb21lcml0ZSBrdXJzb3IgbmEgcmVkIG96bmHoZW4gc2EgLS0tPi4KCiAgMi4gRGEgYmlzdGUgaXNwcmF2aWxpIGdyZZprZSwgcG9tZXJhanRlIGt1cnNvciBkb2sgc2UKICAgICBuZSBuYfBlIG5hIHNsb3Z1IGtvamUgdHJlYmEgaXpicmlzYXRpLgoKICAzLiBQcml0aXNuaXRlIHRhc3RlciAgeCAgZGEgaXpicmmaZXRlIG5lnmVsamVubyBzbG92by4KCiAgNC4gUG9uYXZsamFqdGUga29yYWtlIG9kIDIgZG8gNCBkb2sgbmUgaXNwcmF2aXRlIHN2ZSBncmWaa2UuCgotLS0+IFJSUmliYWEgcmlpYmkgZ3Jpenp6ZSBycnJlZXBwLgoKICA1LiBLYWQgaXNwcmF2aXRlIHJlZCwgcHJl8Gl0ZSBuYSBsZWtjaWp1IDEuNC4KCk5BUE9NRU5BOiAgRG9rIGtvcmlzdGl0ZSBwcmlydehuaWssIG5lbW9qdGUgdehpdGkga29tYW5kZSBuYXBhbWV0LAogICAgICAgICAgIHZl5iB2ZZ5iYWp0ZSBuamlob3Z1IHByaW1lbnUuCgoKfn5+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+CgkJIExla2NpamEgMS40OiBJWk1FTkEgVEVLU1RBIC0gVUJBQ0lWQU5KRQoKCgkgICoqIFByaXRpc25pdGUgIGkgIHphIHViYWNpdmFuamUgdGVrc3RhIGlzcHJlZCBrdXJzb3JhLiAqKgoKICAxLiBQb21lcml0ZSBrdXJzb3IgbmEgcHJ2aSBzbGVkZeZpIHJlZCBvem5h6GVuIHNhIC0tLT4uCgogIDIuIERhIGJpc3RlIHRla3N0IHBydm9nIHJlZGEgaXpqZWRuYehpbGkgcyB0ZWtzdG9tIGRydWdvZywgbmFtZXN0aXRlCiAgICAga3Vyc29yIG5hIHBydmkgem5hayBQT1NMRSBrb2cg5mV0ZSB1YmFjaXRpIHBvdHJlYmFuIHRla3N0LgoKICAzLiBQcml0aXNuaXRlICBpICBwYSB1bmVzaXRlIHBvdHJlYm5lIGRvcHVuZS4KCiAgNC4gUG8gaXNwcmF2Y2kgc3Zha2UgZ3JlmmtlIHByaXRpc25pdGUgPEVTQz4gZGEgc2UgdnJhdGl0ZSB1IE5vcm1hbCBtb2QuCiAgICAgUG9ub3ZpdGUga29yYWtlIG9kIDIgZG8gNCBkYSBiaXN0ZSBpc3ByYXZpbGkgY2VsdSByZehlbmljdS4KCi0tLT4gRG8gdGVrYSBuZW9qZSB2IHJlZC4KLS0tPiBEZW8gdGVrc3RhIG5lZG9zdGFqZSBpeiBvdm9nIHJlZGEuCgogIDUuIFByZfBpdGUgbmEgc2xlZGXmdSBsZWtjaWp1LgoKCgp+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+fn4KCQkgICAgTGVrY2lqYSAxLjU6IElaTUVOQSBURUtTVEEgLSBET0RBVkFOSkUKCgoJICAgICAgICAgICAqKiBQcml0aXNuaXRlICBBICB6YSBkb2RhdmFuamUgdGVrc3RhLiAqKgoKICAxLiBQb21lcml0ZSBrdXJzb3IgbmEgcHJ2aSBzbGVkZeZpIHJlZCBvem5h6GVuIHNhIC0tLT4uCiAgICAgTmlqZSB2YZ5ubyBnZGUgc2UgbmFsYXppIGt1cnNvciB1IHRvbSByZWR1LgoKICAyLiBQcml0aXNuaXRlICBBICBpIHVuZXNpdGUgZG9kYXRuaSB0ZWtzdC4KCiAgMy4gUG+adG8gc3RlIGRvZGFsaSB0ZWtzdCwgcHJpdGlzbml0ZSA8RVNDPiB6YSBwb3ZyYXRhayB1CiAgICAgTm9ybWFsIG1vZC4KCiAgNC4gUG9tZXJpdGUga3Vyc29yIG5hIGRydWdpIHJlZCBvem5h6GVuIHNhIC0tLT4gaSBwb25hdmxqYWp0ZQogICAgIGtvcmFrZSAyIGkgMyBkb2sgbmUgaXNwcmF2aXRlIHRla3N0LgoKLS0tPiBEZW8gdGVrc3RhIG5lZG9zdGFqZSB1CiAgICAgRGVvIHRla3N0YSBuZWRvc3RhamUgdSBvdm9tIHJlZHUuCi0tLT4gRGVvIHRla3N0YSBuZWRvc3RhamUKICAgICBEZW8gdGVrc3RhIG5lZG9zdGFqZSBpIG92ZGUuCgogIDUuIFByZfBpdGUgbmEgbGVrY2lqdSAxLjYuCn5+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+fgoJCSAgICAgTGVrY2lqYSAxLjY6IElaTUVOQSBGQUpMQQoKCiAgICAgKiogVXBvdHJlYml0ZSAgOndxICB6YSBzbmltYW5qZSB0ZWtzdGEgaSBpemxhemFrIGl6IGVkaXRvcmEuICoqCgogICEhIFVQT1pPUkVOSkU6IFByZSBpenZv8GVuamEgYmlsbyBrb2cga29yYWthLCBwcm/oaXRhanRlIGNlbHUgbGVrY2lqdSEhCgogIDEuIEl6YfBpdGUgaXogZWRpdG9yYSBrYW8gdSBsZWtjaWppIDEuMjogIDpxIQoKICAyLiBOYSBrb21hbmRub20gcHJvbXB0dSB1bmVzaXRlIHNsZWRl5nUga29tYW5kdTogIHZpbSB0dXRvciA8RU5URVI+CiAgICAgJ3ZpbScgamUga29tYW5kYSB6YSBwb2tyZXRhbmphIFZpbSBlZGl0b3JhLCAndHV0b3InIGplIGltZSBmYWpsYSBrb2ppCiAgICAgnmVsaXRlIGRhIG1lbmphdGUuICBLb3Jpc3RpdGUgZmFqbCBrb2ppIGltYXRlIHByYXZvIGRhIG1lbmphdGUuCgogIDMuIFViYWN1anRlIGkgYnJpmml0ZSB0ZWtzdCBrYW8gdSBwcmV0aG9kbmltIGxla2NpamFtYS4KCiAgNC4gU25pbWl0ZSBpem1lbmplbmkgdGVrc3QgaSBpemHwaXRlIGl6IFZpbS1hOiAgOndxIDxFTlRFUj4KCiAgNS4gUG9ub3ZvIHBva3Jlbml0ZSB2aW10dXRvciBpIHByb+hpdGFqdGUgcmV6aW1lIGtvamkgc2xlZGkuCgogIDYuIFBvmnRvIHByb+hpdGF0ZSBrb3Jha2UgaXpuYWQgaSB1IHBvdHB1bm9zdGkgaWggcmF6dW1ldGU6CiAgICAgaXp2cpppdGUgaWguCgp+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+fn4KCQkJICAgICAgUkVaSU1FIGxla2NpamUgMSAKCgogIDEuIEt1cnNvciBzZSBwb21lcmEgc3RyZWxpY2FtYSBpbGkgcG9tb+Z1IHRhc3RlcmEgaGprbCAuCgloIChsZXZvKQlqIChkb2xlKQlrIChnb3JlKQlsIChkZXNubykKCiAgMi4gWmEgcG9rcmV0YW5qZSBWaW0tYSBpeiBzaGVsbC1hOiAgdmltIElNRV9GQUpMQSA8RU5URVI+CgogIDMuIEl6bGF6Ogk8RVNDPgk6cSEgPEVOVEVSPiAJc3ZlIHByb21lbmUgc3UgaXpndWJsamVuZS4KICAgICAgIElMSToJPEVTQz4JOndxIDxFTlRFUj4gCXByb21lbmUgc3Ugc2HodXZhbmUuCgogIDQuIEJyaXNhbmplIHpuYWthIG5hIGtvbWUgc2UgbmFsYXppIGt1cnNvcjogIHgKCiAgNS4gVWJhY2l2YW5qYSBpbGkgZG9kYXZhbmplIHRla3N0YToKCSBpICAgdW5lc2l0ZSB0ZWtzdCA8RVNDPgl1bm9zIGlzcHJlZCBrdXJzb3JhCgkgQSAgIHVuZXNpdGUgdGVrc3QgPEVTQz4JZG9kYXZhbmplIG5hIGtyYWp1IHJlZGEKCk5BUE9NRU5BOiAgUHJpdGlza29tIG5hIDxFU0M+IHByZWJhY3VqZXRlIFZpbSB1IE5vcm1hbCBtb2QgaQogICAgICAgICAgIHByZWtpZGF0ZSBuZZ5lbGplbnUgaWxpIGRlbGltaehubyBpenZymmVudSBrb21hbmR1LgoKTmFzdGF2aXRlIHNhIGxla2Npam9tIDIuCgp+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+fn4KCQkJTGVrY2lqYSAyLjE6IE5BUkVEQkUgQlJJU0FOSkEKCgoJCSAqKiBPdGt1Y2FqdGUgIGR3ICB6YSBicmlzYW5qZSByZehpLiAqKgoKICAxLiBQcml0aXNuaXRlICA8RVNDPiAgZGEgYmlzdGUgYmlsaSBzaWd1cm5pIGRhIHN0ZSB1IE5vcm1hbCBtb2R1LgoKICAyLiBQb21lcml0ZSBrdXJzb3IgbmEgcmVkIG96bmHoZW4gc2EgLS0tPi4KCiAgMy4gUG9tZXJpdGUga3Vyc29yIG5hIHBv6GV0YWsgcmXoaSBrb2p1IHRyZWJhIGl6YnJpc2F0aS4KCiAgNC4gT3RrdWNhanRlICBkdyAgZGEgYmlzdGUgdWtsb25pbGkgcmXoLgoKTkFQT01FTkE6ICBTbG92byAgZCAg5mUgc2UgcG9qYXZpdGkgbmEgZG51IGVrcmFuYSBrYWQgZ2Egb3RrdWNhdGUuICBWaW0g6GVrYQoJICAgZGEgb3RrdWNhdGUgIHcgLiAgQWtvIGplIHByaWthemFubyBuZWtvIGRydWdvIHNsb3ZvLCBwb2dyZZppbGkgc3RlIHUKCSAgIGt1Y2FuanU7IHByaXRpc25pdGUgPEVTQz4gaSBwb2t1mmFqdGUgcG9ub3ZvLiAgKEFrbyBzZSBuZSBwb2phdmkKCSAgIG5pmnRhLCBtb55kYSBqZSBpc2tsanXoZW5hIG9wY2lqYSAnc2hvd2NtZCc6IHZpZGkgbGVrY2lqdSA2LjUuKQoKLS0tPiBOZWtlIHJl6Gkgc21lmm5vIG5lIHByaXBhZGFqdSBuYSBwYXBpciBvdm9qIHJl6GVuaWNpLgoKICA1LiBQb25hdmxqYWp0ZSBrb3Jha2UgMyBpIDQgZG9rIG5lIGlzcHJhdml0ZSByZehlbmljdSwgcGEKICAgICBwcmXwaXRlIG5hIGxla2NpanUgMi4yLgp+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+fn4KCQkgICAgICBMZWtjaWphIDIuMjogSk+KIEJSSVNBTkpBCgoKICAgICAgICoqIE90a3VjYWp0ZSAgZCQgIHphIGJyaXNhbmplIHpuYWtvdmEgZG8ga3JhamEgcmVkYS4gKioKCiAgMS4gUHJpdGlzbml0ZSAgPEVTQz4gIGRhIGJpc3RlIGJpbGkgc2lndXJuaSBkYSBzdGUgdSBOb3JtYWwgbW9kdS4KCiAgMi4gUG9tZXJpdGUga3Vyc29yIG5hIHJlZCBvem5h6GVuIHNhICAtLS0+LgoKICAzLiBQb21lcml0ZSBrdXJzb3IgZG8ga3JhamEgaXNwcmF2bm9nIGRlbGEgcmXoZW5pY2UKICAgICAoUE9TTEUgcHJ2ZSAuICkuCgogIDQuIE90a3VjYWp0ZSAgZCQgIHphIGJyaXNhbmplIG9zdGF0a2EgcmVkYS4KCi0tLT4gTmVrbyBqZSB1bmVvIGtyYWogb3ZvZyByZWRhIGR2YXB1dC4ga3JhaiBvdm9nIHJlZGEgZHZhcHV0LgoKICA1LiBQcmXwaXRlIG5hIGxla2NpanUgMi4zIHphIHBvZHJvYm5pamUgb2JqYZpuamVuamUuCgoKCgoKfn5+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+CgkgICAgICBMZWtjaWphIDIuMzogTyBPUEVSQVRPUklNQSBJIFBPS1JFVElNQQoKCiAgTW5vZ2Uga29tYW5kZSB6YSBpem1lbnUgdGVrc3RhIHNhc3RvamUgc2Ugb2Qgb3BlcmF0b3JhIGkgcG9rcmV0YS4KICBPYmxpayBrb21hbmRlIGJyaXNhbmphIHNhICBkICBvcGVyYXRvcm9tIGplIHNsZWRl5mk6CgogIAlkICAgcG9rcmV0CgogIFByaSDoZW11IGplOgogICAgZCAgICAgIC0gb3BlcmF0b3IgYnJpc2FuamEuCiAgICBwb2tyZXQgLSBvbm8gbmEg6GVtdSDmZSBzZSBvcGVyYWNpamEgaXp2cpphdmF0aSAob3Bpc2FubyB1IG5hc3Rhdmt1KS4KCiAgS3JhdGFrIHNwaXNhayBwb2tyZXRhOgogICAgdyAtIHN2ZSBkbyBwb+hldGthIHNsZWRl5mUgcmXoaSwgTkUgVUtMSlXIVUpVxkkgcHJ2byBzbG92by4KICAgIGUgLSBzdmUgZG8ga3JhamEgdGVrdeZlIHJl6GksIFVLTEpVyFVKVcZJIHBvc2xlZG5qZSBzbG92by4KICAgICQgLSBzdmUgZG8ga3JhamUgcmVkYSwgVUtMSlXIVUpVxkkgcG9zbGVkbmplIHNsb3ZvLgoKICBLdWNhbmplbSAgZGUgIGJyaXNh5mUgc2UgdGVrc3Qgb2Qga3Vyc29yYSBkbyBrcmFqYSByZehpLgoKTkFQT01FTkE6ICBQcml0aXNrb20gc2FtbyBuYSB0YXN0ZXIgcG9rcmV0YSBkb2sgc3RlIHUgTm9ybWFsIG1vZHUsIGJlegogICAgICAgICAgIG9wZXJhdG9yYSwga3Vyc29yIHNlIHBvbWVyYSBrYW8gmnRvIGplIG9waXNhbm8uCgp+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+fn4KCQkgIExla2NpamEgMi40OiBLT1JJisZFTkpFIEJST0pBTkpBIFpBIFBPS1JFVEUKCgogICoqIFVub5plbmplbSBuZWtvZyBicm9qYSBwcmUgcG9rcmV0YSwgcG9rcmV0IHNlIGl6dnKaYXZhIHRhaiBicm9qIHB1dGEuICoqCgogIDEuIFBvbWVyaXRlIGt1cnNvciBuYSByZWQgb3puYehlbiBzYSAtLS0+LgoKICAyLiBPdGt1Y2FqdGUgIDJ3ICBkYSBwb21lcml0ZSBrdXJzb3IgZHZlIHJl6GkgbmFwcmVkLgoKICAzLiBPdGt1Y2FqdGUgIDNlICBkYSBwb21lcml0ZSBrdXJzb3IgbmEga3JhaiB0cmXmZSByZehpIG5hcHJlZC4KCiAgNC4gT3RrdWNhanRlICAwICAobnVsdSkgZGEgcG9tZXJpdGUga3Vyc29yIG5hIHBv6GV0YWsgcmVkYS4KCiAgNS4gUG9ub3ZpdGUga29yYWtlIDIgaSAzIHMgbmVraW0gZHJ1Z2ltIGJyb2pldmltYS4KCi0tLT4gUmXoZW5pY2Egc2EgcmXoaW1hIHBvIGtvam9qIG1vnmV0ZSBwb21lcmF0aSBrdXJzb3IuCgogIDYuIFByZfBpdGUgbmEgbGVrY2lqdSAyLjUuCgoKCgp+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+fn4KICAgICAgICAgICAgIExla2NpamEgMi41OiBLT1JJisZFTkpFIEJST0pBTkpBIFpBIFZFxkUgQlJJU0FOSkUKCgogICoqIFVub5plbmplIG5la29nIGJyb2phIHMgb3BlcmF0b3JvbSBwb25hdmxqYSBvcGVyYXRvciB0YWogYnJvaiBwdXRhLiAqKgoKICBVIGtvbWJpbmFjaWppIG9wZXJhdG9yYSBicmlzYW5qYSBzIHBva3JldGltYSBzcG9tZW51dGltIGl6bmFkCiAgbW+eZXRlIHVuZXRpIGJyb2ogcHJlIHBva3JldGEgZGEgYmlzdGUgaXpicmlzYWxpIHZpmmUgem5ha292YToKCgkgZCAgIGJyb2ogICBwb2tyZXQKCiAgMS4gUG9tZXJpdGUga3Vyc29yIG5hIHBydm8gc2xvdm8gdSByZehpIHMgVkVMSUtJTSBTTE9WSU1BIHUgcmVkdQogICAgIG96bmHoZW5vbSBzYSAtLS0+LgoKICAyLiBPdGt1Y2FqdGUgIGQydyAgZGEgaXpicmmaZXRlIGR2ZSByZehpIHNhIFZFTElLSU0gU0xPVklNQQoKICAzLiBQb25vdml0ZSBrb3Jha2UgMSBpIDIgc2EgcmF6bGnoaXRpbSBicm9qZXZpbWEgZGEgaXpicmmaZXRlCiAgICAgdXphc3RvcG5lIHJl6Gkgc2EgVkVMSUtJTSBTTE9WSU1BIGtvcmma5mVuamVtIHNhbW8gamVkbmUga29tYW5kZS4KCi0tLT4gb3ZhaiBBQkPIxiBE0EUgcmVkIEZHSEkgSksgTE1OIE9QIHMgcmXoaW1hIGplIFJTiiBUVVZajiBpc3ByYXZsamVuLgoKCgp+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+fn4KCQkgICAgIExla2NpamEgMi42OiBPUEVSQUNJSkUgTkFEIFJFRE9WSU1BCgoKCSAgICAgICAqKiBPdGt1Y2FqdGUgIGRkICB6YSBicmlzYW5qZSBjZWxvZyByZWRhLiAqKgoKICBaYm9nIHXoZXN0YWxvc3RpIGJyaXNhbmphIGNlbGloIHJlZG92YSwgYXV0b3JpIFZpLWphIG9kbHXoaWxpIHN1IGRhCiAgamUgbGFrmmUgYnJpc2F0aSByZWRvdmUgYWtvIHNlIG90a3VjYSAgZCAgZHZhcHV0LgoKICAxLiBQb21lcml0ZSBrdXJzb3IgbmEgZHJ1Z2kgcmVkIHUgZG9uam9qIHN0cm9maS4KICAyLiBPdGt1Y2FqdGUgIGRkICBkYSBnYSBpemJyaZpldGUuCiAgMy4gUG9tZXJpdGUga3Vyc29yIG5hIOhldHZydGkgcmVkLgogIDQuIE90a3VjYWp0ZSAgIDJkZCAgIGRhIGJpc3RlIGl6YnJpc2FsaSBkdmEgcmVkYS4KCi0tLT4gIDEpICBTZWRsbyBtaSBqZSBvZCBtYXJhbWUsCi0tLT4gIDIpICBibGF0byBuYSBzdmUgc3RyYW5lLAotLS0+ICAzKSAgdXpkYSBvZCBrYW5hcGEsCi0tLT4gIDQpICBhdXRvIG1pIGplIG92ZGUsCi0tLT4gIDUpICBzYXRvdmkgcG9rYXp1anUgdnJlbWUsCi0tLT4gIDYpICBhIGJp6CBtaSBqZSBvZCBv6GluYQotLS0+ICA3KSAgcHJlYmlqZW5hIJp0YXBhLgoKCn5+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+fgoJCSAgICAgIExla2NpamEgMi43OiBQT05JilRBVkFOSkUgUFJPTUVOQQoKCiAgKiogUHJpdGlzbml0ZSAgdSAgemEgcG9uaZp0YXZhbmplIHBvc2xlZG5qZSBrb21hbmRlLCAgVSAgemEgY2VvIHJlZC4gKioKCiAgMS4gUG9tZXJpdGUga3Vyc29yIG5hIHJlZCBvem5h6GVuIHNhIC0tLT4gaSBwb3N0YXZpdGUgZ2EgbmEgbWVzdG8KICAgICBwcnZlIGdyZZprZS4KICAyLiBPdGt1Y2FqdGUgIHggIGRhIGl6YnJpmmV0ZSBwcnZpIG5lnmVsamVuaSB6bmFrLgogIDMuIE90a3VjYWp0ZSAgdSAgZGEgcG9uaZp0aXRlIHBvc2xlZG5qdSBpenZymmVudSBrb21hbmR1LgogIDQuIFNhZCBpc3ByYXZpdGUgc3ZlIGdyZZprZSB1IHJlZHUga29yaXN0ZeZpIGtvbWFuZHUgIHggIC4KICA1LiBPdGt1Y2FqdGUgdmVsaWtvICBVICBkYSBiaXN0ZSB2cmF0aWxpIHNhZHKeYWogcmVkYSB1IHBydm9iaXRubwogICAgIHN0YW5qZS4KICA2LiBPbmRhIG90a3VjYWp0ZSAgdSAgbmVrb2xpa28gcHV0YSBkYSBiaXN0ZSBwb25pmnRpbGkgIFUKICAgICBpIHByZXRob2RuZSBrb21hbmRlLgogIDcuIFNhZCBvdGt1Y2FqdGUgQ1RSTC1SIChkcp5l5mkgIENUUkwgIGRvayBwcml0aXNrYXRlIFIpCiAgICAgbmVrb2xpa28gcHV0YSBkYSBiaXN0ZSB2cmF0aWxpIGl6bWVuZSAocG9uaZp0aWxpIHBvbmmadGF2YW5qYSkuCgotLS0+IElpaXNzcHJhdml0ZSBncmWaa2UgdXUgb3Z2b20gcmVkdSBpaSBwb29uaZp0aXRlZWUgaWguCgogIDguIE92byBzdSB2ZW9tYSBrb3Jpc25lIGtvbWFuZGUuICBQcmXwaXRlIG5hIHJlemltZSBsZWtjaWplIDIuCgoKfn5+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+CgkJCSAgICAgIFJFWklNRSBsZWtjaWplIDIKCgogIDEuIEJyaXNhbmplIG9kIGt1cnNvcmEgZG8gc2xlZGXmZSByZehpOglkdwogIDIuIEJyaXNhbmplIG9kIGt1cnNvcmEgZG8ga3JhamEgcmVkYToJCWQkCiAgMy4gQnJpc2FuamUgY2Vsb2cgcmVkYToJCQlkZAoKICA0LiBaYSBwb25hdmxqYW5qZSBwb2tyZXRhIHByZXRob2RubyB1bmVzaXRlIGJyb2o6ICAydwogIDUuIE9ibGlrIGtvbWFuZGUgemEgaXptZW51OgogICAgICAgICAgICAgICBvcGVyYXRvciAgIFticm9qXSAgIHBva3JldAogICAgIGdkZSBqZToKICAgICAgIG9wZXJhdG9yIC0gmnRhIHVyYWRpdGksIHJlY2ltbyAgZCAgemEgYnJpc2FuamUKICAgICAgIFticm9qXSAgIC0gbmVvYmF2ZXphbiBicm9qIHBvbmF2bGphbmphIHBva3JldGEKICAgICAgIHBva3JldCAgIC0ga3JldGFuamUgcG8gdGVrc3R1IG5hIGtvbWUgc2UgcmFkaSwKICAgICAgICAgICAgICAgICAga2FvIJp0byBqZTogdyAocmXoKSwgJCAoa3JhaiByZWRhKSwgaXRkLgoKICA2LiBQb21lcmFuamUga3Vyc29yYSBuYSBwb+hldGFrIHJlZGE6ICAwCgogIDcuIFphIHBvbmmadGF2YW5qZSBwcmV0aG9kbmloIGl6bWVuYSwgcHJpdGlzbml0ZToJdSAgKG1hbG8gdSkKICAgICBaYSBwb25pmnRhdmFuamUgc3ZpaCBwcm9tZW5hIHUgcmVkdSwgcHJpdGlzbml0ZToJVSAgKHZlbGlrbyBVKQogICAgIFphIHZyYeZhbmphIHByb21lbmEsIG90a3VjYWp0ZToJCQlDVFJMLVIKCn5+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+fgoJCSAgICAgICBMZWtjaWphIDMuMTogS09NQU5EQSBQT1NUQVZMSkFOSkEKCgogICoqIE90a3VjYWp0ZSAgcCAgZGEgcG9zdGF2aXRlIHByZXRob2RubyBpemJyaXNhbiB0ZWtzdCBpemEga3Vyc29yYS4gKioKCiAgMS4gUG9tZXJpdGUga3Vyc29yIG5hIHBydmkgc2xlZGXmaSByZWQgb3puYehlbiBzYSAtLS0+LgoKICAyLiBPdGt1Y2FqdGUgIGRkICBkYSBpemJyaZpldGUgcmVkIGkgc21lc3RpdGUgZ2EgdSBWaW0gcmVnaXN0YXIuCgogIDMuIFBvbWVyaXRlIGt1cnNvciBuYSByZWQgYyksIElaTkFEIG1lc3RhIGdkZSB0cmViYSBwb3N0YXZpdGkgaXpicmlzYW4gcmVkLgoKICA0LiBPdGt1Y2FqdGUgIHAgIGRhIHBvc3Rhdml0ZSByZWQgaXNwb2Qga3Vyc29yYS4KCiAgNS4gUG9uYXZsamFqdGUga29yYWtlIDIgZG8gNCBkYSBiaXN0ZSBwb3N0YXZpbGkgc3ZlIGxpbmlqZSB1IHByYXZpbG5vbQogICAgIHJlZG9zbGVkdS4KCi0tLT4gZCkgcHJlYmlqZW5hIJp0YXBhLgotLS0+IGIpIHV6ZGEgb2Qga2FuYXBhLAotLS0+IGMpIGEgYmnoIG1pIGplIG9kIG/oaW5hCi0tLT4gYSkgU2VkbG8gbWkgamUgb2QgbWFyYW1lLAoKCn5+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+fgoJCSAgICAgICBMZWtjaWphIDMuMjogS09NQU5EQSBaQU1FTkUKCgogICAgICAqKiBPdGt1Y2FqdGUgIHJ4ICBkYSB6YW1lbml0ZSB6bmFrIGlzcG9kIGt1cnNvcmEgc2xvdm9tICB4IC4gKioKCiAgMS4gUG9tZXJpdGUga3Vyc29yIG5hIHBydmkgc2xlZGXmaSByZWQgb3puYehlbiBzYSAtLS0+LgoKICAyLiBQb21lcml0ZSBrdXJzb3IgdGFrbyBkYSBzZSBuYWxhemkgbmEgcHJ2b2ogZ3JlmmNpLgoKICAzLiBPdGt1Y2FqdGUgIHIgIGkgb25kYSB6bmFrIGtvamkgdHJlYmEgZGEgdHUgc3RvamkuCgogIDQuIFBvbmF2bGphanRlIGtvcmFrZSAyIGkgMyBzdmUgZG9rIHBydmkgcmVkIG5lIGJ1ZGUKICAgICBpc3RpIGthbyBkcnVnaS4KCi0tLT4gIEtlZGkganUgb3ZlaiByZWQgdWdhmmVuLCBuYWtvIGplIHByb3RyZXNhbyBwdXN0YZpuZSB0ZXN0ZXJlIQotLS0+ICBLYWRhIGplIG92YWogcmVkIHVub5plbiwgbmVrbyBqZSBwcml0aXNrYW8gcG9ncmWabmUgdGFzdGVyZSEKCiAgNS4gUHJl8Gl0ZSBuYSBsZWtjaWp1IDMuMi4KCk5BUE9NRU5BOiAgU2V0aXRlIHNlIGRhIHRyZWJhIGRhIHXoaXRlIHZlnmJhbmplbSwgbmUgcGFt5mVuamVtLgoKCn5+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+fgoJCSAgICBMZWtjaWphIDMuMzogT1BFUkFUT1IgSVpNRU5FCgoKCSAgKiogWmEgaXptZW51IHRla3N0YSBkbyBrcmFqYSByZehpLCBvdGt1Y2FqdGUgIGNlICAuKioKCiAgMS4gUG9tZXJpdGUga3Vyc29yIG5hIHBydmkgc2xlZGXmaSByZWQgb3puYehlbiBzYSAtLS0+LgoKICAyLiBQb3N0YXZpdGUga3Vyc29yIG5hICBhICB1ICByYWtkdXIuCgogIDMuIE90a3VjYWp0ZSAgY2UgIGkgaXNwcmF2aXRlIHJl6CAodSBvdm9tIHNsdehhanUgb3RrdWNhanRlICBlZCAgKS4KCiAgNC4gUHJpdGlzbml0ZSA8RVNDPiBpIHBvbWVyaXRlIGt1cnNvciBuYSBzbGVkZeZpIHpuYWsga29qaQogICAgIHRyZWJhIGlzcHJhdml0aS4KCiAgNS4gUG9uYXZsamFqdGUga29yYWtlIDMgaSA0IHN2ZSBkb2sgcHJ2YSByZehlbmljYSBuZSBidWRlIGlzdGEKICAgICBrYW8gZHJ1Z2EuCgotLS0+IE92YWogcmFrZHVyIGltYSBuZWtvbGlrbyByZWpnYSBrb2plIHRyZWZsamEgaXNwcnBpa2F0aSBvcGVyYWdyb20gaXptZW5lLgotLS0+IE92YWogcmVkIGltYSBuZWtvbGlrbyByZehpIGtvamUgdHJlYmEgaXNwcmF2aXRpIG9wZXJhdG9yb20gaXptZW5lLgoKVW/oaXRlIGRhICBjZSAgYnJpmmUgcmXoIGkgcG9zdGF2bGphIGVkaXRvciB1IEluc2VydCBtb2QuCgp+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+fn4KCSAgICAgICAgIExla2NpamEgMy40OiBEQUxKRSBJWk1FTkUgVVBPVFJFQk9NIGMKCgogICAgKiogS29tYW5kYSBpem1lbmUgc2Uga29yaXN0aSBzYSBpc3RpbSBwb2tyZXRpbWEga2FvIGkgYnJpc2FuamUuICoqCgogIDEuIE9wZXJhdG9yIGl6bWVuZSBzZSBrb3Jpc3RpIG5hIGlzdGkgbmHoaW4ga2FvIGkgb3BlcmF0b3IgYnJpc2FuamE6CgogICAgICAgICBjICAgIFticm9qXSAgIHBva3JldAoKICAyLiBQb2tyZXRpIHN1IGlzdGksIHJlY2ltbzogICB3IChyZegpIGkgICQgKGtyYWogcmVkYSkuCgogIDMuIFBvbWVyaXRlIGt1cnNvciBuYSBwcnZpIHNsZWRl5mkgcmVkIG96bmHoZW4gc2EgLS0tPi4KCiAgNC4gUG9tZXJpdGUga3Vyc29yIG5hIHBydnUgZ3Jlmmt1LgoKICA1LiBPdGt1Y2FqdGUgIGMkICBpIHVuZXNpdGUgb3N0YXRhayByZWRhIHRha28gZGEgYnVkZSBpc3RpIGthbwogICAgIGRydWdpIHJlZCwgcGEgcHJpdGlzbml0ZSA8RVNDPi4KCi0tLT4gS3JhaiBvdm9nIHJlZGEgdHJlYmEgaXptZW5pdGkgdGFrbyBkYSBpemdsZWRhIGthbyByZWQgaXNwb2QuCi0tLT4gS3JhaiBvdm9nIHJlZGEgdHJlYmEgaXNwcmF2aXRpIGtvcmma5mVuamVtIGMkIGtvbWFuZGUuCgpOQVBPTUVOQTogIFphIGlzcHJhdmxqYW5qZSBncmWaYWthIG1vnmV0ZSBrb3Jpc3RpdGkgQmFja3NwYWNlIC4Kfn5+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+CgkJCSAgICAgIFJFWklNRSBsZWtjaWplIDMKCgogIDEuIFphIHBvc3RhdmxqYW5qZSB0ZWtzdGEga29qaSBzdGUgdXByYXZvIGl6YnJpc2FsaSwgcHJpdGlzbml0ZSAgcCAuIE92bwogICAgIHBvc3RhdmxqYSB0ZWtzdCBJWkEga3Vyc29yYSAoYWtvIGplIGJpbyBpemJyaXNhbiBqZWRhbiBpbGkgdmmaZSByZWRvdmEKICAgICBzYWRynmFqIOZlIGRv5mkgbmEgcmVkIGlzcG9kIGt1cnNvcmEpLgoKICAyLiBaYSB6YW1lbnUgem5ha2EgbmEga29tZSBzZSBuYWxhemkga3Vyc29yLCBwcml0aXNuaXRlICByICBpIG9uZGEKICAgICCeZWxqZW5pIHpuYWsuCgogIDMuIE9wZXJhdG9yIGl6bWVuZSBkb3p2b2xqYXZhIHByb21lbnUgdGVrc3RhIG9kIGt1cnNvcmEgZG8gcG96aWNpamUgZ2RlCiAgICAgc2UgemF2cpphdmEgcG9rcmV0LiAgUHJpbWVyYSByYWRpLCBrdWNhanRlICBjZSAgemEgaXptZW51IG9kIGt1cnNvcmEgZG8KICAgICBrcmFqYSByZehpLCBpbGkgIGMkICB6YSBpem1lbnUgb2Qga3Vyc29yYSBkbyBrcmFqYSByZWRhLgoKICA0LiBPYmxpayBvcGVyYWNpamUgaXptZW5lIGplOgoKCSBjICAgW2Jyb2pdICAgcG9rcmV0CgpQcmXwaXRlIG5hIG5hcmVkbnUgbGVrY2lqdS4KCgoKfn5+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+CgkgICAgICBMZWtjaWphIDQuMTogUE9aSUNJSkEgS1VSU09SQSBJIFNUQVRVUyBGQUpMQQoKICAqKiBQcml0aXNuaXRlIENUUkwtRyB6YSBwcmlrYXogcG96aWNpamUga3Vyc29yYSB1IHRla3N0dSBpIHN0YXR1cyBmYWpsYS4KICAgICBQcml0aXNuaXRlICBHICB6YSBwb21lcmFuamUga3Vyc29yYSBuYSBuZWtpIHJlZCB1IHRla3N0dS4gKioKCk5BUE9NRU5BOiAgUHJv6Gl0YWp0ZSBjZWx1IGxla2NpanUgcHJlIGl6dm/wZW5qYSBiaWxvIGtvZyBrb3Jha2EhIQoKICAxLiBEcp5pdGUgdGFzdGVyIENUUkwgaSBwcml0aXNuaXRlICBnIC4gIE92byB6b3ZlbW8gQ1RSTC1HLgogICAgIEVkaXRvciDmZSBuYSBkbnUgZWtyYW5hIGlzcGlzYXRpIHBvcnVrdSBzYSBpbWVub20gZmFqbGEgaSBwb3ppY2lqb20KICAgICBrdXJzb3JhIHUgdGVrc3R1LiAgWmFwYW10aXRlIGJyb2ogcmVkYSB6YSAzLiBrb3Jhay4KCk5BUE9NRU5BOiAgVSBkb25qZW0gZGVzbm9tIHVnbHUgbW+eZSBzZSB2aWRldGkgcG96aWNpanUga3Vyc29yYSBha28gamUKICAgICAgICAgICB1a2xqdehlbmEgb3BjaWphICdydWxlcicgKHZpZGkgIDpoZWxwIHJ1bGVyICBpbGkgbGVrY2lqdSA2LjUuKQoKICAyLiBQcml0aXNuaXRlICBHICB6YSBwb21lcmFuamUga3Vyc29yYSBuYSBrcmFqIHRla3N0YS4KICAgICBQcml0aXNuaXRlICAxRyAgaWxpICBnZyAgemEgcG9tcmFuamUga3Vyc29yYSBuYSBwb+hldGFrIHRla3N0YS4KCiAgMy4gT3RrdWNhanRlIGJyb2ogcmVkYSBuYSBrb21lIHN0ZSBtYWxvcHJlIGJpbGkgaSBvbmRhICBHIC4gIEt1cnNvcgogICAgIOZlIHNlIHZyYXRpdGkgbmEgcmVkIG5hIGtvbWUgamUgYmlvIGthZCBzdGUgb3RrdWNhbGkgQ1RSTC1HLgoKICA0LiBBa28gc3RlIHNwcmVtbmksIGl6dnKaaXRlIGtvcmFrZSBvZCAxIGRvIDMuCgp+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+fn4KCQkgICAgTGVrY2lqYSA0LjI6IEtPTUFOREUgUFJFVFJBjklWQU5KQQoKICAgICAgICoqIE90a3VjYWp0ZSAgLyAgaSBvbmRhIGl6cmF6IGtvamkgnmVsaXRlIGRhIHBvdHJhnml0ZS4gKioKCiAgMS4gVSBOb3JtYWwgbW9kdSBvdGt1Y2FqdGUgem5hayAgLyAuICBQcmltaWV0aXRlIGRhIHNlIHpuYWsgcG9qYXZpbwogICAgIHphamVkbm8gc2Ega3Vyc29yb20gbmEgZG51IGVrcmFuYSBrYW8gaSBrb2Qga29tYW5kZSAgOiAuCgogIDIuIFNhZGEgb3RrdWNhanRlICdncnJyZZprYScgPEVOVEVSPi4gIChCZXogcmF6bWFrYSBpIG5hdm9kbmlrYS4pCiAgICAgVG8gamUgcmXoIGtvanUgdHJhnml0ZS4KCiAgMy4gWmEgcG9ub3ZubyB0cmGeZW5qZSBpc3RvZyBpenJhemEsIG90a3VjYWp0ZSAgbiAuCiAgICAgWmEgdHJhnmVuamUgaXN0b2cgaXpyYXphIHUgc3Vwcm90bm9tIHNtZXJ1LCBvdGt1Y2FqdGUgIE4gLgoKICA0LiBaYSB0cmGeZW5qZSBpenJhemEgdW5hdHJhZywga29yaXN0aXRlICA/ICB1bWVzdG8gIC8gLgoKICA1LiBaYSBwb3ZyYXRhayBuYSBwcmV0aG9kbnUgcG96aWNpanUgb3RrdWNhanRlIENUUkwtTyAoZHKeaXRlIENUUkwgZG9rCiAgICAgcHJpdGlza2F0ZSBPICkuICBQb25hdmxqYWp0ZSB6YSByYW5pamUgcG96aWNpamUuICBDVFJMLUkgaWRlIG5hcHJlZC4KCi0tLT4gImdycnJlmmthIiBqZSBwb2dyZZpubzsgdW1lc3RvIGdycnJlmmthIHRyZWJhIGRhIHN0b2ppIGdyZZprYS4KCk5BUE9NRU5BOiAgQWtvIHByZXRyYWdhIGRv8GUgZG8ga3JhamEgdGVrc3RhIHRyYZ5lbmplIOZlIHNlIG5hc3Rhdml0aSBvZAoJICAgbmplZ292b2cgcG/oZXRrYSBvc2ltIGFrbyBqZSBvcGNpamEgJ3dyYXBzY2FuJyBpc2tsanXoZW5hLgp+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+fn4KCQkgIExla2NpamEgNC4zOiBUUkGORU5KRSBQQVJBIFpBR1JBREUKCgoJKiogT3RrdWNhanRlICAlICB6YSBuYWxhnmVuamUgcGFyYSApLCBdIGlsaSB9IC4gKioKCiAgMS4gUG9zdGF2aXRlIGt1cnNvciBuYSBiaWxvIGtvanUgb2QgICggLCAgWyAgaWxpICB7CiAgICAgb3R2b3JlbmloIHphZ3JhZGEgdSByZWR1IG96bmHoZW5vbSBzYSAtLS0+LgoKICAyLiBPdGt1Y2FqdGUgem5hayAgJSAuCgogIDMuIEt1cnNvciDmZSBzZSBwb21lcml0aSBuYSBvZGdvdmFyYWp15nUgemF0dm9yZW51IHphZ3JhZHUuCgogIDQuIE90a3VjYWp0ZSAgJSAgZGEgcG9tZXJpdGUga3Vyc29yIG5hIHBydnUgemFncmFkdSB1IHBhcnUuCgogICAgICA1LiBQb21lcml0ZSBrdXJzb3IgbmEgbmVrdSBvZCAoLCksWyxdLHsgaWxpIH0gaSBwb25vdml0ZSBrb21hbmR1ICAlIC4KCi0tLT4gUmVkICggdGVzdGlyYW5qYSBvYmnobmloICggWyB1Z2xhc3RpaCBdIGkgeyB2aXRp6GFzdGloIH0gemFncmFkYS4pKQoKCk5BUE9NRU5BOiAgVnJsbyBrb3Jpc25vIHUgaXNwcmF2bGphbmp1IGtvZGEgc2EgcmFzcGFyZW5pbSB6YWdyYWRhbWEhCgoKfn5+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+CgkJICAgICAgTGVrY2lqYSA0LjQ6IEtPTUFOREEgWkFNRU5FCgoKICAgICAgICoqIE90a3VjYWp0ZSAgOnMvc3Rhcm8vbm92by9nICBkYSB6YW1lbml0ZSAnc3Rhcm8nIHphICdub3ZvJy4gKioKCiAgMS4gUG9tZXJpdGUga3Vyc29yIG5hIHJlZCBvem5h6GVuIHNhIC0tLT4uCgogIDIuIE90a3VjYWp0ZSAgOnMvcmRpL3JpLyA8RU5URVI+IC4gIFByaW1ldGl0ZSBkYSBvdmEga29tYW5kYSB6YW1lbmp1amUKICAgICBzYW1vIHBydm8gInJkaSIgdSByZWR1LgoKICAzLiBPdGt1Y2FqdGUgIDpzL3JkaS9yaS9nIC4gIERvZGF2YW5qZSBvcGNpamUgIGcgIHpuYehpIGRhIOZlIHNlIGtvbWFuZGEKICAgICBpenZymml0aSB1IGNlbG9tIHJlZHUsIHphbWVub20gc3ZpaCBwb2phdmEgbml6YSAicmRpIi4KCi0tLT4gcmRpYmEgcmRpYmkgZ3JkaXplIHJlcC4KCiAgNC4gWmEgemFtZW51IHN2aWggaXpyYXphIGl6bWXwdSBuZWthIGR2YSByZWRhLAogICAgIG90a3VjYWp0ZSA6Iywjcy9zdGFyby9ub3ZvL2cgICBnZGUgc3UgIywjIGtyYWpuamkgYnJvamV2aSByZWRvdmEgdSBvcHNlZ3UgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHUga29tZSDmZSBzZSBvYmF2aXRpIHphbWVuYS4KICAgICBPdGt1Y2FqdGUgOiVzL3N0YXJvL25vdm8vZyAgICAgemEgemFtZW51IHN2aWggaXpyYXphIHUgY2Vsb20gdGVrc3R1LgogICAgIE90a3VjYWp0ZSA6JXMvc3Rhcm8vbm92by9nYyAgICB6YSBuYWxhnmVuamUgc3ZpaCBpenJhemEgdSB0ZWtzdHUgaQogICAgIAkJCSAgICAgICAgICAgIHBvdHZyZHUgemFtZW5lLgoKfn5+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+CgkJCSAgICAgIFJFWklNRSBsZWtjaWplIDQKCgogIDEuIENUUkwtRyAgcHJpa2F6dWplIHBvemljaWp1IGt1cnNvcmEgdSB0ZWtzdHUgaSBzdGF0dXMgZmFqbGEuCiAgICAgICAgICAgICBHICBwb21lcmEga3Vyc29yIG5hIGtyYWogdGVrc3RhLgogICAgIGJyb2ogICAgRyAgcG9tZXJhIGt1cnNvciBuYSBuYXZlZGVuaSByZWQuCiAgICAgICAgICAgIGdnICBwb21lcmEga3Vyc29yIG5hIHBydmkgcmVkIHRla3N0YS4KCiAgMi4gS3VjYW5qZW0gIC8gIHNhIGl6cmF6b20gdGFqIGl6cmF6IHNlIHRyYZ5pIFVOQVBSRUQuCiAgICAgS3VjYW5qZW0gID8gIHNhIGl6cmF6b20gdGFqIGl6cmF6IHNlIHRyYZ5pIFVOQVpBRC4KICAgICBQb3NsZSBrb21hbmRlIHRyYZ5lbmphIGtvcmlzdGl0ZSAgbiAgemEgbmFsYZ5lbmplIGl6cmF6YSB1IGlzdG9tCiAgICAgc21lcnUsIGEgIE4gIHphIG5hbGGeZW5qZSB1IHN1cHJvdG5vbSBzbWVydS4KICAgICBDVFJMLU8gdnJh5mEga3Vyc29yIG5hIHByZXRob2RudSBwb3ppY2lqdSwgYSBDVFJMLUkgbmEgbmFyZWRudS4KCiAgMy4gS3VjYW5qZW0gICUgIGthZCBqZSBrdXJzb3IgbmEgemFncmFkaSBvbiBzZSBwb21lcmEgbmEgbmplbiBwYXIuCgogIDQuIFphIHphbWVudSBwcnZvZyBpenJhemEgc3Rhcm8gemEgaXpyYXogbm92byAgICAgICAgICAgIDpzL3N0YXJvL25vdm8vCiAgICAgWmEgemFtZW51IHN2aWggaXpyYXphIHUgY2Vsb20gcmVkdSAgICAgICAgICAgICAgICAgICAgOnMvc3Rhcm8vbm92by9nCiAgICAgWmEgemFtZW51IHN2aWggaXpyYXphIHUgb3BzZWd1IGxpbmlqYSAjLCMgICAgICAgICAgICAgOiMsI3Mvc3Rhcm8vbm92by9nCiAgICAgWmEgemFtZW51IHUgY2Vsb20gdGVrc3R1ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiVzL3N0YXJvL25vdm8vZwogICAgIFphIHBvdHZyZHUgc3Zha2UgemFtZW5lIGRvZGFqdGUgJ2MnCQkgICA6JXMvc3Rhcm8vbm92by9nYwoKfn5+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+CgkJTGVrY2lqYSA1LjE6IElaVlKKQVZBTkpFIFNQT0xKQYpOSklIIEtPTUFOREkKCgogICoqIE90a3VjYWp0ZSAgOiEgIHBhIHNwb2xqYZpuanUga29tYW5kdSBrb2p1IJ5lbGl0ZSBkYSBpenZymml0ZS4gKioKCiAgMS4gT3RrdWNhanRlIHBvem5hdHUga29tYW5kdSAgOiAgZGEgYmlzdGUgbmFtZXN0aWxpIGt1cnNvciBuYSBkbm8KICAgICBla3JhbmEuICBUaW1lIG9tb2d15mF2YXRlIHVub3Mga29tYW5kZSB1IGtvbWFuZG5vaiBsaW5pamkgZWRpdG9yYS4KCiAgMi4gT3RrdWNhanRlIHpuYWsgICEgICh1enZp6G5paykuICBPdmltZSBvbW9ndeZhdmF0ZQogICAgIGl6dnKaYXZhbmplIGJpbG8ga29qZSBzcG9samGabmplIGtvbWFuZGUuCgogIDMuIEthbyBwcmltZXIgb3RrdWNhanRlICAgbHMgICBwb3NsZSAhIGkgcHJpdGlzbml0ZSA8RU5URVI+LiAgT3ZvIOZlCiAgICAgcHJpa2F6YXRpIHNhZHKeYWogZGlyZWt0b3JpanVtYSwga2FvIGRhIHN0ZSBuYSBrb21hbmRub20gcHJvbXB0dS4KICAgICBPdGt1Y2FqdGUgICA6IWRpciAgIGFrbyAgIDohbHMgICBuZSByYWRpLgoKTkFQT01FTkE6ICBOYSBvdmFqIG5h6GluIG1vZ3XmZSBqZSBpenZymml0aSBiaWxvIGtvanUgc3BvbGphmm5qdSBrb21hbmR1LAogICAgICAgICAgIHphamVkbm8gc2EgbmplbmltIGFyZ3VtZW50aW1hLgoKTkFQT01FTkE6ICBTdmUgIDogIGtvbWFuZGUgc2UgaXp2cpphdmFqdSBwb5p0byBwcml0aXNuZXRlIDxFTlRFUj4gLgoJICAgVSBkYWxqZW0gdGVrc3R1IHRvIG5l5mVtbyB1dmVrIG5hcG9taW5qYXRpLgoKCn5+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+fgoJCSAgIExla2NpamEgNS4yOiBWSYpFIE8gU05JTUFOSlUgRkFKTE9WQQoKICAgICAgICAgICAqKiBaYSBzbmltYW5qZSBwcm9tZW5hLCBvdGt1Y2FqdGUgIDp3IElNRV9GQUpMQSAuICoqCgogIDEuIE90a3VjYWp0ZSAgOiFkaXIgIGlsaSAgOiFscyAgemEgcHJlZ2xlZCBzYWRynmFqYSBkaXJla3RvcmlqdW1hLgogICAgIFZl5iB6bmF0ZSBkYSBtb3JhdGUgcHJpdGlzbnV0aSA8RU5URVI+IHBvc2xlIHRvZ2EuCgogIDIuIEl6YWJlcml0ZSBpbWUgZmFqbGEga29qaSBqb5ogbmUgcG9zdG9qaSwgbnByLiBURVNULgoKICAzLiBPdGt1Y2FqdGU6CSA6dyBURVNUICAgKGdkZSBqZSBURVNUIGltZSBrb2plIHN0ZSBpemFicmFsaS4pCgogIDQuIFRpbWUg5mV0ZSBzbmltaXRpIGNlbyBmYWpsIChWaW0gVHV0b3IpIHBvZCBpbWVub20gVEVTVC4KICAgICBaYSBwcm92ZXJ1LCBvdGt1Y2FqdGUgb3BldCAgOiFkaXIgIGlsaSAgOiFscyB6YSBwcmVnbGVkCiAgICAgc2Fkcp5hamEgZGlyZWt0b3JpanVtYS4KCk5BUE9NRU5BOiAgQWtvIGJpc3RlIG5hcHVzdGlsaSBWaW0gaSBwb25vdm8gZ2EgcG9rcmVudWxpIHNhIHZpbSBURVNUICwKICAgICAgICAgICB0ZWtzdCBiaSBiaW8gdGHobmEga29waWphIG92b2cgZmFqbGEgdSB0cmVudXRrdSBrYWQgc3RlCgkgICBnYSBzbmltaWxpLgoKICA1LiBJemJyaZppdGUgZmFqbCB0YWtvIJp0byDmZXRlIG90a3VjYXRpIChNUy1ET1MpOgk6IWRlbCBURVNUCgkJCQkgICAgICAgICBpbGkgKFVuaXgpOgk6IXJtIFRFU1QKCn5+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+fgoJCSAgTGVrY2lqYSA1LjM6IFNOSU1BTkpFIE9aTkHIRU5PRyBURUtTVEEKCgogICAqKiBEYSBiaXN0ZSBzbmltaWxpIGRlbyB0ZWtzdGEsIG90a3VjYWp0ZSAgdiAgcG9rcmV0ICA6dyBJTUVfRkFKTEEgKioKCiAgMS4gUG9tZXJpdGUga3Vyc29yIG5hIG92dSBsaW5panUuCgogIDIuIFByaXRpc25pdGUgIHYgIGkgcG9tZXJpdGUga3Vyc29yIHBldCByZWRvdmEgaXNwb2QuICBQcmltZXRpdGUgZGEgamUKICAgICB0ZWtzdCBvem5h6GVuIGludmVyem5vLgoKICAzLiBQcml0aXNuaXRlICA6IC4gIE5hIGRudSBla3JhbmEgcG9qYXZp5mUgc2UgIDonPCwnPiAuCgogIDQuIE90a3VjYWp0ZSAgdyBURVNUICAsIGdkZSBqZSBURVNUIGltZSBmYWpsYSBrb2ppIGpvmiBuZSBwb3N0b2ppLgogICAgIFByb3Zlcml0ZSBkYSB6YWlzdGEgcGmaZSAgOic8LCc+dyBURVNUICBwcmUgbmVnbyCadG8gcHJpdGlzbmV0ZSA8RU5URVI+LgoKICA1LiBWaW0g5mUgc25pbWl0aSBvem5h6GVuaSB0ZWtzdCB1IFRFU1QuICBQcm92ZXJpdGUgc2EgIDohZGlyICBpbGkgICFscyAuCiAgICAgTmVtb2p0ZSBqb5ogYnJpc2F0aSBmYWpsISAgS29yaXN0aeZlbW8gZ2EgdSBuYXJlZG5vaiBsZWtjaWppLgoKTkFQT01FTkE6ICBLb21hbmRhICB2ICB6YXBv6GluamUgdml6dWVsbm8gb3puYehhdmFuamUuICBNb55ldGUgcG9tZXJhdGkga3Vyc29yCiAgICAgICAgICAgaSB0YWtvIG1lbmphdGkgdmVsaehpbnUgb3puYehlbm9nIHRla3N0YS4gIE9uZGEgbW+eZXRlIHVwb3RyZWJpdGkKICAgICAgICAgICBvcGVyYXRvcmUgbmFkIHRla3N0b20uICBOYSBwcmltZXIsICBkICDmZSBpemJyaXNhdGkgb3puYehlbmkgdGVrc3QuCgp+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+fn4KCQkgICBMZWtjaWphIDUuNDogVchJVEFWQU5KRSBGQUpMQSBVIFRFS1NUCgoKICAgICAgICoqIFphIHViYWNpdmFuamUgc2Fkcp5hamEgZmFqbGEsIG90a3VjYWp0ZSAgOnIgSU1FX0ZBSkxBICAqKgoKICAxLiBQb3N0YXZpdGUga3Vyc29yIGl6bmFkIG92ZSBsaW5pamUuCgpOQVBPTUVOQTogIFBvmnRvIGl6dnKaaXRlIDIuIGtvcmFrIHZpZGXmZXRlIHRla3N0IGl6IGxla2NpamUgNS4zLiAgVGFkYQogICAgICAgICAgIHBvbWVyaXRlIGt1cnNvciBET0xFIGRhIGJpc3RlIHBvbm92byB2aWRlbGkgb3Z1IGxla2NpanUuCgogIDIuIFXoaXRhanRlIGZhamwgVEVTVCBrb3Jpc3Rl5mkga29tYW5kdSAgOnIgVEVTVCAgZ2RlIGplIFRFU1QgaW1lIGZhamxhCiAgICAga29qZSBzdGUga29yaXN0aWxpIHUgcHJldGhvZG5vaiBsZWtjaWppLiAgU2Fkcp5haiB16Gl0YW5vZyBmYWpsYSBqZQogICAgIHViYehlbiBpc3BvZCBrdXJzb3JhLgoKICAzLiBEYSBiaXN0ZSBwcm92ZXJpbGkgZGEgamUgZmFqbCB16Gl0YW4sIHZyYXRpdGUga3Vyc29yIHVuYXphZCBpCiAgICAgcHJpbWV0aXRlIGR2ZSBrb3BpamUgbGVrY2lqZSA1LjMsIG9yaWdpbmFsbnUgaSBvbnUgaXogZmFqbGEuCgpOQVBPTUVOQTogIFRha2/wZSBtb55ldGUgdehpdGF0aSBpemxheiBzcG9samGabmplIGtvbWFuZGUuICBOYSBwcmltZXIsCgkgICA6ciAhbHMgIOZlIHXoaXRhdGkgaXpsYXoga29tYW5kZSAgbHMgIGkgcG9zdGF2aXRpIGdhIGlzcG9kCiAgICAgICAgICAga3Vyc29yYS4KCgp+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+fn4KCQkJICAgICAgUkVaSU1FIGxla2NpamUgNQoKCiAgMS4gIDoha29tYW5kYSAgaXp2cpphdmEgc3BvbGphmm5qdSBrb21hbmR1LgoKICAgICAgS29yaXNuaSBwcmltZXJpOgoJIChNUy1ET1MpCSAgKFVuaXgpCgkgIDohZGlyCQkgICA6IWxzCQkgICAtICBwcmVnbGVkIHNhZHKeYWphIGRpcmVrdG9yaWp1bWEuCgkgIDohZGVsIEZBSkwgICAgICAgOiFybSBGQUpMICAgICAgIC0gIGJyaZplIGZhamwgRkFKTC4KCiAgMi4gIDp3IEZBSkwgIHphcGlzdWplIHRyZW51dG5pIHRla3N0IG5hIGRpc2sgcG9kIGltZW5vbSBGQUpMLgoKICAzLiAgdiAgcG9rcmV0ICA6dyBJTUVfRkFKTEEgIHNuaW1hIHZpenVlbG5vIG96bmHoZW5lIHJlZG92ZSB1IGZhamwKICAgICAgSU1FX0ZBSkxBLgoKICA0LiAgOnIgSU1FX0ZBSkxBICB16Gl0YXZhIGZhamwgSU1FX0ZBSkxBIHNhIGRpc2thIGkgc3RhdmxqYQogICAgICBuamVnb3Ygc2Fkcp5haiBpc3BvZCBrdXJzb3JhLgoKICA1LiAgOnIgIWRpciAgdehpdGF2YSBpemxheiBrb21hbmRlIGRpciBpIHBvc3RhdmxqYSBnYSBpc3BvZCBrdXJzb3JhLgoKCgp+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+fn4KCQkJIExla2NpamEgNi4xOiBLT01BTkRBIE9UVk9SSQoKCgkqKiBQcml0aXNuaXRlICBvICBkYSBiaXN0ZSBvdHZvcmlsaSByZWQgaXNwb2Qga3Vyc29yYQoJICAgaSBwcmWabGkgdSBJbnNlcnQgbW9kLiAqKgoKICAxLiBQb21lcml0ZSBrdXJzb3IgbmEgc2xlZGXmaSByZWQgb3puYehlbiBzYSAtLS0+LgoKICAyLiBPdGt1Y2FqdGUgbWFsbyAgbyAgZGEgYmlzdGUgb3R2b3JpbGkgbm92aSByZWQgSVNQT0Qga3Vyc29yYQogICAgIGkgcHJlmmxpIHUgSW5zZXJ0IG1vZC4KCiAgMy4gT3RrdWNhanRlIG5la2kgdGVrc3QgaSBvbmRhIHByaXRpc25pdGUgPEVTQz4gZGEgYmlzdGUgaXphmmxpCiAgICAgaXogSW5zZXJ0IG1vZGEuCgotLS0+IEthZCBwcml0aXNuZXRlICBvICBrdXJzb3IgcHJlbGF6aSB1IG5vdm9vdHZvcmVuaSByZWQgdSBJbnNlcnQgbW9kdS4KCiAgNC4gWmEgb3R2YXJhbmplIHJlZGEgSVpOQUQga3Vyc29yYSwgdW1lc3RvIG1hbG9nIG90a3VjYWp0ZSB2ZWxpa28gTyAuCiAgICAgSXNwcm9iYWp0ZSBuYSBkb25qZW0gcmVkdSBvem5h6GVub20gc2EgLS0tPi4KCi0tLT4gT3R2b3JpdGUgcmVkIGl6bmFkIG92b2cga3VjYW5qZW0gdmVsaWtvZyAgTyAgZG9rIGplIGt1cnNvciB1IG92b20gcmVkdS4KCgp+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+fn4KCQkJTGVrY2lqYSA2LjI6IEtPTUFOREEgRE9EQUoKCgoJICAgICAqKiBPdGt1Y2FqdGUgIGEgIHphIGRvZGF2YW5qZSB0ZWtzdGEgSVpBIGt1cnNvcmEuICoqCgogIDEuIFBvbWVyaXRlIGt1cnNvciBuYSBwb+hldGFrIHNsZWRl5mVnIHJlZGEgb3puYehlbm9nIHNhIC0tLT4uCiAgCiAgMi4gS3VjYWp0ZSAgZSAgZG9rIGt1cnNvciBuZSBkb/BlIG5hIGtyYWogcmXoaSAgcmUgLgoKICAzLiBPdGt1Y2FqdGUgIGEgIChtYWxvKSBkYSBiaXN0ZSBkb2RhbGkgdGVrc3QgSVpBIGt1cnNvcmEuCgogIDQuIERvcHVuaXRlIHJl6CBrYW8gmnRvIGplIHUgcmVkdSBpc3BvZC4gIFByaXRpc25pdGUgPEVTQz4gemEgaXpsYXphawogICAgIGl6IEluc2VydCBtb2RhLgoKICA1LiBTYSAgZSAgcHJl8Gl0ZSBuYSBuYXJlZG51IG5lcG90cHVudSByZeggaSBwb25vdml0ZSBrb3Jha2UgMyBpIDQuCiAgCi0tLT4gT3ZhaiByZSBvbW9ndeZhdmEgdmUgZG9kYXYgdGVrc3RhIHUgbmVrb20gcmVkdS4KLS0tPiBPdmFqIHJlZCBvbW9ndeZhdmEgdmWeYmFuamUgZG9kYXZhbmphIHRla3N0YSB1IG5la29tIHJlZHUuCgpOQVBPTUVOQTogIEtvbWFuZGUgYSwgaSwgaSAgQSAgYWt0aXZpcmFqdSBpc3RpIEluc2VydCBtb2QsIGplZGluYQogICAgICAgICAgIHJhemxpa2EgamUgdSBwb3ppY2lqaSBvZCBrb2plIOZlIHNlIHRla3N0IHViYWNpdmF0aS4KCn5+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+fgoJCSAgICBMZWtjaWphIDYuMzogRFJVR0kgTkHISU4gWkFNRU5FCgoKICAgICAgKiogT3RrdWNhanRlIHZlbGlrbyAgUiAgZGEgYmlzdGUgemFtZW5pbGkgdmmaZSBvZCBqZWRub2cgem5ha2EuICoqCgogIDEuIFBvbWVyaXRlIGt1cnNvciBuYSBwcnZpIHNsZWRl5mkgcmVkIG96bmHoZW4gc2EgLS0tPi4KICAgICBQb21lcml0ZSBrdXJzb3IgbmEgcG/oZXRhayBwcnZvZyAgeHh4IC4KCiAgMi4gUHJpdGlzbml0ZSAgUiAgaSBvdGt1Y2FqdGUgYnJvaiBrb2ppIGplIHJlZCBpc3BvZCwKICAgICB0YWtvIGRhIHphbWVuaSB4eHggLgoKICAzLiBQcml0aXNuaXRlIDxFU0M+IHphIGl6bGF6YWsgaXogUmVwbGFjZSBtb2RhLgogICAgIFByaW1ldGl0ZSBkYSBqZSBvc3RhdGFrIHJlZGEgb3N0YW8gbmVwcm9tZW5qZW4uCgogIDQuIFBvbm92aXRlIGtvcmFrZSBkYSBiaXN0ZSB6YW1lbmlsaSBkcnVnbyB4eHguCgotLS0+IERvZGF2YW5qZSAxMjMgbmEgeHh4IGRhamUgeHh4LgotLS0+IERvZGF2YW5qZSAxMjMgbmEgNDU2IGRhamUgNTc5LgoKTkFQT01FTkE6ICBSZXBsYWNlIG1vZCBqZSBrYW8gSW5zZXJ0IG1vZCwgcyB0b20gcmF6bGlrb20gmnRvIHN2YWtpCiAgICAgICAgICAgdW5ldGkgem5hayBicmmaZSB2ZeYgcG9zdG9qZeZpLgoKfn5+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+CgkJTGVrY2lqYSA2LjQ6IEtPUElSQU5KRSBJIExFUExKRU5KRSBURUtTVEEKCgogICAgKiogS29yaXN0aXRlIG9wZXJhdG9yICB5ICB6YSBrb3BpcmFuamUgYSAgcCAgemEgbGVwbGplbmplIHRla3N0YS4gKioKCiAgMS4gUG9tZXJpdGUga3Vyc29yIG5hIHJlZCBzYSAtLS0+ICBpIHBvc3Rhdml0ZSBrdXJzb3IgcG9zbGUgImEpIi4KICAKICAyLiBBa3RpdmlyYWp0ZSBWaXN1YWwgbW9kIHNhICB2ICBpIHBvbWVyaXRlIGt1cnNvciBzdmUgZG8gaXNwcmVkICJwcnZpIi4KICAKICAzLiBQcml0aXNuaXRlICB5ICBkYSBiaXN0ZSBrb3BpcmFsaSBvem5h6GVuaSB0ZWtzdCB1IGludGVybmkgYmFmZXIuCgogIDQuIFBvbWVyaXRlIGt1cnNvciBkbyBrcmFqYSBzbGVkZeZlZyByZWRhOiAgaiQKCiAgNS4gUHJpdGlzbml0ZSAgcCAgZGEgYmlzdGUgemFsZXBpbGkgdGVrc3QuICBPbmRhIG90a3VjYWp0ZTogIGEgZHJ1Z2kgPEVTQz4gLgoKICA2LiBVcG90cmViaXRlIFZpc3VhbCBtb2QgZGEgb3puYehpdGUgIiByZWQuIiwga29waXJhanRlIHNhICB5ICwga3Vyc29yCiAgICAgcG9tZXJpdGUgbmEga3JhaiBzbGVkZeZlZyByZWRhIHNhICBqJCAgaSB0YW1vIHphbGVwaXRlIHRla3N0IHNhICBwIC4KCi0tLT4gIGEpIG92byBqZSBwcnZpIHJlZC4KICAgICAgYikKCk5BUE9NRU5BOiAgdGFrb/BlIG1vnmV0ZSBrb3Jpc3RpdGkgIHkgIGthbyBvcGVyYXRvcjsgIHl3ICBrb3BpcmEgamVkbnUgcmXoLgp+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+fn4KCQkgICAgTGVrY2lqYSA2LjU6IFBPU1RBVkxKQU5KRSBPUENJSkEKCgogKiogUG9zdGF2aXRlIG9wY2lqdSB0YWtvIGRhIHRyYZ5lbmplIGkgemFtZW5hIGlnbm9yaZp1IHZlbGnoaW51IHNsb3ZhICoqCgogIDEuIFBvdHJhnml0ZSByZeggJ3Jhemxpa2EnOiAgL3Jhemxpa2EgPEVOVEVSPgogICAgIFBvbm92aXRlIG5la29saWtvIHB1dGEgcHJpdGlza29tIG5hICBuIC4KCiAgMi4gQWt0aXZpcmFqdGUgb3BjaWp1ICdpYycgKElnbm9yZSBjYXNlKTogIDpzZXQgaWMKCiAgMy4gUG9ub3ZvIHBvdHJhnml0ZSByZeggJ3Jhemxpa2EnIHByaXRpc2tvbSBuYSAgbgogICAgIFByaW1ldGl0ZSBkYSBzdSBzYWRhIHByb25h8GVuaSBpIFJBWkxJS0EgaSBSYXpsaWthLgoKICA0LiBBa3RpdmlyYWp0ZSBvcGNpamUgJ2hsc2VhcmNoJyBpICdpbmNzZWFyY2gnOiAgOnNldCBobHMgaXMKCiAgNS4gUG9ub3ZvIG90a3VjYWp0ZSBrb21hbmR1IHRyYZ5lbmphIGkgdW/oaXRlIHJhemxpa2U6ICAvcmF6bGlrYSA8RU5URVI+CgogIDYuIFphIGRlYWt0aXZpcmFuamUgb3BjaWplICBpYyAga3VjYWp0ZTogIDpzZXQgbm9pYwoKTkFQT01FTkE6ICBaYSBuZW96bmHoYXZhbmplIHByb25h8GVuaWggaXpyYXphIG90a3VjYWp0ZTogIDpub2hsc2VhcmNoCk5BUE9NRU5BOiAgQWtvIJ5lbGl0ZSBkYSBuZSByYXpsaWt1amV0ZSB2ZWxp6GludSBzbG92YSB1IHNhbW8gamVkbm9qIGtvbWFuZGkKCSAgIHRyYZ5lbmphLCBkb2RhanRlICBcYyAgdSBpenJhejogIC9yYXpsaWthXGMgPEVOVEVSPgp+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+fn4KCQkJICAgICAgUkVaSU1FIGxla2NpamUgNgoKICAxLiBQcml0aXNuaXRlICBvICB6YSBvdHZhcmFuamUgcmVkYSBJU1BPRCBrdXJzb3JhIGkgcHJlbGF6YWsgdSBJbnNlcnQgbW9kLgogICAgIFByaXRpc25pdGUgIE8gIHphIG90dmFyYW5qZSByZWRhIElaTkFEIGt1cnNvcmEuCgogIDIuIFByaXRpc25pdGUgIGEgIHphIHVub3MgdGVrc3RhIElaQSBrdXJzb3JhLgogICAgIFByaXRpc25pdGUgIEEgIHphIHVub3MgdGVrc3RhIG5hIGtyYWp1IHJlZGEuCgogIDMuIEtvbWFuZGEgIGUgIHBvbWVyYSBrdXJzb3IgbmEga3JhaiByZehpLgoKICA0LiBPcGVyYXRvciAgeSAga29waXJhIHRla3N0LCAgcCAgZ2EgbGVwaS4KCiAgNS4gS3VjYW5qZSB2ZWxpa29nICBSICBha3RpdmlyYSBSZXBsYWNlIG1vZCBkb2sgbmUgcHJpdGlzbmV0ZSA8RVNDPiAuCgogIDYuIEt1Y2FuamUgIjpzZXQgeHh4IiBha3RpdmlyYSBvcGNpanUgInh4eCIuICBOZWtlIG9wY2lqZSBzdToKICAJJ2ljJyAnaWdub3JlY2FzZScJbmUgcmF6bGlrdWplIHZlbGlrYS9tYWxhIHNsb3ZhIHByaSB0cmGeZW5qdQoJJ2lzJyAnaW5jc2VhcmNoJwlwcmlrYXp1amUgcHJvbmHwZW4gdGVrc3QgZG9rIGt1Y2F0ZSBpenJhegoJJ2hscycgJ2hsc2VhcmNoJwlvem5h6GF2YSBpbnZlcnpubyBzdmUgcHJvbmHwZW5lIGl6cmF6ZQogICAgIE1vnmV0ZSBrb3Jpc3RpdGUgZHVnbyBpbGkga3JhdGtvIGltZSBvcGNpamUuCgogIDcuIElzcHJlZCBpbWVuYSBvcGNpamUgc3Rhdml0ZSAibm8iIGRhIGplIGRlYWt0aXZpcmF0ZTogIDpzZXQgbm9pYwoKfn5+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+CgkJICAgICAgIExla2NpamEgNy4xOiBET0JJSkFOSkUgUE9NT8ZJCgoKCQkgICAqKiBLb3Jpc3RpdGUgb24tbGluZSBzaXN0ZW0gemEgcG9tb+YgKioKCiAgVmltIGltYSBkZXRhbGphbiBvbi1saW5lIHNpc3RlbSB6YSBwb21v5i4gIFphIHBv6GV0YWssIHBva3WaYWp0ZSBuZZp0bwogIG9kIHNsZWRl5mVnOgoJLSBwcml0aXNuaXRlIHRhc3RlciA8SEVMUD4gKGFrbyBnYSBpbWF0ZSBuYSB0YXN0YXR1cmkpCgktIHByaXRpc25pdGUgdGFzdGVyIDxGMT4gKGFrbyBnYSBpbWF0ZSBuYSB0YXN0YXR1cmkpCgktIG90a3VjYWp0ZSAgOmhlbHAgPEVOVEVSPgoKICBQcm/oaXRhanRlIHRla3N0IHUgcHJvem9ydSBwb21v5mkgZGEgYmlzdGUgbmF16GlsaSBwb21v5iByYWRpLgogIEt1Y2FuamVtICBDVFJMLVcgQ1RSTC1XICBwcmVsYXppdGUgaXogamVkbm9nIHByb3pvcmEgdSBkcnVnaS4KICBPdGt1Y2FqdGUgIDpxIDxFTlRFUj4gIGRhIHphdHZvcml0ZSBwcm96b3IgcG9tb+ZpLgoKICBQb21v5iBvIHByYWt0aehubyBiaWxvIGtvam9qIHRlbWkgbW+eZXRlIGRvYml0aSBkb2RhdmFuamVtIGFyZ3VtZW50YQogIGtvbWFuZGkgIjpoZWxwIi4gIFBva3WaYWp0ZSBvdm8gKG5lIHphYm9yYXZpdGUgPEVOVEVSPiBuYSBrcmFqdSk6CgoJOmhlbHAgdwoJOmhlbHAgY19DVFJMLUQKCTpoZWxwIGluc2VydC1pbmRleAoJOmhlbHAgdXNlci1tYW51YWwKfn5+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+CgkJTGVrY2lqYSA3LjI6IFBSQVZMSkVOSkUgU1RBUlROT0cgU0tSSVBUQQoKCgkJICAgKiogQWt0aXZpcmFqdGUgbW9ndeZub3N0aSBlZGl0b3JhICoqCgogIFZpbSBpbWEgbW5vZ28gdmmaZSBtb2d15m5vc3RpIG5lZ28gVmksIGFsaSB2ZeZpbmEgbmlqZSBhdXRvbWF0c2tpCiAgYWt0aXZpcmFuYS4gIFphIGRvZGF0bmUgbW9ndeZub3N0aSBuYXByYXZpdGUgInZpbXJjIiBmYWpsLgoKICAxLiBPdHZvcml0ZSAidmltcmMiIGZhamwuICBPdm8gemF2aXNpIG9kIHZhmmVnIHNpc3RlbWE6Cgk6ZSB+Ly52aW1yYwkJemEgVW5peAoJOmUgJFZJTS9fdmltcmMJCXphIE1TLVdpbmRvd3MKCiAgMi4gT25kYSB16Gl0YWp0ZSBwcmltZXIgc2Fkcp5hamEgInZpbXJjIiBmYWpsYToKCTpyICRWSU1SVU5USU1FL3ZpbXJjX2V4YW1wbGUudmltCgogIDMuIFNuaW1pdGUgZmFqbCBzYToKCTp3CgogIFNsZWRl5mkgcHV0IGthZGEgcG9rcmVuZXRlIFZpbSwgYm9qZW5qZSBzaW50YWtzZSB0ZWtzdGEgYmnmZQogIGFrdGl2aXJhbm8uIFN2YSBzdm9qYSBwb2RlmmF2YW5qYSBtb55ldGUgZG9kYXRpIHUgInZpbXJjIiBmYWpsLgogIFphIHZpmmUgaW5mb3JtYWNpamEgb3RrdWNhanRlICA6aGVscCB2aW1yYy1pbnRybwoKfn5+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+CgkJICAgICBMZWtjaWphIDcuMzogQVVUT01BVFNLTyBET1ZSikFWQU5KRQoKCgkqKiBEb3ZymmF2YW5qZSBrb21hbmRuZSBsaW5pamUgc2EgQ1RSTC1EIGkgPFRBQj4gKioKCiAgMS4gUG9kZXNpdGUgVmltIGRhIG5lIGJ1ZGUgdSBWaS1rb21wYXRpYmlsbm9tIG1vZHU6ICA6c2V0IG5vY3AKCiAgMi4gUG9nbGVkYWp0ZSBrb2ppIGZhamxvdmkgcG9zdG9qZSB1IGRpcmVrdG9yaWp1bXU6ICA6IWxzICBpbGkgIDohZGlyCgogIDMuIE90a3VjYWp0ZSBwb+hldGFrIGtvbWFuZGU6ICA6ZQoKICA0LiBPdGt1Y2FqdGUgIENUUkwtRCAgaSBWaW0g5mUgcHJpa2F6YXRpIHNwaXNhayBrb21hbmRpIGtvamUgcG/oaW5qdSBzYSAiZSIuCgogIDUuIFByaXRpc25pdGUgPFRBQj4gIGkgVmltIOZlIGRvcHVuaXRpIGltZSBrb21hbmRlIHUgIjplZGl0Ii4KCiAgNi4gRG9kYWp0ZSByYXptYWsgaSBwb+hldGFrIGltZW5hIHBvc3RvamXmZWcgZmFqbGE6ICA6ZWRpdCBGQQoKICA3LiBQcml0aXNuaXRlIDxUQUI+LiAgVmltIOZlIGRvcHVuaXRpIGltZSBmYWpsYSAoYWtvIGplIGplZGluc3R2ZW5vKS4KCk5BUE9NRU5BOiAgTW9ndeZlIGplIGRvcHVuaXRpIG1ub2dlIGtvbWFuZGUuICBTYW1vIHByb2JhanRlIENUUkwtRCBpIDxUQUI+LgogICAgICAgICAgIE5hcm/oaXRvIGplIGtvcmlzbm8gemEgIDpoZWxwICBrb21hbmRlLgoKfn5+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+CgkJCSAgICAgIFJFWklNRSBsZWtjaWplIDcKCgogIDEuIE90a3VjYWp0ZSAgOmhlbHAgIGlsaSBwcml0aXNuaXRlIDxGMT4gaWxpIDxIZWxwPiAgemEgcG9tb+YuCgogIDIuIE90a3VjYWp0ZSAgOmhlbHAga29tYW5kYSAgYmlzdGUgZG9iaWxpIHBvbW/mIHphIHR1IGtvbWFuZHUuCgogIDMuIE90a3VjYWp0ZSAgQ1RSTC1XIENUUkwtVyAgemEgcHJlbGF6YWsgdSBkcnVnaSBwcm96b3IuCgogIDQuIE90a3VjYWp0ZSAgOnEgIGRhIHphdHZvcml0ZSBwcm96b3IgcG9tb+ZpLgoKICA1LiBOYXByYXZpdGUgdmltcmMgc3RhcnRuaSBza3JpcHQgemEgYWt0aXZpcmFuamUgcG9kZZphdmFuamEga29qYQogICAgIHZhbSBvZGdvdmFyYWp1LgoKICA2LiBEb2sga3VjYXRlIG5la3Ugb2QgIDogIGtvbWFuZGksIHByaXRpc25pdGUgQ1RSTC1EIGRhIGJpc3RlIHZpZGVsaSBtb2d15mUKICAgICB2cmVkbm9zdGkuICBQcml0aXNuaXRlIDxUQUI+IGRhIG9kYWJlcmV0ZSBqZWRudSBvZCBuamloLgoKCgoKCgp+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+fn4KICBPdmltIGplIHByaXJ16G5payB6YXZymmVuLiAgTmplZ292IGNpbGogamUgYmlvIGtyYXRhayBwcmVnbGVkIFZpbSBlZGl0b3JhLAogIGtvbGlrbyBkYSBvbW9ndeZpIG5qZWdvdm8gcmVsYXRpdm5vIGplZG5vc3Rhdm5vIGtvcmma5mVuamUuICBQcmlydehuaWsgbmlqZQogIHBvdHB1biwgamVyIFZpbSBpbWEgbW5vZ28gdmmaZSBrb21hbmRpLiAgS2FvIHNsZWRl5mUsIHByb+hpdGFqdGUgcHJpcnXobmlrOgogICI6aGVscCB1c2VyLW1hbnVhbCIuCgogIFphIGRhbGplIOhpdGFuamUgaSB16GVuamUsIHByZXBvcnXodWplbW8ga25qaWd1OgoJVmltIC0gVmkgSW1wcm92ZWQgLSBieSBTdGV2ZSBPdWFsbGluZQoJSXpkYXZh6DogTmV3IFJpZGVycwogIFBydmEga25qaWdhIHBvdHB1bm8gcG9zdmXmZW5hIFZpbS11LiAgTmFyb+hpdG8ga29yaXNuYSB6YSBwb+hldG5pa2UuCiAgSW1hIG1ub5p0dm8gcHJpbWVyYSBpIHNsaWthLgogIFZpZGl0ZSBodHRwOi8vaWNjZi1ob2xsYW5kLm9yZy9jbGljazUuaHRtbAoKICBTbGVkZeZhIGtuamlnYSBqZSBzdGFyaWphIGkgdmmaZSBnb3ZvcmkgbyBWaS11IG5lZ28gbyBWaW0tdSwgYWxpIGplIHRha2/wZQogIHByZXBvcnXodWplbW86CglMZWFybmluZyB0aGUgVmkgRWRpdG9yIC0gYnkgTGluZGEgTGFtYgoJSXpkYXZh6DogTydSZWlsbHkgJiBBc3NvY2lhdGVzIEluYy4KICBEb2JyYSBrbmppZ2EgaXoga29qZSBtb55ldGUgc2F6bmF0aSBza29ybyBzdmUgmnRvIG1vnmV0ZSByYWRpdGkgdSBWaS1qdS4KICCKZXN0byBpemRhbmplIGltYSBpIGluZm9ybWFjaWphIG8gVmltLXUuCgogIE92YWogcHJpcnXobmlrIHN1IG5hcGlzYWxpOiBNaWNoYWVsIEMuIFBpZXJjZSBpIFJvYmVydCBLLiBXYXJlLAogIENvbG9yYWRvIFNjaG9vbCBvZiBNaW5lcyBrb3Jpc3Rl5mkgaWRlamUgQ2hhcmxlc2EgU21pdGhhLAogIENvbG9yYWRvIFN0YXRlIFVuaXZlcnNpdHkuICBFLW1haWw6IGJ3YXJlQG1pbmVzLmNvbG9yYWRvLmVkdS4KCiAgUHJpbGFnb/BhdmFuamUgemEgVmltIHVyYWRpbyBqZSBCcmFtIE1vb2xlbmFhci4KCiAgUHJldm9kIG5hIHNycHNraTogSXZhbiBOZWpnZWJhdWVyIDxpYW5AdW5zLmFjLnJzPgogIFZlcnppamEgMS4wLCBtYWovanVuaSAyMDE0Lgp+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+fn4K