docs: @Override
    public String getCanonicalUnits(String unit) throws UcumException  {
  		assert checkStringParam(unit) : paramError("getCanonicalUnits", "unit", "must not be null or empty");
  		try {
  			Term term = new ExpressionParser(model).parse(unit);
  			return new ExpressionComposer().compose(new Converter(model, handlers).convert(term), false);	
  		} catch (Exception e) {
  			throw new UcumException("Error processing "+unit+": "+e.getMessage(), e);
  		}
  	}