public Properties findTemplateTags(){
  Properties tags=new Properties();
  m_errorMessages.setLength(0);
  m_missingKeys.removeAllElements();
  while (true) {
    NextToken result=getNextToken();
    if (!result.finishedParsing()) {
      if (result.foundToken() && !BEGIN_FOR_EACH.equals(result.getKey()) && !END_FOR_EACH.equals(result.getKey())) {
        tags.put(result.getKey(),result.getKey());
      }
    }
 else {
      break;
    }
  }
  return (tags);
}

public Properties findTemplateTags ( ) { Properties tags = new Properties ( ) ; m_errorMessages . setLength ( 0 ) ; m_missingKeys . removeAllElements ( ) ; while ( true ) { NextToken result = getNextToken ( ) ; if ( ! result . finishedParsing ( ) ) { if ( result . foundToken ( ) && ! BEGIN_FOR_EACH . equals ( result . getKey ( ) ) && ! END_FOR_EACH . equals ( result . getKey ( ) ) ) { tags . put ( result . getKey ( ) , result . getKey ( ) ) ; } } else { break ; } } return ( tags ) ; }
this method parses the template substituting keys with values supplied in tags dictionary .
