PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo9ICAgICAgVyBpIGwgbCBrIG8gbSBtIGUgbiAgIGltICAgViBJIE0gICBUIHUgdCBvIHIgICAgLSAgICBWZXJzaW9uIDEuNy5kZS4xICA9Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCiAgIFZpbSBpc3QgZWluIHNlaHIgbeRjaHRpZ2VyIEVkaXRvciwgZGVyIHZpZWxlIEJlZmVobGUgYmVyZWl0c3RlbGx0OyB6dSB2aWVsZSwKICAgdW0gYWxsZSBpbiBlaW5lbSBUdXRvciB3aWUgZGllc2VtIHp1IGVya2zkcmVuLiAgRGllc2VyIFR1dG9yIGlzdCBzbwogICBnZXN0YWx0ZXQsIHVtIGdlbnVnIEJlZmVobGUgdm9yenVzdGVsbGVuLCBkYXNzIER1IGRpZSBG5GhpZ2tlaXQgZXJsYW5nc3QsCiAgIFZpbSBtaXQgTGVpY2h0aWdrZWl0IGFscyBlaW5lbiBBbGx6d2Vjay1FZGl0b3IgenUgdmVyd2VuZGVuLgogICBEaWUgWmVpdCBm/HIgZGFzIER1cmNoYXJiZWl0ZW4gZGllc2VzIFR1dG9ycyBiZXRy5Gd0IGNhLiAyNS0zMCBNaW51dGVuLAogICBhYmjkbmdpZyBkYXZvbiwgd2llIHZpZWwgWmVpdCBEdSBtaXQgRXhwZXJpbWVudGllcmVuIHZlcmJyaW5nc3QuCgogICBBQ0hUVU5HOgogICBEaWUgaW4gZGVuIExla3Rpb25lbiBhbmdld2VuZGV0ZW4gS29tbWFuZG9zIHdlcmRlbiBkZW4gVGV4dCBtb2RpZml6aWVyZW4uCiAgIEVyc3RlbGxlIGVpbmUgS29waWUgZGllc2VyIERhdGVpLCBpbiBkZXIgRHUg/GJlbiB3aWxsc3QgKGZhbGxzIER1ICJ2aW10dXRvciIKICAgYXVmZ2VydWZlbiBoYXN0LCBpc3QgZGllcyBiZXJlaXRzIGVpbmUgS29waWUpLgoKICAgRXMgaXN0IHdpY2h0aWcsIHNpY2ggenUgdmVyZ2VnZW535HJ0aWdlbiwgZGFzcyBkaWVzZXIgVHV0b3IgZvxyIGRhcyBBbndlbmRlbgogICBrb256aXBpZXJ0IGlzdC4gRGFzIGJlZGV1dGV0LCBkYXNzIER1IGRpZSBCZWZlaGxlIGFud2VuZGVuIG11c3N0LCB1bSBzaWUKICAgcmljaHRpZyB6dSBsZXJuZW4uIFdlbm4gRHUgbnVyIGRlbiBUZXh0IGxpZXN0LCB2ZXJnaXNzdCBEdSBkaWUgQmVmZWhsZSEKCiAgIEpldHp0IHN0ZWxsZSBzaWNoZXIsIGRhc3MgZGVpbmUgVW1zdGVsbHRhc3RlIE5JQ0hUIGdlZHL8Y2t0IGlzdCB1bmQgYmV05HRpZ2UKICAgZGllICAgaiAgIFRhc3RlIGdlbvxnZW5kIE1hbCwgdW0gZGVuIEN1cnNvciBuYWNoIHVudGVuIHp1IGJld2VnZW4sIHNvIGRhc3MKICAgTGVrdGlvbiAxLjEgZGVuIEJpbGRzY2hpcm0gdm9sbGtvbW1lbiBhdXNm/GxsdC4Kfn5+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+CgkJCUxla3Rpb24gMS4xOiBCRVdFR0VOIERFUyBDVVJTT1JTCgogICoqIFVtIGRlbiBDdXJzb3IgenUgYmV3ZWdlbiwgZHL8Y2tlIGRpZSBoLGosayxsIFRhc3RlbiB3aWUgdW50ZW4gZ2V6ZWlndC4gKioKCSAgICAgXgkJIEhpbGZlc3RlbGx1bmc6CgkgICAgIGsJCSBEaWUgaCBUYXN0ZSBiZWZpbmRldCBzaWNoIGxpbmtzIHVuZCBiZXdlZ3QgbmFjaCBsaW5rcy4KICAgICAgIDwgaAkgbCA+CSBEaWUgbCBUYXN0ZSBsaWVndCByZWNodHMgdW5kIGJld2VndCBuYWNoIHJlY2h0cy4KCSAgICAgagkJIERpZSBqIFRhc3RlIORobmVsdCBlaW5lbSBQZmVpbCBuYWNoIHVudGVuLgoJICAgICB2CiAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgYXVmIGRlbSBCaWxkc2NoaXJtIHVtaGVyLCBiaXMgRHUgRGljaCBzaWNoZXIgZvxobHN0LgoKICAyLiBIYWx0ZSBkaWUgTmFjaC1VbnRlbi1UYXN0ZSAoaikgZ2Vkcvxja3QsIGJpcyBzaWUgc2ljaCB3aWVkZXJob2x0LgogICAgIEpldHp0IHdlad90IER1LCB3aWUgRHUgRGljaCB6dXIgbuRjaHN0ZW4gTGVrdGlvbiBiZXdlZ2VuIGthbm5zdC4KCiAgMy4gQmVudXR6ZSBkaWUgTmFjaC1VbnRlbi1UYXN0ZSwgdW0gRGljaCB6dSBMZWt0aW9uIDEuMiB6dSBiZXdlZ2VuLgoKQW5tZXJrdW5nOiBJbW1lciwgd2VubiBEdSBEaXIgdW5zaWNoZXIgYmlzdCD8YmVyIGRhcywgd2FzIER1IGdldGlwcHQgaGFzdCwKCSAgIGRy/GNrZSA8RVNDPiAsIHVtIERpY2ggaW4gZGVuIE5vcm1hbG1vZHVzIHp1IGJlZ2ViZW4uCgkgICBEYW5uIGdpYiBkYXMgZ2V3/G5zY2h0ZSBLb21tYW5kbyBub2NoIGVpbm1hbCBlaW4uCgpBbm1lcmt1bmc6IERpZSBDdXJzb3ItVGFzdGVuIHNvbGx0ZW4gZWJlbmZhbGxzIGZ1bmt0aW9uaWVyZW4uIEFiZXIgd2VubiBEdQoJICAgaGprbCBiZW51dHp0LCB3aXJzdCBEdSBpbiBkZXIgTGFnZSBzZWluLCBEaWNoIHNlaHIgdmllbCBzY2huZWxsZXIKCSAgIHVtaGVyenViZXdlZ2VuLCB3ZW5uIER1IERpY2ggZWlubWFsIGRhcmFuIGdld/ZobnQgaGFzdC4gV2lya2xpY2ghCn5+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+fgoJCQkgICAgTGVrdGlvbiAxLjI6IFZJTSBCRUVOREVOCgoKICAhISBIaW53ZWlzOiBCZXZvciBEdSBlaW5lbiBkZXIgdW50ZW4gYXVmZ2Vm/GhydGVuIFNjaHJpdHRlIGF1c2b8aHJzdCwgbGllcwogICAgIGRpZXNlIGdlc2FtdGUgTGVrdGlvbiEhCgogIDEuIERy/GNrZSBkaWUgPEVTQz4gVGFzdGUgKHVtIHNpY2hlcnp1c3RlbGxlbiwgZGFzcyBEdSBpbSBOb3JtYWxtb2R1cyBiaXN0KS4KCiAgMi4gVGlwcGU6CTpxISA8RU5URVI+LgogICAgIERpZXMgYmVlbmRldCBkZW4gRWRpdG9yIHVuZCBWRVJXSVJGVCBhbGxlIMRuZGVydW5nZW4sIGRpZSBEdSBnZW1hY2h0IGhhc3QuCgogIDMuIFdlbm4gRHUgZGllIEVpbmdhYmVhdWZmb3JkZXJ1bmcgc2llaHN0LCBnaWIgZGFzIEtvbW1hbmRvIGVpbiwgZGFzIERpY2ggenUKICAgICBkaWVzZW0gVHV0b3IgZ2Vm/GhydCBoYXQuIERpZXMgd+RyZToJdmltdHV0b3IgPEVOVEVSPgoKICA0LiBXZW5uIER1IERpciBkaWVzZSBTY2hyaXR0ZSBlaW5nZXBy5Gd0IGhhc3QgdW5kIER1IERpY2ggc2ljaGVyIGb8aGxzdCwKICAgICBm/GhyZSBTY2hyaXR0ZSAxIGJpcyAzIGF1cywgdW0gZGVuIEVkaXRvciB6dSB2ZXJsYXNzZW4gdW5kIHdpZWRlcgogICAgIGhpbmVpbnp1Z2VsYW5nZW4uCgpBbm1lcmt1bmc6ICA6cSEgPEVOVEVSPiAgdmVyd2lyZnQgYWxsZSDEbmRlcnVuZ2VuLCBkaWUgRHUgZ2VtYWNodCBoYXN0LiBFaW5pZ2UKICAgICBMZWt0aW9uZW4gc3DkdGVyIGxlcm5zdCBEdSwgZGllIMRuZGVydW5nZW4gaW4gZWluZXIgRGF0ZWkgenUgc3BlaWNoZXJuLgoKICA1LiBCZXdlZ2UgZGVuIEN1cnNvciBhYnfkcnRzIHp1IExla3Rpb24gMS4zLgogfn5+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+CgkJICAgICBMZWt0aW9uIDEuMzogVEVYVCBFRElUSUVSRU4gLSBM1lNDSEVOCgoKCSAqKiBEcvxja2UgIHggICwgdW0gZGFzIFplaWNoZW4gdW50ZXIgZGVtIEN1cnNvciB6dSBs9nNjaGVuLiAqKgoKICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dSBkZXIgbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZSB1bnRlbi4KCiAgMi4gVW0gZGllIEZlaGxlciB6dSBiZWhlYmVuLCBiZXdlZ2UgZGVuIEN1cnNvciwgYmlzIGVyIPxiZXIgZGVtIFplaWNoZW4gc3RlaHQsCiAgICAgZGFzIGdlbPZzY2h0IHdlcmRlbiBzb2xsLgoKICAzLiBEcvxja2UgZGllICB4ICBUYXN0ZSwgdW0gZGFzIHVuZXJ3/G5zY2h0ZSBaZWljaGVuIHp1IGz2c2NoZW4uCgogIDQuIFdpZWRlcmhvbGUgZGllIFNjaHJpdHRlIDIgYmlzIDQsIGJpcyBkZXIgU2F0eiBrb3JyZWt0IGlzdC4KCi0tLT4gRGllIEtrdWggc3ByYW5nZyD8YmJlcnIgZGVlbiBNb29uZC4KCiAgNS4gTnVuLCBkYSBkaWUgWmVpbGUga29ycmVrdCBpc3QsIGdlaGUgd2VpdGVyIHp1ciBMZWt0aW9uIDEuNC4KCkFubWVya3VuZzogV+RocmVuZCBEdSBkdXJjaCBkaWVzZW4gVHV0b3IgZ2Voc3QsIHZlcnN1Y2hlIG5pY2h0LCBhdXN3ZW5kaWcgenUKICAgIGxlcm5lbiwgbGVybmUgdmllbG1laHIgZHVyY2ggQW53ZW5kZW4uCgoKfn5+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+CgkJICAgICBMZWt0aW9uIDEuNDogVEVYVCBFRElUSUVSRU4gLSBFSU5G3EdFTgoKCgkJICAgICoqICBEcvxja2UgIGkgICwgdW0gVGV4dCBlaW56dWb8Z2VuLiAqKgoKICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLgoKICAyLiBVbSBkaWUgZXJzdGUgWmVpbGUgbWl0IGRlciB6d2VpdGVuIGdsZWljaHp1bWFjaGVuLCBiZXdlZ2UgZGVuIEN1cnNvciBhdWYKICAgICBkYXMgZXJzdGUgWmVpY2hlbiBOQUNIIGRlciBTdGVsbGUsIGFuIGRlciBUZXh0IGVpbmdlZvxndCB3ZXJkZW4gc29sbC4KCiAgMy4gRHL8Y2tlICBpICB1bmQgZ2liIGRpZSBu9nRpZ2VuIEVyZ+RuenVuZ2VuIGVpbi4KCiAgNC4gV2VubiBqZXdlaWxzIGVpbiBGZWhsZXIgYmVzZWl0aWd0IGlzdCwgZHL8Y2tlIDxFU0M+ICwgdW0genVtIE5vcm1hbG1vZHVzCiAgICAgenVy/GNrenVrZWhyZW4uCgkJIFdpZWRlcmhvbGUgU2Nocml0dGUgMiBiaXMgNCwgdW0gZGVuIFNhdHogenUga29ycmlnaWVyZW4uCgotLS0+IEluIGRpZXNlciBmdCBldHdhcyAuCi0tLT4gSW4gZGllc2VyIFplaWxlIGZlaGx0IGV0d2FzIFRleHQuCgogIDUuIFdlbm4gRHUgRGljaCBtaXQgZGVtIEVpbmb8Z2VuIHZvbiBUZXh0IHNpY2hlciBm/Ghsc3QsIGdlaGUgenUgTGVrdGlvbiAxLjUuCgoKfn5+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+CgkJICAgICBMZWt0aW9uIDEuNTogVEVYVCBFRElUSUVSRU4gLSBBTkbcR0VOCgoKCQkgICAgICoqIERy/GNrZSAgQSAgLCB1bSBUZXh0IGFuenVm/Gdlbi4gKioKCiAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIGVyc3RlbiB1bnRlbiBzdGVoZW5kZW4gbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZS4KICAgICBEYWJlaSBpc3QgZ2xlaWNoZ/xsdGlnLCBhdWYgd2VsY2hlbSBaZWljaGVuIGRlciBaZWlsZSBkZXIgQ3Vyc29yIHN0ZWh0LgoKICAyLiBEcvxja2UgIEEgIHVuZCBnaWIgZGllIGVyZm9yZGVybGljaGVuIEVyZ+RuenVuZ2VuIGVpbi4KCiAgMy4gV2VubiBkYXMgQW5m/GdlbiBhYmdlc2NobG9zc2VuIGlzdCwgZHL8Y2tlIDxFU0M+LCB1bSBpbiBkZW4gTm9ybWFsbW9kdXMKICAgICB6dXL8Y2t6dWtlaHJlbi4KCiAgNC4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIHp3ZWl0ZW4gbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZSB1bmQgd2llZGVyaG9sZQogICAgIGRpZSBTY2hyaXR0ZSAyIHVuZCAzLCB1bSBkZW4gU2F0eiB6dSBhdXN6dWJlc3Nlcm4uCgotLS0+IEluIGRpZXNlciBaZWlsZSBmZWgKICAgICBJbiBkaWVzZXIgWmVpbGUgZmVobHQgZXR3YXMgVGV4dC4KLS0tPiBBdWNoIGhpZXIgc3RlaAogICAgIEF1Y2ggaGllciBzdGVodCBldHdhcyBVbnZvbGxzdORuZGlnZXMuCgogIDUuIFdlbm4gRHUgZGljaCBtaXQgZGVtIEFuZvxnZW4gdm9uIFRleHQgc2ljaGVyIGb8aGxzdCwgZ2VoZSB6dSBMZWt0aW9uIDEuNi4Kfn5+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+CgkJICAgICAgIExla3Rpb24gMS42OiBFSU5FIERBVEVJIEVESVRJRVJFTgoKCQkgKiogQmVudXR6ZSAgOndxICAsIHVtIGVpbmUgRGF0ZWkgenUgc3BlaWNoZXJuIHVuZCBWaW0genUgdmVybGFzc2VuLiAqKgoKICAhISBIaW53ZWlzOiBCZXZvciBEdSBlaW5lbiBkZXIgdW50ZW4gYXVmZ2Vm/GhydGVuIFNjaHJpdHRlIGF1c2b8aHJzdCwgbGllcwogICAgIGRpZXNlIGdlc2FtdGUgTGVrdGlvbiEhCgogIDEuIFZlcmxhc3NlIGRlbiBFZGl0b3Igc28gd2llIGluIExla3Rpb24gMS4yOiAgOnEhICAgICAgIAoJICAgT2RlciwgZmFsbHMgZHUgWnVncmlmZiB6dSBlaW5lbSBhbmRlcmVuIFRlcm1pbmFsIGhhc3QsIGb8aHJlIGRhcyAKCQkgRm9sZ2VuZGUgZG9ydCBhdXMuCgogIDIuIEdpYiBkaWVzZXMgS29tbWFuZG8gaW4gZGllIEVpbmdhYmVhdWZmb3JkZXJ1bmcgZWluOiAgdmltIHR1dG9yIDxFTlRFUj4KICAgICAndmltJyBpc3QgZGVyIEF1ZnJ1ZiBkZXMgRWRpdG9ycywgJ3R1dG9yJyBpc3QgZGllIHp1IGVkaXRpZXJlbmRlIERhdGVpLgogICAgIEJlbnV0emUgZWluZSBEYXRlaSwgZGllIGdl5G5kZXJ0IHdlcmRlbiBkYXJmLgoKICAzLiBG/GdlIFRleHQgZWluIG9kZXIgbPZzY2hlIGlobiwgd2llIER1IGluIGRlbiB2b3JhbmdlaGVuZGVuIExla3Rpb25lbiAKICAgICBnZWxlcm50IGhhc3QuCgogIDQuIFNwZWljaGVyZSBkaWUgZ2XkbmRlcnRlIERhdGVpIHVuZCB2ZXJsYXNzZSBWaW0gbWl0OiAgOndxICA8RU5URVI+CgogIDUuIEZhbGxzIER1IGluIFNjaHJpdHQgMSBkZW4gdmltdHV0b3IgYmVlbmRldCBoYXN0LCBzdGFydGUgdmltdHV0b3IgbmV1IHVuZAoJICAgYmV3ZWdlIGRpY2ggYWJ35HJ0cyBiaXMgenVyIGZvbGdlbmRlbiBadXNhbW1lbmZhc3N1bmcuCgogIDYuIE5hY2hkZW0gRHUgb2JpZ2UgU2Nocml0dGUgZ2VsZXNlbiB1bmQgdmVyc3RhbmRlbiBoYXN0OiBm/GhyZSBzaWUgZHVyY2guCn5+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+fgoJCQkgWlVTQU1NRU5GQVNTVU5HIFZPTiBMRUtUSU9OIDEKCgogIDEuIERlciBDdXJzb3Igd2lyZCBtaXQgZGVuIFBmZWlsdGFzdGVuIG9kZXIgZGVuIFRhc3RlbiBoamtsIGJld2VndC4KCSBoIChsaW5rcykgICAgIGogKHVudGVuKSAgICAgayAoYXVmd+RydHMpICAgIGwgKHJlY2h0cykKCiAgMi4gVW0gVmltIGF1cyBkZXIgRWluZ2FiZWF1ZmZvcmRlcnVuZyB6dSBzdGFydGVuLCB0aXBwZTogdmltIERBVEVJIDxFTlRFUj4KCiAgMy4gVW0gVmltIHp1IHZlcmxhc3NlbiB1bmQgYWxsZSDEbmRlcnVuZ2VuIHp1IHZlcndlcmZlbiwgdGlwcGU6CgkJPEVTQz4gIDpxISAgPEVOVEVSPiAuCgogIDQuIFVtIGRhcyBaZWljaGVuIHVudGVyIGRlbSBDdXJzb3IgenUgbPZzY2hlbiwgdGlwcGU6ICB4CgogIDUuIFVtIFRleHQgZWluenVm/GdlbiBvZGVyIGFuenVm/GdlbiwgdGlwcGU6CgkgaSAgIEVpbnp1ZvxnZW5kZW4gVGV4dCBlaW5nZWJlbiAgIDxFU0M+ICAgIEVpbmb8Z2VuIHZvciBkZW0gQ3Vyc29yCgkgQSAgIEFuenVm/GdlbmRlbiBUZXh0IGVpbmdlYmVuICAgIDxFU0M+ICAgIEFuZvxnZW4gbmFjaCBkZW0gWmVpbGVuZW5kZQoKQW5tZXJrdW5nOiBEcvxja2VuIHZvbiA8RVNDPiBicmluZ3QgRGljaCBpbiBkZW4gTm9ybWFsbW9kdXMgb2RlciBicmljaHQgZWluCiAgICAgdW5nZXdvbGx0ZXMsIGVyc3QgdGVpbHdlaXNlIGVpbmdlZ2ViZW5lcyBLb21tYW5kbyBhYi4KCiAgICAgTnVuIGZhaHJlIG1pdCBMZWt0aW9uIDIgZm9ydC4Kfn5+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+CgkJCSAgTGVrdGlvbiAyLjE6IEzWU0NIS09NTUFORE9TCgoKCQkgICAqKiBUaXBwZSAgZHcgICwgdW0gZWluIFdvcnQgenUgbPZzY2hlbi4gKioKCiAgMS4gRHL8Y2tlICA8RVNDPiAgLCB1bSBzaWNoZXJ6dXN0ZWxsZW4sIGRhc3MgRHUgaW0gTm9ybWFsbW9kdXMgYmlzdC4KCiAgMi4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW4uCgogIDMuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBBbmZhbmcgZWluZXMgV29ydGVzLCBkYXMgZ2Vs9nNjaHQgd2VyZGVuIHNvbGwuCgogIDQuIFRpcHBlICBkdyAgLCB1bSBkYXMgV29ydCB6dSBlbnRmZXJuZW4uCgogIEFubWVya3VuZzogRGVyIEJ1Y2hzdGFiZSAgZCAgZXJzY2hlaW50IGF1ZiBkZXIgdW50ZXJzdGVuIFplaWxlIGRlcyBTY2hpcm1zLAogICAgICAgIHdlbm4gRHUgaWhuIGVpbmdpYnN0LiBWaW0gd2FydGV0IGRhcmF1ZiwgZGFzcyBEdSAgdyAgZWluZ2lic3QuIEZhbGxzIER1CiAgICAgICAgZWluIGFuZGVyZXMgWmVpY2hlbiBhbHMgIGQgIHNpZWhzdCwgaGFzdCBEdSBldHdhcyBGYWxzY2hlcyBnZXRpcHB0OwogICAgICAgIGRy/GNrZSA8RVNDPiB1bmQgYmVnaW5uZSBub2NoIGVpbm1hbC4KCi0tLT4gRWluaWdlIFf2cnRlciBsdXN0aWcgZ2Vo9nJlbiBuaWNodCBQYXBpZXIgaW4gZGllc2VuIFNhdHouCgogIDUuIFdpZWRlcmhvbGUgZGllIFNjaHJpdHRlIDMgdW5kIDQsIGJpcyBkZXIgU2F0eiBrb3JyZWt0IGlzdCB1bmQgZ2VoZQogICAgIHp1ciBMZWt0aW9uIDIuMi4Kfn5+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+CgkJICAgICAgTGVrdGlvbiAyLjI6IFdFSVRFUkUgTNZTQ0hLT01NQU5ET1MKCgoJICAgICoqIFRpcHBlICBkJCAgLCB1bSBiaXMgenVtIEVuZGUgZGVyIFplaWxlIHp1IGz2c2NoZW4uICoqCgogIDEuIERy/GNrZSA8RVNDPiAsIHVtIHNpY2hlcnp1c3RlbGxlbiwgZGFzcyBEdSBpbSBOb3JtYWxtb2R1cyBiaXN0LgoKICAyLiBCZXdlZ2UgZGVuIEN1cnNvciB6dSBkZXIgbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZSB1bnRlbi4KCiAgMy4gQmV3ZWdlIGRlbiBDdXJzb3IgenVtIEVuZGUgZGVyIGtvcnJla3RlbiBaZWlsZSAoTkFDSCBkZW0gZXJzdGVuIC4gKS4KCiAgNC4gVGlwcGUgICAgZCQgICAgLCB1bSBiaXMgenVtIFplaWxlbmVuZGUgenUgbPZzY2hlbi4KCi0tLT4gSmVtYW5kIGhhdCBkYXMgRW5kZSBkZXIgWmVpbGUgZG9wcGVsdCBlaW5nZWdlYmVuLiBkb3BwZWx0IGVpbmdlZ2ViZW4uCgoKICA1LiBHZWhlIHdlaXRlciB6dXIgTGVrdGlvbiAyLjMgLCB1bSB6dSB2ZXJzdGVoZW4sIHdhcyBoaWVyYmVpIHZvcmdlaHQuCgoKCgoKfn5+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+CgkJIExla3Rpb24gMi4zOiDcQkVSIE9QRVJBVE9SRU4gVU5EIEJFV0VHVU5HU1rcR0UKCgogIFZpZWxlIEtvbW1hbmRvcywgZGllIFRleHQg5G5kZXJuLCBzZXR6ZW4gc2ljaCBhdXMgZWluZW0gT3BlcmF0b3IgdW5kIGVpbmVyCiAgQmV3ZWd1bmcgenVzYW1tZW4uIERhcyBGb3JtYXQgZvxyIGVpbiBM9nNjaGtvbW1hbmRvIG1pdCBkZW0gTPZzY2hvcGVyYXRvciAgZAogIGxhdXRldCB3aWUgZm9sZ3Q6CgogICAgZCAgQmV3ZWd1bmcKCiAgd29iZWk6CiAgICBkICAgICAgICAtIGRlciBM9nNjaG9wZXJhdG9yCiAgICBCZXdlZ3VuZyAtIHdvcmF1ZiBkZXIgTPZzY2hvcGVyYXRvciBhbmdld2FuZHQgd2lyZCAodW50ZW4gYXVmZ2Vm/GhydCkuCgogIEVpbmUga2xlaW5lIEF1Zmxpc3R1bmcgdm9uIEJld2VndW5nZW46CiAgICB3IC0gYmlzIHp1bSBCZWdpbm4gZGVzIG7kY2hzdGVuIFdvcnRlcyBPSE5FIGRlc3NlbiBlcnN0ZXMgWmVpY2hlbi4KICAgIGUgLSB6dW0gRW5kZSBkZXMgYWt0dWVsbGVuIFdvcnRlcyBNSVQgZGVzc2VuIGxldHp0ZW0gWmVpY2hlbi4KICAgICQgLSB6dW0gRW5kZSBkZXIgWmVpbGUgTUlUIGRlbSBsZXR6dGVuIFplaWNoZW4uCgogIERlbWVudHNwcmVjaGVuZCBs9nNjaHQgZGllIEVpbmdhYmUgdm9uICBkZSAgdm9tIEN1cnNvciBhbiBiaXMgenVtIFdvcnRlbmRlLgoKQW5tZXJrdW5nOiAgRGllIEVpbmdhYmUgbGVkaWdsaWNoIGRlcyBCZXdlZ3VuZ3N0ZWlscyBpbSBOb3JtYWxtb2R1cyBiZXdlZ3QgZGVuCiAgQ3Vyc29yIGVudHNwcmVjaGVuZC4Kfn5+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+CglMZWt0aW9uIDIuNDogQU5XRU5EVU5HIEVJTkVTIFrESExFUlMgRtxSIEVJTkVOIEJFV0VHVU5HU1NDSFJJVFQKCgogICAqKiBEaWUgRWluZ2FiZSBlaW5lciBaYWhsIHZvciBlaW5lbSBCZXdlZ3VuZ3NzY2hyaXR0IHdpZWRlcmhvbHQgZGllc2VuLiAqKgoKICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gQmVnaW5uIGRlciBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVudGVuLgoKICAyLiBUaXBwZSAgMncgICwgdW0gZGVuIEN1cnNvciB6d2VpIFf2cnRlciB2b3J35HJ0cyB6dSBiZXdlZ2VuLgoKICAzLiBUaXBwZSAgM2UgICwgdW0gZGVuIEN1cnNvciB6dW0gRW5kZSBkZXMgZHJpdHRlbiBXb3J0ZXMgenUgYmV3ZWdlbi4KCiAgNC4gVGlwcGUgIDAgIChOdWxsKSAsIHVtIHp1bSBBbmZhbmcgZGVyIFplaWxlIHp1IGdlbGFuZ2VuLgoKICA1LiBXaWVkZXJob2xlIFNjaHJpdHRlIDIgdW5kIDMgbWl0IHZlcnNjaGllZGVuZW4gTnVtbWVybi4KCiAgLS0tPiBEaWVzIGlzdCBudXIgZWluZSBaZWlsZSBhdXMgV/ZydGVybiwgdW0gc2ljaCBkYXJpbiBoZXJ1bXp1YmV3ZWdlbi4KCiAgNi4gR2VoZSB3ZWl0ZXIgenUgTGVrdGlvbiAyLjUuCgoKCgp+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+fn4KCSBMZWt0aW9uIDIuNTogQU5XRU5EVU5HIEVJTkVTIFrESExFUlMgRtxSIE1FSFJFUkUgTNZTQ0hWT1JHxE5HRQoKCiAgICoqIERpZSBFaW5nYWJlIGVpbmVyIFphaGwgbWl0IGVpbmVtIE9wZXJhdG9yIHdpZWRlcmhvbHQgZGllc2VuIG1laHJmYWNoLiAqKgoKICBJbiBkZXIgS29tYmluYXRpb24gYXVzIEz2c2Nob3BlcmF0b3IgdW5kIEJld2VndW5nc3NjaHJpdHQgKHNpZWhlIG9iZW4pIAogIHN0ZWxsdCBtYW4sIHVtIG1laHIgenUgbPZzY2hlbiBkZW0gU2Nocml0dCBlaW5lbiBa5GhsZXIgdm9yYW46CgkgZCAgTnVtbWVyICBCZXdlZ3VuZ3NzY2hyaXR0CgogIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBlcnN0ZW4gV29ydCBpbiBHUk9TU0JVQ0hTVEFCRU4gaW4gZGVyIG1pdCAtLS0+CiAgICAgbWFya2llcmVuIFplaWxlLgoKICAyLiBUaXBwZSAgZDJ3ICAsIHVtIGRpZSB6d2VpIFf2cnRlciBpbiBHUk9TU0JVQ0hTVEFCRU4genUgbPZzY2hlbi4KCiAgMy4gV2llZGVyaG9sZSBTY2hyaXR0ZSAxIHVuZCAgMiBtaXQgZWluZW0gYW5kZXJlbiBa5GhsZXIsIHVtIGRpZSBkYXJhdWZmb2wtCiAgICAgZ2VuZGVuIFf2cnRlciBpbiBHUk9TU0JVQ0hTVEFCRU4gbWl0IGVpbmVtIGVpbnppZ2VuIEtvbW1hbmRvIHp1IGz2c2NoZW4uCgotLS0+ICBEaWVzZSBBQkMgREUgWmVpbGUgRkdISSBKSyBMTU4gT1AgbWl0IFf2cnRlcm4gaXN0IFEgUlMgVFVWIGJlcmVpbmlndC4KCgoKfn5+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+CgkJCUxla3Rpb24gMi42OiBBUkJFSVRFTiBBVUYgWkVJTEVOCgoKCSAgICAgICAqKiBUaXBwZSAgZGQgICwgdW0gZWluZSBnYW56ZSBaZWlsZSB6dSBs9nNjaGVuLiAqKgoKICBXZWdlbiBkZXIgSOR1Zmlna2VpdCwgZGFzcyBtYW4gZ2FuemUgWmVpbGVuIGz2c2NodCwga2FtZW4gZGllIEVudHdpY2tsZXIgdm9uCiAgVmkgZGFyYXVmLCBkYXNzIGVzIGxlaWNodGVyIHfkcmUsIGVpbmZhY2ggendlaSBkJ3MgZWluenVnZWJlbiwgdW0gZWluZSBaZWlsZQogIHp1IGz2c2NoZW4uCgogIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1ciB6d2VpdGVuIFplaWxlIGluIGRlciB1bnRlbiBzdGVoZW5kZW4gUmVkZXdlbmR1bmcuCiAgMi4gVGlwcGUgIGRkICAsIHVtIGRpZSBaZWlsZSB6dSBs9nNjaGVuLgogIDMuIE51biBiZXdlZ2UgRGljaCB6dXIgdmllcnRlbiBaZWlsZS4KICA0LiBUaXBwZSAgMmRkICAsIHVtIHp3ZWkgWmVpbGVuIHp1IGz2c2NoZW4uCgotLS0+ICAxKSAgUm9zZW4gc2luZCByb3QsCi0tLT4gIDIpICBNYXRzY2ggaXN0IGx1c3RpZywKLS0tPiAgMykgIFZlaWxjaGVuIHNpbmQgYmxhdSwKLS0tPiAgNCkgIEljaCBoYWJlIGVpbiBBdXRvLAotLS0+ICA1KSAgRGllIFVociBzYWd0IGRpZSBaZWl0LAotLS0+ICA2KSAgWnVja2VyIGlzdCBz/N8sCi0tLT4gIDcpICBTbyB3aWUgRHUgYXVjaC4KCn5+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+fgoJCSAgICAgTGVrdGlvbiAyLjc6IFLcQ0tHxE5HSUcgTUFDSEVOIChVTkRPKQoKCgkgKiogVGlwcGUgdSAsIHVtIGRpZSBsZXR6dGVuIEtvbW1hbmRvcyBy/GNrZ+RuZ2lnIHp1IG1hY2hlbiAqKgoJICAgICAgKiogb2RlciBVICwgdW0gZWluZSBnYW56ZSBaZWlsZSB3aWVkZXJoZXJ6dXN0ZWxsZW4uICoqCgogIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1IGRlciBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVudGVuCiAgICAgdW5kIHNldHplIGlobiBhdWYgZGVuIGVyc3RlbiBGZWhsZXIuCiAgMi4gVGlwcGUgIHggICwgdW0gZGFzIGVyc3RlIHVuZXJ3/G5zY2h0ZSBaZWljaGVuIHp1IGz2c2NoZW4uCiAgMy4gTnVuIHRpcHBlICB1ICAsIHVtIGRhcyBzb2ViZW4gYXVzZ2Vm/GhydGUgS29tbWFuZG8gcvxja2fkbmdpZyB6dSBtYWNoZW4uCiAgNC4gSmV0enQgYmVoZWJlIGFsbGUgRmVobGVyIGF1ZiBkZXIgWmVpbGUgbWl0IEhpbGZlIGRlcyB4ICBLb21tYW5kb3MuCiAgNS4gTnVuIHRpcHBlIGVpbiBncm/fZXMgIFUgLCB1bSBkaWUgWmVpbGUgaW4gaWhyZW4gVXJzcHJ1bmdzenVzdGFuZAogICAgIHdpZWRlcmhlcnp1c3RlbGxlbi4KICA2LiBOdW4gdGlwcGUgIHUgIGVpbmlnZSBNYWxlLCB1bSBkYXMgVSB1bmQgZGllIHZvcmhlcmdlaGVuZGVuIEtvbW1hbmRvcwogICAgIHL8Y2tn5G5naWcgenUgbWFjaGVuLgogIDcuIE51biB0aXBwZSBDVFJMLVIgKGhhbHRlIENUUkwgZ2Vkcvxja3QgdW5kIGRy/GNrZSBSKSBtZWhyZXJlIE1hbGUsIHVtIGRpZQogICAgIEtvbW1hbmRvcyB3aWVkZXJoZXJ6dXN0ZWxsZW4gKGRpZSBS/GNrZ+RuZ2lnbWFjaHVuZ2VuIHL8Y2tn5G5naWcgbWFjaGVuKS4KCi0tLT4gQmVlaGViZSBkaWUgRmVobGxlciBkaWVzc2VyIFplaWxlIHVuZCBzdHRlbGxlIHNpZSBtaXR0ICd1bmRvJyB3aWVkZXIgaGVyLgoKICA4LiBEaWVzIHNpbmQgc2VociBu/HR6bGljaGUgS29tbWFuZG9zLiAgTnVuIGdlaGUgd2VpdGVyIHp1ciBadXNhbW1lbmZhc3N1bmcgCiAgICAgdm9uIExla3Rpb24gMi4Kfn5+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+CgkJCSBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gMgoKCiAgMS4gVW0gdm9tIEN1cnNvciBiaXMgenVtIG7kY2hzdGVuIFdvcnQgenUgbPZzY2hlbiwgdGlwcGU6ICAgIGR3CiAgMi4gVW0gdm9tIEN1cnNvciBiaXMgenVtIEVuZGUgZWluZXIgWmVpbGUgenUgbPZzY2hlbiwgdGlwcGU6ICAgICBkJAogIDMuIFVtIGVpbmUgZ2FuemUgWmVpbGUgenUgbPZzY2hlbiwgdGlwcGU6ICAgIGRkCgogIDQuIFVtIGVpbmUgQmV3ZWd1bmcgenUgd2llZGVyaG9sZW4sIHN0ZWxsZSBlaW5lIE51bW1lciB2b3JhbjogICAydwogIDUuIERhcyBGb3JtYXQgZvxyIGVpbiDEbmRlcnVuZ3Nrb21tYW5kbyBpc3Q6CiAgICAgICAgICAgICAgIE9wZXJhdG9yICAgW0FuemFobF0gICBCZXdlZ3VuZ3NzY2hyaXR0CiAgICAgd29iZWk6CiAgICAgICBPcGVyYXRvciAtIGdpYnQgYW4sIHdhcyBnZXRhbiB3ZXJkZW4gc29sbCwgenVtIEJlaXNwaWVsICBkICBm/HIgZGVsZXRlCiAgICAgICBbQW56YWhsXSAtIGVpbiBvcHRpb25hbGVyIFrkaGxlciwgdW0gZGVuIEJld2VndW5nc3NjaHJpdHQgenUgd2llZGVyaG9sZW4KICAgICAgIEJld2VndW5nc3NjaHJpdHQgLSBCZXdlZ3VuZyD8YmVyIGRlbiB6dSDkbmRlcm5kZW4gVGV4dCwgd2llCgkJICB3IChXb3J0KSwgJCAoenVtIEVuZGUgZGVyIFplaWxlKSwgZXRjLgoKICA2LiBVbSBEaWNoIHp1bSBBbmZhbmcgZGVyIFplaWxlIHp1IGJlZ2ViZW4sIGJlbnV0emUgZGllIE51bGw6ICAwCgogIDcuIFVtIHZvcmhlcmlnZSBBa3Rpb25lbiBy/GNrZ+RuZ2lnIHp1IG1hY2hlbiwgdGlwcGU6CQl1IChrbGVpbmVzIHUpCiAgICAgVW0gYWxsZSDEbmRlcnVuZ2VuIGF1ZiBlaW5lciBaZWlsZSBy/GNrZ+RuZ2lnIHp1IG1hY2hlbjogICBVIChncm/fZXMgVSkKICAgICBVbSBkaWUgUvxja2fkbmdpZ21hY2h1bmdlbiBy/GNrZ+RuZ2lnIHp1IG1hY2hlbiwgdGlwcGU6ICAgIENUUkwtUgoKfn5+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+CgkJCSAgIExla3Rpb24gMy4xOiBBTkbcR0VOIChQVVQpCgoKICAgICAqKiBUaXBwZSAgcCAgLCB1bSB2b3JoZXIgZ2Vs9nNjaHRlbiBUZXh0IG5hY2ggZGVtIEN1cnNvciBhbnp1ZvxnZW4uICoqCgogIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1ciBlcnN0ZW4gdW50ZW4gc3RlaGVuZGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUuCgogIDIuIFRpcHBlICBkZCAgLCB1bSBkaWUgWmVpbGUgenUgbPZzY2hlbiB1bmQgc2llIGluIGVpbmVtIFZpbS1SZWdpc3RlciB6dQogICAgIHNwZWljaGVybi4KCiAgMy4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIFplaWxlIGMpLCDcQkVSIGRlcmplbmlnZW4sIHdvIGRpZSBnZWz2c2NodGUgWmVpbGUKICAgICBwbGF0emllcnQgd2VyZGVuIHNvbGwuCgogIDQuICBUaXBwZSAgIHAgICAsIHVtIGRpZSBaZWlsZSB1bnRlcmhhbGIgZGVzIEN1cnNvcnMgenUgcGxhdHppZXJlbi4KCiAgNS4gV2llZGVyaG9sZSBkaWUgU2Nocml0dGUgMiBiaXMgNCwgdW0gYWxsZSBaZWlsZW4gaW4gZGllIHJpY2h0aWdlCiAgICAgUmVpaGVuZm9sZ2UgenUgYnJpbmdlbi4KCi0tLT4gZCkgS2FubnN0IER1IGRhcyBhdWNoPwotLS0+IGIpIFZlaWxjaGVuIHNpbmQgYmxhdSwKLS0tPiBjKSBJbnRlbGxpZ2VueiBpc3QgbGVybmJhciwKLS0tPiBhKSBSb3NlbiBzaW5kIHJvdCwKfn5+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+CgkJCUxla3Rpb24gMy4yOiBFUlNFVFpFTiAoUkVQTEFDRSkKCgogICAqKiBUaXBwZSAgcnggICwgdW0gZGFzIFplaWNoZW4gdW50ZXIgZGVtIEN1cnNvciBkdXJjaCAgeCB6dSBlcnNldHplbi4gKioKCiAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIGVyc3RlbiB1bnRlbiBzdGVoZW5kZW4gbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZS4KCiAgMi4gQmV3ZWdlIGRlbiBDdXJzb3IsIGJpcyBlciBzaWNoIGF1ZiBkZW0gZXJzdGVuIEZlaGxlciBiZWZpbmRldC4KCiAgMy4gVGlwcGUgIHIgIHVuZCBhbnNjaGxpZd9lbmQgZGFzIFplaWNoZW4sIHdlbGNoZXMgZG9ydCBzdGVoZW4gc29sbHRlLgoKICA0LiBXaWVkZXJob2xlIFNjaHJpdHRlIDIgdW5kIDMsIGJpcyBkaWUgZXJzdGUgWmVpbGUgZ2xlaWNoIGRlciB6d2VpdGVuIGlzdC4KCi0tLT4gIEFsZiBkaWVzZSBaZWl0ZSBlaW5nZWdvYmVuIHd1cmRlLCB3dXJkZW4gZWluaWtlIGZhbHNjaGUgVGFzdGVuIGdlbGlwcHQhCi0tLT4gIEFscyBkaWVzZSBaZWlsZSBlaW5nZWdlYmVuIHd1cmRlLCB3dXJkZW4gZWluaWdlIGZhbHNjaGUgVGFzdGVuIGdldGlwcHQhCgogIDUuIE51biBmYWhyZSBmb3J0IG1pdCBMZWt0aW9uIDMuMi4KCkFubWVya3VuZzogRXJpbm5lcmUgRGljaCBkYXJhbiwgZGFzcyBEdSBkdXJjaCBBbndlbmRlbiBsZXJuZW4gc29sbHRlc3QsIG5pY2h0IAogICAgIGR1cmNoIEF1c3dlbmRpZ2xlcm5lbi4KCgp+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+fn4KCQkJICBMZWt0aW9uIDMuMzogxE5ERVJOIChDSEFOR0UpCgoKICAgICAgKiogVW0gZWluZSDEbmRlcnVuZyBiaXMgenVtIFdvcnRlbmRlIGR1cmNoenVm/GhyZW4sIHRpcHBlICBjZSAuICoqCgogIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1ciBlcnN0ZW4gdW50ZW4gc3RlaGVuZGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUuCgogIDIuIFBsYXR6aWVyZSBkZW4gQ3Vyc29yIGF1ZiBkYXMgIHMgIHZvbiBXc3R3ci4KCiAgMy4gVGlwcGUgIGNlICB1bmQgZGllIFdvcnRrb3JyZWt0dXIgZWluIChpbiBkaWVzZW0gRmFsbCB0aXBwZSAg9nJ0ZXIgKS4KCiAgNC4gRHL8Y2tlIDxFU0M+IHVuZCBiZXdlZ2UgZGVuIEN1cnNvciB6dW0gbuRjaHN0ZW4genUg5G5kZXJuZGVuIFplaWNoZW4uCgogIDUuIFdpZWRlcmhvbGUgU2Nocml0dGUgMyB1bmQgNCBiaXMgZGVyIGVyc3RlIFNhdHogZ2xlaWNoIGRlbSB6d2VpdGVuIGlzdC4KCi0tLT4gRWluaWdlIFdzdHdyIGRpZXNlciBabGF3dyBsYXNkamxhZiBtaXQgZGVtIMRuZGVybi1PcGVyYXRvciBnYWFhdXUgd2VyZGVuLgotLS0+IEVpbmlnZSBX9nJ0ZXIgZGllc2VyIFplaWxlIHNvbGxlbiBtaXQgZGVtIMRuZGVybi1PcGVyYXRvciBnZeRuZGVydCB3ZXJkZW4uCgpCZWFjaHRlLCBkYXNzICBjZSAgZGFzIFdvcnQgbPZzY2h0IHVuZCBEaWNoIGluIGRlbiBFaW5nYWJlbW9kdXMgdmVyc2V0enQuCgoKCn5+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+fgoJCSAgICAgTGVrdGlvbiAzLjQ6IE1FSFIgxE5ERVJVTkdFTiBNSVRURUxTIGMKCgogICAgICoqIERhcyBjaGFuZ2UtS29tbWFuZG8gYXJiZWl0ZXQgbWl0IGRlbnNlbGJlbiBCZXdlZ3VuZ2VuIHdpZSBkZWxldGUuICAqKgoKICAxLiBEZXIgY2hhbmdlIE9wZXJhdG9yIGFyYmVpdGV0IGluIGdsZWljaGVyIFdlaXNlIHdpZSBkZWxldGUuIERhcyBGb3JtYXQgaXN0OgoKICAgICAgICAgYyAgICBbQW56YWhsXSAgQmV3ZWd1bmdzc2Nocml0dAoKICAyLiBEaWUgQmV3ZWd1bmdzc2Nocml0dGUgc2luZCBkaWUgZ2xlaWNoZW4gLCBzbyB3aWUgIHcgIChXb3J0KSB1bmQgICQKICAgICAoWmVpbGVuZW5kZSkuCgogIDMuIEJld2VnZSBEaWNoIHp1ciBlcnN0ZW4gdW50ZW4gc3RlaGVuZGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUuCgogIDQuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBlcnN0ZW4gRmVobGVyLgoKICA1LiBUaXBwZSAgYyQgICwgZ2liIGRlbiBSZXN0IGRlciBaZWlsZSB3aWUgaW4gZGVyIHp3ZWl0ZW4gZWluLCBkcvxja2UgPEVTQz4gLgoKLS0tPiBEYXMgRW5kZSBkaWVzZXIgWmVpbGUgc29sbCBhbiBkaWUgendlaXRlIFplaWxlIGFuZ2VnbGljaGVuIHdlcmRlbi4KLS0tPiBEYXMgRW5kZSBkaWVzZXIgWmVpbGUgc29sbCBtaXQgZGVtICBjJCAgS29tbWFuZG8ga29ycmlnaWVydCB3ZXJkZW4uCgpBbm1lcmt1bmc6IER1IGthbm5zdCBkaWUgUvxja3Rhc3RlIGJlbnV0emVuLCB1bSBUaXBwZmVobGVyIHp1IGtvcnJpZ2llcmVuLgp+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+fn4KCQkJIFpVU0FNTUVORkFTU1VORyBWT04gTEVLVElPTiAzCgoKICAxLiBVbSBlaW5lbiB2b3JoZXIgZ2Vs9nNjaHRlbiBUZXh0IGFuenVm/GdlbiwgdGlwcGUgICBwIC4gRGllcyBm/Gd0IGRlbgogICAgIGdlbPZzY2h0ZW4gVGV4dCBOQUNIIGRlbSBDdXJzb3IgYW4gKHdlbm4gZWluZSBnYW56ZSBaZWlsZSBnZWz2c2NodCB3dXJkZSwKICAgICB3aXJkIGRpZXNlIGluIGRpZSBaZWlsZSB1bnRlciBkZW0gQ3Vyc29yIGVpbmdlZvxndCkuCgogIDIuIFVtIGRhcyBaZWljaGVuIHVudGVyIGRlbSBDdXJzb3IgenUgZXJzZXR6ZW4sIHRpcHBlICAgciAgIHVuZCBkYW5hY2ggZGFzIAogICAgIGFuIGRpZXNlciBTdGVsbGUgZ2V3b2xsdGUgWmVpY2hlbi4KCiAgMy4gRGVyIMRuZGVydW5ncy0gKGNoYW5nZSkgT3BlcmF0b3IgZXJsYXVidCwgdm9tIEN1cnNvciBiaXMgenVtIEVuZGUgZGVzCiAgICAgQmV3ZWd1bmdzc2Nocml0dGVzIHp1IORuZGVybi4gVGlwcGUgIGNlICAsIHVtIGVpbmUgxG5kZXJ1bmcgdm9tIEN1cnNvciBiaXMKICAgICB6dW0gRW5kZSBkZXMgV29ydGVzIHZvcnp1bmVobWVuOyAgYyQgIGJpcyB6dW0gRW5kZSBlaW5lciBaZWlsZS4KCiAgNC4gRGFzIEZvcm1hdCBm/HIgY2hhbmdlIGlzdDoKCgkgYyAgIFtBbnphaGxdICBCZXdlZ3VuZ3NzY2hyaXR0CgogIE51biBmYWhyZSBtaXQgZGVyIG7kY2hzdGVuIExla3Rpb24gZm9ydC4KCgoKfn5+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+CgkJICBMZWt0aW9uIDQuMTogQ1VSU09SUE9TSVRJT04gVU5EIERBVEVJU1RBVFVTCgogKiogVGlwcGUgQ1RSTC1HICwgdW0gZGVpbmUgRGF0ZWlwb3NpdGlvbiBzb3dpZSBkZW4gRGF0ZWlzdGF0dXMgYW56dXplaWdlbi4gKioKICAgICAqKiBUaXBwZSBHICwgdW0gRGljaCB6dSBlaW5lciBaZWlsZSBpbiBkZXIgRGF0ZWkgenUgYmVnZWJlbi4gKioKCkFubWVya3VuZzogTGllcyBkaWVzZSBnZXNhbXRlIExla3Rpb24sIGJldm9yIER1IGlyZ2VuZGVpbmVuIFNjaHJpdHQgYXVzZvxocnN0ISEKCiAgMS4gSGFsdGUgZGllIEN0cmwgVGFzdGUgdW50ZW4gdW5kIGRy/GNrZSAgZyAuIERpZXMgbmVubmVuIHdpciBDVFJMLUcuCiAgICAgRWluZSBTdGF0dXNtZWxkdW5nIGFtIEZ13yBkZXIgU2VpdGUgZXJzY2hlaW50IG1pdCBkZW0gRGF0ZWluYW1lbiB1bmQgZGVyCiAgICAgUG9zaXRpb24gaW5uZXJoYWxiIGRlciBEYXRlaS4gTWVya2UgRGlyIGRpZSBaZWlsZW5udW1tZXIgZvxyIFNjaHJpdHQgMy4KCkFubWVya3VuZzogTfZnbGljaGVyd2Vpc2Ugc2llaHN0IER1IGRpZSBDdXJzb3Jwb3NpdGlvbiBpbiBkZXIgdW50ZXJlbiByZWNodGVuCiAgICAgIEJpbGRzY2hpcm1lY2tlLiBEaWVzIGlzdCBBdXN3aXJrdW5nIGRlciAncnVsZXInIE9wdGlvbiAKCSAgKHNpZWhlIDpoZWxwICdydWxlcicpCgogIDIuIERy/GNrZSAgRyAgLCB1bSBEaWNoIHp1bSBFbmRlIGRlciBEYXRlaSB6dSBiZWdlYmVuLgogICAgIFRpcHBlICBnZyAgLCB1bSBEaWNoIHp1bSBBbmZhbmcgZGVyIERhdGVpIHp1IGJlZ2ViZW4uCgogIDMuIEdpYiBkaWUgTnVtbWVyIGRlciBaZWlsZSBlaW4sIGF1ZiBkZXIgRHUgdm9yaGVyIHdhcnN0LCBnZWZvbGd0IHZvbiAgRyAuCiAgICAgRGllcyBicmluZ3QgRGljaCB6dXL8Y2sgenUgZGVyIFplaWxlLCBhdWYgZGVyIER1IGdlc3RhbmRlbiBoYXN0LCBhbHMgRHUKICAgICBkYXMgZXJzdGUgTWFsIENUUkwtRyBnZWRy/GNrdCBoYXN0LgoKICA0LiBXZW5uIER1IERpY2ggc2ljaGVyIGdlbnVnIGb8aGxzdCwgZvxocmUgZGllIFNjaHJpdHRlIDEgYmlzIDMgYXVzLgp+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+fn4KCQkgICAgICAgTGVrdGlvbiA0LjI6IERBUyBTVUNIRU4gLSBLT01NQU5ETwoKCiAgKiogVGlwcGUgIC8gIGdlZm9sZ3Qgdm9uIGVpbmVtIEF1c2RydWNrLCB1bSBuYWNoIGRlbSBBdXNkcnVjayB6dSBzdWNoZW4uICoqCgogIDEuIEltIE5vcm1hbG1vZHVzLCB0aXBwZSBkYXMgIC8gIFplaWNoZW4uICBCZWFjaHRlLCBkYXNzIGRhcyAgLyB1bmQgZGVyCiAgICAgQ3Vyc29yIGFtIEZ13yBkZXMgU2NoaXJtcyBlcnNjaGVpbmVuLCBzbyB3aWUgYmVpbSA6CUtvbW1hbmRvLgoKICAyLiBOdW4gdGlwcGUgJ0ZlaGhsZXInIDxFTlRFUj4uIERpZXMgaXN0IGRhcyBXb3J0LCBuYWNoIGRlbSBEdSBzdWNoZW4gd2lsbHN0LgoKICAzLiBVbSBuYWNoIGRlbXNlbGJlbiBBdXNkcnVjayB3ZWl0ZXJ6dXN1Y2hlbiwgdGlwcGUgZWluZmFjaCAgbiAoZvxyIG5leHQpLgogICAgIFVtIG5hY2ggZGVtc2VsYmVuIEF1c2RydWNrIGluIGRlciBHZWdlbnJpY2h0dW5nIHp1IHN1Y2hlbiwgdGlwcGUgIE4gLgoKICA0LiBVbSBuYWNoIGVpbmVtIEF1c2RydWNrIHL8Y2t35HJ0cyB6dSBzdWNoZW4gLCBiZW51dHplICA/ICBzdGF0dCAgLyAuCgogIDUuIFVtIGRhaGluIHp1cvxja3p1a2VocmVuLCB2b24gd28gRHUgZ2Vrb21tZW4gYmlzdCwgZHL8Y2tlIENUUkwtTyAoSGFsdGUKICAgICBDdHJsIHVudGVuIHVuZCBkcvxja2UgZGVuIEJ1Y2hzdGFiZW4gbykuIFdpZWRlcmhvbGUgZGllcywgdW0gbm9jaCB3ZWl0ZXIKICAgICB6dXL8Y2t6dWdlaGVuLiAgQ1RSTC1JIGdlaHQgdm9yd+RydHMuCgotLS0+ICBGZWhsZXIgc2NocmVpYnQgc2ljaCBuaWNodCAiRmVoaGxlciI7IEZlaGhsZXIgaXN0IGVpbiBGZWhsZXIKQW5tZXJrdW5nOiBXZW5uIGRpZSBTdWNoZSBkYXMgRGF0ZWllbmRlIGVycmVpY2h0IGhhdCwgd2lyZCBzaWUgYW0gQW5mYW5nCiAgICAgICAgZm9ydGdlc2V0enQsIGVzIHNlaSBkZW5uLCBkaWUgJ3dyYXBzY2FuJyBPcHRpb24gd3VyZGUgYWJnZXNjaGFsdGV0Lgp+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+fn4KCQkgICAgIExla3Rpb24gNC4zOiBQQVNTRU5ERSBLTEFNTUVSTiBGSU5ERU4KCgogICAqKiBUaXBwZSAgJSAsIHVtIGVpbmUgZ2VnZW78YmVybGllZ2VuZGVuIEtsYW1tZXIgKSxdLCBvZGVyIH0genUgZmluZGVuLiAqKgoKICAxLiBQbGF0emllcmUgZGVuIEN1cnNvciBhdWYgaXJnZW5kZWluZW0gZGVyIFplaWNoZW4gKCwgWywgb2RlciB7IGluIGRlciB1bnRlbgogICAgIHN0ZWhlbmRlbiBaZWlsZSwgZGllIG1pdCAtLS0+IG1hcmtpZXJ0IGlzdC4KCiAgMi4gTnVuIHRpcHBlIGRhcyAgJSAgWmVpY2hlbi4KCiAgMy4gRGVyIEN1cnNvciBiZXdlZ3Qgc2ljaCB6dXIgcGFzc2VuZGVuIGdlZ2Vu/GJlcmxpZWdlbmRlbiBLbGFtbWVyLgoKICA0LiBUaXBwZSAgJSAsIHVtIGRlbiBDdXJzb3IgenVyIHBhc3NlbmRlbiBhbmRlcmVuIEtsYW1tZXIgenUgYmV3ZWdlbi4KCiAgNS4gU2V0emUgZGVuIEN1cnNvciBhdWYgZWluIGFuZGVyZXMgKCwpLFssXSx7IG9kZXIgfSB1bmQgcHJvYmllcmUgICUgIGF1cy4KCi0tLT4gRGllcyAoIGlzdCBlaW5lIFRlc3R6ZWlsZSAoIG1pdCBbIHZlcnNjaGllZGVuZW4gXSB7IEtsYW1tZXJuIH0gIGRhcmluLiApKQoKQW5tZXJrdW5nOiBEaWVzZSBGdW5rdGlvbmFsaXTkdCBpc3Qgc2VociBu/HR6bGljaCBiZWkgZGVyIEZlaGxlcnN1Y2hlIGluIGVpbmVtCiAgICAgUHJvZ3JhbW10ZXh0LCBpbiBkZW0gcGFzc2VuZGUgS2xhbW1lcm4gZmVobGVuIQoKCn5+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+fgoJCUxla3Rpb24gNC40OiBEQVMgRVJTRVRaVU5HU0tPTU1BTkRPIChTVUJTVElUVVRFKQoKCgkgKiogVGlwcGUgOnMvYWx0L25ldS9nICAsIHVtICdhbHQnIGR1cmNoICduZXUnIHp1IGVyc2V0emVuLiAqKgoKICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dSBkZXIgdW50ZW4gc3RlaGVuZGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUuCgogIDIuIFRpcHBlICA6cy9kaWVlL2RpZSA8RU5URVI+IC4gIEJlYWNodGUsIGRhc3MgZGVyIEJlZmVobCBudXIgZGFzIGVyc3RlCiAgICAgVm9ya29tbWVuIHZvbiAiZGllZSIgZXJzZXR6dC4KCiAgMy4gTnVuIHRpcHBlICAgOnMvZGllZS9kaWUvZyAuIERhcyBadWb8Z2VuIGRlcyBGbGFncyAgZyAgIGJlZGV1dGV0LCBlaW5lCiAgICAgZ2xvYmFsZSBFcnNldHp1bmcg/GJlciBkaWUgWmVpbGUgZHVyY2h6dWb8aHJlbiwgZGllcyBlcnNldHp0IGFsbGUgCgkgVm9ya29tbWVuIHZvbiAiZGllZSIgYXVmIGRlciBaZWlsZS4KCi0tLT4gZGllZSBzY2j2bnN0ZSBaZWl0LCB1bSBkaWVlIEJsdW1lbiBhbnp1c2NoYXVlbiwgaXN0IGRpZWUgRnL8aGxpbmdzemVpdC4KCiAgNC4gVW0gYWxsZSBWb3Jrb21tZW4gZWluZXIgWmVpY2hlbmtldHRlIGlubmVyaGFsYiB6d2VpZXIgWmVpbGVuIHp1IORuZGVybiwKICAgICB0aXBwZSAgOiMsI3MvYWx0L25ldS9nICB3b2JlaSAjLCMgZGllIFplaWxlbm51bW1lcm4gZGVzIEJlcmVpY2hlcyBzaW5kLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGRlbSBkaWUgRXJzZXR6dW5nIGR1cmNoZ2Vm/GhydCB3ZXJkZW4gc29sbC4KICAgICBUaXBwZSAgOiVzL2FsdC9uZXUvZyAgICB1bSBhbGxlIFZvcmtvbW1lbiBpbiBkZXIgZ2VzYW10ZW4gRGF0ZWkgenUg5G5kZXJuLgogICAgIFRpcHBlICA6JXMvYWx0L25ldS9nYyAgIHVtIGFsbGUgVm9ya29tbWVuIGluIGRlciBnZXNhbXRlbiBEYXRlaSB6dSBmaW5kZW4KICAgICAgICAgICAgICAgICAgICAgbWl0IGVpbmVtIEZyYWdlZGlhbG9nLCBvYiBlcnNldHp0IHdlcmRlbiBzb2xsIG9kZXIgbmljaHQuCn5+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+fgoJCQkgWlVTQU1NRU5GQVNTVU5HIFZPTiBMRUtUSU9OIDQKCiAgMS4gQ1RSTC1HICB6ZWlndCBkaWUgYWt0dWVsbGUgRGF0ZWlwb3NpdGlvbiBzb3dpZSBkZW4gRGF0ZWlzdGF0dXMuCiAgICAgICAgICAgICBHICBicmluZ3QgRGljaCB6dW0gRW5kZSBkZXIgRGF0ZWkuCiAgICAgTnVtbWVyICBHICBicmluZ3QgRGljaCB6dXIgZW50c3ByZWNoZW5kZW4gWmVpbGVubnVtbWVyLgogICAgICAgICAgICBnZyAgYnJpbmd0IERpY2ggenVyIGVyc3RlbiBaZWlsZS4KCiAgMi4gRGllIEVpbmdhYmUgdm9uICAvICBwbHVzIGVpbmVtIEF1c2RydWNrIHN1Y2h0IFZPUlfEUlRTIG5hY2ggZGVtIEF1c2RydWNrLgogICAgIERpZSBFaW5nYWJlIHZvbiAgPyAgcGx1cyBlaW5lbSBBdXNkcnVjayBzdWNodCBS3ENLV8RSVFMgbmFjaCBkZW0gQXVzZHJ1Y2suCiAgICAgVGlwcGUgbmFjaCBlaW5lciBTdWNoZSAgbiAgLCB1bSBkYXMgbuRjaHN0ZSBWb3Jrb21tZW4gaW4gZGVyIGdsZWljaGVuCiAgICAgUmljaHR1bmcgenUgZmluZGVuOyBvZGVyICBOICAsIHVtIGluIGRlciBHZWdlbnJpY2h0dW5nIHp1IHN1Y2hlbi4KICAgICBDVFJMLU8gYnJpbmd0IERpY2ggenVy/GNrIHp1IORsdGVyZW4gUG9zaXRpb25lbiwgQ1RSTC1JIHp1IG5ldWVyZW4uCgogIDMuIERpZSBFaW5nYWJlIHZvbiAgJSAgLCB3ZW5uIGRlciBDdXJzb3Igc2ljaCBhdWYgKCwpLFssXSx7LCBvZGVyIH0KICAgICBiZWZpbmRldCwgYnJpbmd0IERpY2ggenVyIEdlZ2Vua2xhbW1lci4KCiAgNC4gVW0gZGFzIGVyc3RlIFZvcmtvbW1lbiB2b24gImFsdCIgaW4gZWluZXIgWmVpbGUgZHVyY2ggIm5ldSIgenUgZXJzZXR6ZW4sCiAgICAgICAgICAgICB0aXBwZSAgICAgICA6cy9hbHQvbmV1CiAgICAgVW0gYWxsZSBWb3Jrb21tZW4gdm9uICJhbHQiIGluIGRlciBaZWlsZSBlcnNldHplbiwgdGlwcGUgIDpzL2FsdC9uZXUvZwogICAgIFVtIEF1c2Ry/GNrZSBpbm5lcmhhbGIgendlaWVyIFplaWxlbiAjIHp1IGVyc2V0emVuICAgICAgICA6Iywjcy9hbHQvbmV1L2cKICAgICBVbSBhbGxlIFZvcmtvbW1lbiBpbiBkZXIgZ2FuemVuIERhdGVpIHp1IGVyc2V0emVuLCB0aXBwZSAgOiVzL2FsdC9uZXUvZwogICAgIEb8ciBlaW5lIGplZGVzbWFsaWdlIEJlc3TkdGlndW5nLCBhZGRpZXJlICdjJyAoY29uZmlybSkgICA6JXMvYWx0L25ldS9nYwp+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+fn4KCQlMZWt0aW9uIDUuMTogQVVTRtxIUkVOIEVJTkVTIEVYVEVSTkVOIEtPTU1BTkRPUwoKCiAgKiogR2liICA6ISAsIGdlZm9sZ3Qgdm9uIGVpbmVtIGV4dGVybmVuIEtvbW1hbmRvIGVpbiwgdW0gZXMgYXVzenVm/GhyZW4uICoqCgogIDEuIFRpcHBlIGRhcyB2ZXJ0cmF1dGUgS29tbWFuZG8gIDogICwgdW0gZGVuIEN1cnNvciBhdWYgZGVuIEZ13yBkZXMgU2NoaXJtcwogICAgIHp1IHNldHplbi4gRGllcyBlcmxhdWJ0IERpciwgZWluIEtvbW1hbmRvemVpbGVuLUtvbW1hbmRvIGVpbnp1Z2ViZW4uCgogIDIuIE51biB0aXBwZSBlaW4gICEgIChBdXNydWZlemVpY2hlbikuICBEaWVzIGVybfZnbGljaHQgRGlyLCBlaW4gYmVsaWViaWdlcywKICAgICBleHRlcm5lcyBTaGVsbGtvbW1hbmRvIGF1c3p1ZvxocmVuLgoKICAzLiBBbHMgQmVpc3BpZWwgdGlwcGUgICBscyAgIG5hY2ggZGVtICAhICB1bmQgZHL8Y2tlIDxFTlRFUj4uIERpZXMgbGllZmVydAogICAgIGVpbmUgQXVmbGlzdHVuZyBkZWluZXMgVmVyemVpY2huaXNzZXM7IGdlbmF1c28sIGFscyB3ZW5uIER1IGluIGRlcgogICAgIEVpbmdhYmVhdWZmb3JkZXJ1bmcgd+Ryc3QuICBPZGVyIHZlcndlbmRlICA6IWRpciAgLCBmYWxscyBscyBuaWNodCBnZWh0LgoKQW5tZXJrdW5nOiAgTWl0IGRpZXNlciBNZXRob2RlIGthbm4gamVkZXMgYmVsaWViaWdlIGV4dGVybmUgS29tbWFuZG8KICAgICBhdXNnZWb8aHJ0IHdlcmRlbiwgYXVjaCBtaXQgQXJndW1lbnRlbi4KCkFubWVya3VuZzogIEFsbGUgIDogIEtvbW1hbmRvcyBt/HNzZW4gZHVyY2ggRWluZ2FiZSB2b24gPEVOVEVSPgogICAgIGFiZ2VzY2hsb3NzZW4gd2VyZGVuLiBWb24gamV0enQgYW4gZXJ35GhuZW4gd2lyIGRpZXMgbmljaHQgamVkZXNtYWwuCgoKfn5+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+CgkJTGVrdGlvbiA1LjI6IE1FSFIg3EJFUiBEQVMgU0NIUkVJQkVOIFZPTiBEQVRFSUVOCgoKKiogVW0gYW0gVGV4dCBkdXJjaGdlZvxocnRlIMRuZGVydW5nZW4genUgc3BlaWNoZXJuLCB0aXBwZSA6dyBEQVRFSU5BTUUuICoqCgogIDEuIFRpcHBlICA6IWRpciAgb2RlciAgOiFscyAgLCB1bSBlaW5lIEF1Zmxpc3R1bmcgZGVpbmVzIFZlcnplaWNobmlzc2VzIHp1CiAgICAgZXJoYWx0ZW4uICBEdSB3ZWnfdCBudW4gYmVyZWl0cywgZGFzcyBEdSBkYW5hY2ggPEVOVEVSPiBlaW5nZWJlbiBtdXNzdC4KCiAgMi4gV+RobGUgZWluZW4gRGF0ZWluYW1lbiwgZGVyIG5vY2ggbmljaHQgZXhpc3RpZXJ0LCB6LkIuIFRFU1QuCgogIDMuIE51biB0aXBwZTogIDp3IFRFU1QgICAod29iZWkgVEVTVCBkZXIgZ2V35GhsdGUgRGF0ZWluYW1lIGlzdCkuCgogIDQuIERpZXMgc3BlaWNoZXJ0IGRpZSBnYW56ZSBEYXRlaSAoZGVuIFZpbSBUdXRvcikgdW50ZXIgZGVtIE5hbWVuIFRFU1QuCiAgICAgVW0gZGllcyB6dSD8YmVycHL8ZmVuLCB0aXBwZSBub2NobWFscyAgOiFscyAgYnp3LiAgIWRpciwgdW0gZGVpbmVuCiAgICAgVmVyemVpY2huaXNpbmhhbHQgenUgc2VoZW4uCgpBbm1lcmt1bmc6IFf8cmRlc3QgRHUgVmltIGpldHp0IGJlZW5kZW4gdW5kIGRhbmFjaCB3aWVkZXIgbWl0IHZpbSBURVNUCiAgICBzdGFydGVuLCBkYW5uIHfkcmUgZGllc2UgRGF0ZWkgZWluZSBleGFrdGUgS29waWUgZGVzIFR1dG9ycyB6dSBkZW0KICAgIFplaXRwdW5rdCwgYWxzIER1IGlobiBnZXNwZWljaGVydCBoYXN0LgoKICA1LiBOdW4gZW50ZmVybmUgZGllIERhdGVpIGR1cmNoIEVpbmdhYmUgdm9uIChNUy1ET1MpOiAgICA6IWRlbCBURVNUCiAgICAgICAgICAgICAgICAgICAgICBvZGVyIChVbml4KTogICAgICAgICAgICAgICAgICAgICAgICAgOiFybSBURVNUCn5+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+fgoJCSBMZWt0aW9uIDUuMzogQVVTV8RITEVOIFZPTiBURVhUIFpVTSBTQ0hSRUlCRU4KCioqIFVtIGVpbmVuIEFic2Nobml0dCBkZXIgRGF0ZWkgenUgc3BlaWNoZXJuLCAgdGlwcGUgIHYgIEJld2VndW5nICA6dyBEQVRFSSAqKgoKICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dSBkaWVzZXIgWmVpbGUuCgogIDIuIFRpcHBlICB2ICB1bmQgYmV3ZWdlIGRlbiBDdXJzb3IgenVtIGb8bmZ0ZW4gQXVmbGlzdHVuZ3NwdW5rdCB1bnRlbi4KICAgICBCZWFjaHRlLCBkYXNzIGRlciBUZXh0IGhlcnZvcmdlaG9iZW4gd2lyZC4KCiAgMy4gRHL8Y2tlIGRhcyBaZWljaGVuICA6IC4gQW0gRnXfIGRlcyBTY2hpcm1zIGVyc2NoZWludCAgOic8LCc+IC4KCiAgNC4gVGlwcGUgIHcgVEVTVCAgLCB3b2JlaSBURVNUIGVpbiBub2NoIG5pY2h0IHZvcmhhbmRlbmVyIERhdGVpbmFtZSBpc3QuCiAgICAgVmVyZ2V3aXNzZXJlIERpY2gsIGRhc3MgRHUgIDonPCwnPncgVEVTVCAgc2llaHN0LCBiZXZvciBEdSA8RU5URVI+IGRy/GNrc3QuCgogIDUuIFZpbSBzY2hyZWlidCBkaWUgYXVzZ2V35GhsdGVuIFplaWxlbiBpbiBkaWUgRGF0ZWkgVEVTVC4gQmVudXR6ZSAgOiFkaXIKICAgICBvZGVyICA6IWxzICwgdW0gc2llIHp1IHNlaGVuLiBM9nNjaGUgc2llIG5vY2ggbmljaHQhIFdpciB3ZXJkZW4gc2llIGluCiAgICAgZGVyIG7kY2hzdGVuIExla3Rpb24gYmVudXR6ZW4uCgpIaW53ZWlzOiBEcvxja2VuIHZvbiAgdiAgc3RhcnRldCBkaWUgVmlzdWVsbGUgQXVzd2FobC4gRHUga2FubnN0IGRlbiBDdXJzb3IKICAgdW1oZXJiZXdlZ2VuLCB1bSBkaWUgQXVzd2FobCB6dSB2ZXJncvbfZXJuIG9kZXIgenUgdmVya2xlaW5lcm4uIEFuc2NobGll32VuZAogICBs5HNzdCBzaWNoIGVpbiBPcGVyYXRvciBhbndlbmRlbiwgdW0gbWl0IGRlbSBUZXh0IGV0d2FzIHp1IHR1bi4gWnVtIEJlaXNwaWVsCiAgIGz2c2NodCAgZCAgZGVuIFRleHQuCgp+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+fn4KCSAgICAgIExla3Rpb24gNS40OiBFSU5MRVNFTiBVTkQgWlVTQU1NRU5G3EhSRU4gVk9OIERBVEVJRU4KCgogICAgICAgKiogVW0gZGVuIEluaGFsdCBlaW5lciBEYXRlaSBlaW56dWxlc2VuLCB0aXBwZSAgOnIgREFURUlOQU1FICAqKgoKICAxLiBQbGF0emllcmUgZGVuIEN1cnNvciBkaXJla3Qg/GJlciBkaWVzZXIgWmVpbGUuCgpCRUFDSFRFOiAgTmFjaGRlbSBEdSBTY2hyaXR0IDIgYXVzZ2Vm/GhydCBoYXN0LCB3aXJzdCBEdSBUZXh0IGF1cyBMZWt0aW9uIDUuMwogICAgICAgc2VoZW4uIERhbm4gYmV3ZWdlIERpY2ggd2llZGVyIEFCV8RSVFMsIExla3Rpb24gNS40IHdpZWRlcnp1c2VoZW4uCgogIDIuIE51biBsaWVzIGRlaW5lIERhdGVpIFRFU1QgZWluIGluZGVtIER1IGRhcyBLb21tYW5kbyAgOnIgVEVTVCAgYXVzZvxocnN0LAogICAgIHdvYmVpIFRFU1QgZGVyIHZvbiBEaXIgdmVyd2VuZGV0ZSBEYXRlaW5hbWUgaXN0LgogICAgIERpZSBlaW5nZWxlc2VuZSBEYXRlaSB3aXJkIHVudGVyaGFsYiBkZXIgQ3Vyc29yemVpbGUgZWluZ2Vm/Gd0LgoKICAzLiBVbSB6dSD8YmVycHL8ZmVuLCBkYXNzIGRpZSBEYXRlaSBlaW5nZWxlc2VuIHd1cmRlLCBnZWhlIHp1cvxjayB1bmQgCiAgICAgYmVhY2h0ZSwgZGFzcyBlcyBqZXR6dCB6d2VpIEtvcGllbiB2b24gTGVrdGlvbiA1LjMgZ2lidCwgZGFzIE9yaWdpbmFsIHVuZCAKCSBkaWUgZWluZ2Vm/Gd0ZSBEYXRlaXZlcnNpb24uCgpBbm1lcmt1bmc6IER1IGthbm5zdCBhdWNoIGRpZSBBdXNnYWJlIGVpbmVzIGV4dGVybmVuIEtvbW1hbmRvcyBlaW5sZXNlbi4gWnVtCiAgICAgQmVpc3BpZWwgbGllc3QgIDpyICFscyAgZGllIEF1c2dhYmUgZGVzIEtvbW1hbmRvcyBscyBlaW4gdW5kIHBsYXR6aWVydAogICAgIHNpZSB1bnRlcmhhbGIgZGVzIEN1cnNvcnMuCgp+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+fn4KCQkJIFpVU0FNTUVORkFTU1VORyBWT04gTEVLVElPTiA1CgoKICAxLiA6IUtvbW1hbmRvICBm/GhydCBlaW4gZXh0ZXJuZXMgS29tbWFuZG8gYXVzLgoKICAgICAgRWluaWdlIG78dHpsaWNoZSBCZWlzcGllbGUgc2luZAoJKE1TLURPUykJICAoVW5peCkKCSA6IWRpcgkJICAgOiFscwkJICAgLSAgemVpZ3QgZWluZSBWZXJ6ZWljaG5pc2F1Zmxpc3R1bmcuCgkgOiFkZWwgREFURUlOQU1FICAgOiFybSBEQVRFSU5BTUUgIC0gIGVudGZlcm50IERhdGVpIERBVEVJTkFNRS4KCiAgMi4gOncgREFURUlOQU1FICBzcGVpY2hlcnQgZGllIGFrdHVlbGxlIFZpbS1EYXRlaSB1bnRlciBkZW0gTmFtZW4gIERBVEVJTkFNRS4KCiAgMy4gdiAgQmV3ZWd1bmcgIDp3IERBVEVJTkFNRSAgc2NocmVpYnQgZGllIFZpc3VlbGwgYXVzZ2V35GhsdGVuIFplaWxlbiBpbgogICAgIGRpZSBEYXRlaSBEQVRFSU5BTUUuCgogIDQuIDpyIERBVEVJTkFNRSAgbORkdCBkaWUgRGF0ZWkgREFURUlOQU1FIHVuZCBm/Gd0IHNpZSB1bnRlcmhhbGIgZGVyCiAgICAgQ3Vyc29ycG9zaXRpb24gZWluLgoKICA1LiA6ciAhZGlyICBsaWVzdCBkaWUgQXVzZ2FiZSBkZXMgS29tbWFuZG9zIGRpciB1bmQgZvxndCBzaWUgdW50ZXJoYWxiIGRlcgogICAgIEN1cnNvcnBvc2l0aW9uIGVpbi4KCgp+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+fn4KCQkgICAgICAgTGVrdGlvbiA2LjE6IFpFSUxFTiDWRkZORU4gKE9QRU4pCgoKICAgKiogVGlwcGUgIG8JLCB1bSBlaW5lIFplaWxlIHVudGVyaGFsYiBkZXMgQ3Vyc29ycyB6dSD2ZmZuZW4gdW5kIERpY2ggaW4gKioKICAgICAgICAgICAgICAgICAgICAgICoqIGRlbiBFaW5m/GdlbW9kdXMgenUgYmVnZWJlbi4gKioKCiAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIGVyc3RlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVudGVuLgoKICAyLiBUaXBwZSBvIChrbGVpbiBnZXNjaHJpZWJlbiksIHVtIGVpbmUgWmVpbGUgVU5URVJIQUxCIGRlcyBDdXJzb3JzIHp1IPZmZm5lbgogICAgIHVuZCBEaWNoIGluIGRlbiBFaW5m/GdlbW9kdXMgenUgYmVnZWJlbi4KCiAgMy4gTnVuIHRpcHBlIGV0d2FzIFRleHQgdW5kIGRy/GNrZSA8RVNDPiAsIHVtIGRlbiBFaW5m/GdlbW9kdXMgenUgdmVybGFzc2VuLgoKLS0tPiBNaXQgIG8gIHdpcmQgZGVyIEN1cnNvciBhdWYgZGVyIG9mZmVuZW4gWmVpbGUgaW0gRWluZvxnZW1vZHVzIHBsYXR6aWVydC4KCiAgNC4gVW0gZWluZSBaZWlsZSDcQkVSSEFMQiBkZXMgQ3Vyc29ycyBhdWZ6dW1hY2hlbiwgZ2liIGVpbmZhY2ggZWluIGdyb99lcyAgTwogICAgIHN0YXR0IGVpbmVtIGtsZWluZW4gIG8gIGVpbi4gVmVyc3VjaGUgZGllcyBhdWYgZGVyIHVudGVuIHN0ZWhlbmRlbiBaZWlsZS4KCi0tLT4g1mZmbmUgZWluZSBaZWlsZSD8YmVyIGRpZXNlciBtaXQgTyAsIHdlbm4gZGVyIEN1cnNvciBhdWYgZGllc2VyIFplaWxlIGlzdC4KCgoKfn5+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+CgkJICAgICAgIExla3Rpb24gNi4yOiBURVhUIEFORtxHRU4gKEFQUEVORCkKCgoJICAgICAqKiBUaXBwZSAgYSAgLCB1bSBUZXh0IE5BQ0ggZGVtIEN1cnNvciBlaW56dWb8Z2VuLiAqKgoKICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gQW5mYW5nIGRlciBlcnN0ZW4g3GJ1bmdzemVpbGUgbWl0IC0tLT4gdW50ZW4uCgogIDIuIERy/GNrZSAgZSAgLCBiaXMgZGVyIEN1cnNvciBhbSBFbmRlIHZvbiAgWmVpICBzdGVodC4KCiAgMy4gVGlwcGUgZWluIGtsZWluZXMgIGEgICwgdW0gVGV4dCBOQUNIIGRlbSBDdXJzb3IgYW56dWb8Z2VuLgoKICA0LiBWZXJ2b2xsc3TkbmRpZ2UgZGFzIFdvcnQgc28gd2llIGluIGRlciBaZWlsZSBkYXJ1bnRlci4gIERy/GNrZSA8RVNDPiAsCiAgICAgdW0gZGVuIEVpbmb8Z2Vtb2R1cyB6dSB2ZXJsYXNzZW4uCgogIDUuIEJld2VnZSBEaWNoIG1pdCAgZSAgenVtIG7kY2hzdGVuIHVudm9sbHN05G5kaWdlbiBXb3J0IHVuZCB3aWVkZXJob2xlCiAgICAgU2Nocml0dGUgMyB1bmQgNC4KCi0tLT4gRGllc2UgWmVpIGJpZXRldCBHZWxlZ2VuICwgVGV4dCBpbiBlaW5lciBaZWlsZSBhbnp1ZvwuCi0tLT4gRGllc2UgWmVpbGUgYmlldGV0IEdlbGVnZW5oZWl0LCBUZXh0IGluIGVpbmVyIFplaWxlIGFuenVm/Gdlbi4KCkFubWVya3VuZzogIGEsIGkgdW5kIEEgZ2VoZW4gYWxsZSBnbGVpY2hlcm1h32VuIGluIGRlbiBFaW5m/GdlbW9kdXM7IGRlcgogICAgICAgICAgICBlaW56aWdlIFVudGVyc2NoaWVkIGlzdCwgd28gZGllIFplaWNoZW4gZWluZ2Vm/Gd0IHdlcmRlbi4Kfn5+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+CgkgICAgICBMZWt0aW9uIDYuMzogRUlORSBBTkRFUkUgQVJUIERFUyBFUlNFVFpFTlMgKFJFUExBQ0UpCgoKICAgICAgICoqIFRpcHBlIGVpbiBncm/fZXMgIFIgICwgdW0gbWVociBhbHMgZWluIFplaWNoZW4genUgZXJzZXR6ZW4uICoqCgogIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1ciBlcnN0ZW4gdW50ZW4gc3RlaGVuZGVuLCBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLgogICAgIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBBbmZhbmcgZGVzIGVyc3RlbiAgeHh4IC4KCiAgMi4gTnVuIGRy/GNrZSAgUiAgdW5kIHRpcHBlIGRpZSBOdW1tZXIsIGRpZSBkYXJ1bnRlciBpbiBkZXIgendlaXRlbiBaZWlsZQogICAgIHN0ZWh0LCBzbyBkYXNzIGRpZXNlIGRhcyB4eHggZXJzZXR6dC4KCiAgMy4gRHL8Y2tlIDxFU0M+ICwgdW0gZGVuIEVyc2V0enVuZ3Ntb2R1cyB6dSB2ZXJsYXNzZW4uIEJlYWNodGUsIGRhc3MgZGVyIFJlc3QKICAgICBkZXIgWmVpbGUgdW52ZXLkbmRlcnQgYmxlaWJ0LgoKICA0LiBXaWVkZXJob2xlIGRpZSBTY2hyaXR0ZSwgdW0gZGFzIHZlcmJsaWViZW5lIHh4eCB6dSBlcnNldHplbi4KCi0tLT4gRGFzIEFkZGllcmVuIHZvbiAxMjMgenUgeHh4IGVyZ2lidCB4eHguCi0tLT4gRGFzIEFkZGllcmVuIHZvbiAxMjMgenUgNDU2IGVyZ2lidCA1NzkuCgpBbm1lcmt1bmc6IERlciBFcnNldHp1bmdzbW9kdXMgaXN0IHdpZSBkZXIgRWluZvxnZW1vZHVzLCBhYmVyIGplZGVzIGVpbmdldGlwcHRlCiAgICAgICAgICAgWmVpY2hlbiBs9nNjaHQgZWluIHZvcmhhbmRlbmVzIFplaWNoZW4uCgp+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+fn4KCQkgICAgTGVrdGlvbiA2LjQ6IFRFWFQgS09QSUVSRU4gVU5EIEVJTkbcR0VOCgogKiogQmVudXR6ZSBkZW4gIHkgIE9wZXJhdG9yLCB1bSBUZXh0IHp1IGtvcGllcmVuOyAgcCAgLCB1bSBpaG4gZWluenVm/GdlbiAqKgoKICAxLiBHZWhlIHp1IGRlciBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVudGVuOyBzZXR6ZSBkZW4gQ3Vyc29yIGhpbnRlciAiYSkiLgoKICAyLiBTdGFydGUgZGVuIFZpc3VlbGxlbiBNb2R1cyBtaXQgIHYgICwgYmV3ZWdlIGRlbiBDdXJzb3IgZ2VuYXUgdm9yICJlcnN0ZSIuCgogIDMuIFRpcHBlICB5ICAsIHVtIGRlbiBoZXJ2b3JnZWhvYmVuIFRleHQgenUga29waWVyZW4uCgogIDQuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBFbmRlIGRlciBu5GNoc3RlbiBaZWlsZTogIGokCgogIDUuIFRpcHBlICBwICwgdW0gZGVuIFRleHQgZWluenVm/GdlbiB1bmQgYW5zY2hsaWXfZW5kOiAgYSB6d2VpdGUgPEVTQz4gLgoKICA2LiBCZW51dHplIGRlbiBWaXN1ZWxsZW4gTW9kdXMsIHVtICIgRWludHJhZy4iIGF1c3p1d+RobGVuLCBrb3BpZXJlIG1pdHRlbHMKICAgICB5ICwgYmV3ZWdlIERpY2ggenVtIEVuZGUgZGVyIG7kY2hzdGVuIFplaWxlIG1pdCAgaiQgIHVuZCBm/GdlIGRlbiBUZXh0CiAgICAgZG9ydCBtaXQgIHAgIGFuLgoKLS0tPiAgYSkgZGllcyBpc3QgZGVyIGVyc3RlIEVpbnRyYWcuCiAgICAgIGIpCgpBbm1lcmt1bmc6IER1IGthbm5zdCAgeSAgYXVjaCBhbHMgT3BlcmF0b3IgdmVyd2VuZGVuOyAgeXcgIGtvcGllcnQgZWluIFdvcnQuCn5+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+fgoJCQkgIExla3Rpb24gNi41OiBPUFRJT05FTiBTRVRaRU4KCiAgICAgICoqIFNldHplIGVpbmUgT3B0aW9uIHNvLCBkYXNzIGVpbmUgU3VjaGUgb2RlciBFcnNldHp1bmcgR3Jv3y0gKioKCQkgICAgICAqKiB1bmQgS2xlaW5zY2hyZWlidW5nIGlnbm9yaWVydCAqKgoKICAxLiBTdWNoZSBuYWNoICdpZ25vcmllcmUnLCBpbmRlbSBEdSAgICAvaWdub3JpZXJlICAgZWluZ2lic3QuCiAgICAgV2llZGVyaG9sZSBkaWUgU3VjaGUgZWluaWdlIE1hbGUsIGluZGVtIER1IGRpZSBuIC0gVGFzdGUgZHL8Y2tzdC4KCiAgMi4gU2V0emUgZGllICdpYycgKElnbm9yZSBjYXNlKSAtIE9wdGlvbiwgaW5kZW0gRHUgICA6c2V0IGljICAgZWluZ2lic3QuCgogIDMuIE51biBzdWNoZSB3aWVkZXIgbmFjaCAnaWdub3JpZXJlJywgaW5kZW0gRHUgIG4gIHRpcHBzdC4KICAgICBCZWFjaHRlLCBkYXNzIGpldHp0IElnbm9yaWVyZSB1bmQgYXVjaCBJR05PUklFUkUgZ2VmdW5kZW4gd2lyZC4KCiAgNC4gU2V0emUgZGllICdobHNlYXJjaCcgdW5kICdpbmNzZWFyY2gnIC0gT3B0aW9uZW46ICAgICA6c2V0IGhscyBpcwoKICA1LiBXaWVkZXJob2xlIGRpZSBTdWNoZSB1bmQgYmVvYmFjaHRlLCB3YXMgcGFzc2llcnQ6IC9pZ25vcmllcmUgPEVOVEVSPgoKICA2LiBVbSBkYXMgSWdub3JpZXJlbiB2b24gR3Jv3y9LbGVpbnNjaHJlaWJ1bmcgYWJ6dXNjaGFsdGVuLCB0aXBwZTogIDpzZXQgbm9pYwoKQW5tZXJrdW5nOiBVbSBkaWUgSGVydm9yaGVidW5nIGRlciBUcmVmZmVyIHp1IGVudGZlcm5lbiwgZ2liIGVpbjogIDpub2hsc2VhcmNoCkFubWVya3VuZzogVW0gZGllIFNjaHJlaWJ3ZWlzZSBm/HIgZWluZSBlaW56aWdlIFN1Y2hlIHp1IGlnbm9yaWVyZW4sIGJlbnV0emUgXGMKICAgICAgICAgICBpbSBTdWNoYXVzZHJ1Y2s6ICAvaWdub3JpZXJlXGMgIDxFTlRFUj4Kfn5+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+CgkJCSBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gNgoKIDEuIFRpcHBlICBvICAsIHVtIGVpbmUgWmVpbGUgVU5URVIgZGVtIEN1cnNvciB6dSD2ZmZuZW4gdW5kIGRlbiBFaW5m/GdlbW9kdXMKICAgICAgICAgICAgICAgIHp1IHN0YXJ0ZW4KICAgIFRpcHBlICBPICAsIHVtIGVpbmUgWmVpbGUg3EJFUiBkZW0gQ3Vyc29yIHp1IPZmZm5lbi4KCiAyLiBUaXBwZSAgYSAgLCB1bSBUZXh0IE5BQ0ggZGVtIEN1cnNvciBhbnp1ZvxnZW4uCiAgICBUaXBwZSAgQSAgLCB1bSBUZXh0IG5hY2ggZGVtIFplaWxlbmVuZGUgYW56dWb8Z2VuLgoKIDMuIERhcyBLb21tYW5kbyAgZSAgYnJpbmd0IERpY2ggenVtIEVuZGUgZWluZXMgV29ydGVzLgoKIDQuIERlciBPcGVyYXRvciAgeSAgKHlhbmspIGtvcGllcnQgVGV4dCwgIHAgIChwdXQpIGb8Z3QgaWhuIGVpbi4KCiA1LiBFaW4gZ3Jv32VzICBSICBnZWh0IGluIGRlbiBFcnNldHp1bmdzbW9kdXMgYmlzIHp1bSBEcvxja2VuIHZvbiAgPEVTQz4gLgoKIDYuIERpZSBFaW5nYWJlIHZvbiAiOnNldCB4eHgiIHNldHp0IGRpZSBPcHRpb24gInh4eCIuIEVpbmlnZSBPcHRpb25lbiBzaW5kOgoJJ2ljJyAnaWdub3JlY2FzZScgICAgSWdub3JpZXJlIEdyb98vS2xlaW5zY2hyZWlidW5nIGJlaSBlaW5lciBTdWNoZQoJJ2lzJyAnaW5jc2VhcmNoJyAgICAgWmVpZ2UgVGVpbPxiZXJlaW5zdGltbXVuZ2VuIGb8ciBlaW5lbiBTdWNoYXVzZHJ1Y2sKCSdobHMnICdobHNlYXJjaCcgICAgIEhlYmUgYWxsZSBwYXNzZW5kZW4gQXVzZHL8Y2tlIGhlcnZvcgogICAgRGVyIE9wdGlvbnNuYW1lIGthbm4gaW4gZGVyIEt1cnotIG9kZXIgZGVyIExhbmdmb3JtIGFuZ2VnZWJlbiB3ZXJkZW4uCgogNy4gU3RlbGxlIGVpbmVyIE9wdGlvbiAibm8iIHZvcmFuLCB1bSBzaWUgYWJ6dXNjaGFsdGVuOiAgIDpzZXQgbm9pYwp+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+fn4KCQkJTGVrdGlvbiA3LjEgOiBBVUZSVUZFTiBWT04gSElMRkUKCgoJCSAgICAgKiogTnV0emUgZGFzIGVpbmdlYmF1dGUgSGlsZmVzeXN0ZW0gKioKCiAgVmltIGJlc2l0enQgZWluIHVtZmFzc2VuZGVzIGVpbmdlYmF1dGVzIEhpbGZlc3lzdGVtLiAgRvxyIGRlbiBBbmZhbmcgcHJvYmllcmUKICBlaW5zIGRlciBkcmVpIGZvbGdlbmRlbiBEaW5nZSBhdXM6CgktIERy/GNrZSBkaWUgPEhpbGZlPiAtIFRhc3RlIChmYWxscyBEdSBlaW5lIGJlc2l0enQpCgktIERy/GNrZSBkaWUgPEYxPiBUYXN0ZSAoZmFsbHMgRHUgZWluZSBiZXNpdHp0KQoJLSBUaXBwZSAgIDpoZWxwIDxFTlRFUj4KCiAgTGllcyBkZW4gVGV4dCBpbSBIaWxmZWZlbnN0ZXIsIHVtIHp1IHZlcnN0ZWhlbiB3aWUgZGllIEhpbGZlIGZ1bmt0aW9uaWVydC4KICBUaXBwZSAgQ1RSTC1XIENUUkwtVyAgICwgdW0gdm9uIGVpbmVtIEZlbnN0ZXIgenVtIGFuZGVyZW4genUgc3ByaW5nZW4uCiAgVGlwcGUgICA6cSA8RU5URVI+ICAsIHVtIGRhcyBIaWxmZWZlbnN0ZXIgenUgc2NobGll32VuLgoKICBEdSBrYW5uc3QgSGlsZmUgenUgcHJha3Rpc2NoIGplZGVtIFRoZW1hIGZpbmRlbiwgaW5kZW0gRHUgZGVtICI6aGVscCItCiAgS29tbWFuZG8gZWluIEFyZ3VtZW50IGdpYnN0LiAgUHJvYmllcmUgZm9sZ2VuZGVzICg8RU5URVI+IG5pY2h0IHZlcmdlc3Nlbik6CgoJOmhlbHAgdwoJOmhlbHAgY19DVFJMLUQKCTpoZWxwIGluc2VydC1pbmRleAoJOmhlbHAgdXNlci1tYW51YWwKfn5+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+CgkJICAgICBMZWt0aW9uIDcuMjogRVJTVEVMTEUgRUlOIFNUQVJULVNLUklQVAoKCgkgICAgICAgICAgKiogIEFrdGl2aWVyZSBkaWUgRmVhdHVyZXMgdm9uIFZpbSAqKgoKICBWaW0gYmVzaXR6dCB2aWVsZSBGdW5rdGlvbmFsaXTkdGVuLCBkaWUg/GJlciBWaSBoaW5hdXNnZWhlbiwgYWJlciBkaWUgbWVpc3RlbgogIHZvbiBpaG5lbiBzaW5kIHN0YW5kYXJkbeTfaWcgZGVha3RpdmllcnQuIFVtIG1laHIgRnVua3Rpb25hbGl05HRlbiB6dSBudXR6ZW4sCiAgbXVzc3QgRHUgZWluZSAidmltcmMiIC0gRGF0ZWkgZXJzdGVsbGVuLgoKICAxLiBTdGFydGUgZGFzIEVkaXRpZXJlbiBkZXIgInZpbXJjIi1EYXRlaSwgYWJo5G5naWcgdm9uIGRlaW5lbSBTeXN0ZW06Cgk6ZSB+Ly52aW1yYwkJZvxyIFVuaXgKCTplICRWSU0vX3ZpbXJjCQlm/HIgTVMtV2luZG93cwoKICAyLiBOdW4gbGllcyBkZW4gSW5oYWx0IGRlciBCZWlzcGllbC0idmltcmMiLURhdGVpIGVpbjoKCTpyICRWSU1SVU5USU1FL3ZpbXJjX2V4YW1wbGUudmltCgogIDMuIFNwZWljaGVyZSBkaWUgRGF0ZWkgbWl0OgoJOncKCiAgQmVpbSBu5GNoc3RlbiBTdGFydCB2b24gVmltIHdpcmQgZGllIFN5bnRheGhlcnZvcmhlYnVuZyBha3RpdmllcnQgc2Vpbi4KICBEdSBrYW5uc3QgYWxsIGRlaW5lIGJldm9yenVndGVuIE9wdGlvbmVuIHp1IGRpZXNlciAidmltcmMiLURhdGVpIHp1ZvxnZW4uCiAgRvxyIG1laHIgSW5mb3JtYXRpb25lbiB0aXBwZSAgOmhlbHAgdmltcmMtaW50cm8Kfn5+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+CgkJCSBMZWt0aW9uIDcuMzogVkVSVk9MTFNUxE5ESUdFTgoKCgkgICAqKiBLb21tYW5kb3plaWxlbnZlcnZvbGxzdORuZGlndW5nIG1pdCBDVFJMLUQgdW5kIDxUQUI+ICoqCgogIDEuIFN0ZWxsZSBzaWNoZXIsIGRhc3MgVmltIG5pY2h0IGltIFZpLUtvbXBhdGliaWxpdOR0c21vZHVzIGlzdDogIDpzZXQgbm9jcAoKICAyLiBTaWVoZSBuYWNoLCB3ZWxjaGUgRGF0ZWllbiBpbSBWZXJ6ZWljaG5pcyBleGlzdGllcmVuOiAgOiFscyAgb2RlciAgOiFkaXIKCiAgMy4gVGlwcGUgZGVuIEJlZ2lubiBlaW5lcyBLb21tYW5kb3M6ICA6ZQoKICA0LiBEcvxja2UgIENUUkwtRCAgdW5kIFZpbSB6ZWlndCBlaW5lIExpc3RlIG1pdCAiZSIgYmVnaW5uZW5kZXIgS29tbWFuZG9zLgoKICA1LiBEcvxja2UgIDxUQUI+ICB1bmQgVmltIHZlcnZvbGxzdORuZGlndCBkZW4gS29tbWFuZG9uYW1lbiB6dSAiOmVkaXQiLgoKICA2LiBOdW4gZvxnZSBlaW4gTGVlcnplaWNoZW4gdW5kIGRlbiBBbmZhbmcgZWluZXIgZXhpc3RpZXJlbmRlbiBEYXRlaSBhbjoKICAgICA6ZWRpdCBEQVQKCiAgNy4gRHL8Y2tlIDxUQUI+LiBWaW0gdmVydm9sbHN05G5kaWd0IGRlbiBOYW1lbiAoZmFsbHMgZXIgZWluZGV1dGlnIGlzdCkuCgpBbm1lcmt1bmc6IFZlcnZvbGxzdORuZGlndW5nIGZ1bmt0aW9uaWVydCBm/HIgdmllbGUgS29tbWFuZG9zLiBQcm9iaWVyZQogICAgIGVpbmZhY2ggQ1RSTC1EIHVuZCA8VEFCPi4gIERpZXMgaXN0IGluc2Jlc29uZGVyZSBu/HR6bGljaCBm/HIgIDpoZWxwIC4Kfn5+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+CgkJCQkgICAgIFpVU0FNTUVORkFTU1VORyBWT04gTEVLVElPTiA3CgoKICAxLiBUaXBwZSAgOmhlbHAgIG9kZXIgZHL8Y2tlIDxGMT4gb2RlciA8SGVscD4sIHVtIGVpbiBIaWxmZWZlbnN0ZXIgenUg9mZmbmVuLgoKICAyLiBUaXBwZSAgOmhlbHAgS29tbWFuZG8gICwgdW0gSGlsZmUg/GJlciAgS29tbWFuZG8gIHp1IGVyaGFsdGVuLgoKICAzLiBUaXBwZSAgQ1RSTC1XIENUUkwtVyAgLCB1bSB6dW0gYW5kZXJlbiBGZW5zdGVyIHp1IHNwcmluZ2VuLgoKICA0LiBUaXBwZSAgOnEgICwgdW0gZGFzIEhpbGZlZmVuc3RlciB6dSBzY2hsaWXfZW4uCgogIDUuIEVyc3RlbGxlIGVpbiB2aW1yYyAtIFN0YXJ0c2tyaXB0IG1pdCBkZWluZW4gYmV2b3J6dWd0ZXIgRWluc3RlbGx1bmdlbi4KCiAgNi4gRHL8Y2tlIENUUkwtRCBuYWNoIGRlbSBUaXBwZW4gZWluZXMgIDogIEtvbW1hbmRvcywgdW0gbfZnbGljaGUKICAgICBWZXJ2b2xsc3TkbmRpZ3VuZ2VuIGFuenVzZWhlbi4KICAgICBEcvxja2UgPFRBQj4gLCB1bSBlaW5lIFZlcnZvbGxzdORuZGlndW5nIHp1IGFuenV3ZW5kZW4uCgoKCgoKCn5+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+fgoKICBEYW1pdCBpc3QgZGVyIFZpbSBUdXRvciBiZWVuZGV0LiAgU2VpbmUgSW50ZW50aW9uIHdhciwgZWluZW4ga3VyemVuIHVuZAogIGL8bmRpZ2VuINxiZXJibGljayD8YmVyIGRlbiBWaW0gRWRpdG9yIHp1IGdlYmVuOyBnZXJhZGUgZ2VudWcsIHVtIHJlbGF0aXYKICBsZWljaHQgbWl0IGlobSB1bWdlaGVuIHp1IGv2bm5lbi4gIERlciBWaW0gVHV0b3IgaGF0IG5pY2h0IGRlbiBnZXJpbmdzdGVuCiAgQW5zcHJ1Y2ggYXVmIFZvbGxzdORuZGlna2VpdDsgVmltIGhhdCBub2NoIHdlaXRhdXMgbWVociBLb21tYW5kb3MuIExpZXMgYWxzCiAgbuRjaHN0ZXMgZGFzIFVzZXIgTWFudWFsOiAiOmhlbHAgdXNlci1tYW51YWwiLgoKICBG/HIgd2VpdGVyZXMgTGVzZW4gdW5kIExlcm5lbiBpc3QgZm9sZ2VuZGVzIEJ1Y2ggZW1wZmVobGVuc3dlcnQgOgoJVmltIC0gVmkgSW1wcm92ZWQgLSB2b24gU3RldmUgT3VhbGxpbmUKCVZlcmxhZzogTmV3IFJpZGVycwogIERhcyBlcnN0ZSBCdWNoLCB3ZWxjaGVzIGR1cmNoZ+RuZ2lnIFZpbSBnZXdpZG1ldCBpc3QuICBCZXNvbmRlcnMgbvx0emxpY2gKICBm/HIgQW5m5G5nZXIuICBWaWVsZSBCZWlzcGllbGUgdW5kIEJpbGRlciBzaW5kIGVudGhhbHRlbi4KICBTaWVoZSBodHRwOi8vaWNjZi1ob2xsYW5kLm9yZy9jbGljazUuaHRtbAoKICBGb2xnZW5kZXMgQnVjaCBpc3Qg5Gx0ZXIgdW5kIG1laHIg/GJlciBWaSBhbHMgVmltLCBhYmVyIGF1Y2ggZW1wZmVobGVuc3dlcnQ6CglUZXh0YmVhcmJlaXR1bmcgbWl0IGRlbSBWaS1FZGl0b3IgIC0gIHZvbiBMaW5kYSBMYW1iIHVuZCBBcm5vbGQgUm9iYmlucwoJVmVybGFnIE8nUmVpbGx5IC0gSVNCTjogMzg5NzIxMTI2MgogIEluIGRpZXNlbSBCdWNoIGthbm4gbWFuIGZhc3QgYWxsZXMgZmluZGVuLCB3YXMgbWFuIG1pdCBWaSB0dW4gbfZjaHRlLgogIERpZSBzZWNoc3RlIEF1c2dhYmUgZW50aORsdCBhdWNoIEluZm9ybWF0aW9uZW4g/GJlciBWaW0uCgogIEFscyBha3R1ZWxsZSBSZWZlcmVueiBm/HIgVmVyc2lvbiA2LjIgdW5kIGtuYXBwZSBFaW5m/GhydW5nIGRpZW50IGRhcwogIGZvbGdlbmRlIEJ1Y2g6Cgl2aW0gZ2UtcGFja3Qgdm9uIFJlaW5oYXJkIFdvYnN0CgltaXRwLVZlcmxhZywgSVNCTiAzLTgyNjYtMTQyNS05CiAgVHJvdHogZGVyIGtvbXBha3RlbiBEYXJzdGVsbHVuZyBpc3QgZXMgZHVyY2ggdmllbGUgbvx0emxpY2hlIEJlaXNwaWVsZSBhdWNoCiAgZvxyIEVpbnN0ZWlnZXIgZW1wZmVobGVuc3dlcnQuICBQcm9iZWthcGl0ZWwgdW5kIGRpZSBCZWlzcGllbHNrcmlwdGUgc2luZAogIG9ubGluZSBlcmjkbHRsaWNoLiAgU2llaGUgaHR0cDovL2ljY2YtaG9sbGFuZC5vcmcvY2xpY2s1Lmh0bWwKCiAgRGllc2VzIFR1dG9yaWFsIHd1cmRlIGdlc2NocmllYmVuIHZvbiBNaWNoYWVsIEMuIFBpZXJjZSB1bmQgUm9iZXJ0IEsuIFdhcmUsCiAgQ29sb3JhZG8gU2Nob29sIG9mIE1pbmVzLiBFcyBiZW51dHp0IElkZWVuLCBkaWUgQ2hhcmxlcyBTbWl0aCwgQ29sb3JhZG8gU3RhdGUKICBVbml2ZXJzaXR5LCB6dXIgVmVyZvxndW5nIHN0ZWxsdGUuICBFLU1haWw6IGJ3YXJlQG1pbmVzLmNvbG9yYWRvLmVkdS4KCiAgQmVhcmJlaXRldCBm/HIgVmltIHZvbiBCcmFtIE1vb2xlbmFhci4KICBEZXV0c2NoZSDcYmVyc2V0enVuZyB2b24gSm9hY2hpbSBIb2ZtYW5uIDIwMTUuICBFLU1haWw6IEpvYWNoaW0uSG9mQGdteC5kZQoKfn5+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+Cg==