docs: public RoadPath solve(Point2D<?, ?> startPoint, RoadConnection endPoint, RoadNetwork network) {
  		assert network != null && startPoint != null && endPoint != null;
  		final RoadSegment startSegment = network.getNearestSegment(startPoint);
  		if (startSegment != null) {
  			final VirtualPoint start = new VirtualPoint(startPoint, startSegment);
  			return solve(start, endPoint);
  		}
  		return null;
  	}