     }
 }
 
+// Have PlaceAnnotation adopt RowConvertible, Persistable, and Diffable, so
+// that it can feed the `primaryKeySortedDiff` observable.
+
 extension PlaceAnnotation: RowConvertible {
     convenience init(row: Row) {
         self.init(place: Place(row: row))

}

extension PlaceAnnotation: Diffable {
    func updated(with row: Row) -> Self {
        place = Place(row: row)
        return self

import GRDB
import RxGRDB

// A map annotation that wraps a place
final class PlaceAnnotation: NSObject, MKAnnotation {
    var place: Place {
        // Support MKMapView key-value observing on coordinates
        willSet { willChangeValue(forKey: "coordinate") }
        didSet { didChangeValue(forKey: "coordinate") }
    }
