119034|class.reflectionextension|100|1458486060|Anonymous|PD9waHAKICAvLyBDcmVhdGUgYW4gaW5zdGFuY2Ugb2YgdGhlIFJlZmxlY3Rpb25Qcm9wZXJ0eSBjbGFzcwogICRleHQ9IG5ldyBSZWZsZWN0aW9uRXh0ZW5zaW9uKCdzdGFuZGFyZCcpOwoKICAvLyBQcmludCBvdXQgYmFzaWMgaW5mb3JtYXRpb24KICBwcmludGYoCiAgICAgICJOYW1lICAgICAgICA6ICVzXG4iLgogICAgICAiVmVyc2lvbiAgICAgOiAlc1xuIi4KICAgICAgIkZ1bmN0aW9ucyAgIDogWyVkXSAlc1xuIi4KICAgICAgIkNvbnN0YW50cyAgIDogWyVkXSAlc1xuIi4KICAgICAgIklOSSBlbnRyaWVzIDogWyVkXSAlc1xuIiwKICAgICAgJGV4dC0+Z2V0TmFtZSgpLAogICAgICAkZXh0LT5nZXRWZXJzaW9uKCkgPyAkZXh0LT5nZXRWZXJzaW9uKCkgOiAnTk9fVkVSU0lPTicsCiAgICAgIHNpemVvZigkZXh0LT5nZXRGdW5jdGlvbnMoKSksCiAgICAgIHZhcl9leHBvcnQoJGV4dC0+Z2V0RnVuY3Rpb25zKCksIDEpLAogICAgICBzaXplb2YoJGV4dC0+Z2V0Q29uc3RhbnRzKCkpLAogICAgICB2YXJfZXhwb3J0KCRleHQtPmdldENvbnN0YW50cygpLCAxKSwKICAgICAgc2l6ZW9mKCRleHQtPmdldElOSUVudHJpZXMoKSksCiAgICAgIHZhcl9leHBvcnQoJGV4dC0+Z2V0SU5JRW50cmllcygpLCAxKQogICk7Cj8+|1|0 112478|class.reflectionextension|80|1371740511|Lubaev.K|PD9waHAKLy8gVGhlIGRlbW9uc3RyYXRpb24gZm9yIHRoZSBjbGFzcyAiUmVmbGVjdGlvbkV4dGVuc2lvbiIuCgpmdW5jdGlvbiBSRURhdGEoUmVmbGVjdGlvbkV4dGVuc2lvbiAkcmUsICRyZXR1cm49ZmFsc2UpIHsKCglkZWZpbmVkKCdVTkRFRklORUQnKSB8fCBkZWZpbmUoJ1VOREVGSU5FRCcsJyV1bmRlZmluZWQlJyk7CgkkX2RhdGEgPSBbXTsKCgkkX2RhdGFbJ2dldE5hbWU6J10gPSAkcmUtPmdldE5hbWUoKSA/OiBVTkRFRklORUQ7CgkkX2RhdGFbJ2dldFZlcnNpb246J10gPSAkcmUtPmdldFZlcnNpb24oKSA/OiBVTkRFRklORUQ7CgkkX2RhdGFbJ2luZm86J10gPSAkcmUtPmluZm8oKSA/OiBVTkRFRklORUQ7CgkkX2RhdGFbJ2dldENsYXNzTmFtZTonXSA9IFBIUF9FT0wuaW1wbG9kZSgiLCAiLCRyZS0+Z2V0Q2xhc3NOYW1lcygpKSA/OiBVTkRFRklORUQ7IAkKCWZvcmVhY2ggKCRyZS0+Z2V0Q29uc3RhbnRzKCkgYXMgJGtleSA9PiAkdmFsdWUpICRfZGF0YVsnZ2V0Q29uc3RhbnRzOiddIC49ICJcbnska2V5fTo9eyR2YWx1ZX0iOwoJJF9kYXRhWydnZXREZXBlbmRlbmNpZXM6J10gPSAkcmUtPmdldERlcGVuZGVuY2llcygpID86IFVOREVGSU5FRDsKCSRfZGF0YVsnZ2V0RnVuY3Rpb25zOiddID0gUEhQX0VPTC5pbXBsb2RlKCIsICIsYXJyYXlfa2V5cygkcmUtPmdldEZ1bmN0aW9ucygpKSkgPzogVU5ERUZJTkVEOwoJJF9kYXRhWydnZXRJTklFbnRyaWVzOiddID0gJHJlLT5nZXRJTklFbnRyaWVzKCkgPzogVU5ERUZJTkVEOwoJJF9kYXRhWydpc1BlcnNpc3RlbnQ6J10gPSAkcmUtPmlzUGVyc2lzdGVudCgpID86IFVOREVGSU5FRDsKCSRfZGF0YVsnaXNUZW1wb3Jhcnk6J10gPSAkcmUtPmlzVGVtcG9yYXJ5KCkgPzogVU5ERUZJTkVEOwoKCXJldHVybiBwcmludF9yKCRfZGF0YSwgJHJldHVybik7Cn0KClJFRGF0YSggbmV3IFJlZmxlY3Rpb25FeHRlbnNpb24oICdSZWZsZWN0aW9uJyApICk7ClJFRGF0YSggbmV3IFJlZmxlY3Rpb25FeHRlbnNpb24oICd6bGliJyApICk7CgovLyBSZWZsZWN0aW9uCi8vIFJlZmxlY3Rpb24gPT4gZW5hYmxlZAovLyBWZXJzaW9uID0+ICRJZDogNjBmMWU1NDdhNmRkMDAyMzkxNjIxNTFlNzAxNTY2ZGViZGNlZTY2MCAkCi8qCkFycmF5CigKICAgIFtnZXROYW1lOl0gPT4gUmVmbGVjdGlvbgogICAgW2dldFZlcnNpb246XSA9PiAkSWQ6IDYwZjFlNTQ3YTZkZDAwMjM5MTYyMTUxZTcwMTU2NmRlYmRjZWU2NjAgJAogICAgW2luZm86XSA9PiAldW5kZWZpbmVkJQogICAgW2dldENsYXNzTmFtZTpdID0+ClJlZmxlY3Rpb25FeGNlcHRpb24sIFJlZmxlY3Rpb24sIFJlZmxlY3RvciwgUmVmbGVjdGlvbkZ1bmN0aW9uQWJzdHJhY3QsIFJlZmxlY3RpCm9uRnVuY3Rpb24sIFJlZmxlY3Rpb25QYXJhbWV0ZXIsIFJlZmxlY3Rpb25NZXRob2QsIFJlZmxlY3Rpb25DbGFzcywgUmVmbGVjdGlvbk9iCmplY3QsIFJlZmxlY3Rpb25Qcm9wZXJ0eSwgUmVmbGVjdGlvbkV4dGVuc2lvbiwgUmVmbGVjdGlvblplbmRFeHRlbnNpb24KICAgIFtnZXREZXBlbmRlbmNpZXM6XSA9PiAldW5kZWZpbmVkJQogICAgW2dldEZ1bmN0aW9uczpdID0+CgogICAgW2dldElOSUVudHJpZXM6XSA9PiAldW5kZWZpbmVkJQogICAgW2lzUGVyc2lzdGVudDpdID0+IDEKICAgIFtpc1RlbXBvcmFyeTpdID0+ICV1bmRlZmluZWQlCikKKi8KLy8gemxpYgovLyBaTGliIFN1cHBvcnQgPT4gZW5hYmxlZAovLyBTdHJlYW0gV3JhcHBlciA9PiBjb21wcmVzcy56bGliOi8vCi8vIFN0cmVhbSBGaWx0ZXIgPT4gemxpYi5pbmZsYXRlLCB6bGliLmRlZmxhdGUKLy8gQ29tcGlsZWQgVmVyc2lvbiA9PiAxLjIuNwovLyBMaW5rZWQgVmVyc2lvbiA9PiAxLjIuNwovLyBEaXJlY3RpdmUgPT4gTG9jYWwgVmFsdWUgPT4gTWFzdGVyIFZhbHVlCi8vIHpsaWIub3V0cHV0X2NvbXByZXNzaW9uID0+IE9mZiA9PiBPZmYKLy8gemxpYi5vdXRwdXRfY29tcHJlc3Npb25fbGV2ZWwgPT4gLTEgPT4gLTEKLy8gemxpYi5vdXRwdXRfaGFuZGxlciA9PiBubyB2YWx1ZSA9PiBubyB2YWx1ZQovKgpBcnJheQooCiAgICBbZ2V0TmFtZTpdID0+IHpsaWIKICAgIFtnZXRWZXJzaW9uOl0gPT4gMi4wCiAgICBbaW5mbzpdID0+ICV1bmRlZmluZWQlCiAgICBbZ2V0Q2xhc3NOYW1lOl0gPT4KCiAgICBbZ2V0Q29uc3RhbnRzOl0gPT4KRk9SQ0VfR1pJUDo9MzEKRk9SQ0VfREVGTEFURTo9MTUKWkxJQl9FTkNPRElOR19SQVc6PS0xNQpaTElCX0VOQ09ESU5HX0daSVA6PTMxClpMSUJfRU5DT0RJTkdfREVGTEFURTo9MTUKICAgIFtnZXREZXBlbmRlbmNpZXM6XSA9PiAldW5kZWZpbmVkJQogICAgW2dldEZ1bmN0aW9uczpdID0+CnJlYWRnemZpbGUsIGd6cmV3aW5kLCBnemNsb3NlLCBnemVvZiwgZ3pnZXRjLCBnemdldHMsIGd6Z2V0c3MsIGd6cmVhZCwgZ3pvcGVuLCBnCnpwYXNzdGhydSwgZ3pzZWVrLCBnenRlbGwsIGd6d3JpdGUsIGd6cHV0cywgZ3pmaWxlLCBnemNvbXByZXNzLCBnenVuY29tcHJlc3MsIGd6CmRlZmxhdGUsIGd6aW5mbGF0ZSwgZ3plbmNvZGUsIGd6ZGVjb2RlLCB6bGliX2VuY29kZSwgemxpYl9kZWNvZGUsIHpsaWJfZ2V0X2NvZGluCmdfdHlwZSwgb2JfZ3poYW5kbGVyCiAgICBbZ2V0SU5JRW50cmllczpdID0+IEFycmF5CiAgICAgICAgKAogICAgICAgICAgICBbemxpYi5vdXRwdXRfY29tcHJlc3Npb25dID0+CiAgICAgICAgICAgIFt6bGliLm91dHB1dF9jb21wcmVzc2lvbl9sZXZlbF0gPT4gLTEKICAgICAgICAgICAgW3psaWIub3V0cHV0X2hhbmRsZXJdID0+CiAgICAgICAgKQoKICAgIFtpc1BlcnNpc3RlbnQ6XSA9PiAxCiAgICBbaXNUZW1wb3Jhcnk6XSA9PiAldW5kZWZpbmVkJQopCiov|4|1