def attributes=(h)
      if h.is_a?(Hash)
        h = h.symbolize_keys
        @latitude = h[:latitude].to_f || h[:lat].to_f || @latitude
        @longitude = h[:longitude].to_f || h[:lng].to_f ||  @longitude
      elsif h.is_a?(Array) && h.count == 2
        @latitude = h.first.to_f
        @longitude = h.last.to_f
      end
      _validate_point
    end
def attributes=(h)
      if h.is_a?(Hash)
        h = h.symbolize_keys
        @latitude = h[:latitude].to_f || h[:lat].to_f || @latitude
        @longitude = h[:longitude].to_f || h[:lng].to_f ||  @longitude
      elsif h.is_a?(Array) && h.count == 2
        @latitude = h.first.to_f
        @longitude = h.last.to_f
      end
      _validate_point
    end
Setting lat and lng for an GeoPoint can be done using a hash with the attributes set
 or with an array of two items where the first is the lat and the second is the lng (ex. [32.22,-118.81])