#include <iostream>
#include <iterator>
#include <vector>
struct line : std::string
{
friend std::istream & operator >> (std::istream & in, line & ln)
{
return std::getline(in, ln);
}
};
int main() {
std::istream_iterator<line> begin(std::cin), end;
std::vector<std::string> allLines(begin, end);
std::cout << allLines.size() << " lines read from file, and they're :" << std::endl;
std::copy(allLines.begin(), allLines.end(),
std::ostream_iterator<std::string>(std::cout, "\n"));
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8aXRlcmF0b3I+CiNpbmNsdWRlIDx2ZWN0b3I+CgpzdHJ1Y3QgbGluZSA6IHN0ZDo6c3RyaW5nIAp7CiAgICBmcmllbmQgc3RkOjppc3RyZWFtICYgb3BlcmF0b3IgPj4gKHN0ZDo6aXN0cmVhbSAmIGluLCBsaW5lICYgbG4pCiAgICB7CiAgICAgICAgcmV0dXJuIHN0ZDo6Z2V0bGluZShpbiwgbG4pOwogICAgfQp9OwoKaW50IG1haW4oKSB7CiAgICBzdGQ6OmlzdHJlYW1faXRlcmF0b3I8bGluZT4gYmVnaW4oc3RkOjpjaW4pLCBlbmQ7CiAgICBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gYWxsTGluZXMoYmVnaW4sIGVuZCk7CiAgICAKICAgIHN0ZDo6Y291dCA8PCBhbGxMaW5lcy5zaXplKCkgPDwgIiBsaW5lcyByZWFkIGZyb20gZmlsZSwgYW5kIHRoZXkncmUgOiIgPDwgc3RkOjplbmRsOwogICAgc3RkOjpjb3B5KGFsbExpbmVzLmJlZ2luKCksIGFsbExpbmVzLmVuZCgpLAogICAgICAgICAgc3RkOjpvc3RyZWFtX2l0ZXJhdG9yPHN0ZDo6c3RyaW5nPihzdGQ6OmNvdXQsICJcbiIpKTsKICAgIHJldHVybiAwOwp9