code: private int[] getLineLengths() {
  		List<Integer> lineLengthsList = new ArrayList<Integer>();
  		int linelength = 0;
  		for (int i = 0; i < source.length(); i++) {
  			linelength++;
  			char ch = source.charAt(i);
  			if (ch == '\n') {
  				lineLengthsList.add(linelength);
  				linelength = 0;
  			}
  		}
  		lineLengthsList.add(linelength);
  		int[] result = new int[lineLengthsList.size()];
  		for (int i = 0; i < lineLengthsList.size(); i++) {
  			result[i] = lineLengthsList.get(i);
  		}
  		return result;
  
  	}
docs: Returns an array of integers representing the line lengths (including CRLF) of each of the
  lines in the input source.
  
  @return array of line length integers (one based)