Map<String, dynamic> toJson() { Map<String, dynamic> rst = this.map((key, value) => MapEntry(json.encode(key.toJson()), value)); return rst; }