#include <iostream>
#include <sstream>
#include <string>
using namespace std;
void test(const string &data) {
istringstream file(data);
string line;
int count = 0;
while (getline(file, line)) {
++count;
if (file.eof()) break;
}
if (file.eof() && file.fail()) {
++count;
}
cout << "lines: " << count << endl;
}
int main() {
test("line");
test("line\n");
test("line\nline");
test("line\nline\n");
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3N0cmVhbT4KI2luY2x1ZGUgPHN0cmluZz4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnZvaWQgdGVzdChjb25zdCBzdHJpbmcgJmRhdGEpIHsKCWlzdHJpbmdzdHJlYW0gZmlsZShkYXRhKTsKCXN0cmluZyBsaW5lOwoJaW50IGNvdW50ID0gMDsKCQoJd2hpbGUgKGdldGxpbmUoZmlsZSwgbGluZSkpIHsKCQkrK2NvdW50OwoJCWlmIChmaWxlLmVvZigpKSBicmVhazsKCX0KCWlmIChmaWxlLmVvZigpICYmIGZpbGUuZmFpbCgpKSB7CgkJKytjb3VudDsKCX0KCQoJY291dCA8PCAibGluZXM6ICIgPDwgY291bnQgPDwgZW5kbDsKfQoKaW50IG1haW4oKSB7Cgl0ZXN0KCJsaW5lIik7Cgl0ZXN0KCJsaW5lXG4iKTsKCXRlc3QoImxpbmVcbmxpbmUiKTsKCXRlc3QoImxpbmVcbmxpbmVcbiIpOwoJcmV0dXJuIDA7Cn0=