PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQo9ICAgIEIgaSBlIG4gdiBlIG4gdSBlICBkYW5zICBsIGUgIFQgdSB0IG8gciBpIGUgbCAgZGUgIFYgSSBNICAtICBWZXJzaW9uIDEuNyA9Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCiAgICAgVmltIGVzdCB1biDpZGl0ZXVyIHRy6HMgcHVpc3NhbnQgcXVpIGEgdHJvcCBkZSBjb21tYW5kZXMgcG91ciBwb3V2b2lyCiAgICAgdG91dGVzIGxlcyBleHBsaXF1ZXIgZGFucyB1biBjb3VycyBjb21tZSBjZWx1aS1jaSwgcXVpIGVzdCBjb27ndSBwb3VyIGVuCiAgICAgZOljcmlyZSBzdWZmaXNhbW1lbnQgYWZpbiBkZSB2b3VzIHBlcm1ldHRyZSBkJ3V0aWxpc2VyIHNpbXBsZW1lbnQgVmltLgoKICAgICBMZSB0ZW1wcyByZXF1aXMgcG91ciBzdWl2cmUgY2UgY291cnMgZXN0IGQnZW52aXJvbiAyNSDgIDMwIG1pbnV0ZXMsIHNlbG9uCiAgICAgbGUgdGVtcHMgcXVlIHZvdXMgcGFzc2VyZXog4CBleHDpcmltZW50ZXIuCgogICAgIEFUVEVOVElPTiA6CiAgICAgTGVzIGNvbW1hbmRlcyB1dGlsaXPpZXMgZGFucyBsZXMgbGXnb25zIG1vZGlmaWVyb250IGxlIHRleHRlLiBGYWl0ZXMgdW5lCiAgICAgY29waWUgZGUgY2UgZmljaGllciBhZmluIGRlIHZvdXMgZW50cmHubmVyIGRlc3N1cyAoc2kgdm91cyBhdmV6IGxhbmPpCiAgICAgInZpbXR1dG9yIiBjZWNpIGVzdCBk6WrgIHVuZSBjb3BpZSkuCgogICAgIElsIGVzdCBpbXBvcnRhbnQgZGUgZ2FyZGVyIGVuIHTqdGUgcXVlIGNlIGNvdXJzIGVzdCBjb27ndSBwb3VyIGFwcHJlbmRyZQogICAgIHBhciBsYSBwcmF0aXF1ZS4gQ2VsYSBzaWduaWZpZSBxdWUgdm91cyBkZXZleiBleOljdXRlciBsZXMgY29tbWFuZGVzCiAgICAgcG91ciBsZXMgYXBwcmVuZHJlIGNvcnJlY3RlbWVudC4gU2kgdm91cyB2b3VzIGNvbnRlbnRleiBkZSBsaXJlIGxlIHRleHRlLAogICAgIHZvdXMgb3VibGllcmV6IGxlcyBjb21tYW5kZXMgIQoKICAgICBNYWludGVuYW50LCB26XJpZmlleiBxdWUgdm90cmUgY2xhdmllciBuJ2VzdCBQQVMgdmVycm91aWxs6SBlbgogICAgIG1hanVzY3VsZXMsIGV0IGFwcHV5ZXogbGEgdG91Y2hlICBqICBsZSBub21icmUgZGUgZm9pcyBzdWZmaXNhbnQgcG91cgogICAgIHF1ZSBsYSBMZedvbiAxLjEgcmVtcGxpc3NlIGNvbXBs6HRlbWVudCBsJ+ljcmFuLgoKCn5+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+fgogICAgICAgICAgICAgICAgICAgICAgTGXnb24gMS4xIDogRMlQTEFDRU1FTlQgRFUgQ1VSU0VVUgoKCiAgKiogUG91ciBk6XBsYWNlciBsZSBjdXJzZXVyLCBhcHB1eWV6IGxlcyB0b3VjaGVzIGgsaixrLGwgY29tbWUgaW5kaXF16S4gKioKICAgICAgICAgIF4KICAgICAgICAgIGsgICAgICAgIEFzdHVjZSA6ICBMYSB0b3VjaGUgaCBlc3Qg4CBnYXVjaGUgZXQgZOlwbGFjZSDgIGdhdWNoZS4KICAgIDwgaCAgICAgICBsID4gICAgICAgICAgICBMYSB0b3VjaGUgbCBlc3Qg4CBkcm9pdGUgZXQgZOlwbGFjZSDgIGRyb2l0ZS4KICAgICAgICAgIGogICAgICAgICAgICAgICAgICBMYSB0b3VjaGUgaiByZXNzZW1ibGUg4CB1bmUgZmzoY2hlIHZlcnMgbGUgYmFzLgogICAgICAgICAgdgogIDEuIETpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGwn6WNyYW4ganVzcXUn4CB2b3VzIHNlbnRpciDgIGwnYWlzZS4KCiAgMi4gTWFpbnRlbmV6IGxhIHRvdWNoZSBCYXMgKGopIGVuZm9uY+llIGp1c3F1J+AgY2UgcXUnZWxsZSBzZSBy6XDodGUuCiAgICAgTWFpbnRlbmFudCB2b3VzIOp0ZXMgY2FwYWJsZSBkZSB2b3VzIGTpcGxhY2VyIGp1c3F1J+AgbGEgbGXnb24gc3VpdmFudGUuCgogIDMuIEVuIHV0aWxpc2FudCBsYSB0b3VjaGUgQmFzLCBhbGxleiDgIGxhIExl529uIDEuMi4KCk5PVEUgOiBTaSBqYW1haXMgdm91cyBkb3V0ZXogZGUgY2UgcXVlIHZvdXMgdmVuZXogZGUgdGFwZXIsIGFwcHV5ZXogPMljaGFwPgogICAgICAgcG91ciByZXZlbmlyIGVuIG1vZGUgTm9ybWFsLiBQdWlzIHJldGFwZXogbGEgY29tbWFuZGUgcXVlIHZvdXMgdm91bGllei4KCk5PVEUgOiBMZXMgdG91Y2hlcyBmbOljaOllcyBkZXZyYWllbnQg6WdhbGVtZW50IGZvbmN0aW9ubmVyLiBNYWlzIGVuIHV0aWxpc2FudAogICAgICAgaGprbCB2b3VzIHBvdXJyZXogdm91cyBk6XBsYWNlciBiZWF1Y291cCBwbHVzIHJhcGlkZW1lbnQsIHVuZSBmb2lzIHF1ZQogICAgICAgdm91cyBhdXJleiBwcmlzIGwnaGFiaXR1ZGUuCgoKfn5+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+CiAgICAgICAgICAgICAgICAgICAgIExl529uIDEuMiA6IFNPUlRJUiBERSBWSU0KCgogISEgTk9URSA6IEF2YW50IGQnZWZmZWN0dWVyIGxlcyDpdGFwZXMgY2ktZGVzc291cywgbGlzZXogdG91dGUgY2V0dGUgbGXnb24gISEKCiAgMS4gQXBwdXlleiBsYSB0b3VjaGUgIDzJY2hhcD4gIChwb3VyIOp0cmUgc/tyIGQn6nRyZSBlbiBtb2RlIE5vcm1hbCkuCgogIDIuIFRhcGV6IDogIDpxISA8RW50cullPgogICAgIENlY2kgcXVpdHRlIGwn6WRpdGV1ciBTQU5TIGVucmVnaXN0cmVyIGxlcyBjaGFuZ2VtZW50cyBxdWUgdm91cyBhdmV6CiAgICAgZmFpdHMuCgogIDMuIExvcnNxdWUgbCdpbnZpdGUgZHUgc2hlbGwgdm91cyBzZXJhIHBy6XNlbnTpZSwgdGFwZXogbGEgY29tbWFuZGUgcXVpCiAgICAgdm91cyBhIG1lbukgZGFucyBjZSB0dXRvcmllbC4gQ2VsYSBwb3VycmFpdCDqdHJlIDogICAgdmltdHV0b3IgPEVudHLpZT4KCiAgNC4gU2kgdm91cyBhdmV6IG3pbW9yaXPpIGNlcyDpdGFwZXMgZXQg6nRlcyBjb25maWFudCwgZWZmZWN0dWV6IGxlcyDpdGFwZXMKICAgICAxIOAgMyBwb3VyIHNvcnRpciBwdWlzIHJlbnRyZXIgZGFucyBsJ+lkaXRldXIuCgpOT1RFIDogIDpxISA8RW50cullPiBhbm51bGUgdG91cyBsZXMgY2hhbmdlbWVudHMgcXVlIHZvdXMgYXZleiBmYWl0cy4gRGFucwogICAgICAgICBxdWVscXVlcyBsZedvbnMsIHZvdXMgYXBwcmVuZHJleiDgIGVucmVnaXN0cmVyIGxlcyBjaGFuZ2VtZW50cy4KCiAgNS4gROlwbGFjZXogbGUgY3Vyc2V1ciDgIGxhIExl529uIDEuMy4KCgp+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+fn4KICAgICAgICAgICAgICAgICAgTGXnb24gMS4zIDogyURJVElPTiBERSBURVhURSAtIEVGRkFDRU1FTlQKCgogICAgICAgICAqKiBBcHB1eWV6ICAgeCAgIHBvdXIgZWZmYWNlciBsZSBjYXJhY3TocmUgc291cyBsZSBjdXJzZXVyLiAqKgoKICAxLiBE6XBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KCiAgMi4gUG91ciBjb3JyaWdlciBsZXMgZXJyZXVycywgZOlwbGFjZXogbGUgY3Vyc2V1ciBqdXNxdSfgIGNlIHF1J2lsIHNvaXQKICAgICBzdXIgdW4gY2FyYWN06HJlIOAgZWZmYWNlci4KCiAgMy4gQXBwdXlleiBsYSB0b3VjaGUgIHggIHBvdXIgZWZmYWNlciBsZSBjYXJhY3TocmUgcmVkb25kYW50LgoKICA0LiBS6XDpdGV6IGxlcyDpdGFwZXMgMiDgIDQganVzcXUn4CBjZSBxdWUgbGEgcGhyYXNlIHNvaXQgY29ycmVjdGUuCgotLS0+IExhIHZ2YWNoZSDgIHNhdXTp6SBhdS1kZGVzc3VzIGRkZSBsYSBsdXVuZS4KCiAgNS4gTWFpbnRlbmFudCBxdWUgbGEgbGlnbmUgZXN0IGNvcnJlY3RlLCBwYXNzZXog4CBsYSBMZedvbiAxLjQuCgpOT1RFIDogRW4gYXZhbudhbnQgZGFucyBjZSBjb3Vycywgbidlc3NheWV6IHBhcyBkZSBt6W1vcmlzZXIsIGFwcHJlbmV6IHBhcgogICAgICAgbGEgcHJhdGlxdWUuCgoKfn5+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+CiAgICAgICAgICAgICAgICAgICAgTGXnb24gMS40IDogyURJVElPTiBERSBURVhURSAtIElOU0VSVElPTgoKCiAgICAgICAgICAgICAgICAgICAgKiogQXBwdXlleiAgaSAgcG91ciBpbnPpcmVyIGR1IHRleHRlLiAqKgoKICAxLiBE6XBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBwcmVtaehyZSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KCiAgMi4gUG91ciByZW5kcmUgbGEgcHJlbWnocmUgbGlnbmUgaWRlbnRpcXVlIOAgbGEgc2Vjb25kZSwgbWV0dGV6IGxlIGN1cnNldXIKICAgICBzdXIgbGUgcHJlbWllciBjYXJhY3TocmUgQVBSyFMgbCdlbmRyb2l0IG/5IGluc+lyZXIgbGUgdGV4dGUuCgogIDMuIEFwcHV5ZXogIGkgIGV0IHRhcGV6IGxlcyBjYXJhY3TocmVzIHF1aSBtYW5xdWVudC4KCiAgNC4gVW5lIGZvaXMgcXUndW5lIGVycmV1ciBlc3QgY29ycmln6WUsIGFwcHV5ZXogPMljaGFwPiBwb3VyIHJldmVuaXIgZW4gbW9kZQogICAgIE5vcm1hbC4gUulw6XRleiBsZXMg6XRhcGVzIDIg4CA0IHBvdXIgY29ycmlnZXIgbGEgcGhyYXNlLgoKLS0tPiBJbCBtbnFlIGNhcmFjdOhyZXMgY2V0dGUgLgotLS0+IElsIG1hbnF1ZSBkZXMgY2FyYWN06HJlcyBkYW5zIGNldHRlIGxpZ25lLgoKICA1LiBVbmUgZm9pcyBxdWUgdm91cyDqdGVzIOAgbCdhaXNlIGF2ZWMgbCdpbnNlcnRpb24gZGUgdGV4dGUsIGFsbGV6IOAgbGEKICAgICBMZedvbiAxLjUuCgoKfn5+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+CiAgICAgICAgICAgICAgICAgICAgIExl529uIDEuNSA6IMlESVRJT04gREUgVEVYVEUgLSBBSk9VVEVSCgoKICAgICAgICAgICAgICAgICAgICAqKiBBcHB1eWV6ICBBICBwb3VyIGFqb3V0ZXIgZHUgdGV4dC4gKioKCiAgMS4gROlwbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgcHJlbWnocmUgbGlnbmUgY2ktZGVzc291cyBtYXJxdellIC0tLT4uCiAgICAgUGV1IGltcG9ydGUgc3VyIHF1ZWwgY2FyYWN06HJlIHNlIHRyb3V2ZSBsZSBjdXJzZXVyIHN1ciBjZXR0ZSBsaWduZS4KCiAgMi4gQXBwdXlleiAgQSAgZXQgdGFwZXogbGVzIGFqb3V0cyBu6WNlc3NhaXJlcy4KCiAgMy4gUXVhbmQgbGUgdGV4dGUgYSDpdOkgYWpvdXTpLCBhcHB1eWV6IDzJY2hhcD4gcG91ciByZXZlbmlyIGVuIG1vZGUKICAgICBOb3JtYWwuCgogIDQuIETpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIHNlY29uZGUgbGlnbmUgbWFycXXpZSAtLS0+IGV0IHLpcOl0ZXogbGVzCiAgICAg6XRhcGVzIDIgZXQgMyBwb3VyIGNvcnJpZ2VyIGxhIHBocmFzZS4KCi0tLT4gSWwgbWFucXVlIGR1IHRleHRlIOAgcGFydGlyIGRlIGNldAogICAgIElsIG1hbnF1ZSBkdSB0ZXh0ZSDgIHBhcnRpciBkZSBjZXR0ZSBsaWduZS4KLS0tPiBJbCBtYW5xdWUgYXVzc2kgZHUgdGUKICAgICBJbCBtYW5xdWUgYXVzc2kgZHUgdGV4dGUgaWNpLgoKICA1LiBRdWFuZCB2b3VzIHZvdXMgc2VudGV6IHN1ZmZpc2FtbWVudCDgIGwnYWlzZSBwb3VyIGFqb3V0ZXIgZHUgdGV4dGUsCiAgICAgYWxsZXog4CBsYSBMZedvbiAxLjYuCgoKfn5+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+CiAgICAgICAgICAgICAgICAgICAgICAgICBMZedvbiAxLjYgOiDJRElURVIgVU4gRklDSElFUgoKCiAgICAgICAgICAqKiBVdGlsaXNleiAgOndxICBwb3VyIGVucmVnaXN0cmVyIHVuIGZpY2hpZXIgZXQgc29ydGlyLiAqKgoKISEgTk9URSA6IExpc2V6IHRvdXRlIGxhIGxl529uIGF2YW50IGQnZXjpY3V0ZXIgbGVzIGluc3RydWN0aW9ucyBjaS1kZXNzb3VzICEhCgogIDEuIFNvcnRleiBkZSBjZSB0dXRvcmllbCBjb21tZSB2b3VzIGwnYXZleiBmYWl0IGRhbnMgbGEgTGXnb24gMS4yIDogIDpxIQogICAgIE91LCBzaSB2b3VzIGF2ZXogYWNj6HMg4CB1biBhdXRyZSB0ZXJtaW5hbCwgZXjpY3V0ZXogeSBsZXMgYWN0aW9ucwogICAgIHF1aSBzdWl2ZW50LgoKICAyLiDAIGwnaW52aXRlIGR1IHNoZWxsLCB0YXBleiBjZXR0ZSBjb21tYW5kZSA6ICB2aW0gdHV0b3IgPEVudHLpZT4KICAgICAndmltJyBlc3QgbGEgY29tbWFuZGUgcG91ciBk6W1hcnJlciBsJ+lkaXRldXIgVmltLCAndHV0b3InIGVzdCBsZQogICAgIG5vbSBkdSBmaWNoaWVyIHF1ZSB2b3VzIHNvdWhhaXRleiDpZGl0ZXIuIFV0aWxpc2V6IHVuIGZpY2hpZXIgcXVpIHBldXQKICAgICDqdHJlIG1vZGlmaekuCgogIDMuIEluc+lyZXogZXQgZWZmYWNleiBkdSB0ZXh0ZSBjb21tZSB2b3VzIGwnYXZleiBhcHByaXMgZGFucyBsZXMgbGXnb25zCiAgICAgcHLpY+lkZW50ZXMuCgogIDQuIEVucmVnaXN0cmV6IGxlIGZpY2hpZXIgYXZlYyBsZXMgY2hhbmdlbWVudHMgZXQgc29ydGV6IGRlIFZpbSBhdmVjIDoKICAgICAgIDp3cSA8RW50cullPgoKICA1LiBTaSB2b3VzIGF2ZXogcXVpdHTpIHZpbXR1dG9yIOAgbCfpdGFwZSAxLCByZWNvbW1lbmNleiB2aW10dXRvciBldAogICAgIGTpcGxhY2V6LXZvdXMgZW4gYmFzIHZlcnMgbGUgculzdW3pIHN1aXZhbnQuCgoKfn5+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+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUslTVU3JIERFIExBIExFx09OIDEKCgogIDEuIExlIGN1cnNldXIgc2UgZOlwbGFjZSBhdmVjIGxlcyB0b3VjaGVzIGZs6WNo6WVzIG91IGxlcyB0b3VjaGVzIGhqa2wuCiAgICAgICAgICAgaCAoZ2F1Y2hlKSAgICAgIGogKGJhcykgICAgICBrIChoYXV0KSAgICAgIGwgKGRyb2l0ZSkKCiAgMi4gUG91ciBk6W1hcnJlciBWaW0g4CBsJ2ludml0ZSBkdSBzaGVsbCB0YXBleiA6ICB2aW0gRklDSElFUiA8RW50cullPgoKICAzLiBQb3VyIHF1aXR0ZXIgVmltIHRhcGV6IDogIDzJY2hhcD4gOnEhIDxFbnRy6WU+ICBwb3VyIHBlcmRyZSB0b3VzIGxlcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZW1lbnRzLgogICAgICAgICAgICAgICAgICAgT1UgdGFwZXogOiAgPMljaGFwPiA6d3EgPEVudHLpZT4gIHBvdXIgZW5yZWdpc3RyZXIgbGVzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlbWVudHMuCgogIDQuIFBvdXIgZWZmYWNlciB1biBjYXJhY3TocmUgc291cyBsZSBjdXJzZXVyIHRhcGV6IDogIHgKCiAgNS4gUG91ciBpbnPpcmVyIG91IGFqb3V0ZXIgZHUgdGV4dGUgdGFwZXogOgogICAgICAgICBpICAgdGFwZXogbGUgdGV4dGUg4CBpbnPpcmVyIGF2YW50IGxlIGN1cnNldXIgICA8yWNoYXA+CiAgICAgICAgIEEgICB0YXBleiBsZSB0ZXh0ZSDgIGFqb3V0ZXIgYXBy6HMgbGUgY3Vyc2V1ciAgIDzJY2hhcD4KCk5PVEUgOiBBcHB1eWVyICA8yWNoYXA+ICB2b3VzIHBsYWNlIGVuIG1vZGUgTm9ybWFsIG91IGFubnVsZSB1bmUgY29tbWFuZGUKICAgICAgIHBhcnRpZWxsZW1lbnQgdGFw6WUgZG9udCB2b3VzIG5lIHZvdWxleiBwbHVzLgoKUGFzc2V6IG1haW50ZW5hbnQg4CBsYSBsZedvbiAyLgoKCn5+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+fgogICAgICAgICAgICAgICAgICAgICAgIExl529uIDIuMSA6IENPTU1BTkRFUyBEJ0VGRkFDRU1FTlQKCgogICAgICAgICAgICAgICAgICAgICAqKiBUYXBleiAgZHcgIHBvdXIgZWZmYWNlciB1biBtb3QuICoqCgogIDEuIEFwcHV5ZXogIDzJY2hhcD4gIHBvdXIg6nRyZSBz+3IgZCfqdHJlIGVuIG1vZGUgTm9ybWFsLgoKICAyLiBE6XBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KCiAgMy4gUGxhY2V6IGxlIGN1cnNldXIgc3VyIGxlIGTpYnV0IGQndW4gbW90IHF1aSBhIGJlc29pbiBkJ+p0cmUgZWZmYWPpLgoKICA0LiBUYXBleiAgZHcgIHBvdXIgZmFpcmUgZGlzcGFyYe50cmUgY2UgbW90LgoKTk9URSA6IExhIGxldHRyZSAgZCAgYXBwYXJh7nRyYSBzdXIgbGEgZGVybmnocmUgbGlnbmUgZGUgbCfpY3JhbiBsb3JzIGRlCiAgICAgICB2b3RyZSBmcmFwcGUuIFZpbSBhdHRlbmQgcXVlIHZvdXMgdGFwaWV6ICB3IC4gU2kgdm91cyB2b3lleiB1biBhdXRyZQogICAgICAgY2FyYWN06HJlIHF1ZSAgZCAgdm91cyBhdmV6IHRhcOkgYXV0cmUgY2hvc2UgOyBhcHB1eWV6IDzJY2hhcD4gZXQKICAgICAgIHJlY29tbWVuY2V6LgoKLS0tPiBJbCB5IGEgcXVlbHF1ZXMgZHL0bGUgbW90cyBxdWkgbidvbnQgcmllbiDgIGZhaXJlIHBhcGllciBzdXIgY2V0dGUgbGlnbmUuCgogIDUuIFLpcOl0ZXogbGVzIOl0YXBlcyAzIGV0IDQganVzcXUn4CBjZSBxdWUgbGEgcGhyYXNlIHNvaXQgY29ycmVjdGUgZXQgYWxsZXoKICAgICDgIGxhIExl529uIDIuMi4KCgp+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+fn4KICAgICAgICAgICAgICAgICAgTGXnb24gMi4yIDogUExVUyBERSBDT01NQU5ERVMgRCdFRkZBQ0VNRU5UUwoKCiAgICAgICAgICAqKiBUYXBleiAgZCQgIHBvdXIgZWZmYWNlciBqdXNxdSfgIGxhIGZpbiBkZSBsYSBsaWduZS4gKioKCiAgMS4gQXBwdXlleiAgPMljaGFwPiAgcG91ciDqdHJlIHP7ciBkJ+p0cmUgZW4gbW9kZSBOb3JtYWwuCgogIDIuIETpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIGxpZ25lIG1hcnF16WUgLS0tPiBjaS1kZXNzb3VzLgoKICAzLiBE6XBsYWNleiBsZSBjdXJzZXVyIGp1c3F1J+AgbGEgZmluIGRlIGxhIGxpZ25lIGNvcnJlY3RlIChBUFLIUyBsZQogICAgIHByZW1pZXIgLiApLgoKICA0LiBUYXBleiAgZCQgIHBvdXIgZWZmYWNlciBqdXNxdSfgIGxhIGZpbiBkZSBsYSBsaWduZS4KCi0tLT4gUXVlbHF1J3VuIGEgdGFw6SBsYSBmaW4gZGUgY2V0dGUgbGlnbmUgZGV1eCBmb2lzLiBjZXR0ZSBsaWduZSBkZXV4IGZvaXMuCgogIDUuIEFsbGV6IOAgbGEgTGXnb24gMi4zIHBvdXIgY29tcHJlbmRyZSBjZSBxdWkgc2UgcGFzc2UuCgoKfn5+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+CiAgICAgICAgICAgICBMZedvbiAyLjMgOiDAIFBST1BPUyBERVMgT1DJUkFURVVSUyBFVCBERVMgTU9VVkVNRU5UUwoKCiAgUGx1c2lldXJzIGNvbW1hbmRlcyBxdWkgY2hhbmdlbnQgbGUgdGV4dGUgc29udCBjb25zdGl0dellcyBkJ3VuIG9w6XJhdGV1cgogIGV0IGQndW4gbW91dmVtZW50LiBMZSBmb3JtYXQgcG91ciB1bmUgY29tbWFuZGUgZCdlZmZhY2VtZW50IGF2ZWMgbCdvcOlyYXRldXIKICBkICBkJ2VmZmFjZW1lbnQgZXN0IGxlIHN1aXZhbnQgOgoKICAgICAgICBkICAgbW91dmVtZW50CgogIE/5IDoKICAgIGQgICAgICAgICAtIGVzdCBsJ29w6XJhdGV1ciBkJ2VmZmFjZW1lbnQKICAgIG1vdXZlbWVudCAtIGVzdCBsZSBtb3V2ZW1lbnQgc3VyIGxlcXVlbCBhZ2l0IGwnb3DpcmF0ZXVyIChsaXN06XMKICAgICAgICAgICAgICAgIGNpLWRlc3NvdXMpCgogIFVuZSBjb3VydGUgbGlzdGUgZGUgbW91dmVtZW50cyA6CiAgICB3IC0ganVzcXUnYXUgZOlidXQgZHUgcHJvY2hhaW4gbW90LCBlbiBFWENMVUFOVCBzb24gcHJlbWllciBjYXJhY3TocmUuCiAgICBlIC0ganVzcXUn4CBsYSBmaW4gZHUgbW90IGNvdXJhbnQsIGVuIEVYQ0xVQU5UIHNvbiBkZXJuaWVyIGNhcmFjdOhyZS4KICAgICQgLSBqdXNxdSfgIGxhIGZpbiBkZSBsYSBsaWduZSwgZW4gSU5DTFVBTlQgc29uIGRlcm5pZXIgY2FyYWN06HJlLgoKICBBaW5zaSwgdGFwZXIgIGRlICB2YSBlZmZhY2VyIGRlcHVpcyBsZSBjdXJzZXVyIGp1c3F1J+AgbGEgZmluIGR1IG1vdC4KCk5PVEUgOiBMZSBzZXVsIGFwcHVpIGQndW4gbW91dmVtZW50IGVuIG1vZGUgTm9ybWFsLCBzYW5zIGNvbW1hbmRlLCBk6XBsYWNlIGxlCiAgICAgICBjdXJzZXVyIGNvbW1lIGluZGlxdekuCgoKfn5+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+CiAgICAgICAgICAgIExl529uIDIuNCA6IFVUSUxJU0VSIFVOIFFVQU5USUZJQ0FURVVSIEFWRUMgVU4gTU9VVkVNRU5UCgoKICAgICAgICoqIFRhcGVyIHVuIG5vbWJyZSBhdmFudCB1biBtb3V2ZW1lbnQgbGUgculw6HRlIGF1dGFudCBkZSBmb2lzLiAqKgoKICAxLiBE6XBsYWNleiBsZSBjdXJzZXVyIGF1IGTpYnV0IGRlIGxhIGxpZ25lIG1hcnF16WUgLS0tPiBjaS1kZXNzb3VzLgoKICAyLiBUYXBleiAgMncgIHBvdXIgZOlwbGFjZXIgbGUgY3Vyc2V1ciBkZSAyIG1vdHMgdmVycyBsJ2F2YW50LgoKICAzLiBUYXBleiAgM2UgIHBvdXIgZOlwbGFjZXIgbGUgY3Vyc2V1ciDgIGxhIGZpbiBkdSB0cm9pc2nobWUgbW90IHZlcnMKICAgICBsJ2F2YW50LgoKICA0LiBUYXBleiAgMCAgKHrpcm8pIHBvdXIgZOlwbGFjZXIgYXUgZOlidXQgZGUgbGEgbGlnbmUuCgogIDUuIFLpcOl0ZXogbGVzIOl0YXBlcyAyIGV0IDMgYXZlYyBkZXMgcXVhbnRpZmljYXRldXJzIGRpZmbpcmVudHMuCgotLS0+IENlY2kgZXN0IGp1c3RlIHVuZSBsaWduZSBhdmVjIGRlcyBtb3RzIG/5IHZvdXMgcG91dmV6IHZvdXMgZOlwbGFjZXIuCgogIDYuIETpcGxhY2V6LXZvdXMg4CBsYSBMZedvbiAyLjUuCgoKfn5+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+CiAgICAgICAgICAgIExl529uIDIuNSA6IFVUSUxJU0VSIFVOIFFVQU5USUZJQ0FURVVSIFBPVVIgRUZGQUNFUiBQTFVTCgoKICAgICAgICoqIFRhcGVyIHVuIG5vbWJyZSBhdmVjIHVuIG9w6XJhdGV1ciBsZSBy6XDodGUgYXV0YW50IGRlIGZvaXMuICoqCgogIE91dHJlIGxhIGNvbWJpbmFpc29uIGRlIGwnb3DpcmF0ZXVyIGQnZWZmYWNlbWVudCBhdmVjIHVuIGTpcGxhY2VtZW50CiAgbWVudGlvbm7pIGNpLWRlc3N1cywgdm91cyBwb3V2ZXogaW5z6XJlciB1biBub21icmUgKHF1YW50aWZpY2F0ZXVyKQogIHBvdXIgZWZmYWNlciBlbmNvcmUgcGx1cyA6CiAgICAgICBkICAgbm9tYnJlICAgZOlwbGFjZW1lbnQKCiAgMS4gROlwbGFjZXogbGUgY3Vyc2V1ciB2ZXJzIGxlIHByZW1pZXIgbW90IGVuIE1BSlVTQ1VMRVMgZGFucyBsYSBsaWduZQogICAgIG1hcnF16WUgLS0tPi4KCiAgMi4gVGFwZXogIGQydyAgcG91ciBlZmZhY2VyIGxlcyBkZXV4IG1vdHMgZW4gTUFKVVNDVUxFUy4KCiAgMy4gUulw6XRleiBsZXMg6XRhcGVzIDEgZXQgMiBhdmVjIGRlcyBxdWFudGlmaWNhdGV1cnMgZGlmZulyZW50cyBwb3VyCiAgICAgZWZmYWNlciBsZXMgbW90cyBzdWl2YW50cyBlbiBNQUpVU0NVTEVTIOAgbCdhaWRlIGQndW5lIGNvbW1hbmRlLgoKLS0tPiBDZXR0ZSBBQkMgREUgbGlnbmUgRkdISSBKSyBMTU4gT1AgZGUgbW90cyBlc3QgUSBSUyBUVVYgbmV0dG956WUuCgoKfn5+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+CiAgICAgICAgICAgICAgICAgICAgICAgTGXnb24gMi42IDogT1DJUkVaIFNVUiBERVMgTElHTkVTCgoKICAgICAgICAgICAgICAqKiBUYXBleiAgIGRkICAgcG91ciBlZmZhY2VyIHVuZSBsaWduZSBjb21wbOh0ZS4gKioKCiAgVnUgbGUgbm9tYnJlIGRlIGZvaXMgb/kgbCdvbiBlZmZhY2UgZGVzIGxpZ25lcyBjb21wbOh0ZXMsIGxlcyBjb25jZXB0ZXVycwogIGRlIFZpIG9udCBk6WNpZOkgcXUnaWwgc2VyYWl0IHBsdXMgZmFjaWxlIGRlIHRhcGVyIHNpbXBsZW1lbnQgZGV1eCAgZAogIHBvdXIgZWZmYWNlciB1bmUgbGlnbmUuCgogIDEuIFBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBzZWNvbmRlIGxpZ25lIGRlIGxhIHBocmFzZSBjaS1kZXNzb3VzLgogIDIuIFRhcGV6ICBkZCAgcG91ciBlZmZhY2VyIGxhIGxpZ25lLgogIDMuIE1haW50ZW5hbnQgYWxsZXog4CBsYSBxdWF0cmnobWUgbGlnbmUuCiAgNC4gVGFwZXogICAyZGQgICBwb3VyIGVmZmFjZXIgZGV1eCBsaWduZXMuCgotLS0+ICAxKSAgTGVzIHJvc2VzIHNvbnQgcm91Z2VzLAotLS0+ICAyKSAgTGEgYm91ZSBjJ2VzdCBkcvRsZSwKLS0tPiAgMykgIExlcyB2aW9sZXR0ZXMgc29udCBibGV1ZXMsCi0tLT4gIDQpICBKJ2FpIHVuZSB2b2l0dXJlLAotLS0+ICA1KSAgTGVzIGhvcmxvZ2VzIGRvbm5lbnQgbCdoZXVyZSwKLS0tPiAgNikgIExlIHN1Y3JlIGVzdCBkb3V4Ci0tLT4gIDcpICBUb3V0IGNvbW1lIHZvdXMuCgoKfn5+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+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZedvbiAyLjcgOiBMJ0FOTlVMQVRJT04KCgogICAgICAgICAgICAqKiBUYXBleiAgdSAgcG91ciBhbm51bGVyIGxlcyBkZXJuaehyZXMgY29tbWFuZGVzLiAqKgogICAgICAgICAgICAgICAqKiBUYXBleiAgVSAgcG91ciBy6WN1cOlyZXIgdG91dGUgdW5lIGxpZ25lLiAqKgoKICAxLiBE6XBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cyBldCBwbGFjZXotbGUgc3VyCiAgICAgbGEgcHJlbWnocmUgZXJyZXVyLgogIDIuIFRhcGV6ICB4ICBwb3VyIGVmZmFjZXIgbGUgcHJlbWllciBjYXJhY3TocmUgcmVkb25kYW50LgogIDMuIFB1aXMgdGFwZXogIHUgIHBvdXIgYW5udWxlciBsYSBkZXJuaehyZSBjb21tYW5kZSBleOljdXTpZS4KICA0LiBDZXR0ZSBmb2lzLCBjb3JyaWdleiB0b3V0ZXMgbGVzIGVycmV1cnMgZGUgbGEgbGlnbmUgYXZlYyBsYSBjb21tYW5kZSAgeCAuCiAgNS4gUHVpcyB0YXBleiB1biAgVSAgbWFqdXNjdWxlIHBvdXIgcmVtZXR0cmUgbGEgbGlnbmUgZGFucyBzb24g6XRhdCBpbml0aWFsLgogIDYuIFB1aXMgdGFwZXogIHUgIGRldXgtdHJvaXMgZm9pcyBwb3VyIGFubnVsZXIgbGUgIFUgIGV0IGxlcyBjb21tYW5kZXMKICAgICBwculj6WRlbnRlcy4KICA3LiBNYWludGVuYW50IHRhcGV6ICBDVFJMLVIgIChtYWludGVuZXogbGEgdG91Y2hlIENUUkwgZW5mb25j6WUgcGVuZGFudCBxdWUKICAgICB2b3VzIGFwcHV5ZXogUikgZGV1eC10cm9pcyBmb2lzIHBvdXIgcmVmYWlyZSBsZXMgY29tbWFuZGVzIChhbm51bGVyCiAgICAgbGVzIGFubnVsYXRpb25zKS4KCi0tLT4gQ29vcnJpZ2V6IGxlcyBlcnJldXJzIHN1dXIgY2NldHRlIGxpZ25lIGV0IHJlZW1ldHRlei1sZXMgYXZ2ZWMgJ2FubnVsZXInLgoKICA4LiBDZSBzb250IGRlcyBjb21tYW5kZXMgdHLocyB1dGlsZXMuIE1haW50ZW5hbnQsIGFsbGV6IGF1IHLpc3Vt6SBkZSBsYQogICAgIExl529uIDIuCgoKfn5+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+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUslTVU3JIERFIExBIExFx09OIDIKCgogIDEuIFBvdXIgZWZmYWNlciBkdSBjdXJzZXVyIGp1c3F1J2F1IG1vdCBzdWl2YW50IHRhcGV6IDogICAgICAgICBkdwoKICAyLiBQb3VyIGVmZmFjZXIgZHUgY3Vyc2V1ciBqdXNxdSfgIGxhIGZpbiBkJ3VuZSBsaWduZSB0YXBleiA6ICAgZCQKCiAgMy4gUG91ciBlZmZhY2VyIHRvdXRlIHVuZSBsaWduZSB0YXBleiA6ICAgICAgICAgICAgICAgICAgICAgICAgIGRkCgogIDQuIFBvdXIgculw6XRlciB1biBk6XBsYWNlbWVudCBham91dGV6IHVuIHF1YW50aWZpY2F0ZXVyIDogICAgICAydwoKICA1LiBMZSBmb3JtYXQgZCd1bmUgY29tbWFuZGUgZGUgY2hhbmdlbWVudCBlc3QgOgoKICAgICAgIG9w6XJhdGV1ciAgIFtub21icmVdICAgZOlwbGFjZW1lbnQKCiAgICAgT/kgOgogICAgICAgb3DpcmF0ZXVyICAgLSBlc3QgY2UgcXUnaWwgZmF1dCBmYWlyZSwgY29tbWUgIGQgIHBvdXIgZWZmYWNlci4KICAgICAgIFtub21icmVdICAgIC0gdW4gcXVhbnRpZmljYXRldXIgb3B0aW9ubmVsIHBvdXIgculw6XRlciBsZSBk6XBsYWNlbWVudC4KICAgICAgIGTpcGxhY2VtZW50IC0gZOlwbGFjZSBsZSBsb25nIGR1IHRleHRlIOAgb3DpcmVyLCB0ZWwgcXVlICB3ICAobW90KSwKICAgICAgICAgICAgICAgICAgICAgJCAoanVzcXUn4CBsYSBmaW4gZGUgbGlnbmUpLCBldGMuCgogIDYuIFBvdXIgc2UgZOlwbGFjZXIgYXUgZOlidXQgZGUgbGlnbmUsIHV0aWxpc2V6IHVuIHrpcm8gOiAgMAoKICA1LiBQb3VyIGFubnVsZXIgZGVzIGFjdGlvbnMgcHLpY+lkZW50ZXMsIHRhcGV6IDogICAgICAgICAgICB1ICh1IG1pbnVzY3VsZSkKICAgICBQb3VyIGFubnVsZXIgdG91cyBsZXMgY2hhbmdlbWVudHMgc3VyIHVuZSBsaWduZSB0YXBleiA6ICBVIChVIG1hanVzY3VsZSkKICAgICBQb3VyIGFubnVsZXIgbCdhbm51bGF0aW9uIHRhcGV6IDogICAgICAgICAgICAgICAgICAgICAgICBDVFJMLVIKCgp+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+fn4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZedvbiAzLjEgOiBMRSBDT0xMQUdFCgoKICAgKiogVGFwZXogIHAgIHBvdXIgcGxhY2VyIGFwcuhzIGxlIGN1cnNldXIgY2UgcXVpIHZpZW50IGQn6nRyZSBlZmZhY+kuICoqCgogIDEuIFBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBwcmVtaehyZSBsaWduZSBjaS1kZXNzb3VzIG1hcnF16WUgLS0tPi4KCiAgMi4gVGFwZXogIGRkICBwb3VyIGVmZmFjZXIgbGEgbGlnbmUgZXQgbGEgcGxhY2VyIGRhbnMgdW4gcmVnaXN0cmUgZGUgVmltLgoKICAzLiBE6XBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBsaWduZSBjKSBhdS1kZXNzdXMgb/kgdm91cyB2b3VsZXogcmVtZXR0cmUgbGEKICAgICBsaWduZSBlZmZhY+llLgoKICA0LiBFbiBtb2RlIE5vcm1hbCwgdGFwZXogICBwICAgcG91ciByZW1ldHRyZSBsYSBsaWduZSBlbiBkZXNzb3VzIGR1IGN1cnNldXIuCgogIDUuIFLpcOl0ZXogbGVzIOl0YXBlcyAyIOAgNCBwb3VyIG1ldHRyZSB0b3V0ZXMgbGVzIGxpZ25lcyBkYW5zIGxlIGJvbiBvcmRyZS4KCi0tLT4gZCkgRXQgdm91cywgcXUnYXBwcmVuZXotdm91cyA/Ci0tLT4gYikgTGVzIHZpb2xldHRlcyBzb250IGJsZXVlcywKLS0tPiBjKSBMJ2ludGVsbGlnZW5jZSBzJ2FwcHJlbmQsCi0tLT4gYSkgTGVzIHJvc2VzIHNvbnQgcm91Z2VzLAoKCn5+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+fgogICAgICAgICAgICAgICAgICAgIExl529uIDMuMiA6IExBIENPTU1BTkRFIERFIFJFTVBMQUNFTUVOVAoKCiAgICAgKiogVGFwZXogIHJ4ICBwb3VyIHJlbXBsYWNlciB1biBjYXJhY3TocmUgc291cyBsZSBjdXJzZXVyIHBhciAgeCAuICoqCgogIDEuIETpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIHByZW1p6HJlIGxpZ25lIG1hcnF16WUgLS0tPiBjaS1kZXNzb3VzLgoKICAyLiBQbGFjZXogbGUgY3Vyc2V1ciBkZSBtYW5p6HJlIOAgY2UgcXUnaWwgc3VycGxvbWJlIGxhIHByZW1p6HJlIGVycmV1ci4KCiAgMy4gVGFwZXogIHIgIHN1aXZpIGR1IGNhcmFjdOhyZSBxdWkgZG9pdCBjb3JyaWdlciBsJ2VycmV1ci4KCiAgNC4gUulw6XRleiBsZXMg6XRhcGVzIDIgZXQgMyBqdXNxdSfgIGNlIHF1ZSBsYSBwcmVtaehyZSBsaWduZSBzb2l0IOlnYWxlCiAgICAg4CBsYSBzZWNvbmRlLgoKLS0tPiAgUXVhbmQgY2V0dGUgbGlnbmUgYSDpdOkgc2F1dmllLCBxdWVscXUndW4gYSBsYWl0IGRlcyBmYXVuZXMgZGUgZnJhcHBlICEKLS0tPiAgUXVhbmQgY2V0dGUgbGlnbmUgYSDpdOkgc2Fpc2llLCBxdWVscXUndW4gYSBmYWl0IGRlcyBmYXV0ZXMgZGUgZnJhcHBlICEKCiAgNS4gTWFpbnRlbmFudCwgYWxsZXog4CBsYSBMZedvbiAzLjMuCgpOT1RFIDogTidvdWJsaWV6IHBhcyBxdWUgdm91cyBkZXZyaWV6IGFwcHJlbmRyZSBwYXIgbGEgcHJhdGlxdWUsIHBhcyBwYXIKICAgICAgIG3pbW9yaXNhdGlvbi4KCgp+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+fn4KICAgICAgICAgICAgICAgICAgICAgTGXnb24gMy4zIDogTCdPUMlSQVRFVVIgREUgQ0hBTkdFTUVOVAoKCiAgICAgICAgICAgICoqIFBvdXIgY2hhbmdlciBqdXNxdSfgIGxhIGZpbiBkJ3VuIG1vdCwgdGFwZXogIGNlIC4qKgoKICAxLiBE6XBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBwcmVtaehyZSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KCiAgMi4gUGxhY2V6IGxlIGN1cnNldXIgc3VyIGxlICB1ICBkZSBsdWhrby4KCiAgMy4gVGFwZXogIGNlICBldCBjb3JyaWdleiBsZSBtb3QgKGRhbnMgbm90cmUgY2FzLCB0YXBleiAgJ2lnbmUnLikKCiAgNC4gQXBwdXlleiA8yWNoYXA+IGV0IHBsYWNlei12b3VzIHN1ciBsZSBwcm9jaGFpbiBjYXJhY3TocmUgcXVpIGRvaXQKICAgICDqdHJlIGNoYW5n6S4KCiAgNS4gUulw6XRleiBsZXMg6XRhcGVzIDMgZXQgNCBqdXNxdSfgIGNlIHF1ZSBsYSBwcmVtaehyZSBwaHJhc2Ugc29pdAogICAgIGlkZW50aXF1ZSDgIGxhIHNlY29uZGUuCgotLS0+IENldHRlIGx1aGtvIGNvbnRpZW50IHF1ZWxxdWVzIG15cWEgcXVpIG9udCByaWNuZSBkJ+p0cmUgY2hhbnR1ZmlwLgotLS0+IENldHRlIGxpZ25lIGNvbnRpZW50IHF1ZWxxdWVzIG1vdHMgcXVpIG9udCBiZXNvaW4gZCfqdHJlIGNoYW5n6XMuCgpOb3RleiBxdWUgIGNlICBlZmZhY2UgbGUgbW90IGV0IHZvdXMgcGxhY2UgZW5zdWl0ZSBlbiBtb2RlIEluc2VydGlvbi4KCgp+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+fn4KICAgICAgICAgICAgICAgICAgICBMZedvbiAzLjQgOiBQTFVTIERFIENIQU5HRU1FTlRTIEFWRUMgYwoKCiAgICAqKiBMJ29w6XJhdGV1ciBkZSBjaGFuZ2VtZW50IGZvbmN0aW9ubmUgYXZlYyBsZXMgbeptZXMgZOlwbGFjZW1lbnRzCiAgICAgICBxdWUgbCdlZmZhY2VtZW50LiAqKgoKICAxLiBMJ29w6XJhdGV1ciBkZSBjaGFuZ2VtZW50IGZvbmN0aW9ubmUgZGUgbGEgbeptZSBtYW5p6HJlIHF1ZQogICAgIGwnZWZmYWNlbWVudC4gTGUgZm9ybWF0IGVzdCA6CgogICAgICAgICBjICAgW25vbWJyZV0gICBk6XBsYWNlbWVudAoKICAyLiBMZXMgZOlwbGFjZW1lbnRzIHNvbnQgaWRlbnRpcXVlcyA6ICB3IChtb3QpIGV0ICAkIChmaW4gZGUgbGlnbmUpLgoKICAzLiBE6XBsYWNlei12b3VzIHN1ciBsYSBwcmVtaehyZSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KCiAgNC4gUGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIHByZW1p6HJlIGVycmV1ci4KCiAgNS4gVGFwZXogIGMkICBldCB0YXBleiBsZSByZXN0ZSBkZSBsYSBsaWduZSBhZmluIHF1J2VsbGUgc29pdCBpZGVudGlxdWUKICAgICDgIGxhIHNlY29uZGUgbGlnbmUsIHB1aXMgdGFwZXogPMljaGFwPi4KCi0tLT4gTGEgZmluIGRlIGNldHRlIGxpZ25lIGRvaXQg6nRyZSByZW5kdWUgaWRlbnRpcXVlIOAgbGEgc2Vjb25kZS4KLS0tPiBMYSBmaW4gZGUgY2V0dGUgbGlnbmUgZG9pdCDqdHJlIGNvcnJpZ+llIGF2ZWMgbGEgY29tbWFuZGUgIGMkIC4KCk5PVEUgOiAgVm91cyBwb3V2ZXogdXRpbGlzZXIgbGEgdG91Y2hlIFJldG91ciBBcnJp6HJlIHBvdXIgY29ycmlnZXIgbGVzCiAgICAgICAgZXJyZXVycyBsb3JzcXVlIHZvdXMgdGFwZXouCgoKfn5+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+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUslTVU3JIERFIExBIExFx09OIDMKCgogIDEuIFBvdXIgcmVtZXR0cmUgbGUgdGV4dGUgcXVpIGEgZOlq4CDpdOkgZWZmYWPpLCB0YXBleiAgcCAuIENlbGEgUGxhY2UgbGUKICAgICB0ZXh0ZSBlZmZhY+kgQVBSyFMgbGUgY3Vyc2V1ciAoc2kgdW5lIGxpZ25lIGNvbXBs6HRlIGEg6XTpIGVmZmFj6WUsIGVsbGUKICAgICBzZXJhIHBsYWPpZSBzb3VzIGxhIGxpZ25lIGR1IGN1cnNldXIpLgoKICAyLiBQb3VyIHJlbXBsYWNlciBsZSBjYXJhY3TocmUgc291cyBsZSBjdXJzZXVyLCB0YXBleiAgciAgc3VpdmkgZHUgY2FyYWN06HJlCiAgICAgcXVpIHJlbXBsYWNlcmEgbCdvcmlnaW5hbC4KCiAgMy4gTCdvcOlyYXRldXIgZGUgY2hhbmdlbWVudCB2b3VzIHBlcm1ldCBkZSBjaGFuZ2VyIGRlcHVpcyBsYSBwb3NpdGlvbiBkdQogICAgIGN1cnNldXIganVzcXUnb/kgbGUgZOlwbGFjZW1lbnQgdm91cyBhbehuZS4gUGFyIGV4ZW1wbGUsIHRhcGV6ICBjZQogICAgIHBvdXIgY2hhbmdlciBkdSBjdXJzZXVyIGp1c3F1J+AgbGEgZmluIGR1IG1vdCwgIGMkICBwb3VyIGNoYW5nZXIganVzcXUn4AogICAgIGxhIGZpbiBkJ3VuZSBsaWduZS4KCiAgNC4gTGUgZm9ybWF0IHBvdXIgbGUgY2hhbmdlbWVudCBlc3QgOgoKICAgICAgICAgYyAgIFtub21icmVdICAgZOlwbGFjZW1lbnQKClBhc3NleiBtYWludGVuYW50IOAgbGEgbGXnb24gc3VpdmFudGUuCgoKfn5+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+CiAgICAgICAgICAgICAgIExl529uIDQuMSA6IFBPU0lUSU9OIERVIENVUlNFVVIgRVQgyVRBVCBEVSBGSUNISUVSCgoKICAqKiBUYXBleiBDVFJMLUcgcG91ciBhZmZpY2hlciB2b3RyZSBwb3NpdGlvbiBkYW5zIGxlIGZpY2hpZXIgZXQgc29uIOl0YXQuCiAgICAgVGFwZXogIEcgIHBvdXIgdm91cyByZW5kcmUg4CB1bmUgbGlnbmUgZG9ubullIGR1IGZpY2hpZXIuICoqCgpOT1RFIDogTGlzZXogdG91dGUgY2V0dGUgbGXnb24gYXZhbnQgZCdlZmZlY3R1ZXIgbCd1bmUgZGVzIOl0YXBlcyAhIQoKICAxLiBNYWludGVuZXogZW5mb25j6WUgbGEgdG91Y2hlIENUUkwgZXQgYXBwdXlleiBzdXIgIGcgLiBPbiBhcHBlbGxlIGNlbGEKICAgICBDVFJMLUcuIFVuZSBsaWduZSBkJ+l0YXQgdmEgYXBwYXJh7nRyZSBlbiBiYXMgZGUgbCfpY3JhbiBhdmVjIGxlIG5vbQogICAgIGR1IGZpY2hpZXIgZXQgbGUgbnVt6XJvIGRlIGxhIGxpZ25lIG/5IHZvdXMg6nRlcy4gTm90ZXogY2UgbnVt6XJvLCBpbAogICAgIHNlcnZpcmEgbG9ycyBkZSBsJ+l0YXBlIDMuCgpOT1RFIDogVm91cyBwb3V2ZXogcGV1dC3qdHJlIHZvaXIgbGUgY3Vyc2V1ciBlbiBiYXMg4CBkcm9pdGUgZGUgbCfpY3Jhbi4KICAgICAgIENlY2kgYXJyaXZlIHF1YW5kIGwnb3B0aW9uICdydWxlcicgZXN0IGFjdGl26WUgKHZvaXIgIDpoZWxwICdydWxlcicpCgogIDIuIFRhcGV6ICBHICAgcG91ciB2b3VzIGTpcGxhY2VyIOAgbGEgZmluIGR1IGZpY2hpZXIuCiAgICAgVGFwZXogIGdnICBwb3VyIHZvdXMgZOlwbGFjZXIgYXUgZOlidXQgZHUgZmljaGllci4KCiAgMy4gVGFwZXogbGUgbnVt6XJvIGRlIGxhIGxpZ25lIG/5IHZvdXMg6XRpZXogc3VpdmkgZGUgICBHIC4gQ2VsYSB2b3VzCiAgICAgcmFt6G5lcmEg4CBsYSBsaWduZSBv+SB2b3VzIOl0aWV6IGF1IGTpcGFydCBxdWFuZCB2b3VzIGF2aWV6IGFwcHV56QogICAgIENUUkwtRy4KCiAgNC4gU2kgdm91cyB2b3VzIHNlbnRleiBwcup0IOAgZmFpcmUgY2VjaSwgZWZmZWN0dWV6IGxlcyDpdGFwZXMgMSDgIDMuCgoKfn5+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+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZedvbiA0LjIgOiBMQSBSRUNIRVJDSEUKCgogICAgICAgICAgKiogVGFwZXogIC8gIHN1aXZpIGQndW4gdGV4dGUgcG91ciByZWNoZXJjaGVyIGNlIHRleHRlLiAqKgoKICAxLiBUYXBleiBsZSBjYXJhY3TocmUgIC8gIGVuIG1vZGUgTm9ybWFsLiBOb3RleiBxdWUgY2VsdWktY2kgZXQgbGUgY3Vyc2V1cgogICAgIGFwcGFyYWlzc2VudCBlbiBiYXMgZGUgbCfpY3JhbiwgY29tbWUgbG9yc3F1ZSBsJ29uIHV0aWxpc2UgIDogLgoKICAyLiBQdWlzIHRhcGV6ICdlcnJyZXV1cicgPEVudHLpZT4uIEMnZXN0IGxlIG1vdCBxdWUgdm91cyB2b3VsZXogcmVjaGVyY2hlci4KCiAgMy4gUG91ciByZWNoZXJjaGVyIOAgbm91dmVhdSBsZSBt6m1lIHRleHRlLCB0YXBleiBzaW1wbGVtZW50ICBuIC4KICAgICBQb3VyIHJlY2hlcmNoZXIgbGUgbeptZSB0ZXh0ZSBkYW5zIGxhIGRpcmVjdGlvbiBvcHBvc+llLCB0YXBleiAgTiAuCgogIDQuIFBvdXIgcmVjaGVyY2hlciB1bmUgcGhyYXNlIGRhbnMgbGEgZGlyZWN0aW9uIG9wcG9z6WUsIHV0aWxpc2V6ICA/CiAgICAgYXUgbGlldSBkZSAgLyAuCgotLS0+IGVycmV1ciBuZSBzJ+ljcml0IHBhcyAiZXJycmV1dXIiIDsgZXJycmV1dXIgZXN0IHVuZSBlcnJldXIuCgpOT1RFIDogUXVhbmQgbGEgcmVjaGVyY2hlIGF0dGVpbnQgbGEgZmluIGR1IGZpY2hpZXIsIGVsbGUgcmVwcmVuZCBhdSBk6WJ1dAogICAgICAgc2F1ZiBzaSBsJ29wdGlvbiAnd3JhcHNjYW4nIGVzdCBk6XNhY3RpdullLgoKCn5+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+fgogICAgICAgICAgICBMZedvbiA0LjMgOiBSRUNIRVJDSEUgREVTIFBBUkVOVEjIU0VTIENPUlJFU1BPTkRBTlRFUwoKCiAgICAgICAgICAgKiogVGFwZXogICUgIHBvdXIgdHJvdXZlciBkZXMgKSwgXSBvdSB9IGNvcnJlc3BvbmRhbnRzLiAqKgoKICAxLiBQbGFjZXogbGUgY3Vyc2V1ciBzdXIgbCd1biBkZXMgKCwgWyBvdSB7IGRlIGxhIGxpZ25lIG1hcnF16WUgLS0tPgogICAgIGNpLWRlc3NvdXMuCgogIDIuIFB1aXMgdGFwZXogbGUgY2FyYWN06HJlICAlIC4KCiAgMy4gTGUgY3Vyc2V1ciBzZSBk6XBsYWNlcmEgc3VyIGxhIHBhcmVudGjoc2Ugb3V0IGNyb2NoZXQgY29ycmVzcG9uZGFudC4KCiAgNC4gVGFwZXogICUgIHBvdXIgcmVwbGFjZXIgbGUgY3Vyc2V1ciBzdXIgbGEgcGFyZW50aOhzZSBvdSBjcm9jaGV0CiAgICAgY29ycmVzcG9uZGFudC4KCiAgNS4gROlwbGFjZXogbGUgY3Vyc2V1ciBzdXIgdW4gYXV0cmUgKCwpLFssXSx7IG91IH0gZXQgcmVnYXJkZXogY2UgcXVlCiAgICAgZmFpdCAgJSAuCgotLS0+IFZvaWNpICggdW5lIGxpZ25lIGRlIHRlc3QgY29udGVuYW50IGRlcyAoLCBkZXMgWyBdIGV0IGRlcyB7IH0gKSkuCgpOT1RFIDogQ2V0dGUgZm9uY3Rpb25uYWxpdOkgZXN0IHRy6HMgdXRpbGUgbG9ycyBkdSBk6WJvZ2FnZSBkJ3VuIHByb2dyYW1tZSBxdWkKICAgICAgIGNvbnRpZW50IGRlcyBwYXJlbnRo6HNlcyBk6XPpcXVpbGlicullcyAhCgoKfn5+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+CiAgICAgICAgICAgICAgICAgICAgTGXnb24gNC40IDogTEEgQ09NTUFOREUgREUgU1VCU1RJVFVUSU9OCgoKICAgICoqIFRhcGV6ICA6cy9hbmNpZW4vbm91dmVhdS9nICBwb3VyIHJlbXBsYWNlciAnYW5jaWVuJyBwYXIgJ25vdXZlYXUnLiAqKgoKICAxLiBE6XBsYWNleiBsZSBjdXJzZXVyIHN1ciBsYSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KCiAgMi4gVGFwZXogIDpzL2xlZS9sZSA8RW50cullPiAuIE5vdGV6IHF1ZSBjZXR0ZSBjb21tYW5kZSBjaGFuZ2Ugc2V1bGVtZW50IGxhCiAgICAgcHJlbWnocmUgb2NjdXJyZW5jZSBkZSAibGVlIiBkYW5zIGxhIGxpZ25lLgoKICAzLiBQdWlzIHRhcGV6ICA6cy9sZWUvbGUvZyAuIEwnYWpvdXQgZHUgZHJhcGVhdSAgZyAgb3Jkb25uZSBkZSBmYWlyZSB1bmUKICAgICBzdWJzdGl0dXRpb24gZ2xvYmFsZSBzdXIgbGEgbGlnbmUsIGV0IGNoYW5nZSB0b3V0ZXMgbGVzIG9jY3VycmVuY2VzIGRlCiAgICAgImxlZSIgc3VyIGxhIGxpZ25lLgoKLS0tPiBsZWUgbWVpbGxldXIgbW9tZW50IHBvdXIgcmVnYXJkZXIgbGVlcyBmbGV1cnMgZXN0IHBlbmRhbnQgbGVlIHByaW50ZW1wcy4KCiAgNC4gUG91ciBjaGFuZ2VyIHRvdXRlcyBsZXMgb2NjdXJyZW5jZXMgZCd1biB0ZXh0ZSwgZW50cmUgZGV1eCBsaWduZXMsCiAgICAgdGFwZXogIDojLCNzL2FuY2llbi9ub3V2ZWF1L2cgIG/5ICMsIyBzb250IGxlcyBudW3pcm9zIGRlIGxpZ25lcyBkZSBsYQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFnZSBv+SBsYSBzdWJzdGl0dXRpb24gZG9pdCDqdHJlIGZhaXRlLgogICAgIFRhcGV6ICA6JXMvYW5jaWVuL25vdXZlYXUvZyAgICBwb3VyIGNoYW5nZXIgdG91dGVzIGxlcyBvY2N1cnJlbmNlcyBkYW5zCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdXQgbGUgZmljaGllci4KICAgICBUYXBleiAgOiVzL2FuY2llbi9ub3V2ZWF1L2djICAgcG91ciB0cm91dmVyIHRvdXRlcyBsZXMgb2NjdXJyZW5jZXMgZGFucwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3V0IGxlIGZpY2hpZXIgYXZlYyB1bmUgaW52aXRlIHBvdXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlybWVyIG91IGluZmlybWVyIGNoYXF1ZSBzdWJzdGl0dXRpb24uCgoKCn5+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+fgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIFLJU1VNySBERSBMQSBMRcdPTiA0CgoKICAxLiBDVFJMLUcgICAgICAgYWZmaWNoZSBsYSBwb3NpdGlvbiBkYW5zIGxlIGZpY2hpZXIgZXQgbCfpdGF0IGRlIGNlbHVpLWNpLgogICAgICAgICAgICAgICBHICBk6XBsYWNlIOAgbGEgZmluIGR1IGZpY2hpZXIuCiAgICAgbm9tYnJlICAgIEcgIGTpcGxhY2UgYXUgbnVt6XJvIGRlIGxpZ25lLgogICAgICAgICAgICAgIGdnICBk6XBsYWNlIOAgbGEgcHJlbWnocmUgbGlnbmUuCgogIDIuIFRhcGVyICAvICBzdWl2aSBkJ3VuIHRleHRlIHJlY2hlcmNoZSBjZSB0ZXh0ZSB2ZXJzIGwnQVZBTlQuCiAgICAgVGFwZXIgID8gIHN1aXZpIGQndW4gdGV4dGUgcmVjaGVyY2hlIGNlIHRleHRlIHZlcnMgbCdBUlJJyFJFLgogICAgIEFwcuhzIHVuZSByZWNoZXJjaGUgdGFwZXogIG4gIHBvdXIgdHJvdXZlciBsJ29jY3VycmVuY2Ugc3VpdmFudGUgZGFucyBsYQogICAgIG3qbWUgZGlyZWN0aW9uIG91ICBNYWotTiAgcG91ciByZWNoZXJjaGVyIGRhbnMgbGEgZGlyZWN0aW9uIG9wcG9z6WUuCgogIDMuIFRhcGVyICAlICBsb3JzcXVlIGxlIGN1cnNldXIgZXN0IHN1ciAgKCwgKSwgWywgXSwgeyBvdSB9ICBk6XBsYWNlCiAgICAgY2VsdWktY2kgc3VyIGxlIGNhcmFjdOhyZSBjb3JyZXNwb25kYW50LgoKICA0LiBQb3VyIHJlbXBsYWNlciBsZSBwcmVtaWVyIGFhIHBhciBiYiBzdXIgdW5lIGxpZ25lIHRhcGV6ICAgICA6cy9hYS9iYgogICAgIFBvdXIgcmVtcGxhY2VyIHRvdXMgbGVzIGFhIHBhciBiYiBzdXIgdW5lIGxpZ25lIHRhcGV6ICAgICAgIDpzL2FhL2JiL2cKICAgICBQb3VyIHJlbXBsYWNlciBkdSB0ZXh0ZSBlbnRyZSBkZXV4IG51belyb3MgZGUgbGlnbmUgdGFwZXogICA6Iywjcy9hYS9iYi9nCiAgICAgUG91ciByZW1wbGFjZXIgdG91dGVzIGxlcyBvY2N1cnJlbmNlcyBkYW5zIGxlIGZpY2hpZXIgdGFwZXogOiVzL2FhL2JiL2cKICAgICBQb3VyIGRlbWFuZGVyIHVuZSBjb25maXJtYXRpb24g4CBjaGFxdWUgZm9pcyBham91dGV6ICdjJyAgICA6JXMvYWEvYmIvZ2MKCgp+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+fn4KICAgICAgICAgICAgICBMZedvbiA1LjEgOiBDT01NRU5UIEVYyUNVVEVSIFVORSBDT01NQU5ERSBFWFRFUk5FCgoKICoqIFRhcGV6ICA6ISAgc3VpdmkgZCd1bmUgY29tbWFuZGUgZXh0ZXJuZSBwb3VyIGV46WN1dGVyIGNldHRlIGNvbW1hbmRlLiAqKgoKICAxLiBUYXBleiBsZSAgOiAgZmFtaWxpZXIgcG91ciBtZXR0cmUgbGUgY3Vyc2V1ciBlbiBiYXMgZGUgbCfpY3Jhbi4gQ2VsYSB2b3VzCiAgICAgcGVybWV0IGRlIHNhaXNpciB1bmUgY29tbWFuZGUuCgogIDIuIFB1aXMgdGFwZXogdW4gICEgIChwb2ludCBkJ2V4Y2xhbWF0aW9uKS4gQ2VsYSB2b3VzIHBlcm1ldCBkJ2V46WN1dGVyCiAgICAgbidpbXBvcnRlIHF1ZWxsZSBjb21tYW5kZSB2YWxpZGUgcG91ciB2b3RyZSBpbnRlcnBy6XRldXIgKHNoZWxsKS4KCiAgMy4gUGFyIGV4ZW1wbGUsIHRhcGV6ICBscyAgYXBy6HMgbGUgICEgIGV0IGFwcHV5ZXogPEVudHLpZT4uIENlY2kgYWZmaWNoZXJhCiAgICAgbGEgbGlzdGUgZGVzIGZpY2hpZXJzIGR1IHLpcGVydG9pcmUgY291cmFudCwgY29tbWUgc2kgdm91cyBhdmlleiB0YXDpIGxhCiAgICAgY29tbWFuZGUg4CBsJ2ludml0ZSBkdSBzaGVsbC4gVXRpbGlzZXogIDohZGlyICBzaSAgOiFscyAgbmUgbWFyY2hlIHBhcy4KCk5PVEUgOiAgSWwgZXN0IHBvc3NpYmxlIGQnZXjpY3V0ZXIgbidpbXBvcnRlIHF1ZWxsZSBjb21tYW5kZSBleHRlcm5lIGRlIGNldHRlCiAgICAgICAgbWFuaehyZSwgYXZlYyBvdSBzYW5zIGFyZ3VtZW50LgoKTk9URSA6ICBUb3V0ZXMgbGVzIGNvbW1hbmRlcyAgOiAgZG9pdmVudCBmaW5pciBwYXIgbGEgZnJhcHBlIGRlIDxFbnRy6WU+LgogICAgICAgIMAgcGFydGlyIGRlIG1haW50ZW5hbnQsIG5vdXMgbmUgbGUgbWVudGlvbm5lcm9ucyBwbHVzLgoKCn5+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+fgogICAgICAgICBMZedvbiA1LjIgOiBQTFVTIERFIETJVEFJTFMgU1VSIEwnRU5SRUdJU1RSRU1FTlQgREUgRklDSElFUlMKCgogKiogUG91ciBlbnJlZ2lzdHJlciBsZXMgY2hhbmdlbWVudHMgZmFpdHMgYXUgdGV4dGUsIHRhcGV6ICA6dyBGSUNISUVSIC4gKioKCiAgMS4gVGFwZXogIDohZGlyICBvdSAgOiFscyAgcG91ciBhdm9pciBsYSBsaXN0ZSBkZXMgZmljaGllcnMgZGFucyBsZQogICAgIHLpcGVydG9pcmUgY291cmFudC4gVm91cyBzYXZleiBk6WrgIHF1J2lsIGZhdXQgYXBwdXllciA8RW50cullPiBhcHLocwogICAgIGNlbGEuCgogIDIuIENob2lzaXNzZXogdW4gbm9tIGRlIGZpY2hpZXIgcXVpIG4nZXhpc3RlIHBhcyBlbmNvcmUsIHBhciBleGVtcGxlIFRFU1QuCgogIDMuIFB1aXMgdGFwZXogIDp3IFRFU1QgIChv+SBURVNUIGVzdCBsZSBub20gcXVlIHZvdXMgYXZleiBjaG9pc2kpLgoKICA0LiBDZWxhIGVucmVnaXN0cmUgdG91dCBsZSBmaWNoaWVyIChUdXRvcmllbCBWaW0pIHNvdXMgbGUgbm9tIFRFU1QuCiAgICAgUG91ciBsZSB26XJpZmllciwgdGFwZXogIDohZGlyICBvdSAgOiFscyAgZGUgbm91dmVhdSBwb3VyIHJldmlzdWFsaXNlcgogICAgIHZvdHJlIHLpcGVydG9pcmUuCgpOT1RFIDogU2kgdm91cyBxdWl0dGV6IFZpbSBldCBsZSByZWTpbWFycmV6IGRlIG5vdXZlYXUgYXZlYyBsZSBmaWNoaWVyIFRFU1QsCiAgICAgICBjZWx1aS1jaSBzZXJhIHVuZSBjb3BpZSBleGFjdGUgZGUgY2UgY291cnMgYXUgbW9tZW50IG/5IHZvdXMgbCdhdmV6CiAgICAgICBlbnJlZ2lzdHLpLgoKICA1LiBNYWludGVuYW50LCBlZmZhY2V6IGxlIGZpY2hpZXIgZW4gdGFwYW50IChNUy1ET1MpIDogICA6IWRlbCBURVNUCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdSAoVW5peCkgOiAgICAgOiFybSBURVNUCgoKfn5+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+CiAgICAgICAgICAgICAgICAgIExl529uIDUuMyA6IFPJTEVDVElPTiBEVSBURVhURSDAIEVOUkVHSVNUUkVSCgoKICAgICAgICAgICAgICAgICAgKiogUG91ciBlbnJlZ2lzdHJlciB1bmUgcG9ydGlvbiBkdSBmaWNoaWVyLAogICAgICAgICAgICAgICAgICAgICAgdGFwZXogOiAgIHYgIGTpcGxhY2VtZW50ICA6dyBGSUNISUVSICAqKgoKICAxLiBE6XBsYWNleiBsZSBjdXJzZXVyIHN1ciBjZXR0ZSBsaWduZS4KCiAgMi4gQXBwdXlleiAgdiAgZXQgZOlwbGFjZXogbGUgY3Vyc2V1ciB2ZXJzIGxhIGNpbnF1aehtZSBsaWduZSBwbHVzIGJhcy4KICAgICBSZW1hcnF1ZXogcXVlIGxlIHRleHRlIGVzdCBlbiBzdXJicmlsbGFuY2UuCgogIDMuIEFwcHV5ZXogIDogIC4gRW4gYmFzIGRlIGwn6WNyYW4gIDonPCwnPiB2YSBhcHBhcmHudHJlLgoKICA0LiBUYXBleiAgIHcgVEVTVCAgLCBv+SBURVNUIGVzdCB1biBub20gZGUgZmljaGllciBxdWkgbidleGlzdGUgcGFzLgogICAgIFbpcmlmaWV6IHF1ZSB2b3VzIHZveWV6ICA6JzwsJz53IFRFU1QgIGF2YW50IGRlIGQnYXBwdXllciBzdXIgPEVudHLpZT4uCgogIDUuIFZpbSB2YSBlbnJlZ2lzdHJlciBsZXMgbGlnbmVzIHPpbGVjdGlvbm7pZXMgZGFucyBsZSBmaWNoaWVyIFRFU1QuCiAgICAgVXRpbGlzZXogIDohZGlyICBvdSAgOiFscyBwb3VyIGxlIHZvaXIuIE5lIGwnZWZmYWNleiBwYXMgZW5jb3JlICEKICAgICBOb3VzIGFsbG9ucyBsJ3V0aWxpc2VyIGRhbnMgbGEgbGXnb24gc3VpdmFudGUuCgpOT1RFIDogTCdhcHB1aSBkZSAgdiAgZOltYXJyZSBsYSBz6WxlY3Rpb24gVmlzdWVsbGUuIFZvdXMgcG91dmV6IGTpcGxhY2VyIGxlCiAgICAgICBjdXJzZXVyIHBvdXIgYWdyYW5kaXIgb3Ugcul0culjaXIgbGEgc+lsZWN0aW9uLiBQdWlzIHZvdXMgcG91dmV6CiAgICAgICB1dGlsaXNlciB1biBvcOlyYXRldXIgcG91ciBmYWlyZSBxdWVscXVlIGNob3NlIHN1ciBsZSB0ZXh0ZS4gUGFyCiAgICAgICBleGVtcGxlLCAgZCAgZWZmYWNlIGxlIHRleHRlLgoKCn5+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+fgogICAgICAgICAgICAgICAgIExl529uIDUuNCA6IFLJQ1VQyVJBVElPTiBFVCBGVVNJT04gREUgRklDSElFUlMKCgogICAgICAgICoqIFBvdXIgaW5z6XJlciBsZSBjb250ZW51IGQndW4gZmljaGllciwgdGFwZXogIDpyIEZJQ0hJRVIgKioKCiAgMS4gUGxhY2V6IGxlIGN1cnNldXIganVzdGUgYXUtZGVzc3VzIGRlIGNldHRlIGxpZ25lLgoKTk9URSA6ICBBcHLocyBhdm9pciBleOljdXTpIGwn6XRhcGUgMiB2b3VzIHZlcnJleiBkdSB0ZXh0ZSBkZSBsYSBMZedvbiA1LjMuCiAgICAgICAgUHVpcyBk6XBsYWNlei12b3VzIHZlcnMgbGUgYmFzIHBvdXIgdm9pciBjZXR0ZSBsZedvbiDgIG5vdXZlYXUuCgogIDIuIE1haW50ZW5hbnQgculjdXDpcmV6IHZvdHJlIGZpY2hpZXIgVEVTVCBlbiB1dGlsaXNhbnQgbGEgY29tbWFuZGUgIDpyIFRFU1QKICAgICBv+SBURVNUIGVzdCBsZSBub20gZGUgdm90cmUgZmljaGllci4KICAgICBMZSBmaWNoaWVyIHF1ZSB2b3VzIHLpY3Vw6XJleiBlc3QgcGxhY+kgYXUtZGVzc291cyBkZSBsYSBsaWduZSBkdSBjdXJzZXVyLgoKICA0LiBQb3VyIHbpcmlmaWVyIHF1ZSBsZSBmaWNoaWVyIGEgYmllbiDpdOkgaW5z6XLpLCByZW1vbnRleiBldCB26XJpZmllegogICAgIHF1J2lsIHkgYSBtYWludGVuYW50IGRldXggY29waWVzIGRlIGxhIExl529uIDUuMywgbCdvcmlnaW5hbGUgZXQgY2VsbGUKICAgICBjb250ZW51ZSBkYW5zIGxlIGZpY2hpZXIuCgpOT1RFIDogIFZvdXMgcG91dmV6IGF1c3NpIGxpcmUgbGEgc29ydGllIGQndW5lIGNvbW1hbmRlIGV4dGVybmUuIFBhciBleGVtcGxlLAogICAgICAgIDpyICFscyAgbGl0IGxhIHNvcnRpZSBkZSBsYSBjb21tYW5kZSBscyBldCBsYSBwbGFjZSBzb3VzIGxhIGxpZ25lIGR1CiAgICAgICAgY3Vyc2V1ci4KCgp+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+fn4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSyVNVTckgREUgTEEgTEXHT04gNQoKCiAgMS4gOiFjb21tYW5kZSAgZXjpY3V0ZSB1bmUgY29tbWFuZGUgZXh0ZXJuZS4KCiAgICAgUXVlbHF1ZXMgZXhlbXBsZXMgcHJhdGlxdWVzIDoKICAgICAgKE1TLURPUykgICAgICAgIChVbml4KQogICAgICAgOiFkaXIgICAgICAgICAgIDohbHMgICAgICAgICAgYWZmaWNoZSBsZSBjb250ZW51IGR1IHLpcGVydG9pcmUgY291cmFudC4KICAgICAgIDohZGVsIEZJQ0hJRVIgICA6IXJtIEZJQ0hJRVIgIGVmZmFjZSBGSUNISUVSLgoKICAyLiA6dyBGSUNISUVSICBlbnJlZ2lzdHJlIGxlIGZpY2hpZXIgVmltIGNvdXJhbnQgc3VyIGxlIGRpc3F1ZSBhdmVjIHBvdXIKICAgICAgICAgICAgICAgICAgbm9tIEZJQ0hJRVIuCgogIDMuIHYgIGTpcGxhY2VtZW50ICA6dyBGSUNISUVSIHNhdXZlZ2FyZGUgbGVzIGxpZ25lcyBkZSBsYSBz6WxlY3Rpb24gVmlzdWVsbGUKICAgICBkYW5zIGxlIGZpY2hpZXIgRklDSElFUi4KCiAgNC4gOnIgRklDSElFUiAgculjdXDocmUgbGUgY29udGVudSBkdSBmaWNoaWVyIEZJQ0hJRVIgZXQgbCdpbnPocmUgc291cyBsYQogICAgIHBvc2l0aW9uIGR1IGN1cnNldXIuCgogIDUuIDpyICFkaXIgIGxpdCBsYSBzb3J0aWUgZGUgbGEgY29tbWFuZGUgZGlyIGV0IGwnaW5z6HJlIHNvdXMgbGEgcG9zaXRpb24KICAgICBkdSBjdXJzZXVyLgoKCn5+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+fgogICAgICAgICAgICAgICAgICAgICAgTGXnb24gNi4xIDogTEEgQ09NTUFOREUgRCdPVVZFUlRVUkUKCgoqKiBUYXBleiAgbyAgcG91ciBvdXZyaXIgdW5lIGxpZ25lIHNvdXMgbGUgY3Vyc2V1ciBldCB5IGFsbGVyIGVuIEluc2VydGlvbi4gKioKCiAgMS4gROlwbGFjZXogbGUgY3Vyc2V1ciBzdXIgbGEgbGlnbmUgbWFycXXpZSAtLS0+IGNpLWRlc3NvdXMuCgogIDIuIFRhcGV6IGxhIGxldHRyZSAgIG8gICBtaW51c2N1bGUgcG91ciBvdXZyaXIgdW5lIGxpZ25lIFNPVVMgbGUgY3Vyc2V1ciBldAogICAgIHZvdXMgeSBwbGFjZXIgZW4gbW9kZSBJbnNlcnRpb24uCgogIDMuIFB1aXMgdGFwZXogZHUgdGV4dGUgZXQgYXBwdXlleiA8yWNoYXA+IHBvdXIgc29ydGlyIGR1IG1vZGUgSW5zZXJ0aW9uLgoKLS0tPiBFbiB0YXBhbnQgIG8gIGxlIGN1cnNldXIgc2UgbWV0IHN1ciBsYSBsaWduZSBvdXZlcnRlLCBlbiBtb2RlIEluc2VydGlvbi4KCiAgNC4gUG91ciBvdXZyaXIgdW5lIGxpZ25lIGF1LURFU1NVUyBkdSBjdXJzZXVyLCB0YXBleiBzaW1wbGVtZW50IHVuICBPCiAgICAgbWFqdXNjdWxlLCBwbHV09HQgcXUndW4gIG8gIG1pbnVzY3VsZS4gRmFpdGVzIHVuIGVzc2FpIHN1ciBsYSBsaWduZQogICAgIGNpLWRlc3NvdXMuCgotLS0+IE91dnJleiB1bmUgbGlnbmUgY2ktZGVzc3VzIGVuIHRhcGFudCBPIGxvcnNxdWUgbGUgY3Vyc2V1ciBlc3QgaWNpLgoKCn5+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+fgogICAgICAgICAgICAgICAgICAgICAgICBMZedvbiA2LjIgOiBMQSBDT01NQU5ERSBEJ0FKT1VUCgoKICAgICAgICAgICAgKiogVGFwZXogIGEgIHBvdXIgaW5z6XJlciBkdSB0ZXh0ZSBBUFLIUyBsZSBjdXJzZXVyLiAqKgoKICAxLiBQbGFjZXogbGUgY3Vyc2V1ciBhdSBk6WJ1dCBkZSBsYSBsaWduZSBtYXJxdellIC0tLT4gY2ktZGVzc291cy4KCiAgMi4gQXBwdXlleiAgZSAganVzcXUn4CBjZSBxdWUgbGUgY3Vyc2V1ciBzb2l0IHN1ciBsYSBmaW4gZGUgIGxpIC4KCiAgMy4gQXBwdXlleiAgYSAgKG1pbnVzY3VsZSkgcG91ciBham91dGVyIGR1IHRleHRlIEFQUshTIGxlIGN1cnNldXIuCgogIDQuIENvbXBs6XRleiBsZSBtb3QgY29tbWUgZGFucyBsYSBsaWduZSBkZXNzb3VzLiBBcHB1eWV6IDzJY2hhcD4gcG91cgogICAgIHNvcnRpciBkdSBtb2RlIEluc2VydGlvbi4KCiAgNS4gVXRpbGlzZXogIGUgIHBvdXIgdm91cyBk6XBsYWNlciB2ZXJzIGxlIG1vdCBpbmNvbXBsZXQgc3VpdmFudCBldAogICAgIHLpcOl0ZXogbGVzIOl0YXBlcyAzIGV0IDQuCgotLS0+IENldHRlIGxpIHZvdXMgcGVybSBkZSBwcmF0aXEgbCdham91dCBkZSB0IGRhbnMgdW5lIGxpZ25lLgotLS0+IENldHRlIGxpZ25lIHZvdXMgcGVybWV0IGRlIHByYXRpcXVlciBsJ2Fqb3V0IGRlIHRleHRlIGRhbnMgdW5lIGxpZ25lLgoKTk9URSA6ICBhLCBpLCBBIHZvbnQgdG91cyBkYW5zIGxlIG3qbWUgbW9kZSBJbnNlcnRpb24sIGxhIHNldWxlIGRpZmbpcmVuY2UKICAgICAgICBlc3QgbCdlbmRyb2l0IG/5IGxlcyBjYXJhY3TocmVzIHNvbnQgaW5z6XLpcy4KCgp+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+fn4KICAgICAgICAgICAgICAgICAgIExl529uIDYuMyA6IFVORSBBVVRSRSBNQU5JyFJFIERFIFJFTVBMQUNFUgoKCiAgICAgICAqKiBUYXBleiB1biAgUiAgbWFqdXNjdWxlIHBvdXIgcmVtcGxhY2VyIHBsdXMgZCd1biBjYXJhY3TocmUuICoqCgogIDEuIETpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxhIHByZW1p6HJlIGxpZ25lIG1hcnF16WUgLS0tPiBjaS1kZXNzb3VzLgogICAgIETpcGxhY2V6IGxlIGN1cnNldXIgc3VyIGxlIGTpYnV0IGR1IHByZW1pZXIgeHh4IC4KCiAgMi4gQXBwdXlleiBtYWludGVuYW50ICBSICBldCB0YXBleiBsZSBub21icmUgZGVzc291cyBkYW5zIGxhIGRldXhp6G1lIGxpZ25lLAogICAgIGRlIG1hbmnocmUg4CByZW1wbGFjZXIgbGUgeHh4IC4KCiAgMy4gQXBwdXlleiA8yWNoYXA+IHBvdXIgcXVpdHRlciBsZSBtb2RlIFJlbXBsYWNlbWVudC4gTm90ZXogcXVlIGxlIHJlc3RlIGRlCiAgICAgbGEgbGlnbmUgZGVtZXVyZSBpbmNoYW5n6S4KCiAgNC4gUulw6XRleiBsZXMg6XRhcGVzIHBvdXIgcmVtcGxhY2VyIGxlcyB4eHggcmVzdGFudHMuCgoKLS0tPiBMJ2Fqb3V0IGRlIDEyMyDgIHh4eCBkb25uZSB4eHguCi0tLT4gTCdham91dCBkZSAxMjMg4CA0NTYgZG9ubmUgNTc5LgoKTk9URSA6IExlIG1vZGUgUmVtcGxhY2VtZW50IGVzdCBjb21tZSBsZSBtb2RlIEluc2VydGlvbiwgbWFpcyB0b3VzIGxlcwogICAgICAgY2FyYWN06HJlcyB0YXDpcyBlZmZhY2VudCB1biBjYXJhY3TocmUgZXhpc3RhbnQuCgoKfn5+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+CiAgICAgICAgICAgICAgICAgICAgIExl529uIDYuNCA6IENPUElFUiBFVCBDT0xMRVIgRFUgVEVYVEUKCgogICAqKiBVdGlsaXNleiBsJ29w6XJhdGV1ciAgeSAgcG91ciBjb3BpZXIgZHUgdGV4dGUgZXQgIHAgIHBvdXIgbGUgY29sbGVyICoqCgogIDEuIEFsbGV6IOAgbGEgbGlnbmUgbWFycXXpZSAtLS0+IGNpLWRlc3NvdXMgZXQgcGxhY2V6IGxlIGN1cnNldXIgYXBy6HMgImEpIi4KCiAgMi4gROltYXJyZXogbGUgbW9kZSBWaXN1ZWwgYXZlYyAgdiAgZXQgZOlwbGFjZXogbGUgY3Vyc2V1ciBqdXN0ZSBkZXZhbnQKICAgICAicHJlbWllciIuCgogIDMuIFRhcGV6ICB5ICBwb3VyIGNvcGllciBsZSB0ZXh0ZSBlbiBzdXJicmlsbGFuY2UuCgogIDQuIETpcGxhY2V6IGxlIGN1cnNldXIg4CBsYSBmaW4gZGUgbGEgbGlnbmUgc3VpdmFudGUgOiAgIGokCgogIDUuIFRhcGV6ICBwICBwb3VyIGNvbGxlciBsZSB0ZXh0ZS4gUHVpcyB0YXBleiA6ICB1biBzZWNvbmQgPMljaGFwPiAuCgogIDYuIFV0aWxpc2V6IGxlIG1vZGUgVmlzdWVsIHBvdXIgc+lsZWN0aW9ubmVyICLpbOltZW50IiwgY29waWV6LWxlIGF2ZWMgIHkgICwKICAgICBk6XBsYWNlei12b3VzIOAgbGEgZmluIGRlIGxhIGxpZ25lIHN1aXZhbnQgYXZlYyAgaiQgIGV0IGNvbGxleiBsZSB0ZXh0ZQogICAgIOAgY2V0IGVuZHJvaXQgYXZlYyAgcCAuCgotLS0+ICBhKSBjZWNpIGVzdCBsZSBwcmVtaWVyIOls6W1lbnQuCiAgICAgIGIpCgp+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+fn4KICAgICAgICAgICAgICAgICAgICAgICBMZedvbiA2LjQgOiBSyUdMQUdFIERFUyBPUFRJT05TCgoKICAgICoqIFLpZ2xvbnMgdW5lIG9wdGlvbiBhZmluIHF1ZSBsYSByZWNoZXJjaGUgZXQgbGEgc3Vic3RpdHV0aW9uIGlnbm9yZSBsYQogICAgICAgY2Fzc2UgZGVzIGNhcmFjdOhyZXMuICoqCgogIDEuIFJlY2hlcmNoZXogJ2lnbm9yZScgZW4gdGFwYW50IDogICAvaWdub3JlIDxFbnRy6WU+CiAgICAgUulw6XRleiBjZWNpIHBsdXNpZXVycyBmb2lzIGVuIHV0aWxpc2FudCBsYSB0b3VjaGUgIG4gLgoKICAyLiBBY3RpdmV6IGwnb3B0aW9uICdpYycgKGlnbm9yZXIgY2Fzc2UpIGVuIHRhcGFudCAgOnNldCBpYyAuCgogIDMuIFB1aXMgY2hlcmNoZXogJ2lnbm9yZScgZGUgbm91dmVhdSBlbiB1dGlsaXNhbnQgIG4gLgogICAgIFJlbWFycXVleiBxdWUgSWdub3JlIGV0IElHTk9SRSBzb250IG1haW50ZW5hbnQgYXVzc2kgdHJvdXbpcy4KCiAgNC4gQWN0aXZleiBsZXMgb3B0aW9ucyAnaGxzZWFyY2gnIGV0ICdpbmNzZWFyY2gnIGF2ZWMgIDpzZXQgaGxzIGlzIC4KCiAgNS4gUHVpcyByZWNvbW1lbmNleiB1bmUgcmVjaGVyY2hlLCBldCBmYWl0ZXMgYmllbiBhdHRlbnRpb24g4CBjZSBxdWkgc2UKICAgICBwcm9kdWl0IDogIC9pZ25vcmUgPEVudHLpZT4KCiAgNi4gUG91ciBk6XNhY3RpdmVyICdpZ25vcmVyIGNhc3NlJywgZW50cmV6IDogIDpzZXQgbm9pYwoKTk9URSA6IFBvdXIgZW5sZXZlciBsYSBzdXJicmlsbGFuY2UgZGVzIHLpc3VsdGF0cywgZW50cmV6IDogICA6bm9obHNlYXJjaAoKTk9URSA6IFNpIHZvdXMgdm91bGV6IGlnbm9yZXIgbGEgY2Fzc2UgdW5pcXVlbWVudCBwb3VyIHVuZSByZWNoZXJjaGUsIHV0aWxpc2V6CiAgICAgICBcYyAgZGFucyBsYSBwaHJhc2UgOiAgIC9pZ25vcmVcYyAgPEVudHLpZT4KCgp+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+fn4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSyVNVTckgREUgTEEgTEXHT04gNgoKCiAgMS4gVGFwZXIgIG8gIG91dnJlIHVuZSBsaWduZSBTT1VTIGxlIGN1cnNldXIgZXQgZOltYXJyZSBsZSBtb2RlIEluc2VydGlvbi4KICAgICBUYXBlciAgTyAgb3V2cmUgdW5lIGxpZ25lIGF1LURFU1NVUyBkdSBjdXJzZXVyLgoKICAyLiBUYXBlciAgYSAgcG91ciBpbnPpcmVyIGR1IHRleHRlIEFQUshTIGxlIGN1cnNldXIuCiAgICAgVGFwZXIgIEEgIHBvdXIgaW5z6XJlciBkdSB0ZXh0ZSBhcHLocyBsYSBmaW4gZGUgbGlnbmUuCgogIDMuIFRhcGVyICBlICBk6XBsYWNlIOAgbGEgZmluIGR1IG1vdC4KCiAgNC4gVGFwZXIgIHkgIGNvcGllIGR1IHRleHRlLCAgcCAgbGUgY29sbGUuCgogIDUuIFRhcGVyICBSICBtYWp1c2N1bGUgYWN0aXZlIGxlIG1vZGUgUmVtcGxhY2VtZW50IGp1c3F1J+AgY2UgcXUnIDzJY2hhcD4KICAgICBzb2l0IGFwcHV56S4KCiAgNi4gVGFwZXIgICI6c2V0IHh4eCIgIGFjdGl2ZSBsJ29wdGlvbiAieHh4Ii4gUXVlbHF1ZXMgb3B0aW9ucyBzb250IDoKICAgICAgICAnaWMnICAnaW5nbm9yZWNhc2UnIHBvdXIgaWdub3JlciBsYSBjYXNzZSBsb3JzIGRlcyByZWNoZXJjaGVzLgogICAgICAgICdpcycgICdpbmNzZWFyY2gnICAgcG91ciBtb250cmVyIGxlcyBhcHBhcmllbWVudHMgcGFydGllbHMuCiAgICAgICAgJ2hscycgJ2hsc2VhcmNoJyAgICBwb3VyIG1ldHRyZSBlbiBzdXJicmlsbGFuY2UgbGVzIGFwcGFyaWVtZW50cy4KCgp+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+fn4KICAgICAgICAgICAgICAgICAgICAgICAgIExl529uIDcuMSA6IE9CVEVOSVIgREUgTCdBSURFCgoKICAgICAgICAgICAgICAgICAgKiogVXRpbGlzZXIgbGUgc3lzdOhtZSBkJ2FpZGUgZW4gbGlnbmUuICoqCgogIFZpbSBhIHVuIHN5c3TobWUgY29tcGxldCBkJ2FpZGUgZW4gbGlnbmUuIFBvdXIgeSBhY2PpZGVyLCBlc3NheWV6IGwndW5lIGRlCiAgY2VzIHRyb2lzIG3pdGhvZGVzIDoKICAgICAgICAtIGFwcHV5ZXogbGEgdG91Y2hlIDxIZWxwPiAoc2kgdm91cyBlbiBhdmV6IHVuZSkKICAgICAgICAtIGFwcHV5ZXogbGEgdG91Y2hlIDxGMT4gKHNpIHZvdXMgZW4gYXZleiB1bmUpCiAgICAgICAgLSB0YXBleiAgOmhlbHAgPEVudHLpZT4KCgogIExpc2V6IGxlIHRleHRlIGRhbnMgbGEgZmVu6nRyZSBkJ2FpZGUgcG91ciBzYXZvaXIgY29tbWVudCBmb25jdGlvbm5lIGwnYWlkZS4KICBUYXBleiAgQ1RSTC1XIENUUkwtVyAgIHBvdXIgc2F1dGVyIGQndW5lIGZlbup0cmUg4CBsJ2F1dHJlLgogIFRhcGV6ICA6cSA8RW50cullPiAgICAgcG91ciBmZXJtZXIgbGEgZmVu6nRyZSBkJ2FpZGUuCgogIFZvdXMgcG91dmV6IGFjY+lkZXIg4CBsJ2FpZGUgc3VyIOAgcGV1IHBy6HMgbidpbXBvcnRlIHF1ZWwgc3VqZXQgZW4gZG9ubmFudAogIGRlcyBhcmd1bWVudHMg4CBsYSBjb21tYW5kZSAgOmhlbHAgLiBFc3NheWV6IHBhciBleGVtcGxlIChuJ291YmxpZXogcGFzCiAgZCdhcHB1eWVyIHN1ciA8RW50cullPikgOgoKICAgICAgICA6aGVscCB3CiAgICAgICAgOmhlbHAgY19DVFJMLUQKICAgICAgICA6aGVscCBjXzxUCiAgICAgICAgOmhlbHAgaW5zZXJ0LWluZGV4CiAgICAgICAgOmhlbHAgdXNlci1tYW51YWwKCgp+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+fn4KICAgICAgICAgICAgICAgICAgICBMZedvbiA3LjIgOiBDUslFUiBVTiBTQ1JJUFQgREUgRMlNQVJSQUdFCgogICAgICAgICAgICAgICAgICAgKiogQWN0aXZlciBsZXMgZm9uY3Rpb25uYWxpdOlzIGRlIFZpbS4gKioKCiAgVmltIGEgYmVhdWNvdXAgcGx1cyBkZSBmb25jdGlvbm5hbGl06XMgcXVlIFZpLCBtYWlzIGxhIHBsdXBhcnQgZGUgY2VsbGVzLWNpCiAgc29udCBk6XNhY3RpdullcyBwYXIgZOlmYXV0LiBQb3VyIGNvbW1lbmNlciDgIGxlcyB1dGlsaXNlciwgdm91cyBkZXZlegogIGNy6WVyIHVuIGZpY2hpZXIgInZpbXJjIi4KCiAgMS4gQ29tbWVuY2V6IOAg6WRpdGVyIGxlIGZpY2hpZXIgInZpbXJjIi4gQ2VjaSBk6XBlbmQgZGUgdm90cmUgc3lzdOhtZSA6CiAgICAgICAgOmVkaXQgfi8udmltcmMgICAgICAgICBwb3VyIFVuaXgKICAgICAgICA6ZWRpdCAkVklNL192aW1yYyAgICAgIHBvdXIgTVMtV2luZG93cwoKICAyLiBMaXNleiBtYWludGVuYW50IGxlIGZpY2hpZXIgZCdleGVtcGxlICJ2aW1yYyIgOgogICAgICAgIDpyICRWSU1SVU5USU1FL3ZpbXJjX2V4YW1wbGUudmltCgogIDMuIEVucmVnaXN0cmV6IGxlIGZpY2hpZXIgYXZlYyA6CiAgICAgICAgOncKCiAgTGEgcHJvY2hhaW5lIGZvaXMgcXVlIHZvdXMgZOltYXJyZXJleiBWaW0sIGxhIGNvbG9yYXRpb24gc3ludGF4aXF1ZSBzZXJhCiAgYWN0aXbpZS4gVm91cyBwb3V2ZXogYWpvdXRlciB0b3VzIHZvcyBy6WdsYWdlcyBwculm6XLpcyBkYW5zIGNlIGZpY2hpZXIKICAidmltcmMiLiBQb3VyIHBsdXMgZCdpbmZvcm1hdGlvbnMsIHRhcGV6ICA6aGVscCB2aW1yYy1pbnRybwoKCn5+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+fgogICAgICAgICAgICAgICAgICAgICAgICAgICAgTGXnb24gNy4zIDogQ09NUEzIVEVNRU5UCgoKICAgICAgICAgICoqIENvbXBs6HRlbWVudCBkZSBsaWduZSBkZSBjb21tYW5kZSBhdmVjIENUUkwtRCBldCA8VEFCPiAqKgoKICAxLiBNZXR0ZXogVmltIHNvaXQgZW4gbW9kZSBub24gY29tcGF0aWJsZSA6ICAgc2V0IG5vY3AKCiAgMi4gUmVnYXJkZXogcXVlbHMgZmljaGllcnMgZXhpc3RlbnQgZGFucyBsZSBy6XBlcnRvaXJlIDogICFscyAgb3UgICFkaXIKCiAgMy4gVGFwZXogbGUgZOlidXQgZCd1bmUgY29tbWFuZGUgOiAgIDplCgogIDQuIEFwcHV5ZXogIENUUkwtRCAgZXQgVmltIGFmZmljaGVyYSB1bmUgbGlzdGUgZGUgY29tbWFuZGVzIHF1aSBjb21tZW5jZW50CiAgICAgcGFyICJlIi4KCiAgNS4gQXBwdXlleiAgPFRBQj4gIGV0IFZpbSBjb21wbOl0ZXJhIGxlIG5vbSBkZSBsYSBjb21tYW5kZSA6ICAiOmVkaXQiCgogIDYuIEFqb3V0ZXogbWFpbnRlbmFudCB1biBlc3BhY2UgZXQgbGUgZOlidXQgZCd1biBmaWNoaWVyIGV4aXN0YW50IDoKICAgICA6ZWRpdCAgRklDCgogIDcgIEFwcHV5ZXogIDxUQUI+LiBWaW0gdmEgY29tcGzpdGVyIGxlIG5vbSAocydpbCBlc3QgdW5pcXVlKS4KCk5PVEUgOiBMZSBjb21wbOh0ZW1lbnQgZm9uY3Rpb25uZSBwb3VyIGRlIG5vbWJyZXVzZXMgY29tbWFuZGVzLiBFc3NheWV6CiAgICAgICBkJ2FwcHV5ZXIgQ1RSTC1EIGV0IDxUQUI+LiBDJ2VzdCB1dGlsZSBlbiBwYXJ0aWN1bGllciBwb3VyICA6aGVscCAuCgoKfn5+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+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFLJU1VNySBERSBMQSBMRcdPTiA3CgoKICAxLiBUYXBleiAgOmhlbHAgIG91IGFwcHV5ZXogPEYxPiBvdSA8QWlkZT4gcG91ciBvdXZyaXIgbGEgZmVu6nRyZSBkJ2FpZGUuCgogIDIuIFRhcGV6ICA6aGVscCBjbWQgIHBvdXIgdHJvdXZlciBsJ2FpZGUgc3VyICBjbWQgLgoKICAzLiBUYXBleiAgQ1RSTC1XIENUUkwtVyAgcG91ciBzYXV0ZXIg4CB1bmUgYXV0cmUgZmVu6nRyZS4KCiAgNC4gVGFwZXogIDpxICBwb3VyIGZlcm1lciBsYSBmZW7qdHJlIGQnYWlkZS4KCiAgNS4gQ3LpZXogdW4gc2NyaXB0IGRlIGTpbWFycmFnZSB2aW1yYyBwb3VyIGNvbnNlcnZlciB2b3MgculnbGFnZXMgcHLpZuly6XMuCgogIDYuIFF1YW5kIHZvdXMgdGFwZXogdW5lIGNvbW1hbmRlICA6ICBhcHB1eWV6IENUUkwtRCBwb3VyIHZvaXIgbGVzCiAgICAgY29tcGzodGVtZW50cyBwb3NzaWJsZXMuIEFwcHV5ZXogPFRBQj4gcG91ciB1dGlsaXNlciB1biBjb21wbOh0ZW1lbnQuCgoKfn5+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+CgogIENlY2kgY29uY2x1dCBsZSBUdXRvcmllbCBWaW0uIExlIGJ1dCDpdGFpdCBkZSB2b3VzIGRvbm5lciB1biBicmVmIGFwZXLndSBkZQogIGwn6WRpdGV1ciBWaW0sIGp1c3RlIGFzc2V6IHBvdXIgdm91cyBwZXJtZXR0cmUgZCd1dGlsaXNlciBsJ+lkaXRldXIKICByZWxhdGl2ZW1lbnQgZmFjaWxlbWVudC4gSWwgZXN0IGxvaW4gZCfqdHJlIGNvbXBsZXQsIHZ1IHF1ZSBWaW0gYSBiZWF1Y291cAogIHBsdXMgZGUgY29tbWFuZGVzLiBVbiBNYW51ZWwgZGUgbCd1dGlsaXNhdGV1ciBlc3QgZGlzcG9uaWJsZSBlbiBhbmdsYWlzIDoKICAgIDpoZWxwIHVzZXItbWFudWFsCgogIFBvdXIgY29udGludWVyIOAgZOljb3V2cmlyIGV0IOAgYXBwcmVuZHJlIFZpbSwgaWwgZXhpc3RlIHVuIGxpdnJlIHRyYWR1aXQgZW4KICBmcmFu52Fpcy4gSWwgcGFybGUgcGx1cyBkZSBWaSBxdWUgZGUgVmltLCBtYWlzIHBvdXJyYSB2b3VzIOp0cmUgdXRpbGUuCiAgICAgICAgTCfpZGl0ZXVyIFZpIC0gQ29sbGVjdGlvbiBQculjaXMgZXQgY29uY2lzIC0gcGFyIEFybm9sZCBSb2JiaW5zCiAgICAgICAgyWRpdGV1ciA6IE8nUmVpbGx5IEZyYW5jZQogICAgICAgIElTQk4gOiAyLTg0MTc3LTEwMi00CgogIERldXggbGl2cmVzIGVuIGFuZ2xhaXMgc29udCDpZ2FsZW1lbnQgbWVudGlvbm7pcyBkYW5zIGxhIHZlcnNpb24gb3JpZ2luYWxlCiAgZGUgY2UgdHV0b3JpZWwsIGRvbnQgdW4gcXVpIHRyYWl0ZSBzcOljaWZpcXVlbWVudCBkZSBWaW0uIE1lcmNpIGRlIHZvdXMgeQogIHLpZulyZXIgc2kgdm91cyDqdGVzIGludOlyZXNz6XMuCgogIENlIHR1dG9yaWVsIGEg6XTpIOljcml0IHBhciBNaWNoYWVsIEMuIFBpZXJjZSBldCBSb2JlcnQgSy4gV2FyZSBkZSBsJ8ljb2xlCiAgZGVzIE1pbmVzIGR1IENvbG9yYWRvIGV0IHJlcHJlbmQgZGVzIGlk6WVzIGZvdXJuaWVzIHBhciBDaGFybGVzIFNtaXRoLAogIFVuaXZlcnNpdOkgZCfJdGF0IGR1IENvbG9yYWRvLiBFLW1haWwgOiBid2FyZUBtaW5lcy5jb2xvcmFkby5lZHUuCgogIE1vZGlmaekgcG91ciBWaW0gcGFyIEJyYW0gTW9vbGVuYXIuCiAgVHJhZHVpdCBlbiBmcmFu52FpcyBwYXIgQWRyaWVuIEJlYXUsIGVuIGF2cmlsIDIwMDEuCiAgRGVybmnocmVzIG1pc2VzIOAgam91ciBwYXIgRG9taW5pcXVlIFBlbGzpLgoKICBFLW1haWwgOiAgICAgIGRvbWluaXF1ZS5wZWxsZUBnbWFpbC5jb20KICBMYXN0IENoYW5nZSA6IDIwMTMgTWF5IDEwCn5+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+fgo=