code: public String explainScore(StringWrapper s, StringWrapper t) 
  	{
  		BagOfTokens sBag = (BagOfTokens)s;
  		BagOfTokens tBag = (BagOfTokens)t;
  		StringBuffer buf = new StringBuffer("");
  		PrintfFormat fmt = new PrintfFormat("%.3f");
  		buf.append("Common tokens: ");
  		for (Iterator i = sBag.tokenIterator(); i.hasNext(); ) {
  	    Token tok = (Token)i.next();
  			if (tBag.contains(tok)) {
  				buf.append(" "+tok.getValue()+": ");
  				buf.append(fmt.sprintf(tBag.getWeight(tok)));
  			}
  		}
  		buf.append("\nscore = "+score(s,t));
  		return buf.toString(); 
  	}
docs: Explain how the distance was computed.
  In the output, the tokens in S and T are listed, and the
  common tokens are marked with an asterisk.