I’m trying to parse the v2.analytics.conversation.aggregate webhook payload in Kotlin. The data object is deeply nested, and I keep hitting ClassCastException when deserializing the metrics map. The structure changes based on conversation type, which breaks my static data class. How do I handle dynamic keys in the metrics object without writing a custom JsonDecoder for every possible metric type?