$wgOut->element('Problematic', true);
$wgOut->element('%', true);
$wgOut->blockend();
$wgGeneralMessages = $wgLanguages->getGeneralMessages();
$wgRequiredMessagesNumber = count($wgGeneralMessages['required']);
foreach ($wgLanguages->getLanguages() as $code) {
    # Don't check English or RTL English
    if ($code == 'en' || $code == 'enRTL') {
        continue;
    }
    # Calculate the numbers
    $language = $wgContLang->getLanguageName($code);
    $messages = $wgLanguages->getMessages($code);
    $messagesNumber = count($messages['translated']);
    $requiredMessagesNumber = count($messages['required']);
    $requiredMessagesPercent = $wgOut->formatPercent($requiredMessagesNumber, $wgRequiredMessagesNumber);
    $obsoleteMessagesNumber = count($messages['obsolete']);
    $obsoleteMessagesPercent = $wgOut->formatPercent($obsoleteMessagesNumber, $messagesNumber, true);
    $messagesWithoutVariables = $wgLanguages->getMessagesWithoutVariables($code);
    $emptyMessages = $wgLanguages->getEmptyMessages($code);
    $messagesWithWhitespace = $wgLanguages->getMessagesWithWhitespace($code);
    $nonXHTMLMessages = $wgLanguages->getNonXHTMLMessages($code);
    $messagesWithWrongChars = $wgLanguages->getMessagesWithWrongChars($code);
    $problematicMessagesNumber = count(array_unique(array_merge($messagesWithoutVariables, $emptyMessages, $messagesWithWhitespace, $nonXHTMLMessages, $messagesWithWrongChars)));
    $problematicMessagesPercent = $wgOut->formatPercent($problematicMessagesNumber, $messagesNumber, true);
    # Output them
    $wgOut->blockstart();
    $wgOut->element("{$language}");
    $wgOut->element("{$code}");
    $wgOut->element("{$requiredMessagesNumber}/{$wgRequiredMessagesNumber}");
    $wgOut->element($requiredMessagesPercent);
				$count = $wmfscores[$wmfcode]['count'] + 1;
				$score = ( ( $wmfscores[$wmfcode]['count'] * $wmfscores[$wmfcode]['score'] ) + $score ) / $count;
				$wmfscores[$wmfcode] = array( 'score' => $score, 'count' => $count );
			} else {
				$wmfscores[$wmfcode] = array( 'score' => $score, 'count' => 1 );
			}
		} else {
			$out->element( $score );
		}
	}

	// Fill fields for groups
	if ( !$wmfscore ) {
		foreach ( $columns as $fields ) {
			list( $invert, $upper, $total ) = $fields;
			$c = $out->formatPercent( $upper, $total, $invert );
			$out->element( $c );
		}

		$out->blockend();
	}
}

$out->footer();

if ( $reportScore && isset( $options['summary'] ) ) {
	if ( $reportScore && isset( $options['legendsummary'] ) ) {
		$out->addFreeText( "{{" . $options['legendsummary'] . "}}\n" );
	}

	$out->summaryheading();