stop using `send` so that method privacy is respected and we get a small
perf increase
use the provided block to filter lists
do not search through the keys array twice