public Location getDestination(Location location) {
		World world = location.getWorld();
		double x = location.getX() + 0.5D;
		double y = location.getY();
		double z = location.getZ() + 0.5D;

		while (blockIsAboveAir(world, x, y, z)) {
			y -= 1.0D;
		}
		while (blockIsNotSafe(world, x, y, z)) {
			y += 1.0D;
			if (y == 110.0D) {
				y = 1.0D;
				x += 1.0D;
			}
		}
		return new Location(world, x, y, z, location.getYaw(),
				location.getPitch());
	}