         self.subtitle = subtitle
         return self
     }
-}
+    
+//    public func object(_ object: Any?) -> Self {
+//        self.object = object
+//        return self
+//    }
+    
+    public func onClick(_ command: @escaping (GPointAnnotation) -> Void) -> Self {
+        self.onClick = command
+        return self
+    }
+    
+    public func performClick() {
+        onClick?(self)
+    }
+}

            locationManager.requestWhenInUseAuthorization()
        }
    }

    public func end() {
        // Ends chaining
    }

        // the device is rotated.
        if distance > 10 {  // 10 meters
            GLog.i("User location updated: \(userLocation.coordinate)")
            self.onUserLocationUpdate?(self)
        }
        
        self.previousLocation = currentLocation
