Ly8gQ29weXJpZ2h0IEdvdHRmcmllZCBHYW7fYXVnZSAyMDAzLgovLyBEaXN0cmlidXRlZCB1bmRlciB0aGUgQm9vc3QgU29mdHdhcmUgTGljZW5zZSwgVmVyc2lvbiAxLjAuIChTZWUKLy8gYWNjb21wYW55aW5nIGZpbGUgTElDRU5TRV8xXzAudHh0IG9yIGNvcHkgYXQKLy8gaHR0cDovL3d3dy5ib29zdC5vcmcvTElDRU5TRV8xXzAudHh0KQoKIyBpZm5kZWYgQk9PU1RfUFlUSE9OX0RFVEFJTF9ERUFMTE9DX0hQUF8KIyBkZWZpbmUgQk9PU1RfUFlUSE9OX0RFVEFJTF9ERUFMTE9DX0hQUF8KbmFtZXNwYWNlIGJvb3N0IHsgbmFtZXNwYWNlIHB5dGhvbiB7IG5hbWVzcGFjZSBkZXRhaWwgewogICAgZXh0ZXJuICJDIgogICAgewogICAgICAgIGlubGluZSB2b2lkIGRlYWxsb2MoUHlPYmplY3QqIHNlbGYpCiAgICAgICAgewogICAgICAgICAgUHlPYmplY3RfRGVsKHNlbGYpOwogICAgICAgIH0KICAgIH0KfX19IC8vIG5hbWVzcGFjZSBib29zdDo6cHl0aG9uOjpkZXRhaWwKIyBlbmRpZiAgICAvLyBCT09TVF9QWVRIT05fREVUQUlMX0RFQUxMT0NfSFBQXwo=