@override T? decodeJson<T>(String json) { try { return Json.decode<T>(json, type: type); } catch (_) { return dart_convert.json.decode(json, reviver: jsonReviver) as T?; } }