fucking around with lambdas instead of iterators