{% extends "base.html" %} {% block content %}

Match Playback and Player Stats

Video Playback

Player 1: {{ player1 }}

Player 2: {{ player2 }}

Player Comparison

{% for stat, values in stats.items() %} {% endfor %}
Stat {{ player1 }} {{ player2 }}
{{ stat }} {{ values[0] }} {{ values[1] }}

Player Overview

Stat {{ player1 }} {{ player2 }}
Full Name {{ player1_data.playerOverview.fullName }} {{ player2_data.playerOverview.fullName }}
Nationality {{ player1_data.playerOverview.nationality }} {{ player2_data.playerOverview.nationality }}
Date of Birth {{ player1_data.playerOverview.dateOfBirth }} {{ player2_data.playerOverview.dateOfBirth }}
Height {{ player1_data.playerOverview.height }} {{ player2_data.playerOverview.height }}
Weight {{ player1_data.playerOverview.weight }} {{ player2_data.playerOverview.weight }}
Playing Hand {{ player1_data.playerOverview.playingHand }} {{ player2_data.playerOverview.playingHand }}
Playing Style {{ player1_data.playerOverview.playingStyle }} {{ player2_data.playerOverview.playingStyle }}
Turned Pro Year {{ player1_data.playerOverview.turnedProYear }} {{ player2_data.playerOverview.turnedProYear }}

Career Highlights

Stat {{ player1 }} {{ player2 }}
Total Career Titles {{ player1_data.careerHighlights.totalCareerTitles }} {{ player2_data.careerHighlights.totalCareerTitles }}
Grand Slam Wins {{ player1_data.careerHighlights.grandSlamWins }} {{ player2_data.careerHighlights.grandSlamWins }}
Olympic Medals {{ player1_data.careerHighlights.olympicMedals.details }} {{ player2_data.careerHighlights.olympicMedals.details or 'N/A' }}
Career Prize Money ${{ player1_data.careerHighlights.careerPrizeMoney }} ${{ player2_data.careerHighlights.careerPrizeMoney }}
Career-High Ranking {{ player1_data.careerHighlights.careerHighRanking }} {{ player2_data.careerHighlights.careerHighRanking }}
Current Ranking {{ player1_data.careerHighlights.currentRanking }} {{ player2_data.careerHighlights.currentRanking }}
Year-End No. 1 Rankings {{ player1_data.careerHighlights.yearEndNo1Rankings | join(', ') }} {{ player2_data.careerHighlights.yearEndNo1Rankings | join(', ') }}

Head-to-Head Records

{% for key, value in player1_data.headToHeadRecords.items() %} {% endfor %}
Stat Value
{{ key | replace('_', ' ') | capitalize }} {% if value is mapping %}
{{ value | tojson(indent=2) }}
{% else %} {{ value }} {% endif %}

Performance Statistics

Stat {{ player1 }} {{ player2 }}
Overall Win Percentage {{ player1_data.performanceStatistics.overallWinPercentage }}% {{ player2_data.performanceStatistics.overallWinPercentage }}%
Aces {{ player1_data.performanceStatistics.serviceStats.aces }} {{ player2_data.performanceStatistics.serviceStats.aces }}
Double Faults {{ player1_data.performanceStatistics.serviceStats.doubleFaults }} {{ player2_data.performanceStatistics.serviceStats.doubleFaults }}
First Serve Percentage {{ player1_data.performanceStatistics.serviceStats.firstServePercentage }}% {{ player2_data.performanceStatistics.serviceStats.firstServePercentage }}%
First Serve Points Won {{ player1_data.performanceStatistics.serviceStats.firstServePointsWon }}% {{ player2_data.performanceStatistics.serviceStats.firstServePointsWon }}%
Second Serve Points Won {{ player1_data.performanceStatistics.serviceStats.secondServePointsWon }}% {{ player2_data.performanceStatistics.serviceStats.secondServePointsWon }}%
Break Points Converted {{ player1_data.performanceStatistics.returnStats.firstServeReturnPointsWon }}% {{ player2_data.performanceStatistics.returnStats.firstServeReturnPointsWon }}%
Second Break Points Converted {{ player1_data.performanceStatistics.returnStats.secondServeReturnPointsWon }}% {{ player2_data.performanceStatistics.returnStats.secondServeReturnPointsWon }}%
Tiebreak Record {{ player1_data.performanceStatistics.tiebreakRecord }} {{ player2_data.performanceStatistics.tiebreakRecord }}

Tournament History

Tournament {{ player1 }} {{ player2 }}
Australian Open {{ player1_data.tournamentHistory.grandSlamPerformances.australianOpen }} {{ player2_data.tournamentHistory.grandSlamPerformances.australianOpen }}
French Open {{ player1_data.tournamentHistory.grandSlamPerformances.frenchOpen }} {{ player2_data.tournamentHistory.grandSlamPerformances.frenchOpen }}
Wimbledon {{ player1_data.tournamentHistory.grandSlamPerformances.wimbledon }} {{ player2_data.tournamentHistory.grandSlamPerformances.wimbledon }}
US Open {{ player1_data.tournamentHistory.grandSlamPerformances.usOpen }} {{ player2_data.tournamentHistory.grandSlamPerformances.usOpen }}
ATP Finals Titles {{ player1_data.tournamentHistory.atpFinalsTitles }} {{ player2_data.tournamentHistory.atpFinalsTitles }}
Masters Titles {{ player1_data.tournamentHistory.mastersTitles }} {{ player2_data.tournamentHistory.mastersTitles }}

Historical Trends

Comparison Visualizations

{% for graph_name, graph_path in graph_paths.items() %}

{{ graph_name.replace('_', ' ').title() }}

{{ graph_name }}
{% endfor %}
{% endblock %}