--------------Boundary-00=_IJL1AXYKYQ8ZGNRAKWFJ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit Hi all, this patch adds questionYesNoCancel to KMessageBox. Waldo said I could go ahead and I did so. just call it like the normal way but make sure you add one more argument, I couldn't test this patch because I'm recompiling everything but it compiled and it should work. But I need to go good night Holger --------------Boundary-00=_IJL1AXYKYQ8ZGNRAKWFJ Content-Type: text/x-diff; charset="iso-8859-1"; name="kmessagebox.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="kmessagebox.patch" ZGlmZiAtdXJOIGtkZV91aS5vcmlnL0FVVEhPUlMga2RldWkvQVVUSE9SUwotLS0ga2RlX3VpLm9y aWcvQVVUSE9SUwlXZWQgTWF5IDI0IDIzOjU2OjMzIDIwMDAKKysrIGtkZXVpL0FVVEhPUlMJV2Vk IE9jdCAzMSAwMDoyODowNSAyMDAxCkBAIC05MSwzICs5MSw2IEBACiAKIEZhbGsgQnJldHRzY2hu ZWlkZXIgPGdpZ2FmYWxrQHlhaG9vLmNvbT4KIGNvbnRyaWJ1dGVzIGZvciB0aGUgRG9ja3dpZGdl dCBjbGFzcyBzZXQKKworSG9sZ2VyIEZyZXl0aGVyIDxmcmV5dGhlckB5YWhvby5jb20+CithZGRl ZCBxdWVzdGlvblllc05vQ2FuY2VsIHRvIEtNZXNzYWdlQm94CmRpZmYgLXVyTiBrZGVfdWkub3Jp Zy9rbWVzc2FnZWJveC5jcHAga2RldWkva21lc3NhZ2Vib3guY3BwCi0tLSBrZGVfdWkub3JpZy9r bWVzc2FnZWJveC5jcHAJV2VkIE9jdCAxMCAxOTo0MDozOSAyMDAxCisrKyBrZGV1aS9rbWVzc2Fn ZWJveC5jcHAJV2VkIE9jdCAzMSAwMDoxNjoyOSAyMDAxCkBAIC0xMjAsNyArMTIwLDcgQEAKIEtN ZXNzYWdlQm94OjpxdWVzdGlvblllc05vKFFXaWRnZXQgKnBhcmVudCwgY29uc3QgUVN0cmluZyAm dGV4dCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJmNhcHRpb24s CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZidXR0b25ZZXMsCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZidXR0b25ObywgCisgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZidXR0b25ObywKICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJmRvbnRBc2tBZ2Fpbk5hbWUsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBib29sIG5vdGlmeSkKIHsKQEAgLTEzNCw3ICsxMzQsNyBA QAogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUVN0cmluZ0xpc3QgJnN0cmxpc3Qs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZjYXB0aW9uLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUVN0cmluZyAmYnV0dG9uWWVzLAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgY29uc3QgUVN0cmluZyAmYnV0dG9uTm8sIAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3QgUVN0cmluZyAmYnV0dG9uTm8sCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZkb250QXNrQWdhaW5OYW1lLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgYm9vbCAvKm5vdGlmeSovKQogewpAQCAtMTYzLDcgKzE2Myw3IEBA CiAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvblllcywgYnV0dG9uTm8pOwogCiAgICAgYm9v bCBjaGVja2JveFJlc3VsdDsKLSAgICBpbnQgcmVzdWx0ID0gY3JlYXRlS01lc3NhZ2VCb3goZGlh bG9nLCBRTWVzc2FnZUJveDo6SW5mb3JtYXRpb24sIHRleHQsIHN0cmxpc3QsIAorICAgIGludCBy ZXN1bHQgPSBjcmVhdGVLTWVzc2FnZUJveChkaWFsb2csIFFNZXNzYWdlQm94OjpJbmZvcm1hdGlv biwgdGV4dCwgc3RybGlzdCwKICAgICAgICAgICAgICAgICAgICAgICAgZG9udEFza0FnYWluTmFt ZS5pc0VtcHR5KCkgPyBRU3RyaW5nOjpudWxsIDogaTE4bigiRG8gbm90IGFzayBhZ2FpbiIpLAog ICAgICAgICAgICAgICAgICAgICAgICAmY2hlY2tib3hSZXN1bHQpOwogCkBAIC0xOTksMTIgKzE5 OSw4NyBAQAogCiAgICAgcmV0dXJuIFllczsgLy8gRGVmYXVsdAogfQoraW50CitLTWVzc2FnZUJv eDo6cXVlc3Rpb25ZZXNOb0NhbmNlbChRV2lkZ2V0ICpwYXJlbnQsCisgICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IFFTdHJpbmcgJmNhcHRpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0 IFFTdHJpbmcgJmJ1dHRvblllcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUVN0 cmluZyAmYnV0dG9uTm8sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcg JmJ1dHRvbkNhbmNlbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUVN0cmluZyAm ZG9udEFza0FnYWluTmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBub3RpZnkp Cit7CisgICAgS0NvbmZpZyAqY29uZmlnID0gMDsKKyAgICBRU3RyaW5nIGdycE5vdGlmTXNncyA9 IFFTdHJpbmc6OmZyb21MYXRpbjEoIk5vdGlmaWNhdGlvbiBNZXNzYWdlcyIpOworCisgICAgaWYg KCFkb250QXNrQWdhaW5OYW1lLmlzRW1wdHkoKSkKKyAgICB7CisgICAgICAgY29uZmlnID0ga2Fw cC0+Y29uZmlnKCk7CisgICAgICAgS0NvbmZpZ0dyb3VwU2F2ZXIgc2F2ZXIoIGNvbmZpZywgZ3Jw Tm90aWZNc2dzICk7CisgICAgICAgUVN0cmluZyBkb250QXNrID0gY29uZmlnLT5yZWFkRW50cnko IGRvbnRBc2tBZ2Fpbk5hbWUpLmxvd2VyKCk7CisgICAgICAgaWYgKGRvbnRBc2sgPT0gInllcyIp CisgICAgICAgeworICAgICAgICAgIHJldHVybiBZZXM7CisgICAgICAgfQorICAgICAgIGlmIChk b250QXNrID09ICJubyIpCisgICAgICAgeworICAgICAgICAgIHJldHVybiBObzsKKyAgICAgICB9 CisgICAgfQorICAgIEtEaWFsb2dCYXNlICpkaWFsb2c9IG5ldyBLRGlhbG9nQmFzZSgKKyAgICAg ICAgICAgICAgICAgICAgICAgY2FwdGlvbi5pc0VtcHR5KCkgPyBpMThuKCJRdWVzdGlvbiIpIDog Y2FwdGlvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgS0RpYWxvZ0Jhc2U6OlllcyB8IEtEaWFs b2dCYXNlOjpObyB8IEtEaWFsb2dCYXNlOjpDYW5jZWwsCisgICAgICAgICAgICAgICAgICAgICAg IEtEaWFsb2dCYXNlOjpZZXMsIEtEaWFsb2dCYXNlOjpDYW5jZWwsCisgICAgICAgICAgICAgICAg ICAgICAgIHBhcmVudCwgInF1ZXN0aW9uWWVzTm9DYW5jZWwiLCB0cnVlLCB0cnVlLAorICAgICAg ICAgICAgICAgICAgICAgICBidXR0b25ZZXMsIGJ1dHRvbk5vLCBidXR0b25DYW5jZWwpOworCisg ICAgYm9vbCBjaGVja2JveFJlc3VsdDsKKyAgICBpbnQgcmVzdWx0ID0gY3JlYXRlS01lc3NhZ2VC b3goZGlhbG9nLCBRTWVzc2FnZUJveDo6SW5mb3JtYXRpb24KKywgdGV4dCwgUVN0cmluZ0xpc3Qo KSwKKyAgICAgICAgICAgICAgICAgICAgICAgZG9udEFza0FnYWluTmFtZS5pc0VtcHR5KCkgPyBR U3RyaW5nOjpudWxsIDogaTE4bigiRG8gbm90IGFzayBhZ2FpbiIpLAorICAgICAgICAgICAgICAg ICAgICAgICAmY2hlY2tib3hSZXN1bHQpOworCisgICAgc3dpdGNoKCByZXN1bHQgKQorICAgIHsK KyAgICAgIGNhc2UgS0RpYWxvZ0Jhc2U6OlllczoKKyAgICAgICAgIGlmICghZG9udEFza0FnYWlu TmFtZS5pc0VtcHR5KCkpCisgICAgICAgICB7CisgICAgICAgICAgICBpZiAoY2hlY2tib3hSZXN1 bHQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICBLQ29uZmlnR3JvdXBTYXZlciBzYXZl ciggY29uZmlnLCBncnBOb3RpZk1zZ3MgKTsKKyAgICAgICAgICAgICAgIGNvbmZpZy0+d3JpdGVF bnRyeSggZG9udEFza0FnYWluTmFtZSwgIlllcyIpOworICAgICAgICAgICAgfQorICAgICAgICAg ICAgY29uZmlnLT5zeW5jKCk7CisgICAgICAgICB9CisgICAgICAgICByZXR1cm4gWWVzOworCisg ICAgICBjYXNlIEtEaWFsb2dCYXNlOjpObzoKKyAgICAgICAgIGlmICghZG9udEFza0FnYWluTmFt ZS5pc0VtcHR5KCkpCisgICAgICAgICB7CisgICAgICAgICAgICBpZiAoY2hlY2tib3hSZXN1bHQp CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICBLQ29uZmlnR3JvdXBTYXZlciBzYXZlcigg Y29uZmlnLCBncnBOb3RpZk1zZ3MgKTsKKyAgICAgICAgICAgICAgIGNvbmZpZy0+d3JpdGVFbnRy eSggZG9udEFza0FnYWluTmFtZSwgIk5vIik7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBj b25maWctPnN5bmMoKTsKKyAgICAgICAgIH0KKyAgICAgICAgIHJldHVybiBObzsKKworICAgICAg Y2FzZSBLRGlhbG9nQmFzZTo6Q2FuY2VsOgorICAgICAgICAgcmV0dXJuIENhbmNlbDsKKworICAg ICAgZGVmYXVsdDogLy8gSHVoPworICAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgcmV0dXJu IENhbmNlbDsgLy8gRGVmYXVsdAorfQogCiBpbnQKIEtNZXNzYWdlQm94Ojp3YXJuaW5nWWVzTm8o UVdpZGdldCAqcGFyZW50LCBjb25zdCBRU3RyaW5nICZ0ZXh0LAogICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCBRU3RyaW5nICZjYXB0aW9uLAogICAgICAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBRU3RyaW5nICZidXR0b25ZZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIGNv bnN0IFFTdHJpbmcgJmJ1dHRvbk5vLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg UVN0cmluZyAmYnV0dG9uTm8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJp bmcgJmRvbnRBc2tBZ2Fpbk5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgLypu b3RpZnkqLykKIHsKQEAgLTI3MSwxMCArMzQ2LDEwIEBACiB9CiAKIGludAotS01lc3NhZ2VCb3g6 Ondhcm5pbmdDb250aW51ZUNhbmNlbChRV2lkZ2V0ICpwYXJlbnQsIAorS01lc3NhZ2VCb3g6Ondh cm5pbmdDb250aW51ZUNhbmNlbChRV2lkZ2V0ICpwYXJlbnQsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJnRleHQsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJmNhcHRpb24sCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJmJ1dHRvbkNvbnRpbnVlLCAKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUVN0cmluZyAmYnV0dG9uQ29udGlu dWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJmRv bnRBc2tBZ2Fpbk5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wg bm90aWZ5KQogewpAQCAtMjg2LDcgKzM2MSw3IEBACiBLTWVzc2FnZUJveDo6d2FybmluZ0NvbnRp bnVlQ2FuY2VsTGlzdChRV2lkZ2V0ICpwYXJlbnQsIGNvbnN0IFFTdHJpbmcgJnRleHQsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmdMaXN0ICZzdHJsaXN0LAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZjYXB0aW9uLAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZidXR0b25Db250aW51ZSwgCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJmJ1dHRvbkNvbnRpbnVl LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZkb250QXNrQWdh aW5OYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIC8qbm90aWZ5Ki8pCiB7 CkBAIC0zMTMsNyArMzg4LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uQ29udGlu dWUsIGkxOG4oIiZDYW5jZWwiKSk7CiAKICAgICBib29sIGNoZWNrYm94UmVzdWx0OwotICAgIGlu dCByZXN1bHQgPSBjcmVhdGVLTWVzc2FnZUJveChkaWFsb2csIFFNZXNzYWdlQm94OjpXYXJuaW5n LCB0ZXh0LCBzdHJsaXN0LCAKKyAgICBpbnQgcmVzdWx0ID0gY3JlYXRlS01lc3NhZ2VCb3goZGlh bG9nLCBRTWVzc2FnZUJveDo6V2FybmluZywgdGV4dCwgc3RybGlzdCwKICAgICAgICAgICAgICAg ICAgICAgICAgZG9udEFza0FnYWluTmFtZS5pc0VtcHR5KCkgPyBRU3RyaW5nOjpudWxsIDogaTE4 bigiRG8gbm90IGFzayBhZ2FpbiIpLAogICAgICAgICAgICAgICAgICAgICAgICAmY2hlY2tib3hS ZXN1bHQpOwogCkBAIC0zMzMsNyArNDA4LDcgQEAKICAgICAgICAgIH0KICAgICAgICAgIHJldHVy biBDb250aW51ZTsKICAgICAgIH0KLSAgIAorCiAgICAgICBjYXNlIEtEaWFsb2dCYXNlOjpObzoK ICAgICAgICAgIHJldHVybiBDYW5jZWw7CiAKQEAgLTM0OSw3ICs0MjQsNyBAQAogS01lc3NhZ2VC b3g6Ondhcm5pbmdZZXNOb0NhbmNlbChRV2lkZ2V0ICpwYXJlbnQsIGNvbnN0IFFTdHJpbmcgJnRl eHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJmNhcHRp b24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJmJ1dHRv blllcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUVN0cmluZyAmYnV0 dG9uTm8sIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZi dXR0b25ObywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUVN0cmluZyAm ZG9udEFza0FnYWluTmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCAv Km5vdGlmeSovKQogewpAQCAtMzc4LDcgKzQ1Myw3IEBACiAgICAgICAgICAgICAgICAgICAgICAg IGJ1dHRvblllcywgYnV0dG9uTm8pOwogCiAgICAgYm9vbCBjaGVja2JveFJlc3VsdDsKLSAgICBp bnQgcmVzdWx0ID0gY3JlYXRlS01lc3NhZ2VCb3goZGlhbG9nLCBRTWVzc2FnZUJveDo6V2Fybmlu ZywgdGV4dCwgUVN0cmluZ0xpc3QoKSwgCisgICAgaW50IHJlc3VsdCA9IGNyZWF0ZUtNZXNzYWdl Qm94KGRpYWxvZywgUU1lc3NhZ2VCb3g6Oldhcm5pbmcsIHRleHQsIFFTdHJpbmdMaXN0KCksCiAg ICAgICAgICAgICAgICAgICAgICAgIGRvbnRBc2tBZ2Fpbk5hbWUuaXNFbXB0eSgpID8gUVN0cmlu Zzo6bnVsbCA6IGkxOG4oIkRvIG5vdCBhc2sgYWdhaW4iKSwKICAgICAgICAgICAgICAgICAgICAg ICAgJmNoZWNrYm94UmVzdWx0KTsKIApAQCAtNTA0LDcgKzU3OSw3IEBACiAKICAgICBib29sIGNo ZWNrYm94UmVzdWx0OwogCi0gICAgY3JlYXRlS01lc3NhZ2VCb3goZGlhbG9nLCBRTWVzc2FnZUJv eDo6SW5mb3JtYXRpb24sIHRleHQsIFFTdHJpbmdMaXN0KCksIAorICAgIGNyZWF0ZUtNZXNzYWdl Qm94KGRpYWxvZywgUU1lc3NhZ2VCb3g6OkluZm9ybWF0aW9uLCB0ZXh0LCBRU3RyaW5nTGlzdCgp LAogCQlkb250U2hvd0FnYWluTmFtZS5pc0VtcHR5KCkgPyBRU3RyaW5nOjpudWxsIDogaTE4bigi RG8gbm90IHNob3cgdGhpcyBtZXNzYWdlIGFnYWluIiksIAogICAgICAgICAgICAgICAgICZjaGVj a2JveFJlc3VsdCk7CiAKQEAgLTU2NiwxMiArNjQxLDE1IEBACiAgICAgcmV0dXJuOwogfQogCi1p bnQgS01lc3NhZ2VCb3g6Om1lc3NhZ2VCb3goIFFXaWRnZXQgKnBhcmVudCwgaW50IHR5cGUsIGNv bnN0IFFTdHJpbmcgJnRleHQsIGNvbnN0IFFTdHJpbmcgJmNhcHRpb24sIGNvbnN0IFFTdHJpbmcg JmJ1dHRvblllcywgY29uc3QgUVN0cmluZyAmYnV0dG9uTm8gKQoraW50IEtNZXNzYWdlQm94Ojpt ZXNzYWdlQm94KCBRV2lkZ2V0ICpwYXJlbnQsIGludCB0eXBlLCBjb25zdCBRU3RyaW5nICZ0ZXh0 LCBjb25zdCBRU3RyaW5nICZjYXB0aW9uLCBjb25zdCBRU3RyaW5nICZidXR0b25ZZXMsIGNvbnN0 IFFTdHJpbmcgJmJ1dHRvbk5vLCBjb25zdCBRU3RyaW5nICZidXR0b25DYW5jZWwgKQogewogICAg IHN3aXRjaCAodHlwZSkgewogICAgICAgICBjYXNlIFF1ZXN0aW9uWWVzTm86CiAgICAgICAgICAg ICByZXR1cm4gS01lc3NhZ2VCb3g6OnF1ZXN0aW9uWWVzTm8oIHBhcmVudCwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCwgY2FwdGlvbiwgYnV0dG9u WWVzLCBidXR0b25ObyApOworICAgICAgICBjYXNlIFF1ZXN0aW9uWWVzTm9DYW5jZWw6CisgICAg ICAgICAgICByZXR1cm4gS01lc3NhZ2VCb3g6OnF1ZXN0aW9uWWVzTm9DYW5jZWwoIHBhcmVudCwK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCwgY2Fw dGlvbiwgYnV0dG9uWWVzLCBidXR0b25ObywgYnV0dG9uQ2FuY2VsICk7CiAgICAgICAgIGNhc2Ug V2FybmluZ1llc05vOgogICAgICAgICAgICAgcmV0dXJuIEtNZXNzYWdlQm94Ojp3YXJuaW5nWWVz Tm8oIHBhcmVudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB0ZXh0LCBjYXB0aW9uLCBidXR0b25ZZXMsIGJ1dHRvbk5vICk7CmRpZmYgLXVyTiBrZGVfdWku b3JpZy9rbWVzc2FnZWJveC5oIGtkZXVpL2ttZXNzYWdlYm94LmgKLS0tIGtkZV91aS5vcmlnL2tt ZXNzYWdlYm94LmgJU3VuIE9jdCAgNyAxNToxMjoxOCAyMDAxCisrKyBrZGV1aS9rbWVzc2FnZWJv eC5oCVdlZCBPY3QgMzEgMDA6MTI6MDAgMjAwMQpAQCAtMjQsOCArMjQsOCBAQAogY2xhc3MgUVdp ZGdldDsKIGNsYXNzIFFTdHJpbmdMaXN0OwogCi0gLyoqIAotICAqIEVhc3kgbWVzc2FnZSBkaWFs b2cgYm94LiAKKyAvKioKKyAgKiBFYXN5IG1lc3NhZ2UgZGlhbG9nIGJveC4KICAgKgogICAqIFBy b3ZpZGVzIGNvbnZlbmllbmNlIGZ1bmN0aW9ucyBmb3Igc29tZSBpMThuJ2VkIHN0YW5kYXJkIGRp YWxvZ3MuCiAgICoKQEAgLTQwLDE3ICs0MCwxNyBAQAogICAgKiovCiAgZW51bSB7IE9rID0gMSwg Q2FuY2VsID0gMiwgWWVzID0gMywgTm8gPSA0LCBDb250aW51ZSA9IDUgfTsKICAvKioKLSAgKiBE aXNwbGF5IGEgc2ltcGxlICJxdWVzdGlvbiIgZGlhbG9nLiAKKyAgKiBEaXNwbGF5IGEgc2ltcGxl ICJxdWVzdGlvbiIgZGlhbG9nLgogICAqCi0gICogQHBhcmFtIHBhcmVudCAgSWYgQHAgcGFyZW50 IGlzIDAsIHRoZW4gdGhlIG1lc3NhZ2UgYm94IGJlY29tZXMgYW4gCisgICogQHBhcmFtIHBhcmVu dCAgSWYgQHAgcGFyZW50IGlzIDAsIHRoZW4gdGhlIG1lc3NhZ2UgYm94IGJlY29tZXMgYW4KICAg KiAgICAgICAgICAgICAgICBhcHBsaWNhdGlvbi1nbG9iYWwgbW9kYWwgZGlhbG9nIGJveC4gSWYg QHAgcGFyZW50IGlzIGEKICAgKiAgICAgICAgICAgICAgICB3aWRnZXQsIHRoZSBtZXNzYWdlIGJv eCBiZWNvbWVzIG1vZGFsIHJlbGF0aXZlIHRvIHBhcmVudC4KICAgKiBAcGFyYW0gdGV4dCAgICBN ZXNzYWdlIHN0cmluZy4gTWF5IGNvbnRhaW4gbmV3bGluZXMuCiAgICogQHBhcmFtIGNhcHRpb24g TWVzc2FnZSBib3ggdGl0bGUuIFRoZSBhcHBsaWNhdGlvbiBuYW1lIGlzIGFkZGVkIHRvCiAgICog ICAgICAgICAgICAgICAgdGhlIHRpdGxlLiBUaGUgZGVmYXVsdCB0aXRsZSBpcyBpMThuKCJRdWVz dGlvbiIpLgotICAqIEBwYXJhbSBidXR0b25ZZXMgVGhlIHRleHQgZm9yIHRoZSBmaXJzdCBidXR0 b24uIAorICAqIEBwYXJhbSBidXR0b25ZZXMgVGhlIHRleHQgZm9yIHRoZSBmaXJzdCBidXR0b24u CiAgICogICAgICAgICAgICAgICAgICBUaGUgZGVmYXVsdCBpcyBpMThuKCImWWVzIikuCi0gICog QHBhcmFtIGJ1dHRvbk5vICBUaGUgdGV4dCBmb3IgdGhlIHNlY29uZCBidXR0b24uIAorICAqIEBw YXJhbSBidXR0b25ObyAgVGhlIHRleHQgZm9yIHRoZSBzZWNvbmQgYnV0dG9uLgogICAqICAgICAg ICAgICAgICAgICAgVGhlIGRlZmF1bHQgaXMgaTE4bigiJk5vIikuCiAgICogQHBhcmFtIGRvbnRB c2tBZ2Fpbk5hbWUgSWYgcHJvdmlkZWQsIGEgY2hlY2tib3ggaXMgYWRkZWQgd2l0aCB3aGljaAog ICAqICAgICAgICAgICAgICAgIGZ1cnRoZXIgY29uZmlybWF0aW9uIGNhbiBiZSB0dXJuZWQgb2Zm LgpAQCAtNjAsMjMgKzYwLDYyIEBACiAgICoKICAgKiBAcmV0dXJuICAnWWVzJyBpcyByZXR1cm5l ZCBpZiB0aGUgWWVzLWJ1dHRvbiBpcyBwcmVzc2VkLiAnTm8nIGlzIHJldHVybmVkCiAgICogICAg ICAgICAgaWYgdGhlIE5vLWJ1dHRvbiBpcyBwcmVzc2VkLgotICAqIAorICAqCiAgICogVG8gYmUg dXNlZCBmb3IgcXVlc3Rpb25zIGxpa2UgIkRvIHlvdSBoYXZlIGEgcHJpbnRlcj8iCiAgICoKICAg KiBUaGUgZGVmYXVsdCBidXR0b24gaXMgIlllcyIuIFByZXNzaW5nICJFc2MiIHNlbGVjdHMgIk5v Ii4KICAgKi8KLSAgCisKICBzdGF0aWMgaW50IHF1ZXN0aW9uWWVzTm8oUVdpZGdldCAqcGFyZW50 LAogICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZ0ZXh0LAogICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZjYXB0aW9uID0gUVN0cmluZzo6bnVs bCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUVN0cmluZyAmYnV0dG9uWWVzID0g UVN0cmluZzo6bnVsbCwgIAotICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5n ICZidXR0b25ObyA9IFFTdHJpbmc6Om51bGwsIAorICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBRU3RyaW5nICZidXR0b25ZZXMgPSBRU3RyaW5nOjpudWxsLAorICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCBRU3RyaW5nICZidXR0b25ObyA9IFFTdHJpbmc6Om51bGwsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJmRvbnRBc2tBZ2Fpbk5hbWUgPSBR U3RyaW5nOjpudWxsLAogICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIG5vdGlmeT10cnVl KTsKICAvKioKLSAgKiBEaXNwbGF5IGEgInF1ZXN0aW9uIiBkaWFsb2cgd2l0aCBhIGxpc3Rib3gg dG8gc2hvdyBpbmZvcm1hdGlvbiB0byB0aGUgdXNlciAKKyAgKiBEaXNwbGF5IGEgc2ltcGxlICJx dWVzdGlvbiIgZGlhbG9nLgogICAqCi0gICogQHBhcmFtIHBhcmVudCAgSWYgQHAgcGFyZW50IGlz IDAsIHRoZW4gdGhlIG1lc3NhZ2UgYm94IGJlY29tZXMgYW4gCisgICogQHBhcmFtIHBhcmVudCAg SWYgQHAgcGFyZW50IGlzIDAsIHRoZW4gdGhlIG1lc3NhZ2UgYm94IGJlY29tZXMgYW4KKyAgKiAg ICAgICAgICAgICAgICBhcHBsaWNhdGlvbi1nbG9iYWwgbW9kYWwgZGlhbG9nIGJveC4gSWYgQHAg cGFyZW50IGlzIGEKKyAgKiAgICAgICAgICAgICAgICB3aWRnZXQsIHRoZSBtZXNzYWdlIGJveCBi ZWNvbWVzIG1vZGFsIHJlbGF0aXZlIHRvIHBhcmVudC4KKyAgKiBAcGFyYW0gdGV4dCAgICBNZXNz YWdlIHN0cmluZy4gTWF5IGNvbnRhaW4gbmV3bGluZXMuCisgICogQHBhcmFtIGNhcHRpb24gTWVz c2FnZSBib3ggdGl0bGUuIFRoZSBhcHBsaWNhdGlvbiBuYW1lIGlzIGFkZGVkIHRvCisgICogICAg ICAgICAgICAgICAgdGhlIHRpdGxlLiBUaGUgZGVmYXVsdCB0aXRsZSBpcyBpMThuKCJRdWVzdGlv biIpLgorICAqIEBwYXJhbSBidXR0b25ZZXMgVGhlIHRleHQgZm9yIHRoZSBmaXJzdCBidXR0b24u CisgICogICAgICAgICAgICAgICAgICBUaGUgZGVmYXVsdCBpcyBpMThuKCImWWVzIikuCisgICog QHBhcmFtIGJ1dHRvbk5vICBUaGUgdGV4dCBmb3IgdGhlIHNlY29uZCBidXR0b24uCisgICogICAg ICAgICAgICAgICAgICBUaGUgZGVmYXVsdCBpcyBpMThuKCImTm8iKS4KKyAgKiBAcGFyYW0gYnV0 dG9uQ2FuY2VsIFRoZSB0ZXh0IGZvciB0aGUgdGhpcmQgYnV0dG9uLgorICAgICAgICAgICAgICAg ICAgICAgICAgVGhlIGRlZmF1bHQgaXMgaTE4bigiJkNhbmNlbCIpLgorICAqIEBwYXJhbSBkb250 QXNrQWdhaW5OYW1lIElmIHByb3ZpZGVkLCBhIGNoZWNrYm94IGlzIGFkZGVkIHdpdGggd2hpY2gK KyAgKiAgICAgICAgICAgICAgICBmdXJ0aGVyIGNvbmZpcm1hdGlvbiBjYW4gYmUgdHVybmVkIG9m Zi4KKyAgKiAgICAgICAgICAgICAgICBUaGUgc3RyaW5nIGlzIHVzZWQgdG8gbG9va3VwIGFuZCBz dG9yZSB0aGUgc2V0dGluZworICAqICAgICAgICAgICAgICAgIGluIHRoZSBhcHBsaWNhdGlvbnMg Y29uZmlnIGZpbGUuCisgICogQHBhcmFtIG5vdGlmeSAgRW1pdCBhIEByZWYgS05vdGlmeUNsaWVu dCBldmVudC4KKyAgKgorICAqIEByZXR1cm4gICdZZXMnIGlzIHJldHVybmVkIGlmIHRoZSBZZXMt YnV0dG9uIGlzIHByZXNzZWQuICdObycgaXMgcmV0dXJuZWQKKyAgKiAgICAgICAgICBpZiB0aGUg Tm8tYnV0dG9uIGlzIHByZXNzZWQuCisgICoKKyAgKiBUbyBiZSB1c2VkIGZvciBxdWVzdGlvbnMg bGlrZSAiRG8geW91IHdhbnQgdG8gZGlzY2FyZCB0aGUgbWVzc2FnZSBvciBzYXZlIGl0IGZvciBs YXRlcj8iLAorCSoKKyAgKgorICAqIFRoZSBkZWZhdWx0IGJ1dHRvbiBpcyAiWWVzIi4gUHJlc3Np bmcgIkVzYyIgc2VsZWN0cyAiQ2FuY2VsIi4KKyAgKi8KKworICBzdGF0aWMgaW50IHF1ZXN0aW9u WWVzTm9DYW5jZWwoUVdpZGdldCAqcGFyZW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBRU3RyaW5nICZ0ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3Ry aW5nICZjYXB0aW9uID0gUVN0cmluZzo6bnVsbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3QgUVN0cmluZyAmYnV0dG9uWWVzID0gUVN0cmluZzo6bnVsbCwKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgY29uc3QgUVN0cmluZyAmYnV0dG9uTm8gPSBRU3RyaW5nOjpudWxsLAorICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZidXR0b25DYW5jZWwgPSBRU3Ry aW5nOjpudWxsLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZkb250 QXNrQWdhaW5OYW1lID0gUVN0cmluZzo6bnVsbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg Ym9vbCBub3RpZnk9dHJ1ZSk7CisKKyAvKioKKyAgKiBEaXNwbGF5IGEgInF1ZXN0aW9uIiBkaWFs b2cgd2l0aCBhIGxpc3Rib3ggdG8gc2hvdyBpbmZvcm1hdGlvbiB0byB0aGUgdXNlcgorICAqCisg ICogQHBhcmFtIHBhcmVudCAgSWYgQHAgcGFyZW50IGlzIDAsIHRoZW4gdGhlIG1lc3NhZ2UgYm94 IGJlY29tZXMgYW4KICAgKiAgICAgICAgICAgICAgICBhcHBsaWNhdGlvbi1nbG9iYWwgbW9kYWwg ZGlhbG9nIGJveC4gSWYgQHAgcGFyZW50IGlzIGEKICAgKiAgICAgICAgICAgICAgICB3aWRnZXQs IHRoZSBtZXNzYWdlIGJveCBiZWNvbWVzIG1vZGFsIHJlbGF0aXZlIHRvIHBhcmVudC4KICAgKiBA cGFyYW0gdGV4dCAgICBNZXNzYWdlIHN0cmluZy4gTWF5IGNvbnRhaW4gbmV3bGluZXMuCkBAIC04 NCw5ICsxMjMsOSBAQAogICAqICAgICAgICAgICAgICAgIGVtcHR5LCBpdCBkb2Vzbid0IHNob3cg YW55IGxpc3Rib3gsIHdvcmtpbmcgYXMgcXVlc3Rpb25ZZXNOby4KICAgKiBAcGFyYW0gY2FwdGlv biBNZXNzYWdlIGJveCB0aXRsZS4gVGhlIGFwcGxpY2F0aW9uIG5hbWUgaXMgYWRkZWQgdG8KICAg KiAgICAgICAgICAgICAgICB0aGUgdGl0bGUuIFRoZSBkZWZhdWx0IHRpdGxlIGlzIGkxOG4oIlF1 ZXN0aW9uIikuCi0gICogQHBhcmFtIGJ1dHRvblllcyBUaGUgdGV4dCBmb3IgdGhlIGZpcnN0IGJ1 dHRvbi4gCisgICogQHBhcmFtIGJ1dHRvblllcyBUaGUgdGV4dCBmb3IgdGhlIGZpcnN0IGJ1dHRv bi4KICAgKiAgICAgICAgICAgICAgICAgIFRoZSBkZWZhdWx0IGlzIGkxOG4oIiZZZXMiKS4KLSAg KiBAcGFyYW0gYnV0dG9uTm8gIFRoZSB0ZXh0IGZvciB0aGUgc2Vjb25kIGJ1dHRvbi4gCisgICog QHBhcmFtIGJ1dHRvbk5vICBUaGUgdGV4dCBmb3IgdGhlIHNlY29uZCBidXR0b24uCiAgICogICAg ICAgICAgICAgICAgICBUaGUgZGVmYXVsdCBpcyBpMThuKCImTm8iKS4KICAgKiBAcGFyYW0gZG9u dEFza0FnYWluTmFtZSBJZiBwcm92aWRlZCwgYSBjaGVja2JveCBpcyBhZGRlZCB3aXRoIHdoaWNo CiAgICogICAgICAgICAgICAgICAgZnVydGhlciBjb25maXJtYXRpb24gY2FuIGJlIHR1cm5lZCBv ZmYuCkBAIC05NiwzNCArMTM1LDM0IEBACiAgICoKICAgKiBAcmV0dXJuICAnWWVzJyBpcyByZXR1 cm5lZCBpZiB0aGUgWWVzLWJ1dHRvbiBpcyBwcmVzc2VkLiAnTm8nIGlzIHJldHVybmVkCiAgICog ICAgICAgICAgaWYgdGhlIE5vLWJ1dHRvbiBpcyBwcmVzc2VkLgotICAqIAorICAqCiAgICogVG8g YmUgdXNlZCBmb3IgcXVlc3Rpb25zIGxpa2UgIkRvIHlvdSByZWFsbHkgd2FudCB0byBkZWxldGUg dGhlc2UgZmlsZXM/IgogICAqIEFuZCBzaG93IHRoZSB1c2VyIGV4YWN0bHkgd2hpY2ggZmlsZXMg YXJlIGdvaW5nIHRvIGJlIGRlbGV0ZWQgaW4gY2FzZQogICAqIGhlIHByZXNzZXMgIlllcyIKICAg KgogICAqIFRoZSBkZWZhdWx0IGJ1dHRvbiBpcyAiWWVzIi4gUHJlc3NpbmcgIkVzYyIgc2VsZWN0 cyAiTm8iLgogICAqLwotIAorCiAgc3RhdGljIGludCBxdWVzdGlvblllc05vTGlzdChRV2lkZ2V0 ICpwYXJlbnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJnRleHQs CiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmdMaXN0ICZzdHJsaXN0LAog ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZjYXB0aW9uID0gUVN0cmlu Zzo6bnVsbCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUVN0cmluZyAmYnV0dG9u WWVzID0gUVN0cmluZzo6bnVsbCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUVN0 cmluZyAmYnV0dG9uTm8gPSBRU3RyaW5nOjpudWxsLCAKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3QgUVN0cmluZyAmYnV0dG9uTm8gPSBRU3RyaW5nOjpudWxsLAogICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZkb250QXNrQWdhaW5OYW1lID0gUVN0cmluZzo6 bnVsbCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBub3RpZnk9dHJ1ZSk7CiAgLyoq Ci0gICogRGlzcGxheSBhICJ3YXJuaW5nIiBkaWFsb2cuIAorICAqIERpc3BsYXkgYSAid2Fybmlu ZyIgZGlhbG9nLgogICAqCi0gICogQHBhcmFtIHBhcmVudCAgSWYgQHAgcGFyZW50IGlzIDAsIHRo ZW4gdGhlIG1lc3NhZ2UgYm94IGJlY29tZXMgYW4gCisgICogQHBhcmFtIHBhcmVudCAgSWYgQHAg cGFyZW50IGlzIDAsIHRoZW4gdGhlIG1lc3NhZ2UgYm94IGJlY29tZXMgYW4KICAgKiAgICAgICAg ICAgICAgICBhcHBsaWNhdGlvbi1nbG9iYWwgbW9kYWwgZGlhbG9nIGJveC4gSWYgQHAgcGFyZW50 IGlzIGEKICAgKiAgICAgICAgICAgICAgICB3aWRnZXQsIHRoZSBtZXNzYWdlIGJveCBiZWNvbWVz IG1vZGFsIHJlbGF0aXZlIHRvIHBhcmVudC4KICAgKiBAcGFyYW0gdGV4dCAgICBNZXNzYWdlIHN0 cmluZy4gTWF5IGNvbnRhaW4gbmV3bGluZXMuCiAgICogQHBhcmFtIGNhcHRpb24gTWVzc2FnZSBi b3ggdGl0bGUuIFRoZSBhcHBsaWNhdGlvbiBuYW1lIGlzIGFkZGVkIHRvCiAgICogICAgICAgICAg ICAgICAgdGhlIHRpdGxlLiBUaGUgZGVmYXVsdCB0aXRsZSBpcyBpMThuKCJXYXJuaW5nIikuCi0g ICogQHBhcmFtIGJ1dHRvblllcyBUaGUgdGV4dCBmb3IgdGhlIGZpcnN0IGJ1dHRvbi4gCisgICog QHBhcmFtIGJ1dHRvblllcyBUaGUgdGV4dCBmb3IgdGhlIGZpcnN0IGJ1dHRvbi4KICAgKiAgICAg ICAgICAgICAgICAgIFRoZSBkZWZhdWx0IGlzIGkxOG4oIiZZZXMiKS4KLSAgKiBAcGFyYW0gYnV0 dG9uTm8gIFRoZSB0ZXh0IGZvciB0aGUgc2Vjb25kIGJ1dHRvbi4gCisgICogQHBhcmFtIGJ1dHRv bk5vICBUaGUgdGV4dCBmb3IgdGhlIHNlY29uZCBidXR0b24uCiAgICogICAgICAgICAgICAgICAg ICBUaGUgZGVmYXVsdCBpcyBpMThuKCImTm8iKS4KICAgKiBAcGFyYW0gZG9udEFza0FnYWluTmFt ZSBJZiBwcm92aWRlZCwgYSBjaGVja2JveCBpcyBhZGRlZCB3aXRoIHdoaWNoCiAgICogICAgICAg ICAgICAgICAgZnVydGhlciBjb25maXJtYXRpb24gY2FuIGJlIHR1cm5lZCBvZmYuCkBAIC0xNDgs NyArMTg3LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIG5vdGlmeT10cnVlKTsK IAogIC8qKgotICAqIERpc3BsYXkgYSAid2FybmluZyIgZGlhbG9nLiAKKyAgKiBEaXNwbGF5IGEg Indhcm5pbmciIGRpYWxvZy4KICAgKgogICAqIEBwYXJhbSBwYXJlbnQgIElmIEBwIHBhcmVudCBp cyAwLCB0aGVuIHRoZSBtZXNzYWdlIGJveCBiZWNvbWVzIGFuIAogICAqICAgICAgICAgICAgICAg IGFwcGxpY2F0aW9uLWdsb2JhbCBtb2RhbCBkaWFsb2cgYm94LiBJZiBAcCBwYXJlbnQgaXMgYQpA QCAtMTU2LDcgKzE5NSw3IEBACiAgICogQHBhcmFtIHRleHQgICAgTWVzc2FnZSBzdHJpbmcuIE1h eSBjb250YWluIG5ld2xpbmVzLgogICAqIEBwYXJhbSBjYXB0aW9uIE1lc3NhZ2UgYm94IHRpdGxl LiBUaGUgYXBwbGljYXRpb24gbmFtZSBpcyBhZGRlZCB0bwogICAqICAgICAgICAgICAgICAgIHRo ZSB0aXRsZS4gVGhlIGRlZmF1bHQgdGl0bGUgaXMgaTE4bigiV2FybmluZyIpLgotICAqIEBwYXJh bSBidXR0b25Db250aW51ZSBUaGUgdGV4dCBmb3IgdGhlIGZpcnN0IGJ1dHRvbi4gCisgICogQHBh cmFtIGJ1dHRvbkNvbnRpbnVlIFRoZSB0ZXh0IGZvciB0aGUgZmlyc3QgYnV0dG9uLgogICAqIEBw YXJhbSBkb250QXNrQWdhaW5OYW1lIElmIHByb3ZpZGVkLCBhIGNoZWNrYm94IGlzIGFkZGVkIHdp dGggd2hpY2gKICAgKiAgICAgICAgICAgICAgICBmdXJ0aGVyIGNvbmZpcm1hdGlvbiBjYW4gYmUg dHVybmVkIG9mZi4KICAgKiAgICAgICAgICAgICAgICBUaGUgc3RyaW5nIGlzIHVzZWQgdG8gbG9v a3VwIGFuZCBzdG9yZSB0aGUgc2V0dGluZwpAQCAtMTY1LDcgKzIwNCw3IEBACiAgICoKICAgKiBU aGUgc2Vjb25kIGJ1dHRvbiBhbHdheXMgaGFzIHRoZSB0ZXh0ICJDYW5jZWwiLgogICAqCi0gICog QHJldHVybiAgQHAgQ29udGludWUgaXMgcmV0dXJuZWQgaWYgdGhlIENvbnRpbnVlLWJ1dHRvbiBp cyBwcmVzc2VkLiAKKyAgKiBAcmV0dXJuICBAcCBDb250aW51ZSBpcyByZXR1cm5lZCBpZiB0aGUg Q29udGludWUtYnV0dG9uIGlzIHByZXNzZWQuCiAgICogICAgICAgICAgQHAgQ2FuY2VsIGlzIHJl dHVybmVkIGlmIHRoZSBDYW5jZWwtYnV0dG9uIGlzIHByZXNzZWQuCiAgICoKICAgKiBUbyBiZSB1 c2VkIGZvciBxdWVzdGlvbnMgbGlrZSAiWW91IGFyZSBhYm91dCB0byBQcmludC4gQXJlIHlvdSBz dXJlPyIKQEAgLTE3MywxOCArMjEyLDE4IEBACiAgICoKICAgKiBUaGUgZGVmYXVsdCBidXR0b24g aXMgYnV0dG9uQ29udGludWUuIFByZXNzaW5nICJFc2MiIHNlbGVjdHMgIkNhbmNlbCIuCiAgICov Ci0gc3RhdGljIGludCB3YXJuaW5nQ29udGludWVDYW5jZWwoUVdpZGdldCAqcGFyZW50LCAKKyBz dGF0aWMgaW50IHdhcm5pbmdDb250aW51ZUNhbmNlbChRV2lkZ2V0ICpwYXJlbnQsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3QgUVN0cmluZyAmdGV4dCwKICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCBRU3RyaW5nICZjYXB0aW9uID0gUVN0cmluZzo6bnVsbCwKLSAgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZidXR0b25Db250aW51ZSA9IFFTdHJpbmc6 Om51bGwsIAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJmJ1dHRvbkNv bnRpbnVlID0gUVN0cmluZzo6bnVsbCwKICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBR U3RyaW5nICZkb250QXNrQWdhaW5OYW1lID0gUVN0cmluZzo6bnVsbCwKICAgICAgICAgICAgICAg ICAgICAgICAgICBib29sIG5vdGlmeT10cnVlICk7CiAKIAogIC8qKgotICAqIERpc3BsYXkgYSAi d2FybmluZyIgZGlhbG9nIHdpdGggYSBsaXN0Ym94IHRvIHNob3cgaW5mb3JtYXRpb24gdG8gdGhl IHVzZXIuIAorICAqIERpc3BsYXkgYSAid2FybmluZyIgZGlhbG9nIHdpdGggYSBsaXN0Ym94IHRv IHNob3cgaW5mb3JtYXRpb24gdG8gdGhlIHVzZXIuCiAgICoKLSAgKiBAcGFyYW0gcGFyZW50ICBJ ZiBAcCBwYXJlbnQgaXMgMCwgdGhlbiB0aGUgbWVzc2FnZSBib3ggYmVjb21lcyBhbiAKKyAgKiBA cGFyYW0gcGFyZW50ICBJZiBAcCBwYXJlbnQgaXMgMCwgdGhlbiB0aGUgbWVzc2FnZSBib3ggYmVj b21lcyBhbgogICAqICAgICAgICAgICAgICAgIGFwcGxpY2F0aW9uLWdsb2JhbCBtb2RhbCBkaWFs b2cgYm94LiBJZiBAcCBwYXJlbnQgaXMgYQogICAqICAgICAgICAgICAgICAgIHdpZGdldCwgdGhl IG1lc3NhZ2UgYm94IGJlY29tZXMgbW9kYWwgcmVsYXRpdmUgdG8gcGFyZW50LgogICAqIEBwYXJh bSB0ZXh0ICAgIE1lc3NhZ2Ugc3RyaW5nLiBNYXkgY29udGFpbiBuZXdsaW5lcy4KQEAgLTE5Myw3 ICsyMzIsNyBAQAogICAqICAgICAgICAgICAgICAgIGFzIHdhcm5pbmdDb250aW51ZUNhbmNlbC4K ICAgKiBAcGFyYW0gY2FwdGlvbiBNZXNzYWdlIGJveCB0aXRsZS4gVGhlIGFwcGxpY2F0aW9uIG5h bWUgaXMgYWRkZWQgdG8KICAgKiAgICAgICAgICAgICAgICB0aGUgdGl0bGUuIFRoZSBkZWZhdWx0 IHRpdGxlIGlzIGkxOG4oIldhcm5pbmciKS4KLSAgKiBAcGFyYW0gYnV0dG9uQ29udGludWUgVGhl IHRleHQgZm9yIHRoZSBmaXJzdCBidXR0b24uIAorICAqIEBwYXJhbSBidXR0b25Db250aW51ZSBU aGUgdGV4dCBmb3IgdGhlIGZpcnN0IGJ1dHRvbi4KICAgKiBAcGFyYW0gZG9udEFza0FnYWluTmFt ZSBJZiBwcm92aWRlZCwgYSBjaGVja2JveCBpcyBhZGRlZCB3aXRoIHdoaWNoCiAgICogICAgICAg ICAgICAgICAgZnVydGhlciBjb25maXJtYXRpb24gY2FuIGJlIHR1cm5lZCBvZmYuCiAgICogICAg ICAgICAgICAgICAgVGhlIHN0cmluZyBpcyB1c2VkIHRvIGxvb2t1cCBhbmQgc3RvcmUgdGhlIHNl dHRpbmcKQEAgLTIyMiw3ICsyNjEsNyBAQAogCiAKICAvKioKLSAgKiBEaXNwbGF5IGEgWWVzL05v L0NhbmNlbCAid2FybmluZyIgZGlhbG9nLiAKKyAgKiBEaXNwbGF5IGEgWWVzL05vL0NhbmNlbCAi d2FybmluZyIgZGlhbG9nLgogICAqCiAgICogQHBhcmFtIHBhcmVudCAgSWYgQHAgcGFyZW50IGlz IDAsIHRoZW4gdGhlIG1lc3NhZ2UgYm94IGJlY29tZXMgYW4gCiAgICogICAgICAgICAgICAgICAg YXBwbGljYXRpb24tZ2xvYmFsIG1vZGFsIGRpYWxvZyBib3guIElmIEBwIHBhcmVudCBpcyBhCkBA IC0yMzcsNyArMjc2LDcgQEAKICAgKiBAcGFyYW0gZG9udEFza0FnYWluTmFtZSBJZiBwcm92aWRl ZCwgYSBjaGVja2JveCBpcyBhZGRlZCB3aXRoIHdoaWNoCiAgICogICAgICAgICAgICAgICAgZnVy dGhlciBxdWVzdGlvbnMgY2FuIGJlIHR1cm5lZCBvZmYuIElmIHR1cm5lZCBvZmYKICAgKiAgICAg ICAgICAgICAgICBhbGwgcXVlc3Rpb25zIHdpbGwgYmUgYXV0b21hdGljYWxseSBhbnN3ZXJlZCB3 aXRoIHRoZQotICAqICAgICAgICAgICAgICAgIGxhc3QgYW5zd2VyIChlaXRoZXIgWWVzIG9yIE5v KS4gCisgICogICAgICAgICAgICAgICAgbGFzdCBhbnN3ZXIgKGVpdGhlciBZZXMgb3IgTm8pLgog ICAqICAgICAgICAgICAgICAgIFRoZSBzdHJpbmcgaXMgdXNlZCB0byBsb29rdXAgYW5kIHN0b3Jl IHRoZSBzZXR0aW5nCiAgICogICAgICAgICAgICAgICAgaW4gdGhlIGFwcGxpY2F0aW9ucyBjb25m aWcgZmlsZS4KICAgKiBAcGFyYW0gbm90aWZ5ICBFbWl0IGEgQHJlZiBLTm90aWZ5Q2xpZW50IGV2 ZW50LgpAQCAtMjU3LDE1ICsyOTYsMTUgQEAKICAgc3RhdGljIGludCB3YXJuaW5nWWVzTm9DYW5j ZWwoUVdpZGdldCAqcGFyZW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z dCBRU3RyaW5nICZ0ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBR U3RyaW5nICZjYXB0aW9uID0gUVN0cmluZzo6bnVsbCwKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3QgUVN0cmluZyAmYnV0dG9uWWVzID0gUVN0cmluZzo6bnVsbCwgIAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZidXR0b25ObyA9IFFT dHJpbmc6Om51bGwsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3Ry aW5nICZidXR0b25ZZXMgPSBRU3RyaW5nOjpudWxsLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCBRU3RyaW5nICZidXR0b25ObyA9IFFTdHJpbmc6Om51bGwsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJmRvbnRBc2tBZ2Fpbk5hbWUg PSBRU3RyaW5nOjpudWxsLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIG5v dGlmeT10cnVlKTsKIAogIC8qKgotICAqIERpc3BsYXkgYW4gIkVycm9yIiBkaWFsb2cuIAorICAq IERpc3BsYXkgYW4gIkVycm9yIiBkaWFsb2cuCiAgICoKLSAgKiBAcGFyYW0gcGFyZW50ICBJZiBA cCBwYXJlbnQgaXMgMCwgdGhlbiB0aGUgbWVzc2FnZSBib3ggYmVjb21lcyBhbiAKKyAgKiBAcGFy YW0gcGFyZW50ICBJZiBAcCBwYXJlbnQgaXMgMCwgdGhlbiB0aGUgbWVzc2FnZSBib3ggYmVjb21l cyBhbgogICAqICAgICAgICAgICAgICAgIGFwcGxpY2F0aW9uLWdsb2JhbCBtb2RhbCBkaWFsb2cg Ym94LiBJZiBAcCBwYXJlbnQgaXMgYQogICAqICAgICAgICAgICAgICAgIHdpZGdldCwgdGhlIG1l c3NhZ2UgYm94IGJlY29tZXMgbW9kYWwgcmVsYXRpdmUgdG8gcGFyZW50LgogICAqIEBwYXJhbSB0 ZXh0ICAgIE1lc3NhZ2Ugc3RyaW5nLiBNYXkgY29udGFpbiBuZXdsaW5lcy4KQEAgLTI4NiwxMyAr MzI1LDEzIEBACiAgICovCiAgIAogICBzdGF0aWMgdm9pZCBlcnJvcihRV2lkZ2V0ICpwYXJlbnQs IAotICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZ0ZXh0LCAKKyAgICAgICAgICAg ICAgICAgICAgY29uc3QgUVN0cmluZyAmdGV4dCwKICAgICAgICAgICAgICAgICAgICAgY29uc3Qg UVN0cmluZyAmY2FwdGlvbiA9IFFTdHJpbmc6Om51bGwsIGJvb2wgbm90aWZ5PXRydWUpOwogCiAg LyoqCiAgICogRGlzcGxheXMgYW4gIkVycm9yIiBkaWFsb2cgd2l0aCBhICJEZXRhaWxzID4+IiBi dXR0b24uCiAgICoKLSAgKiBAcGFyYW0gcGFyZW50ICBJZiBAcCBwYXJlbnQgaXMgMCwgdGhlbiB0 aGUgbWVzc2FnZSBib3ggYmVjb21lcyBhbiAKKyAgKiBAcGFyYW0gcGFyZW50ICBJZiBAcCBwYXJl bnQgaXMgMCwgdGhlbiB0aGUgbWVzc2FnZSBib3ggYmVjb21lcyBhbgogICAqICAgICAgICAgICAg ICAgIGFwcGxpY2F0aW9uLWdsb2JhbCBtb2RhbCBkaWFsb2cgYm94LiBJZiBAcCBwYXJlbnQgaXMg YQogICAqICAgICAgICAgICAgICAgIHdpZGdldCwgdGhlIG1lc3NhZ2UgYm94IGJlY29tZXMgbW9k YWwgcmVsYXRpdmUgdG8gcGFyZW50LgogICAqIEBwYXJhbSB0ZXh0ICAgIE1lc3NhZ2Ugc3RyaW5n LiBNYXkgY29udGFpbiBuZXdsaW5lcy4KQEAgLTMwNiwyNSArMzQ1LDI1IEBACiAgICoKICAgKiBU aGUgQHAgZGV0YWlscyBtZXNzYWdlIGNhbiBjb25hdGluIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24g YWJvdXQKICAgKiB0aGUgcHJvYmxlbSBhbmQgY2FuIGJlIHNob3duIG9uIHJlcXVlc3QgdG8gYWR2 YW5jZWQvaW50ZXJlc3RlZCB1c2Vycy4KLSAgKiAKKyAgKgogICAqIElmIHlvdXIgcHJvZ3JhbSBk ZXRlY3RzIHRoZSBhY3Rpb24gc3BlY2lmaWVkIGJ5IHRoZSB1c2VyIGlzIHNvbWVob3cKICAgKiBu b3QgYWxsb3dlZCwgdGhpcyBzaG91bGQgbmV2ZXIgYmUgcmVwb3J0ZWQgd2l0aCBlcnJvcigpLiBV c2Ugc29ycnkoKQotICAqIGluc3RlYWQgdG8gZXhwbGFpbiB0byB0aGUgdXNlciB0aGF0IHRoaXMg YWN0aW9uIGlzIG5vdCBhbGxvd2VkLiAKKyAgKiBpbnN0ZWFkIHRvIGV4cGxhaW4gdG8gdGhlIHVz ZXIgdGhhdCB0aGlzIGFjdGlvbiBpcyBub3QgYWxsb3dlZC4KICAgKgogICAqIFRoZSBkZWZhdWx0 IGJ1dHRvbiBpcyAiJk9LIi4gUHJlc3NpbmcgIkVzYyIgc2VsZWN0cyB0aGUgT0stYnV0dG9uLgog ICAqCiAgICogTk9URTogVGhlIE9LIGJ1dHRvbiB3aWxsIGFsd2F5cyBoYXZlIHRoZSBpMThuJ2Vk IHRleHQgJyZPSycuCiAgICovCi0gIHN0YXRpYyB2b2lkIGRldGFpbGVkRXJyb3IoUVdpZGdldCAq cGFyZW50LCAKKyAgc3RhdGljIHZvaWQgZGV0YWlsZWRFcnJvcihRV2lkZ2V0ICpwYXJlbnQsCiAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcgJnRleHQsCiAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IFFTdHJpbmcgJmRldGFpbHMsCiAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFT dHJpbmcgJmNhcHRpb24gPSBRU3RyaW5nOjpudWxsLCBib29sIG5vdGlmeT10cnVlKTsKIAogCiAg LyoqCi0gICogRGlzcGxheSBhbiAiU29ycnkiIGRpYWxvZy4gCisgICogRGlzcGxheSBhbiAiU29y cnkiIGRpYWxvZy4KICAgKgotICAqIEBwYXJhbSBwYXJlbnQgIElmIEBwIHBhcmVudCBpcyAwLCB0 aGVuIHRoZSBtZXNzYWdlIGJveCBiZWNvbWVzIGFuIAorICAqIEBwYXJhbSBwYXJlbnQgIElmIEBw IHBhcmVudCBpcyAwLCB0aGVuIHRoZSBtZXNzYWdlIGJveCBiZWNvbWVzIGFuCiAgICogICAgICAg ICAgICAgICAgYXBwbGljYXRpb24tZ2xvYmFsIG1vZGFsIGRpYWxvZyBib3guIElmIEBwIHBhcmVu dCBpcyBhCiAgICogICAgICAgICAgICAgICAgd2lkZ2V0LCB0aGUgbWVzc2FnZSBib3ggYmVjb21l cyBtb2RhbCByZWxhdGl2ZSB0byBwYXJlbnQuCiAgICogQHBhcmFtIHRleHQgICAgTWVzc2FnZSBz dHJpbmcuIE1heSBjb250YWluIG5ld2xpbmVzLgpAQCAtMzM1LDIyICszNzQsMjIgQEAKICAgKiBF aXRoZXIgeW91ciBwcm9ncmFtIG1lc3NlZCB1cCBhbmQgYXNrcyBmb3IgdW5kZXJzdGFuZGluZwog ICAqIG9yIHlvdXIgdXNlciBkaWQgc29tZXRoaW5nIHN0dXBpZC4KICAgKgotICAqIFRvIGJlIHVz ZWQgZm9yIHNtYWxsIHByb2JsZW1zIGxpa2UgCisgICogVG8gYmUgdXNlZCBmb3Igc21hbGwgcHJv YmxlbXMgbGlrZQogICAqICJTb3JyeSwgSSBjYW4ndCBmaW5kIHRoZSBmaWxlIHlvdSBzcGVjaWZp ZWQuIgogICAqCiAgICogVGhlIGRlZmF1bHQgYnV0dG9uIGlzICImT0siLiBQcmVzc2luZyAiRXNj IiBzZWxlY3RzIHRoZSBPSy1idXR0b24uCiAgICoKICAgKiBOT1RFOiBUaGUgb2sgYnV0dG9uIHdp bGwgYWx3YXlzIGhhdmUgdGhlIGkxOG4nZWQgdGV4dCAnJk9LJy4KICAgKi8KLSAgCi0gIHN0YXRp YyB2b2lkIHNvcnJ5KFFXaWRnZXQgKnBhcmVudCwgCisKKyAgc3RhdGljIHZvaWQgc29ycnkoUVdp ZGdldCAqcGFyZW50LAogICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZ0ZXh0LAog ICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZjYXB0aW9uID0gUVN0cmluZzo6bnVs bCwgYm9vbCBub3RpZnk9dHJ1ZSk7CiAKICAvKioKICAgKiBEaXNwbGF5cyBhICJTb3JyeSIgZGlh bG9nIHdpdGggYSAiRGV0YWlscyA+PiIgYnV0dG9uLgogICAqCi0gICogQHBhcmFtIHBhcmVudCAg SWYgQHAgcGFyZW50IGlzIDAsIHRoZW4gdGhlIG1lc3NhZ2UgYm94IGJlY29tZXMgYW4gCisgICog QHBhcmFtIHBhcmVudCAgSWYgQHAgcGFyZW50IGlzIDAsIHRoZW4gdGhlIG1lc3NhZ2UgYm94IGJl Y29tZXMgYW4KICAgKiAgICAgICAgICAgICAgICBhcHBsaWNhdGlvbi1nbG9iYWwgbW9kYWwgZGlh bG9nIGJveC4gSWYgQHAgcGFyZW50IGlzIGEKICAgKiAgICAgICAgICAgICAgICB3aWRnZXQsIHRo ZSBtZXNzYWdlIGJveCBiZWNvbWVzIG1vZGFsIHJlbGF0aXZlIHRvIHBhcmVudC4KICAgKiBAcGFy YW0gdGV4dCAgICBNZXNzYWdlIHN0cmluZy4gTWF5IGNvbnRhaW4gbmV3bGluZXMuCkBAIC0zNjYs NyArNDA1LDcgQEAKICAgKiAiU29ycnksIEkgY2FuJ3QgZmluZCB0aGUgZmlsZSB5b3Ugc3BlY2lm aWVkLiIKICAgKgogICAqIEFuZCB0aGVuIEBwIGRldGFpbHMgY2FuIGNvbnRhaW4gc29tZXRoaW5n IGxpa2UKLSAgKiAiZm9vYmFyLnR4dCB3YXMgbm90IGZvdW5kIGluIGFueSBvZiAKKyAgKiAiZm9v YmFyLnR4dCB3YXMgbm90IGZvdW5kIGluIGFueSBvZgogICAqICB0aGUgZm9sbG93aW5nIGRpcmVj dG9yaWVzOgogICAqICAvdXNyL2JpbiwvdXNyL2xvY2FsL2JpbiwvdXNyL3NiaW4iCiAgICoKQEAg LTM4MSw3ICs0MjAsNyBAQAogICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3RyaW5nICZjYXB0 aW9uID0gUVN0cmluZzo6bnVsbCwgYm9vbCBub3RpZnk9dHJ1ZSk7CiAKICAvKioKLSAgKiBEaXNw bGF5IGFuICJJbmZvcm1hdGlvbiIgZGlhbG9nLiAKKyAgKiBEaXNwbGF5IGFuICJJbmZvcm1hdGlv biIgZGlhbG9nLgogICAqCiAgICogQHBhcmFtIHBhcmVudCAgSWYgQHAgcGFyZW50IGlzIDAsIHRo ZW4gdGhlIG1lc3NhZ2UgYm94IGJlY29tZXMgYW4gCiAgICogICAgICAgICAgICAgICAgYXBwbGlj YXRpb24tZ2xvYmFsIG1vZGFsIGRpYWxvZyBib3guIElmIEBwIHBhcmVudCBpcyBhCkBAIC00MTcs MTEgKzQ1NiwxMSBAQAogICAgKiBAcCBkb250U2hvd0FnYWluTmFtZSBmZWF0dXJlIG9mIHRoZSBp bmZvcm1hdGlvbiBkaWFsb2cuCiAgICAqLwogICBzdGF0aWMgdm9pZCBlbmFibGVBbGxNZXNzYWdl cygpOwotICAKKwogICAvKioKLSAgICogRGlzcGxheSBhbiAiQWJvdXQiIGRpYWxvZy4gCisgICAq IERpc3BsYXkgYW4gIkFib3V0IiBkaWFsb2cuCiAgICAqCi0gICAqIEBwYXJhbSBwYXJlbnQgIElm IEBwIHBhcmVudCBpcyAwLCB0aGVuIHRoZSBtZXNzYWdlIGJveCBiZWNvbWVzIGFuIAorICAgKiBA cGFyYW0gcGFyZW50ICBJZiBAcCBwYXJlbnQgaXMgMCwgdGhlbiB0aGUgbWVzc2FnZSBib3ggYmVj b21lcyBhbgogICAgKiAgICAgICAgICAgICAgICBhcHBsaWNhdGlvbi1nbG9iYWwgbW9kYWwgZGlh bG9nIGJveC4gSWYgQHAgcGFyZW50IGlzIGEKICAgICogICAgICAgICAgICAgICAgd2lkZ2V0LCB0 aGUgbWVzc2FnZSBib3ggYmVjb21lcyBtb2RhbCByZWxhdGl2ZSB0byBwYXJlbnQuCiAgICAqIEBw YXJhbSB0ZXh0ICAgIE1lc3NhZ2Ugc3RyaW5nLiBNYXkgY29udGFpbiBuZXdsaW5lcy4KQEAgLTQz Myw3ICs0NzIsNyBAQAogICAgKiBZb3VyIHByb2dyYW0gd2FudHMgdG8gc2hvdyBzb21lIGdlbmVy YWwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGFwcGxpY2F0aW9uCiAgICAqIGxpa2UgdGhlIGF1dGhv cnMncyBuYW1lcyBhbmQgZW1haWwgYWRkcmVzc2VzLgogICAgKgotICAgKiBUaGUgZGVmYXVsdCBi dXR0b24gaXMgIiZPSyIuIAorICAgKiBUaGUgZGVmYXVsdCBidXR0b24gaXMgIiZPSyIuCiAgICAq CiAgICAqICBOT1RFOiBUaGUgb2sgYnV0dG9uIHdpbGwgYWx3YXlzIGhhdmUgdGhlIGkxOG4nZWQg dGV4dCAnJk9LJy4KICAgICovCkBAIC00NDEsMTQgKzQ4MCwxNSBAQAogCQkgICAgY29uc3QgUVN0 cmluZyYgdGV4dCwKIAkJICAgIGNvbnN0IFFTdHJpbmcmIGNhcHRpb24gPSBRU3RyaW5nOjpudWxs LCBib29sIG5vdGlmeT10cnVlKTsKIAotICBlbnVtIHsgUXVlc3Rpb25ZZXNObyA9IDEsIAotICAg ICAgICAgV2FybmluZ1llc05vID0gMiwgCi0gICAgICAgICBXYXJuaW5nQ29udGludWVDYW5jZWwg PSAzLCAKLSAgICAgICAgIFdhcm5pbmdZZXNOb0NhbmNlbCA9IDQsIAorICBlbnVtIHsgUXVlc3Rp b25ZZXNObyA9IDEsCisgICAgICAgICBXYXJuaW5nWWVzTm8gPSAyLAorICAgICAgICAgV2Fybmlu Z0NvbnRpbnVlQ2FuY2VsID0gMywKKyAgICAgICAgIFdhcm5pbmdZZXNOb0NhbmNlbCA9IDQsCiAg ICAgICAgICBJbmZvcm1hdGlvbiA9IDUsCi0gICAgICAgICAvLyBSZXNlcnZlZCBmb3I6IFNTTE1l c3NhZ2VCb3ggPSA2IAorICAgICAgICAgLy8gUmVzZXJ2ZWQgZm9yOiBTU0xNZXNzYWdlQm94ID0g NgogICAgICAgICAgU29ycnkgPSA3LAotICAgICAgICAgRXJyb3IgPSA4CisgICAgICAgICBFcnJv ciA9IDgsCisgICAgICAgICBRdWVzdGlvblllc05vQ2FuY2VsID0gOSwKICAgICAgICAgIH07CiAK ICAgICAvKioKQEAgLTQ1Niw3ICs0OTYsNyBAQAogICAgICAqCiAgICAgICogQHBhcmFtIHBhcmVu dCAgSWYgQHAgcGFyZW50IGlzIDAsIHRoZW4gdGhlIG1lc3NhZ2UgYm94IGJlY29tZXMgYW4KICAg ICAgKiAgICAgICAgICAgICAgICBhcHBsaWNhdGlvbi1nbG9iYWwgbW9kYWwgZGlhbG9nIGJveC4g SWYgQHAgcGFyZW50IGlzIGEKLSAgICAgKiAgICAgICAgICAgICAgICB3aWRnZXQsIHRoZSBtZXNz YWdlIGJveCBiZWNvbWVzIG1vZGFsIHJlbGF0aXZlIHRvIHBhcmVudC4gICAgIAorICAgICAqICAg ICAgICAgICAgICAgIHdpZGdldCwgdGhlIG1lc3NhZ2UgYm94IGJlY29tZXMgbW9kYWwgcmVsYXRp dmUgdG8gcGFyZW50LgogICAgICAqIEBwYXJhbSB0eXBlIHR5cGUgb2YgbWVzc2FnZSBib3g6IFF1 ZXN0aW9uWWVzTm8sIFdhcm5pbmdZZXNObywgV2FybmluZ0NvbnRpbnVlQ2FuY2VsLi4uCiAgICAg ICogQHBhcmFtIHRleHQgTWVzc2FnZSBzdHJpbmcuIE1heSBjb250YWluIG5ld2xpbmVzLgogICAg ICAqIEBwYXJhbSBjYXB0aW9uIE1lc3NhZ2UgYm94IHRpdGxlLgpAQCAtNDcxLDEwICs1MTEsMTEg QEAKICAgICBzdGF0aWMgaW50IG1lc3NhZ2VCb3goIFFXaWRnZXQgKnBhcmVudCwgaW50IHR5cGUs IGNvbnN0IFFTdHJpbmcgJnRleHQsCiAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFFTdHJpbmcg JmNhcHRpb24gPSBRU3RyaW5nOjpudWxsLAogICAgICAgICAgICAgICAgICAgICBjb25zdCBRU3Ry aW5nICZidXR0b25ZZXMgPSBRU3RyaW5nOjpudWxsLAotICAgICAgICAgICAgICAgICAgICBjb25z dCBRU3RyaW5nICZidXR0b25ObyA9IFFTdHJpbmc6Om51bGwgKTsKKyAgICAgICAgICAgICAgICAg ICAgY29uc3QgUVN0cmluZyAmYnV0dG9uTm8gPSBRU3RyaW5nOjpudWxsLAorICAgICAgICAgICAg ICAgICAgICBjb25zdCBRU3RyaW5nICZidXR0b25DYW5jZWwgPSBRU3RyaW5nOjpudWxsKTsKIAog ICAgIC8qCi0gICAgICogTGlrZSBAcmVmIG1lc3NhZ2VCb3ggCisgICAgICogTGlrZSBAcmVmIG1l c3NhZ2VCb3gKICAgICAgKgogICAgICAqIE9ubHkgZm9yIG1lc3NhZ2UgYm94ZXMgb2YgdHlwZSBJ bmZvcm1hdGlvbiwgU29ycnkgb3IgRXJyb3IuCiAgICAgICoK --------------Boundary-00=_IJL1AXYKYQ8ZGNRAKWFJ-- >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<