Ly8gUlVOOiBub3QgJWNsYW5nX2NjMSAlcyAtZm1lc3NhZ2UtbGVuZ3RoIDQwIDI+JjEgfCBGaWxlQ2hlY2sgLXN0cmljdC13aGl0ZXNwYWNlICVzCgppbnQgbWFpbigpIHsKICAgIGludCBpOwogICAgaWYoKGk9PS8q77++Ki8xKSk7CgovLyBDSEVDSzoge3teICAgIGlmXChcKGk9PS9cKjxVXCtGRkZFPlwqLzFcKVwpO319CgovLyBDSEVDSzoge3teICAgICAgICB+XF5+fn5+fn5+fn5+fn5+fn19Ci8vIENIRUNLOiB7e14gICAgICAgfiBcXiAgICAgICAgICAgICAgfn19CgogICAgKHZvaWQpIsrvv770IjsKCi8vIENIRUNLOiB7e14gICAgXCh2b2lkXCkiPENBPjxVXCtGRkZFPjxGND4iO319Ci8vIENIRUNLOiB7e14gICAgICAgICAgIFxefn5+fX0KCsKgIGludCBuID0gMDsKCi8vIENIRUNLOiB7eyBpbnQgbiA9IDA7fX0KLy8gQ0hFQ0s6IHt7XlxefX0KCiAgICLvv74gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBceiI7CgovLyBDSEVDSzoge3teICBcLlwuXC5cXHoiO319Ci8vIENIRUNLOiB7e14gICAgIFxefn19CgoKICAgIC8qIO+/viAqLyAi77++YmVyaHVuZCI7CgovLyBDSEVDSzoge3teICAgIC9cKiA8VVwrRkZGRT4gXCovICI8VVwrRkZGRT5iZXJodW5kIjt9fQovLyBDSEVDSzoge3teICAgICAgICAgICAgICAgICAgIFxefn5+fn5+fn5+fn5+fn5+fn19CgoKLy8gUFIxNDI5MgogICAgIniweHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eCIKLy8gQ0hFQ0s6IHt7XiAgICAieDxCMD59fQovLyBDSEVDSzoge3teICAgIFxefX0KCn0K