key should be `check_fn` instead, since the value is a function?