code: boolean canBeSplit( List<Point2D_I32> contour, Element<Corner> e0 , boolean mustSplit ) {
  		Element<Corner> e1 = next(e0);
  
  		// NOTE: The contour is passed in but only the size of the contour matters. This was done to prevent
  		//       changing the signature if the algorithm was changed later on.
  		int length = CircularIndex.distanceP(e0.object.index, e1.object.index, contour.size());
  
  		// needs to be <= to prevent it from trying to split a side less than 1
  		// times two because the two new sides would have to have a length of at least min
  		if (length <= 2*minimumSideLength) {
  			return false;
  		}
  
  		// threshold is greater than zero ti prevent it from saying it can split a perfect side
  		return mustSplit || e0.object.sideError > thresholdSideSplitScore;
  	}
docs: Determines if the side can be split again. A side can always be split as long as
  it's &ge; the minimum length or that the side score is larger the the split threshold
  
  @param e0 The side which is to be tested to see if it can be split
  @param mustSplit if true this will force it to split even if the error would prevent it from splitting
  @return true if it can be split or false if not