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b3NlOnYgaGVscDo/ACBvciAAIHRlcnNlOnYgaGVscDo/ACB2ZXJib3NlOnYgaGVscDo/ACFCdWchACUtKnMgJXMlcyVzOyAgJXMgKHdhczogJXMpLiAgJXMAJXMgJXMgcGFja2FnZXMAJXMgJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcwAlcyAlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbgAlcyBmb3IgbW9yZQAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzACVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uACVzIHRvIGdvIGJhY2sAKiBIaWdobGlnaHQ6IE9uZSBsaW5lIGluIHRoZSBwYWNrYWdlIGxpc3Qgd2lsbCBiZSBoaWdobGlnaHRlZC4gIEl0IGluZGljYXRlcwogIHdoaWNoIHBhY2thZ2Uocykgd2lsbCBiZSBhZmZlY3RlZCBieSBwcmVzc2VzIG9mIGArJywgYC0nIGFuZCBgXycuCgoqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uIG9mCiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2Ygd2hpY2gKICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGUKICBtZWFuaW5nIG9mIHNvbWUgb2YgdGhlIHN0YXR1cyBjaGFyYWN0ZXJzIGRpc3BsYXllZCwgZ28gdG8gdGhlIHJlbGV2YW50CiAgcGFja2FnZSBhbmQgbG9vayBhdCB0aGlzIGRpdmlkZXIgbGluZSwgb3IgdXNlIHRoZSBgdicga2V5IGZvciBhIHZlcmJvc2UKICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuCgoqIFRoZSBib3R0b20gb2YgdGhlIHNjcmVlbiBzaG93cyBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZQogIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuCgogIEl0IGNhbiBzaG93IGFuIGV4dGVuZGVkIGRlc2NyaXB0aW9uIG9mIHRoZSBwYWNrYWdlLCB0aGUgaW50ZXJuYWwgcGFja2FnZQogIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZQogIHBhY2thZ2UpLCBvciBpbmZvcm1hdGlvbiBhYm91dCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgdGhlCiAgY3VycmVudCBwYWNrYWdlIChpbiBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3VibGlzdHMpLgoKICBVc2UgdGhlIGBpJyBrZXkgdG8gY3ljbGUgdGhyb3VnaCB0aGUgZGlzcGxheXMsIGFuZCBgSScgdG8gaGlkZSB0aGUKICBpbmZvcm1hdGlvbiBkaXNwbGF5IG9yIGV4cGFuZCBpdCB0byB1c2UgYWxtb3N0IGFsbCBvZiB0aGUgc2NyZWVuLgoAPHN0YW5kYXJkIGVycm9yPgA8c3RhbmRhcmQgb3V0cHV0PgA/AEFiYnJldi4AQWJvcnQgLSBxdWl0IHdpdGhvdXQgbWFraW5nIGNoYW5nZXMAQWNjZXNzIG1ldGhvZCBgJXMnLgBBY3Rpb25zOgogIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0CgoAQWxsAEFsbCBwYWNrYWdlcwBBdHRyaWJ1dGVzOgoAQXZhaWwudmVyAEF2YWlsYWJsZQBBdmFpbGFibGUgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uAEF2YWlsYWJsZSBwYWNrYWdlcyAobm90IGN1cnJlbnRseSBpbnN0YWxsZWQpAEJyb2tlbgBCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMAQ2hvb3NlIHRoZSBhY2Nlc3MgbWV0aG9kIHRvIHVzZS4AQ29sb3VyczoKAENvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLgBDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi4KQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4KAEN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMARGViaWFuIGAlcycgcGFja2FnZSBoYW5kbGluZyBmcm9udGVuZCB2ZXJzaW9uICVzLgoARGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIC0gaW50cm9kdWN0aW9uLgoKT25lIG9yIG1vcmUgb2YgeW91ciBjaG9pY2VzIGhhdmUgcmFpc2VkIGEgY29uZmxpY3Qgb3IgZGVwZW5kZW5jeSBwcm9ibGVtIC0Kc29tZSBwYWNrYWdlcyBzaG91bGQgb25seSBiZSBpbnN0YWxsZWQgaW4gY29uanVuY3Rpb24gd2l0aCBjZXJ0YWluIG90aGVycywgYW5kCnNvbWUgY29tYmluYXRpb25zIG9mIHBhY2thZ2VzIG1heSBub3QgYmUgaW5zdGFsbGVkIHRvZ2V0aGVyLgoKWW91IHdpbGwgc2VlIGEgc3ViLWxpc3QgY29udGFpbmluZyB0aGUgcGFja2FnZXMgaW52b2x2ZWQuICBUaGUgYm90dG9tIGhhbGYgb2YKdGhlIGRpc3BsYXkgc2hvd3MgcmVsZXZhbnQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXM7IHVzZSBgaScgdG8gY3ljbGUgYmV0d2Vlbgp0aGF0LCB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbnMgYW5kIHRoZSBpbnRlcm5hbCBjb250cm9sIGluZm9ybWF0aW9uLgoKQSBzZXQgb2YgYHN1Z2dlc3RlZCcgcGFja2FnZXMgaGFzIGJlZW4gY2FsY3VsYXRlZCwgYW5kIHRoZSBpbml0aWFsIG1hcmtpbmdzIGluCnRoaXMgc3ViLWxpc3QgaGF2ZSBiZWVuIHNldCB0byBtYXRjaCB0aG9zZSwgc28geW91IGNhbiBqdXN0IGhpdCBSZXR1cm4gdG8KYWNjZXB0IHRoZSBzdWdnZXN0aW9ucyBpZiB5b3Ugd2lzaC4gIFlvdSBtYXkgYWJvcnQgdGhlIGNoYW5nZShzKSB3aGljaCBjYXVzZWQKdGhlIHByb2JsZW0ocyksIGFuZCBnbyBiYWNrIHRvIHRoZSBtYWluIGxpc3QsIGJ5IHByZXNzaW5nIGNhcGl0YWwgYFgnLgoKWW91IGNhbiBhbHNvIG1vdmUgYXJvdW5kIHRoZSBsaXN0IGFuZCBjaGFuZ2UgdGhlIG1hcmtpbmdzIHNvIHRoYXQgdGhleSBhcmUgbW9yZQpsaWtlIHdoYXQgeW91IHdhbnQsIGFuZCB5b3UgY2FuIGByZWplY3QnIG15IHN1Z2dlc3Rpb25zIGJ5IHVzaW5nIHRoZSBjYXBpdGFsCmBEJyBvciBgUicga2V5cyAoc2VlIHRoZSBrZXliaW5kaW5ncyBoZWxwIHNjcmVlbikuICBZb3UgY2FuIHVzZSBjYXBpdGFsIGBRJyB0bwpmb3JjZSBtZSB0byBhY2NlcHQgdGhlIHNpdHVhdGlvbiBjdXJyZW50bHkgZGlzcGxheWVkLCBpbiBjYXNlIHlvdSB3YW50IHRvCm92ZXJyaWRlIGEgcmVjb21tZW5kYXRpb24gb3IgdGhpbmsgdGhhdCB0aGUgcHJvZ3JhbSBpcyBtaXN0YWtlbi4KClByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIHN1Yi1saXN0OyByZW1lbWJlcjogcHJlc3MgYD8nIGZvciBoZWxwLgoARGVzY3JpcHRpb24ARGlzcGxheSwgcGFydCAxOiBwYWNrYWdlIGxpc3RpbmcgYW5kIHN0YXR1cyBjaGFycwBEaXNwbGF5LCBwYXJ0IDI6IGxpc3QgaGlnaGxpZ2h0OyBpbmZvcm1hdGlvbiBkaXNwbGF5AEVJT00ARU9GIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydABFT0YgYmVmb3JlIHN1bW1hcnkARU9GIGluIGluZGV4IHN0cmluZwBFT0YgaW4gb3B0aW9uIG5hbWUARU9GIGluIHN1bW1hcnkgLSBtaXNzaW5nIG5ld2xpbmUARXJyb3IARXJyb3I6IABFeHBsYW5hdGlvbgBFeHRyYQBHbyB0byBlbmQgb2YgbGlzdABHbyB0byB0b3Agb2YgbGlzdABIZWxwIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSB1bmRlciB0aGUgZm9sbG93aW5nIHRvcGljczoASGVscDogAEltcABJbXBvcnRhbnQASW5zdC52ZXIASW5zdGFsbCBhbmQgdXBncmFkZSB3YW50ZWQgcGFja2FnZXMuAEluc3RhbGxlZABJbnN0YWxsZWQgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uAEluc3RhbGxlZCBwYWNrYWdlcwBJbnN0YWxsZWQ/AEludGVycmVsYXRpb25zaGlwcwBJbnRyb2R1Y3Rpb24gdG8gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Yi1saXN0AEludHJvZHVjdGlvbiB0byBtZXRob2Qgc2VsZWN0aW9uIGRpc3BsYXkASW50cm9kdWN0aW9uIHRvIHBhY2thZ2Ugc2VsZWN0aW9ucwBJbnRyb2R1Y3Rpb24gdG8gcmVhZC1vbmx5IHBhY2thZ2UgbGlzdCBicm93c2VyAEludmFsaWQgJXMgYCVzJwoAS2V5YmluZGluZ3MAS2V5c3Ryb2tlcwBLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uAE1ha2UgaGlnaGxpZ2h0IGxlc3Mgc3BlY2lmaWMATWFrZSBoaWdobGlnaHQgbW9yZSBzcGVjaWZpYwBNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UATWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGxhdGlvbgBNYXJrIHBhY2thZ2UocykgZm9yIGluc3RhbGxhdGlvbgBNYXJrZWQgZm9yAE1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6CiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0CiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZQogIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmUKICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3QKICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlCiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZQogIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuCiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyCgpNYXJrIHBhY2thZ2VzIGZvciBsYXRlciBwcm9jZXNzaW5nOgogKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGUKIC0sIERlbGV0ZSAgcmVtb3ZlICAgICAgICAgICAgICAgICAgOiwgRyAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlIHVuaW5zdGFsbGVkCiBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNaXNjZWxsYW5lb3VzOgpRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvIEhlbHApCiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyBkaXNwbGF5cwogICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0IG9wdGlvbnMKIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSBvcHRzCiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheQogICBVICAgICBzZXQgYWxsIHRvIHNVZ2dlc3RlZCBzdGF0ZSAgICAgICAgICAgICAvICAgc2VhcmNoIChSZXR1cm4gdG8gY2FuY2VsKQogICBEICAgICBzZXQgYWxsIHRvIERpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSAgbiwgXCAgcmVwZWF0IGxhc3Qgc2VhcmNoCgBNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOgogIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodAogIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2UKICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lCiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0CiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZQogIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmUKICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlbgogIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlcgooVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pCgpRdWl0OgogUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlCiB4LCBYICAgICAgICAgICAgIGV4aXQgd2l0aG91dCBjaGFuZ2luZyBvciBzZXR0aW5nIHVwIHRoZSBpbnN0YWxsYXRpb24gbWV0aG9kCgpNaXNjZWxsYW5lb3VzOgogID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwCiBebCAgICAgICAgICAgICAgICByZWRyYXcgZGlzcGxheQogIC8gICAgICAgICAgICAgICAgc2VhcmNoIChqdXN0IHJldHVybiB0byBjYW5jZWwpCiAgXCAgICAgICAgICAgICAgICByZXBlYXQgbGFzdCBzZWFyY2gKAE1vdmUgZG93bgBNb3ZlIHVwAE5ldwBOZXdseSBhdmFpbGFibGUgcGFja2FnZXMATm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlLgBObyBleHBsYW5hdGlvbiBhdmFpbGFibGUuAE51bGwgY29sb3VyIHNwZWNpZmljYXRpb24KAE9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbQBPYnNvbGV0ZS9sb2NhbABPbGQgbWFyawBPcHQAT3B0aW9uYWwAT3B0aW9uczoKICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy4KICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBUdXJuIG9uIGV4cGVydCBtb2RlLgogIC0tZGVidWcgPGZpbGU+IHwgLUQ8ZmlsZT4gIFR1cm4gb24gZGVidWdnaW5nLCBzZW5kaW5nIG91dHB1dCB0byA8ZmlsZT4uCiAgLS1jb2xvdXIgfCAtLWNvbG9yIHNjcmVlbnBhcnQ6W2ZvcmVncm91bmRdLFtiYWNrZ3JvdW5kXVs6YXR0clsrYXR0cisuLl1dCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlIHNjcmVlbiBjb2xvdXJzLgoKAFBhY2thZ2UAUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS4KAFByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuAFByZXNzIGEga2V5IGZyb20gdGhlIGxpc3QgYWJvdmUsIDxzcGFjZT4gb3IgYHEnIHRvIGV4aXQgaGVscCwKICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAAUHJpb3JpdHkAUHVyZ2VkAFB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkAFF1aXQgZHNlbGVjdC4AUXVpdCB3aXRob3V0IGNoYW5naW5nIHNlbGVjdGVkIGFjY2VzcyBtZXRob2QAUXVpdCwgY29uZmlybWluZyB3aXRob3V0IGNoZWNrAFF1aXQsIGNvbmZpcm1pbmcsIGFuZCBjaGVja2luZyBkZXBlbmRlbmNpZXMAUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMAUkVJTlNUQUxMAFJlZHJhdyBkaXNwbGF5AFJlbW92ZSB1bndhbnRlZCBzb2Z0d2FyZS4AUmVtb3ZlZABSZW1vdmVkIGFuZCBubyBsb25nZXIgYXZhaWxhYmxlIHBhY2thZ2VzAFJlbW92ZWQgcGFja2FnZXMgKGNvbmZpZ3VyYXRpb24gc3RpbGwgcHJlc2VudCkAUmVwZWF0IGxhc3Qgc2VhcmNoLgBSZXEAUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykAUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4AUmVxdWlyZWQAUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcwBSZXZlcnQgdG8gZGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMAUmV2ZXJ0IHRvIG9sZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzAFJldmVydCB0byBzdWdnZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcwBTY3JlZW5wYXJ0czoKAFNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uAFNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZQBTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdABTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUAU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uAFNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUAU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0AFNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUAU2VhcmNoIGZvciA/IABTZWFyY2ggZm9yIGEgcGFja2FnZSB3aG9zZSBuYW1lIGNvbnRhaW5zIGEgc3RyaW5nAFNlY3Rpb24AU2VsZWN0IGN1cnJlbnRseS1oaWdobGlnaHRlZCBhY2Nlc3MgbWV0aG9kAFNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsCm9yIG1ha2UgZG8gd2l0aCB0aGUgcGVyLXBhY2thZ2UgbWFuYWdlbWVudCB0b29sICVzLgoAU3RhbmRhcmQAU3RkAFN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uAFRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGN1cnNvciBhZGRyZXNzaW5nLgoAVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgaGlnaGxpZ2h0aW5nLgoAVGhlIGxpbmUgeW91IGhhdmUgaGlnaGxpZ2h0ZWQgcmVwcmVzZW50cyBtYW55IHBhY2thZ2VzOyBpZiB5b3UgYXNrIHRvIGluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCB0aGUgY3JpdGVyaW9uIHNob3duLgoKSWYgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCB0byBhIGxpbmUgZm9yIGEgcGFydGljdWxhciBwYWNrYWdlIHlvdSB3aWxsIHNlZSBpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuCllvdSBjYW4gdXNlIGBvJyBhbmQgYE8nIHRvIGNoYW5nZSB0aGUgc29ydCBvcmRlciBhbmQgZ2l2ZSB5b3Vyc2VsZiB0aGUgb3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLgBUaGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuICBGb3IgZWFjaCBwYWNrYWdlIHlvdSBzZWUKZm91ciBjb2x1bW5zIGZvciBpdHMgY3VycmVudCBzdGF0dXMgb24gdGhlIHN5c3RlbSBhbmQgbWFyay4gIEluIHRlcnNlIG1vZGUgKHVzZQpgdicgdG8gdG9nZ2xlIHZlcmJvc2UgZGlzcGxheSkgdGhlc2UgYXJlIHNpbmdsZSBjaGFyYWN0ZXJzLCBmcm9tIGxlZnQgdG8gcmlnaHQ6CgogRXJyb3IgZmxhZzogU3BhY2UgLSBubyBlcnJvciAoYnV0IHBhY2thZ2UgbWF5IGJlIGluIGJyb2tlbiBzdGF0ZSAtIHNlZSBiZWxvdykKICAgICAgICAgICAgICBgUicgIC0gc2VyaW91cyBlcnJvciBkdXJpbmcgaW5zdGFsbGF0aW9uLCBuZWVkcyByZWluc3RhbGxhdGlvbjsKIEluc3RhbGxlZCBzdGF0ZTogICAgIFNwYWNlICAgIC0gbm90IGluc3RhbGxlZDsKICAgICAgICAgICAgICAgICAgICAgICBgKicgICAgIC0gaW5zdGFsbGVkOwogICAgICAgICAgICAgICAgICAgICAgIGAtJyAgICAgLSBub3QgaW5zdGFsbGVkIGJ1dCBjb25maWcgZmlsZXMgcmVtYWluOwogICBwYWNrYWdlcyBpbiB0aGVzZSB7IGBVJyAgICAgLSB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkOwogICBzdGF0ZXMgYXJlIG5vdCAgICB7IGBDJyAgICAgLSBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTsKICAgKHF1aXRlKSBwcm9wZXJseSAgeyBgSScgICAgIC0gaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKTsKICAgaW5zdGFsbGVkICAgICAgICAgeyBgVycsYHQnIC0gdHJpZ2dlcnMgYXJlIGF3YWl0ZWQgcmVzcC4gcGVuZGluZy4KIE9sZCBtYXJrOiB3aGF0IHdhcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZSBiZWZvcmUgcHJlc2VudGluZyB0aGlzIGxpc3Q7CiBNYXJrOiB3aGF0IGlzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlOgogIGAqJzogbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTsKICBgLSc6IG1hcmtlZCBmb3IgcmVtb3ZhbCwgYnV0IGFueSBjb25maWd1cmF0aW9uIGZpbGVzIHdpbGwgcmVtYWluOwogIGA9Jzogb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsOwogIGBfJzogbWFya2VkIGZvciBwdXJnZSBjb21wbGV0ZWx5IC0gZXZlbiByZW1vdmUgY29uZmlndXJhdGlvbjsKICBgbic6IHBhY2thZ2UgaXMgbmV3IGFuZCBoYXMgeWV0IHRvIGJlIG1hcmtlZCBmb3IgaW5zdGFsbC9yZW1vdmUvJmMuCgpBbHNvIGRpc3BsYXllZCBhcmUgZWFjaCBwYWNrYWdlJ3MgUHJpb3JpdHksIFNlY3Rpb24sIG5hbWUsIGluc3RhbGxlZCBhbmQKYXZhaWxhYmxlIHZlcnNpb24gbnVtYmVycyAoc2hpZnQtViB0byBkaXNwbGF5L2hpZGUpIGFuZCBzdW1tYXJ5IGRlc2NyaXB0aW9uLgoAVGhlcmUgYXJlIG5vIHBhY2thZ2VzLgBUeXBlIGRzZWxlY3QgLS1oZWxwIGZvciBoZWxwLgBVbmNsYXNzaWZpZWQAVXAgdG8gZGF0ZSBpbnN0YWxsZWQgcGFja2FnZXMAVXAtdG8tZGF0ZQBVcGRhdGUgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMsIGlmIHBvc3NpYmxlLgBVcGRhdGVkAFVwZGF0ZWQgcGFja2FnZXMgKG5ld2VyIHZlcnNpb24gaXMgYXZhaWxhYmxlKQBVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWzxhY3Rpb24+IC4uLl0KCgBXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy4KCllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZQpmb3IgaW5zdGFsbGF0aW9uLiAgU2luY2UgeW91IGRvIG5vdCBoYXZlIHRoZSBwcml2aWxlZ2UgbmVjZXNzYXJ5IHRvIHVwZGF0ZQpwYWNrYWdlIHN0YXRlcywgeW91IGFyZSBpbiBhIHJlYWQtb25seSBtb2RlLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlCmxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCBvYnNlcnZlCnRoZSBzdGF0dXMgb2YgdGhlIHBhY2thZ2VzIGFuZCByZWFkIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uCgpZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS4KTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXQKYW55IHRpbWUgZm9yIGhlbHAuCgpXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIGJyb3dzaW5nLCBwcmVzcyBgUScgb3IgPGVudGVyPiB0byBxdWl0LgoKUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuCgBXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy4KCllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZQpmb3IgaW5zdGFsbGF0aW9uLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlIGxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzLAptYXJrIHBhY2thZ2VzIGZvciBpbnN0YWxsYXRpb24gKHVzaW5nIGArJykgb3IgZGVpbnN0YWxsYXRpb24gKHVzaW5nIGAtJykuClBhY2thZ2VzIGNhbiBiZSBtYXJrZWQgZWl0aGVyIHNpbmdseSBvciBpbiBncm91cHM7IGluaXRpYWxseSB5b3Ugd2lsbCBzZWUgdGhhdAp0aGUgbGluZSBgQWxsIHBhY2thZ2VzJyBpcyBzZWxlY3RlZC4gIGArJywgYC0nIGFuZCBzbyBvbiB3aWxsIGFmZmVjdCBhbGwgdGhlCnBhY2thZ2VzIGRlc2NyaWJlZCBieSB0aGUgaGlnaGxpZ2h0ZWQgbGluZS4KClNvbWUgb2YgeW91ciBjaG9pY2VzIHdpbGwgY2F1c2UgY29uZmxpY3RzIG9yIGRlcGVuZGVuY3kgcHJvYmxlbXM7IHlvdSB3aWxsIGJlCmdpdmVuIGEgc3ViLWxpc3Qgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2VzLCBzbyB0aGF0IHlvdSBjYW4gc29sdmUgdGhlIHByb2JsZW1zLgoKWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuCk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0CmFueSB0aW1lIGZvciBoZWxwLgoKV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBzZWxlY3RpbmcgcGFja2FnZXMsIHByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBjaGFuZ2VzLApvciBgWCcgdG8gcXVpdCB3aXRob3V0IHNhdmluZyBjaGFuZ2VzLiBBIGZpbmFsIGNoZWNrIG9uIGNvbmZsaWN0cyBhbmQKZGVwZW5kZW5jaWVzIHdpbGwgYmUgZG9uZSAtIGhlcmUgdG9vIHlvdSBtYXkgc2VlIGEgc3VibGlzdC4KClByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LgoAWHRyAFtBXWNjZXNzAFtDXW9uZmlnAFtJXW5zdGFsbABbUV11aXQAW1JdZW1vdmUAW1NdZWxlY3QAW1VdcGRhdGUAW25vdCBib3VuZF0AW3VuazogJWRdAGEAYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nAGJVRwBicmVha3MAYwBjb2xvdXIAY29sb3VyIGF0dHJpYnV0ZQBjb25mbGljdHMgd2l0aABjb3VsZG4ndCBvcGVuIGRlYnVnIGZpbGUgYCUuMjU1cycKAGRlcGVuZHMgb24AZG91cGRhdGUgZmFpbGVkAGRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkAGRzZWxlY3QgLSBpbnNwZWN0aW9uIG9mIHBhY2thZ2Ugc3RhdGVzAGRzZWxlY3QgLSBsaXN0IG9mIGFjY2VzcyBtZXRob2RzAGRzZWxlY3QgLSBtYWluIHBhY2thZ2UgbGlzdGluZwBkc2VsZWN0IC0gcmVjdXJzaXZlIHBhY2thZ2UgbGlzdGluZwBkc2VsZWN0IGFuZCBkcGtnIGNhbiBkbyBhdXRvbWF0aWMgaW5zdGFsbGF0aW9uLCBsb2FkaW5nIHRoZSBwYWNrYWdlIGZpbGVzIHRvIGJlCmluc3RhbGxlZCBmcm9tIG9uZSBvZiBhIG51bWJlciBvZiBkaWZmZXJlbnQgcG9zc2libGUgcGxhY2VzLgoKVGhpcyBsaXN0IGFsbG93cyB5b3UgdG8gc2VsZWN0IG9uZSBvZiB0aGVzZSBpbnN0YWxsYXRpb24gbWV0aG9kcy4KCk1vdmUgdGhlIGhpZ2hsaWdodCB0byB0aGUgbWV0aG9kIHlvdSB3aXNoIHRvIHVzZSwgYW5kIGhpdCBFbnRlci4gIFlvdSB3aWxsIHRoZW4KYmUgcHJvbXB0ZWQgZm9yIHRoZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byBkbyB0aGUgaW5zdGFsbGF0aW9uLgoKQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzCmRpc3BsYXllZCBpbiB0aGUgYm90dG9tIGhhbGYgb2YgdGhlIHNjcmVlbi4KCklmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlIGxpc3QKb2YgaW5zdGFsbGF0aW9uIG1ldGhvZHMuCgpBIGZ1bGwgbGlzdCBvZiBrZXlzdHJva2VzIGlzIGF2YWlsYWJsZSBieSBwcmVzc2luZyBgaycgbm93LCBvciBmcm9tIHRoZSBoZWxwCm1lbnUgcmVhY2hhYmxlIGJ5IHByZXNzaW5nIGA/Jy4KAGVuaGFuY2VzAGVycm9yIGR1cmluZyByZWFkIG9mIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcycAZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcycAZXJyb3IgaW4gcmVndWxhciBleHByZXNzaW9uAGVycm9yIHJlYWRpbmcgYWNrbm93bGVkZ2VtZW50IG9mIHByb2dyYW0gZmFpbHVyZSBtZXNzYWdlAGVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscABlcnJvciByZWFkaW5nIG9wdGlvbnMgZmlsZSBgJS4yNTBzJwBmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIAZmFpbGVkIHRvIGJsb2NrIFNJR1dJTkNIAGZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkAGZhaWxlZCB0byBjcmVhdGUgaGVhZGluZyBwYWQAZmFpbGVkIHRvIGNyZWF0ZSBpbmZvIHBhZABmYWlsZWQgdG8gY3JlYXRlIHF1ZXJ5IHdpbmRvdwBmYWlsZWQgdG8gY3JlYXRlIHRoaXNzdGF0ZSBwYWQAZmFpbGVkIHRvIGNyZWF0ZSB0aXRsZSB3aW5kb3cAZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3cAZmFpbGVkIHRvIGdldCBvbGQgU0lHV0lOQ0ggc2lnYWN0AGZhaWxlZCB0byBnZXQgb2xkIHNpZ25hbCBtYXNrAGZhaWxlZCB0byBnZXRjaCBpbiBtYWluIG1lbnUAZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIAGZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnAGZhaWxlZCB0byByZXN0b3JlIG9sZCBTSUdXSU5DSCBzaWdhY3QAZmFpbGVkIHRvIHJlc3RvcmUgb2xkIHNpZ25hbCBtYXNrAGZhaWxlZCB0byBzZXQgbmV3IFNJR1dJTkNIIHNpZ2FjdABmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSABnZXRjaCBmYWlsZWQAaGFsZiBpbnN0YWxsZWQAaG9sZABpAGluZGV4IHN0cmluZyB0b28gbG9uZwBpbnN0YWxsAGluc3RhbGxhdGlvbiBzY3JpcHQAaW5zdGFsbGVkAGludmFsaWQgc2VhcmNoIG9wdGlvbiBnaXZlbgBpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQAbWVudQBtZXRob2QgYCUuMjUwcycgaGFzIG5hbWUgdGhhdCBpcyB0b28gbG9uZyAoJWQgPiAlZCBjaGFyYWN0ZXJzKQBuZXcgcGFja2FnZQBuZXdsaW5lIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydABuZXdsaW5lIGJlZm9yZSBzdW1tYXJ5AG5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZQBub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkAG5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZABub3QgaW5zdGFsbGVkAHByZS1kZXBlbmRzIG9uAHByb3ZpZGVzAHB1cmdlAHEAcXVlcnkvc2V0dXAgc2NyaXB0AHIAcmVjb21tZW5kcwByZW1vdmUAcmVtb3ZlZCAoY29uZmlncyByZW1haW4pAHJlcGxhY2VzAHMAc2NyZWVuIHBhcnQAc3VnZ2VzdHMAc3ludGF4IGVycm9yIGluIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcycgLS0gJXMAdGVybWluYWwgbGFja3MgbmVjZXNzYXJ5IGZlYXR1cmVzLCBnaXZpbmcgdXAAdHJpZ2dlcmVkAHUAdW5hYmxlIHRvIGFjY2VzcyBtZXRob2Qgc2NyaXB0IGAlLjI1MHMnAHVuYWJsZSB0byBjbG9zZSBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcycAdW5hYmxlIHRvIGluc3RhbGwgbmV3IG9wdGlvbiBhcyBgJS4yNTBzJwB1bmFibGUgdG8gb3BlbiBjdXJyZW50IG9wdGlvbiBmaWxlIGAlLjI1MHMnAHVuYWJsZSB0byBvcGVuIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJwB1bmFibGUgdG8gb3BlbiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJwB1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcwB1bmFibGUgdG8gcmVhZCBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnAHVuYWJsZSB0byBzdGF0IG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnAHVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnAHVua25vd24gYWN0aW9uIHN0cmluZyBgJS41MHMnAHVucGFja2VkIChub3Qgc2V0IHVwKQB1cGRhdGUgYXZhaWxhYmxlIGxpc3Qgc2NyaXB0AFByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjE1LjQKUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmcKUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMApQTy1SZXZpc2lvbi1EYXRlOiAyMDA5LTA5LTI3IDAyOjQxKzAxMDAKTGFzdC1UcmFuc2xhdG9yOiBXaWt0b3IgV2FuZGFjaG93aWN6IDxzaXJ5ZXNAZ21haWwuY29tPgpMYW5ndWFnZS1UZWFtOiBQb2xpc2ggPGRlYmlhbi1sMTBuLXBvbGlzaEBsaXN0cy5kZWJpYW4ub3JnPgpMYW5ndWFnZTogcGwKTUlNRS1WZXJzaW9uOiAxLjAKQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04CkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKUGx1cmFsLUZvcm1zOiBucGx1cmFscz0zOyBwbHVyYWw9bj09MSA/IDAgOiBuJTEwPj0yICYmIG4lMTA8PTQgJiYgKG4lMTAwPDEwIHx8IG4lMTAwPj0yMCkgPyAxIDogMjsKAAoKJXM6ICVzCgAKClBvcnVzemFuaWU6IF5QIG9yYXogXk4sIGtsYXdpc3plIGt1cnNvcmEsIHBpZXJ3c3plIGxpdGVyeSBsdWIgY3lmcnk7CldjacWbbmlqIDxlbnRlcj4gYWJ5IHBvdHdpZXJkemnEhyB3eWLDs3IuICBeTCAtIG9kxZt3aWXFvGVuaWUgZWtyYW51LgoKAAoKVHJ5YiB0eWxrbyBkbyBvZGN6eXR1OiBtb8W8bmEgamVkeW5pZSBwcnplZ2zEhWRhxIcgbGlzdMSZIHBha2lldMOzdyEACldjacWbbmlqIDxlbnRlcj4sIGFieSBrb250eW51b3dhxIcuACAAICAtLSAlZCUlLCB3Y2nFm25paiAAIChhbGZhYmV0eWN6bmllKQAgKGRvc3TEmXBuLiwgcHJpb3J5dGV0KQAgKGRvc3TEmXBuLiwgc2VrY2phKQAgKHdnIGRvc3TEmXBub8WbY2kpACAod2cgcHJpb3J5dGV0dSkAICh3ZyBzZWtjamkpACAod2cgc3RhbnUpACAoc3RhbiwgcHJpb3J5dGV0KQAgKHN0YW4sIHNla2NqYSkAIG5pZSB3eWRhamUgc2nEmSBiecSHIGRvc3TEmXBueQoAIHd5YsOzcjorLz0vLSBvZ8OzbG5pZTp2IHBvbW9jOj8AIHd5YsOzcjorLz0vLSBzemN6ZWfDs8WCb3dvOnYgcG9tb2M6PwAgbHViIAAgb2fDs2xuaWU6diBwb21vYzo/ACBzemN6ZWfDs8WCb3dvOnYgcG9tb2M6PwAhQsWCxIVkIQAlLSpzICVzJXMlczsgICVzIChiecWCOiAlcykuICAlcwAlcyAlcyBwYWtpZXR5ACVzICVzIHBha2lldHkgdyBzZWtjamkgJXMAJXMgJXMgcGFraWV0eSBiZXogc2VrY2ppACVzIC0gd2nEmWNlagAlcyBwYWtpZXR5IHcgc2VrY2ppICVzACVzIHBha2lldHkgYmV6IHNla2NqaQAlcyAtIHBvd3LDs3QAKiBQb2TFm3dpZXRsZW5pZTogSmVkbmEgeiBsaW5paSBqZXN0IHBvZMWbd2lldGxvbmEuIE9rcmXFm2xhIG9uYSBwYWtpZXQoeSksCiAga3TDs3JlZ28oeWNoKSBzdGFuIHpvc3RhbmllIHptaWVuaW9ueSBwbyB3Y2nFm25pxJljaXUgIisiLCAiLSIgaSAiXyIuCgoqIFBhc2VrIG5hIMWbcm9ka3UgZWtyYW51IHd5xZt3aWV0bGEgaW5mb3JtYWNqZSBvIHN0YW5pZSBwYWtpZXR1LCBrdMOzcnkgem9zdGHFggogIHdza2F6YW55IGt1cnNvcmVtLCBsdWIgd3nFm3dpZXRsYSBrcsOzdGtpIG9waXMgZ3J1cHksIHcgcHJ6eXBhZGt1IGdkeSB0YWthCiAgem9zdGFuaWUgd3NrYXphbmEuIEplxbxlbGkgbmllIHJvenVtaWUgc2nEmSB6bmFjemVuaWEgcG9zemN6ZWfDs2xueWNoIHpuYWvDs3cKICBvem5hY3phasSFY3ljaCBzdGFuIHBha2lldHUsIHBlxYJueSBvcGlzIHN0YW51IHd5YnJhbmVnbyBwYWtpZXR1IG1vxbxuYSB6bmFsZcW6xIcKICBuYSB0eW0gcGFza3UgKG1vxbxuYSB0YWvFvGUgc2tvcnp5c3RhxIcgeiBrbGF3aXN6YSAidiIgcHJ6ZcWCxIVjemFqxIVjZWdvIGxpc3TEmQogIG5hIHRyeWIgc3pjemVnw7PFgm93eSkuCgoqIE5hIGRvbGUgZWtyYW51IHd5xZt3aWV0bGFuZSBzxIUgc3pjemVnw7PFgm93ZSBpbmZvcm1hY2plIG8gd3NrYXphbnltIGt1cnNvcmVtCiAgcGFraWVjaWUgKGplxZtsaSB3IG9nw7NsZSB6b3N0YcWCIHdza2F6YW55KS4KCiAgTW/FvG5hIHd5xZt3aWV0bGnEhyBzemN6ZWfDs8WCb3d5IG9waXMgcGFraWV0dSwgaW5mb3JtYWNqZSBvIHN0YW5pZSBwYWtpZXR1CiAgcG9icmFuZSB6IGJhenkgZGFueWNoIHN5c3RlbXUgcGFraWV0w7N3IG9yYXogaW5mb3JtYWNqZSBvIGtvbmZsaWt0YWNoIGx1YgogIHByb2JsZW1hY2ggeiB6YWxlxbxub8WbY2lhbWkgZGFuZWdvIHBha2lldHUgKGRsYSBsaXN0eSBrb25mbGlrdMOzdy96YWxlxbxub8WbY2kpLgoKICBLbGF3aXN6ZW0gImkiIG1vxbxuYSB3eWJyYcSHIHJvZHphaiB3ecWbd2lldGxhbmVqIGluZm9ybWFjamksIGEga2xhd2lzemVtICJJIgogIG1vxbxuYSB1a3J5xIcgdG8gb2tubyBsdWIgamUgcm96c3plcnp5xIcgbmEgd2nEmWtzesSFIGN6xJnFm8SHIGVrcmFudS4KADxzdGFuZGFyZG93ZSB3eWrFm2NpZSBixYLEmWTDs3c+ADxzdGFuZGFyZG93ZSB3eWrFm2NpZT4APwBPem5hY3plbmllAFd5Y29mYW5pZSBzacSZIGJleiBkb2tvbmFuaWEgem1pYW4ATWV0b2RhIGRvc3TEmXB1ICIlcyIuAEFrY2plOgogIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0CgoAV3N6eXN0a2llAFdzenlzdGtpZSBwYWtpZXR5AEF0cnlidXR5OgoARG9zdMSZcG5lAERvc3TEmXBuZQBJbmZvcm1hY2plIG8gZG9zdMSZcG5laiB3ZXJzamkgcGFraWV0dQBQYWtpZXR5IGRvc3TEmXBuZSAoamVzemN6ZSBuaWUgemFpbnN0YWxvd2FuZSkAVXN6a29kem9uZQBQYWtpZXR5IHVzemtvZHpvbmUgcG9kY3phcyBpbnN0YWxhY2ppAFd5YsOzciBtZXRvZHkgZG9zdMSZcHUuAEtvbG9yeToKAEtvbmZpZ3VyYWNqYSBwYWtpZXTDs3csIGt0w7NyZSBwb3pvc3RhxYJ5IG5pZXNrb25maWd1cm93YW5lLgBDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi4KQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4KAFByemXFgsSFY3phbmllIGVrcmFuw7N3IHogaW5mb3JtYWNqYW1pAERlYmlhbiAiJXMiLCBuYWvFgmFka2EgbmEgcHJvZ3JhbSB6YXJ6xIVkemFuaWEgcGFraWV0YW1pLCB3ZXJzamEgJXMuCgBSb3p3acSFenl3YW5pZSBwcm9ibGVtw7N3IHphbGXFvG5vxZtjaS9rb25mbGlrdMOzdyAtIHdwcm93YWR6ZW5pZS4KCkplZGVuIGx1YiB3acSZY2VqIHd5YnJhbnljaCBwYWtpZXTDs3cgcG93b2R1amUga29uZmxpa3QgbHViIHByb2JsZW0gemFsZcW8bm/Fm2NpIC0Kbmlla3TDs3JlIHBha2lldHkgbW9nxIUgem9zdGHEhyB6YWluc3RhbG93YW5lIHR5bGtvIHdyYXogeiBpbm55bWkgbHViIG5pZSBtb2fEhQppc3RuaWXEhyB3IHN5c3RlbWllIHJhemVtIGplZG5vY3plxZtuaWUuCgpVa2HFvGUgc2nEmSBsaXN0YSB6YXdpZXJhasSFY2EgcHJvYmxlbWF0eWN6bmUgcGFraWV0eS4gT2tubyBwb25pxbxlaiBsaXN0eSBwYWtpZXTDs3cKcG9rYXp1amUgcm9kemFqIGtvbmZsaWt0dSBpIHphbGXFvG5vxZtjaTsgbW/FvG5hIHXFvHnEhyBrbGF3aXN6YSAiaSIgZG8gcHJ6ZcWCxIVjemFuaWEKc2nEmSBwb21pxJlkenkgdMSFIGluZm9ybWFjasSFIGEgb3Bpc2VtIHBha2lldHUuCgpab3N0YcWCIHByenlnb3Rvd2FueSB6ZXN0YXcgcGFraWV0w7N3ICJzdWdlcm93YW55Y2giIHdyYXogemUgd3N0xJlwbnltaQp1c3Rhd2llbmlhbWkgZG90eWN6xIVjeW1pIGljaCBpbnN0YWxhY2ppLCB3acSZYyBqZcWbbGkgc2nEmSBjaGNlLCBtb8W8bmEgamUKemFha2NlcHRvd2HEhyBuYWNpc2thasSFYyA8ZW50ZXI+LiBNb8W8bmEgYW51bG93YcSHIHByb2JsZW1hdHljem5lIHptaWFueQpuYWNpc2thasSFYyAiWCIsIGEgdHltIHNhbXltIHBvd3JhY2FqxIVjIGRvIGfFgsOzd25laiBsaXN0eS4KCk1vxbxuYSByw7N3bmllxbwgcG9ydXN6YcSHIHNpxJkgcG8gbGnFm2NpZSBpIHptaWVuaWHEhyB1c3Rhd2llbmlhIHRhaywgYnkKZG9zdG9zb3dhxIcgamUgZG8gc3dvaWNoIHBvdHJ6ZWIgbHViIG9kcnp1Y2nEhyBzdWdlc3RpZSBkc2VsZWN0IHXFvHl3YWrEhWMKd2llbGtpY2ggbGl0ZXIgIkQiIGx1YiAiUiIgKHpvYmFjeiBvcGlzIGtsYXdpc3p5KS4gVcW8eXdhasSFYyBrbGF3aXN6YQoiUSIsIG1vxbxuYSB6bXVzacSHIGRzZWxlY3QgZG8gemFha2NlcHRvd2FuaWEgYWt0dWFsbmllIHByemVkc3Rhd2lvbmVqCnN5dHVhY2ppLCB3IHByenlwYWRrdSBnZHkgY2hjZSBzacSZIHptaWVuacSHIHBvZGFuZSB6YWxlY2VuaWEgbHViIGdkeSB1d2HFvGEKc2nEmSwgxbxlIGRzZWxlY3QgcG9wZcWCbmnFgiBixYLEhWQuCgpQcm9zesSZIHdjaXNuxIXEhyA8c3BhY2rEmT4sIGFieSBvcHXFm2NpxIcgZWtyYW4gcG9tb2N5IGkgcHJ6ZWrFm8SHIGRvIGxpc3R5IHBha2lldMOzdzsgcHJvc3rEmSBwYW1pxJl0YcSHLCDFvGUgIj8iIHByenl3b8WCdWplIHBvbm93bmllIHRlbiBla3Jhbi4KAE9waXMAV3liw7NyIHBha2lldMOzdywgY3rEmcWbxIcgMTogbGlzdGEgcGFraWV0w7N3IGkgb3puYWN6ZW5pZSBzdGFudQBXeWLDs3IgcGFraWV0w7N3LCBjesSZxZvEhyAyOiBrdXJzb3I7IHd5xZt3aWV0bGFuZSBpbmZvcm1hY2plAEVJT00ARU9GIHByemVkIG5henfEhSBvcGNqaQBFT0YgcHJ6ZWQgcG9kc3Vtb3dhbmllbQBFT0YgdyBjacSFZ3Ugem5ha8OzdyBpbmRla3N1AEVPRiB3IG5hendpZSBvcGNqaQBFT0YgdyBwb2RzdW1vd2FuaXUgLSBicmFrIHpuYWt1IG5vd2VqIGxpbmlpAELFgsSFZABCxYLEhWQ6IABXeWphxZtuaWVuaWUARG9kYXRrb3dlAEtvbmllYyBsaXN0eQBQb2N6xIV0ZWsgbGlzdHkASW5mb3JtYWNqZSBwb21vY3kgc8SFIGRvc3TEmXBuZSBwb2QgbmFzdMSZcHVqxIVjeW1pIHRlbWF0YW1pOgBQb21vYzogAFdhxbwAV2HFvG5lAFphaW5zdC4ASW5zdGFsYWNqYSBpIHVha3R1YWxuaWVuaWUgd3licmFueWNoIHBha2lldMOzdy4AWmFpbnN0YWxvd2FuZQBJbmZvcm1hY2plIG8gemFpbnN0YWxvd2FuZWogd2Vyc2ppIHBha2lldHUAUGFraWV0eSB6YWluc3RhbG93YW5lAHphaW5zdGFsb3dhbnk/AFJlbGFjamUAV3Byb3dhZHplbmllIGRvIGxpc3R5IGtvbmZsaWt0w7N3L3phbGXFvG5vxZtjaQBXcHJvd2FkemVuaWUgZG8gd3lib3J1IG1ldG9keSBpbnN0YWxhY2ppAFdwcm93YWR6ZW5pZSBkbyB3eWJvcnUgcGFraWV0w7N3AFdwcm93YWR6ZW5pZSBkbyBwcnplZ2zEhWRhcmtpIGxpc3R5IHBha2lldMOzdyAodHlsa28gZG8gb2Rjenl0dSkATmllcHJhd2lkxYJvd3kgJXMgIiVzIgoAU2tvamFyemVuaWEga2xhd2lzenkAU3BpcyBrbGF3aXN6eQBTcGlzIGtsYXdpc3p5IGRsYSB3eWJvcnUgbWV0b2R5IGluc3RhbGFjamkAV3nFgsSFY3plbmllIHN6Y3plZ8OzxYJvd3ljaCBpbmZvcm1hY2ppAFfFgsSFY3plbmllIHN6Y3plZ8OzxYJvd3ljaCBpbmZvcm1hY2ppAFphem5hY3plbmllIHBha2lldHUgZG8gd3ljenlzemN6ZW5pYQBaYXpuYWN6ZW5pZSBwYWtpZXR1IGRvIHVzdW5pxJljaWEAWmF6bmFjemVuaWUgcGFraWV0dSBkbyBpbnN0YWxhY2ppAFphem5hY3pvbnkgZG8AS2xhd2lzemUgcnVjaHU6IE5hc3TEmXBueS9Qb3ByemVkbmksIEfDs3JhL0TDs8WCLCBEbyBnw7NyeS9XIGTDs8WCOgogIGosIFN0cnphxYJrYS13LWTDs8WCLCAgICBrLCBTdHJ6YcWCa2EtZG8tZ8OzcnksICBydWNoIGt1cnNvcmEKICBOLCBQYWdlLWRvd24sIFNwYWNqYSAgUCwgUGFnZS11cCwgQmFja3NwYWNlIHByemV3aW5pxJljaWUgbGlzdHkgbyAxIGVrcmFuCiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICBwcnpld2luacSZY2llIGxpc3R5IG8gMSBsaW5pxJkKICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgIHNrb2sgbmEgcG9jesSFdGVrL2tvbmllYyBsaXN0eQogIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgcHJ6ZXdpbmnEmWNpZSBpbmZvIG8gMSBla3JhbgogIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgcHJ6ZXdpbmnEmWNpZSBpbmZvIG8gMSBsaW5pxJkKICBCLCBTdHJ6YcWCa2Etdy1sZXdvICAgIEYsIFN0cnphxYJrYS13LXByYXdvICAgcHJ6ZXN1bmnEmWNpZSB3IGJvayAxLzMgZWtyYW51CiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICBwcnplc3VuacSZY2llIHcgYm9rIG8gMSB6bmFrCgpaYXpuYWN6ZW5pZSBwYWtpZXTDs3cgZG8gcMOzxbpuaWVqc3plZ28gcHJ6ZXR3YXJ6YW5pYToKICssIEluc2VydCAgaW5zdGFsYWNqYSBsdWIgYWt0dWFsaXphY2phICAgPSwgSCAgd3N0cnp5bWFuaWUKIC0sIERlbGV0ZSAgdXN1bmnEmWNpZSAgICAgICAgICAgICAgICAgICAgIDosIEcgIHBvbm93aWVuaWUgcHJ6ZXR3YXJ6YW5pYQogXyAgICAgICAgICB1c3VuacSZY2llIGkgd3ljenlzemN6ZW5pZSBrb25maWd1cmFjamkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUG96b3N0YcWCZSBrbGF3aXN6ZToKWmFrb8WEY3plbmllIHd5Ym9ydSBwYWtpZXTDs3c6ICAgICAgICAgICAgICAgICAgID8sIEYxIHByenl3b8WCYW5pZSBwb21vY3kKIFJldHVybiAgUG90d2llZMW6LCB3eWpkxbogKHNwcmF3ZMW6IHphbGXFvG5vxZtjaSkgIGksIEkgIHByemXFgsSFY3ovd3nFgsSFY3ogaW5mb3JtYWNqZQogICBRICAgICBQb3R3aWVkxbosIHd5amTFuiAoemlnbm9ydWogemFsZcW8bm/Fm2NpKSBvLCBPICB6bWlhbmEgbWV0b2R5IHNvcnRvd2FuaWEKIFgsIEVzYyAgV3lqZMW6LCBhbnVsdWogd3N6ZWxraWUgem1pYW55ICAgICAgICAgdiwgViAgem1pYW5hIHNwb3NvYnUgd3nFm3dpZXRsYW5pYQogICBSICAgICBQcnp5d3LDs2NlbmllIHN0YW51IHByemVkIHd5Ym9yZW0gICAgICBebCAgICBvZMWbd2llxbxlbmllIGVrcmFudQogICBVICAgICBXeWJpZXJ6IHN1Z2Vyb3dhbmUgcGFraWV0eSAgICAgICAgICAgICAvICAgIHN6dWthaiAoUmV0dXJuIC0gYW51bHVqKQogICBEICAgICBXeWJpZXJ6IG5pZXpixJlkbmUgcGFraWV0eSAgICAgICAgICAgICBuLCBcICAgcG93dMOzcnogb3N0YXRuaWUgc3p1a2FuaWUKAEtsYXdpc3plIHJ1Y2h1OiBOYXN0xJlwbnkvUG9wcnplZG5pLCBHw7NyYS9Ew7PFgiwgRG8gZ8OzcnkvVyBkw7PFgjoKICBqLCBTdHJ6YcWCa2Etdy1kw7PFgiAgICAgaywgU3RyemHFgmthLWRvLWfDs3J5ICAgICBydWNoIGt1cnNvcmEKICBOLCBQYWdlLWRvd24sIFNwYWNqYSAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgcHJ6ZXdpbmnEmWNpZSBsaXN0eSBvIDEgZWtyYW4KICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgcHJ6ZXdpbmnEmWNpZSBsaXN0eSBvIDEgbGluacSZCiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIHNrb2sgbmEgcG9jesSFdGVrL2tvbmllYyBsaXN0eQogIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBwcnpld2luacSZY2llIGluZm8gbyAxIGVrcmFuCiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHByemV3aW5pxJljaWUgaW5mbyBvIDEgbGluacSZCiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHByemVzdW5pxJljaWUgdyBib2sgMS8zIGVrcmFudQogIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwcnplc3VuacSZY2llIHcgYm9rIG8gMSB6bmFrCihUbyBzxIUgdGUgc2FtZSBrbGF3aXN6ZSBydWNodSBqYWsgcHJ6eSB3eWJvcnplIHBha2lldMOzdy4pCgpXeWrFm2NpZToKIFJldHVybiwgRW50ZXIgICAgd3liw7NyIG1ldG9keSBpbnN0YWxhY2ppIGkgd3l3b8WCYW5pZSBqZWoga29uZmlndXJhY2ppCiB4LCBYICAgICAgICAgICAgIHd5asWbY2llIGJleiBkb2tvbmFuaWEgem1pYW4gdyBkb3R5Y2hjemFzb3d5Y2ggdXN0YXdpZW5pYWNoCgpQb3pvc3RhxYJlOgogID8sIEhlbHAsIEYxICAgICAgd3l3b8WCYW5pZSBwb21vY3kKIF5sICAgICAgICAgICAgICAgIG9kxZt3aWXFvGVuaWUgZWtyYW51CiAgLyAgICAgICAgICAgICAgICB3eXN6dWtpd2FuaWUgKHJldHVybiAtIGFudWxvd2FuaWUpCiAgXCAgICAgICAgICAgICAgICBwb3d0w7NyemVuaWUgb3N0YXRuaWVnbyB3eXN6dWtpd2FuaWEKAFcgZMOzxYIAVyBnw7NyxJkATm93ZQBQYWtpZXR5IG5vd28gZG9zdMSZcG5lAEJyYWsgZG9zdMSZcG5lZ28gb3Bpc3UuAEJyYWsgZG9zdMSZcG5lZ28gd3lqYcWbbmllbmlhLgBQdXN0YSBzcGVjeWZpa2FjamEga29sb3J1CgBQYWtpZXR5IHd5Y29mYW5lIGx1YiBkb3N0xJlwbmUgdHlsa28gbG9rYWxuaWUAV3ljb2ZhbmUvbG9rYWxuZQBQb3ByemVkbmkgd3liw7NyAE9wYwBPcGNqb25hbG5lAE9wY2plOgogIC0tYWRtaW5kaXIgPGthdGFsb2c+ICAgICAgIFXFvHl3YSA8a2F0YWxvZ3U+IHphbWlhc3QgJXMuCiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgV8WCxIVjemEgdHJ5YiBla3NwZXJ0YS4KICAtLWRlYnVnIDxwbGlrPiB8IC1EPHBsaWs+ICBXxYLEhWN6YSBkZWJ1Z293YW5pZSwgd3lzecWCYSB3eWrFm2NpZSBkbyA8cGxpa3U+LgogIC0tY29sb3VyIHwgLS1jb2xvciBjesSZxZvEh193aWRva3U6W2tvbG9yX3Rla3N0dV0sW2tvbG9yX3TFgmFdWzphdHJbK2F0cisuLl1dCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgS29uZmlndXJ1amUga29sb3J5IGVrcmFudS4KCgBQYWtpZXQAV2NpxZtuaWogPGVudGVyPiwgYWJ5IGtvbnR5bnVvd2HEhy4KAE5hY2nFm25paiA/LCBieSBza29yenlzdGHEhyB6IHBvbW9jeSwgLiAoa3JvcGvEmSksIGJ5IHByemVqxZvEhyBkbyBuYXN0xJlwbmVnbwp0ZW1hdHUsIDxzcGFjasSZPiwgYnkgb3B1xZtjacSHIHBvbW9jLgBXeWJpZXJ6IGtsYXdpc3ogeiBwb3d5xbxzemVqIGxpc3R5LCA8c3BhY2rEmT4gbHViICJxIiwgYnkgb3B1xZtjacSHIApwb21vYywgbHViICIuIiAoa3JvcGvEmSksIGJ5IHByemVnbMSFZGHEhyBwbyBrb2xlaSBzdHJvbnkgcG9tb2N5LiAAUHJpb3J5dGV0AFd5Y3p5c3pjem9uZQBQYWtpZXR5IHd5Y3p5c3pjem9uZSBpIG5pZSB6YWluc3RhbG93YW5lAFd5asWbY2llIHogZHNlbGVjdC4AV3lqxZtjaWUgYmV6IHptaWFueSBtZXRvZHkgZG9zdMSZcHUAV3lqxZtjaWUgeiBwb3R3aWVkemVuaWVtIGJleiBzcHJhd2R6ZW5pYQBXeWrFm2NpZSB6IHBvdHdpZXJkemVuaWVtIGkgc3ByYXdkemVuaWVtIHphbGXFvG5vxZtjaQBXeWrFm2NpZSB6IG9kcnp1Y2VuaWVtIGtvbmZsaWt0w7N3L3N1Z2VzdGlpAFJFSU5TVEFMQUNKQQBPZMWbd2llxbxlbmllIGVrcmFudQBVc3V3YW5pZSBuaWVjaGNpYW55Y2ggcGFraWV0w7N3LgBVc3VuacSZdGUAUGFraWV0eSB1c3VuacSZdGUgaSBqdcW8IG5pZWRvc3TEmXBuZQBQYWtpZXR5IHVzdW5pxJl0ZSAocG96b3N0YcWCeSBwbGlraSBrb25maWd1cmFjeWpuZSkAUG93dMOzcnplbmllIG9zdGF0bmllZ28gd3lzenVraXdhbmlhLgBXeW0AV3l3b8WCYW5pZSBwb21vY3kgKHByemXFgsSFY3phbmllIGVrcmFuw7N3IHBvbW9jeSkAV3liw7NyIHBha2lldMOzdyBpbnN0YWxvd2FueWNoIHcgc3lzdGVtaWUuAFd5bWFnYW5lAFByenl3csOzY2VuaWUgb2JlY25pZSB6YWluc3RhbG93YW5lZ28gc3RhbnUgd3N6eXN0a2ljaCBwYWtpZXTDs3cAUHJ6eXdyw7NjZW5pZSDFvMSFZGFuZWdvIHN0YW51IHBha2lldMOzdwBQcnp5d3LDs2NlbmllIHBvcHJ6ZWRuaWVnbyBzdGFudSBwYWtpZXTDs3cAUHJ6eXdyw7NjZW5pZSBzdWdlcm93YW5lZ28gc3RhbnUgcGFraWV0w7N3AEN6xJnFm2NpIHdpZG9rdToKAFByemV3aW5pxJljaWUgcG9tb2N5L2luZm9ybWFjamkgdyBnw7NyxJkAUHJ6ZXdpbmnEmWNpZSBla3JhbnUgcG9tb2N5L2luZm9ybWFjamkgbyBqZWRuxIUgbGluacSZIHcgZ8OzcsSZAFByemV3aW5pxJljaWUgbGlzdHkgdyBnw7NyxJkAUHJ6ZXdpbmnEmWNpZSBsaXN0eSBvIGplZG7EhSBsaW5pxJkgdyBnw7NyxJkAUHJ6ZXdpbmnEmWNpZSBwb21vY3kvaW5mb3JtYWNqaSB3IGTDs8WCAFByemV3aW5pxJljaWUgZWtyYW51IHBvbW9jeS9pbmZvcm1hY2ppIG8gamVkbsSFIGxpbmnEmSB3IGTDs8WCAFByemV3aW5pxJljaWUgbGlzdHkgdyBkw7PFggBQcnpld2luacSZY2llIGxpc3R5IG8gamVkbsSFIGxpbmnEmSB3IGTDs8WCAFN6dWthaiA/IABXeXN6dWtpd2FuaWUgcGFraWV0dSBvIG5hendpZSB6YXdpZXJhasSFY2VqIGNpxIVnIHpuYWvDs3cAU2VrY2phAFd5YsOzciBtZXRvZHkgZG9zdMSZcHUAUHJvc3rEmSBwb3ByYXduaWUgdXN0YXdpxIcgem1pZW5uxIUgVEVSTSwgdcW8ecSHIGxlcHN6ZWdvIHRlcm1pbmFsYSwKbHViIHd5a29yenlzdGHEhyBuYXJ6xJlkemllIGRvIHphcnrEhWR6YW5pYSBwYWtpZXRhbWkgJXMuCgBad3ljemFqbmUAWnd5AFptaWFuYSBzcG9zb2J1IHVwb3J6xIVka293YW5pYSBwYWtpZXTDs3cAVGVybWluYWwgbmllIG9ic8WCdWd1amUgYWRyZXNvd2FuaWEga3Vyc29yYS4KAFRlcm1pbmFsIG5pZSBvYnPFgnVndWplIHBvZMWbd2lldGxhbmlhLgoAUG9kxZt3aWV0bG9uYSBsaW5pYSByZXByZXplbnR1amUgd2llbGUgcGFraWV0w7N3OyBqZcW8ZWxpIHpvc3RhbmllIHd5YnJhbmEgb3BlcmFjamEgaW5zdGFsYWNqaSwgdXN1bmnEmWNpYSwgd3ljenlzemN6ZW5pYSBsdWIgd3N0cnp5bWFuaWEsIGRvdHljennEhyBixJlkemllIHdzenlzdGtpY2ggcGFraWV0w7N3LCBrdMOzcmUgb2Rwb3dpYWRhasSFIHBvZGFuZW11IGtyeXRlcml1bS4KCk1vxbxuYSBwcnplc3VuxIXEhyBrdXJzb3IsIGFieSB3eWJyYcSHIGtvbmtyZXRueSBwYWtpZXQgb3JheiB1enlza2HEhyBpbmZvcm1hY2plIG8gbmltLgpNb8W8bmEgdcW8ecSHICJvIiBsdWIgIk8iLCBhYnkgem1pZW5pxIcga29sZWpub8WbxIcgdXBvcnrEhWRrb3dhbmlhIHBha2lldMOzdyBsdWIgemF6bmFjennEhyBwYWtpZXR5IHogaW5ueWNoIGdydXAuAEfDs3JuYSBjesSZxZvEhyBla3JhbnUgcHJ6ZWRzdGF3aWEgbGlzdMSZIHBha2lldMOzdy4gRGxhIGthxbxkZWdvIHBha2lldHUgd3nFm3dpZXRsYW5lCnPEhSBjenRlcnkga29sdW1ueSBvem5hY3phasSFY2UgYWt0dWFsbnkgamVnbyBzdGFuIHcgc3lzdGVtaWUgaSB6YXpuYWN6ZW5pZS4KVyB0cnliaWUgZG9tecWbbG55bSAoa2xhd2lzeiAidiIgcHJ6ZcWCxIVjemEgbmEgdHJ5YiBzemN6ZWfDs8WCb3d5KSBzxIUgdG8gY3p0ZXJ5CnpuYWtpLCB3eW1pZW5pYWrEhWMgb2QgbGV3ZWogc3Ryb255OgoKIEZsYWdhIGLFgsSZZHU6IFNwYWNqYSAtIGJyYWsgYsWCxJlkdSAoYWxlIHBha2lldCBtb8W8ZSBiecSHIHcgbmllcHJhd2lkxYJvd3ltIHN0YW5pZSkKICAgICAgICAgICAgICAgICJSIiAgLSBwb3dhxbxueSBixYLEhWQgcG9kY3phcyBpbnN0YWxhY2ppIC0ga29uaWVjem5hIHJlaW5zdGFsYWNqYQogU3RhbiB6YWluc3RhbG93YW5pYTogU3BhY2phICAtIG5pZSB6YWluc3RhbG93YW55CiAgICAgICAgICAgICAgICAgICAgICAiKiIgICAgIC0gemFpbnN0YWxvd2FueQogICAgICAgICAgICAgICAgICAgICAgIi0iICAgICAtIG5pZSB6YWluc3RhbG93YW55LCB6b3N0YcWCeSBwbGlraSBrb25maWd1cmFjeWpuZQogICAgICB0YWtpZSBwYWtpZXR5IHsgIlUiICAgICAtIHJvenBha293YW55LCBqZXN6Y3plIG5pZSBza29uZmlndXJvd2FueQogICBuaWUgc8SFIChjYcWCa2llbSkgeyAiQyIgICAgIC0gd3DDs8WCLXNrb25maWd1cm93YW55ICh3eXN0xIVwacWCIGLFgsSFZCkKICAgICAgICAgcHJhd2lkxYJvd28geyAiSSIgICAgIC0gd3DDs8WCLXphaW5zdGFsb3dhbnkgKHd5c3TEhXBpxYIgYsWCxIVkKS4KICAgICAgemFpbnN0YWxvd2FuZSB7ICJXIiwidCIgLSBvY3pla2l3YW5pZSBuYSB3eXp3YWxhY3plIGx1YiB3eXp3LiB6YXBsYW5vd2FuZQogUG9wcnplZG5pIHd5YsOzcjogdG8sIGNvIHpvc3RhxYJvIHd5YnJhbmUgcHJ6ZWQgcG9qYXdpZW5pZW0gc2nEmSB0ZWogbGlzdHk7CiBaYXpuYWN6ZW5pZTogdG8sIGNvIHpvc3RhxYJvIG9rcmXFm2xvbmUgZGxhIGRhbmVnbyBwYWtpZXR1OgogICIqIjogemF6bmFjem9ueSBkbyBpbnN0YWxhY2ppIGx1YiBha3R1YWxpemFjamkKICAiLSI6IHphem5hY3pvbnkgZG8gdXN1bmnEmWNpYSwgcGxpa2kga29uZmlndXJhY3lqbmUgem9zdGFuxIUgemFjaG93YW5lCiAgIj0iOiB3c3RyenltYW55OyBwYWtpZXQgbmllIGLEmWR6aWUgcHJ6ZXR3YXJ6YW55CiAgIl8iOiB6YXpuYWN6b255IGRvIHd5Y3p5c3pjemVuaWEgLSB3cmF6IHogcGxpa2FtaSBrb25maWd1cmFjeWpueW1pCiAgIm4iOiBub3d5IHBha2lldCwgamVzemN6ZSBuaWUgemF6bmFjem9ueSBkbyBpbnN0YWxhY2ppL3VzdW5pxJljaWEKClBvbmFkdG8ga2HFvGR5IHBha2lldCBtYSB3ecWbd2lldGxvbsSFIGluZm9ybWFjasSZIG8gcHJpb3J5dGVjaWUsIHNla2NqaSwgbmF6d2llLAp3ZXJzamkgemFpbnN0YWxvd2FuZWogaSBkb3N0xJlwbmVqIChzaGlmdC1WIHVrcnl3YS9wb2thenVqZSkgb3JheiBrcsOzdGtpIG9waXMuCgBOaWUgbWEgxbxhZG55Y2ggcGFraWV0w7N3LgBXcGlzeiBkc2VsZWN0IC0taGVscCBhYnkgb3RyenltYcSHIHBvbW9jLgBOaWVza2xhc3lmaWtvd2FuZQBQYWtpZXR5IGFrdHVhbG5lAEFrdHVhbG5lAFpha3R1YWxpem93YW5pZSBpbmZvcm1hY2ppIG8gZG9zdMSZcG55Y2ggcGFraWV0YWNoLgBEbyBha3R1YWxpemFjamkAUGFraWV0eSBkbyBha3R1YWxpemFjamkgKGRvc3TEmXBuYSBub3dzemEgd2Vyc2phKQBVxbx5Y2llOiAlcyBbPG9wY2phPiAuLi5dIFs8YWtjamE+IC4uLl0KCgBXaXRhaiB3IGfFgsOzd255bSBla3JhbmllIHd5Ym9ydSBwYWtpZXTDs3cgcHJvZ3JhbXUgZHNlbGVjdC4KClVrYcW8ZSBzacSZIGxpc3RhIHBha2lldMOzdywga3TDs3JlIHPEhSBqdcW8IHphaW5zdGFsb3dhbmUgbHViIG1vxbxuYSBqZSBkb3BpZXJvCnphaW5zdGFsb3dhxIcuIFBvbmlld2HFvCBuaWUgbWFzeiBvZHBvd2llZG5pY2ggdXByYXduaWXFhCBkbyBha3R1YWxpemFjamksCnpuYWpkdWplc3ogc2nEmSB3IHRyeWJpZSB0eWxrbyBkbyBvZGN6eXR1LiBQbyB0ZWogbGnFm2NpZSBtb8W8bmEgc2nEmQpwb3J1c3phxIcga2xhd2lzemFtaSBrdXJzb3JhIChwcm9zesSZIHByemVjenl0YcSHIGVrcmFuIHBvbW9jeSB6IG9waXNlbQprbGF3aXN6eSksIG9ic2Vyd293YcSHIHN0YW4gcGFraWV0w7N3IG9yYXogY3p5dGHEhyBpbmZvcm1hY2plIG8gbmljaC4KClphbGVjYW5lIGplc3QgemF6bmFqb21pZW5pZSBzacSZIHogb3Bpc2VtIGxpc3R5IGtsYXdpc3p5IG9yYXogZWtyYW51LgpXaWVsZSBwb21vY3kgbW/FvG5hIHV6eXNrYcSHIG5hY2lza2FqxIVjICI/IiB3IGthxbxkeW0gbW9tZW5jaWUuCgpQbyB6YWtvxYRjem9ueW0gcHJ6ZWdsxIVkYW5pdSBsaXN0eSBwYWtpZXTDs3csIHByb3N6xJkgd2Npc27EhcSHICJRIiBsdWIgPGVudGVyPi4KClByb3N6xJkgd2Npc25hxIcgPHNwYWNqxJk+LCBhYnkgb3B1xZtjacSHIGVrcmFuIHBvbW9jeSBpIHByemVqxZvEhyBkbyBsaXN0eSBwYWtpZXTDs3cuCgBXaXRhaiB3IGfFgsOzd255bSBla3JhbmllIHd5Ym9ydSBwYWtpZXTDs3cgcHJvZ3JhbXUgZHNlbGVjdC4KClVrYcW8ZSBzacSZIGxpc3RhIHBha2lldMOzdywga3TDs3JlIHPEhSBqdcW8IHphaW5zdGFsb3dhbmUgbHViIG1vxbxuYSBqZSBkb3BpZXJvCnphaW5zdGFsb3dhxIcuIFBvIGxpxZtjaWUgbW/FvG5hIHNpxJkgcG9ydXN6YcSHIGtsYXdpc3phbWkga3Vyc29yYS4gS2xhd2lzemVtCiIrIiBtb8W8bmEgemF6bmFjennEhyBwYWtpZXQgZG8gaW5zdGFsYWNqaSwga2xhd2lzemVtICItIiBkbyB1c3VuacSZY2lhLgoKUGFraWV0eSBtb2fEhSBiecSHIHphem5hY3phbmUgcG9qZWR5bmN6byBsdWIgZ3J1cGFtaS4gUG9jesSFdGtvd28ga3Vyc29yIHpuYWpkdWplCnNpxJkgbmEgcG96eWNqaSAiV3N6eXN0a2llIHBha2lldHkiLiBLbGF3aXN6ZSAiKyIsICItIiBwb3dvZHVqxIUgem1pYW7EmSBzdGFudQpkbGEgd3N6eXN0a2ljaCBwYWtpZXTDs3cgeiBkYW5laiBncnVweS4KCkN6YXNlbSB3eWLDs3IgcGFraWV0dSBwb3dvZHVqZSBrb25mbGlrdCBsdWIgcHJvYmxlbSB6YWxlxbxub8WbY2k7IHBvamF3aSBzacSZIHd0ZWR5Cmxpc3RhIHBha2lldMOzdywga3TDs3J5Y2ggZG90eWN6eSBkYW55IHByb2JsZW0sIGt0w7NyeSBuYWxlxbx5IHJvendpxIV6YcSHLgoKWmFsZWNhbmUgamVzdCB6YXpuYWpvbWllbmllIHNpxJkgeiBvcGlzZW0gbGlzdHkga2xhd2lzenkgb3JheiBla3JhbnUuCldpZWxlIHBvbW9jeSBtb8W8bmEgdXp5c2thxIcgbmFjaXNrYWrEhWMgIj8iIHcga2HFvGR5bSBtb21lbmNpZS4KCkplxbxlbGkgd3liw7NyIHBha2lldMOzdyB6b3N0YcWCIGRva29uYW55LCBuYWxlxbx5IHdjaXNuxIXEhyA8ZW50ZXI+IGRsYQogcG90d2llcmR6ZW5pYSB6bWlhbiBsdWIgIlgiLCBieSB3eWrFm8SHIGJleiBpY2ggemFwaXNhbmlhLiBab3N0YW5pZSBkb2tvbmFuZQogb3N0YXRlY3puZSBzcHJhd2R6ZW5pZSBrb25mbGlrdMOzdyBpIHphbGXFvG5vxZtjaSAtIHR1IHRlxbwgbW/FvGUgcG9qYXdpxIcgc2nEmQogbGlzdGEgcGFraWV0w7N3LgoKUHJvc3rEmSB3Y2lzbsSFxIcgPHNwYWNqxJk+LCBhYnkgb3B1xZtjacSHIGVrcmFuIHBvbW9jeSBpIHByemVqxZvEhyBkbyBsaXN0eSBwYWtpZXTDs3cuCgBEb2QAW0FdIERvc3TEmXAAW0NdIEtvbmZpZ3VyYWNqYQBbSV0gSW5zdGFsYWNqYQBbUV0gV3lqxZtjaWUAW1JdIFVzdXdhbmllAFtTXSBXeWLDs3IAW1VdIEFrdHVhbGl6YWNqYQBbbmllIHNrb2phcnpvbmVdAFtuaWV6bmFuZTogJWRdAGEAb2N6ZWtpd2FuaWUgbmEgcHJ6ZXR3b3J6ZW5pZSB3eXp3YWxhY3p5AELFgsSFAHVzemthZHphAGMAa29sb3IAYXRyeWJ1dHkga29sb3J1AHcga29uZmxpa2NpZSB6AG5pZSBtb8W8bmEgb3R3b3J6ecSHIHBsaWt1IGRlYnVnZ2VyYSAiJS4yNTVzIgoAd3ltYWdhAG5pZSBtb8W8bmEgd3lrb25hxIcgZnVua2NqaSAiZG91cGRhdGUiAG5pZSBtb8W8bmEgdWFrdHVhbG5pxIcgcHJvY2VkdXJ5IG9ic8WCdWdpIFNJR1dJTkNIAGRzZWxlY3QgLSBzdGFuIHBha2lldMOzdwBkc2VsZWN0IC0gbGlzdGEgbWV0b2QgZG9zdMSZcHUAZHNlbGVjdCAtIGxpc3RhIHBha2lldMOzdwBkc2VsZWN0IC0gbGlzdGEga29uZmxpa3TDs3cAUHJvZ3JhbXkgZHNlbGVjdCBpIGRwa2cgcG90cmFmacSFIGRva29uYcSHIGF1dG9tYXR5Y3puZWogaW5zdGFsYWNqaSwgcG9iaWVyYWrEhWMKcGxpa2kgcHJ6ZXpuYWN6b25lIGRvIHphaW5zdGFsb3dhbmlhIHogd2llbHUgcsOzxbxueWNoIG1vxbxsaXd5Y2ggbWllanNjLgoKVGEgbGlzdGEgcG96d2FsYSBuYSB3eWJyYW5pZSBqZWRuZWogeiBwb2RhbnljaCBtZXRvZCBpbnN0YWxhY2ppLgoKTmFqcGllcncgbmFsZcW8eSB3c2themHEhyB3eWJyYW7EhSBtZXRvZMSZIGluc3RhbGFjamkgaSB3Y2lzbsSFxIcgRW50ZXIuIE5hc3TEmXBuaWUKbmFsZcW8eSBvZHBvd2llZHppZcSHIG5hIHB5dGFuaWEgZG90eWN6xIVjZSB3eWJyYW5laiBtZXRvZHkuCgpQbyBwcnplc3VuacSZY2l1IGt1cnNvcmEgbmEgZGFuxIUgbWV0b2TEmSwgbmEgZG9sZSBla3JhbnUgcG9qYXdpIHNpxJkgamVqIG9waXMuCgpLbGF3aXN6ICJ4IiBzxYJ1xbx5IGRvIG9wdXN6Y3plbmlhIHRlaiBsaXN0eSBiZXogb2tyZcWbbGVuaWEgbWV0b2R5IGluc3RhbGFjamkuCgpQZcWCbnkgc3BpcyBrbGF3aXN6eSBkb3N0xJlwbnkgamVzdCBwbyB3Y2nFm25pxJljaXUga2xhd2lzemEgImsiIHRlcmF6LCBsdWIgeiBtZW51CnBvbW9jeSBkb3N0xJlwbmVnbyBww7PFum5pZWogcG9kIGtsYXdpc3plbSAiPyIuCgByb3pzemVyemEAbmllIG1vxbxuYSBvZGN6eXRhxIcgcGxpa3Ugb3BjamkgbWV0b2R5ICUuMjUwcwBuaWUgbW/FvG5hIG9kY3p5dGHEhyBwbGlrdSBvcGlzdSBvcGNqaSAlLjI1MHMAYsWCxIVkIHcgd3lyYcW8ZW5pdSByZWd1bGFybnltAG5pZSBtb8W8bmEgb2Rjenl0YcSHIHBvdHdpZWR6ZW5pYSBrb211bmlrYXTDs3cgYsWCxJlkw7N3IHByb2dyYW11AGLFgsSFZCBvZGN6eXR1IGtsYXdpYXR1cnkgdyBwb21vY3kAbmllIG1vxbxuYSBvZGN6eXRhxIcgcGxpa3Ugb3BjamkgIiUuMjUwcyIAbmllIG1vxbxuYSB6YXJlemVyd293YcSHIHBhciBrb2xvcnUAbmllIG1vxbxuYSB6YWJsb2tvd2HEhyBTSUdXSU5DSABuaWUgbW/FvG5hIHV0d29yennEhyBwb2xhIGxpc3R5AG5pZSBtb8W8bmEgdXR3b3J6ecSHIHBvbGEgbmFnxYLDs3drYQBuaWUgbW/FvG5hIHV0d29yennEhyBwb2xhIGluZm9ybWFjeWpuZWdvAG5pZSBtb8W8bmEgdXR3b3J6ecSHIG9rbmEgemFweXRhbmlhAG5pZSBtb8W8bmEgdXR3b3J6ecSHIHBvbGEgc3RhbnUAbmllIG1vxbxuYSB1dHdvcnp5xIcgb2tuYSB0eXR1xYJvd2VnbwBuaWUgbW/FvG5hIHV0d29yennEhyBva25hIGluZm9ybWFjeWpuZWdvAG5pZSBtb8W8bmEgcG9icmHEhyBwb3ByemVkbmllZ28gc3lnbmHFgnUgU0lHV0lOQ0gAbmllIG1vxbxuYSBwb2JyYcSHIHBvcHJ6ZWRuaWVqIG1hc2tpIHN5Z25hxYJ1AG5pZSBtb8W8bmEgd3l3b8WCYcSHICJnZXRjaCIgdyBnxYLDs3dueW0gbWVudQBuaWUgbW/FvG5hIHBvbm93bmllIHphYmxva293YcSHIFNJR1dJTkNIAG5pZSBtb8W8bmEgb2Rjenl0YcSHIHBsaWt1IG9waXN1IG9wY2ppICUuMjUwcwBuaWUgbW/FvG5hIG9kdHdvcnp5xIcgcG9wcnplZG5pZWdvIHN5Z25hxYJ1IFNJR1dJTkNIAG5pZSBtb8W8bmEgb2R0d29yennEhyBwb3ByemVkbmllaiBtYXNraSBzeWduYcWCdQBuaWUgbW/FvG5hIHVzdGF3acSHIG5vd2VnbyBzeWduYcWCdSBTSUdXSU5DSABuaWUgbW/FvG5hIG9kYmxva293YcSHIFNJR1dJTkNIAG5pZSBtb8W8bmEgd3lrb25hxIcgZnVua2NqaSAiZ2V0Y2giAHdww7PFgiB6YWluc3RhbG93YW55AHdzdHJ6eW1hbnkAaQBjacSFZyB6bmFrw7N3IGluZGVrc3UgamVzdCB6YSBkxYJ1Z2kAaW5zdGFsYWNqYQBza3J5cHQgaW5zdGFsYWN5am55AHphaW5zdGFsb3dhbnkAbmllcHJhd2lkxYJvd2Egb3BjamEgd3lzenVraXdhbmlhAG5pZSBwb3dpb2TFgm8gc2nEmSB3eXdvxYJhbmllIGlvY3RsKFRJT0NHV0lOU1opAG1lbnUAbWV0b2RhICIlLjI1MHMiIG1hIHphIGTFgnVnxIUgbmF6d8SZICglZCA+ICVkIHpuYWvDs3cpAG5vd3kgcGFraWV0AHpuYWsgbm93ZWogbGluaWkgcHJ6ZWQgbmF6d8SFIG9wY2ppAHpuYWsgbm93ZWogbGluaWkgcHJ6ZWQgcG9kc3Vtb3dhbmllbQB6bmFrIG5pZSBixJlkxIVjeSBsaXRlcsSFIGx1YiBjeWZyxIUgdyBuYXp3aWUgb3BjamkAem5hayBuaWUgYsSZZMSFY3kgY3lmcsSFIHRhbSBnZHppZSBqZXN0IHd5bWFnYW5hAHpuYWsgbmllIGLEmWTEhWN5IGxpdGVyxIUgbmEgcG9jesSFdGt1IG5hend5IG9wY2ppAG5pZSB6YWluc3RhbG93YW55AHd5bWFnYSB3c3TEmXBuaWUAZG9zdGFyY3phAHd5Y3p5c3pjem9ueQBxAHNrcnlwdCB6YXB5dGFuaWEvdXN0YXdpYW5pYQByAHBvbGVjYQB1c3V3YW5pZQB1c3VuacSZdHkgKHpvc3RhxYJ5IHBsaWtpIGtvbmZpZ3VyYWN5am5lKQB3eW1pZW5pYQBzAGN6xJnFm8SHIHdpZG9rdQBzdWdlcnVqZQBixYLEhWQgc2vFgmFkbmkgdyBwbGlrdSBvcGNqaSBtZXRvZHkgIiUuMjUwcyIgLS0gJXMAYnJhayBwb3RyemVibnljaCBmdW5rY2ppIHRlcm1pbmFsYSwgcHJ6ZXJ5d2FuaWUAd3l6d2FsYWN6IHBvYnVkem9ueQB1AG5pZSBtb8W8bmEgb2Rjenl0YcSHIHNrcnlwdHUgb3BjamkgbWV0b2R5ICIlLjI1MHMiAG5pZSBtb8W8bmEgemFta27EhcSHIHBsaWt1IG5vd2VqIG9wY2ppICIlLjI1MHMiAG5pZSBtb8W8bmEgemFpbnN0YWxvd2HEhyBub3dlaiBvcGNqaSBqYWtvICIlLjI1MHMiAG5pZSBtb8W8bmEgb3R3b3J6ecSHIHBsaWt1IGJpZcW8xIVjZWogb3BjamkgIiUuMjUwcyIAbmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3Ugbm93ZWogb3BjamkgIiUuMjUwcyIAbmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3Ugb3Bpc3Ugb3BjamkgIiUuMjUwcyIAbmllIG1vxbxuYSBvZGN6eXRhxIcga2F0YWxvZ3UgIiUuMjUwcyIgZG8gb2Rjenl0dSBtZXRvZABuaWUgbW/FvG5hIG9kY3p5dGHEhyBwbGlrdSBvcGNqaSBtZXRvZHkgIiUuMjUwcyIAbmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBwbGlrdSBvcGlzdSBvcGNqaSAlLjI1MHMAbmllIG1vxbxuYSB6YXBpc2HEhyBub3dlaiBvcGNqaSB3ICIlLjI1MHMiAG5pZXpuYW5lIGR6aWHFgmFuaWUgIiUuNTBzIgByb3pwYWtvd2FueSAobmllIHNrb25maWd1cm93YW55KQBha3R1YWxpemFjamEgbGlzdHkgZG9zdMSZcG55Y2ggc2tyeXB0w7N3AA==