
  int population;

  // Serialization support is required!
  template&lt;typename Archiver&gt;
  void serialize(Archiver&amp; ar, const unsigned int /*version*/) {
    ar &amp; name &amp; mayor &amp; population;
  }
};

struct Highway {
  Highway() { }
  Highway(const std::string&amp; name, int lanes, int miles_per_hour, int length)
    : name(name), lanes(lanes), miles_per_hour(miles_per_hour), length(length) { }

  std::string name;
  int lanes;
  int miles_per_hour;
  int length;

  // Serialization sup