Maybe rewrite this as `block_given? ? new_scope : push_declared_params(attrs)`. A little odd to have a `return` above the next return.