#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct pospos {
bool operator()( int n ) { return n > 10; }
};
int main() {
vector<int> vv(20);
vector<int> tt(20);
for( int i = 0; i < 20; ++i ) vv[i] = i;
cout << "First Print: " << endl;
for( int i = 0; i < 20; ++i ) cout << "vv[" << i << "]: " << vv[i] << endl;
for( int i = 0; i < 20; ++i ) cout << "tt[" << i << "]: " << tt[i] << endl;
copy_if( vv.begin(), vv.end(), tt.begin(), pospos() );
cout << "Second Print: " << endl;
for( int i = 0; i < 20; ++i ) cout << "tt[" << i << "]: " << tt[i] << endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IHBvc3BvcyB7CiAgICBib29sIG9wZXJhdG9yKCkoIGludCBuICkgeyByZXR1cm4gbiA+IDEwOyB9Cn07CgppbnQgbWFpbigpIHsKCXZlY3RvcjxpbnQ+IHZ2KDIwKTsKCXZlY3RvcjxpbnQ+IHR0KDIwKTsKCQoJZm9yKCBpbnQgaSA9IDA7IGkgPCAyMDsgKytpICkgdnZbaV0gPSBpOwoJCgljb3V0IDw8ICJGaXJzdCBQcmludDogIiA8PCBlbmRsOwoJZm9yKCBpbnQgaSA9IDA7IGkgPCAyMDsgKytpICkgY291dCA8PCAidnZbIiA8PCBpIDw8ICJdOiAiIDw8IHZ2W2ldIDw8IGVuZGw7Cglmb3IoIGludCBpID0gMDsgaSA8IDIwOyArK2kgKSBjb3V0IDw8ICJ0dFsiIDw8IGkgPDwgIl06ICIgPDwgdHRbaV0gPDwgZW5kbDsKCQoJY29weV9pZiggdnYuYmVnaW4oKSwgdnYuZW5kKCksIHR0LmJlZ2luKCksIHBvc3BvcygpICk7CgkKCWNvdXQgPDwgIlNlY29uZCBQcmludDogIiA8PCBlbmRsOwoJZm9yKCBpbnQgaSA9IDA7IGkgPCAyMDsgKytpICkgY291dCA8PCAidHRbIiA8PCBpIDw8ICJdOiAiIDw8IHR0W2ldIDw8IGVuZGw7Cn0=