This should probably happen after the `reject!` method, and we could only raising information about `target_value`. Also, we can rely on the return value of `reject!`, it returns nil in case nothing is found, which is when we want to raise, right?