By my count, `data[:deprecated]` is accessed 6 times in this method.  Seems like it could benefit from being pulled out into a local variable.  I expect that would have better perf -- 5 less message sends!