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aWJsZSBkZWZhdWx0cy4KCiAgICAgICAgSWYgc2tpcGtleXMgaXMgZmFsc2UsIHRoZW4gaXQgaXMgYSBUeXBlRXJyb3IgdG8gYXR0ZW1wdAogICAgICAgIGVuY29kaW5nIG9mIGtleXMgdGhhdCBhcmUgbm90IHN0ciwgaW50LCBsb25nLCBmbG9hdCBvciBOb25lLiAgSWYKICAgICAgICBza2lwa2V5cyBpcyBUcnVlLCBzdWNoIGl0ZW1zIGFyZSBzaW1wbHkgc2tpcHBlZC4KCiAgICAgICAgSWYgKmVuc3VyZV9hc2NpaSogaXMgdHJ1ZSAodGhlIGRlZmF1bHQpLCBhbGwgbm9uLUFTQ0lJCiAgICAgICAgY2hhcmFjdGVycyBpbiB0aGUgb3V0cHV0IGFyZSBlc2NhcGVkIHdpdGggXHVYWFhYIHNlcXVlbmNlcywKICAgICAgICBhbmQgdGhlIHJlc3VsdHMgYXJlIHN0ciBpbnN0YW5jZXMgY29uc2lzdGluZyBvZiBBU0NJSQogICAgICAgIGNoYXJhY3RlcnMgb25seS4gIElmIGVuc3VyZV9hc2NpaSBpcyBGYWxzZSwgYSByZXN1bHQgbWF5IGJlIGEKICAgICAgICB1bmljb2RlIGluc3RhbmNlLiAgVGhpcyB1c3VhbGx5IGhhcHBlbnMgaWYgdGhlIGlucHV0IGNvbnRhaW5zCiAgICAgICAgdW5pY29kZSBzdHJpbmdzIG9yIHRoZSAqZW5jb2RpbmcqIHBhcmFtZXRlciBpcyB1c2VkLgoKICAgICAgICBJZiBjaGVja19jaXJjdWxhciBpcyB0cnVlLCB0aGVuIGxpc3RzLCBkaWN0cywgYW5kIGN1c3RvbSBlbmNvZGVkCiAgICAgICAgb2JqZWN0cyB3aWxsIGJlIGNoZWNrZWQgZm9yIGNpcmN1bGFyIHJlZmVyZW5jZXMgZHVyaW5nIGVuY29kaW5nIHRvCiAgICAgICAgcHJldmVudCBhbiBpbmZpbml0ZSByZWN1cnNpb24gKHdoaWNoIHdvdWxkIGNhdXNlIGFuIE92ZXJmbG93RXJyb3IpLgogICAgICAgIE90aGVyd2lzZSwgbm8gc3VjaCBjaGVjayB0YWtlcyBwbGFjZS4KCiAgICAgICAgSWYgYWxsb3dfbmFuIGlzIHRydWUsIHRoZW4gTmFOLCBJbmZpbml0eSwgYW5kIC1JbmZpbml0eSB3aWxsIGJlCiAgICAgICAgZW5jb2RlZCBhcyBzdWNoLiAgVGhpcyBiZWhhdmlvciBpcyBub3QgSlNPTiBzcGVjaWZpY2F0aW9uIGNvbXBsaWFudCwKICAgICAgICBidXQgaXMgY29uc2lzdGVudCB3aXRoIG1vc3QgSmF2YVNjcmlwdCBiYXNlZCBlbmNvZGVycyBhbmQgZGVjb2RlcnMuCiAgICAgICAgT3RoZXJ3aXNlLCBpdCB3aWxsIGJlIGEgVmFsdWVFcnJvciB0byBlbmNvZGUgc3VjaCBmbG9hdHMuCgogICAgICAgIElmIHNvcnRfa2V5cyBpcyB0cnVlLCB0aGVuIHRoZSBvdXRwdXQgb2YgZGljdGlvbmFyaWVzIHdpbGwgYmUKICAgICAgICBzb3J0ZWQgYnkga2V5OyB0aGlzIGlzIHVzZWZ1bCBmb3IgcmVncmVzc2lvbiB0ZXN0cyB0byBlbnN1cmUKICAgICAgICB0aGF0IEpTT04gc2VyaWFsaXphdGlvbnMgY2FuIGJlIGNvbXBhcmVkIG9uIGEgZGF5LXRvLWRheSBiYXNpcy4KCiAgICAgICAgSWYgaW5kZW50IGlzIGEgbm9uLW5lZ2F0aXZlIGludGVnZXIsIHRoZW4gSlNPTiBhcnJheQogICAgICAgIGVsZW1lbnRzIGFuZCBvYmplY3QgbWVtYmVycyB3aWxsIGJlIHByZXR0eS1wcmludGVkIHdpdGggdGhhdAogICAgICAgIGluZGVudCBsZXZlbC4gIEFuIGluZGVudCBsZXZlbCBvZiAwIHdpbGwgb25seSBpbnNlcnQgbmV3bGluZXMuCiAgICAgICAgTm9uZSBpcyB0aGUgbW9zdCBjb21wYWN0IHJlcHJlc2VudGF0aW9uLiAgU2luY2UgdGhlIGRlZmF1bHQKICAgICAgICBpdGVtIHNlcGFyYXRvciBpcyAnLCAnLCAgdGhlIG91dHB1dCBtaWdodCBpbmNsdWRlIHRyYWlsaW5nCiAgICAgICAgd2hpdGVzcGFjZSB3aGVuIGluZGVudCBpcyBzcGVjaWZpZWQuICBZb3UgY2FuIHVzZQogICAgICAgIHNlcGFyYXRvcnM9KCcsJywgJzogJykgdG8gYXZvaWQgdGhpcy4KCiAgICAgICAgSWYgc3BlY2lmaWVkLCBzZXBhcmF0b3JzIHNob3VsZCBiZSBhIChpdGVtX3NlcGFyYXRvciwga2V5X3NlcGFyYXRvcikKICAgICAgICB0dXBsZS4gIFRoZSBkZWZhdWx0IGlzICgnLCAnLCAnOiAnKS4gIFRvIGdldCB0aGUgbW9zdCBjb21wYWN0IEpTT04KICAgICAgICByZXByZXNlbnRhdGlvbiB5b3Ugc2hvdWxkIHNwZWNpZnkgKCcsJywgJzonKSB0byBlbGltaW5hdGUgd2hpdGVzcGFjZS4KCiAgICAgICAgSWYgc3BlY2lmaWVkLCBkZWZhdWx0IGlzIGEgZnVuY3Rpb24gdGhhdCBnZXRzIGNhbGxlZCBmb3Igb2JqZWN0cwogICAgICAgIHRoYXQgY2FuJ3Qgb3RoZXJ3aXNlIGJlIHNlcmlhbGl6ZWQuICBJdCBzaG91bGQgcmV0dXJuIGEgSlNPTiBlbmNvZGFibGUKICAgICAgICB2ZXJzaW9uIG9mIHRoZSBvYmplY3Qgb3IgcmFpc2UgYSBgYFR5cGVFcnJvcmBgLgoKICAgICAgICBJZiBlbmNvZGluZyBpcyBub3QgTm9uZSwgdGhlbiBhbGwgaW5wdXQgc3RyaW5ncyB3aWxsIGJlCiAgICAgICAgdHJhbnNmb3JtZWQgaW50byB1bmljb2RlIHVzaW5nIHRoYXQgZW5jb2RpbmcgcHJpb3IgdG8gSlNPTi1lbmNvZGluZy4KICAgICAgICBUaGUgZGVmYXVsdCBpcyBVVEYtOC4KCiAgICAgICAgTigLAAAAdAgAAABza2lwa2V5c3QMAAAAZW5zdXJlX2FzY2lpdA4AAABjaGVja19jaXJjdWxhcnQJAAAAYWxsb3dfbmFudAkAAABzb3J0X2tleXN0BgAAAGluZGVudFIWAAAAdA4AAABpdGVtX3NlcGFyYXRvcnQNAAAAa2V5X3NlcGFyYXRvcnQHAAAAZGVmYXVsdHQIAAAAZW5jb2RpbmcoCgAAAHQEAAAAc2VsZlIbAAAAUhwAAABSHQAAAFIeAAAAUh8AAABSIAAAAHQKAAAAc2VwYXJhdG9yc1IkAAAAUiMAAAAoAAAAACgAAAAAc1QAAAAvdG1wL25kay1Vc2Vy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