class ESRIBounds implements Comparable<ESRIBounds> {

	@Pure
	@Override
	public int compareTo(ESRIBounds bounds) {
		if (bounds == null) {
			return -1;
		}
		int cmp = (int) Math.signum(bounds.minx - this.minx);
		if (cmp != 0) {
			return cmp;
		}
		cmp = (int) Math.signum(bounds.maxx - this.maxx);
		if (cmp != 0) {
			return cmp;
		}
		cmp = (int) Math.signum(bounds.miny - this.miny);
		if (cmp != 0) {
			return cmp;
		}
		cmp = (int) Math.signum(bounds.maxy - this.maxy);
		if (cmp != 0) {
			return cmp;
		}
		cmp = (int) Math.signum(bounds.minz - this.minz);
		if (cmp != 0) {
			return cmp;
		}
		cmp = (int) Math.signum(bounds.maxz - this.maxz);
		if (cmp != 0) {
			return cmp;
		}
		cmp = (int) Math.signum(bounds.minm - this.minm);
		if (cmp != 0) {
			return cmp;
		}
		return (int) Math.signum(bounds.maxm - this.maxm);
	}

	public  ESRIBounds();
	public  ESRIBounds(ESRIPoint point);
	public  ESRIBounds(double minx, double maxx, double miny, double maxy);
	public  ESRIBounds(double minx, double maxx, double miny, double maxy, double minz, double maxz, double minm, double maxm);
	public  ESRIBounds(ESRIBounds bounds);

}