La mejor forma de iterar un JSON en Kotlin

Uno de mis methods de Kotlin recibe una cadena json similar a la siguiente:

{ "12": { "1": { "a": "0", "b": "100", "c": "8", "d": "" }, "5": { "a": "0", "b": "100", "c": "8", "d": "" } } "53": { "1": { "a": "0", "b": "100", "c": "8", "d": "" }, "5": { "a": "0", "b": "100", "c": "8", "d": "" } } } 

¿Cuál es la mejor manera de iterar este json? No creo que el mapeo en un object de datos sea la mejor solución, ya que parece una matriz asociativa.

¿Alguna pista sobre eso? ¿Cómo puedo iterarlo como una matriz?