Here is the question:

```
(let [data [{:a 1 :b 2 :v true} {:a 2 :b 5 :v true} {:a 22 :b 7} {:a 2 :b 5 :v false}]
k :v]
(filter (fn [m]
(if k (m k) true))) data)
```

I got

```
[{:a 1, :b 2, :v true}
{:a 2, :b 5, :v true}
{:a 22, :b 7}
{:a 2, :b 5, :v false}]
```

I wonder why `{:a 2 :b 5 :v false}`

is still included even if `:v`

has false value?

thanks

sun