PG1ldGEgY2hhcnNldD0ia29pOC1yIj4KPHNjcmlwdD4KaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKICAgIHRlc3RSdW5uZXIuc2V0Q3VzdG9tUG9saWN5RGVsZWdhdGUodHJ1ZSwgdHJ1ZSk7CiAgICB0ZXN0UnVubmVyLndhaXRGb3JQb2xpY3lEZWxlZ2F0ZSgpOwp9Cjwvc2NyaXB0Pgo8cD5Eb3dubG9hZGVkIGZpbGUgbmFtZSBzaG91bGQgYmUgIlNV8/PlU1MudHh0IiAobGV0dGVycyAiQ0NFIiBhcmUgQ3lyaWxsaWMpLjwvcD4KPGEgaHJlZj0icmVzb3VyY2VzL2xpdGVyYWwta29pOC1yLnB5IiBpZD1saW5rPkNsaWNrIE1lPC9hPgoKPHNjcmlwdD4KaWYgKHdpbmRvdy5ldmVudFNlbmRlcikgewogICAgdmFyIGxpbmsgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibGluayIpOwogICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8obGluay5vZmZzZXRMZWZ0ICsgMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmsub2Zmc2V0VG9wICsgMik7CiAgICBldmVudFNlbmRlci5tb3VzZURvd24oKTsKICAgIGV2ZW50U2VuZGVyLm1vdXNlVXAoKTsKfQo8L3NjcmlwdD4K