gASVAAABAAAAAACMDmRvY3V0aWxzLm5vZGVzlIwIZG9jdW1lbnSUk5QpgZR9lCiMCXJhd3NvdXJjZZSMAJSMCGNoaWxkcmVulF2UKGgAjAZ0YXJnZXSUk5QpgZR9lChoBWgGaAddlIwKYXR0cmlidXRlc5R9lCiMA2lkc5RdlIwdbW9kdWxlLWV0aGVyZXVtLmZyb250aWVyLnRyaWWUYYwHY2xhc3Nlc5RdlIwFbmFtZXOUXZSMCGR1cG5hbWVzlF2UjAhiYWNrcmVmc5RdlIwFaXNtb2SUiHWMB3RhZ25hbWWUaAmMBnNvdXJjZZSMXi9ob21lL3J1bm5lci93b3JrL2V4ZWN1dGlvbi1zcGVjcy9leGVjdXRpb24tc3BlY3MvZG9jL2F1dG9hcGkvZXRoZXJldW0vZnJvbnRpZXIvdHJpZS9pbmRleC5yc3SUjARsaW5llEsBjAZwYXJlbnSUaAOMCV9kb2N1bWVudJRoA3VijA9zcGhpbnguYWRkbm9kZXOUjAVpbmRleJSTlCmBlH2UKGgFaAZoB12UaA59lChoEF2UaBNdlGgVXZRoF12UaBldlIwHZW50cmllc5RdlCiMBHBhaXKUjB5tb2R1bGU7IGV0aGVyZXVtLmZyb250aWVyLnRyaWWUaBJoBk50lGF1aBxoI2gdaB5oH0sCaCBoA2ghaAN1YmgAjAdzZWN0aW9ulJOUKYGUfZQoaAVoBmgHXZQoaACMBXRpdGxllJOUKYGUfZQoaAWMClN0YXRlIFRyaWWUaAddlGgAjARUZXh0lJOUjApTdGF0ZSBUcmlllIWUgZR9lChoBWgGaCBoOmghaANoHYxcL2hvbWUvcnVubmVyL3dvcmsvZXhlY3V0aW9uLXNwZWNzL2V4ZWN1dGlvbi1zcGVjcy8udG94L2RvY3Mvc3RhZ2UwX291dC9hdXRvYXBpLyA9PiBkb2MvZGlmZnOUaB9LAHViYWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxoOGgdaB5oH0sEaCBoNWghaAN1YmgAjAV0b3BpY5STlCmBlH2UKGgFaAZoB12UKGg5KYGUfZQoaAWMEVRhYmxlIG9mIENvbnRlbnRzlGgHXZRoP4wRVGFibGUgb2YgQ29udGVudHOUhZSBlH2UKGgFaAZoIGhQaCFoA2gdaERoH0sAdWJhaA59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AAB1Ymg0KYGUfZQoaAVoBmgHXZQoaDkpgZR9lChoBYwJRnVuY3Rpb25zlGgHXZRoP4wJRnVuY3Rpb25zlIWUgZR9lChoBWgGaCBqJQYAAGghaANoHWhEaB9LAHViYWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxoOGgdaB5oH0sjaCBqIgYAAHViamkEAAApgZR9lChoBWgGaAddlGgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZSMBHNwZWOUanQEAAB1aBxqaAQAAGgdjG8vaG9tZS9ydW5uZXIvd29yay9leGVjdXRpb24tc3BlY3MvZXhlY3V0aW9uLXNwZWNzL2RvYy9hdXRvYXBpL2V0aGVyZXVtL2Zyb250aWVyL3RyaWUvaW5kZXgucnN0OjUzOjxhdXRvc3VtbWFyeT6UaB9OaCBqIgYAAHViangEAAApgZR9lChoBVgQAwAACgoKCmVuY29kZV9pbnRlcm5hbF9ub2RlCgpFbmNvZGVzIGEgTWVya2xlIFRyaWUgbm9kZSBpbnRvIGl0cyBSTFAgZm9ybS4gVGhlIFJMUCB3aWxsIHRoZW4gYmUKCmVuY29kZV9ub2RlCgpFbmNvZGUgYSBOb2RlIGZvciBzdG9yYWdlIGluIHRoZSBNZXJrbGUgVHJpZS4KCmNvcHlfdHJpZQoKQ3JlYXRlIGEgY29weSBvZiB0cmllLiBTaW5jZSBvbmx5IGZyb3plbiBvYmplY3RzIG1heSBiZSBzdG9yZWQgaW4gdHJpZXMsCgp0cmllX3NldAoKU3RvcmVzIGFuIGl0ZW0gaW4gYSBNZXJrbGUgVHJpZS4KCnRyaWVfZ2V0CgpHZXRzIGFuIGl0ZW0gZnJvbSB0aGUgTWVya2xlIFRyaWUuCgpjb21tb25fcHJlZml4X2xlbmd0aAoKRmluZCB0aGUgbG9uZ2VzdCBjb21tb24gcHJlZml4IG9mIHR3byBzZXF1ZW5jZXMuCgpuaWJibGVfbGlzdF90b19jb21wYWN0CgpDb21wcmVzc2VzIG5pYmJsZS1saXN0IGludG8gYSBzdGFuZGFyZCBieXRlIGFycmF5IHdpdGggYSBmbGFnLgoKYnl0ZXNfdG9fbmliYmxlX2xpc3QKCkNvbnZlcnRzIGEgQnl0ZXMgaW50byB0byBhIHNlcXVlbmNlIG9m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lIWUgZR9lChoBWgGaCBqaggAAGghaANoHWhEaB9LAHViYWgOfZQoaBBdlGgTXZQoasAEAACMAnB5lIwGcHktb2JqlGVoFV2UaBddlGgZXZR1aBxqswQAAGgdTmgfTmggamcIAAB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UjAhpbnRlcm5hbJSIjAVyZWZpZJSMLWV0aGVyZXVtLmZyb250aWVyLnRyaWUubmliYmxlX2xpc3RfdG9fY29tcGFjdJSMCHJlZnRpdGxllIwtZXRoZXJldW0uZnJvbnRpZXIudHJpZS5uaWJibGVfbGlzdF90b19jb21wYWN0lHVoHGhtaB1OaB9OaCBqYwgAAHViYWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxoaGgdjG8vaG9tZS9ydW5uZXIvd29yay9leGVjdXRpb24tc3BlY3MvZXhlY3V0aW9uLXNwZWNzL2RvYy9hdXRvYXBpL2V0aGVyZXVtL2Zyb250aWVyL3RyaWUvaW5kZXgucnN0OjUzOjxhdXRvc3VtbWFyeT6UaB9LAWggamAIAAB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcaqcEAABoHU5oH05oIGpdCAAAdWJqqAQAACmBlH2UKGgFaAZoB12UaGkpgZR9lChoBYw+Q29tcHJlc3NlcyBuaWJibGUtbGlzdCBpbnRvIGEgc3RhbmRhcmQgYnl0ZSBhcnJheSB3aXRoIGEgZmxhZy6UaAddlGg/jD5Db21wcmVzc2VzIG5pYmJsZS1saXN0IGludG8gYSBzdGFuZGFyZCBieXRlIGFycmF5IHdpdGggYSBmbGFnLpSFlIGUfZQoaAVoBmggapQIAABoIWgDaB1oRGgfSwB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcaGhoHYxvL2hvbWUvcnVubmVyL3dvcmsvZXhlY3V0aW9uLXNwZWNzL2V4ZWN1dGlvbi1zcGVjcy9kb2MvYXV0b2FwaS9ldGhlcmV1bS9mcm9udGllci90cmllL2luZGV4LnJzdDo1Mzo8YXV0b3N1bW1hcnk+lGgfSwFoIGqRCAAAdWJhaA59lChoEF2UaBNdlGgVXZRoF12UaBldlHVoHGqnBAAAaB1OaB9OaCBqXQgAAHViZWgOfZQoaBBd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XZQojANzaWeUjApzaWctb2JqZWN0lIwCcHmUjANzaWeUjApzaWctb2JqZWN0lGVoFV2UaBddlGgZXZSMBm1vZHVsZZSMFmV0aGVyZXVtLmZyb250aWVyLnRyaWWUjAVjbGFzc5RoBowIZnVsbG5hbWWUalgMAAB1aBxqVAwAAGgdaB5oH0tKaCBqUQwAAHViaCKMDGRlc2NfY29udGVudJSTlCmBlH2UKGgFaAZoB12UaA59lChoEF2UaBNdlGgVXZRoF12UaBldlHVoHGp9DAAAaB1oHmgfS01oIGpRDAAAdWJlaA59lChoEF2UaBNdlChqcwwAAIwEZGF0YZRlaBVdlGgXXZRoGV2UjAZkb21haW6UanMMAACMB29ianR5cGWUaosMAACMCGRlc2N0eXBllGqLDAAAjAdub2luZGV4lIl1aBxqTwwAAGgdTmgfTmggai8MAAB1YmgAjA1saXRlcmFsX2Jsb2NrlJOUKYGUfZQoaAWMfUVNUFRZX1RSSUVfUk9PVCA9IFJvb3QoCiAgICBoZXhfdG9fYnl0ZXMoCiAgICAgICAgIjU2ZTgxZjE3MWJjYzU1YTZmZjgzNDVlNjkyYzBmODZlNWI0OGUwMWI5OTZjYWRjMDAxNjIyZmI1ZTM2M2I0MjEiCiAgICApCikKlGgHXZRoP4x9RU1QVFlfVFJJRV9ST09UID0gUm9vdCgKICAgIGhleF90b19ieXRlcygKICAgICAgICAiNTZlODFmMTcxYmNjNTVhNmZmODM0NWU2OTJjMGY4NmU1YjQ4ZTAxYjk5NmNhZGMwMDE2MjJmYjVlMzYzYjQyMSIKICAgICkKKQqUhZSBlH2UKGgFaAZoIGqVDAAAaCFoA2gdaERoH0sAdWJhaA59lChoEF2UaBNdlGgVXZRoF12UaBldlIwGc291cmNllIxPL2hvbWUvcnVubmVyL3dvcmsvZXhlY3V0aW9uLXNwZWNzL2V4ZWN1dGlvbi1zcGVjcy9zcmMvZXRoZXJldW0vZnJvbnRpZXIvdHJpZS5weZSMCXhtbDpzcGFjZZRqPgQAAIwFZm9yY2WUiYwIbGFuZ3VhZ2WUjAZweXRob26UjA5oaWdobGlnaHRfYXJnc5R9lIwLbGluZW5vc3RhcnSUSwFzjAdsaW5lbm9zlIl1aBxqkwwAAGgdaB5oH0tOaCBqLwwA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IGIiIgogICAgZWxpZiBpc2luc3RhbmNlKG5vZGUsIExlYWZOb2RlKToKICAgICAgICB1bmVuY29kZWQgPSAoCiAgICAgICAgICAgIG5pYmJsZV9saXN0X3RvX2NvbXBhY3Qobm9kZS5yZXN0X29mX2tleSwgVHJ1ZSksCiAgICAgICAgICAgIG5vZGUudmFsdWUsCiAgICAgICAgKQogICAgZWxpZiBpc2luc3RhbmNlKG5vZGUsIEV4dGVuc2lvbk5vZGUpOgogICAgICAgIHVuZW5jb2RlZCA9ICgKICAgICAgICAgICAgbmliYmxlX2xpc3RfdG9fY29tcGFjdChub2RlLmtleV9zZWdtZW50LCBGYWxzZSksCiAgICAgICAgICAgIG5vZGUuc3Vibm9kZSwKICAgICAgICApCiAgICBlbGlmIGlzaW5zdGFuY2Uobm9kZSwgQnJhbmNoTm9kZSk6CiAgICAgICAgdW5lbmNvZGVkID0gbm9kZS5zdWJub2RlcyArIFtub2RlLnZhbHVlXQogICAgZWxzZToKICAgICAgICByYWlzZSBBc3NlcnRpb25FcnJvcihmIkludmFsaWQgaW50ZXJuYWwgbm9kZSB0eXBlIHt0eXBlKG5vZGUpfSEiKQoKICAgIGVuY29kZWQgPSBybHAuZW5jb2RlKHVuZW5jb2RlZCkKICAgIGlmIGxlbihlbmNvZGVkKSA8IDMyOgogICAgICAgIHJldHVybiB1bmVuY29kZWQKICAgIGVsc2U6CiAgICAgICAgcmV0dXJuIGtlY2NhazI1NihlbmNvZGVkKQqUaAddlGg/WPECAABkZWYgZW5jb2RlX2ludGVybmFsX25vZGUobm9kZTogT3B0aW9uYWxbSW50ZXJuYWxOb2RlXSkgLT4gcmxwLlJMUDoKICAgIHVuZW5jb2RlZDogcmxwLlJMUAogICAgaWYgbm9kZSBpcyBOb25lOgogICAgICAgIHVuZW5jb2RlZCA9IGIiIgogICAgZWxpZiBpc2luc3RhbmNlKG5vZGUsIExlYWZOb2RlKToKICAgICAgICB1bmVuY29kZWQgPSAoCiAgICAgICAgICAgIG5pYmJsZV9saXN0X3RvX2NvbXBhY3Qobm9kZS5yZXN0X29mX2tleSwgVHJ1ZSksCiAgICAgICAgICAgIG5vZGUudmFsdWUsCiAgICAgICAgKQogICAgZWxpZiBpc2luc3RhbmNlKG5vZGUsIEV4dGVuc2lvbk5vZGUpOgogICAgICAgIHVuZW5jb2RlZCA9ICgKICAgICAgICAgICAgbmliYmxlX2xpc3RfdG9fY29tcGFjdChub2RlLmtleV9zZWdtZW50LCBGYWxzZSksCiAgICAgICAgICAgIG5vZGUuc3Vibm9kZSwKICAgICAgICApCiAgICBlbGlmIGlzaW5zdGFuY2Uobm9kZSwgQnJhbmNoTm9kZSk6CiAgICAgICAgdW5lbmNvZGVkID0gbm9kZS5zdWJub2RlcyArIFtub2RlLnZhbHVlXQogICAgZWxzZToKICAgICAgICByYWlzZSBBc3NlcnRpb25FcnJvcihmIkludmFsaWQgaW50ZXJuYWwgbm9kZSB0eXBlIHt0eXBlKG5vZGUpfSEiKQoKICAgIGVuY29kZWQgPSBybHAuZW5jb2RlKHVuZW5jb2RlZCkKICAgIGlmIGxlbihlbmNvZGVkKSA8IDMyOgogICAgICAgIHJldHVybiB1bmVuY29kZWQKICAgIGVsc2U6CiAgICAgICAgcmV0dXJuIGtlY2NhazI1NihlbmNvZGVkKQqUhZSBlH2UKGgFaAZoIGqNEwAAaCFoA2gdaERoH0sAdWJhaA59lChoEF2UaBNdlGgVXZRoF12UaBldlIwGc291cmNllIxPL2hvbWUvcnVubmVyL3dvcmsvZXhlY3V0aW9uLXNwZWNzL2V4ZWN1dGlvbi1zcGVjcy9zcmMvZXRoZXJldW0vZnJvbnRpZXIvdHJpZS5weZSMCXhtbDpzcGFjZZRqPgQAAIwFZm9yY2WUiYwIbGFuZ3VhZ2WUjAZweXRob26UjA5oaWdobGlnaHRfYXJnc5R9lGqrDAAASwFzjAdsaW5lbm9zlIl1aBxqkwwAAGgdaB5oH0vtaCBquhEAAHViZWgOfZQoaBBdlGpgAgAAYWgTXZRoFV2UjBRlbmNvZGVfaW50ZXJuYWxfbm9kZZRhaBddlGgZXZR1aBxoM2gdaB5oH0vXaCBqHgwAAGghaAN1Ymg0KYGUfZQoaAVoBmgHXZQoaDkpgZR9lChoBYwLZW5jb2RlX25vZGWUaAddlGg/jAtlbmNvZGVfbm9kZZSFlIGUfZQoaAVo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IGrHEwAAdWJlaA59lChoEF2UaBNdlChqOhQAAIwIZnVuY3Rpb26UZWgVXZRoF12UaBldlIwGZG9tYWlulGo6FAAAjAdvYmp0eXBllGppFAAAjAhkZXNjdHlwZZRqaRQAAIwHbm9pbmRleJSJdWgcak8MAABoHWgeaB9LAGggaqsTAABoIWgDdWJqlAwAACmBlH2UKGgFWN4BAABkZWYgZW5jb2RlX25vZGUobm9kZTogTm9kZSwgc3RvcmFnZV9yb290OiBPcHRpb25hbFtCeXRlc10gPSBOb25lKSAtPiBCeXRlczoKICAgIGlmIGlzaW5zdGFuY2Uobm9kZSwgQWNjb3VudCk6CiAgICAgICAgYXNzZXJ0IHN0b3JhZ2Vfcm9vdCBpcyBub3QgTm9uZQogICAgICAgIHJldHVybiBlbmNvZGVfYWNjb3VudChub2RlLCBzdG9yYWdlX3Jvb3QpCiAgICBlbGlmIGlzaW5zdGFuY2Uobm9kZSwgKFRyYW5zYWN0aW9uLCBSZWNlaXB0LCBVMjU2KSk6CiAgICAgICAgcmV0dXJuIHJscC5lbmNvZGUoY2FzdChybHAuUkxQLCBub2RlKSkKICAgIGVsaWYgaXNpbnN0YW5jZShub2RlLCBCeXRlcyk6CiAgICAgICAgcmV0dXJuIG5vZGUKICAgIGVsc2U6CiAgICAgICAgcmFpc2UgQXNzZXJ0aW9uRXJyb3IoCiAgICAgICAgICAgIGYiZW5jb2RpbmcgZm9yIHt0eXBlKG5vZGUpfSBpcyBub3QgY3VycmVudGx5IGltcGxlbWVudGVkIgogICAgICAgICkKlGgHXZQoaD9YeAEAAGRlZiBlbmNvZGVfbm9kZShub2RlOiBOb2RlLCBzdG9yYWdlX3Jvb3Q6IE9wdGlvbmFsW0J5dGVzXSA9IE5vbmUpIC0+IEJ5dGVzOgogICAgaWYgaXNpbnN0YW5jZShub2RlLCBBY2NvdW50KToKICAgICAgICBhc3NlcnQgc3RvcmFnZV9yb290IGlzIG5vdCBOb25lCiAgICAgICAgcmV0dXJuIGVuY29kZV9hY2NvdW50KG5vZGUsIHN0b3JhZ2Vfcm9vdCkKICAgIGVsaWYgaXNpbnN0YW5jZShub2RlLCAoVHJhbnNhY3Rpb24sIFJlY2VpcHQsIFUyNTYp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aAVYWAMAAGRlZiBfcHJlcGFyZV90cmllKAogICAgdHJpZTogVHJpZVtLLCBWXSwKICAgIGdldF9zdG9yYWdlX3Jvb3Q6IENhbGxhYmxlW1tBZGRyZXNzXSwgUm9vdF0gPSBOb25lLAopIC0+IE1hcHBpbmdbQnl0ZXMsIEJ5dGVzXToKICAgIG1hcHBlZDogTXV0YWJsZU1hcHBpbmdbQnl0ZXMsIEJ5dGVzXSA9IHt9CgogICAgZm9yIChwcmVpbWFnZSwgdmFsdWUpIGluIHRyaWUuX2RhdGEuaXRlbXMoKToKICAgICAgICBpZiBpc2luc3RhbmNlKHZhbHVlLCBBY2NvdW50KToKICAgICAgICAgICAgYXNzZXJ0IGdldF9zdG9yYWdlX3Jvb3QgaXMgbm90IE5vbmUKICAgICAgICAgICAgYWRkcmVzcyA9IEFkZHJlc3MocHJlaW1hZ2UpCiAgICAgICAgICAgIGVuY29kZWRfdmFsdWUgPSBlbmNvZGVfbm9kZSh2YWx1ZSwgZ2V0X3N0b3JhZ2Vfcm9vdChhZGRyZXNzKSkKICAgICAgICBlbHNlOgogICAgICAgICAgICBlbmNvZGVkX3ZhbHVlID0gZW5jb2RlX25vZGUodmFsdWUpCiAgICAgICAgIyBFbXB0eSB2YWx1ZXMgYXJlIHJlcHJlc2VudGVkIGJ5IHRoZWlyIGFic2VuY2UKICAgICAgICBlbnN1cmUoZW5jb2RlZF92YWx1ZSAhPSBiIiIsIEFzc2VydGlvbkVycm9yKQogICAgICAgIGtleTogQnl0ZXMKICAgICAgICBpZiB0cmllLnNlY3VyZWQ6CiAgICAgICAgICAgICMgInNlY3VyZSIgdHJpZXMgaGFzaCBrZXlzIG9uY2UgYmVmb3JlIGNvbnN0cnVjdGlvbgogICAgICAgICAgICBrZXkgPSBrZWNjYWsyNTYocHJlaW1hZ2UpCiAgICAgICAgZWxzZToKICAgICAgICAgICAga2V5ID0gcHJlaW1hZ2UKICAgICAgICBtYXBwZWRbYnl0ZXNfdG9fbmliYmxlX2xpc3Qoa2V5KV0gPSBlbmNvZGVkX3ZhbHVlCgogICAgcmV0dXJuIG1hcHBlZAqUaAddlGg/WFgDAABkZWYgX3ByZXBhcmVfdHJpZSgKICAgIHRyaWU6IFRyaWVbSywgVl0sCiAgICBnZXRfc3RvcmFnZV9yb290OiBDYWxsYWJsZVtbQWRkcmVzc10sIFJvb3RdID0gTm9uZSwKKSAtPiBNYXBwaW5nW0J5dGVzLCBCeXRlc106CiAgICBtYXBwZWQ6IE11dGFibGVNYXBwaW5nW0J5dGVzLCBCeXRlc10gPSB7fQoKICAgIGZvciAocHJlaW1hZ2UsIHZhbHVlKSBpbiB0cmllLl9kYXRhLml0ZW1zKCk6CiAgICAgICAgaWYgaXNpbnN0YW5jZSh2YWx1ZSwgQWNjb3VudCk6CiAgICAgICAgICAgIGFzc2VydCBnZXRfc3RvcmFnZV9yb290IGlzIG5vdCBOb25lCiAgICAgICAgICAgIGFkZHJlc3MgPSBBZGRyZXNzKHByZWltYWdlKQogICAgICAgICAgICBlbmNvZGVkX3ZhbHVlID0gZW5jb2RlX25vZGUodmFsdWUsIGdldF9zdG9yYWdlX3Jvb3QoYWRkcmVzcykpCiAgICAgICAgZWxzZToKICAgICAgICAgICAgZW5jb2RlZF92YWx1ZSA9IGVuY29kZV9ub2RlKHZhbHVlKQogICAgICAgICMgRW1wdHkgdmFsdWVzIGFyZSByZXByZXNlbnRlZCBieSB0aGVpciBhYnNlbmNlCiAgICAgICAgZW5zdXJlKGVuY29kZWRfdmFsdWUgIT0gYiIiLCBBc3NlcnRpb25FcnJvcikKICAgICAgICBrZXk6IEJ5dGVzCiAgICAgICAgaWYgdHJpZS5zZWN1cmVkOgogICAgICAgICAgICAjICJzZWN1cmUiIHRyaWVzIGhhc2gga2V5cyBvbmNlIGJlZm9yZSBjb25zdHJ1Y3Rpb24KICAgICAgICAgICAga2V5ID0ga2VjY2FrMjU2KHByZWltYWdlKQogICAgICAgIGVsc2U6CiAgICAgICAgICAgIGtleSA9IHByZWltYWdlCiAgICAgICAgbWFwcGVkW2J5dGVzX3RvX25pYmJsZV9saXN0KGtleSldID0gZW5jb2RlZF92YWx1ZQoKICAgIHJldHVybiBtYXBwZWQKlIWUgZR9lChoBWgGaCBqCSIAAGghaANoHWhEaB9LAHViYWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZSMBnNvdXJjZZSM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bm90aGVyIGtleSBhdCB0aGUgY3VycmVudCBsZXZlbAogICAgICAgIGlmIHByZWZpeF9sZW5ndGggPT0gMDoKICAgICAgICAgICAgYnJlYWsKCiAgICAjIGlmIGV4dGVuc2lvbiBub2RlCiAgICBpZiBwcmVmaXhfbGVuZ3RoID4gMDoKICAgICAgICBwcmVmaXggPSBhcmJpdHJhcnlfa2V5W2xldmVsIDogbGV2ZWwgKyBwcmVmaXhfbGVuZ3RoXQogICAgICAgIHJldHVybiBFeHRlbnNpb25Ob2RlKAogICAgICAgICAgICBwcmVmaXgsCiAgICAgICAgICAgIGVuY29kZV9pbnRlcm5hbF9ub2RlKHBhdHJpY2lhbGl6ZShvYmosIGxldmVsICsgcHJlZml4X2xlbmd0aCkpLAogICAgICAgICkKCiAgICBicmFuY2hlczogTGlzdFtNdXRhYmxlTWFwcGluZ1tCeXRlcywgQnl0ZXNdXSA9IFtdCiAgICBmb3IgXyBpbiByYW5nZSgxNik6CiAgICAgICAgYnJhbmNoZXMuYXBwZW5kKHt9KQogICAgdmFsdWUgPSBiIiIKICAgIGZvciBrZXkgaW4gb2JqOgogICAgICAgIGlmIGxlbihrZXkpID09IGxldmVsOgogICAgICAgICAgICAjIHNob3VsZG4ndCBldmVyIGhhdmUgYW4gYWNjb3VudCBvciByZWNlaXB0IGluIGFuIGludGVybmFsIG5vZGUKICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShvYmpba2V5XSwgKEFjY291bnQsIFJlY2VpcHQsIFVpbnQpKToKICAgICAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yCiAgICAgICAgICAgIHZhbHVlID0gb2JqW2tleV0KICAgICAgICBlbHNlOgogICAgICAgICAgICBicmFuY2hlc1trZXlbbGV2ZWxdXVtrZXldID0gb2JqW2tleV0KCiAgICByZXR1cm4gQnJhbmNoTm9kZSgKICAgICAgICBbCiAgICAgICAgICAgIGVuY29kZV9pbnRlcm5hbF9ub2RlKHBhdHJpY2lhbGl6ZShicmFuY2hlc1trXSwgbGV2ZWwgKyAxKSkKICAgICAgICAgICAgZm9yIGsgaW4gcmFuZ2UoMTYpCiAgICAgICAgXSwKICAgICAgICB2YWx1ZSwKICAgICkKlGgHXZRoP1g4BgAAZGVmIHBhdHJpY2lhbGl6ZSgKICAgIG9iajogTWFwcGluZ1tCeXRlcywgQnl0ZXNdLCBsZXZlbDogVWludAopIC0+IE9wdGlvbmFsW0ludGVybmFsTm9kZV06CiAgICBpZiBsZW4ob2JqKSA9PSAwOgogICAgICAgIHJldHVybiBOb25lCgogICAgYXJiaXRyYXJ5X2tleSA9IG5leHQoaXRlcihvYmopKQoKICAgICMgaWYgbGVhZiBub2RlCiAgICBpZiBsZW4ob2JqKSA9PSAxOgogICAgICAgIGxlYWYgPSBMZWFmTm9kZShhcmJpdHJhcnlfa2V5W2xldmVsOl0sIG9ialthcmJpdHJhcnlfa2V5XSkKICAgICAgICByZXR1cm4gbGVhZgoKICAgICMgcHJlcGFyZSBmb3IgZXh0ZW5zaW9uIG5vZGUgY2hlY2sgYnkgZmluZGluZyBtYXggaiBzdWNoIHRoYXQgYWxsIGtleXMgaW4KICAgICMgb2JqIGhhdmUgdGhlIHNhbWUga2V5W2k6al0KICAgIHN1YnN0cmluZyA9IGFyYml0cmFyeV9rZXlbbGV2ZWw6XQogICAgcHJlZml4X2xlbmd0aCA9IGxlbihzdWJzdHJpbmcpCiAgICBmb3Iga2V5IGluIG9iajoKICAgICAgICBwcmVmaXhfbGVuZ3RoID0gbWluKAogICAgICAgICAgICBwcmVmaXhfbGVuZ3RoLCBjb21tb25fcHJlZml4X2xlbmd0aChzdWJzdHJpbmcsIGtleVtsZXZlbDpdKQogICAgICAgICkKCiAgICAgICAgIyBmaW5pc2hlZCBzZWFyY2hpbmcsIGZvdW5kIGFub3RoZXIga2V5IGF0IHRoZSBjdXJyZW50IGxldmVsCiAgICAgICAgaWYgcHJlZml4X2xlbmd0aCA9PSAwOgogICAgICAgICAgICBicmVhawoKICAgICMgaWYgZXh0ZW5zaW9uIG5vZGUKICAgIGlmIHByZWZpeF9sZW5ndGggPiAwOgogICAgICAgIHByZWZpeCA9IGFyYml0cmFyeV9rZXlbbGV2ZWwgOiBsZXZlbCArIHByZWZpeF9sZW5ndGhdCiAgICAgICAgcmV0dXJuIEV4dGVuc2lvbk5vZGUoCiAgICAgICAgICAgIHByZWZpeCwKICAgICAgICAgICAgZW5jb2RlX2ludGVybmFsX25vZGUocGF0cmljaWFsaXplKG9iaiwgbGV2ZWwgKyBwcmVmaXhfbGVuZ3RoKSksCiAgICAgICAgKQoKICAgIGJyYW5jaGVzOiBMaXN0W011dGFibGVNYXBwaW5nW0J5dGVzLCBCeXRlc11dID0gW10KICAgIGZvciBfIGluIHJhbmdlKDE2KToKICAgICAgICBicmFuY2hlcy5hcHBlbmQoe30pCiAgICB2YWx1ZSA9IGIiIgogICAgZm9yIGtleSBpbiBvYmo6CiAgICAgICAgaWYgbGVuKGtleSkgPT0gbGV2ZWw6CiAgICAgICAgICAgICMgc2hvdWxkbid0IGV2ZXIgaGF2ZSBhbiBhY2NvdW50IG9yIHJlY2VpcHQgaW4gYW4gaW50ZXJuYWwgbm9kZQogICAgICAgICAgICBpZiBpc2luc3RhbmNlKG9ialtrZXldLCAoQWNjb3VudCwgUmVjZWlwdCwgVWludCkpOgogICAgICAgICAgICAgICAgcmFpc2UgQXNzZXJ0aW9uRXJyb3IKICAgICAgICAgICAgdmFsdWUgPSBvYmpba2V5XQogICAgICAgIGVsc2U6CiAgICAgICAgICAgIGJyYW5jaGVzW2tleVtsZXZlbF1dW2tleV0gPSBvYmpba2V5XQoKICAgIHJldHVybiBCcmFuY2hOb2RlKAogICAgICAgIFsKICAgICAgICAgICAgZW5jb2RlX2ludGVybmFsX25vZGUocGF0cmljaWFsaXplKGJyYW5jaGVzW2tdLCBsZXZlbCArIDEpKQogICAgICAgICAgICBmb3IgayBpbiByYW5nZSgxNikKICAgICAgICBdLAogICAgICAgIHZhbHVlLAogICAgKQqUhZSBlH2UKGgFaAZoIGrFJQAAaCFoA2gdaERoH0sAdWJhaA59lChoEF2UaBNdlGgVXZRoF12UaBldlIwGc291cmNllIxPL2hvbWUvcnVubmVyL3dvcmsvZXhlY3V0aW9uLXNwZWNzL2V4ZWN1dGlvbi1zcGVjcy9zcmMvZXRoZXJldW0vZnJvbnRpZXIvdHJpZS5weZSMCXhtbDpzcGFjZZRqPgQAAIwFZm9yY2WUiYwIbGFuZ3VhZ2WUjAZweXRob26UjA5oaWdobGlnaHRfYXJnc5R9lGqrDAAASwFzjAdsaW5lbm9zlIl1aBxqkwwAAGgdaB5oH03/AWggahUkAAB1YmVoDn2UKGgQXZRq1gMAAGFoE12UaBVdlIwMcGF0cmljaWFsaXpllGFoF12UaBldlHVoHGgzaB1oHmgfTesBaCBqHgwAAGghaAN1YmVoDn2UKGgQXZRqMQEAAGFoE12UaBVdlIwObW9kdWxlIGRldGFpbHOUYWgXXZRoGV2UdWgcaDNoHWgeaB9LQ2ggaDVoIWgDdWJlaA59lChoEF2UjApzdGF0ZS10cmlllGFoE12UaBVdlIwKc3RhdGUgdHJpZZRhaBddlGgZXZR1aBxoM2gdaB5oH0sEaCBoA2ghaAN1YmVoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UjAZzb3VyY2WUaER1aBxoAYwOY3VycmVudF9zb3VyY2WUaESMDGN1cnJlbnRfbGluZZRLAIwIc2V0dGluZ3OUjBFkb2N1dGlscy5mcm9udGVuZJSMBlZhbHVlc5STlCmBlH2UKIwMcmVwb3J0X2xldmVslEsCjApoYWx0X2xldmVslEsEjBFleGl0X3N0YXR1c19sZXZlbJRLBYwFZGVidWeUTowOd2FybmluZ19zdHJlYW2UTowJdHJhY2ViYWNrlE6MD291dHB1dF9lbmNvZGluZ5SMBXV0Zi04lIwdb3V0cHV0X2VuY29kaW5nX2Vycm9yX2hhbmRsZXKUjBF4bWxjaGFycmVmcmVwbGFjZZSMDmVycm9yX2VuY29kaW5nlIwFdXRmLTiUjBxlcnJvcl9lbmNvZGluZ19lcnJvcl9oYW5kbGVylIwQYmFja3NsYXNocmVwbGFjZZSME3JlY29yZF9kZXBlbmRlbmNpZXOUjA5kb2N1dGlscy51dGlsc5SMDkRlcGVuZGVuY3lMaXN0lJOUKYGUfZQojARsaXN0lF2UjARmaWxllE51YowGY29uZmlnlE6MDWR1bXBfc2V0dGluZ3OUTowOZHVtcF9pbnRlcm5hbHOUTowPZHVtcF90cmFuc2Zvcm1zlE6MD2R1bXBfcHNldWRvX3htbJROjBBleHBvc2VfaW50ZXJuYWxzlE6MDnN0cmljdF92aXNpdG9ylE6MD19kaXNhYmxlX2NvbmZpZ5ROjAdfc291cmNllE6MDF9kZXN0aW5hdGlvbpSMMGRvYy9kaWZmcy9mcm9udGllcl9ob21lc3RlYWQvdHJpZS9pbmRleC5waWNrbGU2NJSMDV9jb25maWdfZmlsZXOUXZSMEWxpbmVfbGVuZ3RoX2xpbWl0lE0QJ4wJdGFiX3dpZHRolEsIjBBzeW50YXhfaGlnaGxpZ2h0lIwEbG9uZ5SMDHNtYXJ0X3F1b3Rlc5SJjBNzbWFydHF1b3Rlc19sb2NhbGVzlE6MHWNoYXJhY3Rlcl9sZXZlbF9pbmxpbmVfbWFya3VwlImMBndyaXRlcpSMA3htbJSMGWNvbXBhcmVfc2VjdGlvbnNfYnlfbmFtZXOUSwGMDGR1bXBfcnN0ZGlmZpROjAVfYm90aJR9lChoOE6MCWdlbmVyYXRvcpROjAlkYXRlc3RhbXCUTowLc291cmNlX2xpbmuUTowKc291cmNlX3VybJROjA10b2NfYmFja2xpbmtzlGqnBAAAjBJmb290bm90ZV9iYWNrbGlua3OUSwGMDXNlY3RudW1feGZvcm2USwGMDmRvY3RpdGxlX3hmb3JtlEsBjA1kb2NpbmZvX3hmb3JtlEsBjBJzZWN0c3VidGl0bGVfeGZvcm2USwCMDnN0cmlwX2NvbW1lbnRzlE6MDmlucHV0X2VuY29kaW5nlE6MHGlucHV0X2VuY29kaW5nX2Vycm9yX2hhbmRsZXKUjAZzdHJpY3SUjA1sYW5ndWFnZV9jb2RllIwCZW6UjA5wZXBfcmVmZXJlbmNlc5ROjAxwZXBfYmFzZV91cmyUjB9odHRwOi8vd3d3LnB5dGhvbi5vcmcvZGV2L3BlcHMvlIwVcGVwX2ZpbGVfdXJsX3RlbXBsYXRllIwIcGVwLSUwNGSUjA5yZmNfcmVmZXJlbmNlc5ROjAxyZmNfYmFzZV91cmyUjBtodHRwOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC+UjB10cmltX2Zvb3Rub3RlX3JlZmVyZW5jZV9zcGFjZZROjBZmaWxlX2luc2VydGlvbl9lbmFibGVklEsBjAtyYXdfZW5hYmxlZJRLAYwOYXV0b19pZF9wcmVmaXiUjAJpZJSMCWlkX3ByZWZpeJRoBowbc3RyaXBfZWxlbWVudHNfd2l0aF9jbGFzc2VzlE6MDXN0cmlwX2NsYXNzZXOUTnWMBGJvdGiUfZSMCl9vcHRpb25zVG+UjAVfYm90aJSMC19vbGRfc291cmNllIxPL2hvbWUvcnVubmVyL3dvcmsvZXhlY3V0aW9uLXNwZWNzL2V4ZWN1dGlvbi1zcGVjcy8udG94L2RvY3Mvc3RhZ2UwX291dC9hdXRvYXBpL5SMC19uZXdfc291cmNllIwJZG9jL2RpZmZzlGpAJgAAakEmAACMFmlnbm9yZV9pbl9zZWN0aW9uX25hbWWUXZQojAhmcm9udGllcpSMCWhvbWVzdGVhZJRldWKMCHJlcG9ydGVylE6MEGluZGlyZWN0X3RhcmdldHOUXZSMEXN1YnN0aXR1dGlvbl9kZWZzlH2UjBJzdWJzdGl0dXRpb25fbmFtZXOUfZSMCHJlZm5hbWVzlH2UjAZyZWZpZHOUfZSMB25hbWVpZHOUfZSMCW5hbWV0eXBlc5R9lGgQfZSMDWZvb3Rub3RlX3JlZnOUfZSMDWNpdGF0aW9uX3JlZnOUfZSMDWF1dG9mb290bm90ZXOUXZSMEWF1dG9mb290bm90ZV9yZWZzlF2UjBBzeW1ib2xfZm9vdG5vdGVzlF2UjBRzeW1ib2xfZm9vdG5vdGVfcmVmc5RdlIwJZm9vdG5vdGVzlF2UjAljaXRhdGlvbnOUXZSMEmF1dG9mb290bm90ZV9zdGFydJRLAYwVc3ltYm9sX2Zvb3Rub3RlX3N0YXJ0lEsAjAppZF9jb3VudGVylIwLY29sbGVjdGlvbnOUjAdDb3VudGVylJOUfZSFlFKUjA5wYXJzZV9tZXNzYWdlc5RdlIwSdHJhbnNmb3JtX21lc3NhZ2VzlF2UjAt0cmFuc2Zvcm1lcpROjAtpbmNsdWRlX2xvZ5RdlIwKZGVjb3JhdGlvbpROaCFoA3ViLg==