GSN with already-deployed tokens

How can we use GSN with already deployed (ERC20 / ERC721 / ERC1155) tokens that are not GSN aware?
I read that it’s possible if the permit() function exists in the token contract, but I haven’t seen any examples.

I see example code that inherits BaseRelayRecipient like Metacoin, but that’s only useful if we were designing a new token to deploy in the future. Most tokens in existence were deployed without explicit GSN support.

But since some tokens have implemented permit(), it would be good if we could still take advantage of the benefits of GSN with those. Support for this idea would help to increase adoption of GSN.

Is there any sample code that we could try?

Can anyone help?

GSN looks great but please make it straightforward for already-deployed non-GSN tokens so that there can be more traction.