code: public String getParseText() {
  
  		if(parseTextFixedCache != null)
  			return parseTextFixedCache;
  
  		// check for leaves that have a space in them
  		// replace any spaces with non-breaking spaces 0xa0
  		final String nbsp = "\u00A0";
  
  		// want to find terminals with more than one token
  		// leaves are not recursive, so its ok to use a regular expression
  		Matcher m = multiWordTerminalPat.matcher(parseText);
  		int ptr = 0;
  		StringBuilder sb = null;
  		while(m.find()) {
  			if(sb == null) sb = new StringBuilder();
  			int s = m.start();
  			int e = m.end();
  			
  			// before match
  			sb.append(parseText.substring(ptr, s));
  			
  			// match itself
  			String mid = parseText.substring(s, e);
  			int mid_space = mid.indexOf(" ");
  			sb.append(mid.substring(0, mid_space+1));
  			sb.append(mid.substring(mid_space+1).replaceAll("\\s+", nbsp));
  
  			ptr = e;
  		}
  		if(sb == null) {
  			parseTextFixedCache = parseText;
  		} else {
  			sb.append(parseText.substring(ptr));
  			parseTextFixedCache = sb.toString();
  		}
  		return parseTextFixedCache;
      }
docs: /* (non-Javadoc)
  @see edu.jhu.hltcoe.sp.data.depparse.AgigaSentence#getParseText()