private void templateWithRoots( String wikiText, String templateId, String[]... suffixes ) {
        int idx = findTemplate( wikiText, templateId );
        if( idx < 0 ) {
            return;
        }
        int end = wikiText.indexOf( '}', idx );
        if( end < 0 ) {
            return;
        }
        String wordRootsStr = wikiText.substring( idx, end );
        String[] wordRoots = wordRootsStr.split( "\\|" );
        for( int w = 0; w < wordRoots.length; w++ ) {
            String wordRoot = wordRoots[w];
            wordRoot = wordRoot.trim();
            if( !isValidWord( wordRoot ) ) {
                continue;
            }
            if( suffixes.length <= w ) {
                continue;
            }
            String[] suffixe = suffixes[w];
            for( int i = 0; i < suffixe.length; i++ ) {
                addWord( wordRoot + suffixe[i] );
            }
        }
    }