#include <iostream>
template <class Predicate_function>
  const int cutoff = 8096;
  
  if (sz <= cutoff) {
    
    while (sz-- > 0) {
      if (p(item))
    }
  } else {
    
    size_t mid = sz / 2;
    
    
    
  }
}
int main(
int argc, 
const char * argv[]) {
 
  const long n = 1000000;
  
  for (long i = 1; i <= 2*n; i++)
  
  pkeep_if(dst, src, [] (
long x) { 
return x%2 == 1; });
 
  
  long sum = 0;
  
  assert(sum == n*n);
  std::cout << "sum = " << sum << std::endl;
  return 0;
}