step2 always returns a set no matter what the input is
filter out fails automatically