nit: can you move the `transformed_self_ty` decl down to the block of code below, closer to where it is used