ZGlmZiAtLWdpdCBhL1JFQURNRSBiL1JFQURNRQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZWVmMDczMy4uMDAwMDAwMAotLS0gYS9SRUFETUUKKysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi1UaGlzIGlzIHB5dGhvbiBjbGllbnQgbGlicmFyeSBmb3IgR29vZ2xlJ3MgZGlzY292ZXJ5IGJhc2VkIEFQSXMuCi0KLWh0dHA6Ly9nb29nbGUuZ2l0aHViLmlvL2dvb2dsZS1hcGktcHl0aG9uLWNsaWVudAotCi0KLUluc3RhbGxhdGlvbgotPT09PT09PT09PT09Ci0KLVRvIGluc3RhbGwsIHNpbXBseSB1c2UgcGlwIG9yIGVhc3lfaW5zdGFsbDoKLQotICAgJCBwaXAgLS11cGdyYWRlIGdvb2dsZS1hcGktcHl0aG9uLWNsaWVudAotCi0gICAkIGVhc3lfaW5zdGFsbCAtLXVwZ3JhZGUgZ29vZ2xlLWFwaS1weXRob24tY2xpZW50Ci0KLVNlZSB0aGUgRGV2ZWxvcGVycyBHdWlkZSBmb3IgbW9yZSBkZXRhaWxlZCBpbnN0cnVjdGlvbnMgYW5kIGRvY3VtZW50YXRpb246Ci0KLSAgaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vYXBpLWNsaWVudC1saWJyYXJ5L3B5dGhvbi9zdGFydC9nZXRfc3RhcnRlZAotCi0KLVRoaXJkIFBhcnR5IExpYnJhcmllcwotPT09PT09PT09PT09PT09PT09PT09Ci0KLVRoZXNlIGxpYnJhcmllcyB3aWxsIGJlIGluc3RhbGxlZCB3aGVuIHlvdSBpbnN0YWxsIHRoZSBjbGllbnQgbGlicmFyeToKLQotaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL2h0dHBsaWIyCi1odHRwOi8vY29kZS5nb29nbGUuY29tL3AvdXJpLXRlbXBsYXRlcwotCi1EZXBlbmRpbmcgb24geW91ciB2ZXJzaW9uIG9mIFB5dGhvbiwgdGhlc2UgbGlicmFyaWVzIG1heSBhbHNvIGJlIGluc3RhbGxlZDoKLQotaHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpL3NpbXBsZWpzb24vCi0KLUZvciBkZXZlbG9wbWVudCB5b3Ugd2lsbCBhbHNvIG5lZWQ6Ci0KLWh0dHA6Ly9weXRob25wYXN0ZS5vcmcvd2VidGVzdC8KZGlmZiAtLWdpdCBhL1JFQURNRS5tZCBiL1JFQURNRS5tZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNTRhM2NiCi0tLSAvZGV2L251bGwKKysrIGIvUkVBRE1FLm1kCkBAIC0wLDAgKzEsNDMgQEAKK1RoaXMgaXMgcHl0aG9uIGNsaWVudCBsaWJyYXJ5IGZvciBHb29nbGUncyBkaXNjb3ZlcnkgYmFzZWQgQVBJcy4KKworW0Z1bGwgZG9jdW1lbnRhdGlvbl0oaHR0cDovL2dvb2dsZS5naXRodWIuaW8vZ29vZ2xlLWFwaS1weXRob24tY2xpZW50KQorCisKK0luc3RhbGxhdGlvbgorPT09PT09PT09PT09CisKK1RvIGluc3RhbGwsIHNpbXBseSB1c2UgYHBpcGAgb3IgYGVhc3lfaW5zdGFsbGA6CisKKyAgICAkIHBpcCBpbnN0YWxsIC0tdXBncmFkZSBnb29nbGUtYXBpLXB5dGhvbi1jbGllbnQKKworb3IKKworICAgICQgZWFzeV9pbnN0YWxsIC0tdXBncmFkZSBnb29nbGUtYXBpLXB5dGhvbi1jbGllbnQKKworU2VlIHRoZQorW0RldmVsb3BlcnMgR3VpZGVdKGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL2FwaS1jbGllbnQtbGlicmFyeS9weXRob24vc3RhcnQvZ2V0X3N0YXJ0ZWQpCitmb3IgbW9yZSBkZXRhaWxlZCBpbnN0cnVjdGlvbnMgYW5kIGRvY3VtZW50YXRpb24uCisKK1RoaXJkIFBhcnR5IExpYnJhcmllcworPT09PT09PT09PT09PT09PT09PT09CisKK1RoZXNlIGxpYnJhcmllcyB3aWxsIGJlIGluc3RhbGxlZCB3aGVuIHlvdSBpbnN0YWxsIHRoZSBjbGllbnQgbGlicmFyeToKKworKiBodHRwOi8vY29kZS5nb29nbGUuY29tL3AvaHR0cGxpYjIKKyogaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL3VyaS10ZW1wbGF0ZXMKKworRGVwZW5kaW5nIG9uIHlvdXIgdmVyc2lvbiBvZiBQeXRob24sIHRoZXNlIGxpYnJhcmllcyBtYXkgYWxzbyBiZSBpbnN0YWxsZWQ6CisKKyogaHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpL3NpbXBsZWpzb24vCisKK0ZvciBkZXZlbG9wbWVudCB5b3Ugd2lsbCBhbHNvIG5lZWQ6CisKKyogaHR0cDovL3B5dGhvbnBhc3RlLm9yZy93ZWJ0ZXN0LworCitDb250cmlidXRpbmcKKz09PT09PT09PT09PQorCitQbGVhc2Ugc2VlIHRoZQorW2NvbnRyaWJ1dGluZyBwYWdlXShodHRwOi8vZ29vZ2xlLmdpdGh1Yi5pby9nb29nbGUtYXBpLXB5dGhvbi1jbGllbnQvY29udHJpYnV0aW5nLmh0bWwpCitmb3IgbW9yZSBpbmZvcm1hdGlvbi4gSW4gcGFydGljdWxhciwgd2UgbG92ZSBwdWxsIHJlcXVlc3RzIC0tIGJ1dCBwbGVhc2UgbWFrZQorc3VyZSB0byBzaWduIHRoZSBjb250cmlidXRvciBsaWNlbnNlIGFncmVlbWVudC4KZGlmZiAtLWdpdCBhL3NhbXBsZXMvbWFwc19lbmdpbmUvUkVBRE1FIGIvc2FtcGxlcy9tYXBzX2VuZ2luZS9SRUFETUUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjFmZmJiNgotLS0gL2Rldi9udWxsCisrKyBiL3NhbXBsZXMvbWFwc19lbmdpbmUvUkVBRE1FCkBAIC0wLDAgKzEsOCBAQAorVGhpcyBzYW1wbGUgY29kZSBkZW1vbnN0cmF0ZXMgdXNlIG9mIHRoZSBHb29nbGUgTWFwcyBFbmdpbmUgQVBJLCBpbmNsdWRpbmcKK2xpc3RpbmcgcHJvamVjdHMsIGxpc3RpbmcgdGFibGVzIHdpdGhpbiBhIHByb2plY3QsIGFuZCB1cGxvYWRpbmcgYSBzaGFwZWZpbGUuCisKK0ZvciBtb3JlIGluZm9ybWF0aW9uIHNlZSBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9tYXBzLWVuZ2luZS9kb2N1bWVudGF0aW9uCisKK2FwaTogbWFwc2VuZ2luZQora2V5d29yZHM6IGNtZGxpbmUKK2F1dGhvcjogSm9zaCBMaXZuaQpkaWZmIC0tZ2l0IGEvc2FtcGxlcy9tYXBzX2VuZ2luZS9tYXBzX2VuZ2luZS5weSBiL3NhbXBsZXMvbWFwc19lbmdpbmUvbWFwc19lbmdpbmUucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWFhMjVmMwotLS0gL2Rldi9udWxsCisrKyBiL3NhbXBsZXMvbWFwc19lbmdpbmUvbWFwc19lbmdpbmUucHkKQEAgLTAsMCArMSwxNzAgQEAKKyMgLSotIGNvZGluZzogdXRmLTggLSotCisjCisjICBDb3B5cmlnaHQgMjAxMyBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMKKyMgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyMKKyMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorIyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorIyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKworIiIiU2ltcGxlIGNvbW1hbmQtbGluZSBzYW1wbGUgZm9yIEdvb2dsZSBNYXBzIEVuZ2luZS4KKworVGhpcyBzYW1wbGUgY29kZSBkZW1vbnN0cmF0ZXMgdXNlIG9mIHRoZSBHb29nbGUgTWFwcyBFbmdpbmUgQVBJLiAgRm9yIG1vcmUKK2luZm9ybWF0aW9uIG9uIHRoZSBBUEksIHNlZSBkZXZlbG9wZXJzLmdvb2dsZS5jb20vbWFwcy1lbmdpbmUvZG9jdW1lbnRhdGlvbi8KKworVGhlc2Ugc2FtcGxlcyBhbGxvdyB5b3UgdG8KKzEpIExpc3QgcHJvamVjdHMgeW91IGhhdmUgYWNjZXNzIHRvCisyKSBMaXN0IHRhYmxlcyBpbiBhIGdpdmVuIHByb2plY3QuCiszKSBVcGxvYWQgYSBzaGFwZWZpbGUgdG8gY3JlYXRlIGEgVGFibGUgYXNzZXQuCisKK1VzYWdlOgorICAkIHB5dGhvbiBtYXBzX2VuZ2luZS5weSBbLXAgcHJvamVjdF9pZF0gWy1zIHNoYXBlZmlsZV0KKworSWYgeW91IGRvIG5vdCBlbnRlciBhIHNoYXBlZmlsZSwgaXQgd2lsbCB1cGxvYWQgdGhlIGluY2x1ZGVkICJwb2x5Z29ucyIuCisKK1lvdSBjYW4gYWxzbyBnZXQgaGVscCBvbiBhbGwgdGhlIGNvbW1hbmQtbGluZSBmbGFncyB0aGUgcHJvZ3JhbSB1bmRlcnN0YW5kcworYnkgcnVubmluZzoKKworICAkIHB5dGhvbiBtYXBzX2VuZ2luZS5weSAtLWhlbHAKKworVG8gZ2V0IGRldGFpbGVkIGxvZyBvdXRwdXQgcnVuOgorCisgICQgcHl0aG9uIG1hcHNfZW5naW5lLnB5IC1wIDEyMzQ1NiAtLWxvZ2dpbmdfbGV2ZWw9REVCVUcKKyIiIgorCitfX2F1dGhvcl9fID0gImpsaXZuaUBnb29nbGUuY29tIChKb3NoIExpdm5pKSIKKworaW1wb3J0IGFyZ3BhcnNlCitpbXBvcnQganNvbgoraW1wb3J0IGxvZ2dpbmcKK2ltcG9ydCBzeXMKK2ltcG9ydCB0aW1lCisKK2Zyb20gYXBpY2xpZW50IGltcG9ydCBzYW1wbGVfdG9vbHMKK2Zyb20gYXBpY2xpZW50Lmh0dHAgaW1wb3J0IE1lZGlhRmlsZVVwbG9hZAorCitsb2dnaW5nLmJhc2ljQ29uZmlnKGxldmVsPWxvZ2dpbmcuSU5GTykKKworIyBEZWNsYXJlIGNvbW1hbmQtbGluZSBmbGFncy4KK2FyZ3BhcnNlciA9IGFyZ3BhcnNlLkFyZ3VtZW50UGFyc2VyKGFkZF9oZWxwPUZhbHNlKQorYXJncGFyc2VyLmFkZF9hcmd1bWVudCgiLXAiLCAiLS1wcm9qZWN0X2lkIiwgaGVscD0ib3B0aW9uYWwgR01FIFByb2plY3QgSUQiKQorYXJncGFyc2VyLmFkZF9hcmd1bWVudCgiLXMiLCAiLS1zaGFwZWZpbGUiLCBoZWxwPSJTaGFwZWZpbGUgKHdpdGhvdXQgdGhlIC5zaHApIikKKworU1VDQ0VTU0ZVTF9TVEFUVVMgPSBbInByb2Nlc3NlZCIsICJjb21wbGV0ZSIsICJyZWFkeSJdCisKKworY2xhc3MgTWFwc0VuZ2luZVNhbXBsZUV4Y2VwdGlvbihFeGNlcHRpb24pOgorICAiIiJDYXRjaCB0aGlzIGZvciBmYWlsdXJlcyBzcGVjaWZpYyB0byB0aGlzIHNhbXBsZSBjb2RlLiIiIgorCisKK2RlZiBMaXN0UHJvamVjdHMoc2VydmljZSk6CisgICIiIkxpc3QgdGhlIHByb2plY3RzIGF2YWlsYWJsZSB0byB0aGUgYXV0aG9yaXplZCBhY2NvdW50LgorCisgIEFyZ3M6CisgICAgc2VydmljZTogVGhlIHNlcnZpY2Ugb2JqZWN0IGJ1aWx0IGJ5IHRoZSBHb29nbGUgQVBJIFB5dGhvbiBjbGllbnQgbGlicmFyeS4KKyAgIiIiCisgIHByb2plY3RzID0gc2VydmljZS5wcm9qZWN0cygpLmxpc3QoKS5leGVjdXRlKCkKKyAgbG9nZ2luZy5pbmZvKGpzb24uZHVtcHMocHJvamVjdHMsIGluZGVudD0yKSkKKworCitkZWYgTGlzdFRhYmxlcyhzZXJ2aWNlLCBwcm9qZWN0X2lkKToKKyAgIiIiTGlzdCB0aGUgdGFibGVzIGluIGEgZ2l2ZW4gcHJvamVjdC4KKworICBBcmdzOgorICAgIHNlcnZpY2U6IFRoZSBzZXJ2aWNlIG9iamVjdCBidWlsdCBieSB0aGUgR29vZ2xlIEFQSSBQeXRob24gY2xpZW50IGxpYnJhcnkuCisgICAgcHJvamVjdF9pZDogc3RyaW5nLCBpZCBvZiB0aGUgR01FIHByb2plY3QuCisgICIiIgorCisgIHRhYmxlcyA9IHNlcnZpY2UudGFibGVzKCkubGlzdChwcm9qZWN0SWQ9cHJvamVjdF9pZCkuZXhlY3V0ZSgpCisgIGxvZ2dpbmcuaW5mbyhqc29uLmR1bXBzKHRhYmxlcywgaW5kZW50PTIpKQorCisKK2RlZiBVcGxvYWRTaGFwZWZpbGUoc2VydmljZSwgcHJvamVjdF9pZCwgc2hhcGVmaWxlX3ByZWZpeCk6CisgICIiIlVwbG9hZCBhIHNoYXBlZmlsZSB0byBhIGdpdmVuIHByb2plY3QsIGFuZCBkaXNwbGF5IHN0YXR1cyB3aGVuIGNvbXBsZXRlLgorCisgIEFyZ3M6CisgICAgc2VydmljZTogVGhlIHNlcnZpY2Ugb2JqZWN0IGJ1aWx0IGJ5IHRoZSBHb29nbGUgQVBJIFB5dGhvbiBjbGllbnQgbGlicmFyeS4KKyAgICBwcm9qZWN0X2lkOiBzdHJpbmcsIGlkIG9mIHRoZSBHTUUgcHJvamVjdC4KKyAgICBzaGFwZWZpbGVfcHJlZml4OiBzdHJpbmcsIHRoZSBzaGFwZWZpbGUgd2l0aG91dCB0aGUgLnNocCBzdWZmaXguCisKKyAgUmV0dXJuczoKKyAgICBTdHJpbmcgaWQgb2YgdGhlIHRhYmxlIGFzc2V0LgorICAiIiIKKyAgIyBBIHNoYXBlZmlsZSBpcyBhY3R1YWxseSBhIGJ1bmNoIG9mIGZpbGVzOyBHTUUgcmVxdWlyZXMgdGhlc2UgZm91ciBzdWZmaXhlcy4KKyAgc3VmZml4ZXMgPSBbInNocCIsICJkYmYiLCAicHJqIiwgInNoeCJdCisgIGZpbGVzID0gW10KKyAgZm9yIHN1ZmZpeCBpbiBzdWZmaXhlczoKKyAgICBmaWxlcy5hcHBlbmQoeworICAgICAgICAiZmlsZW5hbWUiOiAiJXMuJXMiICUgKHNoYXBlZmlsZV9wcmVmaXgsIHN1ZmZpeCkKKyAgICB9KQorICBtZXRhZGF0YSA9IHsKKyAgICAgICJwcm9qZWN0SWQiOiBwcm9qZWN0X2lkLAorICAgICAgIm5hbWUiOiBzaGFwZWZpbGVfcHJlZml4LAorICAgICAgImRlc2NyaXB0aW9uIjogInBvbHlnb25zIHRoYXQgd2VyZSB1cGxvYWRlZCBieSBhIHNjcmlwdCIsCisgICAgICAiZmlsZXMiOiBmaWxlcywKKyAgICAgICMgWW91IG5lZWQgdGhlIHN0cmluZyB2YWx1ZSBvZiBhIHZhbGlkIHNoYXJlZCBhbmQgcHVibGlzaGVkIEFDTAorICAgICAgIyBDaGVjayB0aGUgIkFjY2VzcyBMaXN0cyIgc2VjdGlvbiBvZiB0aGUgTWFwcyBFbmdpbmUgVUkgZm9yIGEgbGlzdC4KKyAgICAgICJkcmFmdEFjY2Vzc0xpc3QiOiAiTWFwIEVkaXRvcnMiLAorICAgICAgInRhZ3MiOiBbc2hhcGVmaWxlX3ByZWZpeCwgImF1dG9fdXBsb2FkIiwgImtpdHRlbnMiXQorICB9CisKKyAgbG9nZ2luZy5pbmZvKCJVcGxvYWRpbmcgbWV0YWRhdGEgZm9yICVzIiwgc2hhcGVmaWxlX3ByZWZpeCkKKyAgcmVzcG9uc2UgPSBzZXJ2aWNlLnRhYmxlcygpLnVwbG9hZChib2R5PW1ldGFkYXRhKS5leGVjdXRlKCkKKyAgIyBXZSBoYXZlIG5vdyBjcmVhdGVkIGFuIGVtcHR5IGFzc2V0LgorICB0YWJsZV9pZCA9IHJlc3BvbnNlWyJpZCJdCisKKyAgIyBBbmQgbm93IHVwbG9hZCBlYWNoIG9mIHRoZSBmaWxlcyBpbmRpdmlkdWFsbHksIHBhc3NpbmcgaW4gdGhlIHRhYmxlIGlkLgorICBmb3Igc3VmZml4IGluIHN1ZmZpeGVzOgorICAgIHNoYXBlZmlsZSA9ICIlcy4lcyIgJSAoc2hhcGVmaWxlX3ByZWZpeCwgc3VmZml4KQorICAgIG1lZGlhX2JvZHkgPSBNZWRpYUZpbGVVcGxvYWQoc2hhcGVmaWxlLCBtaW1ldHlwZT0iYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtIikKKyAgICBsb2dnaW5nLmluZm8oInVwbG9hZGluZyAlcyIsIHNoYXBlZmlsZSkKKworICAgIHJlc3BvbnNlID0gc2VydmljZS50YWJsZXMoKS5maWxlcygpLmluc2VydCgKKyAgICAgICAgaWQ9dGFibGVfaWQsCisgICAgICAgIGZpbGVuYW1lPXNoYXBlZmlsZSwKKyAgICAgICAgbWVkaWFfYm9keT1tZWRpYV9ib2R5KS5leGVjdXRlKCkKKworICAjIFdpdGggYWxsIGZpbGVzIHVwbG9hZGVkLCBjaGVjayBzdGF0dXMgb2YgdGhlIGFzc2V0IHRvIGVuc3VyZSBpdCdzIHByb2Nlc3NlZC4KKyAgQ2hlY2tBc3NldFN0YXR1cyhzZXJ2aWNlLCAidGFibGVzIiwgdGFibGVfaWQpCisgIHJldHVybiB0YWJsZV9pZAorCisKK2RlZiBDaGVja0Fzc2V0U3RhdHVzKHNlcnZpY2UsIGFzc2V0X3R5cGUsIGFzc2V0X2lkKToKKyAgZW5kcG9pbnQgPSBnZXRhdHRyKHNlcnZpY2UsIGFzc2V0X3R5cGUpCisgIHJlc3BvbnNlID0gZW5kcG9pbnQoKS5nZXQoaWQ9YXNzZXRfaWQpLmV4ZWN1dGUoKQorICBzdGF0dXMgPSByZXNwb25zZVsicHJvY2Vzc2luZ1N0YXR1cyJdCisgIGxvZ2dpbmcuaW5mbygiQXNzZXQgU3RhdHVzOiAlcyIsIHN0YXR1cykKKyAgaWYgc3RhdHVzIGluIFNVQ0NFU1NGVUxfU1RBVFVTOgorICAgIGxvZ2dpbmcuaW5mbygiYXNzZXQgc3VjY2Vzc2Z1bGx5IHByb2Nlc3NlZDsgdGhlIGlkIGlzICVzIiwgYXNzZXRfaWQpCisgIGVsc2U6CisgICAgbG9nZ2luZy5pbmZvKCJBc3NldCAlczsgd2lsbCBjaGVjayBhZ2FpbiBpbiA1IHNlY29uZHMiLCBzdGF0dXMpCisgICAgdGltZS5zbGVlcCg1KQorICAgIENoZWNrQXNzZXRTdGF0dXMoc2VydmljZSwgYXNzZXRfdHlwZSwgYXNzZXRfaWQpCisKKworZGVmIG1haW4oYXJndik6CisgICMgQXV0aGVudGljYXRlIGFuZCBjb25zdHJ1Y3Qgc2VydmljZS4KKyAgc2VydmljZSwgZmxhZ3MgPSBzYW1wbGVfdG9vbHMuaW5pdCgKKyAgICAgIGFyZ3YsICJtYXBzZW5naW5lIiwgInYxIiwgX19kb2NfXywgX19maWxlX18sIHBhcmVudHM9W2FyZ3BhcnNlcl0sCisgICAgICBzY29wZT0iaHR0cHM6Ly93d3cuZ29vZ2xlYXBpcy5jb20vYXV0aC9tYXBzZW5naW5lIikKKworICBpZiBmbGFncy5wcm9qZWN0X2lkOgorICAgICMgTGlzdFRhYmxlcyhzZXJ2aWNlLCBmbGFncy5wcm9qZWN0X2lkKQorICAgICMgVGhlIGV4YW1wbGUgcG9seWdvbnMgc2hhcGVmaWxlIHNob3VsZCBiZSBpbiB0aGlzIGRpcmVjdG9yeS4KKyAgICBmaWxlbmFtZSA9IGZsYWdzLnNoYXBlZmlsZSBvciAicG9seWdvbnMiCisgICAgdGFibGVfaWQgPSBVcGxvYWRTaGFwZWZpbGUoc2VydmljZSwgZmxhZ3MucHJvamVjdF9pZCwgZmlsZW5hbWUpCisgICAgbG9nZ2luZy5pbmZvKCJTdWNlc3NmdWxseSBjcmVhdGVkIHRhYmxlOiAlcyIsIHRhYmxlX2lkKQorICBlbHNlOgorICAgIExpc3RQcm9qZWN0cyhzZXJ2aWNlKQorICByZXR1cm4KKworCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICBtYWluKHN5cy5hcmd2KQpkaWZmIC0tZ2l0IGEvc2FtcGxlcy9tYXBzX2VuZ2luZS9wb2x5Z29ucy5kYmYgYi9zYW1wbGVzL21hcHNfZW5naW5lL3BvbHlnb25zLmRiZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZWVjYjgyCi0tLSAvZGV2L251bGwKKysrIGIvc2FtcGxlcy9tYXBzX2VuZ2luZS9wb2x5Z29ucy5kYmYKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvc2FtcGxlcy9tYXBzX2VuZ2luZS9wb2x5Z29ucy5wcmogYi9zYW1wbGVzL21hcHNfZW5naW5lL3BvbHlnb25zLnByagpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMzBjMDBhCi0tLSAvZGV2L251bGwKKysrIGIvc2FtcGxlcy9tYXBzX2VuZ2luZS9wb2x5Z29ucy5wcmoKQEAgLTAsMCArMSBAQAorR0VPR0NTWyJHQ1NfV0dTXzE5ODQiLERBVFVNWyJEX1dHU18xOTg0IixTUEhFUk9JRFsiV0dTXzE5ODQiLDYzNzgxMzcsMjk4LjI1NzIyMzU2M11dLFBSSU1FTVsiR3JlZW53aWNoIiwwXSxVTklUWyJEZWdyZWUiLDAuMDE3NDUzMjkyNTE5OTQzMjk1XV0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zYW1wbGVzL21hcHNfZW5naW5lL3BvbHlnb25zLnNocCBiL3NhbXBsZXMvbWFwc19lbmdpbmUvcG9seWdvbnMuc2hwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYyOTM4YmIKLS0tIC9kZXYvbnVsbAorKysgYi9zYW1wbGVzL21hcHNfZW5naW5lL3BvbHlnb25zLnNocApCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9zYW1wbGVzL21hcHNfZW5naW5lL3BvbHlnb25zLnNoeCBiL3NhbXBsZXMvbWFwc19lbmdpbmUvcG9seWdvbnMuc2h4Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE1MmU4ZDMKLS0tIC9kZXYvbnVsbAorKysgYi9zYW1wbGVzL21hcHNfZW5naW5lL3BvbHlnb25zLnNoeApCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9zYW1wbGVzL3ByZWRpY3Rpb24vbGFuZ3VhZ2VfaWQudHh0IGIvc2FtcGxlcy9wcmVkaWN0aW9uL2xhbmd1YWdlX2lkLnR4dAppbmRleCAxNjcxYjkyLi44YTdlOTg4IDEwMDY0NAotLS0gYS9zYW1wbGVzL3ByZWRpY3Rpb24vbGFuZ3VhZ2VfaWQudHh0CisrKyBiL3NhbXBsZXMvcHJlZGljdGlvbi9sYW5ndWFnZV9pZC50eHQKQEAgLTEsNiArMSw2IEBACiAiRnJlbmNoIiwgIk0uIGRlIFRyb2lzdmlsbGVzLCBjb21tZSBzJ2FwcGVsYWl0IGVuY29yZSBzYSBmYW1pbGxlIGVuIEdhc2NvZ25lLCBvdSBNLiBkZSBUcul2aWxsZSwgY29tbWUgaWwgYXZhaXQgZmluaSBwYXIgcydhcHBlbGVyIGx1aS1t6m1lIOAgUGFyaXMsIGF2YWl0IHLpZWxsZW1lbnQgY29tbWVuY+kgY29tbWUgZCdBcnRhZ25hbiwgYydlc3Qt4C1kaXJlIHNhbnMgdW4gc291IHZhaWxsYW50LCBtYWlzIGF2ZWMgY2UgZm9uZHMgZCdhdWRhY2UsIGQnZXNwcml0IGV0IGQnZW50ZW5kZW1lbnQgcXVpIGZhaXQgcXVlIGxlIHBsdXMgcGF1dnJlIGdlbnRpbGzidHJlIGdhc2NvbiByZedvaXQgc291dmVudCBwbHVzIGVuIHNlcyBlc3DpcmFuY2VzIGRlIGwnaOlyaXRhZ2UgcGF0ZXJuZWwgcXVlIGxlIHBsdXMgcmljaGUgZ2VudGlsaG9tbWUgcOlyaWdvdXJkaW4gb3UgYmVycmljaG9uIG5lIHJl529pdCBlbiBy6WFsaXTpLiBTYSBicmF2b3VyZSBpbnNvbGVudGUsIHNvbiBib25oZXVyIHBsdXMgaW5zb2xlbnQgZW5jb3JlIGRhbnMgdW4gdGVtcHMgb/kgbGVzIGNvdXBzIHBsZXV2YWllbnQgY29tbWUgZ3LqbGUsIGwnYXZhaWVudCBoaXNz6SBhdSBzb21tZXQgZGUgY2V0dGUg6WNoZWxsZSBkaWZmaWNpbGUgcXUnb24gYXBwZWxsZSBsYSBmYXZldXIgZGUgY291ciwgZXQgZG9udCBpbCBhdmFpdCBlc2NhbGFk6SBxdWF0cmUg4CBxdWF0cmUgbGVzIOljaGVsb25zLiIKICJTcGFuaXNoIiwgIiIKLSJFbmdsaXNoIiwgIkV0LCBzYWx1YW50IGxhIGRhbWUgZCd1biBzaWduZSBkZSB06nRlLCBpbCBzJ+lsYW7nYSBzdXIgc29uIGNoZXZhbCwgdGFuZGlzIHF1ZSBsZSBjb2NoZXIgZHUgY2Fycm9zc2UgZm91ZXR0YWl0IHZpZ291cmV1c2VtZW50IHNvbiBhdHRlbGFnZS4gTGVzIGRldXggaW50ZXJsb2N1dGV1cnMgcGFydGlyZW50IGRvbmMgYXUgZ2Fsb3AsIHMn6WxvaWduYW50IGNoYWN1biBwYXIgdW4gY/R06SBvcHBvc+kgZGUgbGEgcnVlLiIKKyJGcmVuY2giLCAiRXQsIHNhbHVhbnQgbGEgZGFtZSBkJ3VuIHNpZ25lIGRlIHTqdGUsIGlsIHMn6WxhbudhIHN1ciBzb24gY2hldmFsLCB0YW5kaXMgcXVlIGxlIGNvY2hlciBkdSBjYXJyb3NzZSBmb3VldHRhaXQgdmlnb3VyZXVzZW1lbnQgc29uIGF0dGVsYWdlLiBMZXMgZGV1eCBpbnRlcmxvY3V0ZXVycyBwYXJ0aXJlbnQgZG9uYyBhdSBnYWxvcCwgcyfpbG9pZ25hbnQgY2hhY3VuIHBhciB1biBj9HTpIG9wcG9z6SBkZSBsYSBydWUuIgogIkZyZW5jaCIsICJDZXR0ZSBtZW5hY2UgYWNoZXZhIGQnaW50aW1pZGVyIGwnaPR0ZS4gQXBy6HMgbGUgcm9pIGV0IE0uIGxlIGNhcmRpbmFsLCBNLiBkZSBUcul2aWxsZSDpdGFpdCBsJ2hvbW1lIGRvbnQgbGUgbm9tIHBldXQt6nRyZSDpdGFpdCBsZSBwbHVzIHNvdXZlbnQgculw6XTpIHBhciBsZXMgbWlsaXRhaXJlcyBldCBt6m1lIHBhciBsZXMgYm91cmdlb2lzLiBJbCB5IGF2YWl0IGJpZW4gbGUgcOhyZSBKb3NlcGgsIGMnZXN0IHZyYWk7IG1haXMgc29uIG5vbSDgIGx1aSBuJ+l0YWl0IGphbWFpcyBwcm9ub25j6SBxdWUgdG91dCBiYXMsIHRhbnQg6XRhaXQgZ3JhbmRlIGxhIHRlcnJldXIgcXUnaW5zcGlyYWl0IGwnyW1pbmVuY2UgZ3Jpc2UsIGNvbW1lIG9uIGFwcGVsYWl0IGxlIGZhbWlsaWVyIGR1IGNhcmRpbmFsLiIKICJFbmdsaXNoIiwgIidGb3VuZCBJVCwnIHRoZSBNb3VzZSByZXBsaWVkIHJhdGhlciBjcm9zc2x5OiAnb2YgY291cnNlIHlvdSBrbm93IHdoYXQgJ2l0JyBtZWFucy4nIgogIkVuZ2xpc2giLCAiJ09ubHkgYSB0aGltYmxlLCcgc2FpZCBBbGljZSBzYWRseS4iCkBAIC05LDcgKzksNyBAQAogIkVuZ2xpc2giLCAiQW5kIHNoZSB3ZW50IG9uIHBsYW5uaW5nIHRvIGhlcnNlbGYgaG93IHNoZSB3b3VsZCBtYW5hZ2UgaXQuICdUaGV5IG11c3QgZ28gYnkgdGhlIGNhcnJpZXIsJyBzaGUgdGhvdWdodDsgJ2FuZCBob3cgZnVubnkgaXQnbGwgc2VlbSwgc2VuZGluZyBwcmVzZW50cyB0byBvbmUncyBvd24gZmVldCEgQW5kIGhvdyBvZGQgdGhlIGRpcmVjdGlvbnMgd2lsbCBsb29rISIKICJTcGFuaXNoIiwgIkVuIGVmZXRvLCByZW1hdGFkbyB5YSBzdSBqdWljaW8sIHZpbm8gYSBkYXIgZW4gZWwgbeFzIGVzdHJh8W8gcGVuc2FtaWVudG8gcXVlIGphbeFzIGRpbyBsb2NvIGVuIGVsIG11bmRvOyB5IGZ1ZSBxdWUgbGUgcGFyZWNp8yBjb252ZW5pYmxlIHkgbmVjZXNhcmlvLCBhc+0gcGFyYSBlbCBhdW1lbnRvIGRlIHN1IGhvbnJhIGNvbW8gcGFyYSBlbCBzZXJ2aWNpbyBkZSBzdSByZXD6YmxpY2EsIGhhY2Vyc2UgY2FiYWxsZXJvIGFuZGFudGUsIHkgaXJzZSBwb3IgdG9kbyBlbCBtdW5kbyBjb24gc3VzIGFybWFzIHkgY2FiYWxsbyBhIGJ1c2NhciBsYXMgYXZlbnR1cmFzIHkgYSBlamVyY2l0YXJzZSBlbiB0b2RvIGFxdWVsbG8gcXVlIOlsIGhhYu1hIGxl7WRvIHF1ZSBsb3MgY2FiYWxsZXJvcyBhbmRhbnRlcyBzZSBlamVyY2l0YWJhbiwgZGVzaGFjaWVuZG8gdG9kbyBn6W5lcm8gZGUgYWdyYXZpbywgeSBwb25p6W5kb3NlIGVuIG9jYXNpb25lcyB5IHBlbGlncm9zIGRvbmRlLCBhY2Fi4W5kb2xvcywgY29icmFzZSBldGVybm8gbm9tYnJlIHkgZmFtYS4gSW1hZ2lu4WJhc2UgZWwgcG9icmUgeWEgY29yb25hZG8gcG9yIGVsIHZhbG9yIGRlIHN1IGJyYXpvLCBwb3IgbG8gbWVub3MsIGRlbCBpbXBlcmlvIGRlIFRyYXBpc29uZGE7IHkgYXPtLCBjb24gZXN0b3MgdGFuIGFncmFkYWJsZXMgcGVuc2FtaWVudG9zLCBsbGV2YWRvIGRlbCBlc3RyYfFvIGd1c3RvIHF1ZSBlbiBlbGxvcyBzZW507WEsIHNlIGRpbyBwcmllc2EgYSBwb25lciBlbiBlZmV0byBsbyBxdWUgZGVzZWFiYS4iCiAiRnJlbmNoIiwgIkwnaPR0ZSwgcXVpIG4n6XRhaXQgcGFzIGRvdekgZCd1bmUgZ3JhbmRlIHBlcnNwaWNhY2l06SwgbmUgcmVtYXJxdWEgcG9pbnQgbCdleHByZXNzaW9uIHF1ZSBzZXMgcGFyb2xlcyBhdmFpZW50IGRvbm7pZSDgIGxhIHBoeXNpb25vbWllIGRlIGwnaW5jb25udS4gQ2VsdWktY2kgcXVpdHRhIGxlIHJlYm9yZCBkZSBsYSBjcm9pc+llIHN1ciBsZXF1ZWwgaWwg6XRhaXQgdG91am91cnMgcmVzdOkgYXBwdXnpIGR1IGJvdXQgZHUgY291ZGUsIGV0IGZyb27nYSBsZSBzb3VyY2lsIGVuIGhvbW1lIGlucXVpZXQuIgotIkVuZ2xpc2giLCAiq0plIG5lIHZvdXMgcGFybGUgcGFzLCBtb25zaWV1ci4iCisiRnJlbmNoIiwgIqtKZSBuZSB2b3VzIHBhcmxlIHBhcywgbW9uc2lldXIuIgogIkZyZW5jaCIsICIiCiAiU3BhbmlzaCIsICIgICBCLiC/Q/NtbyBlc3ThaXMsIFJvY2luYW50ZSwgdGFuIGRlbGdhZG8/ICAgIFIuIFBvcnF1ZSBudW5jYSBzZSBjb21lLCB5IHNlIHRyYWJhamEuICAgIEIuIFB1ZXMsIL9xdekgZXMgZGUgbGEgY2ViYWRhIHkgZGUgbGEgcGFqYT8gICAgUi4gTm8gbWUgZGVqYSBtaSBhbW8gbmkgdW4gYm9jYWRvLiAgICBCLiBBbmThLCBzZfFvciwgcXVlIGVzdOFpcyBtdXkgbWFsIGNyaWFkbywgICAgcHVlcyB2dWVzdHJhIGxlbmd1YSBkZSBhc25vIGFsIGFtbyB1bHRyYWphLiAgICBSLiBBc25vIHNlIGVzIGRlIGxhIGN1bmEgYSBsYSBtb3J0YWphLiAgICC/UXVlculpc2xvIHZlcj8gTWlyYWxkbyBlbmFtb3JhZG8uICAgIEIuIL9FcyBuZWNlZGFkIGFtYXI/IFIuIE5vIGVzIGdyYW4gcHJ1ZGVuY2lhLiAgICBCLiBNZXRhZu1zaWNvIGVzdOFpcy4gUi4gRXMgcXVlIG5vIGNvbW8uICAgIEIuIFF1ZWphb3MgZGVsIGVzY3VkZXJvLiBSLiBObyBlcyBiYXN0YW50ZS4gICAgv0PzbW8gbWUgaGUgZGUgcXVlamFyIGVuIG1pIGRvbGVuY2lhLCAgICBzaSBlbCBhbW8geSBlc2N1ZGVybyBvIG1heW9yZG9tbyAgICBzb24gdGFuIHJvY2luZXMgY29tbyBSb2NpbmFudGU/IgogIkZyZW5jaCIsICKrTW9uIGZpbHMsIGF2YWl0IGRpdCBsZSBnZW50aWxob21tZSBnYXNjb24gLS0gZGFucyBjZSBwdXIgcGF0b2lzIGRlIELpYXJuIGRvbnQgSGVucmkgSVYgbidhdmFpdCBqYW1haXMgcHUgcGFydmVuaXIg4CBzZSBk6WZhaXJlIC0tLCBtb24gZmlscywgY2UgY2hldmFsIGVzdCBu6SBkYW5zIGxhIG1haXNvbiBkZSB2b3RyZSBw6HJlLCBpbCB5IGEgdGFudPR0IHRyZWl6ZSBhbnMsIGV0IHkgZXN0IHJlc3TpIGRlcHVpcyBjZSB0ZW1wcy1s4CwgY2UgcXVpIGRvaXQgdm91cyBwb3J0ZXIg4CBsJ2FpbWVyLiBOZSBsZSB2ZW5kZXogamFtYWlzLCBsYWlzc2V6LWxlIG1vdXJpciB0cmFucXVpbGxlbWVudCBldCBob25vcmFibGVtZW50IGRlIHZpZWlsbGVzc2UsIGV0IHNpIHZvdXMgZmFpdGVzIGNhbXBhZ25lIGF2ZWMgbHVpLCBt6W5hZ2V6LWxlIGNvbW1lIHZvdXMgbeluYWdlcmlleiB1biB2aWV1eCBzZXJ2aXRldXIuIMAgbGEgY291ciwgY29udGludWEgTS4gZCdBcnRhZ25hbiBw6HJlLCBzaSB0b3V0ZWZvaXMgdm91cyBhdmV6IGwnaG9ubmV1ciBkJ3kgYWxsZXIsIGhvbm5ldXIgYXVxdWVsLCBkdSByZXN0ZSwgdm90cmUgdmllaWxsZSBub2JsZXNzZSB2b3VzIGRvbm5lIGRlcyBkcm9pdHMsIHNvdXRlbmV6IGRpZ25lbWVudCB2b3RyZSBub20gZGUgZ2VudGlsaG9tbWUsIHF1aSBhIOl06SBwb3J06SBkaWduZW1lbnQgcGFyIHZvcyBhbmPqdHJlcyBkZXB1aXMgcGx1cyBkZSBjaW5xIGNlbnRzIGFucy4gUG91ciB2b3VzIGV0IHBvdXIgbGVzIHb0dHJlcyAtLSBwYXIgbGVzIHb0dHJlcywgaidlbnRlbmRzIHZvcyBwYXJlbnRzIGV0IHZvcyBhbWlzIC0tLCBuZSBzdXBwb3J0ZXogamFtYWlzIHJpZW4gcXVlIGRlIE0uIGxlIGNhcmRpbmFsIGV0IGR1IHJvaS4gQydlc3QgcGFyIHNvbiBjb3VyYWdlLCBlbnRlbmRlei12b3VzIGJpZW4sIHBhciBzb24gY291cmFnZSBzZXVsLCBxdSd1biBnZW50aWxob21tZSBmYWl0IHNvbiBjaGVtaW4gYXVqb3VyZCdodWkuIFF1aWNvbnF1ZSB0cmVtYmxlIHVuZSBzZWNvbmRlIGxhaXNzZSBwZXV0Lep0cmUg6WNoYXBwZXIgbCdhcHDidCBxdWUsIHBlbmRhbnQgY2V0dGUgc2Vjb25kZSBqdXN0ZW1lbnQsIGxhIGZvcnR1bmUgbHVpIHRlbmRhaXQuIFZvdXMg6nRlcyBqZXVuZSwgdm91cyBkZXZleiDqdHJlIGJyYXZlIHBhciBkZXV4IHJhaXNvbnM6IGxhIHByZW1p6HJlLCBjJ2VzdCBxdWUgdm91cyDqdGVzIEdhc2NvbiwgZXQgbGEgc2Vjb25kZSwgYydlc3QgcXVlIHZvdXMg6nRlcyBtb24gZmlscy4gTmUgY3JhaWduZXogcGFzIGxlcyBvY2Nhc2lvbnMgZXQgY2hlcmNoZXogbGVzIGF2ZW50dXJlcy4gSmUgdm91cyBhaSBmYWl0IGFwcHJlbmRyZSDgIG1hbmllciBsJ+lw6WU7IHZvdXMgYXZleiB1biBqYXJyZXQgZGUgZmVyLCB1biBwb2lnbmV0IGQnYWNpZXI7IGJhdHRlei12b3VzIOAgdG91dCBwcm9wb3M7IGJhdHRlei12b3VzIGQnYXV0YW50IHBsdXMgcXVlIGxlcyBkdWVscyBzb250IGTpZmVuZHVzLCBldCBxdWUsIHBhciBjb25z6XF1ZW50LCBpbCB5IGEgZGV1eCBmb2lzIGR1IGNvdXJhZ2Ug4CBzZSBiYXR0cmUuIEplIG4nYWksIG1vbiBmaWxzLCDgIHZvdXMgZG9ubmVyIHF1ZSBxdWluemUg6WN1cywgbW9uIGNoZXZhbCBldCBsZXMgY29uc2VpbHMgcXVlIHZvdXMgdmVuZXogZCdlbnRlbmRyZS4gVm90cmUgbehyZSB5IGFqb3V0ZXJhIGxhIHJlY2V0dGUgZCd1biBjZXJ0YWluIGJhdW1lIHF1J2VsbGUgdGllbnQgZCd1bmUgYm9o6W1pZW5uZSwgZXQgcXVpIGEgdW5lIHZlcnR1IG1pcmFjdWxldXNlIHBvdXIgZ3XpcmlyIHRvdXRlIGJsZXNzdXJlIHF1aSBuJ2F0dGVpbnQgcGFzIGxlIGNvZXVyLiBGYWl0ZXMgdm90cmUgcHJvZml0IGR1IHRvdXQsIGV0IHZpdmV6IGhldXJldXNlbWVudCBldCBsb25ndGVtcHMuIC0tIEplIG4nYWkgcGx1cyBxdSd1biBtb3Qg4CBham91dGVyLCBldCBjJ2VzdCB1biBleGVtcGxlIHF1ZSBqZSB2b3VzIHByb3Bvc2UsIG5vbiBwYXMgbGUgbWllbiwgY2FyIGplIG4nYWksIG1vaSwgamFtYWlzIHBhcnUg4CBsYSBjb3VyIGV0IG4nYWkgZmFpdCBxdWUgbGVzIGd1ZXJyZXMgZGUgcmVsaWdpb24gZW4gdm9sb250YWlyZTsgamUgdmV1eCBwYXJsZXIgZGUgTS4gZGUgVHLpdmlsbGUsIHF1aSDpdGFpdCBtb24gdm9pc2luIGF1dHJlZm9pcywgZXQgcXVpIGEgZXUgbCdob25uZXVyIGRlIGpvdWVyIHRvdXQgZW5mYW50IGF2ZWMgbm90cmUgcm9pIExvdWlzIHRyZWl6aehtZSwgcXVlIERpZXUgY29uc2VydmUhIFF1ZWxxdWVmb2lzIGxldXJzIGpldXggZOln6W7pcmFpZW50IGVuIGJhdGFpbGxlIGV0IGRhbnMgY2VzIGJhdGFpbGxlcyBsZSByb2kgbifpdGFpdCBwYXMgdG91am91cnMgbGUgcGx1cyBmb3J0LiBMZXMgY291cHMgcXUnaWwgZW4gcmXndXQgbHVpIGRvbm7ocmVudCBiZWF1Y291cCBkJ2VzdGltZSBldCBkJ2FtaXRp6SBwb3VyIE0uIGRlIFRy6XZpbGxlLiBQbHVzIHRhcmQsIE0uIGRlIFRy6XZpbGxlIHNlIGJhdHRpdCBjb250cmUgZCdhdXRyZXMgZGFucyBzb24gcHJlbWllciB2b3lhZ2Ug4CBQYXJpcywgY2lucSBmb2lzOyBkZXB1aXMgbGEgbW9ydCBkdSBmZXUgcm9pIGp1c3F1J+AgbGEgbWFqb3JpdOkgZHUgamV1bmUgc2FucyBjb21wdGVyIGxlcyBndWVycmVzIGV0IGxlcyBzaehnZXMsIHNlcHQgZm9pczsgZXQgZGVwdWlzIGNldHRlIG1ham9yaXTpIGp1c3F1J2F1am91cmQnaHVpLCBjZW50IGZvaXMgcGV1dC3qdHJlISAtLSBBdXNzaSwgbWFsZ3LpIGxlcyDpZGl0cywgbGVzIG9yZG9ubmFuY2VzIGV0IGxlcyBhcnLqdHMsIGxlIHZvaWzgIGNhcGl0YWluZSBkZXMgbW91c3F1ZXRhaXJlcywgYydlc3Qt4C1kaXJlIGNoZWYgZCd1bmUgbOlnaW9uIGRlIEPpc2FycywgZG9udCBsZSByb2kgZmFpdCB1biB0cuhzIGdyYW5kIGNhcywgZXQgcXVlIE0uIGxlIGNhcmRpbmFsIHJlZG91dGUsIGx1aSBxdWkgbmUgcmVkb3V0ZSBwYXMgZ3JhbmQtY2hvc2UsIGNvbW1lIGNoYWN1biBzYWl0LiBEZSBwbHVzLCBNLiBkZSBUcul2aWxsZSBnYWduZSBkaXggbWlsbGUg6WN1cyBwYXIgYW47IGMnZXN0IGRvbmMgdW4gZm9ydCBncmFuZCBzZWlnbmV1ci4gLS0gSWwgYSBjb21tZW5j6SBjb21tZSB2b3VzLCBhbGxleiBsZSB2b2lyIGF2ZWMgY2V0dGUgbGV0dHJlLCBldCBy6WdsZXotdm91cyBzdXIgbHVpLCBhZmluIGRlIGZhaXJlIGNvbW1lIGx1aS67IgpAQCAtMTgsNyArMTgsNyBAQAogIlNwYW5pc2giLCAiU29uZXRvIgogIkVuZ2xpc2giLCAiU28gc2hlIHN3YWxsb3dlZCBvbmUgb2YgdGhlIGNha2VzLCBhbmQgd2FzIGRlbGlnaHRlZCB0byBmaW5kIHRoYXQgc2hlIGJlZ2FuIHNocmlua2luZyBkaXJlY3RseS4gQXMgc29vbiBhcyBzaGUgd2FzIHNtYWxsIGVub3VnaCB0byBnZXQgdGhyb3VnaCB0aGUgZG9vciwgc2hlIHJhbiBvdXQgb2YgdGhlIGhvdXNlLCBhbmQgZm91bmQgcXVpdGUgYSBjcm93ZCBvZiBsaXR0bGUgYW5pbWFscyBhbmQgYmlyZHMgd2FpdGluZyBvdXRzaWRlLiBUaGUgcG9vciBsaXR0bGUgTGl6YXJkLCBCaWxsLCB3YXMgaW4gdGhlIG1pZGRsZSwgYmVpbmcgaGVsZCB1cCBieSB0d28gZ3VpbmVhLXBpZ3MsIHdobyB3ZXJlIGdpdmluZyBpdCBzb21ldGhpbmcgb3V0IG9mIGEgYm90dGxlLiBUaGV5IGFsbCBtYWRlIGEgcnVzaCBhdCBBbGljZSB0aGUgbW9tZW50IHNoZSBhcHBlYXJlZDsgYnV0IHNoZSByYW4gb2ZmIGFzIGhhcmQgYXMgc2hlIGNvdWxkLCBhbmQgc29vbiBmb3VuZCBoZXJzZWxmIHNhZmUgaW4gYSB0aGljayB3b29kLiIKICJFbmdsaXNoIiwgIiIKLSJFbmdsaXNoIiwgIqtMYSBwZXN0ZSBzb2l0IGRlcyBHYXNjb25zISBSZW1ldHRlei1sZSBzdXIgc29uIGNoZXZhbCBvcmFuZ2UsIGV0IHF1J2lsIHMnZW4gYWlsbGUhIgorIkZyZW5jaCIsICKrTGEgcGVzdGUgc29pdCBkZXMgR2FzY29ucyEgUmVtZXR0ZXotbGUgc3VyIHNvbiBjaGV2YWwgb3JhbmdlLCBldCBxdSdpbCBzJ2VuIGFpbGxlISIKICJGcmVuY2giLCAiTGUgc2V1bCBjYXRhbG9ndWUgZGVzIGxpdnJlcyBxdWUgbm91cyBs+21lcyBwb3VyIGFycml2ZXIg4CBjZSBidXQgcmVtcGxpcmFpdCB1biBmZXVpbGxldG9uIHRvdXQgZW50aWVyLCBjZSBxdWkgc2VyYWl0IHBldXQt6nRyZSBmb3J0IGluc3RydWN0aWYsIG1haXMg4CBjb3VwcyBz+3IgcGV1IGFtdXNhbnQgcG91ciBub3MgbGVjdGV1cnMuIE5vdXMgbm91cyBjb250ZW50ZXJvbnMgZG9uYyBkZSBsZXVyIGRpcmUgcXUnYXUgbW9tZW50IG/5LCBk6WNvdXJhZ+kgZGUgdGFudCBkJ2ludmVzdGlnYXRpb25zIGluZnJ1Y3R1ZXVzZXMsIG5vdXMgYWxsaW9ucyBhYmFuZG9ubmVyIG5vdHJlIHJlY2hlcmNoZSwgbm91cyB0cm91duJtZXMgZW5maW4sIGd1aWTpIHBhciBsZXMgY29uc2VpbHMgZGUgbm90cmUgaWxsdXN0cmUgZXQgc2F2YW50IGFtaSBQYXVsaW4gUGFyaXMsIHVuIG1hbnVzY3JpdCBpbi1mb2xpbywgY2906SBsZSBusCA0NzcyIG91IDQ3NzMsIG5vdXMgbmUgbm91cyBsZSByYXBwZWxvbnMgcGx1cyBiaWVuLCBheWFudCBwb3VyIHRpdHJlOiIKICJGcmVuY2giLCAiLS0gUXVpLCBlbGxlPyBkZW1hbmRhIGwnaPR0ZS4iCiAiRW5nbGlzaCIsICIiCkBAIC00Niw3ICs0Niw3IEBACiAiRW5nbGlzaCIsICJUaGlzIHNlZW1lZCB0byBBbGljZSBhIGdvb2Qgb3Bwb3J0dW5pdHkgZm9yIG1ha2luZyBoZXIgZXNjYXBlOyBzbyBzaGUgc2V0IG9mZiBhdCBvbmNlLCBhbmQgcmFuIHRpbGwgc2hlIHdhcyBxdWl0ZSB0aXJlZCBhbmQgb3V0IG9mIGJyZWF0aCwgYW5kIHRpbGwgdGhlIHB1cHB5J3MgYmFyayBzb3VuZGVkIHF1aXRlIGZhaW50IGluIHRoZSBkaXN0YW5jZS4iCiAiU3BhbmlzaCIsICIgICBVcmdhbmRhIGxhIGRlc2Nvbm9jaWRhICAgIFNpIGRlIGxsZWdhcnRlIGEgbG9zIGJ1ZS0sICAgIGxpYnJvLCBmdWVyZXMgY29uIGxldHUtLCAgICBubyB0ZSBkaXLhIGVsIGJvcXVpcnJ1LSAgICBxdWUgbm8gcG9uZXMgYmllbiBsb3MgZGUtLiAgICBNYXMgc2kgZWwgcGFuIG5vIHNlIHRlIGN1ZS0gICAgcG9yIGlyIGEgbWFub3MgZGUgaWRpby0sICAgIHZlcuFzIGRlIG1hbm9zIGEgYm8tLCAgICBhdW4gbm8gZGFyIHVuYSBlbiBlbCBjbGEtLCAgICBzaSBiaWVuIHNlIGNvbWVuIGxhcyBtYS0gICAgcG9yIG1vc3RyYXIgcXVlIHNvbiBjdXJpby0uICAgIFksIHB1ZXMgbGEgZXhwaXJpZW5jaWEgZW5zZS0gICAgcXVlIGVsIHF1ZSBhIGJ1ZW4g4XJib2wgc2UgYXJyaS0gICAgYnVlbmEgc29tYnJhIGxlIGNvYmktLCAgICBlbiBC6WphciB0dSBidWVuYSBlc3RyZS0gICAgdW4g4XJib2wgcmVhbCB0ZSBvZnJlLSAgICBxdWUgZGEgcHLtbmNpcGVzIHBvciBmcnUtLCAgICBlbiBlbCBjdWFsIGZsb3JlY2nzIHVuIGR1LSAgICBxdWUgZXMgbnVldm8gQWxlamFuZHJvIE1hLTogICAgbGxlZ2EgYSBzdSBzb21icmEsIHF1ZSBhIG9zYS0gICAgZmF2b3JlY2UgbGEgZm9ydHUtLiAgICBEZSB1biBub2JsZSBoaWRhbGdvIG1hbmNoZS0gICAgY29udGFy4XMgbGFzIGF2ZW50dS0sICAgIGEgcXVpZW4gb2Npb3NhcyBsZXR1LSwgICAgdHJhc3Rvcm5hcm9uIGxhIGNhYmUtOiAgICBkYW1hcywgYXJtYXMsIGNhYmFsbGUtLCAgICBsZSBwcm92b2Nhcm9uIGRlIG1vLSwgICAgcXVlLCBjdWFsIE9ybGFuZG8gZnVyaW8tLCAgICB0ZW1wbGFkbyBhIGxvIGVuYW1vcmEtLCAgICBhbGNhbnrzIGEgZnVlcnphIGRlIGJyYS0gICAgYSBEdWxjaW5lYSBkZWwgVG9iby0uICAgIE5vIGluZGlzY3JldG9zIGhpZXJvZ2ztLSAgICBlc3RhbXBlcyBlbiBlbCBlc2N1LSwgICAgcXVlLCBjdWFuZG8gZXMgdG9kbyBmaWd1LSwgICAgY29uIHJ1aW5lcyBwdW50b3Mgc2UgZW52aS0uICAgIFNpIGVuIGxhIGRpcmVjY2nzbiB0ZSBodW1pLSwiCiAiRnJlbmNoIiwgIi0tIEVsbGVzIHNvbnQgcmVuZmVybellcyBkYW5zIGNldHRlIGJv7nRlLCBxdWUgdm91cyBuJ291dnJpcmV6IHF1ZSBkZSBsJ2F1dHJlIGP0dOkgZGUgbGEgTWFuY2hlLiIKLSJFbmdsaXNoIiwgIlkgY29uIGVzdG8sIERpb3MgdGUgZOkgc2FsdWQsIHkgYSBt7SBubyBvbHZpZGUuIFZhbGUuIgorIlNwYW5pc2giLCAiWSBjb24gZXN0bywgRGlvcyB0ZSBk6SBzYWx1ZCwgeSBhIG3tIG5vIG9sdmlkZS4gVmFsZS4iCiAiRW5nbGlzaCIsICJBbGljZSB0b29rIHVwIHRoZSBmYW4gYW5kIGdsb3ZlcywgYW5kLCBhcyB0aGUgaGFsbCB3YXMgdmVyeSBob3QsIHNoZSBrZXB0IGZhbm5pbmcgaGVyc2VsZiBhbGwgdGhlIHRpbWUgc2hlIHdlbnQgb24gdGFsa2luZzogJ0RlYXIsIGRlYXIhIEhvdyBxdWVlciBldmVyeXRoaW5nIGlzIHRvLWRheSEgQW5kIHllc3RlcmRheSB0aGluZ3Mgd2VudCBvbiBqdXN0IGFzIHVzdWFsLiBJIHdvbmRlciBpZiBJJ3ZlIGJlZW4gY2hhbmdlZCBpbiB0aGUgbmlnaHQ/IExldCBtZSB0aGluazogd2FzIEkgdGhlIHNhbWUgd2hlbiBJIGdvdCB1cCB0aGlzIG1vcm5pbmc/IEkgYWxtb3N0IHRoaW5rIEkgY2FuIHJlbWVtYmVyIGZlZWxpbmcgYSBsaXR0bGUgZGlmZmVyZW50LiBCdXQgaWYgSSdtIG5vdCB0aGUgc2FtZSwgdGhlIG5leHQgcXVlc3Rpb24gaXMsIFdobyBpbiB0aGUgd29ybGQgYW0gST8gQWgsIFRIQVQnUyB0aGUgZ3JlYXQgcHV6emxlIScgQW5kIHNoZSBiZWdhbiB0aGlua2luZyBvdmVyIGFsbCB0aGUgY2hpbGRyZW4gc2hlIGtuZXcgdGhhdCB3ZXJlIG9mIHRoZSBzYW1lIGFnZSBhcyBoZXJzZWxmLCB0byBzZWUgaWYgc2hlIGNvdWxkIGhhdmUgYmVlbiBjaGFuZ2VkIGZvciBhbnkgb2YgdGhlbS4iCiAiRW5nbGlzaCIsICJTaGUgd2FpdGVkIGZvciBzb21lIHRpbWUgd2l0aG91dCBoZWFyaW5nIGFueXRoaW5nIG1vcmU6IGF0IGxhc3QgY2FtZSBhIHJ1bWJsaW5nIG9mIGxpdHRsZSBjYXJ0d2hlZWxzLCBhbmQgdGhlIHNvdW5kIG9mIGEgZ29vZCBtYW55IHZvaWNlcyBhbGwgdGFsa2luZyB0b2dldGhlcjogc2hlIG1hZGUgb3V0IHRoZSB3b3JkczogJ1doZXJlJ3MgdGhlIG90aGVyIGxhZGRlcj8tLVdoeSwgSSBoYWRuJ3QgdG8gYnJpbmcgYnV0IG9uZTsgQmlsbCdzIGdvdCB0aGUgb3RoZXItLUJpbGwhIGZldGNoIGl0IGhlcmUsIGxhZCEtLUhlcmUsIHB1dCAnZW0gdXAgYXQgdGhpcyBjb3JuZXItLU5vLCB0aWUgJ2VtIHRvZ2V0aGVyIGZpcnN0LS10aGV5IGRvbid0IHJlYWNoIGhhbGYgaGlnaCBlbm91Z2ggeWV0LS1PaCEgdGhleSdsbCBkbyB3ZWxsIGVub3VnaDsgZG9uJ3QgYmUgcGFydGljdWxhci0tSGVyZSwgQmlsbCEgY2F0Y2ggaG9sZCBvZiB0aGlzIHJvcGUtLVdpbGwgdGhlIHJvb2YgYmVhcj8tLU1pbmQgdGhhdCBsb29zZSBzbGF0ZS0tT2gsIGl0J3MgY29taW5nIGRvd24hIEhlYWRzIGJlbG93IScgKGEgbG91ZCBjcmFzaCktLSdOb3csIHdobyBkaWQgdGhhdD8tLUl0IHdhcyBCaWxsLCBJIGZhbmN5LS1XaG8ncyB0byBnbyBkb3duIHRoZSBjaGltbmV5Py0tTmF5LCBJIHNoYW4ndCEgWU9VIGRvIGl0IS0tVGhhdCBJIHdvbid0LCB0aGVuIS0tQmlsbCdzIHRvIGdvIGRvd24tLUhlcmUsIEJpbGwhIHRoZSBtYXN0ZXIgc2F5cyB5b3UncmUgdG8gZ28gZG93biB0aGUgY2hpbW5leSEnIgogIkZyZW5jaCIsICItLSBWb3VzIGF2ZXogcmFpc29uLCBzJ+ljcmlhIGxlIGdlbnRpbGhvbW1lOyBwYXJ0ZXogZG9uYyBkZSB2b3RyZSBj9HTpLCBtb2ksIGplIHBhcnMgZHUgbWllbi67IgpAQCAtNjYsNyArNjYsNyBAQAogIkZyZW5jaCIsICItLSBKZSBuZSByaXMgcGFzIHNvdXZlbnQsIG1vbnNpZXVyLCByZXByaXQgbCdpbmNvbm51LCBhaW5zaSBxdWUgdm91cyBwb3V2ZXogbGUgdm9pciB2b3VzLW3qbWUg4CBsJ2FpciBkZSBtb24gdmlzYWdlOyBtYWlzIGplIHRpZW5zIGNlcGVuZGFudCDgIGNvbnNlcnZlciBsZSBwcml2aWzoZ2UgZGUgcmlyZSBxdWFuZCBpbCBtZSBwbGHudC4iCiAiRnJlbmNoIiwgIiIKICJTcGFuaXNoIiwgIiAgIC1QYXJhIG3tLCBzZfFvciBjYXN0ZWxsYW5vLCBjdWFscXVpZXJhIGNvc2EgYmFzdGEsIHBvcnF1ZSAgICBtaXMgYXJyZW9zIHNvbiBsYXMgYXJtYXMsICAgIG1pIGRlc2NhbnNvIGVsIHBlbGVhciwgZXRjLiIKLSJFbmdsaXNoIiwgIklsIOl0YWl0IGwnYW1pIGR1IHJvaSwgbGVxdWVsIGhvbm9yYWl0IGZvcnQsIGNvbW1lIGNoYWN1biBzYWl0LCBsYSBt6W1vaXJlIGRlIHNvbiBw6HJlIEhlbnJpIElWLiBMZSBw6HJlIGRlIE0uIGRlIFRy6XZpbGxlIGwnYXZhaXQgc2kgZmlk6GxlbWVudCBzZXJ2aSBkYW5zIHNlcyBndWVycmVzIGNvbnRyZSBsYSBMaWd1ZSwgcXUn4CBk6WZhdXQgZCdhcmdlbnQgY29tcHRhbnQgLS0gY2hvc2UgcXVpIHRvdXRlIGxhIHZpZSBtYW5xdWEgYXUgQulhcm5haXMsIGxlcXVlbCBwYXlhIGNvbnN0YW1tZW50IHNlcyBkZXR0ZXMgYXZlYyBsYSBzZXVsZSBjaG9zZSBxdSdpbCBuJ2X7dCBqYW1haXMgYmVzb2luIGQnZW1wcnVudGVyLCBjJ2VzdC3gLWRpcmUgYXZlYyBkZSBsJ2VzcHJpdCAtLSwgcXUn4CBk6WZhdXQgZCdhcmdlbnQgY29tcHRhbnQsIGRpc29ucy1ub3VzLCBpbCBsJ2F2YWl0IGF1dG9yaXPpLCBhcHLocyBsYSByZWRkaXRpb24gZGUgUGFyaXMsIOAgcHJlbmRyZSBwb3VyIGFybWVzIHVuIGxpb24gZCdvciBwYXNzYW50IHN1ciBndWV1bGVzIGF2ZWMgY2V0dGUgZGV2aXNlOiBfRmlkZWxpcyBldCBmb3J0aXNfLiBDJ+l0YWl0IGJlYXVjb3VwIHBvdXIgbCdob25uZXVyLCBtYWlzIGMn6XRhaXQgbelkaW9jcmUgcG91ciBsZSBiaWVuLep0cmUuIEF1c3NpLCBxdWFuZCBsJ2lsbHVzdHJlIGNvbXBhZ25vbiBkdSBncmFuZCBIZW5yaSBtb3VydXQsIGlsIGxhaXNzYSBwb3VyIHNldWwgaOlyaXRhZ2Ug4CBtb25zaWV1ciBzb24gZmlscyBzb24g6XDpZSBldCBzYSBkZXZpc2UuIEdy4mNlIOAgY2UgZG91YmxlIGRvbiBldCBhdSBub20gc2FucyB0YWNoZSBxdWkgbCdhY2NvbXBhZ25haXQsIE0uIGRlIFRy6XZpbGxlIGZ1dCBhZG1pcyBkYW5zIGxhIG1haXNvbiBkdSBqZXVuZSBwcmluY2UsIG/5IGlsIHNlcnZpdCBzaSBiaWVuIGRlIHNvbiDpcOllIGV0IGZ1dCBzaSBmaWTobGUg4CBzYSBkZXZpc2UsIHF1ZSBMb3VpcyBYSUlJLCB1bmUgZGVzIGJvbm5lcyBsYW1lcyBkdSByb3lhdW1lLCBhdmFpdCBsJ2hhYml0dWRlIGRlIGRpcmUgcXVlLCBzJ2lsIGF2YWl0IHVuIGFtaSBxdWkgc2UgYmF0dO50LCBpbCBsdWkgZG9ubmVyYWl0IGxlIGNvbnNlaWwgZGUgcHJlbmRyZSBwb3VyIHNlY29uZCwgbHVpIGQnYWJvcmQsIGV0IFRy6XZpbGxlIGFwcuhzLCBldCBwZXV0Lep0cmUgbeptZSBhdmFudCBsdWkuIgorIkZyZW5jaCIsICJJbCDpdGFpdCBsJ2FtaSBkdSByb2ksIGxlcXVlbCBob25vcmFpdCBmb3J0LCBjb21tZSBjaGFjdW4gc2FpdCwgbGEgbeltb2lyZSBkZSBzb24gcOhyZSBIZW5yaSBJVi4gTGUgcOhyZSBkZSBNLiBkZSBUcul2aWxsZSBsJ2F2YWl0IHNpIGZpZOhsZW1lbnQgc2VydmkgZGFucyBzZXMgZ3VlcnJlcyBjb250cmUgbGEgTGlndWUsIHF1J+AgZOlmYXV0IGQnYXJnZW50IGNvbXB0YW50IC0tIGNob3NlIHF1aSB0b3V0ZSBsYSB2aWUgbWFucXVhIGF1IELpYXJuYWlzLCBsZXF1ZWwgcGF5YSBjb25zdGFtbWVudCBzZXMgZGV0dGVzIGF2ZWMgbGEgc2V1bGUgY2hvc2UgcXUnaWwgbidl+3QgamFtYWlzIGJlc29pbiBkJ2VtcHJ1bnRlciwgYydlc3Qt4C1kaXJlIGF2ZWMgZGUgbCdlc3ByaXQgLS0sIHF1J+AgZOlmYXV0IGQnYXJnZW50IGNvbXB0YW50LCBkaXNvbnMtbm91cywgaWwgbCdhdmFpdCBhdXRvcmlz6SwgYXBy6HMgbGEgcmVkZGl0aW9uIGRlIFBhcmlzLCDgIHByZW5kcmUgcG91ciBhcm1lcyB1biBsaW9uIGQnb3IgcGFzc2FudCBzdXIgZ3VldWxlcyBhdmVjIGNldHRlIGRldmlzZTogX0ZpZGVsaXMgZXQgZm9ydGlzXy4gQyfpdGFpdCBiZWF1Y291cCBwb3VyIGwnaG9ubmV1ciwgbWFpcyBjJ+l0YWl0IG3pZGlvY3JlIHBvdXIgbGUgYmllbi3qdHJlLiBBdXNzaSwgcXVhbmQgbCdpbGx1c3RyZSBjb21wYWdub24gZHUgZ3JhbmQgSGVucmkgbW91cnV0LCBpbCBsYWlzc2EgcG91ciBzZXVsIGjpcml0YWdlIOAgbW9uc2lldXIgc29uIGZpbHMgc29uIOlw6WUgZXQgc2EgZGV2aXNlLiBHcuJjZSDgIGNlIGRvdWJsZSBkb24gZXQgYXUgbm9tIHNhbnMgdGFjaGUgcXVpIGwnYWNjb21wYWduYWl0LCBNLiBkZSBUcul2aWxsZSBmdXQgYWRtaXMgZGFucyBsYSBtYWlzb24gZHUgamV1bmUgcHJpbmNlLCBv+SBpbCBzZXJ2aXQgc2kgYmllbiBkZSBzb24g6XDpZSBldCBmdXQgc2kgZmlk6GxlIOAgc2EgZGV2aXNlLCBxdWUgTG91aXMgWElJSSwgdW5lIGRlcyBib25uZXMgbGFtZXMgZHUgcm95YXVtZSwgYXZhaXQgbCdoYWJpdHVkZSBkZSBkaXJlIHF1ZSwgcydpbCBhdmFpdCB1biBhbWkgcXVpIHNlIGJhdHTudCwgaWwgbHVpIGRvbm5lcmFpdCBsZSBjb25zZWlsIGRlIHByZW5kcmUgcG91ciBzZWNvbmQsIGx1aSBkJ2Fib3JkLCBldCBUcul2aWxsZSBhcHLocywgZXQgcGV1dC3qdHJlIG3qbWUgYXZhbnQgbHVpLiIKICJFbmdsaXNoIiwgIlBvb3IgQWxpY2UhIEl0IHdhcyBhcyBtdWNoIGFzIHNoZSBjb3VsZCBkbywgbHlpbmcgZG93biBvbiBvbmUgc2lkZSwgdG8gbG9vayB0aHJvdWdoIGludG8gdGhlIGdhcmRlbiB3aXRoIG9uZSBleWU7IGJ1dCB0byBnZXQgdGhyb3VnaCB3YXMgbW9yZSBob3BlbGVzcyB0aGFuIGV2ZXI6IHNoZSBzYXQgZG93biBhbmQgYmVnYW4gdG8gY3J5IGFnYWluLiIKICJTcGFuaXNoIiwgIi1Qb3IgRGlvcywgaGVybWFubywgcXVlIGFnb3JhIG1lIGFjYWJvIGRlIGRlc2VuZ2HxYXIgZGUgdW4gZW5nYfFvIGVuIHF1ZSBoZSBlc3RhZG8gdG9kbyBlbCBtdWNobyB0aWVtcG8gcXVlIGhhIHF1ZSBvcyBjb25vemNvLCBlbiBlbCBjdWFsIHNpZW1wcmUgb3MgaGUgdGVuaWRvIHBvciBkaXNjcmV0byB5IHBydWRlbnRlIGVuIHRvZGFzIHZ1ZXN0cmFzIGFjaW9uZXMuIFBlcm8gYWdvcmEgdmVvIHF1ZSBlc3ThaXMgdGFuIGxlam9zIGRlIHNlcmxvIGNvbW8gbG8gZXN04SBlbCBjaWVsbyBkZSBsYSB0aWVycmEuIL9D821vIHF1ZSBlcyBwb3NpYmxlIHF1ZSBjb3NhcyBkZSB0YW4gcG9jbyBtb21lbnRvIHkgdGFuIGbhY2lsZXMgZGUgcmVtZWRpYXIgcHVlZGFuIHRlbmVyIGZ1ZXJ6YXMgZGUgc3VzcGVuZGVyIHkgYWJzb3J0YXIgdW4gaW5nZW5pbyB0YW4gbWFkdXJvIGNvbW8gZWwgdnVlc3RybywgeSB0YW4gaGVjaG8gYSByb21wZXIgeSBhdHJvcGVsbGFyIHBvciBvdHJhcyBkaWZpY3VsdGFkZXMgbWF5b3Jlcz8gQSBsYSBmZSwgZXN0byBubyBuYWNlIGRlIGZhbHRhIGRlIGhhYmlsaWRhZCwgc2lubyBkZSBzb2JyYSBkZSBwZXJlemEgeSBwZW51cmlhIGRlIGRpc2N1cnNvLiC/UXVlculpcyB2ZXIgc2kgZXMgdmVyZGFkIGxvIHF1ZSBkaWdvPyBQdWVzIGVzdGFkbWUgYXRlbnRvIHkgdmVy6WlzIGPzbW8sIGVuIHVuIGFicmlyIHkgY2VycmFyIGRlIG9qb3MsIGNvbmZ1bmRvIHRvZGFzIHZ1ZXN0cmFzIGRpZmljdWx0YWRlcyB5IHJlbWVkaW8gdG9kYXMgbGFzIGZhbHRhcyBxdWUgZGVj7XMgcXVlIG9zIHN1c3BlbmRlbiB5IGFjb2JhcmRhbiBwYXJhIGRlamFyIGRlIHNhY2FyIGEgbGEgbHV6IGRlbCBtdW5kbyBsYSBoaXN0b3JpYSBkZSB2dWVzdHJvIGZhbW9zbyBkb24gUXVpam90ZSwgbHV6IHkgZXNwZWpvIGRlIHRvZGEgbGEgY2FiYWxsZXLtYSBhbmRhbnRlLiIKICJFbmdsaXNoIiwgIidZb3UgcHJvbWlzZWQgdG8gdGVsbCBtZSB5b3VyIGhpc3RvcnksIHlvdSBrbm93LCcgc2FpZCBBbGljZSwgJ2FuZCB3aHkgaXQgaXMgeW91IGhhdGUtLUMgYW5kIEQsJyBzaGUgYWRkZWQgaW4gYSB3aGlzcGVyLCBoYWxmIGFmcmFpZCB0aGF0IGl0IHdvdWxkIGJlIG9mZmVuZGVkIGFnYWluLiIKQEAgLTE2Myw3ICsxNjMsNyBAQAogIkZyZW5jaCIsICJPbiBzYWl0IHF1ZSBvbnplIOljdXMgZmFpc2FpZW50IGp1c3RlIGxhIHNvbW1lIHF1aSByZXN0YWl0IGRhbnMgbGEgYm91cnNlIGRlIGQnQXJ0YWduYW4uIgogIlNwYW5pc2giLCAiUGVuc/MgZWwgaHXpc3BlZCBxdWUgZWwgaGFiZXJsZSBsbGFtYWRvIGNhc3RlbGxhbm8gaGFi7WEgc2lkbyBwb3IgaGFiZXJsZSBwYXJlY2lkbyBkZSBsb3Mgc2Fub3MgZGUgQ2FzdGlsbGEsIGF1bnF1ZSDpbCBlcmEgYW5kYWx1eiwgeSBkZSBsb3MgZGUgbGEgcGxheWEgZGUgU2FubPpjYXIsIG5vIG1lbm9zIGxhZHLzbiBxdWUgQ2FjbywgbmkgbWVub3MgbWFsZWFudGUgcXVlIGVzdHVkaWFudGFkbyBwYWplOyB5IGFz7SwgbGUgcmVzcG9uZGnzOiIKICJFbmdsaXNoIiwgIidXaGF0IGEgY3VyaW91cyBmZWVsaW5nIScgc2FpZCBBbGljZTsgJ0kgbXVzdCBiZSBzaHV0dGluZyB1cCBsaWtlIGEgdGVsZXNjb3BlLiciCi0iRW5nbGlzaCIsICJTb25ldG8iCisiU3BhbmlzaCIsICJTb25ldG8iCiAiRW5nbGlzaCIsICJJdCB3YXMgYWxsIHZlcnkgd2VsbCB0byBzYXkgJ0RyaW5rIG1lLCcgYnV0IHRoZSB3aXNlIGxpdHRsZSBBbGljZSB3YXMgbm90IGdvaW5nIHRvIGRvIFRIQVQgaW4gYSBodXJyeS4gJ05vLCBJJ2xsIGxvb2sgZmlyc3QsJyBzaGUgc2FpZCwgJ2FuZCBzZWUgd2hldGhlciBpdCdzIG1hcmtlZCAncG9pc29uJyBvciBub3QnOyBmb3Igc2hlIGhhZCByZWFkIHNldmVyYWwgbmljZSBsaXR0bGUgaGlzdG9yaWVzIGFib3V0IGNoaWxkcmVuIHdobyBoYWQgZ290IGJ1cm50LCBhbmQgZWF0ZW4gdXAgYnkgd2lsZCBiZWFzdHMgYW5kIG90aGVyIHVucGxlYXNhbnQgdGhpbmdzLCBhbGwgYmVjYXVzZSB0aGV5IFdPVUxEIG5vdCByZW1lbWJlciB0aGUgc2ltcGxlIHJ1bGVzIHRoZWlyIGZyaWVuZHMgaGFkIHRhdWdodCB0aGVtOiBzdWNoIGFzLCB0aGF0IGEgcmVkLWhvdCBwb2tlciB3aWxsIGJ1cm4geW91IGlmIHlvdSBob2xkIGl0IHRvbyBsb25nOyBhbmQgdGhhdCBpZiB5b3UgY3V0IHlvdXIgZmluZ2VyIFZFUlkgZGVlcGx5IHdpdGggYSBrbmlmZSwgaXQgdXN1YWxseSBibGVlZHM7IGFuZCBzaGUgaGFkIG5ldmVyIGZvcmdvdHRlbiB0aGF0LCBpZiB5b3UgZHJpbmsgbXVjaCBmcm9tIGEgYm90dGxlIG1hcmtlZCAncG9pc29uLCcgaXQgaXMgYWxtb3N0IGNlcnRhaW4gdG8gZGlzYWdyZWUgd2l0aCB5b3UsIHNvb25lciBvciBsYXRlci4iCiAiU3BhbmlzaCIsICJURVNUSU1PTklPIERFIExBUyBFUlJBVEFTIgogIkZyZW5jaCIsICItLSBTYW5zIGNo4nRpZXIgY2V0IGluc29sZW50IHBldGl0IGdhcudvbj+7IGRlbWFuZGEgbGEgZGFtZS4iCkBAIC0xNzMsNyArMTczLDcgQEAKICJFbmdsaXNoIiwgIidTbyB5b3UgZGlkLCBvbGQgZmVsbG93IScgc2FpZCB0aGUgb3RoZXJzLiIKICJTcGFuaXNoIiwgIkNvbiDpc3RvcyBpYmEgZW5zYXJ0YW5kbyBvdHJvcyBkaXNwYXJhdGVzLCB0b2RvcyBhbCBtb2RvIGRlIGxvcyBxdWUgc3VzIGxpYnJvcyBsZSBoYWLtYW4gZW5zZfFhZG8sIGltaXRhbmRvIGVuIGN1YW50byBwb2TtYSBzdSBsZW5ndWFqZS4gQ29uIGVzdG8sIGNhbWluYWJhIHRhbiBkZXNwYWNpbywgeSBlbCBzb2wgZW50cmFiYSB0YW4gYXByaWVzYSB5IGNvbiB0YW50byBhcmRvciwgcXVlIGZ1ZXJhIGJhc3RhbnRlIGEgZGVycmV0aXJsZSBsb3Mgc2Vzb3MsIHNpIGFsZ3Vub3MgdHV2aWVyYS4iCiAiRW5nbGlzaCIsICJBbGljZSB3YXMgYmVnaW5uaW5nIHRvIGdldCB2ZXJ5IHRpcmVkIG9mIHNpdHRpbmcgYnkgaGVyIHNpc3RlciBvbiB0aGUgYmFuaywgYW5kIG9mIGhhdmluZyBub3RoaW5nIHRvIGRvOiBvbmNlIG9yIHR3aWNlIHNoZSBoYWQgcGVlcGVkIGludG8gdGhlIGJvb2sgaGVyIHNpc3RlciB3YXMgcmVhZGluZywgYnV0IGl0IGhhZCBubyBwaWN0dXJlcyBvciBjb252ZXJzYXRpb25zIGluIGl0LCAnYW5kIHdoYXQgaXMgdGhlIHVzZSBvZiBhIGJvb2ssJyB0aG91Z2h0IEFsaWNlICd3aXRob3V0IHBpY3R1cmVzIG9yIGNvbnZlcnNhdGlvbj8nIgotIkVuZ2xpc2giLCAiUHVpcywg4CBkZW1pLXZvaXgsIGV0IGNvbW1lIHMnaWwgc2UgZvt0IHBhcmzpIOAgbHVpLW3qbWU6IgorIkZyZW5jaCIsICJQdWlzLCDgIGRlbWktdm9peCwgZXQgY29tbWUgcydpbCBzZSBm+3QgcGFybOkg4CBsdWktbeptZToiCiAiRW5nbGlzaCIsICInQ29tZSwgdGhlcmUncyBubyB1c2UgaW4gY3J5aW5nIGxpa2UgdGhhdCEnIHNhaWQgQWxpY2UgdG8gaGVyc2VsZiwgcmF0aGVyIHNoYXJwbHk7ICdJIGFkdmlzZSB5b3UgdG8gbGVhdmUgb2ZmIHRoaXMgbWludXRlIScgU2hlIGdlbmVyYWxseSBnYXZlIGhlcnNlbGYgdmVyeSBnb29kIGFkdmljZSwgKHRob3VnaCBzaGUgdmVyeSBzZWxkb20gZm9sbG93ZWQgaXQpLCBhbmQgc29tZXRpbWVzIHNoZSBzY29sZGVkIGhlcnNlbGYgc28gc2V2ZXJlbHkgYXMgdG8gYnJpbmcgdGVhcnMgaW50byBoZXIgZXllczsgYW5kIG9uY2Ugc2hlIHJlbWVtYmVyZWQgdHJ5aW5nIHRvIGJveCBoZXIgb3duIGVhcnMgZm9yIGhhdmluZyBjaGVhdGVkIGhlcnNlbGYgaW4gYSBnYW1lIG9mIGNyb3F1ZXQgc2hlIHdhcyBwbGF5aW5nIGFnYWluc3QgaGVyc2VsZiwgZm9yIHRoaXMgY3VyaW91cyBjaGlsZCB3YXMgdmVyeSBmb25kIG9mIHByZXRlbmRpbmcgdG8gYmUgdHdvIHBlb3BsZS4gJ0J1dCBpdCdzIG5vIHVzZSBub3csJyB0aG91Z2h0IHBvb3IgQWxpY2UsICd0byBwcmV0ZW5kIHRvIGJlIHR3byBwZW9wbGUhIFdoeSwgdGhlcmUncyBoYXJkbHkgZW5vdWdoIG9mIG1lIGxlZnQgdG8gbWFrZSBPTkUgcmVzcGVjdGFibGUgcGVyc29uISciCiAiU3BhbmlzaCIsICJPUkxBTkRPIEZVUklPU08gQSBET04gUVVJSk9URSBERSBMQSBNQU5DSEEiCiAiU3BhbmlzaCIsICK7VmVuZ2Ftb3MgYWhvcmEgYSBsYSBjaXRhY2nzbiBkZSBsb3MgYXV0b3JlcyBxdWUgbG9zIG90cm9zIGxpYnJvcyB0aWVuZW4sIHF1ZSBlbiBlbCB2dWVzdHJvIG9zIGZhbHRhbi4gRWwgcmVtZWRpbyBxdWUgZXN0byB0aWVuZSBlcyBtdXkgZuFjaWwsIHBvcnF1ZSBubyBoYWLpaXMgZGUgaGFjZXIgb3RyYSBjb3NhIHF1ZSBidXNjYXIgdW4gbGlicm8gcXVlIGxvcyBhY290ZSB0b2RvcywgZGVzZGUgbGEgQSBoYXN0YSBsYSBaLCBjb21vIHZvcyBkZWPtcy4gUHVlcyBlc2UgbWlzbW8gYWJlY2VkYXJpbyBwb25kculpcyB2b3MgZW4gdnVlc3RybyBsaWJybzsgcXVlLCBwdWVzdG8gcXVlIGEgbGEgY2xhcmEgc2UgdmVhIGxhIG1lbnRpcmEsIHBvciBsYSBwb2NhIG5lY2VzaWRhZCBxdWUgdm9zIHRlbu1hZGVzIGRlIGFwcm92ZWNoYXJvcyBkZWxsb3MsIG5vIGltcG9ydGEgbmFkYTsgeSBxdWl64SBhbGd1bm8gaGFicuEgdGFuIHNpbXBsZSwgcXVlIGNyZWEgcXVlIGRlIHRvZG9zIG9zIGhhYulpcyBhcHJvdmVjaGFkbyBlbiBsYSBzaW1wbGUgeSBzZW5jaWxsYSBoaXN0b3JpYSB2dWVzdHJhOyB5LCBjdWFuZG8gbm8gc2lydmEgZGUgb3RyYSBjb3NhLCBwb3IgbG8gbWVub3Mgc2Vydmly4SBhcXVlbCBsYXJnbyBjYXThbG9nbyBkZSBhdXRvcmVzIGEgZGFyIGRlIGltcHJvdmlzbyBhdXRvcmlkYWQgYWwgbGlicm8uIFkgbeFzLCBxdWUgbm8gaGFicuEgcXVpZW4gc2UgcG9uZ2EgYSBhdmVyaWd1YXIgc2kgbG9zIHNlZ3Vpc3RlcyBvIG5vIGxvcyBzZWd1aXN0ZXMsIG5vIHnpbmRvbGUgbmFkYSBlbiBlbGxvLiBDdWFudG8gbeFzIHF1ZSwgc2kgYmllbiBjYWlnbyBlbiBsYSBjdWVudGEsIGVzdGUgdnVlc3RybyBsaWJybyBubyB0aWVuZSBuZWNlc2lkYWQgZGUgbmluZ3VuYSBjb3NhIGRlIGFxdWVsbGFzIHF1ZSB2b3MgZGVj7XMgcXVlIGxlIGZhbHRhLCBwb3JxdWUgdG9kbyDpbCBlcyB1bmEgaW52ZWN0aXZhIGNvbnRyYSBsb3MgbGlicm9zIGRlIGNhYmFsbGVy7WFzLCBkZSBxdWllbiBudW5jYSBzZSBhY29yZPMgQXJpc3TzdGVsZXMsIG5pIGRpam8gbmFkYSBTYW4gQmFzaWxpbywgbmkgYWxjYW568yBDaWNlcvNuOyBuaSBjYWVuIGRlYmFqbyBkZSBsYSBjdWVudGEgZGUgc3VzIGZhYnVsb3NvcyBkaXNwYXJhdGVzIGxhcyBwdW50dWFsaWRhZGVzIGRlIGxhIHZlcmRhZCwgbmkgbGFzIG9ic2VydmFjaW9uZXMgZGUgbGEgYXN0cm9sb2ftYTsgbmkgbGUgc29uIGRlIGltcG9ydGFuY2lhIGxhcyBtZWRpZGFzIGdlb23pdHJpY2FzLCBuaSBsYSBjb25mdXRhY2nzbiBkZSBsb3MgYXJndW1lbnRvcyBkZSBxdWllbiBzZSBzaXJ2ZSBsYSByZXTzcmljYTsgbmkgdGllbmUgcGFyYSBxdekgcHJlZGljYXIgYSBuaW5ndW5vLCBtZXpjbGFuZG8gbG8gaHVtYW5vIGNvbiBsbyBkaXZpbm8sIHF1ZSBlcyB1biBn6W5lcm8gZGUgbWV6Y2xhIGRlIHF1aWVuIG5vIHNlIGhhIGRlIHZlc3RpciBuaW5n+m4gY3Jpc3RpYW5vIGVudGVuZGltaWVudG8uIFPzbG8gdGllbmUgcXVlIGFwcm92ZWNoYXJzZSBkZSBsYSBpbWl0YWNp824gZW4gbG8gcXVlIGZ1ZXJlIGVzY3JpYmllbmRvOyBxdWUsIGN1YW50byBlbGxhIGZ1ZXJlIG3hcyBwZXJmZWN0YSwgdGFudG8gbWVqb3Igc2Vy4SBsbyBxdWUgc2UgZXNjcmliaWVyZS4gWSwgcHVlcyBlc3RhIHZ1ZXN0cmEgZXNjcml0dXJhIG5vIG1pcmEgYSBt4XMgcXVlIGEgZGVzaGFjZXIgbGEgYXV0b3JpZGFkIHkgY2FiaWRhIHF1ZSBlbiBlbCBtdW5kbyB5IGVuIGVsIHZ1bGdvIHRpZW5lbiBsb3MgbGlicm9zIGRlIGNhYmFsbGVy7WFzLCBubyBoYXkgcGFyYSBxdekgYW5k6WlzIG1lbmRpZ2FuZG8gc2VudGVuY2lhcyBkZSBmaWzzc29mb3MsIGNvbnNlam9zIGRlIGxhIERpdmluYSBFc2NyaXR1cmEsIGbhYnVsYXMgZGUgcG9ldGFzLCBvcmFjaW9uZXMgZGUgcmV083JpY29zLCBtaWxhZ3JvcyBkZSBzYW50b3MsIHNpbm8gcHJvY3VyYXIgcXVlIGEgbGEgbGxhbmEsIGNvbiBwYWxhYnJhcyBzaWduaWZpY2FudGVzLCBob25lc3RhcyB5IGJpZW4gY29sb2NhZGFzLCBzYWxnYSB2dWVzdHJhIG9yYWNp824geSBwZXLtb2RvIHNvbm9ybyB5IGZlc3Rpdm87IHBpbnRhbmRvLCBlbiB0b2RvIGxvIHF1ZSBhbGNhbnrhcmVkZXMgeSBmdWVyZSBwb3NpYmxlLCB2dWVzdHJhIGludGVuY2nzbiwgZGFuZG8gYSBlbnRlbmRlciB2dWVzdHJvcyBjb25jZXB0b3Mgc2luIGludHJpY2FybG9zIHkgZXNjdXJlY2VybG9zLiBQcm9jdXJhZCB0YW1iaeluIHF1ZSwgbGV5ZW5kbyB2dWVzdHJhIGhpc3RvcmlhLCBlbCBtZWxhbmPzbGljbyBzZSBtdWV2YSBhIHJpc2EsIGVsIHJpc3Vl8W8gbGEgYWNyZWNpZW50ZSwgZWwgc2ltcGxlIG5vIHNlIGVuZmFkZSwgZWwgZGlzY3JldG8gc2UgYWRtaXJlIGRlIGxhIGludmVuY2nzbiwgZWwgZ3JhdmUgbm8gbGEgZGVzcHJlY2llLCBuaSBlbCBwcnVkZW50ZSBkZWplIGRlIGFsYWJhcmxhLiBFbiBlZmVjdG8sIGxsZXZhZCBsYSBtaXJhIHB1ZXN0YSBhIGRlcnJpYmFyIGxhIG3hcXVpbmEgbWFsIGZ1bmRhZGEgZGVzdG9zIGNhYmFsbGVyZXNjb3MgbGlicm9zLCBhYm9ycmVjaWRvcyBkZSB0YW50b3MgeSBhbGFiYWRvcyBkZSBtdWNob3MgbeFzOyBxdWUgc2kgZXN0byBhbGNhbnrhc2VkZXMsIG5vIGhhYnLtYWRlcyBhbGNhbnphZG8gcG9jby4iCkBAIC0yMTUsNyArMjE1LDcgQEAKICJGcmVuY2giLCAiTWFsaGV1cmV1c2VtZW50IHVuZSBjaXJjb25zdGFuY2UgcydvcHBvc2FpdCDgIGNlIHF1ZSBsZSBqZXVuZSBob21tZSBhY2NvbXBs7nQgc2EgbWVuYWNlOiBjJ2VzdCBxdWUsIGNvbW1lIG5vdXMgbCdhdm9ucyBkaXQsIHNvbiDpcOllIGF2YWl0IOl06SwgZGFucyBzYSBwcmVtaehyZSBsdXR0ZSwgYnJpc+llIGVuIGRldXggbW9yY2VhdXgsIGNlIHF1J2lsIGF2YWl0IHBhcmZhaXRlbWVudCBvdWJsaekuIElsIGVuIHLpc3VsdGEgcXVlLCBsb3JzcXVlIGQnQXJ0YWduYW4gdm91bHV0IGVuIGVmZmV0IGTpZ2FpbmVyLCBpbCBzZSB0cm91dmEgcHVyZW1lbnQgZXQgc2ltcGxlbWVudCBhcm3pIGQndW4gdHJvbudvbiBkJ+lw6WUgZGUgaHVpdCBvdSBkaXggcG91Y2VzIOAgcGV1IHBy6HMsIHF1ZSBsJ2j0dGUgYXZhaXQgc29pZ25ldXNlbWVudCByZW5mb25j6SBkYW5zIGxlIGZvdXJyZWF1LiBRdWFudCBhdSByZXN0ZSBkZSBsYSBsYW1lLCBsZSBjaGVmIGwnYXZhaXQgYWRyb2l0ZW1lbnQgZOl0b3VybukgcG91ciBzJ2VuIGZhaXJlIHVuZSBsYXJkb2lyZS4iCiAiRnJlbmNoIiwgIkxlIG3qbWUgam91ciBsZSBqZXVuZSBob21tZSBzZSBtaXQgZW4gcm91dGUsIG11bmkgZGVzIHRyb2lzIHBy6XNlbnRzIHBhdGVybmVscyBldCBxdWkgc2UgY29tcG9zYWllbnQsIGNvbW1lIG5vdXMgbCdhdm9ucyBkaXQsIGRlIHF1aW56ZSDpY3VzLCBkdSBjaGV2YWwgZXQgZGUgbGEgbGV0dHJlIHBvdXIgTS4gZGUgVHLpdmlsbGU7IGNvbW1lIG9uIGxlIHBlbnNlIGJpZW4sIGxlcyBjb25zZWlscyBhdmFpZW50IOl06SBkb25u6XMgcGFyLWRlc3N1cyBsZSBtYXJjaOkuIgogIkZyZW5jaCIsICJVbiB0cmFpdCBkZSBsdW1p6HJlIGZyYXBwYSB0b3V0IOAgY291cCBsJ2VzcHJpdCBkZSBsJ2j0dGUgcXVpIHNlIGRvbm5haXQgYXUgZGlhYmxlIGVuIG5lIHRyb3V2YW50IHJpZW4uIgotIkVuZ2xpc2giLCAiT3llbmRvIGxvIGN1YWwgbWkgYW1pZ28sIGThbmRvc2UgdW5hIHBhbG1hZGEgZW4gbGEgZnJlbnRlIHkgZGlzcGFyYW5kbyBlbiB1bmEgY2FyZ2EgZGUgcmlzYSwgbWUgZGlqbzoiCisiU3BhbmlzaCIsICJPeWVuZG8gbG8gY3VhbCBtaSBhbWlnbywgZOFuZG9zZSB1bmEgcGFsbWFkYSBlbiBsYSBmcmVudGUgeSBkaXNwYXJhbmRvIGVuIHVuYSBjYXJnYSBkZSByaXNhLCBtZSBkaWpvOiIKICJFbmdsaXNoIiwgIkFzIHNoZSBzYWlkIHRoZXNlIHdvcmRzIGhlciBmb290IHNsaXBwZWQsIGFuZCBpbiBhbm90aGVyIG1vbWVudCwgc3BsYXNoISBzaGUgd2FzIHVwIHRvIGhlciBjaGluIGluIHNhbHQgd2F0ZXIuIEhlciBmaXJzdCBpZGVhIHdhcyB0aGF0IHNoZSBoYWQgc29tZWhvdyBmYWxsZW4gaW50byB0aGUgc2VhLCAnYW5kIGluIHRoYXQgY2FzZSBJIGNhbiBnbyBiYWNrIGJ5IHJhaWx3YXksJyBzaGUgc2FpZCB0byBoZXJzZWxmLiAoQWxpY2UgaGFkIGJlZW4gdG8gdGhlIHNlYXNpZGUgb25jZSBpbiBoZXIgbGlmZSwgYW5kIGhhZCBjb21lIHRvIHRoZSBnZW5lcmFsIGNvbmNsdXNpb24sIHRoYXQgd2hlcmV2ZXIgeW91IGdvIHRvIG9uIHRoZSBFbmdsaXNoIGNvYXN0IHlvdSBmaW5kIGEgbnVtYmVyIG9mIGJhdGhpbmcgbWFjaGluZXMgaW4gdGhlIHNlYSwgc29tZSBjaGlsZHJlbiBkaWdnaW5nIGluIHRoZSBzYW5kIHdpdGggd29vZGVuIHNwYWRlcywgdGhlbiBhIHJvdyBvZiBsb2RnaW5nIGhvdXNlcywgYW5kIGJlaGluZCB0aGVtIGEgcmFpbHdheSBzdGF0aW9uLikgSG93ZXZlciwgc2hlIHNvb24gbWFkZSBvdXQgdGhhdCBzaGUgd2FzIGluIHRoZSBwb29sIG9mIHRlYXJzIHdoaWNoIHNoZSBoYWQgd2VwdCB3aGVuIHNoZSB3YXMgbmluZSBmZWV0IGhpZ2guIgogIlNwYW5pc2giLCAiU29uZXRvIgogIkVuZ2xpc2giLCAiVGhlcmUgd2FzIG5vdGhpbmcgc28gVkVSWSByZW1hcmthYmxlIGluIHRoYXQ7IG5vciBkaWQgQWxpY2UgdGhpbmsgaXQgc28gVkVSWSBtdWNoIG91dCBvZiB0aGUgd2F5IHRvIGhlYXIgdGhlIFJhYmJpdCBzYXkgdG8gaXRzZWxmLCAnT2ggZGVhciEgT2ggZGVhciEgSSBzaGFsbCBiZSBsYXRlIScgKHdoZW4gc2hlIHRob3VnaHQgaXQgb3ZlciBhZnRlcndhcmRzLCBpdCBvY2N1cnJlZCB0byBoZXIgdGhhdCBzaGUgb3VnaHQgdG8gaGF2ZSB3b25kZXJlZCBhdCB0aGlzLCBidXQgYXQgdGhlIHRpbWUgaXQgYWxsIHNlZW1lZCBxdWl0ZSBuYXR1cmFsKTsgYnV0IHdoZW4gdGhlIFJhYmJpdCBhY3R1YWxseSBUT09LIEEgV0FUQ0ggT1VUIE9GIElUUyBXQUlTVENPQVQtUE9DS0VULCBhbmQgbG9va2VkIGF0IGl0LCBhbmQgdGhlbiBodXJyaWVkIG9uLCBBbGljZSBzdGFydGVkIHRvIGhlciBmZWV0LCBmb3IgaXQgZmxhc2hlZCBhY3Jvc3MgaGVyIG1pbmQgdGhhdCBzaGUgaGFkIG5ldmVyIGJlZm9yZSBzZWVuIGEgcmFiYml0IHdpdGggZWl0aGVyIGEgd2Fpc3Rjb2F0LXBvY2tldCwgb3IgYSB3YXRjaCB0byB0YWtlIG91dCBvZiBpdCwgYW5kIGJ1cm5pbmcgd2l0aCBjdXJpb3NpdHksIHNoZSByYW4gYWNyb3NzIHRoZSBmaWVsZCBhZnRlciBpdCwgYW5kIGZvcnR1bmF0ZWx5IHdhcyBqdXN0IGluIHRpbWUgdG8gc2VlIGl0IHBvcCBkb3duIGEgbGFyZ2UgcmFiYml0LWhvbGUgdW5kZXIgdGhlIGhlZGdlLiIKQEAgLTI0Miw3ICsyNDIsNyBAQAogIlNwYW5pc2giLCAiLURpY2hvc2EgZWRhZCwgeSBzaWdsbyBkaWNob3NvIGFxdWVsIGFkb25kZSBzYWxkcuFuIGEgbHV6IGxhcyBmYW1vc2FzIGhhemHxYXMgbe1hcywgZGlnbmFzIGRlIGVudGFsbGFyc2UgZW4gYnJvbmNlcywgZXNjdWxwaXJzZSBlbiBt4XJtb2xlcyB5IHBpbnRhcnNlIGVuIHRhYmxhcyBwYXJhIG1lbW9yaWEgZW4gbG8gZnV0dXJvLiChT2ggdPosIHNhYmlvIGVuY2FudGFkb3IsIHF1aWVucXVpZXJhIHF1ZSBzZWFzLCBhIHF1aWVuIGhhIGRlIHRvY2FyIGVsIHNlciBjb3JvbmlzdGEgZGVzdGEgcGVyZWdyaW5hIGhpc3RvcmlhLCBydelnb3RlIHF1ZSBubyB0ZSBvbHZpZGVzIGRlIG1pIGJ1ZW4gUm9jaW5hbnRlLCBjb21wYfFlcm8gZXRlcm5vIG3tbyBlbiB0b2RvcyBtaXMgY2FtaW5vcyB5IGNhcnJlcmFzISIKICJGcmVuY2giLCAiTm91cyBsJ2F2b3VvbnMsIGNlcyB0cm9pcyBub21zIOl0cmFuZ2VycyBub3VzIGZyYXBw6HJlbnQsIGV0IGlsIG5vdXMgdmludCBhdXNzaXT0dCDgIGwnZXNwcml0IHF1J2lscyBuJ+l0YWllbnQgcXVlIGRlcyBwc2V1ZG9ueW1lcyDgIGwnYWlkZSBkZXNxdWVscyBkJ0FydGFnbmFuIGF2YWl0IGTpZ3Vpc+kgZGVzIG5vbXMgcGV1dC3qdHJlIGlsbHVzdHJlcywgc2kgdG91dGVmb2lzIGxlcyBwb3J0ZXVycyBkZSBjZXMgbm9tcyBkJ2VtcHJ1bnQgbmUgbGVzIGF2YWllbnQgcGFzIGNob2lzaXMgZXV4LW3qbWVzIGxlIGpvdXIgb/ksIHBhciBjYXByaWNlLCBwYXIgbeljb250ZW50ZW1lbnQgb3UgcGFyIGTpZmF1dCBkZSBmb3J0dW5lLCBpbHMgYXZhaWVudCBlbmRvc3PpIGxhIHNpbXBsZSBjYXNhcXVlIGRlIG1vdXNxdWV0YWlyZS4iCiAiRnJlbmNoIiwgIkNlbGEgcG9z6SwgcGFzc29ucyDgIG5vdHJlIGhpc3RvaXJlLiIKLSJFbmdsaXNoIiwgIklsIGFjaGV2YWl0IOAgcGVpbmUsIHF1ZSBkJ0FydGFnbmFuIGx1aSBhbGxvbmdlYSB1biBzaSBmdXJpZXV4IGNvdXAgZGUgcG9pbnRlLCBxdWUsIHMnaWwgbidl+3QgZmFpdCB2aXZlbWVudCB1biBib25kIGVuIGFycmnocmUsIGlsIGVzdCBwcm9iYWJsZSBxdSdpbCBl+3QgcGxhaXNhbnTpIHBvdXIgbGEgZGVybmnocmUgZm9pcy4gTCdpbmNvbm51IHZpdCBhbG9ycyBxdWUgbGEgY2hvc2UgcGFzc2FpdCBsYSByYWlsbGVyaWUsIHRpcmEgc29uIOlw6WUsIHNhbHVhIHNvbiBhZHZlcnNhaXJlIGV0IHNlIG1pdCBncmF2ZW1lbnQgZW4gZ2FyZGUuIE1haXMgYXUgbeptZSBtb21lbnQgc2VzIGRldXggYXVkaXRldXJzLCBhY2NvbXBhZ27pcyBkZSBsJ2j0dGUsIHRvbWLocmVudCBzdXIgZCdBcnRhZ25hbiDgIGdyYW5kcyBjb3VwcyBkZSBi4nRvbnMsIGRlIHBlbGxlcyBldCBkZSBwaW5jZXR0ZXMuIENlbGEgZml0IHVuZSBkaXZlcnNpb24gc2kgcmFwaWRlIGV0IHNpIGNvbXBs6HRlIOAgbCdhdHRhcXVlLCBxdWUgbCdhZHZlcnNhaXJlIGRlIGQnQXJ0YWduYW4sIHBlbmRhbnQgcXVlIGNlbHVpLWNpIHNlIHJldG91cm5haXQgcG91ciBmYWlyZSBmYWNlIOAgY2V0dGUgZ3LqbGUgZGUgY291cHMsIHJlbmdhaW5haXQgYXZlYyBsYSBt6m1lIHBy6WNpc2lvbiwgZXQsIGQnYWN0ZXVyIHF1J2lsIGF2YWl0IG1hbnF16SBkJ+p0cmUsIHJlZGV2ZW5haXQgc3BlY3RhdGV1ciBkdSBjb21iYXQsIHL0bGUgZG9udCBpbCBzJ2FjcXVpdHRhIGF2ZWMgc29uIGltcGFzc2liaWxpdOkgb3JkaW5haXJlLCB0b3V0IGVuIG1hcm1vdHRhbnQgbulhbm1vaW5zOiIKKyJGcmVuY2giLCAiSWwgYWNoZXZhaXQg4CBwZWluZSwgcXVlIGQnQXJ0YWduYW4gbHVpIGFsbG9uZ2VhIHVuIHNpIGZ1cmlldXggY291cCBkZSBwb2ludGUsIHF1ZSwgcydpbCBuJ2X7dCBmYWl0IHZpdmVtZW50IHVuIGJvbmQgZW4gYXJyaehyZSwgaWwgZXN0IHByb2JhYmxlIHF1J2lsIGX7dCBwbGFpc2FudOkgcG91ciBsYSBkZXJuaehyZSBmb2lzLiBMJ2luY29ubnUgdml0IGFsb3JzIHF1ZSBsYSBjaG9zZSBwYXNzYWl0IGxhIHJhaWxsZXJpZSwgdGlyYSBzb24g6XDpZSwgc2FsdWEgc29uIGFkdmVyc2FpcmUgZXQgc2UgbWl0IGdyYXZlbWVudCBlbiBnYXJkZS4gTWFpcyBhdSBt6m1lIG1vbWVudCBzZXMgZGV1eCBhdWRpdGV1cnMsIGFjY29tcGFnbulzIGRlIGwnaPR0ZSwgdG9tYuhyZW50IHN1ciBkJ0FydGFnbmFuIOAgZ3JhbmRzIGNvdXBzIGRlIGLidG9ucywgZGUgcGVsbGVzIGV0IGRlIHBpbmNldHRlcy4gQ2VsYSBmaXQgdW5lIGRpdmVyc2lvbiBzaSByYXBpZGUgZXQgc2kgY29tcGzodGUg4CBsJ2F0dGFxdWUsIHF1ZSBsJ2FkdmVyc2FpcmUgZGUgZCdBcnRhZ25hbiwgcGVuZGFudCBxdWUgY2VsdWktY2kgc2UgcmV0b3VybmFpdCBwb3VyIGZhaXJlIGZhY2Ug4CBjZXR0ZSBncupsZSBkZSBjb3VwcywgcmVuZ2FpbmFpdCBhdmVjIGxhIG3qbWUgcHLpY2lzaW9uLCBldCwgZCdhY3RldXIgcXUnaWwgYXZhaXQgbWFucXXpIGQn6nRyZSwgcmVkZXZlbmFpdCBzcGVjdGF0ZXVyIGR1IGNvbWJhdCwgcvRsZSBkb250IGlsIHMnYWNxdWl0dGEgYXZlYyBzb24gaW1wYXNzaWJpbGl06SBvcmRpbmFpcmUsIHRvdXQgZW4gbWFybW90dGFudCBu6WFubW9pbnM6IgogIlNwYW5pc2giLCAiLVBvcnF1ZSwgv2PzbW8gcXVlculpcyB2b3MgcXVlIG5vIG1lIHRlbmdhIGNvbmZ1c28gZWwgcXXpIGRpcuEgZWwgYW50aWd1byBsZWdpc2xhZG9yIHF1ZSBsbGFtYW4gdnVsZ28gY3VhbmRvIHZlYSBxdWUsIGFsIGNhYm8gZGUgdGFudG9zIGHxb3MgY29tbyBoYSBxdWUgZHVlcm1vIGVuIGVsIHNpbGVuY2lvIGRlbCBvbHZpZG8sIHNhbGdvIGFob3JhLCBjb24gdG9kb3MgbWlzIGHxb3MgYSBjdWVzdGFzLCBjb24gdW5hIGxleWVuZGEgc2VjYSBjb21vIHVuIGVzcGFydG8sIGFqZW5hIGRlIGludmVuY2nzbiwgbWVuZ3VhZGEgZGUgZXN0aWxvLCBwb2JyZSBkZSBjb25jZXRvcyB5IGZhbHRhIGRlIHRvZGEgZXJ1ZGljafNuIHkgZG9jdHJpbmE7IHNpbiBhY290YWNpb25lcyBlbiBsYXMgbeFyZ2VuZXMgeSBzaW4gYW5vdGFjaW9uZXMgZW4gZWwgZmluIGRlbCBsaWJybywgY29tbyB2ZW8gcXVlIGVzdOFuIG90cm9zIGxpYnJvcywgYXVucXVlIHNlYW4gZmFidWxvc29zIHkgcHJvZmFub3MsIHRhbiBsbGVub3MgZGUgc2VudGVuY2lhcyBkZSBBcmlzdPN0ZWxlcywgZGUgUGxhdPNuIHkgZGUgdG9kYSBsYSBjYXRlcnZhIGRlIGZpbPNzb2ZvcywgcXVlIGFkbWlyYW4gYSBsb3MgbGV5ZW50ZXMgeSB0aWVuZW4gYSBzdXMgYXV0b3JlcyBwb3IgaG9tYnJlcyBsZe1kb3MsIGVydWRpdG9zIHkgZWxvY3VlbnRlcz8goVB1ZXMgcXXpLCBjdWFuZG8gY2l0YW4gbGEgRGl2aW5hIEVzY3JpdHVyYSEgTm8gZGly4W4gc2lubyBxdWUgc29uIHVub3Mgc2FudG9zIFRvbWFzZXMgeSBvdHJvcyBkb2N0b3JlcyBkZSBsYSBJZ2xlc2lhOyBndWFyZGFuZG8gZW4gZXN0byB1biBkZWNvcm8gdGFuIGluZ2VuaW9zbywgcXVlIGVuIHVuIHJlbmds824gaGFuIHBpbnRhZG8gdW4gZW5hbW9yYWRvIGRlc3RyYe1kbyB5IGVuIG90cm8gaGFjZW4gdW4gc2VybW9uY2ljbyBjcmlzdGlhbm8sIHF1ZSBlcyB1biBjb250ZW50byB5IHVuIHJlZ2FsbyBv7WxsZSBvIGxlZWxsZS4gRGUgdG9kbyBlc3RvIGhhIGRlIGNhcmVjZXIgbWkgbGlicm8sIHBvcnF1ZSBuaSB0ZW5nbyBxdekgYWNvdGFyIGVuIGVsIG1hcmdlbiwgbmkgcXXpIGFub3RhciBlbiBlbCBmaW4sIG5pIG1lbm9zIHPpIHF16SBhdXRvcmVzIHNpZ28gZW4g6WwsIHBhcmEgcG9uZXJsb3MgYWwgcHJpbmNpcGlvLCBjb21vIGhhY2VuIHRvZG9zLCBwb3IgbGFzIGxldHJhcyBkZWwgQS5CLkMuLCBjb21lbnphbmRvIGVuIEFyaXN083RlbGVzIHkgYWNhYmFuZG8gZW4gWGVub2ZvbnRlIHkgZW4gWm/tbG8gbyBaZXV4aXMsIGF1bnF1ZSBmdWUgbWFsZGljaWVudGUgZWwgdW5vIHkgcGludG9yIGVsIG90cm8uIFRhbWJp6W4gaGEgZGUgY2FyZWNlciBtaSBsaWJybyBkZSBzb25ldG9zIGFsIHByaW5jaXBpbywgYSBsbyBtZW5vcyBkZSBzb25ldG9zIGN1eW9zIGF1dG9yZXMgc2VhbiBkdXF1ZXMsIG1hcnF1ZXNlcywgY29uZGVzLCBvYmlzcG9zLCBkYW1hcyBvIHBvZXRhcyBjZWxlYulycmltb3M7IGF1bnF1ZSwgc2kgeW8gbG9zIHBpZGllc2UgYSBkb3MgbyB0cmVzIG9maWNpYWxlcyBhbWlnb3MsIHlvIHPpIHF1ZSBtZSBsb3MgZGFy7WFuLCB5IHRhbGVzLCBxdWUgbm8gbGVzIGlndWFsYXNlbiBsb3MgZGUgYXF1ZWxsb3MgcXVlIHRpZW5lbiBt4XMgbm9tYnJlIGVuIG51ZXN0cmEgRXNwYfFhLiBFbiBmaW4sIHNl8W9yIHkgYW1pZ28gbe1vIC1wcm9zZWd17S0sIHlvIGRldGVybWlubyBxdWUgZWwgc2Xxb3IgZG9uIFF1aWpvdGUgc2UgcXVlZGUgc2VwdWx0YWRvIGVuIHN1cyBhcmNoaXZvcyBlbiBsYSBNYW5jaGEsIGhhc3RhIHF1ZSBlbCBjaWVsbyBkZXBhcmUgcXVpZW4gbGUgYWRvcm5lIGRlIHRhbnRhcyBjb3NhcyBjb21vIGxlIGZhbHRhbjsgcG9ycXVlIHlvIG1lIGhhbGxvIGluY2FwYXogZGUgcmVtZWRpYXJsYXMsIHBvciBtaSBpbnN1ZmljaWVuY2lhIHkgcG9jYXMgbGV0cmFzLCB5IHBvcnF1ZSBuYXR1cmFsbWVudGUgc295IHBvbHRy824geSBwZXJlem9zbyBkZSBhbmRhcm1lIGJ1c2NhbmRvIGF1dG9yZXMgcXVlIGRpZ2FuIGxvIHF1ZSB5byBtZSBz6SBkZWNpciBzaW4gZWxsb3MuIERlIGFxde0gbmFjZSBsYSBzdXNwZW5zafNuIHkgZWxldmFtaWVudG8sIGFtaWdvLCBlbiBxdWUgbWUgaGFsbGFzdGVzOyBiYXN0YW50ZSBjYXVzYSBwYXJhIHBvbmVybWUgZW4gZWxsYSBsYSBxdWUgZGUgbe0gaGFi6WlzIG/tZG8uIgogIkVuZ2xpc2giLCAiQW5kIHNvIHNoZSB3ZW50IG9uLCB0YWtpbmcgZmlyc3Qgb25lIHNpZGUgYW5kIHRoZW4gdGhlIG90aGVyLCBhbmQgbWFraW5nIHF1aXRlIGEgY29udmVyc2F0aW9uIG9mIGl0IGFsdG9nZXRoZXI7IGJ1dCBhZnRlciBhIGZldyBtaW51dGVzIHNoZSBoZWFyZCBhIHZvaWNlIG91dHNpZGUsIGFuZCBzdG9wcGVkIHRvIGxpc3Rlbi4iCiAiRnJlbmNoIiwgIqtFaCBiaWVuLCBjb21tZW50IHZhIGNldCBlbnJhZ+k/IHJlcHJpdC1pbCBlbiBzZSByZXRvdXJuYW50IGF1IGJydWl0IGRlIGxhIHBvcnRlIHF1aSBzJ291dnJpdCBldCBlbiBzJ2FkcmVzc2FudCDgIGwnaPR0ZSBxdWkgdmVuYWl0IHMnaW5mb3JtZXIgZGUgc2Egc2FudOkuIgpAQCAtMjk2LDEwICsyOTYsMTAgQEAKICJTcGFuaXNoIiwgIkVuIHJlc29sdWNp824sIOlsIHNlIGVuZnJhc2PzIHRhbnRvIGVuIHN1IGxldHVyYSwgcXVlIHNlIGxlIHBhc2FiYW4gbGFzIG5vY2hlcyBsZXllbmRvIGRlIGNsYXJvIGVuIGNsYXJvLCB5IGxvcyBk7WFzIGRlIHR1cmJpbyBlbiB0dXJiaW87IHkgYXPtLCBkZWwgcG9jbyBkb3JtaXIgeSBkZWwgbXVjaG8gbGVlciwgc2UgbGUgc2Vj8yBlbCBjZWxlYnJvLCBkZSBtYW5lcmEgcXVlIHZpbm8gYSBwZXJkZXIgZWwganVpY2lvLiBMbGVu83NlbGUgbGEgZmFudGFz7WEgZGUgdG9kbyBhcXVlbGxvIHF1ZSBsZe1hIGVuIGxvcyBsaWJyb3MsIGFz7SBkZSBlbmNhbnRhbWVudG9zIGNvbW8gZGUgcGVuZGVuY2lhcywgYmF0YWxsYXMsIGRlc2Fm7W9zLCBoZXJpZGFzLCByZXF1aWVicm9zLCBhbW9yZXMsIHRvcm1lbnRhcyB5IGRpc3BhcmF0ZXMgaW1wb3NpYmxlczsgeSBhc2VudPNzZWxlIGRlIHRhbCBtb2RvIGVuIGxhIGltYWdpbmFjafNuIHF1ZSBlcmEgdmVyZGFkIHRvZGEgYXF1ZWxsYSBt4XF1aW5hIGRlIGFxdWVsbGFzIHNvbmFkYXMgc2/xYWRhcyBpbnZlbmNpb25lcyBxdWUgbGXtYSwgcXVlIHBhcmEg6Wwgbm8gaGFi7WEgb3RyYSBoaXN0b3JpYSBt4XMgY2llcnRhIGVuIGVsIG11bmRvLiBEZWPtYSDpbCBxdWUgZWwgQ2lkIFJ1eSBE7WF6IGhhYu1hIHNpZG8gbXV5IGJ1ZW4gY2FiYWxsZXJvLCBwZXJvIHF1ZSBubyB0ZW7tYSBxdWUgdmVyIGNvbiBlbCBDYWJhbGxlcm8gZGUgbGEgQXJkaWVudGUgRXNwYWRhLCBxdWUgZGUgc/NsbyB1biByZXbpcyBoYWLtYSBwYXJ0aWRvIHBvciBtZWRpbyBkb3MgZmllcm9zIHkgZGVzY29tdW5hbGVzIGdpZ2FudGVzLiBNZWpvciBlc3RhYmEgY29uIEJlcm5hcmRvIGRlbCBDYXJwaW8sIHBvcnF1ZSBlbiBSb25jZXN2YWxsZXMgaGFi7WEgbXVlcnRvIGEgUm9sZOFuIGVsIGVuY2FudGFkbywgdmFsaeluZG9zZSBkZSBsYSBpbmR1c3RyaWEgZGUgSOlyY3VsZXMsIGN1YW5kbyBhaG9n8yBhIEFudGVvLCBlbCBoaWpvIGRlIGxhIFRpZXJyYSwgZW50cmUgbG9zIGJyYXpvcy4gRGVj7WEgbXVjaG8gYmllbiBkZWwgZ2lnYW50ZSBNb3JnYW50ZSwgcG9ycXVlLCBjb24gc2VyIGRlIGFxdWVsbGEgZ2VuZXJhY2nzbiBnaWdhbnRlYSwgcXVlIHRvZG9zIHNvbiBzb2JlcmJpb3MgeSBkZXNjb21lZGlkb3MsIOlsIHNvbG8gZXJhIGFmYWJsZSB5IGJpZW4gY3JpYWRvLiBQZXJvLCBzb2JyZSB0b2RvcywgZXN0YWJhIGJpZW4gY29uIFJlaW5hbGRvcyBkZSBNb250YWxi4W4sIHkgbeFzIGN1YW5kbyBsZSB2Ze1hIHNhbGlyIGRlIHN1IGNhc3RpbGxvIHkgcm9iYXIgY3VhbnRvcyB0b3BhYmEsIHkgY3VhbmRvIGVuIGFsbGVuZGUgcm9i8yBhcXVlbCDtZG9sbyBkZSBNYWhvbWEgcXVlIGVyYSB0b2RvIGRlIG9ybywgc2Vn+m4gZGljZSBzdSBoaXN0b3JpYS4gRGllcmEg6WwsIHBvciBkYXIgdW5hIG1hbm8gZGUgY29jZXMgYWwgdHJhaWRvciBkZSBHYWxhbPNuLCBhbCBhbWEgcXVlIHRlbu1hLCB5IGF1biBhIHN1IHNvYnJpbmEgZGUgYfFhZGlkdXJhLiIKICJFbmdsaXNoIiwgIkFsaWNlIHRob3VnaHQgdGhlIHdob2xlIHRoaW5nIHZlcnkgYWJzdXJkLCBidXQgdGhleSBhbGwgbG9va2VkIHNvIGdyYXZlIHRoYXQgc2hlIGRpZCBub3QgZGFyZSB0byBsYXVnaDsgYW5kLCBhcyBzaGUgY291bGQgbm90IHRoaW5rIG9mIGFueXRoaW5nIHRvIHNheSwgc2hlIHNpbXBseSBib3dlZCwgYW5kIHRvb2sgdGhlIHRoaW1ibGUsIGxvb2tpbmcgYXMgc29sZW1uIGFzIHNoZSBjb3VsZC4iCiAiRnJlbmNoIiwgIi0tIFNhbnMgZG91dGUuIElsIGNhdXNlIGRhbnMgdm90cmUgaPR0ZWxsZXJpZSB1biBzY2FuZGFsZSBhdXF1ZWwgZCdob25u6nRlcyBnZW5zIG5lIHNhdXJhaWVudCBy6XNpc3Rlci4gTW9udGV6IGNoZXogdm91cywgZmFpdGVzIG1vbiBjb21wdGUgZXQgYXZlcnRpc3NleiBtb24gbGFxdWFpcy4iCi0iRW5nbGlzaCIsICJBdmVjIHVuIHBhcmVpbCBfdmFkZS1tZWN1bV8sIGQnQXJ0YWduYW4gc2UgdHJvdXZhLCBhdSBtb3JhbCBjb21tZSBhdSBwaHlzaXF1ZSwgdW5lIGNvcGllIGV4YWN0ZSBkdSBo6XJvcyBkZSBDZXJ2YW50ZXMsIGF1cXVlbCBub3VzIGwnYXZvbnMgc2kgaGV1cmV1c2VtZW50IGNvbXBhcukgbG9yc3F1ZSBub3MgZGV2b2lycyBkJ2hpc3RvcmllbiBub3VzIG9udCBmYWl0IHVuZSBu6WNlc3NpdOkgZGUgdHJhY2VyIHNvbiBwb3J0cmFpdC4gRG9uIFF1aWNob3R0ZSBwcmVuYWl0IGxlcyBtb3VsaW5zIOAgdmVudCBwb3VyIGRlcyBn6WFudHMgZXQgbGVzIG1vdXRvbnMgcG91ciBkZXMgYXJt6WVzLCBkJ0FydGFnbmFuIHByaXQgY2hhcXVlIHNvdXJpcmUgcG91ciB1bmUgaW5zdWx0ZSBldCBjaGFxdWUgcmVnYXJkIHBvdXIgdW5lIHByb3ZvY2F0aW9uLiBJbCBlbiBy6XN1bHRhIHF1J2lsIGV1dCB0b3Vqb3VycyBsZSBwb2luZyBmZXJt6SBkZXB1aXMgVGFyYmVzIGp1c3F1J+AgTWV1bmcsIGV0IHF1ZSBsJ3VuIGRhbnMgbCdhdXRyZSBpbCBwb3J0YSBsYSBtYWluIGF1IHBvbW1lYXUgZGUgc29uIOlw6WUgZGl4IGZvaXMgcGFyIGpvdXI7IHRvdXRlZm9pcyBsZSBwb2luZyBuZSBkZXNjZW5kaXQgc3VyIGF1Y3VuZSBt4mNob2lyZSwgZXQgbCfpcOllIG5lIHNvcnRpdCBwb2ludCBkZSBzb24gZm91cnJlYXUuIENlIG4nZXN0IHBhcyBxdWUgbGEgdnVlIGR1IG1hbGVuY29udHJldXggYmlkZXQgamF1bmUgbifpcGFub3XudCBiaWVuIGRlcyBzb3VyaXJlcyBzdXIgbGVzIHZpc2FnZXMgZGVzIHBhc3NhbnRzOyBtYWlzLCBjb21tZSBhdS1kZXNzdXMgZHUgYmlkZXQgc29ubmFpdCB1bmUg6XDpZSBkZSB0YWlsbGUgcmVzcGVjdGFibGUgZXQgcXUnYXUtZGVzc3VzIGRlIGNldHRlIOlw6WUgYnJpbGxhaXQgdW4gb2VpbCBwbHV09HQgZulyb2NlIHF1ZSBmaWVyLCBsZXMgcGFzc2FudHMgculwcmltYWllbnQgbGV1ciBoaWxhcml06Swgb3UsIHNpIGwnaGlsYXJpdOkgbCdlbXBvcnRhaXQgc3VyIGxhIHBydWRlbmNlLCBpbHMgdOJjaGFpZW50IGF1IG1vaW5zIGRlIG5lIHJpcmUgcXVlIGQndW4gc2V1bCBj9HTpLCBjb21tZSBsZXMgbWFzcXVlcyBhbnRpcXVlcy4gRCdBcnRhZ25hbiBkZW1ldXJhIGRvbmMgbWFqZXN0dWV1eCBldCBpbnRhY3QgZGFucyBzYSBzdXNjZXB0aWJpbGl06SBqdXNxdSfgIGNldHRlIG1hbGhldXJldXNlIHZpbGxlIGRlIE1ldW5nLiIKKyJGcmVuY2giLCAiQXZlYyB1biBwYXJlaWwgX3ZhZGUtbWVjdW1fLCBkJ0FydGFnbmFuIHNlIHRyb3V2YSwgYXUgbW9yYWwgY29tbWUgYXUgcGh5c2lxdWUsIHVuZSBjb3BpZSBleGFjdGUgZHUgaOlyb3MgZGUgQ2VydmFudGVzLCBhdXF1ZWwgbm91cyBsJ2F2b25zIHNpIGhldXJldXNlbWVudCBjb21wYXLpIGxvcnNxdWUgbm9zIGRldm9pcnMgZCdoaXN0b3JpZW4gbm91cyBvbnQgZmFpdCB1bmUgbuljZXNzaXTpIGRlIHRyYWNlciBzb24gcG9ydHJhaXQuIERvbiBRdWljaG90dGUgcHJlbmFpdCBsZXMgbW91bGlucyDgIHZlbnQgcG91ciBkZXMgZ+lhbnRzIGV0IGxlcyBtb3V0b25zIHBvdXIgZGVzIGFybellcywgZCdBcnRhZ25hbiBwcml0IGNoYXF1ZSBzb3VyaXJlIHBvdXIgdW5lIGluc3VsdGUgZXQgY2hhcXVlIHJlZ2FyZCBwb3VyIHVuZSBwcm92b2NhdGlvbi4gSWwgZW4gculzdWx0YSBxdSdpbCBldXQgdG91am91cnMgbGUgcG9pbmcgZmVybekgZGVwdWlzIFRhcmJlcyBqdXNxdSfgIE1ldW5nLCBldCBxdWUgbCd1biBkYW5zIGwnYXV0cmUgaWwgcG9ydGEgbGEgbWFpbiBhdSBwb21tZWF1IGRlIHNvbiDpcOllIGRpeCBmb2lzIHBhciBqb3VyOyB0b3V0ZWZvaXMgbGUgcG9pbmcgbmUgZGVzY2VuZGl0IHN1ciBhdWN1bmUgbeJjaG9pcmUsIGV0IGwn6XDpZSBuZSBzb3J0aXQgcG9pbnQgZGUgc29uIGZvdXJyZWF1LiBDZSBuJ2VzdCBwYXMgcXVlIGxhIHZ1ZSBkdSBtYWxlbmNvbnRyZXV4IGJpZGV0IGphdW5lIG4n6XBhbm917nQgYmllbiBkZXMgc291cmlyZXMgc3VyIGxlcyB2aXNhZ2VzIGRlcyBwYXNzYW50czsgbWFpcywgY29tbWUgYXUtZGVzc3VzIGR1IGJpZGV0IHNvbm5haXQgdW5lIOlw6WUgZGUgdGFpbGxlIHJlc3BlY3RhYmxlIGV0IHF1J2F1LWRlc3N1cyBkZSBjZXR0ZSDpcOllIGJyaWxsYWl0IHVuIG9laWwgcGx1dPR0IGbpcm9jZSBxdWUgZmllciwgbGVzIHBhc3NhbnRzIHLpcHJpbWFpZW50IGxldXIgaGlsYXJpdOksIG91LCBzaSBsJ2hpbGFyaXTpIGwnZW1wb3J0YWl0IHN1ciBsYSBwcnVkZW5jZSwgaWxzIHTiY2hhaWVudCBhdSBtb2lucyBkZSBuZSByaXJlIHF1ZSBkJ3VuIHNldWwgY/R06SwgY29tbWUgbGVzIG1hc3F1ZXMgYW50aXF1ZXMuIEQnQXJ0YWduYW4gZGVtZXVyYSBkb25jIG1hamVzdHVldXggZXQgaW50YWN0IGRhbnMgc2Egc3VzY2VwdGliaWxpdOkganVzcXUn4CBjZXR0ZSBtYWxoZXVyZXVzZSB2aWxsZSBkZSBNZXVuZy4iCiAiRnJlbmNoIiwgIqtWb3VzIGRpdGVzIGRvbmMsIHJlcHJpdCBkJ0FydGFnbmFuLCBxdWUgdm91cyBzb3Vw529ubmV6IGNldCBpbXBlcnRpbmVudCBnZW50aWxob21tZS4iCiAiRW5nbGlzaCIsICInV2h5LCcgc2FpZCB0aGUgRG9kbywgJ3RoZSBiZXN0IHdheSB0byBleHBsYWluIGl0IGlzIHRvIGRvIGl0LicgKEFuZCwgYXMgeW91IG1pZ2h0IGxpa2UgdG8gdHJ5IHRoZSB0aGluZyB5b3Vyc2VsZiwgc29tZSB3aW50ZXIgZGF5LCBJIHdpbGwgdGVsbCB5b3UgaG93IHRoZSBEb2RvIG1hbmFnZWQgaXQuKSIKLSJFbmdsaXNoIiwgIkRlIHNvbiBj9HTpLCBldCBzb3VzIGNlIHJhcHBvcnQsIGxlIGNhcmRpbmFsIG4n6XRhaXQgcGFzIGVuIHJlc3RlIGF2ZWMgbGUgcm9pLiBRdWFuZCBpbCBhdmFpdCB2dSBsYSBmb3JtaWRhYmxlIOlsaXRlIGRvbnQgTG91aXMgWElJSSBzJ2VudG91cmFpdCwgY2Ugc2Vjb25kIG91IHBsdXT0dCBjZSBwcmVtaWVyIHJvaSBkZSBGcmFuY2UgYXZhaXQgdm91bHUsIGx1aSBhdXNzaSwgYXZvaXIgc2EgZ2FyZGUuIElsIGV1dCBkb25jIHNlcyBtb3VzcXVldGFpcmVzIGNvbW1lIExvdWlzIFhJSUkgYXZhaXQgbGVzIHNpZW5zIGV0IGwnb24gdm95YWl0IGNlcyBkZXV4IHB1aXNzYW5jZXMgcml2YWxlcyB0cmllciBwb3VyIGxldXIgc2VydmljZSwgZGFucyB0b3V0ZXMgbGVzIHByb3ZpbmNlcyBkZSBGcmFuY2UgZXQgbeptZSBkYW5zIHRvdXMgbGVzIMl0YXRzIOl0cmFuZ2VycywgbGVzIGhvbW1lcyBj6WzoYnJlcyBwb3VyIGxlcyBncmFuZHMgY291cHMgZCfpcOllLiBBdXNzaSBSaWNoZWxpZXUgZXQgTG91aXMgWElJSSBzZSBkaXNwdXRhaWVudCBzb3V2ZW50LCBlbiBmYWlzYW50IGxldXIgcGFydGllIGQn6WNoZWNzLCBsZSBzb2lyLCBhdSBzdWpldCBkdSBt6XJpdGUgZGUgbGV1cnMgc2Vydml0ZXVycy4gQ2hhY3VuIHZhbnRhaXQgbGEgdGVudWUgZXQgbGUgY291cmFnZSBkZXMgc2llbnMsIGV0IHRvdXQgZW4gc2UgcHJvbm9u52FudCB0b3V0IGhhdXQgY29udHJlIGxlcyBkdWVscyBldCBjb250cmUgbGVzIHJpeGVzLCBpbHMgbGVzIGV4Y2l0YWllbnQgdG91dCBiYXMg4CBlbiB2ZW5pciBhdXggbWFpbnMsIGV0IGNvbmNldmFpZW50IHVuIHbpcml0YWJsZSBjaGFncmluIG91IHVuZSBqb2llIGltbW9k6XLpZSBkZSBsYSBk6WZhaXRlIG91IGRlIGxhIHZpY3RvaXJlIGRlcyBsZXVycy4gQWluc2ksIGR1IG1vaW5zLCBsZSBkaXNlbnQgbGVzIG3pbW9pcmVzIGQndW4gaG9tbWUgcXVpIGZ1dCBkYW5zIHF1ZWxxdWVzLXVuZXMgZGUgY2VzIGTpZmFpdGVzIGV0IGRhbnMgYmVhdWNvdXAgZGUgY2VzIHZpY3RvaXJlcy4iCisiRnJlbmNoIiwgIkRlIHNvbiBj9HTpLCBldCBzb3VzIGNlIHJhcHBvcnQsIGxlIGNhcmRpbmFsIG4n6XRhaXQgcGFzIGVuIHJlc3RlIGF2ZWMgbGUgcm9pLiBRdWFuZCBpbCBhdmFpdCB2dSBsYSBmb3JtaWRhYmxlIOlsaXRlIGRvbnQgTG91aXMgWElJSSBzJ2VudG91cmFpdCwgY2Ugc2Vjb25kIG91IHBsdXT0dCBjZSBwcmVtaWVyIHJvaSBkZSBGcmFuY2UgYXZhaXQgdm91bHUsIGx1aSBhdXNzaSwgYXZvaXIgc2EgZ2FyZGUuIElsIGV1dCBkb25jIHNlcyBtb3VzcXVldGFpcmVzIGNvbW1lIExvdWlzIFhJSUkgYXZhaXQgbGVzIHNpZW5zIGV0IGwnb24gdm95YWl0IGNlcyBkZXV4IHB1aXNzYW5jZXMgcml2YWxlcyB0cmllciBwb3VyIGxldXIgc2VydmljZSwgZGFucyB0b3V0ZXMgbGVzIHByb3ZpbmNlcyBkZSBGcmFuY2UgZXQgbeptZSBkYW5zIHRvdXMgbGVzIMl0YXRzIOl0cmFuZ2VycywgbGVzIGhvbW1lcyBj6WzoYnJlcyBwb3VyIGxlcyBncmFuZHMgY291cHMgZCfpcOllLiBBdXNzaSBSaWNoZWxpZXUgZXQgTG91aXMgWElJSSBzZSBkaXNwdXRhaWVudCBzb3V2ZW50LCBlbiBmYWlzYW50IGxldXIgcGFydGllIGQn6WNoZWNzLCBsZSBzb2lyLCBhdSBzdWpldCBkdSBt6XJpdGUgZGUgbGV1cnMgc2Vydml0ZXVycy4gQ2hhY3VuIHZhbnRhaXQgbGEgdGVudWUgZXQgbGUgY291cmFnZSBkZXMgc2llbnMsIGV0IHRvdXQgZW4gc2UgcHJvbm9u52FudCB0b3V0IGhhdXQgY29udHJlIGxlcyBkdWVscyBldCBjb250cmUgbGVzIHJpeGVzLCBpbHMgbGVzIGV4Y2l0YWllbnQgdG91dCBiYXMg4CBlbiB2ZW5pciBhdXggbWFpbnMsIGV0IGNvbmNldmFpZW50IHVuIHbpcml0YWJsZSBjaGFncmluIG91IHVuZSBqb2llIGltbW9k6XLpZSBkZSBsYSBk6WZhaXRlIG91IGRlIGxhIHZpY3RvaXJlIGRlcyBsZXVycy4gQWluc2ksIGR1IG1vaW5zLCBsZSBkaXNlbnQgbGVzIG3pbW9pcmVzIGQndW4gaG9tbWUgcXVpIGZ1dCBkYW5zIHF1ZWxxdWVzLXVuZXMgZGUgY2VzIGTpZmFpdGVzIGV0IGRhbnMgYmVhdWNvdXAgZGUgY2VzIHZpY3RvaXJlcy4iCiAiRW5nbGlzaCIsICJKdXN0IHRoZW4gaGVyIGhlYWQgc3RydWNrIGFnYWluc3QgdGhlIHJvb2Ygb2YgdGhlIGhhbGw6IGluIGZhY3Qgc2hlIHdhcyBub3cgbW9yZSB0aGFuIG5pbmUgZmVldCBoaWdoLCBhbmQgc2hlIGF0IG9uY2UgdG9vayB1cCB0aGUgbGl0dGxlIGdvbGRlbiBrZXkgYW5kIGh1cnJpZWQgb2ZmIHRvIHRoZSBnYXJkZW4gZG9vci4iCiAiRW5nbGlzaCIsICIiCiAiRnJlbmNoIiwgIkFycml26SBs4CwgY2hhY3VuIHB1dCB2b2lyIGV0IHJlY29ubmHudHJlIGxhIGNhdXNlIGRlIGNldHRlIHJ1bWV1ci4iCkBAIC0zMTMsNyArMzEzLDcgQEAKICJTcGFuaXNoIiwgIlB1ZXN0byBub21icmUsIHkgdGFuIGEgc3UgZ3VzdG8sIGEgc3UgY2FiYWxsbywgcXVpc28gcG9u6XJzZWxlIGEgc+0gbWlzbW8sIHkgZW4gZXN0ZSBwZW5zYW1pZW50byBkdXLzIG90cm9zIG9jaG8gZO1hcywgeSBhbCBjYWJvIHNlIHZpbm8gYSBsbGFtYXIgZG9uIFF1aWpvdGU7IGRlIGRvbmRlIC1jb21vIHF1ZWRhIGRpY2hvLSB0b21hcm9uIG9jYXNp824gbG9zIGF1dG9yZXMgZGVzdGEgdGFuIHZlcmRhZGVyYSBoaXN0b3JpYSBxdWUsIHNpbiBkdWRhLCBzZSBkZWLtYSBkZSBsbGFtYXIgUXVpamFkYSwgeSBubyBRdWVzYWRhLCBjb21vIG90cm9zIHF1aXNpZXJvbiBkZWNpci4gUGVybywgYWNvcmThbmRvc2UgcXVlIGVsIHZhbGVyb3NvIEFtYWTtcyBubyBz82xvIHNlIGhhYu1hIGNvbnRlbnRhZG8gY29uIGxsYW1hcnNlIEFtYWTtcyBhIHNlY2FzLCBzaW5vIHF1ZSBh8WFkafMgZWwgbm9tYnJlIGRlIHN1IHJlaW5vIHkgcGF0cmlhLCBwb3IgSGVwaWxhIGZhbW9zYSwgeSBzZSBsbGFt8yBBbWFk7XMgZGUgR2F1bGEsIGFz7SBxdWlzbywgY29tbyBidWVuIGNhYmFsbGVybywgYfFhZGlyIGFsIHN1eW8gZWwgbm9tYnJlIGRlIGxhIHN1eWEgeSBsbGFtYXJzZSBkb24gUXVpam90ZSBkZSBsYSBNYW5jaGEsIGNvbiBxdWUsIGEgc3UgcGFyZWNlciwgZGVjbGFyYWJhIG11eSBhbCB2aXZvIHN1IGxpbmFqZSB5IHBhdHJpYSwgeSBsYSBob25yYWJhIGNvbiB0b21hciBlbCBzb2JyZW5vbWJyZSBkZWxsYS4iCiAiRW5nbGlzaCIsICInWW91IGFyZSBub3QgYXR0ZW5kaW5nIScgc2FpZCB0aGUgTW91c2UgdG8gQWxpY2Ugc2V2ZXJlbHkuICdXaGF0IGFyZSB5b3UgdGhpbmtpbmcgb2Y/JyIKICJTcGFuaXNoIiwgImRlIDE2MDQgYfFvcy4iCi0iRW5nbGlzaCIsICK7RW4gbG8gZGUgY2l0YXIgZW4gbGFzIG3hcmdlbmVzIGxvcyBsaWJyb3MgeSBhdXRvcmVzIGRlIGRvbmRlIHNhY+FyZWRlcyBsYXMgc2VudGVuY2lhcyB5IGRpY2hvcyBxdWUgcHVzaelyZWRlcyBlbiB2dWVzdHJhIGhpc3RvcmlhLCBubyBoYXkgbeFzIHNpbm8gaGFjZXIsIGRlIG1hbmVyYSBxdWUgdmVuZ2EgYSBwZWxvLCBhbGd1bmFzIHNlbnRlbmNpYXMgbyBsYXRpbmVzIHF1ZSB2b3Mgc2Vw4WlzIGRlIG1lbW9yaWEsIG8sIGEgbG8gbWVub3MsIHF1ZSBvcyBjdWVzdGVuIHBvY28gdHJhYmFqbyBlbCBidXNjYWxsZTsgY29tbyBzZXLhIHBvbmVyLCB0cmF0YW5kbyBkZSBsaWJlcnRhZCB5IGNhdXRpdmVyaW86IgorIlNwYW5pc2giLCAiu0VuIGxvIGRlIGNpdGFyIGVuIGxhcyBt4XJnZW5lcyBsb3MgbGlicm9zIHkgYXV0b3JlcyBkZSBkb25kZSBzYWPhcmVkZXMgbGFzIHNlbnRlbmNpYXMgeSBkaWNob3MgcXVlIHB1c2npcmVkZXMgZW4gdnVlc3RyYSBoaXN0b3JpYSwgbm8gaGF5IG3hcyBzaW5vIGhhY2VyLCBkZSBtYW5lcmEgcXVlIHZlbmdhIGEgcGVsbywgYWxndW5hcyBzZW50ZW5jaWFzIG8gbGF0aW5lcyBxdWUgdm9zIHNlcOFpcyBkZSBtZW1vcmlhLCBvLCBhIGxvIG1lbm9zLCBxdWUgb3MgY3Vlc3RlbiBwb2NvIHRyYWJham8gZWwgYnVzY2FsbGU7IGNvbW8gc2Vy4SBwb25lciwgdHJhdGFuZG8gZGUgbGliZXJ0YWQgeSBjYXV0aXZlcmlvOiIKICJFbmdsaXNoIiwgIidPaCwgeW91IGZvb2xpc2ggQWxpY2UhJyBzaGUgYW5zd2VyZWQgaGVyc2VsZi4gJ0hvdyBjYW4geW91IGxlYXJuIGxlc3NvbnMgaW4gaGVyZT8gV2h5LCB0aGVyZSdzIGhhcmRseSByb29tIGZvciBZT1UsIGFuZCBubyByb29tIGF0IGFsbCBmb3IgYW55IGxlc3Nvbi1ib29rcyEnIgogIlNwYW5pc2giLCAioU9oLCBj821vIHNlIGhvbGfzIG51ZXN0cm8gYnVlbiBjYWJhbGxlcm8gY3VhbmRvIGh1Ym8gaGVjaG8gZXN0ZSBkaXNjdXJzbywgeSBt4XMgY3VhbmRvIGhhbGzzIGEgcXVpZW4gZGFyIG5vbWJyZSBkZSBzdSBkYW1hISBZIGZ1ZSwgYSBsbyBxdWUgc2UgY3JlZSwgcXVlIGVuIHVuIGx1Z2FyIGNlcmNhIGRlbCBzdXlvIGhhYu1hIHVuYSBtb3phIGxhYnJhZG9yYSBkZSBtdXkgYnVlbiBwYXJlY2VyLCBkZSBxdWllbiDpbCB1biB0aWVtcG8gYW5kdXZvIGVuYW1vcmFkbywgYXVucXVlLCBzZWf6biBzZSBlbnRpZW5kZSwgZWxsYSBqYW3hcyBsbyBzdXBvLCBuaSBsZSBkaW8gY2F0YSBkZWxsby4gTGxhbeFiYXNlIEFsZG9uemEgTG9yZW56bywgeSBhIOlzdGEgbGUgcGFyZWNp8yBzZXIgYmllbiBkYXJsZSB07XR1bG8gZGUgc2Xxb3JhIGRlIHN1cyBwZW5zYW1pZW50b3M7IHksIGJ1c2PhbmRvbGUgbm9tYnJlIHF1ZSBubyBkZXNkaWplc2UgbXVjaG8gZGVsIHN1eW8sIHkgcXVlIHRpcmFzZSB5IHNlIGVuY2FtaW5hc2UgYWwgZGUgcHJpbmNlc2EgeSBncmFuIHNl8W9yYSwgdmlubyBhIGxsYW1hcmxhIER1bGNpbmVhIGRlbCBUb2Jvc28sIHBvcnF1ZSBlcmEgbmF0dXJhbCBkZWwgVG9ib3NvOyBub21icmUsIGEgc3UgcGFyZWNlciwgbfpzaWNvIHkgcGVyZWdyaW5vIHkgc2lnbmlmaWNhdGl2bywgY29tbyB0b2RvcyBsb3MgZGVt4XMgcXVlIGEg6WwgeSBhIHN1cyBjb3NhcyBoYWLtYSBwdWVzdG8uIgogIlNwYW5pc2giLCAiIgpAQCAtMzMyLDcgKzMzMiw3IEBACiAiRnJlbmNoIiwgIlRy6XZpbGxlIGF2YWl0IHByaXMgbGUgY/R06SBmYWlibGUgZGUgc29uIG1h7nRyZSwgZXQgYydlc3Qg4CBjZXR0ZSBhZHJlc3NlIHF1J2lsIGRldmFpdCBsYSBsb25ndWUgZXQgY29uc3RhbnRlIGZhdmV1ciBkJ3VuIHJvaSBxdWkgbidhIHBhcyBsYWlzc+kgbGEgculwdXRhdGlvbiBkJ2F2b2lyIOl06SB0cuhzIGZpZOhsZSDgIHNlcyBhbWl0aelzLiBJbCBmYWlzYWl0IHBhcmFkZXIgc2VzIG1vdXNxdWV0YWlyZXMgZGV2YW50IGxlIGNhcmRpbmFsIEFybWFuZCBEdXBsZXNzaXMgYXZlYyB1biBhaXIgbmFycXVvaXMgcXVpIGjpcmlzc2FpdCBkZSBjb2zocmUgbGEgbW91c3RhY2hlIGdyaXNlIGRlIFNvbiDJbWluZW5jZS4gVHLpdmlsbGUgZW50ZW5kYWl0IGFkbWlyYWJsZW1lbnQgYmllbiBsYSBndWVycmUgZGUgY2V0dGUg6XBvcXVlLCBv+SwgcXVhbmQgb24gbmUgdml2YWl0IHBhcyBhdXggZOlwZW5zIGRlIGwnZW5uZW1pLCBvbiB2aXZhaXQgYXV4IGTpcGVucyBkZSBzZXMgY29tcGF0cmlvdGVzOiBzZXMgc29sZGF0cyBmb3JtYWllbnQgdW5lIGzpZ2lvbiBkZSBkaWFibGVzIOAgcXVhdHJlLCBpbmRpc2NpcGxpbullIHBvdXIgdG91dCBhdXRyZSBxdWUgcG91ciBsdWkuIgogIkVuZ2xpc2giLCAiTGFzdCBjYW1lIGEgbGl0dGxlIGZlZWJsZSwgc3F1ZWFraW5nIHZvaWNlLCAoJ1RoYXQncyBCaWxsLCcgdGhvdWdodCBBbGljZSwpICdXZWxsLCBJIGhhcmRseSBrbm93LS1ObyBtb3JlLCB0aGFuayB5ZTsgSSdtIGJldHRlciBub3ctLWJ1dCBJJ20gYSBkZWFsIHRvbyBmbHVzdGVyZWQgdG8gdGVsbCB5b3UtLWFsbCBJIGtub3cgaXMsIHNvbWV0aGluZyBjb21lcyBhdCBtZSBsaWtlIGEgSmFjay1pbi10aGUtYm94LCBhbmQgdXAgSSBnb2VzIGxpa2UgYSBza3ktcm9ja2V0ISciCiAiRnJlbmNoIiwgIi0tIERhbnMgbGEgY2hhbWJyZSBkZSBtYSBmZW1tZSwgb/kgb24gbGUgcGFuc2UsIGF1IHByZW1pZXIg6XRhZ2UuIgotIkVuZ2xpc2giLCAiLUJpZW4gcGFyZWNlIGxhIG1lc3VyYSBlbiBsYXMgZmVybW9zYXMsIHkgZXMgbXVjaGEgc2FuZGV6IGFkZW3hcyBsYSByaXNhIHF1ZSBkZSBsZXZlIGNhdXNhIHByb2NlZGU7IHBlcm8gbm8gdm9zIGxvIGRpZ28gcG9ycXVlIG9zIGFjdWl0ZWRlcyBuaSBtb3N0cmVkZXMgbWFsIHRhbGFudGU7IHF1ZSBlbCBt7W8gbm9uIGVzIGRlIOFsIHF1ZSBkZSBzZXJ2aXJvcy4iCisiU3BhbmlzaCIsICItQmllbiBwYXJlY2UgbGEgbWVzdXJhIGVuIGxhcyBmZXJtb3NhcywgeSBlcyBtdWNoYSBzYW5kZXogYWRlbeFzIGxhIHJpc2EgcXVlIGRlIGxldmUgY2F1c2EgcHJvY2VkZTsgcGVybyBubyB2b3MgbG8gZGlnbyBwb3JxdWUgb3MgYWN1aXRlZGVzIG5pIG1vc3RyZWRlcyBtYWwgdGFsYW50ZTsgcXVlIGVsIG3tbyBub24gZXMgZGUg4WwgcXVlIGRlIHNlcnZpcm9zLiIKICJFbmdsaXNoIiwgIlRoaXMgcXVlc3Rpb24gdGhlIERvZG8gY291bGQgbm90IGFuc3dlciB3aXRob3V0IGEgZ3JlYXQgZGVhbCBvZiB0aG91Z2h0LCBhbmQgaXQgc2F0IGZvciBhIGxvbmcgdGltZSB3aXRoIG9uZSBmaW5nZXIgcHJlc3NlZCB1cG9uIGl0cyBmb3JlaGVhZCAodGhlIHBvc2l0aW9uIGluIHdoaWNoIHlvdSB1c3VhbGx5IHNlZSBTaGFrZXNwZWFyZSwgaW4gdGhlIHBpY3R1cmVzIG9mIGhpbSksIHdoaWxlIHRoZSByZXN0IHdhaXRlZCBpbiBzaWxlbmNlLiBBdCBsYXN0IHRoZSBEb2RvIHNhaWQsICdFVkVSWUJPRFkgaGFzIHdvbiwgYW5kIGFsbCBtdXN0IGhhdmUgcHJpemVzLiciCiAiRW5nbGlzaCIsICInSSBkaWRuJ3QgbWVhbiBpdCEnIHBsZWFkZWQgcG9vciBBbGljZS4gJ0J1dCB5b3UncmUgc28gZWFzaWx5IG9mZmVuZGVkLCB5b3Uga25vdyEnIgogIlNwYW5pc2giLCAiTWlndWVsIGRlIENlcnZhbnRlcyBTYWF2ZWRyYS4iCkBAIC0zNDYsNyArMzQ2LDcgQEAKICJFbmdsaXNoIiwgIiIKICJGcmVuY2giLCAiLS0gVm91cyBsZSBzYXZleiBiaWVuLCBwdWlzcXVlIGplIHZvdXMgYXZhaXMgZG9ubukgbCdvcmRyZSBkZSBzZWxsZXIgbW9uIGNoZXZhbC4gTmUgbSdhLXQtb24gcG9pbnQgb2LpaT8iCiAiRW5nbGlzaCIsICInTm90IGxpa2UgY2F0cyEnIGNyaWVkIHRoZSBNb3VzZSwgaW4gYSBzaHJpbGwsIHBhc3Npb25hdGUgdm9pY2UuICdXb3VsZCBZT1UgbGlrZSBjYXRzIGlmIHlvdSB3ZXJlIG1lPyciCi0iRW5nbGlzaCIsICJvIFJvY2luYW50ZSwgcXVlIOlzdGUgZXMgZWwgbm9tYnJlLCBzZfFvcmFzIG3tYXMsIGRlIG1pIGNhYmFsbG8sIHkgZG9uIFF1aWpvdGUgZGUgbGEgTWFuY2hhIGVsIG3tbzsgcXVlLCBwdWVzdG8gcXVlIG5vIHF1aXNpZXJhIGRlc2N1YnJpcm1lIGZhc3RhIHF1ZSBsYXMgZmF6YfFhcyBmZWNoYXMgZW4gdnVlc3RybyBzZXJ2aWNpbyB5IHBybyBtZSBkZXNjdWJyaWVyYW4sIGxhIGZ1ZXJ6YSBkZSBhY29tb2RhciBhbCBwcm9w83NpdG8gcHJlc2VudGUgZXN0ZSByb21hbmNlIHZpZWpvIGRlIExhbnphcm90ZSBoYSBzaWRvIGNhdXNhIHF1ZSBzZXDhaXMgbWkgbm9tYnJlIGFudGVzIGRlIHRvZGEgc2F68247IHBlcm8sIHRpZW1wbyB2ZW5kcuEgZW4gcXVlIGxhcyB2dWVzdHJhcyBzZfFvcu1hcyBtZSBtYW5kZW4geSB5byBvYmVkZXpjYSwgeSBlbCB2YWxvciBkZSBtaSBicmF6byBkZXNjdWJyYSBlbCBkZXNlbyBxdWUgdGVuZ28gZGUgc2Vydmlyb3MuIgorIlNwYW5pc2giLCAibyBSb2NpbmFudGUsIHF1ZSDpc3RlIGVzIGVsIG5vbWJyZSwgc2Xxb3JhcyBt7WFzLCBkZSBtaSBjYWJhbGxvLCB5IGRvbiBRdWlqb3RlIGRlIGxhIE1hbmNoYSBlbCBt7W87IHF1ZSwgcHVlc3RvIHF1ZSBubyBxdWlzaWVyYSBkZXNjdWJyaXJtZSBmYXN0YSBxdWUgbGFzIGZhemHxYXMgZmVjaGFzIGVuIHZ1ZXN0cm8gc2VydmljaW8geSBwcm8gbWUgZGVzY3VicmllcmFuLCBsYSBmdWVyemEgZGUgYWNvbW9kYXIgYWwgcHJvcPNzaXRvIHByZXNlbnRlIGVzdGUgcm9tYW5jZSB2aWVqbyBkZSBMYW56YXJvdGUgaGEgc2lkbyBjYXVzYSBxdWUgc2Vw4WlzIG1pIG5vbWJyZSBhbnRlcyBkZSB0b2RhIHNhevNuOyBwZXJvLCB0aWVtcG8gdmVuZHLhIGVuIHF1ZSBsYXMgdnVlc3RyYXMgc2Xxb3LtYXMgbWUgbWFuZGVuIHkgeW8gb2JlZGV6Y2EsIHkgZWwgdmFsb3IgZGUgbWkgYnJhem8gZGVzY3VicmEgZWwgZGVzZW8gcXVlIHRlbmdvIGRlIHNlcnZpcm9zLiIKICJGcmVuY2giLCAiLS0gTm9uLCBkZXZhbnQgdW5lIGZlbW1lLCB2b3VzIG4nb3NlcmlleiBwYXMgZnVpciwgamUgcHLpc3VtZS4iCiAiRW5nbGlzaCIsICJKdXN0IHRoZW4gc2hlIGhlYXJkIHNvbWV0aGluZyBzcGxhc2hpbmcgYWJvdXQgaW4gdGhlIHBvb2wgYSBsaXR0bGUgd2F5IG9mZiwgYW5kIHNoZSBzd2FtIG5lYXJlciB0byBtYWtlIG91dCB3aGF0IGl0IHdhczogYXQgZmlyc3Qgc2hlIHRob3VnaHQgaXQgbXVzdCBiZSBhIHdhbHJ1cyBvciBoaXBwb3BvdGFtdXMsIGJ1dCB0aGVuIHNoZSByZW1lbWJlcmVkIGhvdyBzbWFsbCBzaGUgd2FzIG5vdywgYW5kIHNoZSBzb29uIG1hZGUgb3V0IHRoYXQgaXQgd2FzIG9ubHkgYSBtb3VzZSB0aGF0IGhhZCBzbGlwcGVkIGluIGxpa2UgaGVyc2VsZi4iCiAiU3BhbmlzaCIsICItv1F1aeluIGR1ZGEgc2lubyBxdWUgZW4gbG9zIHZlbmlkZXJvcyB0aWVtcG9zLCBjdWFuZG8gc2FsZ2EgYSBsdXogbGEgdmVyZGFkZXJhIGhpc3RvcmlhIGRlIG1pcyBmYW1vc29zIGhlY2hvcywgcXVlIGVsIHNhYmlvIHF1ZSBsb3MgZXNjcmliaWVyZSBubyBwb25nYSwgY3VhbmRvIGxsZWd1ZSBhIGNvbnRhciBlc3RhIG1pIHByaW1lcmEgc2FsaWRhZCB0YW4gZGUgbWHxYW5hLCBkZXN0YSBtYW5lcmE/OiCrQXBlbmFzIGhhYu1hIGVsIHJ1YmljdW5kbyBBcG9sbyB0ZW5kaWRvIHBvciBsYSBmYXogZGUgbGEgYW5jaGEgeSBlc3BhY2lvc2EgdGllcnJhIGxhcyBkb3JhZGFzIGhlYnJhcyBkZSBzdXMgaGVybW9zb3MgY2FiZWxsb3MsIHkgYXBlbmFzIGxvcyBwZXF1ZfFvcyB5IHBpbnRhZG9zIHBhamFyaWxsb3MgY29uIHN1cyBhcnBhZGFzIGxlbmd1YXMgaGFi7WFuIHNhbHVkYWRvIGNvbiBkdWxjZSB5IG1lbGlmbHVhIGFybW9u7WEgbGEgdmVuaWRhIGRlIGxhIHJvc2FkYSBhdXJvcmEsIHF1ZSwgZGVqYW5kbyBsYSBibGFuZGEgY2FtYSBkZWwgY2Vsb3NvIG1hcmlkbywgcG9yIGxhcyBwdWVydGFzIHkgYmFsY29uZXMgZGVsIG1hbmNoZWdvIGhvcml6b250ZSBhIGxvcyBtb3J0YWxlcyBzZSBtb3N0cmFiYSwgY3VhbmRvIGVsIGZhbW9zbyBjYWJhbGxlcm8gZG9uIFF1aWpvdGUgZGUgbGEgTWFuY2hhLCBkZWphbmRvIGxhcyBvY2lvc2FzIHBsdW1hcywgc3ViafMgc29icmUgc3UgZmFtb3NvIGNhYmFsbG8gUm9jaW5hbnRlLCB5IGNvbWVuevMgYSBjYW1pbmFyIHBvciBlbCBhbnRpZ3VvIHkgY29ub2NpZG8gY2FtcG8gZGUgTW9udGllbLsuIgpAQCAtMzU4LDkgKzM1OCw5IEBACiAiU3BhbmlzaCIsICItU2kgeW8sIHBvciBtYWxvcyBkZSBtaXMgcGVjYWRvcywgbyBwb3IgbWkgYnVlbmEgc3VlcnRlLCBtZSBlbmN1ZW50cm8gcG9yIGFo7SBjb24gYWxn+m4gZ2lnYW50ZSwgY29tbyBkZSBvcmRpbmFyaW8gbGVzIGFjb250ZWNlIGEgbG9zIGNhYmFsbGVyb3MgYW5kYW50ZXMsIHkgbGUgZGVycmlibyBkZSB1biBlbmN1ZW50cm8sIG8gbGUgcGFydG8gcG9yIG1pdGFkIGRlbCBjdWVycG8sIG8sIGZpbmFsbWVudGUsIGxlIHZlbnpvIHkgbGUgcmluZG8sIL9ubyBzZXLhIGJpZW4gdGVuZXIgYSBxdWllbiBlbnZpYXJsZSBwcmVzZW50YWRvIHkgcXVlIGVudHJlIHkgc2UgaGlucXVlIGRlIHJvZGlsbGFzIGFudGUgbWkgZHVsY2Ugc2Xxb3JhLCB5IGRpZ2EgY29uIHZveiBodW1pbGRlIHkgcmVuZGlkbzogJydZbywgc2Xxb3JhLCBzb3kgZWwgZ2lnYW50ZSBDYXJhY3VsaWFtYnJvLCBzZfFvciBkZSBsYSDtbnN1bGEgTWFsaW5kcmFuaWEsIGEgcXVpZW4gdmVuY2nzIGVuIHNpbmd1bGFyIGJhdGFsbGEgZWwgamFt4XMgY29tbyBzZSBkZWJlIGFsYWJhZG8gY2FiYWxsZXJvIGRvbiBRdWlqb3RlIGRlIGxhIE1hbmNoYSwgZWwgY3VhbCBtZSBtYW5k8yBxdWUgbWUgcHJlc2VudGFzZSBhbnRlIHZ1ZXN0cmEgbWVyY2VkLCBwYXJhIHF1ZSBsYSB2dWVzdHJhIGdyYW5kZXphIGRpc3BvbmdhIGRlIG3tIGEgc3UgdGFsYW50ZScnPyIKICJTcGFuaXNoIiwgIlNvbmV0byIKICJGcmVuY2giLCAiTWFpcyB1biBjb3VwIGQnb2VpbCBpbXDpcmF0aWYgZGUgbCdpbmNvbm51IHZpbnQgbCdhcnLqdGVyIGNvdXJ0LiBJbCBzYWx1YSBodW1ibGVtZW50IGV0IHNvcnRpdC4iCi0iRW5nbGlzaCIsICJJbiBhbm90aGVyIG1vbWVudCBkb3duIHdlbnQgQWxpY2UgYWZ0ZXIgaXQsIG5ldmVyIG9uY2UgY29uc2lkZXJpbmcgaG93IGluIHRoZSB3b3JsZCBzaGUgd2FzIHRvIGdldCBvdXQgYWdhaW4uIgorIkZyZW5jaCIsICJJbiBhbm90aGVyIG1vbWVudCBkb3duIHdlbnQgQWxpY2UgYWZ0ZXIgaXQsIG5ldmVyIG9uY2UgY29uc2lkZXJpbmcgaG93IGluIHRoZSB3b3JsZCBzaGUgd2FzIHRvIGdldCBvdXQgYWdhaW4uIgogIkZyZW5jaCIsICJMJ2luY29ubnUgbGUgcmVnYXJkYSBlbmNvcmUgdW4gaW5zdGFudCBhdmVjIHNvbiBs6WdlciBzb3VyaXJlLCBldCwgc2UgcmV0aXJhbnQgZGUgbGEgZmVu6nRyZSwgc29ydGl0IGxlbnRlbWVudCBkZSBsJ2j0dGVsbGVyaWUgcG91ciB2ZW5pciDgIGRldXggcGFzIGRlIGQnQXJ0YWduYW4gc2UgcGxhbnRlciBlbiBmYWNlIGR1IGNoZXZhbC4gU2EgY29udGVuYW5jZSB0cmFucXVpbGxlIGV0IHNhIHBoeXNpb25vbWllIHJhaWxsZXVzZSBhdmFpZW50IHJlZG91YmzpIGwnaGlsYXJpdOkgZGUgY2V1eCBhdmVjIGxlc3F1ZWxzIGlsIGNhdXNhaXQgZXQgcXVpLCBldXgsIOl0YWllbnQgcmVzdOlzIOAgbGEgZmVu6nRyZS4iCi0iRW5nbGlzaCIsICJFdCBpbCBzJ+l2YW5vdWl0IHVuZSBzZWNvbmRlIGZvaXMuIgorIkZyZW5jaCIsICJFdCBpbCBzJ+l2YW5vdWl0IHVuZSBzZWNvbmRlIGZvaXMuIgogIkVuZ2xpc2giLCAiJ0kga25vdyB3aGF0ICdpdCcgbWVhbnMgd2VsbCBlbm91Z2gsIHdoZW4gSSBmaW5kIGEgdGhpbmcsJyBzYWlkIHRoZSBEdWNrOiAnaXQncyBnZW5lcmFsbHkgYSBmcm9nIG9yIGEgd29ybS4gVGhlIHF1ZXN0aW9uIGlzLCB3aGF0IGRpZCB0aGUgYXJjaGJpc2hvcCBmaW5kPyciCiAiRW5nbGlzaCIsICInQnV0IHRoZW4sJyB0aG91Z2h0IEFsaWNlLCAnc2hhbGwgSSBORVZFUiBnZXQgYW55IG9sZGVyIHRoYW4gSSBhbSBub3c/IFRoYXQnbGwgYmUgYSBjb21mb3J0LCBvbmUgd2F5LS1uZXZlciB0byBiZSBhbiBvbGQgd29tYW4tLWJ1dCB0aGVuLS1hbHdheXMgdG8gaGF2ZSBsZXNzb25zIHRvIGxlYXJuISBPaCwgSSBzaG91bGRuJ3QgbGlrZSBUSEFUISciCiAiRW5nbGlzaCIsICJUaGlzIHNwZWVjaCBjYXVzZWQgYSByZW1hcmthYmxlIHNlbnNhdGlvbiBhbW9uZyB0aGUgcGFydHkuIFNvbWUgb2YgdGhlIGJpcmRzIGh1cnJpZWQgb2ZmIGF0IG9uY2U6IG9uZSBvbGQgTWFncGllIGJlZ2FuIHdyYXBwaW5nIGl0c2VsZiB1cCB2ZXJ5IGNhcmVmdWxseSwgcmVtYXJraW5nLCAnSSByZWFsbHkgbXVzdCBiZSBnZXR0aW5nIGhvbWU7IHRoZSBuaWdodC1haXIgZG9lc24ndCBzdWl0IG15IHRocm9hdCEnIGFuZCBhIENhbmFyeSBjYWxsZWQgb3V0IGluIGEgdHJlbWJsaW5nIHZvaWNlIHRvIGl0cyBjaGlsZHJlbiwgJ0NvbWUgYXdheSwgbXkgZGVhcnMhIEl0J3MgaGlnaCB0aW1lIHlvdSB3ZXJlIGFsbCBpbiBiZWQhJyBPbiB2YXJpb3VzIHByZXRleHRzIHRoZXkgYWxsIG1vdmVkIG9mZiwgYW5kIEFsaWNlIHdhcyBzb29uIGxlZnQgYWxvbmUuIgpAQCAtNDQzLDcgKzQ0Myw3IEBACiAiU3BhbmlzaCIsICJKdWFuIGRlIEFtZXpxdWV0YS4iCiAiU3BhbmlzaCIsICJQUtNMT0dPIgogIkVuZ2xpc2giLCAiQWxpY2Ugbm90aWNlZCB3aXRoIHNvbWUgc3VycHJpc2UgdGhhdCB0aGUgcGViYmxlcyB3ZXJlIGFsbCB0dXJuaW5nIGludG8gbGl0dGxlIGNha2VzIGFzIHRoZXkgbGF5IG9uIHRoZSBmbG9vciwgYW5kIGEgYnJpZ2h0IGlkZWEgY2FtZSBpbnRvIGhlciBoZWFkLiAnSWYgSSBlYXQgb25lIG9mIHRoZXNlIGNha2VzLCcgc2hlIHRob3VnaHQsICdpdCdzIHN1cmUgdG8gbWFrZSBTT01FIGNoYW5nZSBpbiBteSBzaXplOyBhbmQgYXMgaXQgY2FuJ3QgcG9zc2libHkgbWFrZSBtZSBsYXJnZXIsIGl0IG11c3QgbWFrZSBtZSBzbWFsbGVyLCBJIHN1cHBvc2UuJyIKLSJFbmdsaXNoIiwgIqtDJ2VzdCBm4mNoZXV4LCBjb250aW51YS10LWlsLCBxdWVsbGUgdHJvdXZhaWxsZSBwb3VyIFNhIE1hamVzdOksIHF1aSBjaGVyY2hlIGRlcyBicmF2ZXMgZGUgdG91cyBj9HTpcyBwb3VyIHJlY3J1dGVyIHNlcyBtb3VzcXVldGFpcmVzIbsiCisiRnJlbmNoIiwgIqtDJ2VzdCBm4mNoZXV4LCBjb250aW51YS10LWlsLCBxdWVsbGUgdHJvdXZhaWxsZSBwb3VyIFNhIE1hamVzdOksIHF1aSBjaGVyY2hlIGRlcyBicmF2ZXMgZGUgdG91cyBj9HTpcyBwb3VyIHJlY3J1dGVyIHNlcyBtb3VzcXVldGFpcmVzIbsiCiAiRnJlbmNoIiwgIi0tIERlcyBib25zIHN1ciBsYSB0culzb3JlcmllIHBhcnRpY3VsaehyZSBkZSBTYSBNYWplc3Tpuywgculwb25kaXQgZCdBcnRhZ25hbiwgcXVpLCBjb21wdGFudCBlbnRyZXIgYXUgc2VydmljZSBkdSByb2kgZ3LiY2Ug4CBjZXR0ZSByZWNvbW1hbmRhdGlvbiwgY3JveWFpdCBwb3V2b2lyIGZhaXJlIHNhbnMgbWVudGlyIGNldHRlIHLpcG9uc2UgcXVlbHF1ZSBwZXUgaGFzYXJk6WUuIgogIkZyZW5jaCIsICItLSBQYXMgYXZhbnQgZGUgdCdhdm9pciB0deksIGziY2hlIbsgY3JpYWl0IGQnQXJ0YWduYW4gdG91dCBlbiBmYWlzYW50IGZhY2UgZHUgbWlldXggcXUnaWwgcG91dmFpdCBldCBzYW5zIHJlY3VsZXIgZCd1biBwYXMg4CBzZXMgdHJvaXMgZW5uZW1pcywgcXVpIGxlIG1vdWxhaWVudCBkZSBjb3Vwcy4iCiAiRnJlbmNoIiwgIkVuIHNvcnRhbnQgZGUgbGEgY2hhbWJyZSBwYXRlcm5lbGxlLCBsZSBqZXVuZSBob21tZSB0cm91dmEgc2EgbehyZSBxdWkgbCdhdHRlbmRhaXQgYXZlYyBsYSBmYW1ldXNlIHJlY2V0dGUgZG9udCBsZXMgY29uc2VpbHMgcXVlIG5vdXMgdmVub25zIGRlIHJhcHBvcnRlciBkZXZhaWVudCBu6WNlc3NpdGVyIHVuIGFzc2V6IGZy6XF1ZW50IGVtcGxvaS4gTGVzIGFkaWV1eCBmdXJlbnQgZGUgY2UgY/R06SBwbHVzIGxvbmdzIGV0IHBsdXMgdGVuZHJlcyBxdSdpbHMgbmUgbCdhdmFpZW50IOl06SBkZSBsJ2F1dHJlLCBub24gcGFzIHF1ZSBNLiBkJ0FydGFnbmFuIG4nYWlt4nQgc29uIGZpbHMsIHF1aSDpdGFpdCBzYSBzZXVsZSBwcm9n6W5pdHVyZSwgbWFpcyBNLiBkJ0FydGFnbmFuIOl0YWl0IHVuIGhvbW1lLCBldCBpbCBl+3QgcmVnYXJk6SBjb21tZSBpbmRpZ25lIGQndW4gaG9tbWUgZGUgc2UgbGFpc3NlciBhbGxlciDgIHNvbiDpbW90aW9uLCB0YW5kaXMgcXVlIE1tZSBkJ0FydGFnbmFuIOl0YWl0IGZlbW1lIGV0LCBkZSBwbHVzLCDpdGFpdCBt6HJlLiAtLSBFbGxlIHBsZXVyYSBhYm9uZGFtbWVudCwgZXQsIGRpc29ucy1sZSDgIGxhIGxvdWFuZ2UgZGUgTS4gZCdBcnRhZ25hbiBmaWxzLCBxdWVscXVlcyBlZmZvcnRzIHF1J2lsIHRlbnTidCBwb3VyIHJlc3RlciBmZXJtZSBjb21tZSBsZSBkZXZhaXQg6nRyZSB1biBmdXR1ciBtb3VzcXVldGFpcmUsIGxhIG5hdHVyZSBsJ2VtcG9ydGEgZXQgaWwgdmVyc2EgZm9yY2UgbGFybWVzLCBkb250IGlsIHBhcnZpbnQg4CBncmFuZC1wZWluZSDgIGNhY2hlciBsYSBtb2l0aekuIgpkaWZmIC0tZ2l0IGEvc2FtcGxlcy9wcmVkaWN0aW9uL3ByZWRpY3Rpb24ucHkgYi9zYW1wbGVzL3ByZWRpY3Rpb24vcHJlZGljdGlvbi5weQppbmRleCBhMTMwZjJhLi41MGQ0YjVlIDEwMDY0NAotLS0gYS9zYW1wbGVzL3ByZWRpY3Rpb24vcHJlZGljdGlvbi5weQorKysgYi9zYW1wbGVzL3ByZWRpY3Rpb24vcHJlZGljdGlvbi5weQpAQCAtMjIsNyArMjIsNyBAQAogdGhlIHNldHVwLnNoIHNjcmlwdCB0byBsb2FkIHRoZSBzYW1wbGUgZGF0YSB0byBHb29nbGUgU3RvcmFnZS4KIAogVXNhZ2U6Ci0gICQgcHl0aG9uIHByZWRpY3Rpb24ucHkgLS1vYmplY3RfbmFtZT0iYnVja2V0L29iamVjdCIgLS1pZD0ibW9kZWxfaWQiCisgICQgcHl0aG9uIHByZWRpY3Rpb24ucHkgImJ1Y2tldC9vYmplY3QiICJtb2RlbF9pZCIgInByb2plY3RfaWQiCiAKIFlvdSBjYW4gYWxzbyBnZXQgaGVscCBvbiBhbGwgdGhlIGNvbW1hbmQtbGluZSBmbGFncyB0aGUgcHJvZ3JhbSB1bmRlcnN0YW5kcwogYnkgcnVubmluZzoKQEAgLTQzLDggKzQzLDggQEAKIGltcG9ydCBzeXMKIGltcG9ydCB0aW1lCiAKLWZyb20gZ29vZ2xlYXBpY2xpZW50IGltcG9ydCBkaXNjb3ZlcnkKLWZyb20gZ29vZ2xlYXBpY2xpZW50IGltcG9ydCBzYW1wbGVfdG9vbHMKK2Zyb20gYXBpY2xpZW50IGltcG9ydCBkaXNjb3ZlcnkKK2Zyb20gYXBpY2xpZW50IGltcG9ydCBzYW1wbGVfdG9vbHMKIGZyb20gb2F1dGgyY2xpZW50IGltcG9ydCBjbGllbnQKIAogCkBAIC01NSw5ICs1NSwxMSBAQAogIyBEZWNsYXJlIGNvbW1hbmQtbGluZSBmbGFncy4KIGFyZ3BhcnNlciA9IGFyZ3BhcnNlLkFyZ3VtZW50UGFyc2VyKGFkZF9oZWxwPUZhbHNlKQogYXJncGFyc2VyLmFkZF9hcmd1bWVudCgnb2JqZWN0X25hbWUnLAotICAgICAgICAgICAgICAgICAgICAgaGVscD0nRnVsbCBHb29nbGUgU3RvcmFnZSBwYXRoIG9mIGNzdiBkYXRhIChleCBidWNrZXQvb2JqZWN0KScpCi1hcmdwYXJzZXIuYWRkX2FyZ3VtZW50KCdpZCcsCi0gICAgICAgICAgICAgICAgICAgICBoZWxwPSdNb2RlbCBJZCBvZiB5b3VyIGNob29zaW5nIHRvIG5hbWUgdHJhaW5lZCBtb2RlbCcpCisgICAgaGVscD0nRnVsbCBHb29nbGUgU3RvcmFnZSBwYXRoIG9mIGNzdiBkYXRhIChleCBidWNrZXQvb2JqZWN0KScpCithcmdwYXJzZXIuYWRkX2FyZ3VtZW50KCdtb2RlbF9pZCcsCisgICAgaGVscD0nTW9kZWwgSWQgb2YgeW91ciBjaG9vc2luZyB0byBuYW1lIHRyYWluZWQgbW9kZWwnKQorYXJncGFyc2VyLmFkZF9hcmd1bWVudCgncHJvamVjdF9pZCcsCisgICAgaGVscD0nTW9kZWwgSWQgb2YgeW91ciBjaG9vc2luZyB0byBuYW1lIHRyYWluZWQgbW9kZWwnKQogCiAKIGRlZiBwcmludF9oZWFkZXIobGluZSk6CkBAIC03MCw5ICs3MiwxNSBAQAogCiAKIGRlZiBtYWluKGFyZ3YpOgorICAjIElmIHlvdSBwcmV2aW91c2x5IHJhbiB0aGlzIGFwcCB3aXRoIGFuIGVhcmxpZXIgdmVyc2lvbiBvZiB0aGUgQVBJCisgICMgb3IgaWYgeW91IGNoYW5nZSB0aGUgbGlzdCBvZiBzY29wZXMgYmVsb3csIHJldm9rZSB5b3VyIGFwcCdzIHBlcm1pc3Npb24KKyAgIyBoZXJlOiBodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20vSXNzdWVkQXV0aFN1YlRva2VucworICAjIFRoZW4gcmUtcnVuIHRoZSBhcHAgdG8gcmUtYXV0aG9yaXplIGl0LgogICBzZXJ2aWNlLCBmbGFncyA9IHNhbXBsZV90b29scy5pbml0KAotICAgICAgYXJndiwgJ3ByZWRpY3Rpb24nLCAndjEuNScsIF9fZG9jX18sIF9fZmlsZV9fLCBwYXJlbnRzPVthcmdwYXJzZXJdLAotICAgICAgc2NvcGU9J2h0dHBzOi8vd3d3Lmdvb2dsZWFwaXMuY29tL2F1dGgvcHJlZGljdGlvbicpCisgICAgICBhcmd2LCAncHJlZGljdGlvbicsICd2MS42JywgX19kb2NfXywgX19maWxlX18sIHBhcmVudHM9W2FyZ3BhcnNlcl0sCisgICAgICBzY29wZT0oCisgICAgICAgICAgJ2h0dHBzOi8vd3d3Lmdvb2dsZWFwaXMuY29tL2F1dGgvcHJlZGljdGlvbicsCisgICAgICAgICAgJ2h0dHBzOi8vd3d3Lmdvb2dsZWFwaXMuY29tL2F1dGgvZGV2c3RvcmFnZS5yZWFkX29ubHknKSkKIAogICB0cnk6CiAgICAgIyBHZXQgYWNjZXNzIHRvIHRoZSBQcmVkaWN0aW9uIEFQSS4KQEAgLTgwLDIxICs4OCwyMSBAQAogCiAgICAgIyBMaXN0IG1vZGVscy4KICAgICBwcmludF9oZWFkZXIoJ0ZldGNoaW5nIGxpc3Qgb2YgZmlyc3QgdGVuIG1vZGVscycpCi0gICAgcmVzdWx0ID0gcGFwaS5saXN0KG1heFJlc3VsdHM9MTApLmV4ZWN1dGUoKQorICAgIHJlc3VsdCA9IHBhcGkubGlzdChtYXhSZXN1bHRzPTEwLCBwcm9qZWN0PWZsYWdzLnByb2plY3RfaWQpLmV4ZWN1dGUoKQogICAgIHByaW50ICdMaXN0IHJlc3VsdHM6JwogICAgIHBwcmludC5wcHJpbnQocmVzdWx0KQogCiAgICAgIyBTdGFydCB0cmFpbmluZyByZXF1ZXN0IG9uIGEgZGF0YSBzZXQuCiAgICAgcHJpbnRfaGVhZGVyKCdTdWJtaXR0aW5nIG1vZGVsIHRyYWluaW5nIHJlcXVlc3QnKQotICAgIGJvZHkgPSB7J2lkJzogZmxhZ3MuaWQsICdzdG9yYWdlRGF0YUxvY2F0aW9uJzogZmxhZ3Mub2JqZWN0X25hbWV9Ci0gICAgc3RhcnQgPSBwYXBpLmluc2VydChib2R5PWJvZHkpLmV4ZWN1dGUoKQorICAgIGJvZHkgPSB7J2lkJzogZmxhZ3MubW9kZWxfaWQsICdzdG9yYWdlRGF0YUxvY2F0aW9uJzogZmxhZ3Mub2JqZWN0X25hbWV9CisgICAgc3RhcnQgPSBwYXBpLmluc2VydChib2R5PWJvZHksIHByb2plY3Q9ZmxhZ3MucHJvamVjdF9pZCkuZXhlY3V0ZSgpCiAgICAgcHJpbnQgJ1RyYWluaW5nIHJlc3VsdHM6JwogICAgIHBwcmludC5wcHJpbnQoc3RhcnQpCiAKICAgICAjIFdhaXQgZm9yIHRoZSB0cmFpbmluZyB0byBjb21wbGV0ZS4KICAgICBwcmludF9oZWFkZXIoJ1dhaXRpbmcgZm9yIHRyYWluaW5nIHRvIGNvbXBsZXRlJykKICAgICB3aGlsZSBUcnVlOgotICAgICAgc3RhdHVzID0gcGFwaS5nZXQoaWQ9ZmxhZ3MuaWQpLmV4ZWN1dGUoKQorICAgICAgc3RhdHVzID0gcGFwaS5nZXQoaWQ9ZmxhZ3MubW9kZWxfaWQsIHByb2plY3Q9ZmxhZ3MucHJvamVjdF9pZCkuZXhlY3V0ZSgpCiAgICAgICBzdGF0ZSA9IHN0YXR1c1sndHJhaW5pbmdTdGF0dXMnXQogICAgICAgcHJpbnQgJ1RyYWluaW5nIHN0YXRlOiAnICsgc3RhdGUKICAgICAgIGlmIHN0YXRlID09ICdET05FJzoKQEAgLTExMiwyNSArMTIwLDI3IEBACiAKICAgICAjIERlc2NyaWJlIG1vZGVsLgogICAgIHByaW50X2hlYWRlcignRmV0Y2hpbmcgbW9kZWwgZGVzY3JpcHRpb24nKQotICAgIHJlc3VsdCA9IHBhcGkuYW5hbHl6ZShpZD1mbGFncy5pZCkuZXhlY3V0ZSgpCisgICAgcmVzdWx0ID0gcGFwaS5hbmFseXplKGlkPWZsYWdzLm1vZGVsX2lkLCBwcm9qZWN0PWZsYWdzLnByb2plY3RfaWQpLmV4ZWN1dGUoKQogICAgIHByaW50ICdBbmFseXplIHJlc3VsdHM6JwogICAgIHBwcmludC5wcHJpbnQocmVzdWx0KQogCi0gICAgIyBNYWtlIGEgcHJlZGljdGlvbiB1c2luZyB0aGUgbmV3bHkgdHJhaW5lZCBtb2RlbC4KLSAgICBwcmludF9oZWFkZXIoJ01ha2luZyBhIHByZWRpY3Rpb24nKQotICAgIGJvZHkgPSB7J2lucHV0Jzogeydjc3ZJbnN0YW5jZSc6IFsibXVjaG8gYnVlbm8iXX19Ci0gICAgcmVzdWx0ID0gcGFwaS5wcmVkaWN0KGJvZHk9Ym9keSwgaWQ9ZmxhZ3MuaWQpLmV4ZWN1dGUoKQotICAgIHByaW50ICdQcmVkaWN0aW9uIHJlc3VsdHMuLi4nCi0gICAgcHByaW50LnBwcmludChyZXN1bHQpCisgICAgIyBNYWtlIHNvbWUgcHJlZGljdGlvbnMgdXNpbmcgdGhlIG5ld2x5IHRyYWluZWQgbW9kZWwuCisgICAgcHJpbnRfaGVhZGVyKCdNYWtpbmcgc29tZSBwcmVkaWN0aW9ucycpCisgICAgZm9yIHNhbXBsZV90ZXh0IGluIFsnbXVjaG8gYnVlbm8nLCAnYm9uam91ciwgbW9uIGNoZXIgYW1pJ106CisgICAgICBib2R5ID0geydpbnB1dCc6IHsnY3N2SW5zdGFuY2UnOiBbc2FtcGxlX3RleHRdfX0KKyAgICAgIHJlc3VsdCA9IHBhcGkucHJlZGljdCgKKyAgICAgICAgYm9keT1ib2R5LCBpZD1mbGFncy5tb2RlbF9pZCwgcHJvamVjdD1mbGFncy5wcm9qZWN0X2lkKS5leGVjdXRlKCkKKyAgICAgIHByaW50ICdQcmVkaWN0aW9uIHJlc3VsdHMgZm9yICIlcyIuLi4nICUgc2FtcGxlX3RleHQKKyAgICAgIHBwcmludC5wcHJpbnQocmVzdWx0KQogCiAgICAgIyBEZWxldGUgbW9kZWwuCiAgICAgcHJpbnRfaGVhZGVyKCdEZWxldGluZyBtb2RlbCcpCi0gICAgcmVzdWx0ID0gcGFwaS5kZWxldGUoaWQ9ZmxhZ3MuaWQpLmV4ZWN1dGUoKQorICAgIHJlc3VsdCA9IHBhcGkuZGVsZXRlKGlkPWZsYWdzLm1vZGVsX2lkLCBwcm9qZWN0PWZsYWdzLnByb2plY3RfaWQpLmV4ZWN1dGUoKQogICAgIHByaW50ICdNb2RlbCBkZWxldGVkLicKIAogICBleGNlcHQgY2xpZW50LkFjY2Vzc1Rva2VuUmVmcmVzaEVycm9yOgotICAgIHByaW50ICgiVGhlIGNyZWRlbnRpYWxzIGhhdmUgYmVlbiByZXZva2VkIG9yIGV4cGlyZWQsIHBsZWFzZSByZS1ydW4iCi0gICAgICAidGhlIGFwcGxpY2F0aW9uIHRvIHJlLWF1dGhvcml6ZSIpCisgICAgcHJpbnQgKCdUaGUgY3JlZGVudGlhbHMgaGF2ZSBiZWVuIHJldm9rZWQgb3IgZXhwaXJlZCwgcGxlYXNlIHJlLXJ1biAnCisgICAgICAgICAgICd0aGUgYXBwbGljYXRpb24gdG8gcmUtYXV0aG9yaXplLicpCiAKIAogaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoK