use json4s's reflection