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IcIAAB8AAAAwwgAAOQAAAFDCAAAxAAAAisIAACsAAAC8wgAAHgAAAOjCAAAqAAAAB8MAABIAAAAywwAADQAAAEXDAAARAAAAU8MAABcAAABlwwAAEwAAAH3DAAAGAAAAkcMAAAcAAACYwwAAIAAAAKDDAAAlAAAAwcMAAEEAAADnwwAAYQAAACnEAABdAAAAi8QAACoAAADpxAAAQAAAABTFAAAqAAAAVcUAADEAAACAxQAANQAAALLFAAAGAAAA6MUAADwAAADvxQAANAAAACzGAABNAAAAYcYAACEAAACvxgAAHAAAANHGAAAvAAAA7sYAABQAAAAexwAAIQAAADPHAAAdAAAAVccAABUAAABzxwAAIgAAAInHAABoAAAArMcAABkAAAAVyAAAFQAAAC/IAAAWAAAARcgAABEAAABcyAAAEQAAAG7IAAAgAAAAgMgAACEAAAChyAAADQAAAMPIAAAZAAAA0cgAAEQAAADryAAAFAAAADDJAAAYAAAARckAAB8AAABeyQAAFAAAAH7JAAAhAAAAk8kAACAAAAC1yQAAGAAAANbJAAAcAAAA78kAABwAAAAMygAABAAAACnKAAAcAAAALsoAABIAAABLygAAGgAAAF7KAAAhAAAAecoAACQAAACbygAAMAAAAMDKAAAiAAAA8coAAEYAAAAUywAAOgAAAFvLAAAtAAAAlssAAFIAAADEywAAKgAAABfMAAAzAAAAQswAADIAAAB2zAAAFwAAAKnMAAA7AAAAwcwAABkAAAD9zAAAFQAAABfNAAAmAAAALc0AABgAAABUzQAATgAAAG3NAAAmAAAAvM0AACAAAADjzQAAGgAAAATOAAAnAAAAH84AABgAAABHzgAALQAAAGDOAAAiAAAAjs4AACkAAACxzgAAMQAAANvOAAAjAAAADc8AACkAAAAxzwAAJwAAAFvPAAApAAAAg88AACkAAACtzwAAKQAAANfPAAAyAAAAAdAAACMAAAA00AAAWQAAAFjQAAASAAAAstAAABMAAADF0AAAIgAAANnQAAASAAAA/NAAAB8AAAAP0QAAEwAAAC/RAAAkAAAAQ9EAACUAAABo0QAAIAAAAI7RAAA/AAAAr9EAAC4AAADv0QAAFgAAAB7SAAA4AAAANdIAABUAAABu0gAAGwAAAITSAAAhAAAAoNIAACcAAADC0gAA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IGFsbG93ZWQgY2hhcmFjdGVyIGlzICc+JwAnJXMnIGlzIG5vdCBhIHZhbGlkIG5hbWUAJyVzJyBpcyBub3QgYSB2YWxpZCBuYW1lOiAnJWMnACclcycgdGFrZXMgbm8gYXJndW1lbnRzCgoAJ3ZlcnNpb24nIHRha2VzIG5vIGFyZ3VtZW50cwAoKk1BUkspIG11c3QgaGF2ZSBhbiBhcmd1bWVudAAoKlZFUkIpIG5vdCByZWNvZ25pemVkACg/UiBvciAoP1srLV1kaWdpdHMgbXVzdCBiZSBmb2xsb3dlZCBieSApAChBZGRpdGlvbmFsbHksIHJlbGVhc2luZyB0aGUgbG9jayBmb3IgJyVzJyBhbHNvIGZhaWxlZDogJXMpIAAoVHlwZSBhbnkgY2hhcmFjdGVyIHRvIGNsb3NlIHRoaXMgd2luZG93KQoAKSB3aXRob3V0IG9wZW5pbmcgKAAtLXN0cmljdCB3YXMgc3BlY2lmaWVkOyBleGl0aW5nLgoAOyBpZ25vcmluZyBvdmVycmlkZSBmb3IgdGhpcyBrZXkuCgA8JXMgaWQ9JyVzJz4gYWxyZWFkeSBzcGVjaWZpZWQAPCVzIGlkPSclcyc+IG5vdCAoeWV0KSBkZWZpbmVkLgA8Y2hpbGQgbmFtZT0nJXMnPiBhbHJlYWR5IHNwZWNpZmllZAA8a2V5IG5hbWU9JyVzJz4gYWxyZWFkeSBzcGVjaWZpZWQAPGtleSBuYW1lPSclcyc+IHNoYWRvd3MgPGtleSBuYW1lPSclcyc+IGluIDxzY2hlbWEgaWQ9JyVzJz47IHVzZSA8b3ZlcnJpZGU+IHRvIG1vZGlmeSB2YWx1ZQA8b3ZlcnJpZGUgbmFtZT0nJXMnPiBhbHJlYWR5IHNwZWNpZmllZAA8b3ZlcnJpZGU+IGdpdmVuIGJ1dCBzY2hlbWEgaXNuJ3QgZXh0ZW5kaW5nIGFueXRoaW5nADxzY2hlbWEgaWQ9JyVzJyBsaXN0LW9mPSclcyc+IGV4dGVuZHMgPHNjaGVtYSBpZD0nJXMnIGxpc3Qtb2Y9JyVzJz4gYnV0ICclcycgZG9lcyBub3QgZXh0ZW5kICclcycAPHNjaGVtYSBpZD0nJXMnPiBhbHJlYWR5IHNwZWNpZmllZAA8c2NoZW1hIGlkPSclcyc+IGV4dGVuZHMgbm90IHlldCBleGlzdGluZyBzY2hlbWEgJyVzJwA8c2NoZW1hIGlkPSclcyc+IGlzIGEgbGlzdCwgZXh0ZW5kaW5nIDxzY2hlbWEgaWQ9JyVzJz4gd2hpY2ggaXMgbm90IGEgbGlzdAA8c2NoZW1hIGlkPSclcyc+IGlzIGxpc3Qgb2Ygbm90IHlldCBleGlzdGluZyBzY2hlbWEgJyVzJwBBIGJvb2ttYXJrIGZvciBVUkkgJyVzJyBhbHJlYWR5IGV4aXN0cwBBIHN1YnRyZWUgaXMgYWxyZWFkeSBleHBvcnRlZCBmb3IgJXMAQUNUSU9OAEFQUElEAEFQUElEIEFDVElPTiBbUEFSQU1FVEVSXQBBUFBJRCBbRklMRS4uLl0AQVRUUklCVVRFAEFUVFJJQlVURVMAQWJvcnQgb24gYW55IGVycm9ycyBpbiBzY2hlbWFzAEFic3RyYWN0IFVOSVggZG9tYWluIHNvY2tldCBhZGRyZXNzZXMgbm90IHN1cHBvcnRlZCBvbiB0aGlzIHN5c3RlbQBBYnN0cmFjdCBuYW1lIHNwYWNlIG5vdCBzdXBwb3J0ZWQAQWN0aXZhdGUgYW4gYWN0aW9uAEFkZGVkIHNvY2tldCBpcyBjbG9zZWQAQWRkcmVzcyAnJXMnIGlzIGludmFsaWQgKG5lZWQgZXhhY3RseSBvbmUgb2YgcGF0aCwgdG1wZGlyIG9yIGFic3RyYWN0IGtleXMpAEFkZHJlc3MgZWxlbWVudCAnJXMnIGRvZXMgbm90IGNvbnRhaW4gYSBjb2xvbiAoOikAQWRkcmVzcyBoYXMgYml0cyBzZXQgYmV5b25kIHByZWZpeCBsZW5ndGgAQWRkcmVzcyB0byBsaXN0ZW4gb24AQW1vdW50IG9mIG1lbW9yeSByZXF1aXJlZCB0byBwcm9jZXNzIHRoZSB3cml0ZSBpcyBsYXJnZXIgdGhhbiBhdmFpbGFibGUgYWRkcmVzcyBzcGFjZQBBbiBvYmplY3QgaXMgYWxyZWFkeSBleHBvcnRlZCBmb3IgdGhlIGludGVyZmFjZSAlcyBhdCAlcwBBcHBlbmQgdG8gZW5kIG9mIGZpbGUAQXBwbGljYXRpb24gT3B0aW9uczoAQXBwbGljYXRpb24gaWRlbnRpZmllciBpbiBELUJ1cyBmb3JtYXQgKGVnOiBvcmcuZXhhbXBsZS52aWV3ZXIpAEFwcGxpY2F0aW9uIGluZm9ybWF0aW9uIGxhY2tzIGFuIGlkZW50aWZpZXIAQXJndW1lbnRzOgoAQXR0cmlidXRlICclcycgb2YgZWxlbWVudCAnJXMnIG5vdCBmb3VuZABBdHRyaWJ1dGUgbm90IHNwZWNpZmllZABBdHRyaWJ1dGUgdmFsdWUgbXVzdCBiZSBub24tTlVMTABCYWNrdXAgZXhpc3RpbmcgZGVzdGluYXRpb24gZmlsZXMAQmFja3VwIGZpbGUgY3JlYXRpb24gZmFpbGVkAEJhZCBIVFRQIHByb3h5IHJlcGx5AEMgaWRlbnRpZmllciBuYW1lIHVzZWQgZm9yIHRoZSBnZW5lcmF0ZWQgc291cmNlIGNvZGUAQ09NTUFORABDYW4gbm90IGJlIGEgbGlzdCBvZiBhIHNjaGVtYSB3aXRoIGEgcGF0aABDYW4gbm90IGV4dGVuZCBhIHNjaGVtYSB3aXRoIGEgcGF0aABDYW4ndCBjb3B5IGRpcmVjdG9yeSBvdmVyIGRpcmVjdG9yeQBDYW4ndCBjb3B5IG92ZXIgZGlyZWN0b3J5AENhbid0IGNvcHkgc3BlY2lhbCBmaWxlAENhbid0IGNyZWF0ZSB1c2VyIE1JTUUgY29uZmlndXJhdGlvbiBmb2xkZXIgJXM6ICVzAENhbid0IGNyZWF0ZSB1c2VyIGFwcGxpY2F0aW9uIGNvbmZpZ3VyYXRpb24gZm9sZGVyICVzOiAlcwBDYW4ndCBjcmVhdGUgdXNlciBkZXNrdG9wIGZpbGUgJXMAQ2FuJ3QgZG8gYSByYXcgcmVhZCBpbiBnX2lvX2NoYW5uZWxfcmVhZF9saW5lX3N0cmluZwBDYW4ndCBkbyBhIHJhdyByZWFkIGluIGdfaW9fY2hhbm5lbF9yZWFkX3RvX2VuZABDYW4ndCBoYW5kbGUgdGhlIHN1cHBsaWVkIHZlcnNpb24gb2YgdGhlIGljb24gZW5jb2RpbmcAQ2FuJ3QgaGFuZGxlIHZlcnNpb24gJWQgb2YgR0VtYmxlbSBlbmNvZGluZwBDYW4ndCBoYW5kbGUgdmVyc2lvbiAlZCBvZiBHRW1ibGVtZWRJY29uIGVuY29kaW5nAENhbid0IGhhbmRsZSB2ZXJzaW9uICVkIG9mIEdGaWxlSWNvbiBlbmNvZGluZwBDYW4ndCBoYW5kbGUgdmVyc2lvbiAlZCBvZiBHVGhlbWVkSWNvbiBlbmNvZGluZwBDYW4ndCBtb3ZlIGRpcmVjdG9yeSBvdmVyIGRpcmVjdG9yeQBDYW4ndCBvcGVuIGRpcmVjdG9yeQBDYW4ndCByZWN1cnNpdmVseSBjb3B5IGRpcmVjdG9yeQBDYW4ndCByZW5hbWUgZmlsZSwgZmlsZW5hbWUgYWxyZWFkeSBleGlzdHMAQ2FuJ3QgcmVuYW1lIHJvb3QgZGlyZWN0b3J5AENhbmNlbGxhYmxlIGluaXRpYWxpemF0aW9uIG5vdCBzdXBwb3J0ZWQAQ2FuY2VsbGVkIHZpYSBHREJ1c0F1dGhPYnNlcnZlcjo6YXV0aG9yaXplLWF1dGhlbnRpY2F0ZWQtcGVlcgBDYW5ub3QgY29udmVydCBmYWxsYmFjayAnJXMnIHRvIGNvZGVzZXQgJyVzJwBDYW5ub3QgZGVjcnlwdCBQRU0tZW5jb2RlZCBwcml2YXRlIGtleQBDYW5ub3QgZGVzZXJpYWxpemUgbWVzc2FnZTogAENhbm5vdCBkZXRlcm1pbmUgYnVzIGFkZHJlc3MgYmVjYXVzZSB0aGUgREJVU19TVEFSVEVSX0JVU19UWVBFIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIG5vdCBzZXQAQ2Fubm90IGRldGVybWluZSBidXMgYWRkcmVzcyBmcm9tIERCVVNfU1RBUlRFUl9CVVNfVFlQRSBlbnZpcm9ubWVudCB2YXJpYWJsZSAtIHVua25vd24gdmFsdWUgJyVzJwBDYW5ub3QgZGV0ZXJtaW5lIHNlc3Npb24gYnVzIGFkZHJlc3MgKG5vdCBpbXBsZW1lbnRlZCBmb3IgdGhpcyBPUykAQ2Fubm90IGludm9rZSBtZXRob2Q7IHByb3h5IGlzIGZvciBhIHdlbGwta25vd24gbmFtZSB3aXRob3V0IGFuIG93bmVyIGFuZCBwcm94eSB3YXMgY29uc3RydWN0ZWQgd2l0aCB0aGUgR19EQlVTX1BST1hZX0ZMQUdTX0RPX05PVF9BVVRPX1NUQVJUIGZsYWcAQ2Fubm90IGxpc3RlbiBvbiB1bnN1cHBvcnRlZCB0cmFuc3BvcnQgJyVzJwBDYW5ub3QgcGFyc2UgZG91YmxlIHZhbHVlICclcycgZm9yICVzAENhbm5vdCBwYXJzZSBpbnRlZ2VyIHZhbHVlICclcycgZm9yICVzAENhbm5vdCBzZXJpYWxpemUgbWVzc2FnZTogAENhbm5vdCBzZXQgcGVybWlzc2lvbnMgb24gc3ltbGlua3MAQ2Fubm90IHNwYXduIGEgbWVzc2FnZSBidXMgd2hlbiBzZXR1aWQAQ2Fubm90IHNwYXduIGEgbWVzc2FnZSBidXMgd2l0aG91dCBhIG1hY2hpbmUtaWQ6IABDYW5ub3Qgc3BlY2lmeSBub25jZSBmaWxlIHdoZW4gY3JlYXRpbmcgYSBzZXJ2ZXIAQ2Fubm90IHRydW5jYXRlIEdCdWZmZXJlZElucHV0U3RyZWFtAENhbm5vdCB0cnVuY2F0ZSBHTWVtb3J5SW5wdXRTdHJlYW0AQ2Fubm90IHVzZSBkYXRhZ3JhbSBvcGVyYXRpb25zIG9uIGEgbm9uLWRhdGFncmFtIHNvY2tldC4AQ2Fubm90IHVzZSBkYXRhZ3JhbSBvcGVyYXRpb25zIG9uIGEgc29ja2V0IHdpdGggYSB0aW1lb3V0IHNldC4AQ2hhbm5lbCB0ZXJtaW5hdGVzIGluIGEgcGFydGlhbCBjaGFyYWN0ZXIAQ2hhcmFjdGVyIG91dCBvZiByYW5nZSBmb3IgVVRGLTE2AENoYXJhY3RlciBvdXQgb2YgcmFuZ2UgZm9yIFVURi04AENoYXJhY3RlciByZWZlcmVuY2UgJyUtLipzJyBkb2VzIG5vdCBlbmNvZGUgYSBwZXJtaXR0ZWQgY2hhcmFjdGVyAENoYXJhY3RlciByZWZlcmVuY2UgZGlkIG5vdCBlbmQgd2l0aCBhIHNlbWljb2xvbjsgbW9zdCBsaWtlbHkgeW91IHVzZWQgYW4gYW1wZXJzYW5kIGNoYXJhY3RlciB3aXRob3V0IGludGVuZGluZyB0byBzdGFydCBhbiBlbnRpdHkgLSBlc2NhcGUgYW1wZXJzYW5kIGFzICZhbXA7AENoZWNrIGlmIEtFWSBpcyB3cml0YWJsZQBDaGlsZCBwcm9jZXNzIGV4aXRlZCBhYm5vcm1hbGx5AENoaWxkIHByb2Nlc3MgZXhpdGVkIHdpdGggY29kZSAlbGQAQ2hpbGQgcHJvY2VzcyBraWxsZWQgYnkgc2lnbmFsICVsZABDaGlsZCBwcm9jZXNzIHN0b3BwZWQgYnkgc2lnbmFsICVsZABDb21tYW5kczoAQ29tbWFuZHM6CgBDb21tYW5kczoKICBoZWxwICAgICAgICAgU2hvd3MgdGhpcyBpbmZvcm1hdGlvbgogIGludHJvc3BlY3QgICBJbnRyb3NwZWN0IGEgcmVtb3RlIG9iamVjdAogIG1vbml0b3IgICAgICBNb25pdG9yIGEgcmVtb3RlIG9iamVjdAogIGNhbGwgICAgICAgICBJbnZva2UgYSBtZXRob2Qgb24gYSByZW1vdGUgb2JqZWN0CiAgZW1pdCAgICAgICAgIEVtaXQgYSBzaWduYWwKClVzZSAiJXMgQ09NTUFORCAtLWhlbHAiIHRvIGdldCBoZWxwIG9uIGVhY2ggY29tbWFuZC4KAENvbXBpbGUgYSByZXNvdXJjZSBzcGVjaWZpY2F0aW9uIGludG8gYSByZXNvdXJjZSBmaWxlLgpSZXNvdXJjZSBzcGVjaWZpY2F0aW9uIGZpbGVzIGhhdmUgdGhlIGV4dGVuc2lvbiAuZ3Jlc291cmNlLnhtbCwKYW5kIHRoZSByZXNvdXJjZSBmaWxlIGhhdmUgdGhlIGV4dGVuc2lvbiBjYWxsZWQgLmdyZXNvdXJjZS4AQ29tcGlsZSBhbGwgR1NldHRpbmdzIHNjaGVtYSBmaWxlcyBpbnRvIGEgc2NoZW1hIGNhY2hlLgpTY2hlbWEgZmlsZXMgYXJlIHJlcXVpcmVkIHRvIGhhdmUgdGhlIGV4dGVuc2lvbiAuZ3NjaGVtYS54bWwsCmFuZCB0aGUgY2FjaGUgZmlsZSBpcyBjYWxsZWQgZ3NjaGVtYXMuY29tcGlsZWQuAENvbmNhdGVuYXRlIGZpbGVzIGFuZCBwcmludCB0byBzdGFuZGFyZCBvdXRwdXQuAENvbmNhdGVuYXRlIGZpbGVzIHRvIHN0YW5kYXJkIG91dHB1dABDb25uZWN0IHRvIGdpdmVuIEQtQnVzIGFkZHJlc3MAQ29ubmVjdCB0byB0aGUgc2Vzc2lvbiBidXMAQ29ubmVjdCB0byB0aGUgc3lzdGVtIGJ1cwBDb25uZWN0aW9uIEVuZHBvaW50IE9wdGlvbnM6AENvbm5lY3Rpb24gaW4gcHJvZ3Jlc3MAQ29ubmVjdGlvbiByZWZ1c2VkIHRocm91Z2ggU09DS1N2NSBwcm94eS4AQ29ubmVjdGlvbiB0aHJvdWdoIFNPQ0tTdjQgc2VydmVyIHdhcyByZWplY3RlZABDb250YWluaW5nIG1vdW50IGRvZXMgbm90IGV4aXN0AENvbnZlcnNpb24gZnJvbSBjaGFyYWN0ZXIgc2V0ICclcycgdG8gJyVzJyBpcyBub3Qgc3VwcG9ydGVkAENvcHkgKHJlZmxpbmsvY2xvbmUpIGJldHdlZW4gbW91bnRzIGlzIG5vdCBzdXBwb3J0ZWQAQ29weSAocmVmbGluay9jbG9uZSkgaXMgbm90IHN1cHBvcnRlZCBvciBkaWRuJ3Qgd29yawBDb3B5IChyZWZsaW5rL2Nsb25lKSBpcyBub3Qgc3VwcG9ydGVkIG9yIGludmFsaWQAQ29weSBvbmUgb3IgbW9yZSBmaWxlcwBDb3B5IG9uZSBvciBtb3JlIGZpbGVzIGZyb20gU09VUkNFIHRvIERFU1RJTkFUSU9OLgBDb3B5IHdpdGggZmlsZQBDb3VsZCBub3QgYWxsb2NhdGUgJWx1IGJ5dGUgdG8gcmVhZCBmaWxlICIlcyIAQ291bGQgbm90IGFsbG9jYXRlICVsdSBieXRlcyB0byByZWFkIGZpbGUgIiVzIgBDb3VsZCBub3QgY29ubmVjdCB0byAlczogAENvdWxkIG5vdCBjb25uZWN0IHRvIHByb3h5IHNlcnZlciAlczogAENvdWxkIG5vdCBjb25uZWN0OiAAQ291bGQgbm90IGNyZWF0ZSBuZXR3b3JrIG1vbml0b3I6IABDb3VsZCBub3QgY3JlYXRlIG5ldHdvcmsgbW9uaXRvcjogJXMAQ291bGQgbm90IGRldGVybWluZSB0aGUgZGlzayB1c2FnZSBvZiAlczogJXMAQ291bGQgbm90IGdldCBuZXR3b3JrIHN0YXR1czogAENvdWxkIG5vdCBsb2FkIHNjaGVtYXMgZnJvbSAlczogJXMKAENvdWxkIG5vdCBvcGVuIGNvbnZlcnRlciBmcm9tICclcycgdG8gJyVzJwBDb3VsZCBub3Qgb3BlbiBjb252ZXJ0ZXIgZnJvbSAnJXMnIHRvICclcyc6ICVzAENvdWxkIG5vdCBwYXJzZSAnJXMnIGFzIElQIGFkZHJlc3MgbWFzawBDb3VsZCBub3QgcGFyc2UgUEVNLWVuY29kZWQgY2VydGlmaWNhdGUAQ291bGQgbm90IHBhcnNlIFBFTS1lbmNvZGVkIHByaXZhdGUga2V5AENyZWF0ZSBkaXJlY3RvcmllcwBDcmVhdGUgZGlyZWN0b3JpZXMuAENyZWF0ZSBwYXJlbnQgZGlyZWN0b3JpZXMAQ3JlZGVudGlhbHMgc3Bvb2ZpbmcgaXMgbm90IHBvc3NpYmxlIG9uIHRoaXMgT1MAQ3VzdG9tIGRlZmluaXRpb24gZm9yICVzAERFRklORSBncm91cCBjb250YWlucyBtb3JlIHRoYW4gb25lIGJyYW5jaABERVNUSU5BVElPTgBERVZJQ0UARElSRUNUT1JZAERUTFMgc3VwcG9ydCBpcyBub3QgYXZhaWxhYmxlAERlZmF1bHQgYXBwbGljYXRpb24gZm9yICclcyc6ICVzCgBEZWxldGUgb25lIG9yIG1vcmUgZmlsZXMARGVsZXRlIHRoZSBnaXZlbiBmaWxlcy4ARGVza3RvcCBmaWxlIGRpZG4ndCBzcGVjaWZ5IEV4ZWMgZmllbGQARGVzdGluYXRpb24gJXMgaXMgbm90IGEgZGlyZWN0b3J5AERlc3RpbmF0aW9uIG5hbWUgdG8gaW50cm9zcGVjdABEZXN0aW5hdGlvbiBuYW1lIHRvIGludm9rZSBtZXRob2Qgb24ARGVzdGluYXRpb24gbmFtZSB0byBtb25pdG9yAERpZG4ndCBmaW5kIGNvb2tpZSB3aXRoIGlkICVkIGluIHRoZSBrZXlyaW5nIGF0ICclcycARG8gbm90IGVuZm9yY2Uga2V5IG5hbWUgcmVzdHJpY3Rpb25zAERvIG5vdCB3cml0ZSB0aGUgZ3NjaGVtYS5jb21waWxlZCBmaWxlAERvY3VtZW50IGVuZGVkIHVuZXhwZWN0ZWRseSBhZnRlciB0aGUgZXF1YWxzIHNpZ24gZm9sbG93aW5nIGFuIGF0dHJpYnV0ZSBuYW1lOyBubyBhdHRyaWJ1dGUgdmFsdWUARG9jdW1lbnQgZW5kZWQgdW5leHBlY3RlZGx5IGluc2lkZSBhIGNvbW1lbnQgb3IgcHJvY2Vzc2luZyBpbnN0cnVjdGlvbgBEb2N1bWVudCBlbmRlZCB1bmV4cGVjdGVkbHkgaW5zaWRlIGFuIGF0dHJpYnV0ZSBuYW1lAERvY3VtZW50IGVuZGVkIHVuZXhwZWN0ZWRseSBpbnNpZGUgYW4gZWxlbWVudCBuYW1lAERvY3VtZW50IGVuZGVkIHVuZXhwZWN0ZWRseSBpbnNpZGUgYW4gZWxlbWVudC1vcGVuaW5nIHRhZy4ARG9jdW1lbnQgZW5kZWQgdW5leHBlY3RlZGx5IGluc2lkZSB0aGUgY2xvc2UgdGFnIGZvciBlbGVtZW50ICclcycARG9jdW1lbnQgZW5kZWQgdW5leHBlY3RlZGx5IGp1c3QgYWZ0ZXIgYW4gb3BlbiBhbmdsZSBicmFja2V0ICc8JwBEb2N1bWVudCBlbmRlZCB1bmV4cGVjdGVkbHkgd2hpbGUgaW5zaWRlIGFuIGF0dHJpYnV0ZSB2YWx1ZQBEb2N1bWVudCBlbmRlZCB1bmV4cGVjdGVkbHkgd2l0aCBlbGVtZW50cyBzdGlsbCBvcGVuIC0gJyVzJyB3YXMgdGhlIGxhc3QgZWxlbWVudCBvcGVuZWQARG9jdW1lbnQgZW5kZWQgdW5leHBlY3RlZGx5LCBleHBlY3RlZCB0byBzZWUgYSBjbG9zZSBhbmdsZSBicmFja2V0IGVuZGluZyB0aGUgdGFnIDwlcy8+AERvY3VtZW50IG11c3QgYmVnaW4gd2l0aCBhbiBlbGVtZW50IChlLmcuIDxib29rPikARG9jdW1lbnQgd2FzIGVtcHR5IG9yIGNvbnRhaW5lZCBvbmx5IHdoaXRlc3BhY2UARG9uJ3QgYXV0b21hdGljYWxseSBjcmVhdGUgYW5kIHJlZ2lzdGVyIHJlc291cmNlAERvbid0IGV4cG9ydCBmdW5jdGlvbnM7IGRlY2xhcmUgdGhlbSBHX0dOVUNfSU5URVJOQUwARG9uJ3QgZm9sbG93IHN5bWJvbGljIGxpbmtzAERvbid0IHVzZSBjb3B5IGFuZCBkZWxldGUgZmFsbGJhY2sARG91YmxlIHZhbHVlICclcycgZm9yICVzIG91dCBvZiByYW5nZQBFUlJPUiBtZXNzYWdlOiBSRVBMWV9TRVJJQUwgb3IgRVJST1JfTkFNRSBoZWFkZXIgZmllbGQgaXMgbWlzc2luZwBFVEFHAEVqZWN0AEVsZW1lbnQgJyVzJyB3YXMgY2xvc2VkLCBidXQgdGhlIGN1cnJlbnRseSBvcGVuIGVsZW1lbnQgaXMgJyVzJwBFbGVtZW50ICclcycgd2FzIGNsb3NlZCwgbm8gZWxlbWVudCBpcyBjdXJyZW50bHkgb3BlbgBFbGVtZW50IDwlcz4gbm90IGFsbG93ZWQgYXQgdGhlIHRvcCBsZXZlbABFbGVtZW50IDwlcz4gbm90IGFsbG93ZWQgYXQgdG9wbGV2ZWwARWxlbWVudCA8JXM+IG5vdCBhbGxvd2VkIGluc2lkZSA8JXM+AEVtaXQgYSBzaWduYWwuAEVtcHR5IGVudGl0eSAnJjsnIHNlZW47IHZhbGlkIGVudGl0aWVzIGFyZTogJmFtcDsgJnF1b3Q7ICZsdDsgJmd0OyAmYXBvczsARW1wdHkgcGF0aCBnaXZlbi4KAEVtcHR5IHNjaGVtYSBuYW1lIGdpdmVuCgBFbXB0eSB0aGUgdHJhc2gARW5jb3VudGVyZWQgYXJyYXkgb2YgbGVuZ3RoICV1IGJ5dGUuIE1heGltdW0gbGVuZ3RoIGlzIDI8PDI2IGJ5dGVzICg2NCBNaUIpLgBFbmNvdW50ZXJlZCBhcnJheSBvZiBsZW5ndGggJXUgYnl0ZXMuIE1heGltdW0gbGVuZ3RoIGlzIDI8PDI2IGJ5dGVzICg2NCBNaUIpLgBFbmNvdW50ZXJlZCBhcnJheSBvZiB0eXBlICdhJWMnLCBleHBlY3RlZCB0byBoYXZlIGEgbGVuZ3RoIGEgbXVsdGlwbGUgb2YgJXUgYnl0ZXMsIGJ1dCBmb3VuZCB0byBiZSAldSBieXRlcyBpbiBsZW5ndGgARW50ZXIgR0FwcGxpY2F0aW9uIHNlcnZpY2UgbW9kZSAodXNlIGZyb20gRC1CdXMgc2VydmljZSBmaWxlcykARW50aXR5IGRpZCBub3QgZW5kIHdpdGggYSBzZW1pY29sb247IG1vc3QgbGlrZWx5IHlvdSB1c2VkIGFuIGFtcGVyc2FuZCBjaGFyYWN0ZXIgd2l0aG91dCBpbnRlbmRpbmcgdG8gc3RhcnQgYW4gZW50aXR5IC0gZXNjYXBlIGFtcGVyc2FuZCBhcyAmYW1wOwBFbnRpdHkgbmFtZSAnJS0uKnMnIGlzIG5vdCBrbm93bgBFbnVtZXJhdG9yIGlzIGNsb3NlZABFcnJvciBhY2NlcHRpbmcgY29ubmVjdGlvbjogJXMARXJyb3IgYXV0by1sYXVuY2hpbmc6IABFcnJvciBiaW5kaW5nIHRvIGFkZHJlc3M6ICVzAEVycm9yIGNhbGxpbmcgU3RhcnRTZXJ2aWNlQnlOYW1lIGZvciAlczogAEVycm9yIGNoZWNraW5nIGlmIFNPX1BBU1NDUkVEIGlzIGVuYWJsZWQgZm9yIHNvY2tldDogJXMARXJyb3IgY2xvc2luZyAodW5saW5rZWQpIGxvY2sgZmlsZSAnJXMnOiAlcwBFcnJvciBjbG9zaW5nIGZpbGUgZGVzY3JpcHRvcjogJXMARXJyb3IgY2xvc2luZyBmaWxlOiAlcwBFcnJvciBjbG9zaW5nIGhhbmRsZTogJXMARXJyb3IgY2xvc2luZyBzb2NrZXQ6ICVzAEVycm9yIGNvbXByZXNzaW5nIGZpbGUgJXMARXJyb3IgY29ubmVjdGluZzogJXMKAEVycm9yIGNyZWF0aW5nIGJhY2t1cCBjb3B5OiAlcwBFcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgJyVzJzogJXMARXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5OiAlcwBFcnJvciBjcmVhdGluZyBsb2NrIGZpbGUgJyVzJzogJXMARXJyb3IgZGVsZXRpbmcgc3RhbGUgbG9jayBmaWxlICclcyc6ICVzAEVycm9yIGRlc2VyaWFsaXppbmcgR1ZhcmlhbnQgd2l0aCB0eXBlIHN0cmluZyAnJXMnIGZyb20gdGhlIEQtQnVzIHdpcmUgZm9ybWF0AEVycm9yIGR1cmluZyBjb252ZXJzaW9uOiAlcwBFcnJvciBlamVjdGluZyBtb3VudDogJXMKAEVycm9yIGVuYWJsaW5nIFNPX1BBU1NDUkVEOiAlcwBFcnJvciBmaW5kaW5nIGVuY2xvc2luZyBtb3VudDogJXMKAEVycm9yIGZsdXNoaW5nIGNvbm5lY3Rpb246ICVzCgBFcnJvciBnZXR0aW5nIGZpbGVzeXN0ZW0gaW5mbzogJXMARXJyb3IgZ2V0dGluZyB3cml0YWJsZSBhdHRyaWJ1dGVzOiAlcwoARXJyb3IgaW4gYWRkcmVzcyAnJXMnIC0gdGhlIGZhbWlseSBhdHRyaWJ1dGUgaXMgbWFsZm9ybWVkAEVycm9yIGluIGFkZHJlc3MgJyVzJyAtIHRoZSBob3N0IGF0dHJpYnV0ZSBpcyBtaXNzaW5nIG9yIG1hbGZvcm1lZABFcnJvciBpbiBhZGRyZXNzICclcycgLSB0aGUgbm9uY2VmaWxlIGF0dHJpYnV0ZSBpcyBtaXNzaW5nIG9yIG1hbGZvcm1lZABFcnJvciBpbiBhZGRyZXNzICclcycgLSB0aGUgcG9ydCBhdHRyaWJ1dGUgaXMgbWFsZm9ybWVkAEVycm9yIGluIGFkZHJlc3MgJyVzJyAtIHRoZSBwb3J0IGF0dHJpYnV0ZSBpcyBtaXNzaW5nIG9yIG1hbGZvcm1lZABFcnJvciBpbiBhZGRyZXNzICclcycgLSB0aGUgdW5peCB0cmFuc3BvcnQgcmVxdWlyZXMgZXhhY3RseSBvbmUgb2YgdGhlIGtleXMgJ3BhdGgnIG9yICdhYnN0cmFjdCcgdG8gYmUgc2V0AEVycm9yIGpvaW5pbmcgbXVsdGljYXN0IGdyb3VwOiAlcwBFcnJvciBsZWF2aW5nIG11bHRpY2FzdCBncm91cDogJXMARXJyb3IgbWFraW5nIHN5bWJvbGljIGxpbms6ICVzAEVycm9yIG1vdW50aW5nICVzOiAlcwoARXJyb3IgbW91bnRpbmcgbG9jYXRpb246ICVzCgBFcnJvciBtb3VudGluZyBsb2NhdGlvbjogQW5vbnltb3VzIGFjY2VzcyBkZW5pZWQKAEVycm9yIG1vdmluZyBmaWxlOiAlcwBFcnJvciBvbiBsaW5lICVkIGNoYXIgJWQ6IABFcnJvciBvbiBsaW5lICVkOiAlcwBFcnJvciBvcGVuaW5nIGRpcmVjdG9yeSAnJXMnOiAlcwBFcnJvciBvcGVuaW5nIGZpbGUgJyVzJzogJXMARXJyb3Igb3BlbmluZyBmaWxlOiAlcwBFcnJvciBvcGVuaW5nIGtleXJpbmcgJyVzJyBmb3IgcmVhZGluZzogAEVycm9yIG9wZW5pbmcga2V5cmluZyAnJXMnIGZvciB3cml0aW5nOiAARXJyb3Igb3BlbmluZyBub25jZSBmaWxlICclcyc6ICVzAEVycm9yIHBhcnNpbmcgaW50cm9zcGVjdGlvbiBYTUw6ICVzCgBFcnJvciBwYXJzaW5nIG9wdGlvbiAlcwBFcnJvciBwYXJzaW5nIHBhcmFtZXRlciAlZCBvZiB0eXBlICclcyc6ICVzCgBFcnJvciBwYXJzaW5nIHBhcmFtZXRlciAlZDogJXMKAEVycm9yIHJlYWRpbmcgZmlsZSAlczogJXMARXJyb3IgcmVhZGluZyBmaWxlICclcyc6ICVzAEVycm9yIHJlYWRpbmcgZnJvbSBmaWxlIGRlc2NyaXB0b3I6ICVzAEVycm9yIHJlYWRpbmcgZnJvbSBmaWxlOiAlcwBFcnJvciByZWFkaW5nIGZyb20gaGFuZGxlOiAlcwBFcnJvciByZWFkaW5nIGZyb20gbm9uY2UgZmlsZSAnJXMnLCBleHBlY3RlZCAxNiBieXRlcywgZ290ICVkAEVycm9yIHJlYWRpbmcgZnJvbSBub25jZSBmaWxlICclcyc6ICVzAEVycm9yIHJlY2VpdmluZyBkYXRhOiAlcwBFcnJvciByZWNlaXZpbmcgbWVzc2FnZTogJXMARXJyb3IgcmVtb3ZpbmcgZmlsZTogJXMARXJyb3IgcmVtb3Zpbmcgb2xkIGJhY2t1cCBsaW5rOiAlcwBFcnJvciByZW1vdmluZyBvbGQgZmlsZTogJXMARXJyb3IgcmVtb3ZpbmcgdGFyZ2V0IGZpbGU6ICVzAEVycm9yIHJlbmFtaW5nIGZpbGU6ICVzAEVycm9yIHJlbmFtaW5nIHRlbXBvcmFyeSBmaWxlOiAlcwBFcnJvciByZXNvbHZpbmcgJyVzJwBFcnJvciByZXNvbHZpbmcgJyVzJzogJXMARXJyb3IgcmV0dXJuIHdpdGggYm9keSBvZiB0eXBlICclcycARXJyb3IgcmV0dXJuIHdpdGggZW1wdHkgYm9keQBFcnJvciByZXZlcnNlLXJlc29sdmluZyAnJXMnOiAlcwBFcnJvciBzZWVraW5nIGluIGZpbGU6ICVzAEVycm9yIHNlbmRpbmcgY3JlZGVudGlhbHM6IABFcnJvciBzZW5kaW5nIGRhdGE6ICVzAEVycm9yIHNlbmRpbmcgbWVzc2FnZTogJXMARXJyb3Igc2VyaWFsaXppbmcgR1ZhcmlhbnQgd2l0aCB0eXBlIHN0cmluZyAnJXMnIHRvIHRoZSBELUJ1cyB3aXJlIGZvcm1hdABFcnJvciBzZXR0aW5nIFNFTGludXggY29udGV4dDogJXMARXJyb3Igc2V0dGluZyBhdHRyaWJ1dGU6ICVzCgBFcnJvciBzZXR0aW5nIGV4dGVuZGVkIGF0dHJpYnV0ZSAnJXMnOiAlcwBFcnJvciBzZXR0aW5nIG1vZGlmaWNhdGlvbiBvciBhY2Nlc3MgdGltZTogJXMARXJyb3Igc2V0dGluZyBvd25lcjogJXMARXJyb3Igc2V0dGluZyBwZXJtaXNzaW9uczogJXMARXJyb3Igc2V0dGluZyBwcm9wZXJ0eSAnJXMnOiBFeHBlY3RlZCB0eXBlICclcycgYnV0IGdvdCAnJXMnAEVycm9yIHNldHRpbmcgc3ltbGluazogJXMARXJyb3Igc2V0dGluZyBzeW1saW5rOiBmaWxlIGlzIG5vdCBhIHN5bWxpbmsARXJyb3Igc3Bhd25pbmcgY29tbWFuZCBsaW5lICclcyc6IABFcnJvciBzcGxpY2luZyBmaWxlOiAlcwBFcnJvciB0cmFzaGluZyBmaWxlOiAlcwBFcnJvciB0cnVuY2F0aW5nIGZpbGU6ICVzAEVycm9yIHVuZXNjYXBpbmcga2V5IG9yIHZhbHVlIGluIEtleS9WYWx1ZSBwYWlyICVkLCAnJXMnLCBpbiBhZGRyZXNzIGVsZW1lbnQgJyVzJwBFcnJvciB1bmxpbmtpbmcgbG9jayBmaWxlICclcyc6ICVzAEVycm9yIHVubW91bnRpbmcgbW91bnQ6ICVzCgBFcnJvciB3aGVuIGdldHRpbmcgaW5mb3JtYXRpb24gZm9yIGRpcmVjdG9yeSAnJXMnOiAlcwBFcnJvciB3aGVuIGdldHRpbmcgaW5mb3JtYXRpb24gZm9yIGZpbGUgJyVzJzogJXMARXJyb3Igd2hlbiBnZXR0aW5nIGluZm9ybWF0aW9uIGZvciBmaWxlIGRlc2NyaXB0b3I6ICVzAEVycm9yIHdoaWxlIGNvbXBpbGluZyByZWd1bGFyIGV4cHJlc3Npb24gJXMgYXQgY2hhciAlZDogJXMARXJyb3Igd2hpbGUgZGlzYWJsaW5nIFNPX1BBU1NDUkVEOiAlcwBFcnJvciB3aGlsZSBtYXRjaGluZyByZWd1bGFyIGV4cHJlc3Npb24gJXM6ICVzAEVycm9yIHdoaWxlIG9wdGltaXppbmcgcmVndWxhciBleHByZXNzaW9uICVzOiAlcwBFcnJvciB3aGlsZSBwYXJzaW5nIHJlcGxhY2VtZW50IHRleHQgIiVzIiBhdCBjaGFyICVsdTogJXMARXJyb3Igd3JpdGluZyBjb250ZW50cyBvZiBub25jZSBmaWxlICclcycgdG8gc3RyZWFtOgBFcnJvciB3cml0aW5nIG5vbmNlIGZpbGUgYXQgJyVzJzogJXMARXJyb3Igd3JpdGluZyB0byBmaWxlIGRlc2NyaXB0b3I6ICVzAEVycm9yIHdyaXRpbmcgdG8gZmlsZTogJXMARXJyb3Igd3JpdGluZyB0byBoYW5kbGU6ICVzAEVycm9yOiAlcwoARXJyb3I6ICVzIGlzIG5vdCBhIHZhbGlkIGJ1cyBuYW1lCgBFcnJvcjogJXMgaXMgbm90IGEgdmFsaWQgaW50ZXJmYWNlIG5hbWUKAEVycm9yOiAlcyBpcyBub3QgYSB2YWxpZCBtZW1iZXIgbmFtZQoARXJyb3I6ICVzIGlzIG5vdCBhIHZhbGlkIG5hbWUKAEVycm9yOiAlcyBpcyBub3QgYSB2YWxpZCBvYmplY3QgcGF0aAoARXJyb3I6ICVzIGlzIG5vdCBhIHZhbGlkIHVuaXF1ZSBidXMgbmFtZS4KAEVycm9yOiBEZXN0aW5hdGlvbiBpcyBub3Qgc3BlY2lmaWVkCgBFcnJvcjogTWV0aG9kIG5hbWUgJyVzJyBpcyBpbnZhbGlkCgBFcnJvcjogTWV0aG9kIG5hbWUgaXMgbm90IHNwZWNpZmllZAoARXJyb3I6IE9iamVjdCBwYXRoIGlzIG5vdCBzcGVjaWZpZWQKAEVycm9yOiBvYmplY3QgcGF0aCBub3Qgc3BlY2lmaWVkLgoARXJyb3I6IHNpZ25hbCBtdXN0IGJlIHRoZSBmdWxseS1xdWFsaWZpZWQgbmFtZS4KAEVycm9yOiBzaWduYWwgbm90IHNwZWNpZmllZC4KAEV0YWcgbm90IGF2YWlsYWJsZQoARXhoYXVzdGVkIGFsbCBhdmFpbGFibGUgYXV0aGVudGljYXRpb24gbWVjaGFuaXNtcyAodHJpZWQ6ICVzKSAoYXZhaWxhYmxlOiAlcykARXhpc3RpbmcgZmlsZSAnJXMnIGNvdWxkIG5vdCBiZSByZW1vdmVkOiBnX3VubGluaygpIGZhaWxlZDogJXMARXhwZWN0ZWQgTlVMIGJ5dGUgYWZ0ZXIgdGhlIHN0cmluZyAnJXMnIGJ1dCBmb3VuZCBieXRlICVkAEV4cGVjdGVkIGEgR0VtYmxlbSBmb3IgR0VtYmxlbWVkSWNvbgBFeHBlY3RlZCB2YWxpZCBVVEYtOCBzdHJpbmcgYnV0IGZvdW5kIGludmFsaWQgYnl0ZXMgYXQgYnl0ZSBvZmZzZXQgJWQgKGxlbmd0aCBvZiBzdHJpbmcgaXMgJWQpLiBUaGUgdmFsaWQgVVRGLTggc3RyaW5nIHVwIHVudGlsIHRoYXQgcG9pbnQgd2FzICclcycARXhwZWN0aW5nIDEgY29udHJvbCBtZXNzYWdlLCBnb3QgJWQARXhwZWN0aW5nIDEgY29udHJvbCBtZXNzYWdlLCBnb3QgJWQARXhwZWN0aW5nIG9uZSBmZCwgYnV0IGdvdCAlZAoARXhwZWN0aW5nIG9uZSBmZCwgYnV0IGdvdCAlZAoARXhwZWN0aW5nIHRvIHJlYWQgYSBzaW5nbGUgYnl0ZSBmb3IgcmVjZWl2aW5nIGNyZWRlbnRpYWxzIGJ1dCByZWFkIHplcm8gYnl0ZXMARXh0cmFjdCBhIHJlc291cmNlIGZpbGUgdG8gc3Rkb3V0AEZJTEUARklMRSBQQVRIAEZJTEUgW1BBVEhdAEZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkARmFpbGVkIHRvIGNoYW5nZSB0byBkaXJlY3RvcnkgJyVzJyAoJXMpAEZhaWxlZCB0byBjcmVhdGUgZmlsZSAnJXMnOiAlcwBGYWlsZWQgdG8gY3JlYXRlIHBpcGUgZm9yIGNvbW11bmljYXRpbmcgd2l0aCBjaGlsZCBwcm9jZXNzICglcykARmFpbGVkIHRvIGNyZWF0ZSB0ZW1wIGZpbGU6ICVzAEZhaWxlZCB0byBleGVjdXRlIGNoaWxkIHByb2Nlc3MgIiVzIiAoJXMpAEZhaWxlZCB0byBleGVjdXRlIGNoaWxkIHByb2Nlc3MgKCVzKQBGYWlsZWQgdG8gZXhlY3V0ZSBoZWxwZXIgcHJvZ3JhbSAoJXMpAEZhaWxlZCB0byBleHBhbmQgZXhlYyBsaW5lICclcycgd2l0aCBVUkkgJyVzJwBGYWlsZWQgdG8gZm9yayAoJXMpAEZhaWxlZCB0byBmb3JrIGNoaWxkIHByb2Nlc3MgKCVzKQBGYWlsZWQgdG8gZ2V0IGF0dHJpYnV0ZXMgb2YgZmlsZSAnJXMlcyVzJXMnOiBmc3RhdCgpIGZhaWxlZDogJXMARmFpbGVkIHRvIGdldCBhdHRyaWJ1dGVzIG9mIGZpbGUgJyVzJzogZnN0YXQoKSBmYWlsZWQ6ICVzAEZhaWxlZCB0byBsb2FkIGluZm8gZm9yIGhhbmRsZXIgJyVzJwoARmFpbGVkIHRvIGxvY2F0ZSAnJXMnIGluIGFueSBzb3VyY2UgZGlyZWN0b3J5AEZhaWxlZCB0byBsb2NhdGUgJyVzJyBpbiBjdXJyZW50IGRpcmVjdG9yeQBGYWlsZWQgdG8gbWFwICVzJXMlcyVzOiBtbWFwKCkgZmFpbGVkOiAlcwBGYWlsZWQgdG8gb3BlbiBmaWxlICclcyc6ICVzAEZhaWxlZCB0byBvcGVuIGZpbGUgJyVzJzogZmRvcGVuKCkgZmFpbGVkOiAlcwBGYWlsZWQgdG8gb3BlbiBmaWxlICclcyc6IG9wZW4oKSBmYWlsZWQ6ICVzAEZhaWxlZCB0byBwYXJzZSAnJS0uKnMnLCB3aGljaCBzaG91bGQgaGF2ZSBiZWVuIGEgZGlnaXQgaW5zaWRlIGEgY2hhcmFjdGVyIHJlZmVyZW5jZSAoJiMyMzQ7IGZvciBleGFtcGxlKSAtIHBlcmhhcHMgdGhlIGRpZ2l0IGlzIHRvbyBsYXJnZQBGYWlsZWQgdG8gcmVhZCBkYXRhIGZyb20gY2hpbGQgcHJvY2VzcwBGYWlsZWQgdG8gcmVhZCBkYXRhIGZyb20gY2hpbGQgcHJvY2VzcyAoJXMpAEZhaWxlZCB0byByZWFkIGVub3VnaCBkYXRhIGZyb20gY2hpbGQgcGlkIHBpcGUgKCVzKQBGYWlsZWQgdG8gcmVhZCBmcm9tIGNoaWxkIHBpcGUgKCVzKQBGYWlsZWQgdG8gcmVhZCBmcm9tIGZpbGUgJyVzJzogJXMARmFpbGVkIHRvIHJlYWQgdGhlIHN5bWJvbGljIGxpbmsgJyVzJzogJXMARmFpbGVkIHRvIHJlZGlyZWN0IG91dHB1dCBvciBpbnB1dCBvZiBjaGlsZCBwcm9jZXNzICglcykARmFpbGVkIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJzogZ19yZW5hbWUoKSBmYWlsZWQ6ICVzAEZhaWxlZCB0byByZXNpemUgbWVtb3J5IG91dHB1dCBzdHJlYW0ARmFpbGVkIHRvIHNldCAnJXMnIGFzIHRoZSBkZWZhdWx0IGhhbmRsZXIgZm9yICclcyc6ICVzCgBGYWlsZWQgdG8gd3JpdGUgZmlsZSAnJXMnOiBmc3luYygpIGZhaWxlZDogJXMARmFpbGVkIHRvIHdyaXRlIGZpbGUgJyVzJzogd3JpdGUoKSBmYWlsZWQ6ICVzAEZpbGUgIiVzIiBpcyB0b28gbGFyZ2UARmlsZSAlcyBhcHBlYXJzIG11bHRpcGxlIHRpbWVzIGluIHRoZSByZXNvdXJjZQBGaWxlIGVudW1lcmF0b3IgaGFzIG91dHN0YW5kaW5nIG9wZXJhdGlvbgBGaWxlIGVudW1lcmF0b3IgaXMgYWxyZWFkeSBjbG9zZWQARmlsZSBuYW1lcyBjYW5ub3QgY29udGFpbiAnJWMnAEZpbGVzeXN0ZW0gZG9lcyBub3Qgc3VwcG9ydCBzeW1ib2xpYyBsaW5rcwBGaWxlc3lzdGVtIHJvb3QARmlyc3QgdG9rZW4gb2YgbGluZSAlZCBvZiB0aGUga2V5cmluZyBhdCAnJXMnIHdpdGggY29udGVudCAnJXMnIGlzIG1hbGZvcm1lZABGb2xsb3cgc3ltYm9saWMgbGlua3MsIG1vdW50cyBhbmQgc2hvcnRjdXRzAEdBcHBsaWNhdGlvbiBvcHRpb25zAEdDcmVkZW50aWFscyBkb2VzIG5vdCBjb250YWluIGEgcHJvY2VzcyBJRCBvbiB0aGlzIE9TAEdDcmVkZW50aWFscyBpcyBub3QgaW1wbGVtZW50ZWQgb24gdGhpcyBPUwBHRGF0ZVRpbWUEJUg6JU06JVMAR0RhdGVUaW1lBCVJOiVNOiVTICVwAEdEYXRlVGltZQQlYSAlYiAlZSAlSDolTTolUyAlWQBHRGF0ZVRpbWUEJW0vJWQvJXkAR0RhdGVUaW1lBEFNAEdEYXRlVGltZQRQTQBHU29ja2V0Q29udHJvbE1lc3NhZ2Ugbm90IHN1cHBvcnRlZCBvbiBXaW5kb3dzAEdlbmVyYXRlIGRlcGVuZGVuY3kgbGlzdABHZW5lcmF0ZSBvdXRwdXQgaW4gdGhlIGZvcm1hdCBzZWxlY3RlZCBmb3IgYnkgdGhlIHRhcmdldCBmaWxlbmFtZSBleHRlbnNpb24AR2VuZXJhdGUgc291cmNlIGhlYWRlcgBHZW5lcmF0ZSBzb3VyY2Vjb2RlIHVzZWQgdG8gbGluayBpbiB0aGUgcmVzb3VyY2UgZmlsZSBpbnRvIHlvdXIgY29kZQBHZXQgZmlsZSBzeXN0ZW0gaW5mbwBHZXQgb3Igc2V0IHRoZSBoYW5kbGVyIGZvciBhIG1pbWV0eXBlAEdldCBvciBzZXQgdGhlIGhhbmRsZXIgZm9yIGEgbWltZXR5cGUuAEdldCB0aGUgdmFsdWUgb2YgS0VZAEhBTkRMRVIASFRUUCBwcm94eSBhdXRoZW50aWNhdGlvbiBmYWlsZWQASFRUUCBwcm94eSBhdXRoZW50aWNhdGlvbiByZXF1aXJlZABIVFRQIHByb3h5IGNvbm5lY3Rpb24gZmFpbGVkOiAlaQBIVFRQIHByb3h5IGNvbm5lY3Rpb24gbm90IGFsbG93ZWQASFRUUCBwcm94eSBzZXJ2ZXIgY2xvc2VkIGNvbm5lY3Rpb24gdW5leHBlY3RlZGx5LgBIZWxwIE9wdGlvbnM6AEhvc3QgdW5yZWFjaGFibGUASG9zdCB1bnJlYWNoYWJsZSB0aHJvdWdoIFNPQ0tTdjUgc2VydmVyLgBIb3N0bmFtZSAnJXMnIGNvbnRhaW5zICdbJyBidXQgbm90ICddJwBIb3N0bmFtZSAnJXMnIGlzIHRvbyBsb25nIGZvciBTT0NLU3Y0IHByb3RvY29sAEhvc3RuYW1lICclcycgaXMgdG9vIGxvbmcgZm9yIFNPQ0tTdjUgcHJvdG9jb2wASWYgbm8gaGFuZGxlciBpcyBnaXZlbiwgbGlzdHMgcmVnaXN0ZXJlZCBhbmQgcmVjb21tZW5kZWQgYXBwbGljYXRpb25zCmZvciB0aGUgbWltZXR5cGUuIElmIGEgaGFuZGxlciBpcyBnaXZlbiwgaXQgaXMgc2V0IGFzIHRoZSBkZWZhdWx0CmhhbmRsZXIgZm9yIHRoZSBtaW1ldHlwZS4ASWdub3JlIG5vbmV4aXN0ZW50IGZpbGVzLCBuZXZlciBwcm9tcHQASWdub3JlIG91dHN0YW5kaW5nIGZpbGUgb3BlcmF0aW9ucyB3aGVuIHVubW91bnRpbmcgb3IgZWplY3RpbmcASWdub3JlZCwgZm9yIGNvbXBhdCB3aXRoIEdUZXN0RGJ1cwBJZ25vcmluZyBvdmVycmlkZSBmb3IgdGhpcyBrZXkuCgBJZ25vcmluZyB0aGlzIGZpbGUuCgBJbmNvbXBsZXRlIG11bHRpYnl0ZSBzZXF1ZW5jZSBpbiBpbnB1dABJbnB1dCBzdHJlYW0gZG9lc24ndCBpbXBsZW1lbnQgcmVhZABJbnB1dCBzdHJlYW0gZG9lc24ndCBpbXBsZW1lbnQgc2VlawBJbnRlZ2VyIHZhbHVlICclcycgZm9yICVzIG91dCBvZiByYW5nZQBJbnRlZ2VyIHZhbHVlICclcycgb3V0IG9mIHJhbmdlAEludGVybmFsIFNPQ0tTdjUgcHJveHkgc2VydmVyIGVycm9yLgBJbnRlcm5hbCBlcnJvcjogJXMASW50cm9zcGVjdCBhIHJlbW90ZSBvYmplY3QuAEludHJvc3BlY3QgY2hpbGRyZW4ASW52YWxpZCBHU2Vla1R5cGUgc3VwcGxpZWQASW52YWxpZCBVVEYtOCBlbmNvZGVkIHRleHQgaW4gbmFtZSAtIG5vdCB2YWxpZCAnJXMnAEludmFsaWQgYXR0cmlidXRlIHR5cGUgJXMKAEludmFsaWQgYXR0cmlidXRlIHR5cGUgKGJ5dGUgc3RyaW5nIGV4cGVjdGVkKQBJbnZhbGlkIGF0dHJpYnV0ZSB0eXBlIChzdHJpbmcgZXhwZWN0ZWQpAEludmFsaWQgYXR0cmlidXRlIHR5cGUgKHVpbnQzMiBleHBlY3RlZCkASW52YWxpZCBhdHRyaWJ1dGUgdHlwZSAodWludDY0IGV4cGVjdGVkKQBJbnZhbGlkIGJ5dGUgc2VxdWVuY2UgaW4gY29udmVyc2lvbiBpbnB1dABJbnZhbGlkIGNvbXByZXNzZWQgZGF0YQBJbnZhbGlkIGVuZGlhbm5lc3MgdmFsdWUuIEV4cGVjdGVkIDB4NmMgKCdsJykgb3IgMHg0MiAoJ0InKSBidXQgZm91bmQgdmFsdWUgMHglMDJ4AEludmFsaWQgZXh0ZW5kZWQgYXR0cmlidXRlIG5hbWUASW52YWxpZCBmaWxlbmFtZQBJbnZhbGlkIGZpbGVuYW1lICVzAEludmFsaWQgZ3JvdXAgbmFtZTogJXMASW52YWxpZCBob3N0bmFtZQBJbnZhbGlkIGtleSBuYW1lOiAlcwBJbnZhbGlkIG1ham9yIHByb3RvY29sIHZlcnNpb24uIEV4cGVjdGVkIDEgYnV0IGZvdW5kICVkAEludmFsaWQgb2JqZWN0LCBub3QgaW5pdGlhbGl6ZWQASW52YWxpZCBwcm9ncmFtIG5hbWU6ICVzAEludmFsaWQgc2VlayByZXF1ZXN0AEludmFsaWQgc2VxdWVuY2UgaW4gY29udmVyc2lvbiBpbnB1dABJbnZhbGlkIHNvY2tldCwgaW5pdGlhbGl6YXRpb24gZmFpbGVkIGR1ZSB0bzogJXMASW52YWxpZCBzb2NrZXQsIG5vdCBpbml0aWFsaXplZABJbnZhbGlkIHN0cmluZyBpbiBhcmd1bWVudCB2ZWN0b3IgYXQgJWQ6ICVzAEludmFsaWQgc3RyaW5nIGluIGVudmlyb25tZW50OiAlcwBJbnZhbGlkIHN5bWxpbmsgdmFsdWUgZ2l2ZW4ASW52YWxpZCB3b3JraW5nIGRpcmVjdG9yeTogJXMASW52b2tlIGEgbWV0aG9kIG9uIGEgcmVtb3RlIG9iamVjdC4ASW52b2tlIGFuIGFjdGlvbiBvbiB0aGUgYXBwbGljYXRpb24AS2VlcCB3aXRoIGZpbGUgd2hlbiBtb3ZlZABLZXkgJyVzJyBpbiBncm91cCAnJXMnIGhhcyB2YWx1ZSAnJXMnIHdoZXJlICVzIHdhcyBleHBlY3RlZABLZXkgZmlsZSBjb250YWlucyBlc2NhcGUgY2hhcmFjdGVyIGF0IGVuZCBvZiBsaW5lAEtleSBmaWxlIGNvbnRhaW5zIGludmFsaWQgZXNjYXBlIHNlcXVlbmNlICclcycAS2V5IGZpbGUgY29udGFpbnMga2V5ICclcycgaW4gZ3JvdXAgJyVzJyB3aGljaCBoYXMgYSB2YWx1ZSB0aGF0IGNhbm5vdCBiZSBpbnRlcnByZXRlZC4AS2V5IGZpbGUgY29udGFpbnMga2V5ICclcycgd2hpY2ggaGFzIGEgdmFsdWUgdGhhdCBjYW5ub3QgYmUgaW50ZXJwcmV0ZWQuAEtleSBmaWxlIGNvbnRhaW5zIGtleSAnJXMnIHdpdGggdmFsdWUgJyVzJyB3aGljaCBpcyBub3QgVVRGLTgAS2V5IGZpbGUgY29udGFpbnMgbGluZSAnJXMnIHdoaWNoIGlzIG5vdCBhIGtleS12YWx1ZSBwYWlyLCBncm91cCwgb3IgY29tbWVudABLZXkgZmlsZSBjb250YWlucyB1bnN1cHBvcnRlZCBlbmNvZGluZyAnJXMnAEtleSBmaWxlIGRvZXMgbm90IGhhdmUgZ3JvdXAgJyVzJwBLZXkgZmlsZSBkb2VzIG5vdCBoYXZlIGtleSAnJXMnIGluIGdyb3VwICclcycAS2V5IGZpbGUgZG9lcyBub3Qgc3RhcnQgd2l0aCBhIGdyb3VwAEtleS9WYWx1ZSBwYWlyICVkLCAnJXMnLCBpbiBhZGRyZXNzIGVsZW1lbnQgJyVzJyBkb2VzIG5vdCBjb250YWluIGFuIGVxdWFsIHNpZ24ATE9DQVRJT04ATGF1bmNoIGFuIGFwcGxpY2F0aW9uAExhdW5jaCB0aGUgYXBwbGljYXRpb24gKHdpdGggb3B0aW9uYWwgZmlsZXMgdG8gb3BlbikATGVmdG92ZXIgdW5jb252ZXJ0ZWQgZGF0YSBpbiByZWFkIGJ1ZmZlcgBMZW5ndGggJXUgaXMgdG9vIGxvbmcgZm9yIGFkZHJlc3MATGluZSAlZCBvZiB0aGUga2V5cmluZyBhdCAnJXMnIHdpdGggY29udGVudCAnJXMnIGlzIG1hbGZvcm1lZABMaXN0AExpc3QgYXBwbGljYXRpb25zAExpc3QgYXZhaWxhYmxlIGFjdGlvbnMATGlzdCBjb250ZW50cyBvZiBkaXJlY3RvcmllcyBpbiBhIHRyZWUtbGlrZSBmb3JtYXQuAExpc3Qga2V5cyBhbmQgdmFsdWVzLCByZWN1cnNpdmVseQpJZiBubyBTQ0hFTUEgaXMgZ2l2ZW4sIGxpc3QgYWxsIGtleXMKAExpc3QgcmVzb3VyY2VzCklmIFNFQ1RJT04gaXMgZ2l2ZW4sIG9ubHkgbGlzdCByZXNvdXJjZXMgaW4gdGhpcyBzZWN0aW9uCklmIFBBVEggaXMgZ2l2ZW4sIG9ubHkgbGlzdCBtYXRjaGluZyByZXNvdXJjZXMATGlzdCByZXNvdXJjZXMgd2l0aCBkZXRhaWxzCklmIFNFQ1RJT04gaXMgZ2l2ZW4sIG9ubHkgbGlzdCByZXNvdXJjZXMgaW4gdGhpcyBzZWN0aW9uCklmIFBBVEggaXMgZ2l2ZW4sIG9ubHkgbGlzdCBtYXRjaGluZyByZXNvdXJjZXMKRGV0YWlscyBpbmNsdWRlIHRoZSBzZWN0aW9uLCBzaXplIGFuZCBjb21wcmVzc2lvbgBMaXN0IHNlY3Rpb25zIGNvbnRhaW5pbmcgcmVzb3VyY2VzIGluIGFuIGVsZiBGSUxFAExpc3Qgc3RhdGljIGFjdGlvbnMgZm9yIGFuIGFwcGxpY2F0aW9uIChmcm9tIC5kZXNrdG9wIGZpbGUpAExpc3QgdGhlIGNoaWxkcmVuIG9mIFNDSEVNQQBMaXN0IHRoZSBjb250ZW50cyBvZiBsb2NhdGlvbnMATGlzdCB0aGUgY29udGVudHMgb2YgdGhlIGxvY2F0aW9ucy4ATGlzdCB0aGUgaW5zdGFsbGVkIChub24tcmVsb2NhdGFibGUpIHNjaGVtYXMATGlzdCB0aGUgaW5zdGFsbGVkIEQtQnVzIGFjdGl2YXRhYmxlIGFwcGxpY2F0aW9ucyAoYnkgLmRlc2t0b3AgZmlsZXMpAExpc3QgdGhlIGluc3RhbGxlZCByZWxvY2F0YWJsZSBzY2hlbWFzAExpc3QgdGhlIGtleXMgaW4gU0NIRU1BAExpc3Qgd3JpdGFibGUgYXR0cmlidXRlcwBMaXN0ZW5lciBpcyBhbHJlYWR5IGNsb3NlZABMaXN0cyB0aGUgY29udGVudHMgb2YgbG9jYXRpb25zIGluIGEgdHJlZQBMb2NhdGlvbiBub3Qgc3BlY2lmaWVkAE1FVEhPRF9DQUxMIG1lc3NhZ2U6IFBBVEggb3IgTUVNQkVSIGhlYWRlciBmaWVsZCBpcyBtaXNzaW5nAE1FVEhPRF9SRVRVUk4gbWVzc2FnZTogUkVQTFlfU0VSSUFMIGhlYWRlciBmaWVsZCBpcyBtaXNzaW5nAE1JTUVUWVBFAE1hbGZvcm1lZCBpbnB1dCBkYXRhIGZvciBHRmlsZUljb24ATWFsZm9ybWVkIG51bWJlciBvZiB0b2tlbnMgKCVkKSBpbiBHRW1ibGVtIGVuY29kaW5nAE1hbGZvcm1lZCBudW1iZXIgb2YgdG9rZW5zICglZCkgaW4gR0VtYmxlbWVkSWNvbiBlbmNvZGluZwBNYWxmb3JtZWQgdmVyc2lvbiBudW1iZXI6ICVzAE1lYW5pbmdsZXNzIGtleS92YWx1ZSBwYWlyIGNvbWJpbmF0aW9uIGluIGFkZHJlc3MgZW50cnkgJyVzJwBNZW1vcnkgb3V0cHV0IHN0cmVhbSBub3QgcmVzaXphYmxlAE1lc3NhZ2UgYm9keSBoYXMgc2lnbmF0dXJlICclcycgYnV0IHRoZXJlIGlzIG5vIHNpZ25hdHVyZSBoZWFkZXIATWVzc2FnZSBib2R5IGhhcyB0eXBlIHNpZ25hdHVyZSAnJXMnIGJ1dCBzaWduYXR1cmUgaW4gdGhlIGhlYWRlciBmaWVsZCBpcyAnJXMnAE1lc3NhZ2UgYm9keSBpcyBlbXB0eSBidXQgc2lnbmF0dXJlIGluIHRoZSBoZWFkZXIgZmllbGQgaXMgJyglcyknAE1lc3NhZ2UgaGFzICVkIGZpbGUgZGVzY3JpcHRvcnMgYnV0IHRoZSBoZWFkZXIgZmllbGQgaW5kaWNhdGVzICVkIGZpbGUgZGVzY3JpcHRvcnMATWV0aG9kICclcycgb24gaW50ZXJmYWNlICclcycgd2l0aCBzaWduYXR1cmUgJyVzJyBkb2VzIG5vdCBleGlzdABNZXRob2QgJyVzJyByZXR1cm5lZCB0eXBlICclcycsIGJ1dCBleHBlY3RlZCAnJXMnAE1ldGhvZCBhbmQgaW50ZXJmYWNlIG5hbWUATWlzc2luZyBhcmd1bWVudABNaXNzaW5nIGFyZ3VtZW50IGZvciAlcwBNb25pdG9yIEtFWSBmb3IgY2hhbmdlcy4KSWYgbm8gS0VZIGlzIHNwZWNpZmllZCwgbW9uaXRvciBhbGwga2V5cyBpbiBTQ0hFTUEuClVzZSBeQyB0byBzdG9wIG1vbml0b3JpbmcuCgBNb25pdG9yIGEgZGlyZWN0b3J5IChkZWZhdWx0OiBkZXBlbmRzIG9uIHR5cGUpAE1vbml0b3IgYSBmaWxlIChkZWZhdWx0OiBkZXBlbmRzIG9uIHR5cGUpAE1vbml0b3IgYSBmaWxlIGRpcmVjdGx5IChub3RpY2VzIGNoYW5nZXMgbWFkZSB2aWEgaGFyZGxpbmtzKQBNb25pdG9yIGEgcmVtb3RlIG9iamVjdC4ATW9uaXRvciBldmVudHMATW9uaXRvciBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgZm9yIGNoYW5nZXMATW9uaXRvciBmaWxlcyBvciBkaXJlY3RvcmllcyBmb3IgY2hhbmdlcy4ATW9uaXRvcnMgYSBmaWxlIGRpcmVjdGx5LCBidXQgZG9lc24ndCByZXBvcnQgY2hhbmdlcwBNb3VudCBhcyBtb3VudGFibGUATW91bnQgb3IgdW5tb3VudCB0aGUgbG9jYXRpb25zAE1vdW50IG9yIHVubW91bnQgdGhlIGxvY2F0aW9ucy4ATW91bnQgdm9sdW1lIHdpdGggZGV2aWNlIGZpbGUATW91bnRlZCAlcyBhdCAlcwoATW92ZSBiZXR3ZWVuIG1vdW50cyBub3Qgc3VwcG9ydGVkAE1vdmUgZmlsZXMgb3IgZGlyZWN0b3JpZXMgdG8gdGhlIHRyYXNoAE1vdmUgZmlsZXMgb3IgZGlyZWN0b3JpZXMgdG8gdGhlIHRyYXNoLgBNb3ZlIG9uZSBvciBtb3JlIGZpbGVzAE1vdmUgb25lIG9yIG1vcmUgZmlsZXMgZnJvbSBTT1VSQ0UgdG8gREVTVC4ATXVsdGlwbGUgY29ubmVjdGlvbiBlbmRwb2ludHMgc3BlY2lmaWVkAE11c3Qgc3BlY2lmeSBhIHNpbmdsZSBtaW1ldHlwZSwgYW5kIG1heWJlIGEgaGFuZGxlcgBOQU1FAE5lZWQgbW9yZSBpbnB1dABOZXR3b3JrIHVucmVhY2hhYmxlAE5ldHdvcmsgdW5yZWFjaGFibGUgdGhyb3VnaCBTT0NLU3Y1IHByb3h5LgBOZXR3b3JrTWFuYWdlciB2ZXJzaW9uIHRvbyBvbGQATmV2ZXIgZm9sbG93IHN5bWJvbGljIGxpbmtzAE5vIEROUyByZWNvcmQgb2YgdGhlIHJlcXVlc3RlZCB0eXBlIGZvciAnJXMnAE5vIE1JTUUgdHlwZSBkZWZpbmVkIGluIHRoZSBib29rbWFyayBmb3IgVVJJICclcycATm8gUEVNLWVuY29kZWQgY2VydGlmaWNhdGUgZm91bmQATm8gUEVNLWVuY29kZWQgcHJpdmF0ZSBrZXkgZm91bmQATm8gYWRkcmVzcyBzcGVjaWZpZWQATm8gYXBwbGljYXRpb24gaXMgcmVnaXN0ZXJlZCBhcyBoYW5kbGluZyB0aGlzIGZpbGUATm8gYXBwbGljYXRpb24gd2l0aCBuYW1lICclcycgcmVnaXN0ZXJlZCBhIGJvb2ttYXJrIGZvciAnJXMnAE5vIGJvb2ttYXJrIGZvdW5kIGZvciBVUkkgJyVzJwBObyBjb25uZWN0aW9uIGVuZHBvaW50IHNwZWNpZmllZABObyBkZWZhdWx0IGFwcGxpY2F0aW9ucyBmb3IgJyVzJwoATm8gZGVzdGluYXRpb24gZ2l2ZW4ATm8gZmlsZXMgZ2l2ZW4ATm8gZmlsZXMgdG8gZGVsZXRlAE5vIGZpbGVzIHRvIG9wZW4ATm8gZ3JvdXBzIHNldCBpbiBib29rbWFyayBmb3IgVVJJICclcycATm8gbG9jYXRpb25zIGdpdmVuAE5vIGxvY2F0aW9ucyBnaXZlcwBObyBwcml2YXRlIGZsYWcgaGFzIGJlZW4gZGVmaW5lZCBpbiBib29rbWFyayBmb3IgVVJJICclcycATm8gcmVjb21tZW5kZWQgYXBwbGljYXRpb25zCgBObyByZWdpc3RlcmVkIGFwcGxpY2F0aW9ucwoATm8gc2NoZW1hIGZpbGVzIGZvdW5kOiAATm8gc2NoZW1hcyBpbnN0YWxsZWQKAE5vIHNpZ25hdHVyZSBoZWFkZXIgaW4gbWVzc2FnZSBidXQgdGhlIG1lc3NhZ2UgYm9keSBpcyAldSBieXRlAE5vIHNpZ25hdHVyZSBoZWFkZXIgaW4gbWVzc2FnZSBidXQgdGhlIG1lc3NhZ2UgYm9keSBpcyAldSBieXRlcwBObyBzdWNoIGludGVyZmFjZQBObyBzdWNoIGludGVyZmFjZSAnJXMnAE5vIHN1Y2ggaW50ZXJmYWNlICclcycgb24gb2JqZWN0IGF0IHBhdGggJXMATm8gc3VjaCBpbnRlcmZhY2UgJ29yZy5mcmVlZGVza3RvcC5EQnVzLlByb3BlcnRpZXMnIG9uIG9iamVjdCBhdCBwYXRoICVzAE5vIHN1Y2gga2V5ICclcycKAE5vIHN1Y2gga2V5ICclcycgaW4gc2NoZW1hICclcycgYXMgc3BlY2lmaWVkIGluIG92ZXJyaWRlIGZpbGUgJyVzJwBObyBzdWNoIG1ldGhvZCAnJXMnAE5vIHN1Y2ggcHJvcGVydHkgJyVzJwBObyBzdWNoIHNjaGVtYSAnJXMnCgBObyBzdXBwb3J0IGZvciBzb3VyY2Utc3BlY2lmaWMgbXVsdGljYXN0AE5vIHRhcmdldCBkaXJlY3RvcnkATm8gdHlwZSBmb3IgY2xhc3MgbmFtZSAlcwBObyB2YWxpZCBhZGRyZXNzZXMgd2VyZSBmb3VuZABObyB2YWxpZCBib29rbWFyayBmaWxlIGZvdW5kIGluIGRhdGEgZGlycwBObyB2b2x1bWUgZm9yIGRldmljZSBmaWxlICVzCgBOb3QgYSByZWd1bGFyIGZpbGUATm90IGVub3VnaCBtZW1vcnkATm90IGVub3VnaCBzcGFjZSBmb3Igc29ja2V0IGFkZHJlc3MATm90IGVub3VnaCBzcGFjZSBpbiBkZXN0aW5hdGlvbgBOb3QgZXhwZWN0aW5nIGNvbnRyb2wgbWVzc2FnZSwgYnV0IGdvdCAlZABPYmplY3QgcGF0aCB0byBlbWl0IHNpZ25hbCBvbgBPYmplY3QgcGF0aCB0byBpbnRyb3NwZWN0AE9iamVjdCBwYXRoIHRvIGludm9rZSBtZXRob2Qgb24AT2JqZWN0IHBhdGggdG8gbW9uaXRvcgBPZGQgY2hhcmFjdGVyICclcycsIGV4cGVjdGVkIGEgJz0nIGFmdGVyIGF0dHJpYnV0ZSBuYW1lICclcycgb2YgZWxlbWVudCAnJXMnAE9kZCBjaGFyYWN0ZXIgJyVzJywgZXhwZWN0ZWQgYSAnPicgY2hhcmFjdGVyIHRvIGVuZCB0aGUgZW1wdHktZWxlbWVudCB0YWcgJyVzJwBPZGQgY2hhcmFjdGVyICclcycsIGV4cGVjdGVkIGEgJz4nIG9yICcvJyBjaGFyYWN0ZXIgdG8gZW5kIHRoZSBzdGFydCB0YWcgb2YgZWxlbWVudCAnJXMnLCBvciBvcHRpb25hbGx5IGFuIGF0dHJpYnV0ZTsgcGVyaGFwcyB5b3UgdXNlZCBhbiBpbnZhbGlkIGNoYXJhY3RlciBpbiBhbiBhdHRyaWJ1dGUgbmFtZQBPZGQgY2hhcmFjdGVyICclcycsIGV4cGVjdGVkIGFuIG9wZW4gcXVvdGUgbWFyayBhZnRlciB0aGUgZXF1YWxzIHNpZ24gd2hlbiBnaXZpbmcgdmFsdWUgZm9yIGF0dHJpYnV0ZSAnJXMnIG9mIGVsZW1lbnQgJyVzJwBPbmx5IGNyZWF0ZSBpZiBub3QgZXhpc3RpbmcAT25seSBvbmUgPCVzPiBlbGVtZW50IGFsbG93ZWQgaW5zaWRlIDwlcz4AT25seSBwcmludCBwcm9wZXJ0aWVzAE9wZW4gZmlsZXMgd2l0aCB0aGUgZGVmYXVsdCBhcHBsaWNhdGlvbgBPcGVuIGZpbGVzIHdpdGggdGhlIGRlZmF1bHQgYXBwbGljYXRpb24gdGhhdAppcyByZWdpc3RlcmVkIHRvIGhhbmRsZSBmaWxlcyBvZiB0aGlzIHR5cGUuAE9wZXJhdGlvbiBub3Qgc3VwcG9ydGVkAE9wZXJhdGlvbiB3YXMgY2FuY2VsbGVkAE9wdGlvbmFsIGRlc3RpbmF0aW9uIGZvciBzaWduYWwgKHVuaXF1ZSBuYW1lKQBPcHRpb25hbCBwYXJhbWV0ZXIgdG8gdGhlIGFjdGlvbiBpbnZvY2F0aW9uLCBpbiBHVmFyaWFudCBmb3JtYXQAT3B0aW9uYWwgcmVsYXRpdmUgb3IgYWJzb2x1dGUgZmlsZW5hbWVzLCBvciBVUklzIHRvIG9wZW4AT3B0aW9ucyBzcGVjaWZ5aW5nIHRoZSBjb25uZWN0aW9uIGVuZHBvaW50AE9wdGlvbnM6AE91dHB1dCBzdHJlYW0gZG9lc24ndCBpbXBsZW1lbnQgd3JpdGUAT3ZlcnJpZGUgdGhlIGFwcGxpY2F0aW9uJ3MgSUQAUEFSQU1FVEVSAFBBVEgAUENSRSBsaWJyYXJ5IGlzIGNvbXBpbGVkIHdpdGggaW5jb21wYXRpYmxlIG9wdGlvbnMAUENSRSBsaWJyYXJ5IGlzIGNvbXBpbGVkIHdpdGhvdXQgVVRGOCBwcm9wZXJ0aWVzIHN1cHBvcnQAUENSRSBsaWJyYXJ5IGlzIGNvbXBpbGVkIHdpdGhvdXQgVVRGOCBzdXBwb3J0AFBPU0lYIGNvbGxhdGluZyBlbGVtZW50cyBhcmUgbm90IHN1cHBvcnRlZABQT1NJWCBuYW1lZCBjbGFzc2VzIGFyZSBzdXBwb3J0ZWQgb25seSB3aXRoaW4gYSBjbGFzcwBQYXJzZWQgdmFsdWUgJyVzJyBmb3IgdmFyaWFudCBpcyBub3QgYSB2YWxpZCBELUJ1cyBzaWduYXR1cmUAUGFyc2VkIHZhbHVlICclcycgaXMgbm90IGEgdmFsaWQgRC1CdXMgb2JqZWN0IHBhdGgAUGFyc2VkIHZhbHVlICclcycgaXMgbm90IGEgdmFsaWQgRC1CdXMgc2lnbmF0dXJlAFBhcnNlZCB2YWx1ZSAnJXMnIGlzIG5vdCBhIHZhbGlkIEQtQnVzIHNpZ25hdHVyZSAoZm9yIGJvZHkpAFBhcnRpYWwgY2hhcmFjdGVyIHNlcXVlbmNlIGF0IGVuZCBvZiBpbnB1dABQYXRoIG11c3QgYmVnaW4gd2l0aCBhIHNsYXNoICgvKQoAUGF0aCBtdXN0IGVuZCB3aXRoIGEgc2xhc2ggKC8pCgBQYXRoIG11c3Qgbm90IGNvbnRhaW4gdHdvIGFkamFjZW50IHNsYXNoZXMgKC8vKQoAUGVybWlzc2lvbnMgb24gZGlyZWN0b3J5ICclcycgYXJlIG1hbGZvcm1lZC4gRXhwZWN0ZWQgbW9kZSAwNzAwLCBnb3QgMCVvAFByZXNlcnZlIGFsbCBhdHRyaWJ1dGVzAFByaW50IFhNTABQcmludCBhZGRyZXNzAFByaW50IGFkZHJlc3MgaW4gc2hlbGwgbW9kZQBQcmludCBmdWxsIFVSSXMAUHJpbnQgaGVscABQcmludCBuZXcgZXRhZyBhdCBlbmQAUHJpbnQgdmVyc2lvbgBQcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uIGFuZCBleGl0AFByaW50IHZlcnNpb24gaW5mb3JtYXRpb24gYW5kIGV4aXQuAFByb21wdCBiZWZvcmUgb3ZlcndyaXRlAFByb3BlcnR5ICclcycgaXMgbm90IHJlYWRhYmxlAFByb3BlcnR5ICclcycgaXMgbm90IHdyaXRhYmxlAFByb3h5IHByb3RvY29sICclcycgaXMgbm90IHN1cHBvcnRlZC4AUHJveHlpbmcgb3ZlciBhIG5vbi1UQ1AgY29ubmVjdGlvbiBpcyBub3Qgc3VwcG9ydGVkLgBRdWVyeSB0aGUgcmFuZ2Ugb2YgdmFsaWQgdmFsdWVzIGZvciBLRVkAUXVvdGVkIHRleHQgZG9lc24ndCBiZWdpbiB3aXRoIGEgcXVvdGF0aW9uIG1hcmsAUmVhZCBmcm9tIHN0YW5kYXJkIGlucHV0IGFuZCBzYXZlAFJlYWQgZnJvbSBzdGFuZGFyZCBpbnB1dCBhbmQgc2F2ZSB0byBERVNULgBSZWNlaXZlZCBpbnZhbGlkIGZkAFJlY29tbWVuZGVkIGFwcGxpY2F0aW9uczoKAFJlZ2lzdGVyZWQgYXBwbGljYXRpb25zOgoAUmVuYW1lIGEgZmlsZQBSZW5hbWUgYSBmaWxlLgBSZW5hbWUgc3VjY2Vzc2Z1bC4gTmV3IHVyaTogJXMKAFJlcG9ydCBtb3ZlcyBhbmQgcmVuYW1lcyBhcyBzaW1wbGUgZGVsZXRlZC9jcmVhdGVkIGV2ZW50cwBSZXF1ZXN0ZWQgc2VlayBiZWZvcmUgdGhlIGJlZ2lubmluZyBvZiB0aGUgc3RyZWFtAFJlcXVlc3RlZCBzZWVrIGJleW9uZCB0aGUgZW5kIG9mIHRoZSBzdHJlYW0AUmVzZXQgS0VZIHRvIGl0cyBkZWZhdWx0IHZhbHVlAFJlc2V0IGFsbCBrZXlzIGluIFNDSEVNQSB0byB0aGVpciBkZWZhdWx0cwBSdW4gYSBkYnVzIHNlcnZpY2UAU0NIRU1BWzpQQVRIXQBTQ0hFTUFbOlBBVEhdIEtFWQBTQ0hFTUFbOlBBVEhdIEtFWSBWQUxVRQBTQ0hFTUFbOlBBVEhdIFtLRVldAFNDSEVNRQBTRUNUSU9OAFNFTGludXggY29udGV4dCBtdXN0IGJlIG5vbi1OVUxMAFNFTGludXggaXMgbm90IGVuYWJsZWQgb24gdGhpcyBzeXN0ZW0AU0lHTkFMIG1lc3NhZ2U6IFBBVEgsIElOVEVSRkFDRSBvciBNRU1CRVIgaGVhZGVyIGZpZWxkIGlzIG1pc3NpbmcAU0lHTkFMIG1lc3NhZ2U6IFRoZSBJTlRFUkZBQ0UgaGVhZGVyIGZpZWxkIGlzIHVzaW5nIHRoZSByZXNlcnZlZCB2YWx1ZSBvcmcuZnJlZWRlc2t0b3AuREJ1cy5Mb2NhbABTSUdOQUwgbWVzc2FnZTogVGhlIFBBVEggaGVhZGVyIGZpZWxkIGlzIHVzaW5nIHRoZSByZXNlcnZlZCB2YWx1ZSAvb3JnL2ZyZWVkZXNrdG9wL0RCdXMvTG9jYWwAU09DS1N2NCBkb2VzIG5vdCBzdXBwb3J0IElQdjYgYWRkcmVzcyAnJXMnAFNPQ0tTdjUgYXV0aGVudGljYXRpb24gZmFpbGVkIGR1ZSB0byB3cm9uZyB1c2VybmFtZSBvciBwYXNzd29yZC4AU09DS1N2NSBjb25uZWN0aW9uIG5vdCBhbGxvd2VkIGJ5IHJ1bGVzZXQuAFNPQ0tTdjUgcHJveHkgZG9lcyBub3Qgc3VwcG9ydCAnY29ubmVjdCcgY29tbWFuZC4AU09DS1N2NSBwcm94eSBkb2VzIG5vdCBzdXBwb3J0IHByb3ZpZGVkIGFkZHJlc3MgdHlwZS4AU09VUkNFAFNjaGVtYSAnJXMnIGlzIG5vdCByZWxvY2F0YWJsZSAocGF0aCBtdXN0IG5vdCBiZSBzcGVjaWZpZWQpCgBTY2hlbWEgJyVzJyBpcyByZWxvY2F0YWJsZSAocGF0aCBtdXN0IGJlIHNwZWNpZmllZCkKAFNlY29uZCB0b2tlbiBvZiBsaW5lICVkIG9mIHRoZSBrZXlyaW5nIGF0ICclcycgd2l0aCBjb250ZW50ICclcycgaXMgbWFsZm9ybWVkAFNlZWsgbm90IHN1cHBvcnRlZCBvbiBiYXNlIHN0cmVhbQBTZWVrIG5vdCBzdXBwb3J0ZWQgb24gc3RyZWFtAFNlc3Npb24gZGJ1cyBub3QgcnVubmluZywgYW5kIGF1dG9sYXVuY2ggZmFpbGVkAFNldCBhIGZpbGUgYXR0cmlidXRlAFNldCBhIGZpbGUgYXR0cmlidXRlIG9mIExPQ0FUSU9OLgBTZXQgdGhlIHZhbHVlIG9mIEtFWSB0byBWQUxVRQBTZXR0YWJsZSBhdHRyaWJ1dGVzOgoAU2V0dGluZyBhdHRyaWJ1dGUgJXMgbm90IHN1cHBvcnRlZABTZXZlcmFsIHBhc3N3b3JkIGVudGVyZWQgaGF2ZSBiZWVuIGluY29ycmVjdCwgYW5kIHlvdXIgYWNjZXNzIHdpbGwgYmUgbG9ja2VkIG91dCBhZnRlciBmdXJ0aGVyIGZhaWx1cmVzLgBTaG93IEdBcHBsaWNhdGlvbiBvcHRpb25zAFNob3cgYWxsIGhlbHAgb3B0aW9ucwBTaG93IGV4dHJhIGluZm9ybWF0aW9uAFNob3cgaGVscCBvcHRpb25zAFNob3cgaGlkZGVuIGZpbGVzAFNob3cgaW5mb3JtYXRpb24gYWJvdXQgbG9jYXRpb25zAFNob3cgaW5mb3JtYXRpb24gYWJvdXQgbG9jYXRpb25zLgBTaG93IHByb2dyZXNzAFNpZ25hbCBhbmQgaW50ZXJmYWNlIG5hbWUAU2lnbmF0dXJlIGhlYWRlciB3aXRoIHNpZ25hdHVyZSAnJXMnIGZvdW5kIGJ1dCBtZXNzYWdlIGJvZHkgaXMgZW1wdHkAU29ja2V0IEkvTyB0aW1lZCBvdXQAU29ja2V0IGlzIGFscmVhZHkgY2xvc2VkAFNvdXJjZSBzdHJlYW0gaXMgYWxyZWFkeSBjbG9zZWQAU3BsaWNlIG5vdCBzdXBwb3J0ZWQAU3RyZWFtIGRvZXNuJ3Qgc3VwcG9ydCBxdWVyeV9pbmZvAFN0cmVhbSBoYXMgb3V0c3RhbmRpbmcgb3BlcmF0aW9uAFN0cmVhbSBpcyBhbHJlYWR5IGNsb3NlZABTeW1ib2xpYyBsaW5rcyBub3Qgc3VwcG9ydGVkAFRMUyBzdXBwb3J0IGlzIG5vdCBhdmFpbGFibGUAVFlQRQBUYXJnZXQgJXMgaXMgbm90IGEgZGlyZWN0b3J5AFRhcmdldCBmaWxlIGV4aXN0cwBUYXJnZXQgZmlsZSBpcyBhIGRpcmVjdG9yeQBUYXJnZXQgZmlsZSBpcyBub3QgYSByZWd1bGFyIGZpbGUAVGVtcGxhdGUgJyVzJyBkb2Vzbid0IGNvbnRhaW4gWFhYWFhYAFRlbXBsYXRlICclcycgaW52YWxpZCwgc2hvdWxkIG5vdCBjb250YWluIGEgJyVzJwBUZW1wb3JhcmlseSB1bmFibGUgdG8gcmVzb2x2ZSAnJXMnAFRleHQgZW5kZWQgYmVmb3JlIG1hdGNoaW5nIHF1b3RlIHdhcyBmb3VuZCBmb3IgJWMuIChUaGUgdGV4dCB3YXMgJyVzJykAVGV4dCBlbmRlZCBqdXN0IGFmdGVyIGEgJ1wnIGNoYXJhY3Rlci4gKFRoZSB0ZXh0IHdhcyAnJXMnKQBUZXh0IHdhcyBlbXB0eSAob3IgY29udGFpbmVkIG9ubHkgd2hpdGVzcGFjZSkAVGhlIFNPQ0tTdjUgcHJveHkgcmVxdWlyZXMgYW4gYXV0aGVudGljYXRpb24gbWV0aG9kIHRoYXQgaXMgbm90IHN1cHBvcnRlZCBieSBHTGliLgBUaGUgU09DS1N2NSBwcm94eSByZXF1aXJlcyBhdXRoZW50aWNhdGlvbi4AVGhlIFNPQ0tTdjUgcHJveHkgc2VydmVyIHVzZXMgdW5rbm93biBhZGRyZXNzIHR5cGUuAFRoZSBVUkkgJyVzJyBjb250YWlucyBpbnZhbGlkbHkgZXNjYXBlZCBjaGFyYWN0ZXJzAFRoZSBVUkkgJyVzJyBpcyBpbnZhbGlkAFRoZSBVUkkgJyVzJyBpcyBub3QgYW4gYWJzb2x1dGUgVVJJIHVzaW5nIHRoZSAiZmlsZSIgc2NoZW1lAFRoZSBhY3Rpb24gbmFtZSB0byBpbnZva2UAVGhlIGF0dHJpYnV0ZXMgdG8gZ2V0AFRoZSBjb21tYW5kIHRvIHByaW50IGRldGFpbGVkIGhlbHAgZm9yAFRoZSBjb25uZWN0aW9uIGlzIGNsb3NlZABUaGUgZGlyZWN0b3JpZXMgd2hlcmUgZmlsZXMgYXJlIHRvIGJlIHJlYWQgZnJvbSAoZGVmYXVsdCB0byBjdXJyZW50IGRpcmVjdG9yeSkAVGhlIGV0YWcgb2YgdGhlIGZpbGUgYmVpbmcgb3ZlcndyaXR0ZW4AVGhlIGZpbGUgd2FzIGV4dGVybmFsbHkgbW9kaWZpZWQAVGhlIGdpdmVuIGFkZHJlc3MgaXMgZW1wdHkAVGhlIGhvc3RuYW1lIG9mIHRoZSBVUkkgJyVzJyBpcyBpbnZhbGlkAFRoZSBrZXkgaXMgbm90IHdyaXRhYmxlCgBUaGUgbG9jYWwgZmlsZSBVUkkgJyVzJyBtYXkgbm90IGluY2x1ZGUgYSAnIycAVGhlIHBhc3N3b3JkIGVudGVyZWQgaXMgaW5jb3JyZWN0LgBUaGUgcGF0aG5hbWUgJyVzJyBpcyBub3QgYW4gYWJzb2x1dGUgcGF0aABUaGUgcHJvdmlkZWQgdmFsdWUgaXMgb3V0c2lkZSBvZiB0aGUgdmFsaWQgcmFuZ2UKAFRoZSByZXNvdXJjZSBhdCAnJXMnIGRvZXMgbm90IGV4aXN0AFRoZSByZXNvdXJjZSBhdCAnJXMnIGZhaWxlZCB0byBkZWNvbXByZXNzAFRoZSByZXNvdXJjZSBhdCAnJXMnIGlzIG5vdCBhIGRpcmVjdG9yeQBUaGUgc2VydmVyIGlzIG5vdCBhIFNPQ0tTdjQgcHJveHkgc2VydmVyLgBUaGUgc2VydmVyIGlzIG5vdCBhIFNPQ0tTdjUgcHJveHkgc2VydmVyLgBUaGUgc3RyaW5nICclcycgaXMgbm90IGEgdmFsaWQgRC1CdXMgR1VJRABUaGVyZSBpcyBubyBHQ3JlZGVudGlhbHMgc3VwcG9ydCBmb3IgeW91ciBwbGF0Zm9ybQBUaGlzIGVudGlyZSBmaWxlIGhhcyBiZWVuIGlnbm9yZWQuCgBUaGlzIGlzIHRoZSBsYXN0IGNoYW5jZSB0byBlbnRlciB0aGUgcGFzc3dvcmQgY29ycmVjdGx5IGJlZm9yZSB5b3VyIGFjY2VzcyBpcyBsb2NrZWQgb3V0LgBUaW1lb3V0IGluIHNlY29uZHMAVGltZW91dCB3YXMgcmVhY2hlZABUb28gbGFyZ2UgY291bnQgdmFsdWUgcGFzc2VkIHRvICVzAFRvbyBtYW55IGFyZ3VtZW50cwBUcmFuc2ZlcnJlZCAlcyBvdXQgb2YgJXMgKCVzL3MpAFRyYXNoIG5vdCBzdXBwb3J0ZWQAVHJ1bmNhdGUgbm90IGFsbG93ZWQgb24gaW5wdXQgc3RyZWFtAFRydW5jYXRlIG5vdCBzdXBwb3J0ZWQgb24gYmFzZSBzdHJlYW0AVHJ1bmNhdGUgbm90IHN1cHBvcnRlZCBvbiBzdHJlYW0AVHlwZSAlcyBkb2VzIG5vdCBpbXBsZW1lbnQgZnJvbV90b2tlbnMoKSBvbiB0aGUgR0ljb24gaW50ZXJmYWNlAFR5cGUgJXMgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBHSWNvbiBpbnRlcmZhY2UAVHlwZSAlcyBpcyBub3QgY2xhc3NlZABUeXBlIG9mIG1lc3NhZ2UsICclcycsIGRvZXMgbm90IG1hdGNoIGV4cGVjdGVkIHR5cGUgJyVzJwBUeXBlIG9mIHRoZSBhdHRyaWJ1dGUAVW5hYmxlIHRvIGNyZWF0ZSBzb2NrZXQ6ICVzAFVuYWJsZSB0byBjcmVhdGUgdHJhc2ggZGlyICVzOiAlcwBVbmFibGUgdG8gY3JlYXRlIHRyYXNoaW5nIGluZm8gZmlsZTogJXMAVW5hYmxlIHRvIGZpbmQgZGVmYXVsdCBsb2NhbCBmaWxlIG1vbml0b3IgdHlwZQBVbmFibGUgdG8gZmluZCBvciBjcmVhdGUgdHJhc2ggZGlyZWN0b3J5AFVuYWJsZSB0byBmaW5kIHRlcm1pbmFsIHJlcXVpcmVkIGZvciBhcHBsaWNhdGlvbgBVbmFibGUgdG8gZmluZCB0b3BsZXZlbCBkaXJlY3RvcnkgZm9yIHRyYXNoAFVuYWJsZSB0byBnZXQgSGFyZHdhcmUgcHJvZmlsZTogJXMAVW5hYmxlIHRvIGdldCBwZW5kaW5nIGVycm9yOiAAVW5hYmxlIHRvIGxvYWQgL3Zhci9saWIvZGJ1cy9tYWNoaW5lLWlkIG9yIC9ldGMvbWFjaGluZS1pZDogAFVuYWJsZSB0byByZWFkIHNvY2tldCBjcmVkZW50aWFsczogJXMAVW5hYmxlIHRvIHJldHJpZXZlIHByb3BlcnR5ICVzLiVzAFVuYWJsZSB0byBzZXQgcHJvcGVydHkgJXMuJXMAVW5hYmxlIHRvIHNodXRkb3duIHNvY2tldDogJXMAVW5hYmxlIHRvIHRyYXNoIGZpbGU6ICVzAFVuZXhwZWN0ZWQgYXR0cmlidXRlICclcycgZm9yIGVsZW1lbnQgJyVzJwBVbmV4cGVjdGVkIGVhcmx5IGVuZC1vZi1zdHJlYW0AVW5leHBlY3RlZCBlcnJvciBpbiBnX2lvX2NoYW5uZWxfd2luMzJfcG9sbCgpIHJlYWRpbmcgZGF0YSBmcm9tIGEgY2hpbGQgcHJvY2VzcwBVbmV4cGVjdGVkIGVycm9yIGluIHNlbGVjdCgpIHJlYWRpbmcgZGF0YSBmcm9tIGEgY2hpbGQgcHJvY2VzcyAoJXMpAFVuZXhwZWN0ZWQgZXJyb3IgaW4gd2FpdHBpZCgpICglcykAVW5leHBlY3RlZCBsYWNrIG9mIGNvbnRlbnQgdHJ5aW5nIHRvIChzYWZlbHkpIHJlYWQgYSBsaW5lAFVuZXhwZWN0ZWQgbGFjayBvZiBjb250ZW50IHRyeWluZyB0byByZWFkIGEgbGluZQBVbmV4cGVjdGVkIHJlcGx5ICVkIGZyb20gU3RhcnRTZXJ2aWNlQnlOYW1lKCIlcyIpIG1ldGhvZABVbmV4cGVjdGVkIHRhZyAnJXMnIGluc2lkZSAnJXMnAFVuZXhwZWN0ZWQgdGFnICclcycsIHRhZyAnJXMnIGV4cGVjdGVkAFVuZXhwZWN0ZWQgdHlwZSBvZiBhbmNpbGxhcnkgZGF0YQBVbmtub3duIFNPQ0tTdjUgcHJveHkgZXJyb3IuAFVua25vd24gYnVzIHR5cGUgJWQAVW5rbm93biBjb21tYW5kICVzCgoAVW5rbm93biBlcnJvciBleGVjdXRpbmcgY2hpbGQgcHJvY2VzcyAiJXMiAFVua25vd24gZXJyb3Igb24gY29ubmVjdABVbmtub3duIGZhbWlseSB3YXMgc3BlY2lmaWVkAFVua25vd24gb3B0aW9uICVzAFVua25vd24gb3IgdW5zdXBwb3J0ZWQgdHJhbnNwb3J0ICclcycgZm9yIGFkZHJlc3MgJyVzJwBVbmtub3duIHByb2Nlc3Npbmcgb3B0aW9uICIlcyIAVW5rbm93biBwcm90b2NvbCB3YXMgc3BlY2lmaWVkAFVua25vd24gdHlwZQBVbm1hdGNoZWQgcXVvdGF0aW9uIG1hcmsgaW4gY29tbWFuZCBsaW5lIG9yIG90aGVyIHNoZWxsLXF1b3RlZCB0ZXh0AFVubW91bnQAVW5tb3VudCBhbGwgbW91bnRzIHdpdGggdGhlIGdpdmVuIHNjaGVtZQBVbm5hbWVkAFVuc3VwcG9ydGVkIGZsYWdzIGVuY291bnRlcmVkIHdoZW4gY29uc3RydWN0aW5nIGEgY2xpZW50LXNpZGUgY29ubmVjdGlvbgBVbnN1cHBvcnRlZCBrZXkgJyVzJyBpbiBhZGRyZXNzIGVudHJ5ICclcycAVW5zdXBwb3J0ZWQgc29ja2V0IGFkZHJlc3MAVXNhZ2U6AFVzYWdlOgoAVXNhZ2U6CiAgZ3Jlc291cmNlICVzJXMlcyAlcwoKJXMKCgBVc2FnZToKICBncmVzb3VyY2UgWy0tc2VjdGlvbiBTRUNUSU9OXSBDT01NQU5EIFtBUkdTLi4uXQoKQ29tbWFuZHM6CiAgaGVscCAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaW5mb3JtYXRpb24KICBzZWN0aW9ucyAgICAgICAgICAgICAgICAgIExpc3QgcmVzb3VyY2Ugc2VjdGlvbnMKICBsaXN0ICAgICAgICAgICAgICAgICAgICAgIExpc3QgcmVzb3VyY2VzCiAgZGV0YWlscyAgICAgICAgICAgICAgICAgICBMaXN0IHJlc291cmNlcyB3aXRoIGRldGFpbHMKICBleHRyYWN0ICAgICAgICAgICAgICAgICAgIEV4dHJhY3QgYSByZXNvdXJjZQoKVXNlICdncmVzb3VyY2UgaGVscCBDT01NQU5EJyB0byBnZXQgZGV0YWlsZWQgaGVscC4KCgBVc2FnZToKICBnc2V0dGluZ3MgLS12ZXJzaW9uCiAgZ3NldHRpbmdzIFstLXNjaGVtYWRpciBTQ0hFTUFESVJdIENPTU1BTkQgW0FSR1MuLi5dCgpDb21tYW5kczoKICBoZWxwICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBpbmZvcm1hdGlvbgogIGxpc3Qtc2NoZW1hcyAgICAgICAgICAgICAgTGlzdCBpbnN0YWxsZWQgc2NoZW1hcwogIGxpc3QtcmVsb2NhdGFibGUtc2NoZW1hcyAgTGlzdCByZWxvY2F0YWJsZSBzY2hlbWFzCiAgbGlzdC1rZXlzICAgICAgICAgICAgICAgICBMaXN0IGtleXMgaW4gYSBzY2hlbWEKICBsaXN0LWNoaWxkcmVuICAgICAgICAgICAgIExpc3QgY2hpbGRyZW4gb2YgYSBzY2hlbWEKICBsaXN0LXJlY3Vyc2l2ZWx5ICAgICAgICAgIExpc3Qga2V5cyBhbmQgdmFsdWVzLCByZWN1cnNpdmVseQogIHJhbmdlICAgICAgICAgICAgICAgICAgICAgUXVlcmllcyB0aGUgcmFuZ2Ugb2YgYSBrZXkKICBnZXQgICAgICAgICAgICAgICAgICAgICAgIEdldCB0aGUgdmFsdWUgb2YgYSBrZXkKICBzZXQgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgdmFsdWUgb2YgYSBrZXkKICByZXNldCAgICAgICAgICAgICAgICAgICAgIFJlc2V0IHRoZSB2YWx1ZSBvZiBhIGtleQogIHJlc2V0LXJlY3Vyc2l2ZWx5ICAgICAgICAgUmVzZXQgYWxsIHZhbHVlcyBpbiBhIGdpdmVuIHNjaGVtYQogIHdyaXRhYmxlICAgICAgICAgICAgICAgICAgQ2hlY2sgaWYgYSBrZXkgaXMgd3JpdGFibGUKICBtb25pdG9yICAgICAgICAgICAgICAgICAgIFdhdGNoIGZvciBjaGFuZ2VzCgpVc2UgJ2dzZXR0aW5ncyBoZWxwIENPTU1BTkQnIHRvIGdldCBkZXRhaWxlZCBoZWxwLgoKAFVzYWdlOgogIGdzZXR0aW5ncyBbLS1zY2hlbWFkaXIgU0NIRU1BRElSXSAlcyAlcwoKJXMKCgBVc2UgJXMgdG8gZ2V0IGRldGFpbGVkIGhlbHAuCgBVc2UgJyVzIGhlbHAgQ09NTUFORCcgdG8gZ2V0IGRldGFpbGVkIGhlbHAuCgoAVXNlIGEgbG9uZyBsaXN0aW5nIGZvcm1hdABVc2UgYW4gYW5vbnltb3VzIHVzZXIgd2hlbiBhdXRoZW50aWNhdGluZwBVc2VybmFtZSBpcyB0b28gbG9uZyBmb3IgU09DS1N2NCBwcm90b2NvbABVc2VybmFtZSBvciBwYXNzd29yZCBpcyB0b28gbG9uZyBmb3IgU09DS1N2NSBwcm90b2NvbC4AVkFMVUUAVmFsaWQga2V5IGZpbGUgY291bGQgbm90IGJlIGZvdW5kIGluIHNlYXJjaCBkaXJzAFZhbHVlICclcycgY2Fubm90IGJlIGludGVycHJldGVkIGFzIGEgYm9vbGVhbi4AVmFsdWUgJyVzJyBjYW5ub3QgYmUgaW50ZXJwcmV0ZWQgYXMgYSBmbG9hdCBudW1iZXIuAFZhbHVlICclcycgY2Fubm90IGJlIGludGVycHJldGVkIGFzIGEgbnVtYmVyLgBWYWx1ZSBub3Qgc3BlY2lmaWVkAFdhaXRpbmcgZm9yIHNvY2tldCBjb25kaXRpb246ICVzAFdhbnRlZCB0byByZWFkICVsdSBieXRlIGJ1dCBvbmx5IGdvdCAlbHUAV2FudGVkIHRvIHJlYWQgJWx1IGJ5dGVzIGJ1dCBvbmx5IGdvdCAlbHUAV2FybmluZzogQWNjb3JkaW5nIHRvIGludHJvc3BlY3Rpb24gZGF0YSwgaW50ZXJmYWNlICclcycgZG9lcyBub3QgZXhpc3QKAFdhcm5pbmc6IEFjY29yZGluZyB0byBpbnRyb3NwZWN0aW9uIGRhdGEsIG1ldGhvZCAnJXMnIGRvZXMgbm90IGV4aXN0IG9uIGludGVyZmFjZSAnJXMnCgBXYXRjaCBmb3IgbW91bnQgZXZlbnRzAFdoZW4gY3JlYXRpbmcsIHJlc3RyaWN0IGFjY2VzcyB0byB0aGUgY3VycmVudCB1c2VyAFdoZW4gcmVwbGFjaW5nLCByZXBsYWNlIGFzIGlmIHRoZSBkZXN0aW5hdGlvbiBkaWQgbm90IGV4aXN0AFdyaXRhYmxlIGF0dHJpYnV0ZSBuYW1lc3BhY2VzOgoAV3JvbmcgYXJncwoAV3JvbmcgbnVtYmVyIG9mIHRva2VucyAoJWQpAFlvdSBzaG91bGQgZ2l2ZSBleGFjdGx5IG9uZSBkaXJlY3RvcnkgbmFtZQoAWW91IHNob3VsZCBnaXZlIGV4YWN0bHkgb25lIGZpbGUgbmFtZQoAW0FSR1MuLi5dAFtDT01NQU5EXQBbT1BUSU9OLi4uXQBbUEFUSF0AW1NDSEVNQVs6UEFUSF1dAFwgYXQgZW5kIG9mIHBhdHRlcm4AXEMgbm90IGFsbG93ZWQgaW4gbG9va2JlaGluZCBhc3NlcnRpb24AXE4gaXMgbm90IHN1cHBvcnRlZCBpbiBhIGNsYXNzAFxjIGF0IGVuZCBvZiBwYXR0ZXJuAFxjIG11c3QgYmUgZm9sbG93ZWQgYnkgYW4gQVNDSUkgY2hhcmFjdGVyAFxnIGlzIG5vdCBmb2xsb3dlZCBieSBhIGJyYWNlZCwgYW5nbGUtYnJhY2tldGVkLCBvciBxdW90ZWQgbmFtZSBvciBudW1iZXIsIG9yIGJ5IGEgcGxhaW4gbnVtYmVyAFxrIGlzIG5vdCBmb2xsb3dlZCBieSBhIGJyYWNlZCwgYW5nbGUtYnJhY2tldGVkLCBvciBxdW90ZWQgbmFtZQBdIGlzIGFuIGludmFsaWQgZGF0YSBjaGFyYWN0ZXIgaW4gSmF2YVNjcmlwdCBjb21wYXRpYmlsaXR5IG1vZGUAYSBudW1iZXJlZCByZWZlcmVuY2UgbXVzdCBub3QgYmUgemVybwBhIHBhdGgsIGlmIGdpdmVuLCBtdXN0IGJlZ2luIGFuZCBlbmQgd2l0aCBhIHNsYXNoAGFiYnJldmlhdGVkIG1vbnRoIG5hbWUEQXByAGFiYnJldmlhdGVkIG1vbnRoIG5hbWUEQXVnAGFiYnJldmlhdGVkIG1vbnRoIG5hbWUERGVjAGFiYnJldmlhdGVkIG1vbnRoIG5hbWUERmViAGFiYnJldmlhdGVkIG1vbnRoIG5hbWUESmFuAGFiYnJldmlhdGVkIG1vbnRoIG5hbWUESnVsAGFiYnJldmlhdGVkIG1vbnRoIG5hbWUESnVuAGFiYnJldmlhdGVkIG1vbnRoIG5hbWUETWFyAGFiYnJldmlhdGVkIG1vbnRoIG5hbWUETWF5AGFiYnJldmlhdGVkIG1vbnRoIG5hbWUETm92AGFiYnJldmlhdGVkIG1vbnRoIG5hbWUET2N0AGFiYnJldmlhdGVkIG1vbnRoIG5hbWUEU2VwAGFiYnJldmlhdGVkIHdlZWtkYXkgbmFtZQRGcmkAYWJicmV2aWF0ZWQgd2Vla2RheSBuYW1lBE1vbgBhYmJyZXZpYXRlZCB3ZWVrZGF5IG5hbWUEU2F0AGFiYnJldmlhdGVkIHdlZWtkYXkgbmFtZQRTdW4AYWJicmV2aWF0ZWQgd2Vla2RheSBuYW1lBFRodQBhYmJyZXZpYXRlZCB3ZWVrZGF5IG5hbWUEVHVlAGFiYnJldmlhdGVkIHdlZWtkYXkgbmFtZQRXZWQAYWN0aW9uIG5hbWUgbXVzdCBiZSBnaXZlbiBhZnRlciBhcHBsaWNhdGlvbiBpZAoAYWN0aW9ucyBhY2NlcHQgYSBtYXhpbXVtIG9mIG9uZSBwYXJhbWV0ZXIKAGFuIGFyZ3VtZW50IGlzIG5vdCBhbGxvd2VkIGZvciAoKkFDQ0VQVCksICgqRkFJTCksIG9yICgqQ09NTUlUKQBhc3NlcnRpb24gZXhwZWN0ZWQgYWZ0ZXIgKD8oAGF0dHJpYnV0ZXM6CgBiYWNrIHJlZmVyZW5jZXMgYXMgY29uZGl0aW9ucyBhcmUgbm90IHN1cHBvcnRlZCBmb3IgcGFydGlhbCBtYXRjaGluZwBiYWNrdHJhY2tpbmcgbGltaXQgcmVhY2hlZABiYWQgb2Zmc2V0AGNhbm5vdCBhZGQga2V5cyB0byBhICdsaXN0LW9mJyBzY2hlbWEAY2hhcmFjdGVyIHZhbHVlIGluIFx1Li4uLiBzZXF1ZW5jZSBpcyB0b28gbGFyZ2UAY2hhcmFjdGVyIHZhbHVlIGluIFx4ey4uLn0gc2VxdWVuY2UgaXMgdG9vIGxhcmdlAGNvZGUgb3ZlcmZsb3cAY29uZGl0aW9uYWwgZ3JvdXAgY29udGFpbnMgbW9yZSB0aGFuIHR3byBicmFuY2hlcwBjb3JydXB0ZWQgb2JqZWN0AGNvdWxkIG5vdCBnZXQgbG9jYWwgYWRkcmVzczogJXMAY291bGQgbm90IGdldCByZW1vdGUgYWRkcmVzczogJXMAY291bGQgbm90IGxpc3RlbjogJXMAY3JlYXRpbmcgR1NvY2tldCBmcm9tIGZkOiAlcwBkaWZmZXJlbnQgbmFtZXMgZm9yIHN1YnBhdHRlcm5zIG9mIHRoZSBzYW1lIG51bWJlciBhcmUgbm90IGFsbG93ZWQAZGlnaXQgZXhwZWN0ZWQAZGlnaXQgZXhwZWN0ZWQgYWZ0ZXIgKD8rAGRpc3BsYXkgbmFtZTogJXMKAGRvaW5nIG5vdGhpbmcuCgBkcml2ZSBkb2Vzbid0IGltcGxlbWVudCBlamVjdABkcml2ZSBkb2Vzbid0IGltcGxlbWVudCBlamVjdCBvciBlamVjdF93aXRoX29wZXJhdGlvbgBkcml2ZSBkb2Vzbid0IGltcGxlbWVudCBwb2xsaW5nIGZvciBtZWRpYQBkcml2ZSBkb2Vzbid0IGltcGxlbWVudCBzdGFydABkcml2ZSBkb2Vzbid0IGltcGxlbWVudCBzdG9wAGVkaXQgbmFtZTogJXMKAGVtcHR5IG5hbWVzIGFyZSBub3QgcGVybWl0dGVkAGVycm9yIHBhcnNpbmcgYWN0aW9uIHBhcmFtZXRlcjogJXMKAGVycm9yIHBhcnNpbmcga2V5ICclcycgaW4gc2NoZW1hICclcycgYXMgc3BlY2lmaWVkIGluIG92ZXJyaWRlIGZpbGUgJyVzJzogJXMuAGVycm9yIHNlbmRpbmcgJXMgbWVzc2FnZSB0byBhcHBsaWNhdGlvbjogJXMKAGVzY2FwZXMgXEwsIFxsLCBcTntuYW1lfSwgXFUsIGFuZCBcdSBhcmUgbm90IHN1cHBvcnRlZABleGFjdGx5IG9uZSBvZiAndHlwZScsICdlbnVtJyBvciAnZmxhZ3MnIG11c3QgYmUgc3BlY2lmaWVkIGFzIGFuIGF0dHJpYnV0ZSB0byA8a2V5PgBmYWlsZWQgdG8gZ2V0IG1lbW9yeQBmdWxsIG1vbnRoIG5hbWUEQXByaWwAZnVsbCBtb250aCBuYW1lBEF1Z3VzdABmdWxsIG1vbnRoIG5hbWUERGVjZW1iZXIAZnVsbCBtb250aCBuYW1lBEZlYnJ1YXJ5AGZ1bGwgbW9udGggbmFtZQRKYW51YXJ5AGZ1bGwgbW9udGggbmFtZQRKdWx5AGZ1bGwgbW9udGggbmFtZQRKdW5lAGZ1bGwgbW9udGggbmFtZQRNYXJjaABmdWxsIG1vbnRoIG5hbWUETWF5AGZ1bGwgbW9udGggbmFtZQROb3ZlbWJlcgBmdWxsIG1vbnRoIG5hbWUET2N0b2JlcgBmdWxsIG1vbnRoIG5hbWUEU2VwdGVtYmVyAGZ1bGwgd2Vla2RheSBuYW1lBEZyaWRheQBmdWxsIHdlZWtkYXkgbmFtZQRNb25kYXkAZnVsbCB3ZWVrZGF5IG5hbWUEU2F0dXJkYXkAZnVsbCB3ZWVrZGF5IG5hbWUEU3VuZGF5AGZ1bGwgd2Vla2RheSBuYW1lBFRodXJzZGF5AGZ1bGwgd2Vla2RheSBuYW1lBFR1ZXNkYXkAZnVsbCB3ZWVrZGF5IG5hbWUEV2VkbmVzZGF5AGdfc29ja2V0X2dldF9jcmVkZW50aWFscyBub3QgaW1wbGVtZW50ZWQgZm9yIHRoaXMgT1MAZ2lvIGNhdCB3b3JrcyBqdXN0IGxpa2UgdGhlIHRyYWRpdGlvbmFsIGNhdCB1dGlsaXR5LCBidXQgdXNpbmcgR0lPCmxvY2F0aW9ucyBpbnN0ZWFkIG9mIGxvY2FsIGZpbGVzOiBmb3IgZXhhbXBsZSwgeW91IGNhbiB1c2Ugc29tZXRoaW5nCmxpa2Ugc21iOi8vc2VydmVyL3Jlc291cmNlL2ZpbGUudHh0IGFzIGxvY2F0aW9uLgBnaW8gY29weSBpcyBzaW1pbGFyIHRvIHRoZSB0cmFkaXRpb25hbCBjcCB1dGlsaXR5LCBidXQgdXNpbmcgR0lPCmxvY2F0aW9ucyBpbnN0ZWFkIG9mIGxvY2FsIGZpbGVzOiBmb3IgZXhhbXBsZSwgeW91IGNhbiB1c2Ugc29tZXRoaW5nCmxpa2Ugc21iOi8vc2VydmVyL3Jlc291cmNlL2ZpbGUudHh0IGFzIGxvY2F0aW9uLgBnaW8gaW5mbyBpcyBzaW1pbGFyIHRvIHRoZSB0cmFkaXRpb25hbCBscyB1dGlsaXR5LCBidXQgdXNpbmcgR0lPCmxvY2F0aW9ucyBpbnN0ZWFkIG9mIGxvY2FsIGZpbGVzOiBmb3IgZXhhbXBsZSwgeW91IGNhbiB1c2Ugc29tZXRoaW5nCmxpa2Ugc21iOi8vc2VydmVyL3Jlc291cmNlL2ZpbGUudHh0IGFzIGxvY2F0aW9uLiBGaWxlIGF0dHJpYnV0ZXMgY2FuCmJlIHNwZWNpZmllZCB3aXRoIHRoZWlyIEdJTyBuYW1lLCBlLmcuIHN0YW5kYXJkOjppY29uLCBvciBqdXN0IGJ5Cm5hbWVzcGFjZSwgZS5nLiB1bml4LCBvciBieSAnKicsIHdoaWNoIG1hdGNoZXMgYWxsIGF0dHJpYnV0ZXMAZ2lvIGxpc3QgaXMgc2ltaWxhciB0byB0aGUgdHJhZGl0aW9uYWwgbHMgdXRpbGl0eSwgYnV0IHVzaW5nIEdJTwpsb2NhdGlvbnMgaW5zdGVhZCBvZiBsb2NhbCBmaWxlczogZm9yIGV4YW1wbGUsIHlvdSBjYW4gdXNlIHNvbWV0aGluZwpsaWtlIHNtYjovL3NlcnZlci9yZXNvdXJjZS9maWxlLnR4dCBhcyBsb2NhdGlvbi4gRmlsZSBhdHRyaWJ1dGVzIGNhbgpiZSBzcGVjaWZpZWQgd2l0aCB0aGVpciBHSU8gbmFtZSwgZS5nLiBzdGFuZGFyZDo6aWNvbgBnaW8gbWtkaXIgaXMgc2ltaWxhciB0byB0aGUgdHJhZGl0aW9uYWwgbWtkaXIgdXRpbGl0eSwgYnV0IHVzaW5nIEdJTwpsb2NhdGlvbnMgaW5zdGVhZCBvZiBsb2NhbCBmaWxlczogZm9yIGV4YW1wbGUsIHlvdSBjYW4gdXNlIHNvbWV0aGluZwpsaWtlIHNtYjovL3NlcnZlci9yZXNvdXJjZS9teWRpciBhcyBsb2NhdGlvbi4AZ2lvIG1vdmUgaXMgc2ltaWxhciB0byB0aGUgdHJhZGl0aW9uYWwgbXYgdXRpbGl0eSwgYnV0IHVzaW5nIEdJTwpsb2NhdGlvbnMgaW5zdGVhZCBvZiBsb2NhbCBmaWxlczogZm9yIGV4YW1wbGUsIHlvdSBjYW4gdXNlIHNvbWV0aGluZwpsaWtlIHNtYjovL3NlcnZlci9yZXNvdXJjZS9maWxlLnR4dCBhcyBsb2NhdGlvbgBoZXhhZGVjaW1hbCBkaWdpdCBleHBlY3RlZABoZXhhZGVjaW1hbCBkaWdpdCBvciAnfScgZXhwZWN0ZWQAaGlkZGVuCgBpbGxlZ2FsIHN5bWJvbGljIHJlZmVyZW5jZQBpbmNvbnNpc3RlbnQgTkVXTElORSBvcHRpb25zAGludGVybmFsIGVycm9yAGludGVybmFsIGVycm9yIG9yIGNvcnJ1cHRlZCBvYmplY3QAaW52YWxpZCBHVmFyaWFudCB0eXBlIHN0cmluZyAnJXMnAGludmFsaWQgYWN0aW9uIG5hbWU6ICclcycKYWN0aW9uIG5hbWVzIG11c3QgY29uc2lzdCBvZiBvbmx5IGFscGhhbnVtZXJpY3MsICctJyBhbmQgJy4nCgBpbnZhbGlkIGFwcGxpY2F0aW9uIGlkOiAnJXMnCgBpbnZhbGlkIGNvbWJpbmF0aW9uIG9mIG5ld2xpbmUgZmxhZ3MAaW52YWxpZCBjb25kaXRpb24gKD8oMCkAaW52YWxpZCBlc2NhcGUgc2VxdWVuY2UgaW4gY2hhcmFjdGVyIGNsYXNzAGludmFsaWQgbmFtZSAnJXMnOiBpbnZhbGlkIGNoYXJhY3RlciAnJWMnOyBvbmx5IGxvd2VyY2FzZSBsZXR0ZXJzLCBudW1iZXJzIGFuZCBoeXBoZW4gKCctJykgYXJlIHBlcm1pdHRlZC4AaW52YWxpZCBuYW1lICclcyc6IG1heGltdW0gbGVuZ3RoIGlzIDEwMjQAaW52YWxpZCBuYW1lICclcyc6IG5hbWVzIG11c3QgYmVnaW4gd2l0aCBhIGxvd2VyY2FzZSBsZXR0ZXIAaW52YWxpZCBuYW1lICclcyc6IHRoZSBsYXN0IGNoYXJhY3RlciBtYXkgbm90IGJlIGEgaHlwaGVuICgnLScpLgBpbnZhbGlkIG5hbWUgJyVzJzogdHdvIHN1Y2Nlc3NpdmUgaHlwaGVucyAoJy0tJykgYXJlIG5vdCBwZXJtaXR0ZWQuAGxpc3QtYWN0aW9ucyBjb21tYW5kIHRha2VzIG9ubHkgdGhlIGFwcGxpY2F0aW9uIGlkAGxvb2tiZWhpbmQgYXNzZXJ0aW9uIGlzIG5vdCBmaXhlZCBsZW5ndGgAbWFsZm9ybWVkIFxQIG9yIFxwIHNlcXVlbmNlAG1hbGZvcm1lZCBudW1iZXIgb3IgbmFtZSBhZnRlciAoPygAbWlzc2luZyAnPCcgaW4gc3ltYm9saWMgcmVmZXJlbmNlAG1pc3NpbmcgKSBhZnRlciBjb21tZW50AG1pc3Npbmcgc3VicGF0dGVybiBuYW1lIGFmdGVyICg/JgBtaXNzaW5nIHRlcm1pbmF0aW5nICkAbWlzc2luZyB0ZXJtaW5hdGluZyBdIGZvciBjaGFyYWN0ZXIgY2xhc3MAbWlzc2luZyB0ZXJtaW5hdG9yIGluIHN1YnBhdHRlcm4gbmFtZQBtb3VudCBkb2Vzbid0IGltcGxlbWVudCAiZWplY3QiAG1vdW50IGRvZXNuJ3QgaW1wbGVtZW50ICJlamVjdCIgb3IgImVqZWN0X3dpdGhfb3BlcmF0aW9uIgBtb3VudCBkb2Vzbid0IGltcGxlbWVudCAicmVtb3VudCIAbW91bnQgZG9lc24ndCBpbXBsZW1lbnQgInVubW91bnQiAG1vdW50IGRvZXNuJ3QgaW1wbGVtZW50ICJ1bm1vdW50IiBvciAidW5tb3VudF93aXRoX29wZXJhdGlvbiIAbW91bnQgZG9lc24ndCBpbXBsZW1lbnQgY29udGVudCB0eXBlIGd1ZXNzaW5nAG1vdW50IGRvZXNuJ3QgaW1wbGVtZW50IHN5bmNocm9ub3VzIGNvbnRlbnQgdHlwZSBndWVzc2luZwBuYW1lIGlzIHRvbyBsb25nIGluICgqTUFSSyksICgqUFJVTkUpLCAoKlNLSVApLCBvciAoKlRIRU4pAG5hbWUgb2YgdGhlIG91dHB1dCBmaWxlAG5hbWU6ICVzCgBubyA8a2V5IG5hbWU9JyVzJz4gdG8gb3ZlcnJpZGUAbm90aGluZyB0byByZXBlYXQAbnVtYmVyIGlzIHRvbyBiaWcAbnVtYmVyIHRvbyBiaWcgaW4ge30gcXVhbnRpZmllcgBudW1iZXJzIG91dCBvZiBvcmRlciBpbiB7fSBxdWFudGlmaWVyAG9jdGFsIHZhbHVlIGlzIGdyZWF0ZXIgdGhhbiBcMzc3AG91dCBvZiBtZW1vcnkAb3ZlcnJhbiBjb21waWxpbmcgd29ya3NwYWNlAG92ZXJyaWRlIGZvciBrZXkgJyVzJyBpbiBzY2hlbWEgJyVzJyBpbiBvdmVycmlkZSBmaWxlICclcycgaXMgbm90IGluIHRoZSBsaXN0IG9mIHZhbGlkIGNob2ljZXMAb3ZlcnJpZGUgZm9yIGtleSAnJXMnIGluIHNjaGVtYSAnJXMnIGluIG92ZXJyaWRlIGZpbGUgJyVzJyBpcyBvdXRzaWRlIHRoZSByYW5nZSBnaXZlbiBpbiB0aGUgc2NoZW1hAHByZXZpb3VzbHktY2hlY2tlZCByZWZlcmVuY2VkIHN1YnBhdHRlcm4gbm90IGZvdW5kAHJhbmdlIG91dCBvZiBvcmRlciBpbiBjaGFyYWN0ZXIgY2xhc3MAcmVjdXJzaW9uIGxpbWl0IHJlYWNoZWQAcmVjdXJzaW9uIGxvb3AAcmVjdXJzaXZlIGNhbGwgY291bGQgbG9vcCBpbmRlZmluaXRlbHkAcmVmZXJlbmNlIHRvIG5vbi1leGlzdGVudCBzdWJwYXR0ZXJuAHJlZ3VsYXIgZXhwcmVzc2lvbiBpcyB0b28gbGFyZ2UAcmVtb3ZlZCBleGlzdGluZyBvdXRwdXQgZmlsZS4KAHNob3J0IHV0ZjgAc2l6ZTogAHN0cmF5IGZpbmFsICdcJwBzdWJwYXR0ZXJuIG5hbWUgaXMgdG9vIGxvbmcgKG1heGltdW0gMzIgY2hhcmFjdGVycykAc3ltbGluayBtdXN0IGJlIG5vbi1OVUxMAHRleHQgbWF5IG5vdCBhcHBlYXIgaW5zaWRlIDwlcz4AdGhlIHBhdGggb2YgYSBsaXN0IG11c3QgZW5kIHdpdGggJzovJwB0aGUgcGF0dGVybiBjb250YWlucyBpdGVtcyBub3Qgc3VwcG9ydGVkIGZvciBwYXJ0aWFsIG1hdGNoaW5nAHRvbyBtYW55IGZvcndhcmQgcmVmZXJlbmNlcwB0b28gbWFueSBuYW1lZCBzdWJwYXR0ZXJucyAobWF4aW11bSAxMCwwMDApAHR3byBuYW1lZCBzdWJwYXR0ZXJucyBoYXZlIHRoZSBzYW1lIG5hbWUAdHlwZSBpcyBJTlZBTElEAHR5cGU6ICVzCgB1bmFibGUgdG8gY29ubmVjdCB0byBELUJ1czogJXMKAHVuYWJsZSB0byBmaW5kIGRlc2t0b3AgZmlsZSBmb3IgYXBwbGljYXRpb24gJXMKAHVuZXhwZWN0ZWQgcmVwZWF0AHVuZmluaXNoZWQgc3ltYm9saWMgcmVmZXJlbmNlAHVua25vd24gUE9TSVggY2xhc3MgbmFtZQB1bmtub3duIGVycm9yAHVua25vd24gZXNjYXBlIHNlcXVlbmNlAHVua25vd24gcHJvcGVydHkgbmFtZSBhZnRlciBcUCBvciBccAB1bnJlY29nbmlzZWQgY29tbWFuZDogJXMKCgB1bnJlY29nbml6ZWQgY2hhcmFjdGVyIGFmdGVyICg/IG9yICg/LQB1bnJlY29nbml6ZWQgY2hhcmFjdGVyIGFmdGVyICg/PAB1bnJlY29nbml6ZWQgY2hhcmFjdGVyIGFmdGVyICg/UAB1bnJlY29nbml6ZWQgY2hhcmFjdGVyIGZvbGxvd2luZyBcAHVyaTogJXMKAHZvbHVtZSBkb2Vzbid0IGltcGxlbWVudCBlamVjdAB2b2x1bWUgZG9lc24ndCBpbXBsZW1lbnQgZWplY3Qgb3IgZWplY3Rfd2l0aF9vcGVyYXRpb24Adm9sdW1lIGRvZXNuJ3QgaW1wbGVtZW50IG1vdW50AHdoZXJlIHRvIHN0b3JlIHRoZSBnc2NoZW1hcy5jb21waWxlZCBmaWxlAHplcm8tbGVuZ3RoIHN5bWJvbGljIHJlZmVyZW5jZQBQcm9qZWN0LUlkLVZlcnNpb246IGdsaWIuSEVBRC5oZQpSZXBvcnQtTXNnaWQtQnVncy1UbzogClBPVC1DcmVhdGlvbi1EYXRlOiAyMDE2LTA3LTE1IDE2OjI4KzAzMDAKUE8tUmV2aXNpb24tRGF0ZTogMjAxNi0wNy0xNSAxNjozMCswMzAwCkxhc3QtVHJhbnNsYXRvcjogWW9zZWYgT3IgQm9jemtvIDx5b3NlZm9yYkBnbWFpbC5jb20+Ckxhbmd1YWdlLVRlYW06INei15HXqNeZ16ogPD4KTGFuZ3VhZ2U6IGhlCk1JTUUtVmVyc2lvbjogMS4wCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOApDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0ClBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPShuICE9IDEpOwpYLUdlbmVyYXRvcjogR3RyYW5zbGF0b3IgMi45MS42CgAgIENPTU1BTkQgICBUaGUgKG9wdGlvbmFsKSBjb21tYW5kIHRvIGV4cGxhaW4KACAgRklMRSAgICAgIEFuIGVsZiBmaWxlIChhIGJpbmFyeSBvciBhIHNoYXJlZCBsaWJyYXJ5KQoAICBGSUxFICAgICAgQW4gZWxmIGZpbGUgKGEgYmluYXJ5IG9yIGEgc2hhcmVkIGxpYnJhcnkpCiAgICAgICAgICAgIG9yIGEgY29tcGlsZWQgcmVzb3VyY2UgZmlsZQoAICBLRVkgICAgICAgVGhlIChvcHRpb25hbCkga2V5IHdpdGhpbiB0aGUgc2NoZW1hCgAgIEtFWSAgICAgICBUaGUga2V5IHdpdGhpbiB0aGUgc2NoZW1hCgAgIFBBVEggICAgICBBIHJlc291cmNlIHBhdGgKACAgUEFUSCAgICAgIEFuIChvcHRpb25hbCkgcmVzb3VyY2UgcGF0aCAobWF5IGJlIHBhcnRpYWwpCgAgIFNDSEVNQSAgICBUaGUgbmFtZSBvZiB0aGUgc2NoZW1hCiAgUEFUSCAgICAgIFRoZSBwYXRoLCBmb3IgcmVsb2NhdGFibGUgc2NoZW1hcwoAICBTQ0hFTUFESVIgQSBkaXJlY3RvcnkgdG8gc2VhcmNoIGZvciBhZGRpdGlvbmFsIHNjaGVtYXMKACAgU0VDVElPTiAgIEFuIChvcHRpb25hbCkgZWxmIHNlY3Rpb24gbmFtZQoAICBWQUxVRSAgICAgVGhlIHZhbHVlIHRvIHNldAoAIChpbnZhbGlkIGVuY29kaW5nKQAgYW5kIC0tc3RyaWN0IHdhcyBzcGVjaWZpZWQ7IGV4aXRpbmcuCgAlLjFmINeQ17TXkQAlLjFmIEVpQgAlLjFmINeS17TXkQAlLjFmIEdpQgAlLjFmINen17TXkQAlLjFmIEtpQgAlLjFmINee17TXkQAlLjFmIE1pQgAlLjFmINek17TXkQAlLjFmIFBpQgAlLjFmINeY17TXkQAlLjFmIFRpQgAlLjFmINen17TXkQDXkdeZ16og15DXl9eTACVzINeR16rXmdedACVzIGNvbW1hbmQgcmVxdWlyZXMgYW4gYXBwbGljYXRpb24gaWQgdG8gZGlyZWN0bHkgZm9sbG93CgoAJXMgZmlsZXR5cGUAJXMgdHlwZQAlczogb3ZlcndyaXRlICclcycgPyAA15HXmdeqINeQ15fXkwAldSDXkdeq15nXnQAnJXMnIGlzIG5vdCBhIHZhbGlkIGNoYXJhY3RlciBmb2xsb3dpbmcgYSAnPCcgY2hhcmFjdGVyOyBpdCBtYXkgbm90IGJlZ2luIGFuIGVsZW1lbnQgbmFtZQAnJXMnIGlzIG5vdCBhIHZhbGlkIGNoYXJhY3RlciBmb2xsb3dpbmcgdGhlIGNoYXJhY3RlcnMgJzwvJzsgJyVzJyBtYXkgbm90IGJlZ2luIGFuIGVsZW1lbnQgbmFtZQAnJXMnIGlzIG5vdCBhIHZhbGlkIGNoYXJhY3RlciBmb2xsb3dpbmcgdGhlIGNsb3NlIGVsZW1lbnQgbmFtZSAnJXMnOyB0aGUgYWxsb3dlZCBjaGFyYWN0ZXIgaXMgJz4nACclcycgaXMgbm90IGEgdmFsaWQgbmFtZQAnJXMnIGlzIG5vdCBhIHZhbGlkIG5hbWU6ICclYycAJyVzJyB0YWtlcyBubyBhcmd1bWVudHMKCgAndmVyc2lvbicgdGFrZXMgbm8gYXJndW1lbnRzACgqTUFSSykgbXVzdCBoYXZlIGFuIGFyZ3VtZW50ACgqVkVSQikgbm90IHJlY29nbml6ZWQAKD9SIG9yICg/WystXWRpZ2l0cyBtdXN0IGJlIGZvbGxvd2VkIGJ5ICkAKEFkZGl0aW9uYWxseSwgcmVsZWFzaW5nIHRoZSBsb2NrIGZvciAnJXMnIGFsc28gZmFpbGVkOiAlcykgAChUeXBlIGFueSBjaGFyYWN0ZXIgdG8gY2xvc2UgdGhpcyB3aW5kb3cpCgApIHdpdGhvdXQgb3BlbmluZyAoAC0tc3RyaWN0IHdhcyBzcGVjaWZpZWQ7IGV4aXRpbmcuCgA7IGlnbm9yaW5nIG92ZXJyaWRlIGZvciB0aGlzIGtleS4KADwlcyBpZD0nJXMnPiBhbHJlYWR5IHNwZWNpZmllZAA8JXMgaWQ9JyVzJz4gbm90ICh5ZXQpIGRlZmluZWQuADxjaGlsZCBuYW1lPSclcyc+IGFscmVhZHkgc3BlY2lmaWVkADxrZXkgbmFtZT0nJXMnPiBhbHJlYWR5IHNwZWNpZmllZAA8a2V5IG5hbWU9JyVzJz4gc2hhZG93cyA8a2V5IG5hbWU9JyVzJz4gaW4gPHNjaGVtYSBpZD0nJXMnPjsgdXNlIDxvdmVycmlkZT4gdG8gbW9kaWZ5IHZhbHVlADxvdmVycmlkZSBuYW1lPSclcyc+IGFscmVhZHkgc3BlY2lmaWVkADxvdmVycmlkZT4gZ2l2ZW4gYnV0IHNjaGVtYSBpc24ndCBleHRlbmRpbmcgYW55dGhpbmcAPHNjaGVtYSBpZD0nJXMnIGxpc3Qtb2Y9JyVzJz4gZXh0ZW5kcyA8c2NoZW1hIGlkPSclcycgbGlzdC1vZj0nJXMnPiBidXQgJyVzJyBkb2VzIG5vdCBleHRlbmQgJyVzJwA8c2NoZW1hIGlkPSclcyc+IGFscmVhZHkgc3BlY2lmaWVkADxzY2hlbWEgaWQ9JyVzJz4gZXh0ZW5kcyBub3QgeWV0IGV4aXN0aW5nIHNjaGVtYSAnJXMnADxzY2hlbWEgaWQ9JyVzJz4gaXMgYSBsaXN0LCBleHRlbmRpbmcgPHNjaGVtYSBpZD0nJXMnPiB3aGljaCBpcyBub3QgYSBsaXN0ADxzY2hlbWEgaWQ9JyVzJz4gaXMgbGlzdCBvZiBub3QgeWV0IGV4aXN0aW5nIHNjaGVtYSAnJXMnAEEgYm9va21hcmsgZm9yIFVSSSAnJXMnIGFscmVhZHkgZXhpc3RzAEEgc3VidHJlZSBpcyBhbHJlYWR5IGV4cG9ydGVkIGZvciAlcwBBQ1RJT04AQVBQSUQAQVBQSUQgQUNUSU9OIFtQQVJBTUVURVJdAEFQUElEIFtGSUxFLi4uXQBBVFRSSUJVVEUAQVRUUklCVVRFUwBBYm9ydCBvbiBhbnkgZXJyb3JzIGluIHNjaGVtYXMAQWJzdHJhY3QgVU5JWCBkb21haW4gc29ja2V0IGFkZHJlc3NlcyBub3Qgc3VwcG9ydGVkIG9uIHRoaXMgc3lzdGVtAEFic3RyYWN0IG5hbWUgc3BhY2Ugbm90IHN1cHBvcnRlZABBY3RpdmF0ZSBhbiBhY3Rpb24AQWRkZWQgc29ja2V0IGlzIGNsb3NlZABBZGRyZXNzICclcycgaXMgaW52YWxpZCAobmVlZCBleGFjdGx5IG9uZSBvZiBwYXRoLCB0bXBkaXIgb3IgYWJzdHJhY3Qga2V5cykAQWRkcmVzcyBlbGVtZW50ICclcycgZG9lcyBub3QgY29udGFpbiBhIGNvbG9uICg6KQBBZGRyZXNzIGhhcyBiaXRzIHNldCBiZXlvbmQgcHJlZml4IGxlbmd0aABBZGRyZXNzIHRvIGxpc3RlbiBvbgBBbW91bnQgb2YgbWVtb3J5IHJlcXVpcmVkIHRvIHByb2Nlc3MgdGhlIHdyaXRlIGlzIGxhcmdlciB0aGFuIGF2YWlsYWJsZSBhZGRyZXNzIHNwYWNlAEFuIG9iamVjdCBpcyBhbHJlYWR5IGV4cG9ydGVkIGZvciB0aGUgaW50ZXJmYWNlICVzIGF0ICVzAEFwcGVuZCB0byBlbmQgb2YgZmlsZQBBcHBsaWNhdGlvbiBPcHRpb25zOgBBcHBsaWNhdGlvbiBpZGVudGlmaWVyIGluIEQtQnVzIGZvcm1hdCAoZWc6IG9yZy5leGFtcGxlLnZpZXdlcikAQXBwbGljYXRpb24gaW5mb3JtYXRpb24gbGFja3MgYW4gaWRlbnRpZmllcgBBcmd1bWVudHM6CgBBdHRyaWJ1dGUgJyVzJyBvZiBlbGVtZW50ICclcycgbm90IGZvdW5kAEF0dHJpYnV0ZSBub3Qgc3BlY2lmaWVkAEF0dHJpYnV0ZSB2YWx1ZSBtdXN0IGJlIG5vbi1OVUxMAEJhY2t1cCBleGlzdGluZyBkZXN0aW5hdGlvbiBmaWxlcwBCYWNrdXAgZmlsZSBjcmVhdGlvbiBmYWlsZWQAQmFkIEhUVFAgcHJveHkgcmVwbHkAQyBpZGVudGlmaWVyIG5hbWUgdXNlZCBmb3IgdGhlIGdlbmVyYXRlZCBzb3VyY2UgY29kZQBDT01NQU5EAENhbiBub3QgYmUgYSBsaXN0IG9mIGEgc2NoZW1hIHdpdGggYSBwYXRoAENhbiBub3QgZXh0ZW5kIGEgc2NoZW1hIHdpdGggYSBwYXRoAENhbid0IGNvcHkgZGlyZWN0b3J5IG92ZXIgZGlyZWN0b3J5AENhbid0IGNvcHkgb3ZlciBkaXJlY3RvcnkAQ2FuJ3QgY29weSBzcGVjaWFsIGZpbGUAQ2FuJ3QgY3JlYXRlIHVzZXIgTUlNRSBjb25maWd1cmF0aW9uIGZvbGRlciAlczogJXMAQ2FuJ3QgY3JlYXRlIHVzZXIgYXBwbGljYXRpb24gY29uZmlndXJhdGlvbiBmb2xkZXIgJXM6ICVzAENhbid0IGNyZWF0ZSB1c2VyIGRlc2t0b3AgZmlsZSAlcwBDYW4ndCBkbyBhIHJhdyByZWFkIGluIGdfaW9fY2hhbm5lbF9yZWFkX2xpbmVfc3RyaW5nAENhbid0IGRvIGEgcmF3IHJlYWQgaW4gZ19pb19jaGFubmVsX3JlYWRfdG9fZW5kAENhbid0IGhhbmRsZSB0aGUgc3VwcGxpZWQgdmVyc2lvbiBvZiB0aGUgaWNvbiBlbmNvZGluZwBDYW4ndCBoYW5kbGUgdmVyc2lvbiAlZCBvZiBHRW1ibGVtIGVuY29kaW5nAENhbid0IGhhbmRsZSB2ZXJzaW9uICVkIG9mIEdFbWJsZW1lZEljb24gZW5jb2RpbmcAQ2FuJ3QgaGFuZGxlIHZlcnNpb24gJWQgb2YgR0ZpbGVJY29uIGVuY29kaW5nAENhbid0IGhhbmRsZSB2ZXJzaW9uICVkIG9mIEdUaGVtZWRJY29uIGVuY29kaW5nAENhbid0IG1vdmUgZGlyZWN0b3J5IG92ZXIgZGlyZWN0b3J5AENhbid0IG9wZW4gZGlyZWN0b3J5AENhbid0IHJlY3Vyc2l2ZWx5IGNvcHkgZGlyZWN0b3J5AENhbid0IHJlbmFtZSBmaWxlLCBmaWxlbmFtZSBhbHJlYWR5IGV4aXN0cwBDYW4ndCByZW5hbWUgcm9vdCBkaXJlY3RvcnkAQ2FuY2VsbGFibGUgaW5pdGlhbGl6YXRpb24gbm90IHN1cHBvcnRlZABDYW5jZWxsZWQgdmlhIEdEQnVzQXV0aE9ic2VydmVyOjphdXRob3JpemUtYXV0aGVudGljYXRlZC1wZWVyAENhbm5vdCBjb252ZXJ0IGZhbGxiYWNrICclcycgdG8gY29kZXNldCAnJXMnAENhbm5vdCBkZWNyeXB0IFBFTS1lbmNvZGVkIHByaXZhdGUga2V5AENhbm5vdCBkZXNlcmlhbGl6ZSBtZXNzYWdlOiAAQ2Fubm90IGRldGVybWluZSBidXMgYWRkcmVzcyBiZWNhdXNlIHRoZSBEQlVTX1NUQVJURVJfQlVTX1RZUEUgZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgbm90IHNldABDYW5ub3QgZGV0ZXJtaW5lIGJ1cyBhZGRyZXNzIGZyb20gREJVU19TVEFSVEVSX0JVU19UWVBFIGVudmlyb25tZW50IHZhcmlhYmxlIC0gdW5rbm93biB2YWx1ZSAnJXMnAENhbm5vdCBkZXRlcm1pbmUgc2Vzc2lvbiBidXMgYWRkcmVzcyAobm90IGltcGxlbWVudGVkIGZvciB0aGlzIE9TKQBDYW5ub3QgaW52b2tlIG1ldGhvZDsgcHJveHkgaXMgZm9yIGEgd2VsbC1rbm93biBuYW1lIHdpdGhvdXQgYW4gb3duZXIgYW5kIHByb3h5IHdhcyBjb25zdHJ1Y3RlZCB3aXRoIHRoZSBHX0RCVVNfUFJPWFlfRkxBR1NfRE9fTk9UX0FVVE9fU1RBUlQgZmxhZwBDYW5ub3QgbGlzdGVuIG9uIHVuc3VwcG9ydGVkIHRyYW5zcG9ydCAnJXMnAENhbm5vdCBwYXJzZSBkb3VibGUgdmFsdWUgJyVzJyBmb3IgJXMAQ2Fubm90IHBhcnNlIGludGVnZXIgdmFsdWUgJyVzJyBmb3IgJXMAQ2Fubm90IHNlcmlhbGl6ZSBtZXNzYWdlOiAAQ2Fubm90IHNldCBwZXJtaXNzaW9ucyBvbiBzeW1saW5rcwBDYW5ub3Qgc3Bhd24gYSBtZXNzYWdlIGJ1cyB3aGVuIHNldHVpZABDYW5ub3Qgc3Bhd24gYSBtZXNzYWdlIGJ1cyB3aXRob3V0IGEgbWFjaGluZS1pZDogAENhbm5vdCBzcGVjaWZ5IG5vbmNlIGZpbGUgd2hlbiBjcmVhdGluZyBhIHNlcnZlcgBDYW5ub3QgdHJ1bmNhdGUgR0J1ZmZlcmVkSW5wdXRTdHJlYW0AQ2Fubm90IHRydW5jYXRlIEdNZW1vcnlJbnB1dFN0cmVhbQBDYW5ub3QgdXNlIGRhdGFncmFtIG9wZXJhdGlvbnMgb24gYSBub24tZGF0YWdyYW0gc29ja2V0LgBDYW5ub3QgdXNlIGRhdGFncmFtIG9wZXJhdGlvbnMgb24gYSBzb2NrZXQgd2l0aCBhIHRpbWVvdXQgc2V0LgBDaGFubmVsIHRlcm1pbmF0ZXMgaW4gYSBwYXJ0aWFsIGNoYXJhY3RlcgBDaGFyYWN0ZXIgb3V0IG9mIHJhbmdlIGZvciBVVEYtMTYAQ2hhcmFjdGVyIG91dCBvZiByYW5nZSBmb3IgVVRGLTgAQ2hhcmFjdGVyIHJlZmVyZW5jZSAnJS0uKnMnIGRvZXMgbm90IGVuY29kZSBhIHBlcm1pdHRlZCBjaGFyYWN0ZXIAQ2hhcmFjdGVyIHJlZmVyZW5jZSBkaWQgbm90IGVuZCB3aXRoIGEgc2VtaWNvbG9uOyBtb3N0IGxpa2VseSB5b3UgdXNlZCBhbiBhbXBlcnNhbmQgY2hhcmFjdGVyIHdpdGhvdXQgaW50ZW5kaW5nIHRvIHN0YXJ0IGFuIGVudGl0eSAtIGVzY2FwZSBhbXBlcnNhbmQgYXMgJmFtcDsAQ2hlY2sgaWYgS0VZIGlzIHdyaXRhYmxlAENoaWxkIHByb2Nlc3MgZXhpdGVkIGFibm9ybWFsbHkAQ2hpbGQgcHJvY2VzcyBleGl0ZWQgd2l0aCBjb2RlICVsZABDaGlsZCBwcm9jZXNzIGtpbGxlZCBieSBzaWduYWwgJWxkAENoaWxkIHByb2Nlc3Mgc3RvcHBlZCBieSBzaWduYWwgJWxkAENvbW1hbmRzOgBDb21tYW5kczoKAENvbW1hbmRzOgogIGhlbHAgICAgICAgICBTaG93cyB0aGlzIGluZm9ybWF0aW9uCiAgaW50cm9zcGVjdCAgIEludHJvc3BlY3QgYSByZW1vdGUgb2JqZWN0CiAgbW9uaXRvciAgICAgIE1vbml0b3IgYSByZW1vdGUgb2JqZWN0CiAgY2FsbCAgICAgICAgIEludm9rZSBhIG1ldGhvZCBvbiBhIHJlbW90ZSBvYmplY3QKICBlbWl0ICAgICAgICAgRW1pdCBhIHNpZ25hbAoKVXNlICIlcyBDT01NQU5EIC0taGVscCIgdG8gZ2V0IGhlbHAgb24gZWFjaCBjb21tYW5kLgoAQ29tcGlsZSBhIHJlc291cmNlIHNwZWNpZmljYXRpb24gaW50byBhIHJlc291cmNlIGZpbGUuClJlc291cmNlIHNwZWNpZmljYXRpb24gZmlsZXMgaGF2ZSB0aGUgZXh0ZW5zaW9uIC5ncmVzb3VyY2UueG1sLAphbmQgdGhlIHJlc291cmNlIGZpbGUgaGF2ZSB0aGUgZXh0ZW5zaW9uIGNhbGxlZCAuZ3Jlc291cmNlLgBDb21waWxlIGFsbCBHU2V0dGluZ3Mgc2NoZW1hIGZpbGVzIGludG8gYSBzY2hlbWEgY2FjaGUuClNjaGVtYSBmaWxlcyBhcmUgcmVxdWlyZWQgdG8gaGF2ZSB0aGUgZXh0ZW5zaW9uIC5nc2NoZW1hLnhtbCwKYW5kIHRoZSBjYWNoZSBmaWxlIGlzIGNhbGxlZCBnc2NoZW1hcy5jb21waWxlZC4AQ29uY2F0ZW5hdGUgZmlsZXMgYW5kIHByaW50IHRvIHN0YW5kYXJkIG91dHB1dC4AQ29uY2F0ZW5hdGUgZmlsZXMgdG8gc3RhbmRhcmQgb3V0cHV0AENvbm5lY3QgdG8gZ2l2ZW4gRC1CdXMgYWRkcmVzcwBDb25uZWN0IHRvIHRoZSBzZXNzaW9uIGJ1cwBDb25uZWN0IHRvIHRoZSBzeXN0ZW0gYnVzAENvbm5lY3Rpb24gRW5kcG9pbnQgT3B0aW9uczoAQ29ubmVjdGlvbiBpbiBwcm9ncmVzcwBDb25uZWN0aW9uIHJlZnVzZWQgdGhyb3VnaCBTT0NLU3Y1IHByb3h5LgBDb25uZWN0aW9uIHRocm91Z2ggU09DS1N2NCBzZXJ2ZXIgd2FzIHJlamVjdGVkAENvbnRhaW5pbmcgbW91bnQgZG9lcyBub3QgZXhpc3QAQ29udmVyc2lvbiBmcm9tIGNoYXJhY3RlciBzZXQgJyVzJyB0byAnJXMnIGlzIG5vdCBzdXBwb3J0ZWQAQ29weSAocmVmbGluay9jbG9uZSkgYmV0d2VlbiBtb3VudHMgaXMgbm90IHN1cHBvcnRlZABDb3B5IChyZWZsaW5rL2Nsb25lKSBpcyBub3Qgc3VwcG9ydGVkIG9yIGRpZG4ndCB3b3JrAENvcHkgKHJlZmxpbmsvY2xvbmUpIGlzIG5vdCBzdXBwb3J0ZWQgb3IgaW52YWxpZABDb3B5IG9uZSBvciBtb3JlIGZpbGVzAENvcHkgb25lIG9yIG1vcmUgZmlsZXMgZnJvbSBTT1VSQ0UgdG8gREVTVElOQVRJT04uAENvcHkgd2l0aCBmaWxlAENvdWxkIG5vdCBhbGxvY2F0ZSAlbHUgYnl0ZSB0byByZWFkIGZpbGUgIiVzIgBDb3VsZCBub3QgYWxsb2NhdGUgJWx1IGJ5dGVzIHRvIHJlYWQgZmlsZSAiJXMiAENvdWxkIG5vdCBjb25uZWN0IHRvICVzOiAAQ291bGQgbm90IGNvbm5lY3QgdG8gcHJveHkgc2VydmVyICVzOiAAQ291bGQgbm90IGNvbm5lY3Q6IABDb3VsZCBub3QgY3JlYXRlIG5ldHdvcmsgbW9uaXRvcjogAENvdWxkIG5vdCBjcmVhdGUgbmV0d29yayBtb25pdG9yOiAlcwBDb3VsZCBub3QgZGV0ZXJtaW5lIHRoZSBkaXNrIHVzYWdlIG9mICVzOiAlcwBDb3VsZCBub3QgZ2V0IG5ldHdvcmsgc3RhdHVzOiAAQ291bGQgbm90IGxvYWQgc2NoZW1hcyBmcm9tICVzOiAlcwoAQ291bGQgbm90IG9wZW4gY29udmVydGVyIGZyb20gJyVzJyB0byAnJXMnAENvdWxkIG5vdCBvcGVuIGNvbnZlcnRlciBmcm9tICclcycgdG8gJyVzJzogJXMAQ291bGQgbm90IHBhcnNlICclcycgYXMgSVAgYWRkcmVzcyBtYXNrAENvdWxkIG5vdCBwYXJzZSBQRU0tZW5jb2RlZCBjZXJ0aWZpY2F0ZQBDb3VsZCBub3QgcGFyc2UgUEVNLWVuY29kZWQgcHJpdmF0ZSBrZXkAQ3JlYXRlIGRpcmVjdG9yaWVzAENyZWF0ZSBkaXJlY3Rvcmllcy4AQ3JlYXRlIHBhcmVudCBkaXJlY3RvcmllcwBDcmVkZW50aWFscyBzcG9vZmluZyBpcyBub3QgcG9zc2libGUgb24gdGhpcyBPUwBDdXN0b20gZGVmaW5pdGlvbiBmb3IgJXMAREVGSU5FIGdyb3VwIGNvbnRhaW5zIG1vcmUgdGhhbiBvbmUgYnJhbmNoAERFU1RJTkFUSU9OAERFVklDRQBESVJFQ1RPUlkARFRMUyBzdXBwb3J0IGlzIG5vdCBhdmFpbGFibGUARGVmYXVsdCBhcHBsaWNhdGlvbiBmb3IgJyVzJzogJXMKAERlbGV0ZSBvbmUgb3IgbW9yZSBmaWxlcwBEZWxldGUgdGhlIGdpdmVuIGZpbGVzLgBEZXNrdG9wIGZpbGUgZGlkbid0IHNwZWNpZnkgRXhlYyBmaWVsZABEZXN0aW5hdGlvbiAlcyBpcyBub3QgYSBkaXJlY3RvcnkARGVzdGluYXRpb24gbmFtZSB0byBpbnRyb3NwZWN0AERlc3RpbmF0aW9uIG5hbWUgdG8gaW52b2tlIG1ldGhvZCBvbgBEZXN0aW5hdGlvbiBuYW1lIHRvIG1vbml0b3IARGlkbid0IGZpbmQgY29va2llIHdpdGggaWQgJWQgaW4gdGhlIGtleXJpbmcgYXQgJyVzJwBEbyBub3QgZW5mb3JjZSBrZXkgbmFtZSByZXN0cmljdGlvbnMARG8gbm90IHdyaXRlIHRoZSBnc2NoZW1hLmNvbXBpbGVkIGZpbGUARG9jdW1lbnQgZW5kZWQgdW5leHBlY3RlZGx5IGFmdGVyIHRoZSBlcXVhbHMgc2lnbiBmb2xsb3dpbmcgYW4gYXR0cmlidXRlIG5hbWU7IG5vIGF0dHJpYnV0ZSB2YWx1ZQBEb2N1bWVudCBlbmRlZCB1bmV4cGVjdGVkbHkgaW5zaWRlIGEgY29tbWVudCBvciBwcm9jZXNzaW5nIGluc3RydWN0aW9uAERvY3VtZW50IGVuZGVkIHVuZXhwZWN0ZWRseSBpbnNpZGUgYW4gYXR0cmlidXRlIG5hbWUARG9jdW1lbnQgZW5kZWQgdW5leHBlY3RlZGx5IGluc2lkZSBhbiBlbGVtZW50IG5hbWUARG9jdW1lbnQgZW5kZWQgdW5leHBlY3RlZGx5IGluc2lkZSBhbiBlbGVtZW50LW9wZW5pbmcgdGFnLgBEb2N1bWVudCBlbmRlZCB1bmV4cGVjdGVkbHkgaW5zaWRlIHRoZSBjbG9zZSB0YWcgZm9yIGVsZW1lbnQgJyVzJwBEb2N1bWVudCBlbmRlZCB1bmV4cGVjdGVkbHkganVzdCBhZnRlciBhbiBvcGVuIGFuZ2xlIGJyYWNrZXQgJzwnAERvY3VtZW50IGVuZGVkIHVuZXhwZWN0ZWRseSB3aGlsZSBpbnNpZGUgYW4gYXR0cmlidXRlIHZhbHVlAERvY3VtZW50IGVuZGVkIHVuZXhwZWN0ZWRseSB3aXRoIGVsZW1lbnRzIHN0aWxsIG9wZW4gLSAnJXMnIHdhcyB0aGUgbGFzdCBlbGVtZW50IG9wZW5lZABEb2N1bWVudCBlbmRlZCB1bmV4cGVjdGVkbHksIGV4cGVjdGVkIHRvIHNlZSBhIGNsb3NlIGFuZ2xlIGJyYWNrZXQgZW5kaW5nIHRoZSB0YWcgPCVzLz4ARG9jdW1lbnQgbXVzdCBiZWdpbiB3aXRoIGFuIGVsZW1lbnQgKGUuZy4gPGJvb2s+KQBEb2N1bWVudCB3YXMgZW1wdHkgb3IgY29udGFpbmVkIG9ubHkgd2hpdGVzcGFjZQBEb24ndCBhdXRvbWF0aWNhbGx5IGNyZWF0ZSBhbmQgcmVnaXN0ZXIgcmVzb3VyY2UARG9uJ3QgZXhwb3J0IGZ1bmN0aW9uczsgZGVjbGFyZSB0aGVtIEdfR05VQ19JTlRFUk5BTABEb24ndCBmb2xsb3cgc3ltYm9saWMgbGlua3MARG9uJ3QgdXNlIGNvcHkgYW5kIGRlbGV0ZSBmYWxsYmFjawBEb3VibGUgdmFsdWUgJyVzJyBmb3IgJXMgb3V0IG9mIHJhbmdlAEVSUk9SIG1lc3NhZ2U6IFJFUExZX1NFUklBTCBvciBFUlJPUl9OQU1FIGhlYWRlciBmaWVsZCBpcyBtaXNzaW5nAEVUQUcARWplY3QARWxlbWVudCAnJXMnIHdhcyBjbG9zZWQsIGJ1dCB0aGUgY3VycmVudGx5IG9wZW4gZWxlbWVudCBpcyAnJXMnAEVsZW1lbnQgJyVzJyB3YXMgY2xvc2VkLCBubyBlbGVtZW50IGlzIGN1cnJlbnRseSBvcGVuAEVsZW1lbnQgPCVzPiBub3QgYWxsb3dlZCBhdCB0aGUgdG9wIGxldmVsAEVsZW1lbnQgPCVzPiBub3QgYWxsb3dlZCBhdCB0b3BsZXZlbABFbGVtZW50IDwlcz4gbm90IGFsbG93ZWQgaW5zaWRlIDwlcz4ARW1pdCBhIHNpZ25hbC4ARW1wdHkgZW50aXR5ICcmOycgc2VlbjsgdmFsaWQgZW50aXRpZXMgYXJlOiAmYW1wOyAmcXVvdDsgJmx0OyAmZ3Q7ICZhcG9zOwBFbXB0eSBwYXRoIGdpdmVuLgoARW1wdHkgc2NoZW1hIG5hbWUgZ2l2ZW4KAEVtcHR5IHRoZSB0cmFzaABFbmNvdW50ZXJlZCBhcnJheSBvZiBsZW5ndGggJXUgYnl0ZS4gTWF4aW11bSBsZW5ndGggaXMgMjw8MjYgYnl0ZXMgKDY0IE1pQikuAEVuY291bnRlcmVkIGFycmF5IG9mIGxlbmd0aCAldSBieXRlcy4gTWF4aW11bSBsZW5ndGggaXMgMjw8MjYgYnl0ZXMgKDY0IE1pQikuAEVuY291bnRlcmVkIGFycmF5IG9mIHR5cGUgJ2ElYycsIGV4cGVjdGVkIHRvIGhhdmUgYSBsZW5ndGggYSBtdWx0aXBsZSBvZiAldSBieXRlcywgYnV0IGZvdW5kIHRvIGJlICV1IGJ5dGVzIGluIGxlbmd0aABFbnRlciBHQXBwbGljYXRpb24gc2VydmljZSBtb2RlICh1c2UgZnJvbSBELUJ1cyBzZXJ2aWNlIGZpbGVzKQBFbnRpdHkgZGlkIG5vdCBlbmQgd2l0aCBhIHNlbWljb2xvbjsgbW9zdCBsaWtlbHkgeW91IHVzZWQgYW4gYW1wZXJzYW5kIGNoYXJhY3RlciB3aXRob3V0IGludGVuZGluZyB0byBzdGFydCBhbiBlbnRpdHkgLSBlc2NhcGUgYW1wZXJzYW5kIGFzICZhbXA7AEVudGl0eSBuYW1lICclLS4qcycgaXMgbm90IGtub3duAEVudW1lcmF0b3IgaXMgY2xvc2VkAEVycm9yIGFjY2VwdGluZyBjb25uZWN0aW9uOiAlcwBFcnJvciBhdXRvLWxhdW5jaGluZzogAEVycm9yIGJpbmRpbmcgdG8gYWRkcmVzczogJXMARXJyb3IgY2FsbGluZyBTdGFydFNlcnZpY2VCeU5hbWUgZm9yICVzOiAARXJyb3IgY2hlY2tpbmcgaWYgU09fUEFTU0NSRUQgaXMgZW5hYmxlZCBmb3Igc29ja2V0OiAlcwBFcnJvciBjbG9zaW5nICh1bmxpbmtlZCkgbG9jayBmaWxlICclcyc6ICVzAEVycm9yIGNsb3NpbmcgZmlsZSBkZXNjcmlwdG9yOiAlcwBFcnJvciBjbG9zaW5nIGZpbGU6ICVzAEVycm9yIGNsb3NpbmcgZmlsZTogJXMARXJyb3IgY2xvc2luZyBzb2NrZXQ6ICVzAEVycm9yIGNvbXByZXNzaW5nIGZpbGUgJXMARXJyb3IgY29ubmVjdGluZzogJXMKAEVycm9yIGNyZWF0aW5nIGJhY2t1cCBjb3B5OiAlcwBFcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgJyVzJzogJXMARXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5OiAlcwBFcnJvciBjcmVhdGluZyBsb2NrIGZpbGUgJyVzJzogJXMARXJyb3IgZGVsZXRpbmcgc3RhbGUgbG9jayBmaWxlICclcyc6ICVzAEVycm9yIGRlc2VyaWFsaXppbmcgR1ZhcmlhbnQgd2l0aCB0eXBlIHN0cmluZyAnJXMnIGZyb20gdGhlIEQtQnVzIHdpcmUgZm9ybWF0AEVycm9yIGR1cmluZyBjb252ZXJzaW9uOiAlcwBFcnJvciBlamVjdGluZyBtb3VudDogJXMKAEVycm9yIGVuYWJsaW5nIFNPX1BBU1NDUkVEOiAlcwBFcnJvciBmaW5kaW5nIGVuY2xvc2luZyBtb3VudDogJXMKAEVycm9yIGZsdXNoaW5nIGNvbm5lY3Rpb246ICVzCgBFcnJvciBnZXR0aW5nIGZpbGVzeXN0ZW0gaW5mbzogJXMARXJyb3IgZ2V0dGluZyB3cml0YWJsZSBhdHRyaWJ1dGVzOiAlcwoARXJyb3IgaW4gYWRkcmVzcyAnJXMnIC0gdGhlIGZhbWlseSBhdHRyaWJ1dGUgaXMgbWFsZm9ybWVkAEVycm9yIGluIGFkZHJlc3MgJyVzJyAtIHRoZSBob3N0IGF0dHJpYnV0ZSBpcyBtaXNzaW5nIG9yIG1hbGZvcm1lZABFcnJvciBpbiBhZGRyZXNzICclcycgLSB0aGUgbm9uY2VmaWxlIGF0dHJpYnV0ZSBpcyBtaXNzaW5nIG9yIG1hbGZvcm1lZABFcnJvciBpbiBhZGRyZXNzICclcycgLSB0aGUgcG9ydCBhdHRyaWJ1dGUgaXMgbWFsZm9ybWVkAEVycm9yIGluIGFkZHJlc3MgJyVzJyAtIHRoZSBwb3J0IGF0dHJpYnV0ZSBpcyBtaXNzaW5nIG9yIG1hbGZvcm1lZABFcnJvciBpbiBhZGRyZXNzICclcycgLSB0aGUgdW5peCB0cmFuc3BvcnQgcmVxdWlyZXMgZXhhY3RseSBvbmUgb2YgdGhlIGtleXMgJ3BhdGgnIG9yICdhYnN0cmFjdCcgdG8gYmUgc2V0AEVycm9yIGpvaW5pbmcgbXVsdGljYXN0IGdyb3VwOiAlcwBFcnJvciBsZWF2aW5nIG11bHRpY2FzdCBncm91cDogJXMARXJyb3IgbWFraW5nIHN5bWJvbGljIGxpbms6ICVzAEVycm9yIG1vdW50aW5nICVzOiAlcwoARXJyb3IgbW91bnRpbmcgbG9jYXRpb246ICVzCgBFcnJvciBtb3VudGluZyBsb2NhdGlvbjogQW5vbnltb3VzIGFjY2VzcyBkZW5pZWQKAEVycm9yIG1vdmluZyBmaWxlOiAlcwBFcnJvciBvbiBsaW5lICVkIGNoYXIgJWQ6IABFcnJvciBvbiBsaW5lICVkOiAlcwBFcnJvciBvcGVuaW5nIGRpcmVjdG9yeSAnJXMnOiAlcwBFcnJvciBvcGVuaW5nIGZpbGUgJyVzJzogJXMARXJyb3Igb3BlbmluZyBmaWxlOiAlcwBFcnJvciBvcGVuaW5nIGtleXJpbmcgJyVzJyBmb3IgcmVhZGluZzogAEVycm9yIG9wZW5pbmcga2V5cmluZyAnJXMnIGZvciB3cml0aW5nOiAARXJyb3Igb3BlbmluZyBub25jZSBmaWxlICclcyc6ICVzAEVycm9yIHBhcnNpbmcgaW50cm9zcGVjdGlvbiBYTUw6ICVzCgBFcnJvciBwYXJzaW5nIG9wdGlvbiAlcwBFcnJvciBwYXJzaW5nIHBhcmFtZXRlciAlZCBvZiB0eXBlICclcyc6ICVzCgBFcnJvciBwYXJzaW5nIHBhcmFtZXRlciAlZDogJXMKAEVycm9yIHJlYWRpbmcgZmlsZSAlczogJXMARXJyb3IgcmVhZGluZyBmaWxlICclcyc6ICVzAEVycm9yIHJlYWRpbmcgZnJvbSBmaWxlIGRlc2NyaXB0b3I6ICVzAEVycm9yIHJlYWRpbmcgZnJvbSBmaWxlOiAlcwBFcnJvciByZWFkaW5nIGZyb20gZmlsZTogJXMARXJyb3IgcmVhZGluZyBmcm9tIG5vbmNlIGZpbGUgJyVzJywgZXhwZWN0ZWQgMTYgYnl0ZXMsIGdvdCAlZABFcnJvciByZWFkaW5nIGZyb20gbm9uY2UgZmlsZSAnJXMnOiAlcwBFcnJvciByZWNlaXZpbmcgZGF0YTogJXMARXJyb3IgcmVjZWl2aW5nIG1lc3NhZ2U6ICVzAEVycm9yIHJlbW92aW5nIGZpbGU6ICVzAEVycm9yIHJlbW92aW5nIG9sZCBiYWNrdXAgbGluazogJXMARXJyb3IgcmVtb3Zpbmcgb2xkIGZpbGU6ICVzAEVycm9yIHJlbW92aW5nIHRhcmdldCBmaWxlOiAlcwBFcnJvciByZW5hbWluZyBmaWxlOiAlcwBFcnJvciByZW5hbWluZyB0ZW1wb3JhcnkgZmlsZTogJXMARXJyb3IgcmVzb2x2aW5nICclcycARXJyb3IgcmVzb2x2aW5nICclcyc6ICVzAEVycm9yIHJldHVybiB3aXRoIGJvZHkgb2YgdHlwZSAnJXMnAEVycm9yIHJldHVybiB3aXRoIGVtcHR5IGJvZHkARXJyb3IgcmV2ZXJzZS1yZXNvbHZpbmcgJyVzJzogJXMARXJyb3Igc2Vla2luZyBpbiBmaWxlOiAlcwBFcnJvciBzZW5kaW5nIGRhdGE6ICVzAEVycm9yIHNlbmRpbmcgZGF0YTogJXMARXJyb3Igc2VuZGluZyBtZXNzYWdlOiAlcwBFcnJvciBzZXJpYWxpemluZyBHVmFyaWFudCB3aXRoIHR5cGUgc3RyaW5nICclcycgdG8gdGhlIEQtQnVzIHdpcmUgZm9ybWF0AEVycm9yIHNldHRpbmcgU0VMaW51eCBjb250ZXh0OiAlcwBFcnJvciBzZXR0aW5nIGF0dHJpYnV0ZTogJXMKAEVycm9yIHNldHRpbmcgZXh0ZW5kZWQgYXR0cmlidXRlICclcyc6ICVzAEVycm9yIHNldHRpbmcgbW9kaWZpY2F0aW9uIG9yIGFjY2VzcyB0aW1lOiAlcwBFcnJvciBzZXR0aW5nIG93bmVyOiAlcwBFcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zOiAlcwBFcnJvciBzZXR0aW5nIHByb3BlcnR5ICclcyc6IEV4cGVjdGVkIHR5cGUgJyVzJyBidXQgZ290ICclcycARXJyb3Igc2V0dGluZyBzeW1saW5rOiAlcwBFcnJvciBzZXR0aW5nIHN5bWxpbms6IGZpbGUgaXMgbm90IGEgc3ltbGluawBFcnJvciBzcGF3bmluZyBjb21tYW5kIGxpbmUgJyVzJzogAEVycm9yIG9wZW5pbmcgZmlsZTogJXMARXJyb3IgdHJhc2hpbmcgZmlsZTogJXMARXJyb3IgdHJ1bmNhdGluZyBmaWxlOiAlcwBFcnJvciB1bmVzY2FwaW5nIGtleSBvciB2YWx1ZSBpbiBLZXkvVmFsdWUgcGFpciAlZCwgJyVzJywgaW4gYWRkcmVzcyBlbGVtZW50ICclcycARXJyb3IgdW5saW5raW5nIGxvY2sgZmlsZSAnJXMnOiAlcwBFcnJvciB1bm1vdW50aW5nIG1vdW50OiAlcwoARXJyb3Igd2hlbiBnZXR0aW5nIGluZm9ybWF0aW9uIGZvciBkaXJlY3RvcnkgJyVzJzogJXMARXJyb3Igd2hlbiBnZXR0aW5nIGluZm9ybWF0aW9uIGZvciBmaWxlICclcyc6ICVzAEVycm9yIHdoZW4gZ2V0dGluZyBpbmZvcm1hdGlvbiBmb3IgZmlsZSBkZXNjcmlwdG9yOiAlcwBFcnJvciB3aGlsZSBjb21waWxpbmcgcmVndWxhciBleHByZXNzaW9uICVzIGF0IGNoYXIgJWQ6ICVzAEVycm9yIHdoaWxlIGRpc2FibGluZyBTT19QQVNTQ1JFRDogJXMARXJyb3Igd2hpbGUgbWF0Y2hpbmcgcmVndWxhciBleHByZXNzaW9uICVzOiAlcwBFcnJvciB3aGlsZSBvcHRpbWl6aW5nIHJlZ3VsYXIgZXhwcmVzc2lvbiAlczogJXMARXJyb3Igd2hpbGUgcGFyc2luZyByZXBsYWNlbWVudCB0ZXh0ICIlcyIgYXQgY2hhciAlbHU6ICVzAEVycm9yIHdyaXRpbmcgY29udGVudHMgb2Ygbm9uY2UgZmlsZSAnJXMnIHRvIHN0cmVhbToARXJyb3Igd3JpdGluZyBub25jZSBmaWxlIGF0ICclcyc6ICVzAEVycm9yIHdyaXRpbmcgdG8gZmlsZSBkZXNjcmlwdG9yOiAlcwBFcnJvciB3cml0aW5nIHRvIGZpbGU6ICVzAEVycm9yIHdyaXRpbmcgdG8gZmlsZTogJXMARXJyb3I6ICVzCgBFcnJvcjogJXMgaXMgbm90IGEgdmFsaWQgYnVzIG5hbWUKAEVycm9yOiAlcyBpcyBub3QgYSB2YWxpZCBpbnRlcmZhY2UgbmFtZQoARXJyb3I6ICVzIGlzIG5vdCBhIHZhbGlkIG1lbWJlciBuYW1lCgBFcnJvcjogJXMgaXMgbm90IGEgdmFsaWQgbmFtZQoARXJyb3I6ICVzIGlzIG5vdCBhIHZhbGlkIG9iamVjdCBwYXRoCgBFcnJvcjogJXMgaXMgbm90IGEgdmFsaWQgdW5pcXVlIGJ1cyBuYW1lLgoARXJyb3I6IERlc3RpbmF0aW9uIGlzIG5vdCBzcGVjaWZpZWQKAEVycm9yOiBNZXRob2QgbmFtZSAnJXMnIGlzIGludmFsaWQKAEVycm9yOiBNZXRob2QgbmFtZSBpcyBub3Qgc3BlY2lmaWVkCgBFcnJvcjogT2JqZWN0IHBhdGggaXMgbm90IHNwZWNpZmllZAoARXJyb3I6IG9iamVjdCBwYXRoIG5vdCBzcGVjaWZpZWQuCgBFcnJvcjogc2lnbmFsIG11c3QgYmUgdGhlIGZ1bGx5LXF1YWxpZmllZCBuYW1lLgoARXJyb3I6IHNpZ25hbCBub3Qgc3BlY2lmaWVkLgoARXRhZyBub3QgYXZhaWxhYmxlCgBFeGhhdXN0ZWQgYWxsIGF2YWlsYWJsZSBhdXRoZW50aWNhdGlvbiBtZWNoYW5pc21zICh0cmllZDogJXMpIChhdmFpbGFibGU6ICVzKQBFeGlzdGluZyBmaWxlICclcycgY291bGQgbm90IGJlIHJlbW92ZWQ6IGdfdW5saW5rKCkgZmFpbGVkOiAlcwBFeHBlY3RlZCBOVUwgYnl0ZSBhZnRlciB0aGUgc3RyaW5nICclcycgYnV0IGZvdW5kIGJ5dGUgJWQARXhwZWN0ZWQgYSBHRW1ibGVtIGZvciBHRW1ibGVtZWRJY29uAEV4cGVjdGVkIHZhbGlkIFVURi04IHN0cmluZyBidXQgZm91bmQgaW52YWxpZCBieXRlcyBhdCBieXRlIG9mZnNldCAlZCAobGVuZ3RoIG9mIHN0cmluZyBpcyAlZCkuIFRoZSB2YWxpZCBVVEYtOCBzdHJpbmcgdXAgdW50aWwgdGhhdCBwb2ludCB3YXMgJyVzJwBFeHBlY3RpbmcgMSBjb250cm9sIG1lc3NhZ2UsIGdvdCAlZABFeHBlY3RpbmcgMSBjb250cm9sIG1lc3NhZ2UsIGdvdCAlZABFeHBlY3Rpbmcgb25lIGZkLCBidXQgZ290ICVkCgBFeHBlY3Rpbmcgb25lIGZkLCBidXQgZ290ICVkCgBFeHBlY3RpbmcgdG8gcmVhZCBhIHNpbmdsZSBieXRlIGZvciByZWNlaXZpbmcgY3JlZGVudGlhbHMgYnV0IHJlYWQgemVybyBieXRlcwBFeHRyYWN0IGEgcmVzb3VyY2UgZmlsZSB0byBzdGRvdXQARklMRQBGSUxFIFBBVEgARklMRSBbUEFUSF0ARmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeQBGYWlsZWQgdG8gY2hhbmdlIHRvIGRpcmVjdG9yeSAnJXMnICglcykARmFpbGVkIHRvIGNyZWF0ZSBmaWxlICclcyc6ICVzAEZhaWxlZCB0byBjcmVhdGUgcGlwZSBmb3IgY29tbXVuaWNhdGluZyB3aXRoIGNoaWxkIHByb2Nlc3MgKCVzKQBGYWlsZWQgdG8gY3JlYXRlIHRlbXAgZmlsZTogJXMARmFpbGVkIHRvIGV4ZWN1dGUgY2hpbGQgcHJvY2VzcyAiJXMiICglcykARmFpbGVkIHRvIGV4ZWN1dGUgY2hpbGQgcHJvY2VzcyAoJXMpAEZhaWxlZCB0byBleGVjdXRlIGhlbHBlciBwcm9ncmFtICglcykARmFpbGVkIHRvIGV4cGFuZCBleGVjIGxpbmUgJyVzJyB3aXRoIFVSSSAnJXMnAEZhaWxlZCB0byBmb3JrICglcykARmFpbGVkIHRvIGZvcmsgY2hpbGQgcHJvY2VzcyAoJXMpAEZhaWxlZCB0byBnZXQgYXR0cmlidXRlcyBvZiBmaWxlICclcyVzJXMlcyc6IGZzdGF0KCkgZmFpbGVkOiAlcwBGYWlsZWQgdG8gZ2V0IGF0dHJpYnV0ZXMgb2YgZmlsZSAnJXMnOiBmc3RhdCgpIGZhaWxlZDogJXMARmFpbGVkIHRvIGxvYWQgaW5mbyBmb3IgaGFuZGxlciAnJXMnCgBGYWlsZWQgdG8gbG9jYXRlICclcycgaW4gYW55IHNvdXJjZSBkaXJlY3RvcnkARmFpbGVkIHRvIGxvY2F0ZSAnJXMnIGluIGN1cnJlbnQgZGlyZWN0b3J5AEZhaWxlZCB0byBtYXAgJXMlcyVzJXM6IG1tYXAoKSBmYWlsZWQ6ICVzAEZhaWxlZCB0byBvcGVuIGZpbGUgJyVzJzogJXMARmFpbGVkIHRvIG9wZW4gZmlsZSAnJXMnOiBmZG9wZW4oKSBmYWlsZWQ6ICVzAEZhaWxlZCB0byBvcGVuIGZpbGUgJyVzJzogb3BlbigpIGZhaWxlZDogJXMARmFpbGVkIHRvIHBhcnNlICclLS4qcycsIHdoaWNoIHNob3VsZCBoYXZlIGJlZW4gYSBkaWdpdCBpbnNpZGUgYSBjaGFyYWN0ZXIgcmVmZXJlbmNlICgmIzIzNDsgZm9yIGV4YW1wbGUpIC0gcGVyaGFwcyB0aGUgZGlnaXQgaXMgdG9vIGxhcmdlAEZhaWxlZCB0byByZWFkIGRhdGEgZnJvbSBjaGlsZCBwcm9jZXNzAEZhaWxlZCB0byByZWFkIGRhdGEgZnJvbSBjaGlsZCBwcm9jZXNzICglcykARmFpbGVkIHRvIHJlYWQgZW5vdWdoIGRhdGEgZnJvbSBjaGlsZCBwaWQgcGlwZSAoJXMpAEZhaWxlZCB0byByZWFkIGZyb20gY2hpbGQgcGlwZSAoJXMpAEZhaWxlZCB0byByZWFkIGZyb20gZmlsZSAnJXMnOiAlcwBGYWlsZWQgdG8gcmVhZCB0aGUgc3ltYm9saWMgbGluayAnJXMnOiAlcwBGYWlsZWQgdG8gcmVkaXJlY3Qgb3V0cHV0IG9yIGlucHV0IG9mIGNoaWxkIHByb2Nlc3MgKCVzKQBGYWlsZWQgdG8gcmVuYW1lIGZpbGUgJyVzJyB0byAnJXMnOiBnX3JlbmFtZSgpIGZhaWxlZDogJXMARmFpbGVkIHRvIHJlc2l6ZSBtZW1vcnkgb3V0cHV0IHN0cmVhbQBGYWlsZWQgdG8gc2V0ICclcycgYXMgdGhlIGRlZmF1bHQgaGFuZGxlciBmb3IgJyVzJzogJXMKAEZhaWxlZCB0byB3cml0ZSBmaWxlICclcyc6IGZzeW5jKCkgZmFpbGVkOiAlcwBGYWlsZWQgdG8gd3JpdGUgZmlsZSAnJXMnOiB3cml0ZSgpIGZhaWxlZDogJXMARmlsZSAiJXMiIGlzIHRvbyBsYXJnZQBGaWxlICVzIGFwcGVhcnMgbXVsdGlwbGUgdGltZXMgaW4gdGhlIHJlc291cmNlAEZpbGUgZW51bWVyYXRvciBoYXMgb3V0c3RhbmRpbmcgb3BlcmF0aW9uAEZpbGUgZW51bWVyYXRvciBpcyBhbHJlYWR5IGNsb3NlZABGaWxlIG5hbWVzIGNhbm5vdCBjb250YWluICclYycARmlsZXN5c3RlbSBkb2VzIG5vdCBzdXBwb3J0IHN5bWJvbGljIGxpbmtzAEZpbGVzeXN0ZW0gcm9vdABGaXJzdCB0b2tlbiBvZiBsaW5lICVkIG9mIHRoZSBrZXlyaW5nIGF0ICclcycgd2l0aCBjb250ZW50ICclcycgaXMgbWFsZm9ybWVkAEZvbGxvdyBzeW1ib2xpYyBsaW5rcywgbW91bnRzIGFuZCBzaG9ydGN1dHMAR0FwcGxpY2F0aW9uIG9wdGlvbnMAR0NyZWRlbnRpYWxzIGRvZXMgbm90IGNvbnRhaW4gYSBwcm9jZXNzIElEIG9uIHRoaXMgT1MAR0NyZWRlbnRpYWxzIGlzIG5vdCBpbXBsZW1lbnRlZCBvbiB0aGlzIE9TACVIOiVNOiVTACVJOiVNOiVTICVQACVaICVIOiVNOiVTICVZICViICVkICVhACVkLyVtLyV5AEFNAFBNAEdTb2NrZXRDb250cm9sTWVzc2FnZSBub3Qgc3VwcG9ydGVkIG9uIFdpbmRvd3MAR2VuZXJhdGUgZGVwZW5kZW5jeSBsaXN0AEdlbmVyYXRlIG91dHB1dCBpbiB0aGUgZm9ybWF0IHNlbGVjdGVkIGZvciBieSB0aGUgdGFyZ2V0IGZpbGVuYW1lIGV4dGVuc2lvbgBHZW5lcmF0ZSBzb3VyY2UgaGVhZGVyAEdlbmVyYXRlIHNvdXJjZWNvZGUgdXNlZCB0byBsaW5rIGluIHRoZSByZXNvdXJjZSBmaWxlIGludG8geW91ciBjb2RlAEdldCBmaWxlIHN5c3RlbSBpbmZvAEdldCBvciBzZXQgdGhlIGhhbmRsZXIgZm9yIGEgbWltZXR5cGUAR2V0IG9yIHNldCB0aGUgaGFuZGxlciBmb3IgYSBtaW1ldHlwZS4AR2V0IHRoZSB2YWx1ZSBvZiBLRVkASEFORExFUgBIVFRQIHByb3h5IGF1dGhlbnRpY2F0aW9uIGZhaWxlZABIVFRQIHByb3h5IGF1dGhlbnRpY2F0aW9uIHJlcXVpcmVkAEhUVFAgcHJveHkgY29ubmVjdGlvbiBmYWlsZWQ6ICVpAEhUVFAgcHJveHkgY29ubmVjdGlvbiBub3QgYWxsb3dlZABIVFRQIHByb3h5IHNlcnZlciBjbG9zZWQgY29ubmVjdGlvbiB1bmV4cGVjdGVkbHkuAEhlbHAgT3B0aW9uczoASG9zdCB1bnJlYWNoYWJsZQBIb3N0IHVucmVhY2hhYmxlIHRocm91Z2ggU09DS1N2NSBzZXJ2ZXIuAEhvc3RuYW1lICclcycgY29udGFpbnMgJ1snIGJ1dCBub3QgJ10nAEhvc3RuYW1lICclcycgaXMgdG9vIGxvbmcgZm9yIFNPQ0tTdjQgcHJvdG9jb2wASG9zdG5hbWUgJyVzJyBpcyB0b28gbG9uZyBmb3IgU09DS1N2NSBwcm90b2NvbABJZiBubyBoYW5kbGVyIGlzIGdpdmVuLCBsaXN0cyByZWdpc3RlcmVkIGFuZCByZWNvbW1lbmRlZCBhcHBsaWNhdGlvbnMKZm9yIHRoZSBtaW1ldHlwZS4gSWYgYSBoYW5kbGVyIGlzIGdpdmVuLCBpdCBpcyBzZXQgYXMgdGhlIGRlZmF1bHQKaGFuZGxlciBmb3IgdGhlIG1pbWV0eXBlLgBJZ25vcmUgbm9uZXhpc3RlbnQgZmlsZXMsIG5ldmVyIHByb21wdABJZ25vcmUgb3V0c3RhbmRpbmcgZmlsZSBvcGVyYXRpb25zIHdoZW4gdW5tb3VudGluZyBvciBlamVjdGluZwBJZ25vcmVkLCBmb3IgY29tcGF0IHdpdGggR1Rlc3REYnVzAElnbm9yaW5nIG92ZXJyaWRlIGZvciB0aGlzIGtleS4KAElnbm9yaW5nIHRoaXMgZmlsZS4KAEluY29tcGxldGUgbXVsdGlieXRlIHNlcXVlbmNlIGluIGlucHV0AElucHV0IHN0cmVhbSBkb2Vzbid0IGltcGxlbWVudCByZWFkAElucHV0IHN0cmVhbSBkb2Vzbid0IGltcGxlbWVudCBzZWVrAEludGVnZXIgdmFsdWUgJyVzJyBmb3IgJXMgb3V0IG9mIHJhbmdlAEludGVnZXIgdmFsdWUgJyVzJyBvdXQgb2YgcmFuZ2UASW50ZXJuYWwgU09DS1N2NSBwcm94eSBzZXJ2ZXIgZXJyb3IuAEludGVybmFsIGVycm9yOiAlcwBJbnRyb3NwZWN0IGEgcmVtb3RlIG9iamVjdC4ASW50cm9zcGVjdCBjaGlsZHJlbgBJbnZhbGlkIEdTZWVrVHlwZSBzdXBwbGllZABJbnZhbGlkIFVURi04IGVuY29kZWQgdGV4dCBpbiBuYW1lIC0gbm90IHZhbGlkICclcycASW52YWxpZCBhdHRyaWJ1dGUgdHlwZSAlcwoASW52YWxpZCBhdHRyaWJ1dGUgdHlwZSAoYnl0ZSBzdHJpbmcgZXhwZWN0ZWQpAEludmFsaWQgYXR0cmlidXRlIHR5cGUgKHN0cmluZyBleHBlY3RlZCkASW52YWxpZCBhdHRyaWJ1dGUgdHlwZSAodWludDMyIGV4cGVjdGVkKQBJbnZhbGlkIGF0dHJpYnV0ZSB0eXBlICh1aW50NjQgZXhwZWN0ZWQpAEludmFsaWQgYnl0ZSBzZXF1ZW5jZSBpbiBjb252ZXJzaW9uIGlucHV0AEludmFsaWQgaG9zdG5hbWUASW52YWxpZCBlbmRpYW5uZXNzIHZhbHVlLiBFeHBlY3RlZCAweDZjICgnbCcpIG9yIDB4NDIgKCdCJykgYnV0IGZvdW5kIHZhbHVlIDB4JTAyeABJbnZhbGlkIGV4dGVuZGVkIGF0dHJpYnV0ZSBuYW1lAEludmFsaWQgZmlsZW5hbWUASW52YWxpZCBmaWxlbmFtZSAlcwBJbnZhbGlkIGdyb3VwIG5hbWU6ICVzAEludmFsaWQgaG9zdG5hbWUASW52YWxpZCBrZXkgbmFtZTogJXMASW52YWxpZCBtYWpvciBwcm90b2NvbCB2ZXJzaW9uLiBFeHBlY3RlZCAxIGJ1dCBmb3VuZCAlZABJbnZhbGlkIG9iamVjdCwgbm90IGluaXRpYWxpemVkAEludmFsaWQgcHJvZ3JhbSBuYW1lOiAlcwBJbnZhbGlkIHNlZWsgcmVxdWVzdABJbnZhbGlkIHNlcXVlbmNlIGluIGNvbnZlcnNpb24gaW5wdXQASW52YWxpZCBzb2NrZXQsIGluaXRpYWxpemF0aW9uIGZhaWxlZCBkdWUgdG86ICVzAEludmFsaWQgc29ja2V0LCBub3QgaW5pdGlhbGl6ZWQASW52YWxpZCBzdHJpbmcgaW4gYXJndW1lbnQgdmVjdG9yIGF0ICVkOiAlcwBJbnZhbGlkIHN0cmluZyBpbiBlbnZpcm9ubWVudDogJXMASW52YWxpZCBzeW1saW5rIHZhbHVlIGdpdmVuAEludmFsaWQgd29ya2luZyBkaXJlY3Rvcnk6ICVzAEludm9rZSBhIG1ldGhvZCBvbiBhIHJlbW90ZSBvYmplY3QuAEludm9rZSBhbiBhY3Rpb24gb24gdGhlIGFwcGxpY2F0aW9uAEtlZXAgd2l0aCBmaWxlIHdoZW4gbW92ZWQAS2V5ICclcycgaW4gZ3JvdXAgJyVzJyBoYXMgdmFsdWUgJyVzJyB3aGVyZSAlcyB3YXMgZXhwZWN0ZWQAS2V5IGZpbGUgY29udGFpbnMgZXNjYXBlIGNoYXJhY3RlciBhdCBlbmQgb2YgbGluZQBLZXkgZmlsZSBjb250YWlucyBpbnZhbGlkIGVzY2FwZSBzZXF1ZW5jZSAnJXMnAEtleSBmaWxlIGNvbnRhaW5zIGtleSAnJXMnIGluIGdyb3VwICclcycgd2hpY2ggaGFzIGEgdmFsdWUgdGhhdCBjYW5ub3QgYmUgaW50ZXJwcmV0ZWQuAEtleSBmaWxlIGNvbnRhaW5zIGtleSAnJXMnIHdoaWNoIGhhcyBhIHZhbHVlIHRoYXQgY2Fubm90IGJlIGludGVycHJldGVkLgBLZXkgZmlsZSBjb250YWlucyBrZXkgJyVzJyB3aXRoIHZhbHVlICclcycgd2hpY2ggaXMgbm90IFVURi04AEtleSBmaWxlIGNvbnRhaW5zIGxpbmUgJyVzJyB3aGljaCBpcyBub3QgYSBrZXktdmFsdWUgcGFpciwgZ3JvdXAsIG9yIGNvbW1lbnQAS2V5IGZpbGUgY29udGFpbnMgdW5zdXBwb3J0ZWQgZW5jb2RpbmcgJyVzJwBLZXkgZmlsZSBkb2VzIG5vdCBoYXZlIGdyb3VwICclcycAS2V5IGZpbGUgZG9lcyBub3QgaGF2ZSBrZXkgJyVzJyBpbiBncm91cCAnJXMnAEtleSBmaWxlIGRvZXMgbm90IHN0YXJ0IHdpdGggYSBncm91cABLZXkvVmFsdWUgcGFpciAlZCwgJyVzJywgaW4gYWRkcmVzcyBlbGVtZW50ICclcycgZG9lcyBub3QgY29udGFpbiBhbiBlcXVhbCBzaWduAExPQ0FUSU9OAExhdW5jaCBhbiBhcHBsaWNhdGlvbgBMYXVuY2ggdGhlIGFwcGxpY2F0aW9uICh3aXRoIG9wdGlvbmFsIGZpbGVzIHRvIG9wZW4pAExlZnQgb3ZlciB1bmNvbnZlcnRlZCBkYXRhIGluIHJlYWQgYnVmZmVyAExlbmd0aCAldSBpcyB0b28gbG9uZyBmb3IgYWRkcmVzcwBMaW5lICVkIG9mIHRoZSBrZXlyaW5nIGF0ICclcycgd2l0aCBjb250ZW50ICclcycgaXMgbWFsZm9ybWVkAExpc3QATGlzdCBhcHBsaWNhdGlvbnMATGlzdCBhdmFpbGFibGUgYWN0aW9ucwBMaXN0IGNvbnRlbnRzIG9mIGRpcmVjdG9yaWVzIGluIGEgdHJlZS1saWtlIGZvcm1hdC4ATGlzdCBrZXlzIGFuZCB2YWx1ZXMsIHJlY3Vyc2l2ZWx5CklmIG5vIFNDSEVNQSBpcyBnaXZlbiwgbGlzdCBhbGwga2V5cwoATGlzdCByZXNvdXJjZXMKSWYgU0VDVElPTiBpcyBnaXZlbiwgb25seSBsaXN0IHJlc291cmNlcyBpbiB0aGlzIHNlY3Rpb24KSWYgUEFUSCBpcyBnaXZlbiwgb25seSBsaXN0IG1hdGNoaW5nIHJlc291cmNlcwBMaXN0IHJlc291cmNlcyB3aXRoIGRldGFpbHMKSWYgU0VDVElPTiBpcyBnaXZlbiwgb25seSBsaXN0IHJlc291cmNlcyBpbiB0aGlzIHNlY3Rpb24KSWYgUEFUSCBpcyBnaXZlbiwgb25seSBsaXN0IG1hdGNoaW5nIHJlc291cmNlcwpEZXRhaWxzIGluY2x1ZGUgdGhlIHNlY3Rpb24sIHNpemUgYW5kIGNvbXByZXNzaW9uAExpc3Qgc2VjdGlvbnMgY29udGFpbmluZyByZXNvdXJjZXMgaW4gYW4gZWxmIEZJTEUATGlzdCBzdGF0aWMgYWN0aW9ucyBmb3IgYW4gYXBwbGljYXRpb24gKGZyb20gLmRlc2t0b3AgZmlsZSkATGlzdCB0aGUgY2hpbGRyZW4gb2YgU0NIRU1BAExpc3QgdGhlIGNvbnRlbnRzIG9mIGxvY2F0aW9ucwBMaXN0IHRoZSBjb250ZW50cyBvZiB0aGUgbG9jYXRpb25zLgBMaXN0IHRoZSBpbnN0YWxsZWQgKG5vbi1yZWxvY2F0YWJsZSkgc2NoZW1hcwBMaXN0IHRoZSBpbnN0YWxsZWQgRC1CdXMgYWN0aXZhdGFibGUgYXBwbGljYXRpb25zIChieSAuZGVza3RvcCBmaWxlcykATGlzdCB0aGUgaW5zdGFsbGVkIHJlbG9jYXRhYmxlIHNjaGVtYXMATGlzdCB0aGUga2V5cyBpbiBTQ0hFTUEATGlzdCB3cml0YWJsZSBhdHRyaWJ1dGVzAExpc3RlbmVyIGlzIGFscmVhZHkgY2xvc2VkAExpc3RzIHRoZSBjb250ZW50cyBvZiBsb2NhdGlvbnMgaW4gYSB0cmVlAExvY2F0aW9uIG5vdCBzcGVjaWZpZWQATUVUSE9EX0NBTEwgbWVzc2FnZTogUEFUSCBvciBNRU1CRVIgaGVhZGVyIGZpZWxkIGlzIG1pc3NpbmcATUVUSE9EX1JFVFVSTiBtZXNzYWdlOiBSRVBMWV9TRVJJQUwgaGVhZGVyIGZpZWxkIGlzIG1pc3NpbmcATUlNRVRZUEUATWFsZm9ybWVkIGlucHV0IGRhdGEgZm9yIEdGaWxlSWNvbgBNYWxmb3JtZWQgbnVtYmVyIG9mIHRva2VucyAoJWQpIGluIEdFbWJsZW0gZW5jb2RpbmcATWFsZm9ybWVkIG51bWJlciBvZiB0b2tlbnMgKCVkKSBpbiBHRW1ibGVtZWRJY29uIGVuY29kaW5nAE1hbGZvcm1lZCB2ZXJzaW9uIG51bWJlcjogJXMATWVhbmluZ2xlc3Mga2V5L3ZhbHVlIHBhaXIgY29tYmluYXRpb24gaW4gYWRkcmVzcyBlbnRyeSAnJXMnAE1lbW9yeSBvdXRwdXQgc3RyZWFtIG5vdCByZXNpemFibGUATWVzc2FnZSBib2R5IGhhcyBzaWduYXR1cmUgJyVzJyBidXQgdGhlcmUgaXMgbm8gc2lnbmF0dXJlIGhlYWRlcgBNZXNzYWdlIGJvZHkgaGFzIHR5cGUgc2lnbmF0dXJlICclcycgYnV0IHNpZ25hdHVyZSBpbiB0aGUgaGVhZGVyIGZpZWxkIGlzICclcycATWVzc2FnZSBib2R5IGlzIGVtcHR5IGJ1dCBzaWduYXR1cmUgaW4gdGhlIGhlYWRlciBmaWVsZCBpcyAnKCVzKScATWVzc2FnZSBoYXMgJWQgZmlsZSBkZXNjcmlwdG9ycyBidXQgdGhlIGhlYWRlciBmaWVsZCBpbmRpY2F0ZXMgJWQgZmlsZSBkZXNjcmlwdG9ycwBNZXRob2QgJyVzJyBvbiBpbnRlcmZhY2UgJyVzJyB3aXRoIHNpZ25hdHVyZSAnJXMnIGRvZXMgbm90IGV4aXN0AE1ldGhvZCAnJXMnIHJldHVybmVkIHR5cGUgJyVzJywgYnV0IGV4cGVjdGVkICclcycATWV0aG9kIGFuZCBpbnRlcmZhY2UgbmFtZQBNaXNzaW5nIGFyZ3VtZW50AE1pc3NpbmfCt2FyZ3VtZW50wrdmb3LCtyVzAE1vbml0b3IgS0VZIGZvciBjaGFuZ2VzLgpJZiBubyBLRVkgaXMgc3BlY2lmaWVkLCBtb25pdG9yIGFsbCBrZXlzIGluIFNDSEVNQS4KVXNlIF5DIHRvIHN0b3AgbW9uaXRvcmluZy4KAE1vbml0b3IgYSBkaXJlY3RvcnkgKGRlZmF1bHQ6IGRlcGVuZHMgb24gdHlwZSkATW9uaXRvciBhIGZpbGUgKGRlZmF1bHQ6IGRlcGVuZHMgb24gdHlwZSkATW9uaXRvciBhIGZpbGUgZGlyZWN0bHkgKG5vdGljZXMgY2hhbmdlcyBtYWRlIHZpYSBoYXJkbGlua3MpAGNvcnJ1cHRlZCBvYmplY3QATW9uaXRvciBldmVudHMATW9uaXRvciBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgZm9yIGNoYW5nZXMATW9uaXRvciBmaWxlcyBvciBkaXJlY3RvcmllcyBmb3IgY2hhbmdlcy4ATW9uaXRvcnMgYSBmaWxlIGRpcmVjdGx5LCBidXQgZG9lc24ndCByZXBvcnQgY2hhbmdlcwBNb3VudCBhcyBtb3VudGFibGUATW91bnQgb3IgdW5tb3VudCB0aGUgbG9jYXRpb25zAE1vdW50IG9yIHVubW91bnQgdGhlIGxvY2F0aW9ucy4ATW91bnQgdm9sdW1lIHdpdGggZGV2aWNlIGZpbGUATW91bnRlZCAlcyBhdCAlcwoATW92ZSBiZXR3ZWVuIG1vdW50cyBub3Qgc3VwcG9ydGVkAE1vdmUgZmlsZXMgb3IgZGlyZWN0b3JpZXMgdG8gdGhlIHRyYXNoAE1vdmUgZmlsZXMgb3IgZGlyZWN0b3JpZXMgdG8gdGhlIHRyYXNoLgBNb3ZlIG9uZSBvciBtb3JlIGZpbGVzAE1vdmUgb25lIG9yIG1vcmUgZmlsZXMgZnJvbSBTT1VSQ0UgdG8gREVTVC4ATXVsdGlwbGUgY29ubmVjdGlvbiBlbmRwb2ludHMgc3BlY2lmaWVkAE11c3Qgc3BlY2lmeSBhIHNpbmdsZSBtaW1ldHlwZSwgYW5kIG1heWJlIGEgaGFuZGxlcgBOQU1FAE5lZWQgbW9yZSBpbnB1dABOZXR3b3JrIHVucmVhY2hhYmxlAE5ldHdvcmsgdW5yZWFjaGFibGUgdGhyb3VnaCBTT0NLU3Y1IHByb3h5LgBOZXR3b3JrTWFuYWdlciB2ZXJzaW9uIHRvbyBvbGQATmV2ZXIgZm9sbG93IHN5bWJvbGljIGxpbmtzAE5vIEROUyByZWNvcmQgb2YgdGhlIHJlcXVlc3RlZCB0eXBlIGZvciAnJXMnAE5vIE1JTUUgdHlwZSBkZWZpbmVkIGluIHRoZSBib29rbWFyayBmb3IgVVJJICclcycATm8gUEVNLWVuY29kZWQgY2VydGlmaWNhdGUgZm91bmQATm8gUEVNLWVuY29kZWQgcHJpdmF0ZSBrZXkgZm91bmQATm8gYWRkcmVzcyBzcGVjaWZpZWQATm8gYXBwbGljYXRpb24gaXMgcmVnaXN0ZXJlZCBhcyBoYW5kbGluZyB0aGlzIGZpbGUATm8gYXBwbGljYXRpb24gd2l0aCBuYW1lICclcycgcmVnaXN0ZXJlZCBhIGJvb2ttYXJrIGZvciAnJXMnAE5vIGJvb2ttYXJrIGZvdW5kIGZvciBVUkkgJyVzJwBObyBjb25uZWN0aW9uIGVuZHBvaW50IHNwZWNpZmllZABObyBkZWZhdWx0IGFwcGxpY2F0aW9ucyBmb3IgJyVzJwoATm8gZGVzdGluYXRpb24gZ2l2ZW4ATm8gZmlsZXMgZ2l2ZW4ATm8gZmlsZXMgdG8gZGVsZXRlAE5vIGZpbGVzIHRvIG9wZW4ATm8gZ3JvdXBzIHNldCBpbiBib29rbWFyayBmb3IgVVJJICclcycATm8gbG9jYXRpb25zIGdpdmVuAE5vIGxvY2F0aW9ucyBnaXZlcwBObyBwcml2YXRlIGZsYWcgaGFzIGJlZW4gZGVmaW5lZCBpbiBib29rbWFyayBmb3IgVVJJICclcycATm8gcmVjb21tZW5kZWQgYXBwbGljYXRpb25zCgBObyByZWdpc3RlcmVkIGFwcGxpY2F0aW9ucwoATm8gc2NoZW1hIGZpbGVzIGZvdW5kOiAATm8gc2NoZW1hcyBpbnN0YWxsZWQKAE5vIHNpZ25hdHVyZSBoZWFkZXIgaW4gbWVzc2FnZSBidXQgdGhlIG1lc3NhZ2UgYm9keSBpcyAldSBieXRlAE5vIHNpZ25hdHVyZSBoZWFkZXIgaW4gbWVzc2FnZSBidXQgdGhlIG1lc3NhZ2UgYm9keSBpcyAldSBieXRlcwBObyBzdWNoIGludGVyZmFjZQBObyBzdWNoIGludGVyZmFjZSAnJXMnAE5vIHN1Y2ggaW50ZXJmYWNlICclcycgb24gb2JqZWN0IGF0IHBhdGggJXMATm8gc3VjaCBpbnRlcmZhY2UgJ29yZy5mcmVlZGVza3RvcC5EQnVzLlByb3BlcnRpZXMnIG9uIG9iamVjdCBhdCBwYXRoICVzAE5vIHN1Y2gga2V5ICclcycKAE5vIHN1Y2gga2V5ICclcycgaW4gc2NoZW1hICclcycgYXMgc3BlY2lmaWVkIGluIG92ZXJyaWRlIGZpbGUgJyVzJwBObyBzdWNoIG1ldGhvZCAnJXMnAE5vIHN1Y2ggcHJvcGVydHkgJyVzJwBObyBzdWNoIHNjaGVtYSAnJXMnCgBObyBzdXBwb3J0IGZvciBzb3VyY2Utc3BlY2lmaWMgbXVsdGljYXN0AE5vIHRhcmdldCBkaXJlY3RvcnkATm8gdHlwZSBmb3IgY2xhc3MgbmFtZSAlcwBObyB2YWxpZCBhZGRyZXNzZXMgd2VyZSBmb3VuZABObyB2YWxpZCBib29rbWFyayBmaWxlIGZvdW5kIGluIGRhdGEgZGlycwBObyB2b2x1bWUgZm9yIGRldmljZSBmaWxlICVzCgBOb3QgYSByZWd1bGFyIGZpbGUAb3V0IG9mIG1lbW9yeQBOb3QgZW5vdWdoIHNwYWNlIGZvciBzb2NrZXQgYWRkcmVzcwBOb3QgZW5vdWdoIHNwYWNlIGluIGRlc3RpbmF0aW9uAE5vdCBleHBlY3RpbmcgY29udHJvbCBtZXNzYWdlLCBidXQgZ290ICVkAE9iamVjdCBwYXRoIHRvIGVtaXQgc2lnbmFsIG9uAE9iamVjdCBwYXRoIHRvIGludHJvc3BlY3QAT2JqZWN0IHBhdGggdG8gaW52b2tlIG1ldGhvZCBvbgBPYmplY3QgcGF0aCB0byBtb25pdG9yAE9kZCBjaGFyYWN0ZXIgJyVzJywgZXhwZWN0ZWQgYSAnPScgYWZ0ZXIgYXR0cmlidXRlIG5hbWUgJyVzJyBvZiBlbGVtZW50ICclcycAT2RkIGNoYXJhY3RlciAnJXMnLCBleHBlY3RlZCBhICc+JyBjaGFyYWN0ZXIgdG8gZW5kIHRoZSBlbXB0eS1lbGVtZW50IHRhZyAnJXMnAE9kZCBjaGFyYWN0ZXIgJyVzJywgZXhwZWN0ZWQgYSAnPicgb3IgJy8nIGNoYXJhY3RlciB0byBlbmQgdGhlIHN0YXJ0IHRhZyBvZiBlbGVtZW50ICclcycsIG9yIG9wdGlvbmFsbHkgYW4gYXR0cmlidXRlOyBwZXJoYXBzIHlvdSB1c2VkIGFuIGludmFsaWQgY2hhcmFjdGVyIGluIGFuIGF0dHJpYnV0ZSBuYW1lAE9kZCBjaGFyYWN0ZXIgJyVzJywgZXhwZWN0ZWQgYW4gb3BlbiBxdW90ZSBtYXJrIGFmdGVyIHRoZSBlcXVhbHMgc2lnbiB3aGVuIGdpdmluZyB2YWx1ZSBmb3IgYXR0cmlidXRlICclcycgb2YgZWxlbWVudCAnJXMnAE9ubHkgY3JlYXRlIGlmIG5vdCBleGlzdGluZwBPbmx5IG9uZSA8JXM+IGVsZW1lbnQgYWxsb3dlZCBpbnNpZGUgPCVzPgBPbmx5IHByaW50IHByb3BlcnRpZXMAT3BlbiBmaWxlcyB3aXRoIHRoZSBkZWZhdWx0IGFwcGxpY2F0aW9uAE9wZW4gZmlsZXMgd2l0aCB0aGUgZGVmYXVsdCBhcHBsaWNhdGlvbiB0aGF0CmlzIHJlZ2lzdGVyZWQgdG8gaGFuZGxlIGZpbGVzIG9mIHRoaXMgdHlwZS4AT3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQAT3BlcmF0aW9uIHdhcyBjYW5jZWxsZWQAT3B0aW9uYWwgZGVzdGluYXRpb24gZm9yIHNpZ25hbCAodW5pcXVlIG5hbWUpAE9wdGlvbmFsIHBhcmFtZXRlciB0byB0aGUgYWN0aW9uIGludm9jYXRpb24sIGluIEdWYXJpYW50IGZvcm1hdABPcHRpb25hbCByZWxhdGl2ZSBvciBhYnNvbHV0ZSBmaWxlbmFtZXMsIG9yIFVSSXMgdG8gb3BlbgBPcHRpb25zIHNwZWNpZnlpbmcgdGhlIGNvbm5lY3Rpb24gZW5kcG9pbnQAT3B0aW9uczoAT3V0cHV0IHN0cmVhbSBkb2Vzbid0IGltcGxlbWVudCB3cml0ZQBPdmVycmlkZSB0aGUgYXBwbGljYXRpb24ncyBJRABQQVJBTUVURVIAUEFUSABQQ1JFIGxpYnJhcnkgaXMgY29tcGlsZWQgd2l0aCBpbmNvbXBhdGlibGUgb3B0aW9ucwBQQ1JFIGxpYnJhcnkgaXMgY29tcGlsZWQgd2l0aG91dCBVVEY4IHByb3BlcnRpZXMgc3VwcG9ydABQQ1JFIGxpYnJhcnkgaXMgY29tcGlsZWQgd2l0aG91dCBVVEY4IHN1cHBvcnQAUE9TSVggY29sbGF0aW5nIGVsZW1lbnRzIGFyZSBub3Qgc3VwcG9ydGVkAFBPU0lYIG5hbWVkIGNsYXNzZXMgYXJlIHN1cHBvcnRlZCBvbmx5IHdpdGhpbiBhIGNsYXNzAFBhcnNlZCB2YWx1ZSAnJXMnIGZvciB2YXJpYW50IGlzIG5vdCBhIHZhbGlkIEQtQnVzIHNpZ25hdHVyZQBQYXJzZWQgdmFsdWUgJyVzJyBpcyBub3QgYSB2YWxpZCBELUJ1cyBvYmplY3QgcGF0aAAnJXMnIGlzIG5vdCBhIHZhbGlkIG5hbWUgAFBhcnNlZCB2YWx1ZSAnJXMnIGlzIG5vdCBhIHZhbGlkIEQtQnVzIHNpZ25hdHVyZSAoZm9yIGJvZHkpAFBhcnRpYWwgY2hhcmFjdGVyIHNlcXVlbmNlIGF0IGVuZCBvZiBpbnB1dABQYXRoIG11c3QgYmVnaW4gd2l0aCBhIHNsYXNoICgvKQoAUGF0aCBtdXN0IGVuZCB3aXRoIGEgc2xhc2ggKC8pCgBQYXRoIG11c3Qgbm90IGNvbnRhaW4gdHdvIGFkamFjZW50IHNsYXNoZXMgKC8vKQoAUGVybWlzc2lvbnMgb24gZGlyZWN0b3J5ICclcycgYXJlIG1hbGZvcm1lZC4gRXhwZWN0ZWQgbW9kZSAwNzAwLCBnb3QgMCVvAFByZXNlcnZlIGFsbCBhdHRyaWJ1dGVzAFByaW50IFhNTABQcmludCBhZGRyZXNzAFByaW50IGFkZHJlc3MgaW4gc2hlbGwgbW9kZQBQcmludCBmdWxsIFVSSXMAUHJpbnQgaGVscABQcmludCBuZXcgZXRhZyBhdCBlbmQAUHJpbnQgdmVyc2lvbgBQcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uIGFuZCBleGl0AFByaW50IHZlcnNpb24gaW5mb3JtYXRpb24gYW5kIGV4aXQuAFByb21wdCBiZWZvcmUgb3ZlcndyaXRlAFByb3BlcnR5ICclcycgaXMgbm90IHJlYWRhYmxlAFByb3BlcnR5ICclcycgaXMgbm90IHdyaXRhYmxlAFByb3h5IHByb3RvY29sICclcycgaXMgbm90IHN1cHBvcnRlZC4AUHJveHlpbmcgb3ZlciBhIG5vbi1UQ1AgY29ubmVjdGlvbiBpcyBub3Qgc3VwcG9ydGVkLgBRdWVyeSB0aGUgcmFuZ2Ugb2YgdmFsaWQgdmFsdWVzIGZvciBLRVkAUXVvdGVkIHRleHQgZG9lc24ndCBiZWdpbiB3aXRoIGEgcXVvdGF0aW9uIG1hcmsAUmVhZCBmcm9tIHN0YW5kYXJkIGlucHV0IGFuZCBzYXZlAFJlYWQgZnJvbSBzdGFuZGFyZCBpbnB1dCBhbmQgc2F2ZSB0byBERVNULgBSZWNlaXZlZCBpbnZhbGlkIGZkAFJlY29tbWVuZGVkIGFwcGxpY2F0aW9uczoKAFJlZ2lzdGVyZWQgYXBwbGljYXRpb25zOgoAUmVuYW1lIGEgZmlsZQBSZW5hbWUgYSBmaWxlLgBSZW5hbWUgc3VjY2Vzc2Z1bC4gTmV3IHVyaTogJXMKAFJlcG9ydCBtb3ZlcyBhbmQgcmVuYW1lcyBhcyBzaW1wbGUgZGVsZXRlZC9jcmVhdGVkIGV2ZW50cwBSZXF1ZXN0ZWQgc2VlayBiZWZvcmUgdGhlIGJlZ2lubmluZyBvZiB0aGUgc3RyZWFtAFJlcXVlc3RlZCBzZWVrIGJleW9uZCB0aGUgZW5kIG9mIHRoZSBzdHJlYW0AUmVzZXQgS0VZIHRvIGl0cyBkZWZhdWx0IHZhbHVlAFJlc2V0IGFsbCBrZXlzIGluIFNDSEVNQSB0byB0aGVpciBkZWZhdWx0cwBSdW4gYSBkYnVzIHNlcnZpY2UAU0NIRU1BWzpQQVRIXQBTQ0hFTUFbOlBBVEhdIEtFWQBTQ0hFTUFbOlBBVEhdIEtFWSBWQUxVRQBTQ0hFTUFbOlBBVEhdIFtLRVldAFNDSEVNRQBTRUNUSU9OAFNFTGludXggY29udGV4dCBtdXN0IGJlIG5vbi1OVUxMAFNFTGludXggaXMgbm90IGVuYWJsZWQgb24gdGhpcyBzeXN0ZW0AU0lHTkFMIG1lc3NhZ2U6IFBBVEgsIElOVEVSRkFDRSBvciBNRU1CRVIgaGVhZGVyIGZpZWxkIGlzIG1pc3NpbmcAU0lHTkFMIG1lc3NhZ2U6IFRoZSBJTlRFUkZBQ0UgaGVhZGVyIGZpZWxkIGlzIHVzaW5nIHRoZSByZXNlcnZlZCB2YWx1ZSBvcmcuZnJlZWRlc2t0b3AuREJ1cy5Mb2NhbABTSUdOQUwgbWVzc2FnZTogVGhlIFBBVEggaGVhZGVyIGZpZWxkIGlzIHVzaW5nIHRoZSByZXNlcnZlZCB2YWx1ZSAvb3JnL2ZyZWVkZXNrdG9wL0RCdXMvTG9jYWwAU09DS1N2NCBkb2VzIG5vdCBzdXBwb3J0IElQdjYgYWRkcmVzcyAnJXMnAFNPQ0tTdjUgYXV0aGVudGljYXRpb24gZmFpbGVkIGR1ZSB0byB3cm9uZyB1c2VybmFtZSBvciBwYXNzd29yZC4AU09DS1N2NSBjb25uZWN0aW9uIG5vdCBhbGxvd2VkIGJ5IHJ1bGVzZXQuAFNPQ0tTdjUgcHJveHkgZG9lcyBub3Qgc3VwcG9ydCAnY29ubmVjdCcgY29tbWFuZC4AU09DS1N2NSBwcm94eSBkb2VzIG5vdCBzdXBwb3J0IHByb3ZpZGVkIGFkZHJlc3MgdHlwZS4AU09VUkNFAFNjaGVtYSAnJXMnIGlzIG5vdCByZWxvY2F0YWJsZSAocGF0aCBtdXN0IG5vdCBiZSBzcGVjaWZpZWQpCgBTY2hlbWEgJyVzJyBpcyByZWxvY2F0YWJsZSAocGF0aCBtdXN0IGJlIHNwZWNpZmllZCkKAFNlY29uZCB0b2tlbiBvZiBsaW5lICVkIG9mIHRoZSBrZXlyaW5nIGF0ICclcycgd2l0aCBjb250ZW50ICclcycgaXMgbWFsZm9ybWVkAFNlZWsgbm90IHN1cHBvcnRlZCBvbiBiYXNlIHN0cmVhbQBTZWVrIG5vdCBzdXBwb3J0ZWQgb24gc3RyZWFtAFNlc3Npb24gZGJ1cyBub3QgcnVubmluZywgYW5kIGF1dG9sYXVuY2ggZmFpbGVkAFNldCBhIGZpbGUgYXR0cmlidXRlAFNldCBhIGZpbGUgYXR0cmlidXRlIG9mIExPQ0FUSU9OLgBTZXQgdGhlIHZhbHVlIG9mIEtFWSB0byBWQUxVRQBTZXR0YWJsZSBhdHRyaWJ1dGVzOgoAU2V0dGluZyBhdHRyaWJ1dGUgJXMgbm90IHN1cHBvcnRlZABTZXZlcmFsIHBhc3N3b3JkIGVudGVyZWQgaGF2ZSBiZWVuIGluY29ycmVjdCwgYW5kIHlvdXIgYWNjZXNzIHdpbGwgYmUgbG9ja2VkIG91dCBhZnRlciBmdXJ0aGVyIGZhaWx1cmVzLgBTaG93IEdBcHBsaWNhdGlvbiBvcHRpb25zAFNob3cgYWxsIGhlbHAgb3B0aW9ucwBTaG93IGV4dHJhIGluZm9ybWF0aW9uAFNob3cgaGVscCBvcHRpb25zAFNob3cgaGlkZGVuIGZpbGVzAFNob3cgaW5mb3JtYXRpb24gYWJvdXQgbG9jYXRpb25zAFNob3cgaW5mb3JtYXRpb24gYWJvdXQgbG9jYXRpb25zLgBTaG93IHByb2dyZXNzAFNpZ25hbCBhbmQgaW50ZXJmYWNlIG5hbWUAU2lnbmF0dXJlIGhlYWRlciB3aXRoIHNpZ25hdHVyZSAnJXMnIGZvdW5kIGJ1dCBtZXNzYWdlIGJvZHkgaXMgZW1wdHkAU29ja2V0IEkvTyB0aW1lZCBvdXQAU29ja2V0IGlzIGFscmVhZHkgY2xvc2VkAFNvdXJjZSBzdHJlYW0gaXMgYWxyZWFkeSBjbG9zZWQAU3ltYm9saWMgbGlua3Mgbm90IHN1cHBvcnRlZABTdHJlYW0gZG9lc24ndCBzdXBwb3J0IHF1ZXJ5X2luZm8AU3RyZWFtIGhhcyBvdXRzdGFuZGluZyBvcGVyYXRpb24AU3RyZWFtIGlzIGFscmVhZHkgY2xvc2VkAFN5bWJvbGljIGxpbmtzIG5vdCBzdXBwb3J0ZWQAVExTIHN1cHBvcnQgaXMgbm90IGF2YWlsYWJsZQBUWVBFAFRhcmdldCAlcyBpcyBub3QgYSBkaXJlY3RvcnkAVGFyZ2V0IGZpbGUgZXhpc3RzAFRhcmdldCBmaWxlIGlzIGEgZGlyZWN0b3J5AFRhcmdldCBmaWxlIGlzIG5vdCBhIHJlZ3VsYXIgZmlsZQBUZW1wbGF0ZSAnJXMnIGRvZXNuJ3QgY29udGFpbiBYWFhYWFgAVGVtcGxhdGUgJyVzJyBpbnZhbGlkLCBzaG91bGQgbm90IGNvbnRhaW4gYSAnJXMnAFRlbXBvcmFyaWx5IHVuYWJsZSB0byByZXNvbHZlICclcycAVGV4dCBlbmRlZCBiZWZvcmUgbWF0Y2hpbmcgcXVvdGUgd2FzIGZvdW5kIGZvciAlYy4gKFRoZSB0ZXh0IHdhcyAnJXMnKQBUZXh0IGVuZGVkIGp1c3QgYWZ0ZXIgYSAnXCcgY2hhcmFjdGVyLiAoVGhlIHRleHQgd2FzICclcycpAFRleHQgd2FzIGVtcHR5IChvciBjb250YWluZWQgb25seSB3aGl0ZXNwYWNlKQBUaGUgU09DS1N2NSBwcm94eSByZXF1aXJlcyBhbiBhdXRoZW50aWNhdGlvbiBtZXRob2QgdGhhdCBpcyBub3Qgc3VwcG9ydGVkIGJ5IEdMaWIuAFRoZSBTT0NLU3Y1IHByb3h5IHJlcXVpcmVzIGF1dGhlbnRpY2F0aW9uLgBUaGUgU09DS1N2NSBwcm94eSBzZXJ2ZXIgdXNlcyB1bmtub3duIGFkZHJlc3MgdHlwZS4AVGhlIFVSSSAnJXMnIGNvbnRhaW5zIGludmFsaWRseSBlc2NhcGVkIGNoYXJhY3RlcnMAVGhlIFVSSSAnJXMnIGlzIGludmFsaWQAVGhlIFVSSSAnJXMnIGlzIG5vdCBhbiBhYnNvbHV0ZSBVUkkgdXNpbmcgdGhlICJmaWxlIiBzY2hlbWUAVGhlIGFjdGlvbiBuYW1lIHRvIGludm9rZQBUaGUgYXR0cmlidXRlcyB0byBnZXQAVGhlIGNvbW1hbmQgdG8gcHJpbnQgZGV0YWlsZWQgaGVscCBmb3IAVGhlIGNvbm5lY3Rpb24gaXMgY2xvc2VkAFRoZSBkaXJlY3RvcmllcyB3aGVyZSBmaWxlcyBhcmUgdG8gYmUgcmVhZCBmcm9tIChkZWZhdWx0IHRvIGN1cnJlbnQgZGlyZWN0b3J5KQBUaGUgZXRhZyBvZiB0aGUgZmlsZSBiZWluZyBvdmVyd3JpdHRlbgBUaGUgZmlsZSB3YXMgZXh0ZXJuYWxseSBtb2RpZmllZABUaGUgZ2l2ZW4gYWRkcmVzcyBpcyBlbXB0eQBUaGUgaG9zdG5hbWUgb2YgdGhlIFVSSSAnJXMnIGlzIGludmFsaWQAVGhlIGtleSBpcyBub3Qgd3JpdGFibGUKAFRoZSBsb2NhbCBmaWxlIFVSSSAnJXMnIG1heSBub3QgaW5jbHVkZSBhICcjJwBUaGUgcGFzc3dvcmQgZW50ZXJlZCBpcyBpbmNvcnJlY3QuAFRoZSBwYXRobmFtZSAnJXMnIGlzIG5vdCBhbiBhYnNvbHV0ZSBwYXRoAFRoZSBwcm92aWRlZCB2YWx1ZSBpcyBvdXRzaWRlIG9mIHRoZSB2YWxpZCByYW5nZQoAVGhlIHJlc291cmNlIGF0ICclcycgZG9lcyBub3QgZXhpc3QAVGhlIHJlc291cmNlIGF0ICclcycgZmFpbGVkIHRvIGRlY29tcHJlc3MAVGhlIHJlc291cmNlIGF0ICclcycgaXMgbm90IGEgZGlyZWN0b3J5AFRoZSBzZXJ2ZXIgaXMgbm90IGEgU09DS1N2NCBwcm94eSBzZXJ2ZXIuAFRoZSBzZXJ2ZXIgaXMgbm90IGEgU09DS1N2NSBwcm94eSBzZXJ2ZXIuAFRoZSBzdHJpbmcgJyVzJyBpcyBub3QgYSB2YWxpZCBELUJ1cyBHVUlEAFRoZXJlIGlzIG5vIEdDcmVkZW50aWFscyBzdXBwb3J0IGZvciB5b3VyIHBsYXRmb3JtAFRoaXMgZW50aXJlIGZpbGUgaGFzIGJlZW4gaWdub3JlZC4KAFRoaXMgaXMgdGhlIGxhc3QgY2hhbmNlIHRvIGVudGVyIHRoZSBwYXNzd29yZCBjb3JyZWN0bHkgYmVmb3JlIHlvdXIgYWNjZXNzIGlzIGxvY2tlZCBvdXQuAFRpbWVvdXQgaW4gc2Vjb25kcwBUaW1lb3V0IHdhcyByZWFjaGVkAFRvbyBsYXJnZSBjb3VudCB2YWx1ZSBwYXNzZWQgdG8gJXMAVG9vIG1hbnkgYXJndW1lbnRzAFRyYW5zZmVycmVkICVzIG91dCBvZiAlcyAoJXMvcykAVHJhc2ggbm90IHN1cHBvcnRlZABUcnVuY2F0ZSBub3QgYWxsb3dlZCBvbiBpbnB1dCBzdHJlYW0AVHJ1bmNhdGUgbm90IHN1cHBvcnRlZCBvbiBiYXNlIHN0cmVhbQBUcnVuY2F0ZSBub3Qgc3VwcG9ydGVkIG9uIHN0cmVhbQBUeXBlICVzIGRvZXMgbm90IGltcGxlbWVudCBmcm9tX3Rva2VucygpIG9uIHRoZSBHSWNvbiBpbnRlcmZhY2UAVHlwZSAlcyBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIEdJY29uIGludGVyZmFjZQBUeXBlICVzIGlzIG5vdCBjbGFzc2VkAFR5cGUgb2YgbWVzc2FnZSwgJyVzJywgZG9lcyBub3QgbWF0Y2ggZXhwZWN0ZWQgdHlwZSAnJXMnAFR5cGUgb2YgdGhlIGF0dHJpYnV0ZQBVbmFibGUgdG8gY3JlYXRlIHNvY2tldDogJXMAVW5hYmxlIHRvIGNyZWF0ZSB0cmFzaCBkaXIgJXM6ICVzAFVuYWJsZSB0byBjcmVhdGUgdHJhc2hpbmcgaW5mbyBmaWxlOiAlcwBVbmFibGUgdG8gZmluZCBkZWZhdWx0IGxvY2FsIGZpbGUgbW9uaXRvciB0eXBlAFVuYWJsZSB0byBmaW5kIG9yIGNyZWF0ZSB0cmFzaCBkaXJlY3RvcnkAVW5hYmxlIHRvIGZpbmQgdGVybWluYWwgcmVxdWlyZWQgZm9yIGFwcGxpY2F0aW9uAFVuYWJsZSB0byBmaW5kIHRvcGxldmVsIGRpcmVjdG9yeSBmb3IgdHJhc2gAVW5hYmxlIHRvIGdldCBIYXJkd2FyZSBwcm9maWxlOiAlcwBVbmFibGUgdG8gZ2V0IHBlbmRpbmcgZXJyb3I6IABVbmFibGUgdG8gbG9hZCAvdmFyL2xpYi9kYnVzL21hY2hpbmUtaWQgb3IgL2V0Yy9tYWNoaW5lLWlkOiAAVW5hYmxlIHRvIHJlYWQgc29ja2V0IGNyZWRlbnRpYWxzOiAlcwBVbmFibGUgdG8gcmV0cmlldmUgcHJvcGVydHkgJXMuJXMAVW5hYmxlIHRvIHNldCBwcm9wZXJ0eSAlcy4lcwBVbmFibGUgdG8gc2h1dGRvd24gc29ja2V0OiAlcwBVbmFibGUgdG8gdHJhc2ggZmlsZTogJXMAVW5leHBlY3RlZCBhdHRyaWJ1dGUgJyVzJyBmb3IgZWxlbWVudCAnJXMnAFVuZXhwZWN0ZWQgZWFybHkgZW5kLW9mLXN0cmVhbQBVbmV4cGVjdGVkIGVycm9yIGluIGdfaW9fY2hhbm5lbF93aW4zMl9wb2xsKCkgcmVhZGluZyBkYXRhIGZyb20gYSBjaGlsZCBwcm9jZXNzAFVuZXhwZWN0ZWQgZXJyb3IgaW4gc2VsZWN0KCkgcmVhZGluZyBkYXRhIGZyb20gYSBjaGlsZCBwcm9jZXNzICglcykAVW5leHBlY3RlZCBlcnJvciBpbiB3YWl0cGlkKCkgKCVzKQBVbmV4cGVjdGVkIGxhY2sgb2YgY29udGVudCB0cnlpbmcgdG8gKHNhZmVseSkgcmVhZCBhIGxpbmUAVW5leHBlY3RlZCBsYWNrIG9mIGNvbnRlbnQgdHJ5aW5nIHRvIHJlYWQgYSBsaW5lAFVuZXhwZWN0ZWQgcmVwbHkgJWQgZnJvbSBTdGFydFNlcnZpY2VCeU5hbWUoIiVzIikgbWV0aG9kAFVuZXhwZWN0ZWQgdGFnICclcycgaW5zaWRlICclcycAVW5leHBlY3RlZCB0YWcgJyVzJywgdGFnICclcycgZXhwZWN0ZWQAVW5leHBlY3RlZCB0eXBlIG9mIGFuY2lsbGFyeSBkYXRhAFVua25vd24gU09DS1N2NSBwcm94eSBlcnJvci4AVW5rbm93biBidXMgdHlwZSAlZABVbmtub3duIGNvbW1hbmQgJXMKCgBVbmtub3duIGVycm9yIGV4ZWN1dGluZyBjaGlsZCBwcm9jZXNzICIlcyIAVW5rbm93biBlcnJvciBvbiBjb25uZWN0AFVua25vd24gZmFtaWx5IHdhcyBzcGVjaWZpZWQAVW5rbm93biBvcHRpb24gJXMAVW5rbm93biBvciB1bnN1cHBvcnRlZCB0cmFuc3BvcnQgJyVzJyBmb3IgYWRkcmVzcyAnJXMnAFVua25vd24gcHJvY2Vzc2luZyBvcHRpb24gIiVzIgBVbmtub3duIHByb3RvY29sIHdhcyBzcGVjaWZpZWQAVW5rbm93biB0eXBlAFVubWF0Y2hlZCBxdW90YXRpb24gbWFyayBpbiBjb21tYW5kIGxpbmUgb3Igb3RoZXIgc2hlbGwtcXVvdGVkIHRleHQAVW5tb3VudABVbm1vdW50IGFsbCBtb3VudHMgd2l0aCB0aGUgZ2l2ZW4gc2NoZW1lAFVubmFtZWQAVW5zdXBwb3J0ZWQgZmxhZ3MgZW5jb3VudGVyZWQgd2hlbiBjb25zdHJ1Y3RpbmcgYSBjbGllbnQtc2lkZSBjb25uZWN0aW9uAFVuc3VwcG9ydGVkIGtleSAnJXMnIGluIGFkZHJlc3MgZW50cnkgJyVzJwBVbnN1cHBvcnRlZCBzb2NrZXQgYWRkcmVzcwBVc2FnZToAVXNhZ2U6CgBVc2FnZToKICBncmVzb3VyY2UgJXMlcyVzICVzCgolcwoKAFVzYWdlOgogIGdyZXNvdXJjZSBbLS1zZWN0aW9uIFNFQ1RJT05dIENPTU1BTkQgW0FSR1MuLi5dCgpDb21tYW5kczoKICBoZWxwICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBpbmZvcm1hdGlvbgogIHNlY3Rpb25zICAgICAgICAgICAgICAgICAgTGlzdCByZXNvdXJjZSBzZWN0aW9ucwogIGxpc3QgICAgICAgICAgICAgICAgICAgICAgTGlzdCByZXNvdXJjZXMKICBkZXRhaWxzICAgICAgICAgICAgICAgICAgIExpc3QgcmVzb3VyY2VzIHdpdGggZGV0YWlscwogIGV4dHJhY3QgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBhIHJlc291cmNlCgpVc2UgJ2dyZXNvdXJjZSBoZWxwIENPTU1BTkQnIHRvIGdldCBkZXRhaWxlZCBoZWxwLgoKAFVzYWdlOgogIGdzZXR0aW5ncyAtLXZlcnNpb24KICBnc2V0dGluZ3MgWy0tc2NoZW1hZGlyIFNDSEVNQURJUl0gQ09NTUFORCBbQVJHUy4uLl0KCkNvbW1hbmRzOgogIGhlbHAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGluZm9ybWF0aW9uCiAgbGlzdC1zY2hlbWFzICAgICAgICAgICAgICBMaXN0IGluc3RhbGxlZCBzY2hlbWFzCiAgbGlzdC1yZWxvY2F0YWJsZS1zY2hlbWFzICBMaXN0IHJlbG9jYXRhYmxlIHNjaGVtYXMKICBsaXN0LWtleXMgICAgICAgICAgICAgICAgIExpc3Qga2V5cyBpbiBhIHNjaGVtYQogIGxpc3QtY2hpbGRyZW4gICAgICAgICAgICAgTGlzdCBjaGlsZHJlbiBvZiBhIHNjaGVtYQogIGxpc3QtcmVjdXJzaXZlbHkgICAgICAgICAgTGlzdCBrZXlzIGFuZCB2YWx1ZXMsIHJlY3Vyc2l2ZWx5CiAgcmFuZ2UgICAgICAgICAgICAgICAgICAgICBRdWVyaWVzIHRoZSByYW5nZSBvZiBhIGtleQogIGdldCAgICAgICAgICAgICAgICAgICAgICAgR2V0IHRoZSB2YWx1ZSBvZiBhIGtleQogIHNldCAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSB2YWx1ZSBvZiBhIGtleQogIHJlc2V0ICAgICAgICAgICAgICAgICAgICAgUmVzZXQgdGhlIHZhbHVlIG9mIGEga2V5CiAgcmVzZXQtcmVjdXJzaXZlbHkgICAgICAgICBSZXNldCBhbGwgdmFsdWVzIGluIGEgZ2l2ZW4gc2NoZW1hCiAgd3JpdGFibGUgICAgICAgICAgICAgICAgICBDaGVjayBpZiBhIGtleSBpcyB3cml0YWJsZQogIG1vbml0b3IgICAgICAgICAgICAgICAgICAgV2F0Y2ggZm9yIGNoYW5nZXMKClVzZSAnZ3NldHRpbmdzIGhlbHAgQ09NTUFORCcgdG8gZ2V0IGRldGFpbGVkIGhlbHAuCgoAVXNhZ2U6CiAgZ3NldHRpbmdzIFstLXNjaGVtYWRpciBTQ0hFTUFESVJdICVzICVzCgolcwoKAFVzZSAlcyB0byBnZXQgZGV0YWlsZWQgaGVscC4KAFVzZSAnJXMgaGVscCBDT01NQU5EJyB0byBnZXQgZGV0YWlsZWQgaGVscC4KCgBVc2UgYSBsb25nIGxpc3RpbmcgZm9ybWF0AFVzZSBhbiBhbm9ueW1vdXMgdXNlciB3aGVuIGF1dGhlbnRpY2F0aW5nAFVzZXJuYW1lIGlzIHRvbyBsb25nIGZvciBTT0NLU3Y0IHByb3RvY29sAFVzZXJuYW1lIG9yIHBhc3N3b3JkIGlzIHRvbyBsb25nIGZvciBTT0NLU3Y1IHByb3RvY29sLgBWQUxVRQBWYWxpZCBrZXkgZmlsZSBjb3VsZCBub3QgYmUgZm91bmQgaW4gc2VhcmNoIGRpcnMAVmFsdWUgJyVzJyBjYW5ub3QgYmUgaW50ZXJwcmV0ZWQgYXMgYSBib29sZWFuLgBWYWx1ZSAnJXMnIGNhbm5vdCBiZSBpbnRlcnByZXRlZCBhcyBhIGZsb2F0IG51bWJlci4AVmFsdWUgJyVzJyBjYW5ub3QgYmUgaW50ZXJwcmV0ZWQgYXMgYSBudW1iZXIuAFZhbHVlIG5vdCBzcGVjaWZpZWQAV2FpdGluZyBmb3Igc29ja2V0IGNvbmRpdGlvbjogJXMAV2FudGVkIHRvIHJlYWQgJWx1IGJ5dGUgYnV0IG9ubHkgZ290ICVsdQBXYW50ZWQgdG8gcmVhZCAlbHUgYnl0ZXMgYnV0IG9ubHkgZ290ICVsdQBXYXJuaW5nOiBBY2NvcmRpbmcgdG8gaW50cm9zcGVjdGlvbiBkYXRhLCBpbnRlcmZhY2UgJyVzJyBkb2VzIG5vdCBleGlzdAoAV2FybmluZzogQWNjb3JkaW5nIHRvIGludHJvc3BlY3Rpb24gZGF0YSwgbWV0aG9kICclcycgZG9lcyBub3QgZXhpc3Qgb24gaW50ZXJmYWNlICclcycKAFdhdGNoIGZvciBtb3VudCBldmVudHMAV2hlbiBjcmVhdGluZywgcmVzdHJpY3QgYWNjZXNzIHRvIHRoZSBjdXJyZW50IHVzZXIAV2hlbiByZXBsYWNpbmcsIHJlcGxhY2UgYXMgaWYgdGhlIGRlc3RpbmF0aW9uIGRpZCBub3QgZXhpc3QAV3JpdGFibGUgYXR0cmlidXRlIG5hbWVzcGFjZXM6CgBXcm9uZyBhcmdzCgBXcm9uZyBudW1iZXIgb2YgdG9rZW5zICglZCkAWW91IHNob3VsZCBnaXZlIGV4YWN0bHkgb25lIGRpcmVjdG9yeSBuYW1lCgBZb3Ugc2hvdWxkIGdpdmUgZXhhY3RseSBvbmUgZmlsZSBuYW1lCgBbQVJHUy4uLl0AW0NPTU1BTkRdAFtPUFRJT04uLi5dAFtQQVRIXQBbU0NIRU1BWzpQQVRIXV0AXCBhdCBlbmQgb2YgcGF0dGVybgBcQyBub3QgYWxsb3dlZCBpbiBsb29rYmVoaW5kIGFzc2VydGlvbgBcTiBpcyBub3Qgc3VwcG9ydGVkIGluIGEgY2xhc3MAXGMgYXQgZW5kIG9mIHBhdHRlcm4AXGMgbXVzdCBiZSBmb2xsb3dlZCBieSBhbiBBU0NJSSBjaGFyYWN0ZXIAXGcgaXMgbm90IGZvbGxvd2VkIGJ5IGEgYnJhY2VkLCBhbmdsZS1icmFja2V0ZWQsIG9yIHF1b3RlZCBuYW1lIG9yIG51bWJlciwgb3IgYnkgYSBwbGFpbiBudW1iZXIAXGsgaXMgbm90IGZvbGxvd2VkIGJ5IGEgYnJhY2VkLCBhbmdsZS1icmFja2V0ZWQsIG9yIHF1b3RlZCBuYW1lAF0gaXMgYW4gaW52YWxpZCBkYXRhIGNoYXJhY3RlciBpbiBKYXZhU2NyaXB0IGNvbXBhdGliaWxpdHkgbW9kZQBhIG51bWJlcmVkIHJlZmVyZW5jZSBtdXN0IG5vdCBiZSB6ZXJvAGEgcGF0aCwgaWYgZ2l2ZW4sIG11c3QgYmVnaW4gYW5kIGVuZCB3aXRoIGEgc2xhc2gA15DXpNeoANeQ15XXkgDXk9em154A16TXkdeoANeZ16DXlQDXmdeV15wA15nXldegANee16jXpQDXnteQ15kA16DXldeRANeQ15XXpwDXodek15gA15XXswDXkdezANep17MA15DXswDXlADXktezANeT17MAYWN0aW9uIG5hbWUgbXVzdCBiZSBnaXZlbiBhZnRlciBhcHBsaWNhdGlvbiBpZAoAYWN0aW9ucyBhY2NlcHQgYSBtYXhpbXVtIG9mIG9uZSBwYXJhbWV0ZXIKAGFuIGFyZ3VtZW50IGlzIG5vdCBhbGxvd2VkIGZvciAoKkFDQ0VQVCksICgqRkFJTCksIG9yICgqQ09NTUlUKQBhc3NlcnRpb24gZXhwZWN0ZWQgYWZ0ZXIgKD8oAGF0dHJpYnV0ZXM6CgBiYWNrIHJlZmVyZW5jZXMgYXMgY29uZGl0aW9ucyBhcmUgbm90IHN1cHBvcnRlZCBmb3IgcGFydGlhbCBtYXRjaGluZwBiYWNrdHJhY2tpbmcgbGltaXQgcmVhY2hlZABiYWQgb2Zmc2V0AGNhbm5vdCBhZGQga2V5cyB0byBhICdsaXN0LW9mJyBzY2hlbWEAY2hhcmFjdGVyIHZhbHVlIGluIFx1Li4uLiBzZXF1ZW5jZSBpcyB0b28gbGFyZ2UAY2hhcmFjdGVyIHZhbHVlIGluIFx4ey4uLn0gc2VxdWVuY2UgaXMgdG9vIGxhcmdlAGNvZGUgb3ZlcmZsb3cAY29uZGl0aW9uYWwgZ3JvdXAgY29udGFpbnMgbW9yZSB0aGFuIHR3byBicmFuY2hlcwBjb3JydXB0ZWQgb2JqZWN0AGNvdWxkIG5vdCBnZXQgbG9jYWwgYWRkcmVzczogJXMAY291bGQgbm90IGdldCByZW1vdGUgYWRkcmVzczogJXMAY291bGQgbm90IGxpc3RlbjogJXMAY3JlYXRpbmcgR1NvY2tldCBmcm9tIGZkOiAlcwBkaWZmZXJlbnQgbmFtZXMgZm9yIHN1YnBhdHRlcm5zIG9mIHRoZSBzYW1lIG51bWJlciBhcmUgbm90IGFsbG93ZWQAZGlnaXQgZXhwZWN0ZWQAZGlnaXQgZXhwZWN0ZWQgYWZ0ZXIgKD8rAGRpc3BsYXkgbmFtZTogJXMKAGRvaW5nIG5vdGhpbmcuCgBkcml2ZSBkb2Vzbid0IGltcGxlbWVudCBlamVjdABkcml2ZSBkb2Vzbid0IGltcGxlbWVudCBlamVjdCBvciBlamVjdF93aXRoX29wZXJhdGlvbgBkcml2ZSBkb2Vzbid0IGltcGxlbWVudCBwb2xsaW5nIGZvciBtZWRpYQBkcml2ZSBkb2Vzbid0IGltcGxlbWVudCBzdGFydABkcml2ZSBkb2Vzbid0IGltcGxlbWVudCBzdG9wAGVkaXQgbmFtZTogJXMKAGVtcHR5IG5hbWVzIGFyZSBub3QgcGVybWl0dGVkAGVycm9yIHBhcnNpbmcgYWN0aW9uIHBhcmFtZXRlcjogJXMKAGVycm9yIHBhcnNpbmcga2V5ICclcycgaW4gc2NoZW1hICclcycgYXMgc3BlY2lmaWVkIGluIG92ZXJyaWRlIGZpbGUgJyVzJzogJXMuAGVycm9yIHNlbmRpbmcgJXMgbWVzc2FnZSB0byBhcHBsaWNhdGlvbjogJXMKAGVzY2FwZXMgXEwsIFxsLCBcTntuYW1lfSwgXFUsIGFuZCBcdSBhcmUgbm90IHN1cHBvcnRlZABleGFjdGx5IG9uZSBvZiAndHlwZScsICdlbnVtJyBvciAnZmxhZ3MnIG11c3QgYmUgc3BlY2lmaWVkIGFzIGFuIGF0dHJpYnV0ZSB0byA8a2V5PgBmYWlsZWQgdG8gZ2V0IG1lbW9yeQDXkNek16jXmdecANeQ15XXkteV16HXmADXk9em157XkdeoANek15HXqNeV15DXqADXmdeg15XXkNeoANeZ15XXnNeZANeZ15XXoNeZANee16jXpQDXnteQ15kA16DXldeR157XkdeoANeQ15XXp9eY15XXkdeoANeh16TXmNee15HXqADXmdeV150g16nXmdep15kA15nXldedINep16DXmQDXqdeR16oA15nXldedINeo15DXqdeV158A15nXldedINeX157Xmdep15kA15nXldedINep15zXmdep15kA15nXldedINeo15HXmdei15kAZ19zb2NrZXRfZ2V0X2NyZWRlbnRpYWxzIG5vdCBpbXBsZW1lbnRlZCBmb3IgdGhpcyBPUwBnaW8gY2F0IHdvcmtzIGp1c3QgbGlrZSB0aGUgdHJhZGl0aW9uYWwgY2F0IHV0aWxpdHksIGJ1dCB1c2luZyBHSU8KbG9jYXRpb25zIGluc3RlYWQgb2YgbG9jYWwgZmlsZXM6IGZvciBleGFtcGxlLCB5b3UgY2FuIHVzZSBzb21ldGhpbmcKbGlrZSBzbWI6Ly9zZXJ2ZXIvcmVzb3VyY2UvZmlsZS50eHQgYXMgbG9jYXRpb24uAGdpbyBjb3B5IGlzIHNpbWlsYXIgdG8gdGhlIHRyYWRpdGlvbmFsIGNwIHV0aWxpdHksIGJ1dCB1c2luZyBHSU8KbG9jYXRpb25zIGluc3RlYWQgb2YgbG9jYWwgZmlsZXM6IGZvciBleGFtcGxlLCB5b3UgY2FuIHVzZSBzb21ldGhpbmcKbGlrZSBzbWI6Ly9zZXJ2ZXIvcmVzb3VyY2UvZmlsZS50eHQgYXMgbG9jYXRpb24uAGdpbyBpbmZvIGlzIHNpbWlsYXIgdG8gdGhlIHRyYWRpdGlvbmFsIGxzIHV0aWxpdHksIGJ1dCB1c2luZyBHSU8KbG9jYXRpb25zIGluc3RlYWQgb2YgbG9jYWwgZmlsZXM6IGZvciBleGFtcGxlLCB5b3UgY2FuIHVzZSBzb21ldGhpbmcKbGlrZSBzbWI6Ly9zZXJ2ZXIvcmVzb3VyY2UvZmlsZS50eHQgYXMgbG9jYXRpb24uIEZpbGUgYXR0cmlidXRlcyBjYW4KYmUgc3BlY2lmaWVkIHdpdGggdGhlaXIgR0lPIG5hbWUsIGUuZy4gc3RhbmRhcmQ6Omljb24sIG9yIGp1c3QgYnkKbmFtZXNwYWNlLCBlLmcuIHVuaXgsIG9yIGJ5ICcqJywgd2hpY2ggbWF0Y2hlcyBhbGwgYXR0cmlidXRlcwBnaW8gbGlzdCBpcyBzaW1pbGFyIHRvIHRoZSB0cmFkaXRpb25hbCBscyB1dGlsaXR5LCBidXQgdXNpbmcgR0lPCmxvY2F0aW9ucyBpbnN0ZWFkIG9mIGxvY2FsIGZpbGVzOiBmb3IgZXhhbXBsZSwgeW91IGNhbiB1c2Ugc29tZXRoaW5nCmxpa2Ugc21iOi8vc2VydmVyL3Jlc291cmNlL2ZpbGUudHh0IGFzIGxvY2F0aW9uLiBGaWxlIGF0dHJpYnV0ZXMgY2FuCmJlIHNwZWNpZmllZCB3aXRoIHRoZWlyIEdJTyBuYW1lLCBlLmcuIHN0YW5kYXJkOjppY29uAGdpbyBta2RpciBpcyBzaW1pbGFyIHRvIHRoZSB0cmFkaXRpb25hbCBta2RpciB1dGlsaXR5LCBidXQgdXNpbmcgR0lPCmxvY2F0aW9ucyBpbnN0ZWFkIG9mIGxvY2FsIGZpbGVzOiBmb3IgZXhhbXBsZSwgeW91IGNhbiB1c2Ugc29tZXRoaW5nCmxpa2Ugc21iOi8vc2VydmVyL3Jlc291cmNlL215ZGlyIGFzIGxvY2F0aW9uLgBnaW8gbW92ZSBpcyBzaW1pbGFyIHRvIHRoZSB0cmFkaXRpb25hbCBtdiB1dGlsaXR5LCBidXQgdXNpbmcgR0lPCmxvY2F0aW9ucyBpbnN0ZWFkIG9mIGxvY2FsIGZpbGVzOiBmb3IgZXhhbXBsZSwgeW91IGNhbiB1c2Ugc29tZXRoaW5nCmxpa2Ugc21iOi8vc2VydmVyL3Jlc291cmNlL2ZpbGUudHh0IGFzIGxvY2F0aW9uAGhleGFkZWNpbWFsIGRpZ2l0IGV4cGVjdGVkAGhleGFkZWNpbWFsIGRpZ2l0IG9yICd9JyBleHBlY3RlZABoaWRkZW4KAGlsbGVnYWwgc3ltYm9saWMgcmVmZXJlbmNlAGluY29uc2lzdGVudCBORVdMSU5FIG9wdGlvbnMAaW50ZXJuYWwgZXJyb3IAaW50ZXJuYWwgZXJyb3Igb3IgY29ycnVwdGVkIG9iamVjdABpbnZhbGlkIEdWYXJpYW50IHR5cGUgc3RyaW5nICclcycAaW52YWxpZCBhY3Rpb24gbmFtZTogJyVzJwphY3Rpb24gbmFtZXMgbXVzdCBjb25zaXN0IG9mIG9ubHkgYWxwaGFudW1lcmljcywgJy0nIGFuZCAnLicKAGludmFsaWQgYXBwbGljYXRpb24gaWQ6ICclcycKAGludmFsaWQgY29tYmluYXRpb24gb2YgbmV3bGluZSBmbGFncwBpbnZhbGlkIGNvbmRpdGlvbiAoPygwKQBpbnZhbGlkIGVzY2FwZSBzZXF1ZW5jZSBpbiBjaGFyYWN0ZXIgY2xhc3MAaW52YWxpZCBuYW1lICclcyc6IGludmFsaWQgY2hhcmFjdGVyICclYyc7IG9ubHkgbG93ZXJjYXNlIGxldHRlcnMsIG51bWJlcnMgYW5kIGh5cGhlbiAoJy0nKSBhcmUgcGVybWl0dGVkLgBpbnZhbGlkIG5hbWUgJyVzJzogbWF4aW11bSBsZW5ndGggaXMgMTAyNABpbnZhbGlkIG5hbWUgJyVzJzogbmFtZXMgbXVzdCBiZWdpbiB3aXRoIGEgbG93ZXJjYXNlIGxldHRlcgBpbnZhbGlkIG5hbWUgJyVzJzogdGhlIGxhc3QgY2hhcmFjdGVyIG1heSBub3QgYmUgYSBoeXBoZW4gKCctJykuAGludmFsaWQgbmFtZSAnJXMnOiB0d28gc3VjY2Vzc2l2ZSBoeXBoZW5zICgnLS0nKSBhcmUgbm90IHBlcm1pdHRlZC4AbGlzdC1hY3Rpb25zIGNvbW1hbmQgdGFrZXMgb25seSB0aGUgYXBwbGljYXRpb24gaWQAbG9va2JlaGluZCBhc3NlcnRpb24gaXMgbm90IGZpeGVkIGxlbmd0aABtYWxmb3JtZWQgXFAgb3IgXHAgc2VxdWVuY2UAbWFsZm9ybWVkIG51bWJlciBvciBuYW1lIGFmdGVyICg/KABtaXNzaW5nICc8JyBpbiBzeW1ib2xpYyByZWZlcmVuY2UAbWlzc2luZyApIGFmdGVyIGNvbW1lbnQAbWlzc2luZyBzdWJwYXR0ZXJuIG5hbWUgYWZ0ZXIgKD8mAG1pc3NpbmcgdGVybWluYXRpbmcgKQBtaXNzaW5nIHRlcm1pbmF0aW5nIF0gZm9yIGNoYXJhY3RlciBjbGFzcwBtaXNzaW5nIHRlcm1pbmF0b3IgaW4gc3VicGF0dGVybiBuYW1lAG1vdW50IGRvZXNuJ3QgaW1wbGVtZW50ICJlamVjdCIAbW91bnQgZG9lc24ndCBpbXBsZW1lbnQgImVqZWN0IiBvciAiZWplY3Rfd2l0aF9vcGVyYXRpb24iAG1vdW50IGRvZXNuJ3QgaW1wbGVtZW50ICJyZW1vdW50IgBtb3VudCBkb2Vzbid0IGltcGxlbWVudCAidW5tb3VudCIAbW91bnQgZG9lc24ndCBpbXBsZW1lbnQgInVubW91bnQiIG9yICJ1bm1vdW50X3dpdGhfb3BlcmF0aW9uIgBtb3VudCBkb2Vzbid0IGltcGxlbWVudCBjb250ZW50IHR5cGUgZ3Vlc3NpbmcAbW91bnQgZG9lc24ndCBpbXBsZW1lbnQgc3luY2hyb25vdXMgY29udGVudCB0eXBlIGd1ZXNzaW5nAG5hbWUgaXMgdG9vIGxvbmcgaW4gKCpNQVJLKSwgKCpQUlVORSksICgqU0tJUCksIG9yICgqVEhFTikAbmFtZSBvZiB0aGUgb3V0cHV0IGZpbGUAbmFtZTogJXMKAG5vIDxrZXkgbmFtZT0nJXMnPiB0byBvdmVycmlkZQBub3RoaW5nIHRvIHJlcGVhdABudW1iZXIgaXMgdG9vIGJpZwBudW1iZXIgdG9vIGJpZyBpbiB7fSBxdWFudGlmaWVyAG51bWJlcnMgb3V0IG9mIG9yZGVyIGluIHt9IHF1YW50aWZpZXIAb2N0YWwgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIFwzNzcAb3V0IG9mIG1lbW9yeQBvdmVycmFuIGNvbXBpbGluZyB3b3Jrc3BhY2UAb3ZlcnJpZGUgZm9yIGtleSAnJXMnIGluIHNjaGVtYSAnJXMnIGluIG92ZXJyaWRlIGZpbGUgJyVzJyBpcyBub3QgaW4gdGhlIGxpc3Qgb2YgdmFsaWQgY2hvaWNlcwBvdmVycmlkZSBmb3Iga2V5ICclcycgaW4gc2NoZW1hICclcycgaW4gb3ZlcnJpZGUgZmlsZSAnJXMnIGlzIG91dHNpZGUgdGhlIHJhbmdlIGdpdmVuIGluIHRoZSBzY2hlbWEAcHJldmlvdXNseS1jaGVja2VkIHJlZmVyZW5jZWQgc3VicGF0dGVybiBub3QgZm91bmQAcmFuZ2Ugb3V0IG9mIG9yZGVyIGluIGNoYXJhY3RlciBjbGFzcwByZWN1cnNpb24gbGltaXQgcmVhY2hlZAByZWN1cnNpb24gbG9vcAByZWN1cnNpdmUgY2FsbCBjb3VsZCBsb29wIGluZGVmaW5pdGVseQByZWZlcmVuY2UgdG8gbm9uLWV4aXN0ZW50IHN1YnBhdHRlcm4AcmVndWxhciBleHByZXNzaW9uIGlzIHRvbyBsYXJnZQByZW1vdmVkIGV4aXN0aW5nIG91dHB1dCBmaWxlLgoAc2hvcnQgdXRmOABzaXplOiAAc3RyYXkgZmluYWwgJ1wnAHN1YnBhdHRlcm4gbmFtZSBpcyB0b28gbG9uZyAobWF4aW11bSAzMiBjaGFyYWN0ZXJzKQBzeW1saW5rIG11c3QgYmUgbm9uLU5VTEwAdGV4dCBtYXkgbm90IGFwcGVhciBpbnNpZGUgPCVzPgB0aGUgcGF0aCBvZiBhIGxpc3QgbXVzdCBlbmQgd2l0aCAnOi8nAHRoZSBwYXR0ZXJuIGNvbnRhaW5zIGl0ZW1zIG5vdCBzdXBwb3J0ZWQgZm9yIHBhcnRpYWwgbWF0Y2hpbmcAdG9vIG1hbnkgZm9yd2FyZCByZWZlcmVuY2VzAHRvbyBtYW55IG5hbWVkIHN1YnBhdHRlcm5zIChtYXhpbXVtIDEwLDAwMCkAdHdvIG5hbWVkIHN1YnBhdHRlcm5zIGhhdmUgdGhlIHNhbWUgbmFtZQB0eXBlIGlzIElOVkFMSUQAdHlwZTogJXMKAHVuYWJsZSB0byBjb25uZWN0IHRvIEQtQnVzOiAlcwoAdW5hYmxlIHRvIGZpbmQgZGVza3RvcCBmaWxlIGZvciBhcHBsaWNhdGlvbiAlcwoAdW5leHBlY3RlZCByZXBlYXQAdW5maW5pc2hlZCBzeW1ib2xpYyByZWZlcmVuY2UAdW5rbm93biBQT1NJWCBjbGFzcyBuYW1lAHVua25vd24gZXJyb3IAdW5rbm93biBlc2NhcGUgc2VxdWVuY2UAdW5rbm93biBwcm9wZXJ0eSBuYW1lIGFmdGVyIFxQIG9yIFxwAHVucmVjb2duaXNlZCBjb21tYW5kOiAlcwoKAHVucmVjb2duaXplZCBjaGFyYWN0ZXIgYWZ0ZXIgKD8gb3IgKD8tAHVucmVjb2duaXplZCBjaGFyYWN0ZXIgYWZ0ZXIgKD88AHVucmVjb2duaXplZCBjaGFyYWN0ZXIgYWZ0ZXIgKD9QAHVucmVjb2duaXplZCBjaGFyYWN0ZXIgZm9sbG93aW5nIFwAdXJpOiAlcwoAdm9sdW1lIGRvZXNuJ3QgaW1wbGVtZW50IGVqZWN0AHZvbHVtZSBkb2Vzbid0IGltcGxlbWVudCBlamVjdCBvciBlamVjdF93aXRoX29wZXJhdGlvbgB2b2x1bWUgZG9lc24ndCBpbXBsZW1lbnQgbW91bnQAd2hlcmUgdG8gc3RvcmUgdGhlIGdzY2hlbWFzLmNvbXBpbGVkIGZpbGUAemVyby1sZW5ndGggc3ltYm9saWMgcmVmZXJlbmNlAA==