// Path: app/src/main/java/com/github/gfx/hankei_n/toolbox/Locations.java
// public class Locations {
// 
//     public static final LatLng NOWHERE = new LatLng(0, 0);
// 
//     public static boolean isSomewhere(double latitude, double longitude) {
//         return latitude > 0 && longitude > 0;
//     }
// 
//     public static boolean isNowhere(double latitude, double longitude) {
//         return !isSomewhere(latitude, longitude);
//     }
// 
//     public static boolean isSomewhere(@NonNull LatLng latLng) {
//         return isSomewhere(latLng.latitude, latLng.longitude);
//     }
// 
//     public static boolean isNowhere(@NonNull LatLng latLng) {
//         return !isSomewhere(latLng);
//     }
// 
//     public static LatLng createLatLng(Location location) {
//         return new LatLng(location.getLatitude(), location.getLongitude());
//     }
// 
//     public static LatLng createLatLng(Address address) {
//         return new LatLng(address.getLatitude(), address.getLongitude());
//     }
// }


import com.google.android.gms.maps.model.LatLng;
import com.google.gson.annotations.SerializedName;
import com.github.gfx.android.orma.annotation.Column;
import com.github.gfx.android.orma.annotation.PrimaryKey;
import com.github.gfx.android.orma.annotation.Setter;
import com.github.gfx.android.orma.annotation.Table;
import com.github.gfx.hankei_n.toolbox.Locations;
import android.support.annotation.ColorInt;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import java.io.Serializable;
import javax.annotation.ParametersAreNonnullByDefault;
            double radius, boolean drawCircle, float markerHue) {
        this.id = id;
        this.address = address;
        this.note = note;
        this.latitude = latitude;
        this.longitude = longitude;
        this.radius = radius;
        this.drawCircle = drawCircle;
        this.markerHue = markerHue;
    }

    public LocationMemo(long id, @NonNull String address, @NonNull String note, @NonNull LatLng location,
            double radius, boolean drawCircle, float markerHue) {
        this(id, address, note, location.latitude, location.longitude, radius, drawCircle, markerHue);
    }

    public LocationMemo(@NonNull String address, @NonNull String note, @NonNull LatLng location,
            double radius, boolean drawCircle, float markerHue) {
        this(0, address, note, location, radius, drawCircle, markerHue);
    }

    public LocationMemo copy() {
        return new LocationMemo(id, address, note, latitude, longitude, radius, drawCircle, markerHue);
    }

    public boolean isPointingSomewhere() {
        return Locations.isSomewhere(latitude, longitude);
    }

    public boolean isPointingNowhere() {
// Path: app/src/main/java/com/github/gfx/hankei_n/toolbox/Locations.java
// public class Locations {
// 
//     public static final LatLng NOWHERE = new LatLng(0, 0);
// 
//     public static boolean isSomewhere(double latitude, double longitude) {
//         return latitude > 0 && longitude > 0;
//     }
// 
//     public static boolean isNowhere(double latitude, double longitude) {
//         return !isSomewhere(latitude, longitude);
//     }
// 
//     public static boolean isSomewhere(@NonNull LatLng latLng) {
//         return isSomewhere(latLng.latitude, latLng.longitude);
//     }
// 
//     public static boolean isNowhere(@NonNull LatLng latLng) {
//         return !isSomewhere(latLng);
//     }
// 
//     public static LatLng createLatLng(Location location) {
//         return new LatLng(location.getLatitude(), location.getLongitude());
//     }
// 
//     public static LatLng createLatLng(Address address) {
//         return new LatLng(address.getLatitude(), address.getLongitude());
//     }
// }


// Path: app/src/main/java/com/github/gfx/hankei_n/model/LocationMemo.java
import com.google.android.gms.maps.model.LatLng;
import com.google.gson.annotations.SerializedName;
import com.github.gfx.android.orma.annotation.Column;
import com.github.gfx.android.orma.annotation.PrimaryKey;
import com.github.gfx.android.orma.annotation.Setter;
import com.github.gfx.android.orma.annotation.Table;
import com.github.gfx.hankei_n.toolbox.Locations;
import android.support.annotation.ColorInt;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import java.io.Serializable;
import javax.annotation.ParametersAreNonnullByDefault;

            double radius, boolean drawCircle, float markerHue) {
        this.id = id;
        this.address = address;
        this.note = note;
        this.latitude = latitude;
        this.longitude = longitude;
        this.radius = radius;
        this.drawCircle = drawCircle;
        this.markerHue = markerHue;
    }

    public LocationMemo(long id, @NonNull String address, @NonNull String note, @NonNull LatLng location,
            double radius, boolean drawCircle, float markerHue) {
        this(id, address, note, location.latitude, location.longitude, radius, drawCircle, markerHue);
    }

    public LocationMemo(@NonNull String address, @NonNull String note, @NonNull LatLng location,
            double radius, boolean drawCircle, float markerHue) {
        this(0, address, note, location, radius, drawCircle, markerHue);
    }

    public LocationMemo copy() {
        return new LocationMemo(id, address, note, latitude, longitude, radius, drawCircle, markerHue);
    }

    public boolean isPointingSomewhere() {
        return Locations.isSomewhere(latitude, longitude);
    }

    public boolean isPointingNowhere() {
        return Locations.isNowhere(latitude, longitude);