This is slightly easier to use than the previous pattern that was always followed up by the same conversions. (cherry picked from commit 756c080730cd4fa81d4c0e3a99688cbe8debe57f)
(cherry picked from commit 397f00e8eefff376759f05bd0cbaecc106c681df)
(cherry picked from commit f2b1142018fd64dd45ec97f1eccf0c48cc4a8c6d)