Map<String, dynamic> toJson() { var out = <String, dynamic>{'message': message}; if (locations.isNotEmpty == true) { out['locations'] = locations.map((l) => l.toJson()).toList(); } return out; }