anchor.diff:  part 'event.g.dart';
   
   @JsonSerializable()
  -
  -// TODO add the other properties of event here.
   class Event {
     // The following fields are serializable, their exported names should be recognizable by the Paco server
     // DON'T change their names unless
  
positive.code: 
    String experimentName;
  
    @JsonKey(name: 'scheduledTime', fromJson: TimeUtil.dateTimeFromString, toJson: TimeUtil.dateTimeToString)
    DateTime scheduleTime;
  
    @JsonKey(fromJson: TimeUtil.dateTimeFromString, toJson: TimeUtil.dateTimeToString)
    DateTime responseTime;
  
    int experimentVersion;
  
negative.code:   @JsonKey(ignore: true)
    bool uploaded;
  
    Event();
  
    factory Event.fromJson(Map<String, dynamic> json) => _$EventFromJson(json);
  
    Map<String, dynamic> toJson() => _$EventToJson(this);
  
    static List<Map<String, dynamic>> _responsesToListOfMap(
            Map<String, dynamic> responses) =>
        responses.entries
            .map((entry) => {'name': entry.key, 'answer': entry.value})
            .toList();
  
    static Map<String, dynamic> _responsesFromListOfMap(
            List<Map<String, dynamic>> listOfMap) =>
        Map.fromIterable(listOfMap,
            key: (item) => item['name'], value: (item) => item['answer']);
  }
  