Replaced object[key.to_sym] with object.send(key.to_sym) because that allows methods to be called instead of only values looked up
Passes collection conditions