Adblocker detected! Please consider reading this notice.

We've detected that you are using AdBlock Plus or some other adblocking software which is preventing the page from fully loading.

We don't have any banner, Flash, animation, obnoxious sound, or popup ad. We do not implement these annoying types of ads!

We need money to operate the site, and almost all of it comes from our online advertising.

Please add footballdatabase.eu to your ad blocking whitelist or disable your adblocking software.

×
Ehsan Hajsafi - Stats and titles won - 23/24
You have visited 36 page(s) today. 14 page(s) are remaining before you get blocked as a simple visitor. If you want to access more pages today, you can sign up for free.

Ehsan Hajsafi

28
Born on :  February 25, 1990 (34 years) at Isfahan 
Nationality  : Iran 
Height : 1m78
Weight : 74 kg
Number of international caps : 136 (7 goals)
First international goal : vs Qatar 11/08/2008
  • Ehsan Hajsafi

Other photos

Current season statistics (2023/2024)

15 clean sheets 41 Goals conceded
0 Goals 5 Assists
42 Played matches 3179 Minutes played
5 Yellow cards 0 Red cards
LF
Main position
Left full-back68%

Identities

Ehsan Hajsafi

Ehsan Haji Safi

احسان حاجی صفی

Ehsan Hajisafi

Hajsafi's career statisticsLast updated on 20/05/2024 at 05:25

SeasonClubLeagueContinentNat. cupsInternationalTotal
tier Games Games played Goals for goals Assists ass. Efficiency eff. Games Games played Goals for goals Assists ass. Efficiency eff. Games Games played Goals for goals Assists ass. Efficiency eff. Games Games played Goals for goals Assists ass. Efficiency eff. Games Games played Goals for goals Assists ass. Efficiency eff.
2023/2024 AEK Athènes1193101131425
Club Competition Games Goals forAssistsEfficiency
AEK Athènes Ligue des Champions 4
AEK Athènes Stoiximan Super League 193
AEK Athènes Ligue Europa 61
Iran Rencontres amicales 41
Iran Eliminatoires Coupe du Monde - Zone Asie 2
Iran Rencontres amicales 1
Iran Coupe d'Asie 5
Iran B Rencontres amicales 1
2022/2023 AEK Athènes12925181424
Club Competition Games Goals forAssistsEfficiency
AEK Athènes Super League 1 Interwetten 292
AEK Athènes Coupe de Grèce 51
Iran Rencontres amicales 31
Iran Coupe du Monde 3
Iran Rencontres amicales 2
2021/2022 AEK Athènes1282284141192411873642515
Club Competition Games Goals forAssistsEfficiency
AEK Athènes Super League 1 Interwetten 2822841
AEK Athènes Coupe de Grèce 41192
Iran Eliminatoires Coupe du Monde - Zone Asie 31142
Iran Rencontres amicales 1
2020/2021 Sepahan11325362311821767
Club Competition Games Goals forAssistsEfficiency
Sepahan Persian Gulf Cup 132536
Sepahan Hazfi Cup 2
Iran Rencontres amicales 1
Iran Eliminatoires Coupe du Monde - Zone Asie 21
2020/2021 Teraktor Sazi1161135811711419
Club Competition Games Goals forAssistsEfficiency
Teraktor Sazi Persian Gulf Cup 1611358
Iran Rencontres amicales 1
2019/2020 Teraktor Sazi129643534366531
Club Competition Games Goals forAssistsEfficiency
Teraktor Sazi Persian Gulf Cup 296435
Teraktor Sazi Hazfi Cup 3
Iran Eliminatoires Coupe du Monde - Zone Asie 3
Iran Rencontres amicales 1
2018/2019 Teraktor Sazi12492332
Club Competition Games Goals forAssistsEfficiency
Iran Rencontres amicales 3
Iran Coupe d'Asie 4
Iran Rencontres amicales 22
Teraktor Sazi Persian Gulf Cup 24
2017/2018 Olympiakos161152718115121170
Club Competition Games Goals forAssistsEfficiency
Olympiakos Souroti Superleague 611527
Olympiakos Coupe de Grèce 1
Iran Rencontres amicales 51
Iran Coupe du Monde 3
2017/2018 Panionios1141112493311192525221058
Club Competition Games Goals forAssistsEfficiency
Panionios (C3) Europa League 3
Panionios Souroti Superleague 14111249
Panionios Coupe de Grèce 311192
Iran Eliminatoires Coupe du Monde - Zone Asie 2
Iran Rencontres amicales 3
2016/2017 Sepahan1256837441139053479433
Club Competition Games Goals forAssistsEfficiency
Sepahan Persian Gulf Pro League 2568374
Sepahan Hazfi Cup 411390
Iran Eliminatoires Coupe du Monde - Zone Asie 4
Iran Rencontres amicales 1
2015/2016 FSV Francfort22721111318213553642764
Club Competition Games Goals forAssistsEfficiency
Iran Eliminatoires Coupe du Monde - Zone Asie 62265
Iran Rencontres amicales 1
Iran Rencontres amicales 11
FSV Francfort 2. Bundesliga 27211113
FSV Francfort DFB-Pokal 1
2015/2016 Sepahan1531150531150
Club Competition Games Goals forAssistsEfficiency
Sepahan Persian Gulf Pro League 531150
2014/2015 Sepahan1252109671632323941
Club Competition Games Goals forAssistsEfficiency
Iran Coupe du Monde 1
Iran Rencontres amicales 1
Iran Coupe d'Asie 31300
Iran Rencontres amicales 1
Iran Eliminatoires Coupe du Monde - Zone Asie 1
Sepahan Persian Gulf Pro League 2521096
2013/2014 Sepahan129212946915804431229
Club Competition Games Goals forAssistsEfficiency
Sepahan Iran Pro League 2921294
Sepahan AFC Champions League 6
Iran Eliminatoires Coupe d'Asie 2
Iran Rencontres amicales 51223
Iran Coupe du Monde 2
2012/2013 Sepahan116267455262910
Club Competition Games Goals forAssistsEfficiency
Iran West Asian Championship 1
Iran Eliminatoires Coupe d'Asie 1
Iran Rencontres amicales 1
Iran Eliminatoires Coupe du Monde - Zone Asie 2
Sepahan Iran Pro League 162674
Sepahan AFC Champions League 5
2012/2013 Teraktor Sazi11342394174295
Club Competition Games Goals forAssistsEfficiency
Teraktor Sazi Iran Pro League 134239
Iran Rencontres amicales 3
Iran Eliminatoires Coupe du Monde - Zone Asie 1
2011/2012 Teraktor Sazi132554811435681
Club Competition Games Goals forAssistsEfficiency
Iran Rencontres amicales 2
Iran Eliminatoires Coupe du Monde - Zone Asie 5
Iran Rencontres amicales 2
Teraktor Sazi Iran Pro League 325548
Iran B Rencontres amicales 2
2010/2011 Sepahan12821087713148211944
Club Competition Games Goals forAssistsEfficiency
Sepahan Iran Pro League 2821087
Sepahan AFC Champions League 7
Iran Rencontres amicales 4
Iran West Asian Championship 31
Iran Rencontres amicales 2
Iran Coupe d'Asie 4
2009/2010 Sepahan16917651511305
Club Competition Games Goals forAssistsEfficiency
Iran Rencontres amicales 41315
Iran Eliminatoires Coupe d'Asie 4
Iran Rencontres amicales 1
Sepahan AFC Champions League 6
2008/2009 Sepahan16101152616111050
Club Competition Games Goals forAssistsEfficiency
Iran West Asian Championship 411269
Iran Rencontres amicales 2
Iran Rencontres amicales 4
Sepahan AFC Champions League 6
2007/2008 Sepahan1931121
Club Competition Games Goals forAssistsEfficiency
Sepahan AFC Champions League 2
Sepahan Club World Cup 2
Sepahan AFC Champions League 5
Iran Rencontres amicales 11
Iran Eliminatoires Coupe du Monde - Zone Asie 2
Total3784119770521233364413971014115925133936
The data represented with this background color are not complete. The figures may not reflect reality.

Notes

Overall
/100
Physical
/20
Mental
/20
Technical
/20
Offense
/20
Defense
/20

Player's evolution

*The FBDB Index is an automatically engineered figure based on player's statistical performances during each game he is involved in.
Full back's Position World Ranking139
Full back's Position National Ranking (Iran)2
Full back's Position League Ranking (Stoiximan Super League)4
2024's Number of Matches World Ranking>1000
2024's Assists World Ranking558
2024's Number of Victories World Ranking>1000
2024's Minimum Losses World Ranking (Min. 30 games played)>1000
Rankings updated on 16/05/2024

Player's titles

Victories

Kypello Elladas 1logo AEK Athènes2023
Iran Pro League 3logo Sepahan Ispahan2011logo Teraktor Sazi2012logo Sepahan Ispahan2015
Hazfi Cup 1logo Teraktor Sazi2020
West Asian Football Federation Championship 1logo Iran2008

Runner-ups

Iran Pro League 2logo Teraktor Sazi2013logo Sepahan Ispahan2021
AFC Champions League 1logo Sepahan Ispahan2007

Transfers

02/08/21 > AEK AthènesFree
13/03/21 > 02/08/21 SepahanFree
02/09/18 > 13/03/21 Teraktor Sazi
02/01/18 > 02/09/18 Olympiakos600 k€
01/07/17 > 02/01/18 Panionios
31/07/16 > 01/07/17 Sepahan
31/08/15 > 31/07/16 FSV Francfort
05/12/12 > 31/08/15 Sepahan
01/07/11 > 05/12/12 Teraktor Sazi
01/07/07 > 01/07/11 Sepahan

Player career by clubLast updated on 20/05/2024 at 05:25

Club Games Played matches Goals for Goals Assists Assists Efficiency Efficiency Minutes played Minutes played Yellow cards Yellow cards Red cards Red cards Match starts Match starts V Victories L Losses
logo AEK Athènes AEK Athènes9539238071411087%8357%5427%26
logo FSV Francfort FSV Francfort2821117323454196%2721%654%15
logo Iran Iran136710138396791484%11462%8418%25
logo Iran Iran B3195167%2100%30%0
logo Olympiakos Le Pirée Olympiakos71161761786%643%329%2
logo Panionios Panionios20228561711295%1950%1025%5
logo Sepahan Ispahan Sepahan18620108001600221396%17950%9322%41
logo Teraktor Sazi Teraktor Sazi117166291005717196%11250%5823%27

Results with or without him

Season Club When present When absent Influence
v l Total v l Total
2023/2024 AEK Athènes 52% 31% 29 53% 5% 19 -
2022/2023 AEK Athènes 76% 15% 34 70% 10% 10 Very slightly positive
2021/2022 AEK Athènes 41% 38% 32 50% 13% 8 Slightly negative
2020/2021 Sepahan 67% 0% 15 0% 0% 0 -
2020/2021 Teraktor Sazi 38% 31% 16 100% 0% 1 -
2019/2020 Teraktor Sazi 50% 25% 32 67% 0% 3 -
2018/2019 Teraktor Sazi 50% 21% 24 0% 0% 1 -
2017/2018 Olympiakos 43% 29% 7 50% 20% 10 Slightly negative
2017/2018 Panionios 50% 25% 20 0% 100% 3 -
2016/2017 Sepahan 41% 31% 29 80% 0% 5 -
2015/2016 FSV Francfort 21% 54% 28 0% 100% 2 -
2015/2016 Sepahan 80% 0% 5 0% 0% 0 -
2014/2015 Sepahan 60% 16% 25 33% 33% 6 -
2013/2014 Sepahan 43% 20% 35 50% 50% 2 -
2012/2013 Sepahan 52% 33% 21 71% 0% 7 Negative
2012/2013 Teraktor Sazi 38% 23% 13 50% 0% 4 -
2011/2012 Teraktor Sazi 59% 19% 32 0% 0% 3 -
2010/2011 Sepahan 51% 14% 35 78% 0% 9 Negative
2009/2010 Sepahan 33% 33% 6 56% 15% 34 -
2008/2009 Sepahan 33% 50% 6 41% 18% 34 -
2007/2008 Sepahan 44% 44% 9 44% 21% 39 -

Key figures

Match starts
The player has played in the first 11 in Super League 1 in each of the last 23 at home matches
icon stats
Ehsan Hajsafi hasn't lost in Super League 1 any of the last 15 at home matches
icon stats
Hajsafi hasn't lost all competitions included any of the last 9 at home matches
icon stats
Ehsan Hajsafi has won for the national team the last 4 at home matches
icon stats
The player hasn't lost for the national team any of the last 21 at home matches
Match starts
He has played in the first 11 in non-league and non-national team competition in each of the last 16 matches
icon stats
Hajsafi has lost in non-league and non-national team competition the last 4 matches
icon stats
Ehsan Hajsafi hasn't won in non-league and non-national team competition any of the last 5 matches
Match starts
He has played in the first 11 in non-league and non-national team competition in each of the last 42 at home matches
icon stats
He hasn't won in non-league and non-national team competition any of the last 5 at home matches

First times

Date Competition Games Score First times

Sepahan Ispahan

03/10/2007 AFCCL Sepahan - Al Wadha 3 - 1 First match with the club, first start, first victory
10/12/2007  Club World Cup Sepahan - Urawa 1 - 3 First loss
06/08/2010 IPL Foolad - Sepahan 1 - 1 First red card
18/02/2011 IPL PAS Hamedan - Sepahan 0 - 1 First goal
15/04/2011 IPL Teraktor Sazi - Sepahan 1 - 3 First own goal
25/08/2015 Persian Gulf Pro League Saipa Karaj - Sepahan 0 - 2 First time scoring 2 goals

Teraktor Sazi

02/08/2011 IPL Teraktor Sazi - Saba Qom 2 - 3 First match with the club, first start, first loss
07/08/2011 IPL Zob Ahan - Teraktor Sazi 0 - 1 First victory
25/08/2011 IPL Teraktor Sazi - Shahrdari T 5 - 1 First goal, first time scoring 2 goals
29/01/2012 IPL Teraktor Sazi - Esteghlal T. 0 - 2 First red card

FSV Francfort

13/09/2015 2. Bundesliga FSV Francfort - Brunswick 0 - 3 First match with the club, first loss
20/09/2015 2. Bundesliga Duisbourg - FSV Francfort 0 - 1 First start, first victory
02/10/2015 2. Bundesliga FSV Francfort - Heidenheim 0 - 4 First own goal
22/11/2015 2. Bundesliga Kaiserslautern - FSV Francfort 1 - 1 First red card
02/03/2016 2. Bundesliga FSV Francfort - Duisbourg 3 - 3 First goal

Panionios

13/07/2017 (C3) Europa League Panionios - Gorica 2 - 0 First match with the club, first start, first victory
03/08/2017 (C3) Europa League Panionios - Mac. Tel-Aviv 0 - 1 First loss
27/08/2017 Souroti Superleague Panionios - Apollon Smyrnis 2 - 0 First goal

Olympiakos Le Pirée

10/01/2018 Coupe de Grèce Olympiakos - Platanias 2 - 0 First match with the club, first start, first victory
11/02/2018 Souroti Superleague Atromitos - Olympiakos 2 - 2 First goal
22/04/2018 Souroti Superleague Apollon Smyrnis - Olympiakos 1 - 0 First loss

AEK Athènes

12/09/2021 Super League 1 Interwetten AEK Athènes - Ionikos 3 - 0 First match with the club, first start, first victory
26/09/2021 Super League 1 Interwetten PAOK Salonique - AEK Athènes 2 - 0 First loss
24/10/2021 Super League 1 Interwetten Volos NFC - AEK Athènes 1 - 3 First goal

Player's results for each season

Season Club Tier Rk. pts MP V D L GF GA
2022/2023 AEK Athènes 1 1 3 1 1 0 0 3 0
2021/2022 AEK Athènes 1 2 3 1 1 0 0 3 0
2020/2021 Sepahan 1 2 65 30 19 8 3 53 24
2020/2021 Teraktor Sazi 1 5 26 17 7 5 5 17 15
2019/2020 Teraktor Sazi 1 4 50 30 14 8 8 31 23
2018/2019 Teraktor Sazi 1 5 52 30 14 10 6 42 25
2017/2018 Olympiakos 1 3 57 30 18 6 6 63 28
2017/2018 Panionios 1 5 22 15 6 4 5 19 16
2016/2017 Sepahan 1 5 45 30 12 9 9 38 34
2015/2016 FSV Francfort 2 17 32 34 8 8 18 33 59
2015/2016 Sepahan 1 1 10 4 3 1 0 7 3
2014/2015 Sepahan 1 1 59 30 17 8 5 46 27
2013/2014 Sepahan 1 4 54 30 14 12 4 36 20
2012/2013 Sepahan 1 3 64 34 19 7 8 60 33
2012/2013 Teraktor Sazi 1 6 28 17 7 7 3 27 17
2011/2012 Teraktor Sazi 1 1 66 34 19 9 6 57 32
2010/2011 Sepahan 1 1 66 34 18 12 4 56 29
2009/2010 Sepahan 1 1 67 34 19 10 5 67 30
2008/2009 Sepahan 1 4 56 34 14 14 6 46 34
2007/2008 Sepahan 1 2 58 34 17 10 7 53 38

Last games

Date Competition Round Team 1 Score Team 2 Score Minutes played Goals for Own goals Assists Yellow cards Red cards
May 19, 202419/05SSLJournée 10AEK Athènes3 - 0Lamia90 Minutes
May 15, 202415/05SSLJournée 9Olympiakos2 - 0AEK Athènes90 Minutes
April 28, 202428/04SSLJournée 8PAOK Salonique3 - 2AEK Athènes90 Minutes1
April 24, 202424/04SSLJournée 7AEK Athènes3 - 0Panathinaikos90 Minutes
April 21, 202421/04SSLJournée 6Aris Salonique1 - 2AEK Athènes90 Minutes
April 14, 202414/04SSLJournée 5AEK Athènes2 - 0Aris Salonique90 Minutes1
April 07, 202407/04SSLJournée 4AEK Athènes2 - 2PAOK Salonique90 Minutes
April 03, 202403/04SSLJournée 3Panathinaikos2 - 1AEK Athènes90 Minutes
March 31, 202431/03SSLJournée 2AEK Athènes1 - 0Olympiakos90 Minutes
March 26, 202426/03Eliminatoires Coupe du Monde - Zone AsieJournée 4Turkménistan0 - 1IranAbsent
March 21, 202421/03Eliminatoires Coupe du Monde - Zone AsieJournée 3Iran5 - 0TurkménistanAbsent
March 10, 202410/03SSLJournée 1Lamia0 - 4AEK Athènes8 Minutes
March 03, 202403/03SSLJournée 26Aris Salonique3 - 3AEK Athènes90 Minutes
February 28, 202428/02SSLJournée 25AEK Athènes4 - 2PAS Giannina90 Minutes1
February 24, 202424/02SSLJournée 24Lamia1 - 3AEK AthènesOn the bench
February 18, 202418/02SSLJournée 23AEK Athènes3 - 0AE Kifisia90 MinutesYellow cards
February 11, 202411/02SSLJournée 22PAOK Salonique1 - 1AEK AthènesAbsent
February 07, 202407/02Coupe d'Asie1/2 finalesIran2 - 3Qatar45 MinutesYellow cards
February 04, 202404/02SSLJournée 21AEK Athènes4 - 2AsterasAbsent
February 03, 202403/02Coupe d'Asie1/4 de finaleIran2 - 1JaponOn the bench
January 31, 202431/01Coupe d'Asie1/8 de finaleIran1 - 15-3 s.oSyrie120 Minutes
January 28, 202428/01SSLJournée 20AEK Athènes3 - 0OFI CrèteAbsent
January 23, 202423/01Coupe d'AsieJournée 3Iran2 - 1EAU90 Minutes
January 21, 202421/01SSLJournée 19Atromitos0 - 5AEK AthènesAbsent
January 19, 202419/01Coupe d'AsieJournée 2Hong-Kong0 - 1Iran10 Minutes
January 17, 202417/01Coupe de Grèce1/8 de finaleAris Salonique1 - 14-2 s.oAEK AthènesAbsent
January 14, 202414/01Coupe d'AsieJournée 1Iran4 - 1Palestine90 Minutes
January 14, 202414/01SSLJournée 18AEK Athènes2 - 2PanathinaikosAbsent
January 10, 202410/01Coupe de Grèce1/8 de finaleAEK Athènes0 - 0Aris SaloniqueAbsent
January 09, 202409/01Rencontres amicalesAsieIndonésie0 - 5Iran90 Minutes
January 07, 202407/01SSLJournée 17Olympiakos1 - 2AEK AthènesAbsent
January 03, 202403/01SSLJournée 16AEK Athènes3 - 0Volos NFCAbsent
December 21, 202321/12SSLJournée 15Panserraikos2 - 2AEK Athènes90 Minutes
December 18, 202318/12SSLJournée 14Panetolikos2 - 2AEK AthènesOn the bench
December 14, 202314/12Ligue EuropaJournée 6Ajax Amsterdam3 - 1AEK Athènes90 Minutes
December 04, 202304/12SSLJournée 13AEK Athènes1 - 0Aris Salonique90 Minutes
November 30, 202330/11Ligue EuropaJournée 5AEK Athènes0 - 1Brighton90 Minutes
November 26, 202326/11SSLJournée 12PAS Giannina0 - 1AEK AthènesOn the bench
November 21, 202321/11Eliminatoires Coupe du Monde - Zone AsieJournée 2Ouzbékistan2 - 2Iran0 minute
November 16, 202316/11Eliminatoires Coupe du Monde - Zone AsieJournée 1Iran4 - 0Hong-Kong90 Minutes
November 12, 202312/11SSLJournée 11AEK Athènes3 - 0LamiaAbsent
November 09, 202309/11Ligue EuropaJournée 4AEK Athènes0 - 2Marseille90 Minutes
November 04, 202304/11SSLJournée 10AE Kifisia1 - 1AEK AthènesAbsent
October 30, 202330/10SSLJournée 9AEK Athènes2 - 0PAOK SaloniqueAbsent
October 26, 202326/10Ligue EuropaJournée 3Marseille3 - 1AEK Athènes43 Minutes
October 22, 202322/10SSLJournée 8Asteras0 - 3AEK Athènes71 Minutes
October 17, 202317/10Rencontres amicalesAsieQatar0 - 4Iran6 Minutes
October 13, 202313/10Rencontres amicalesAsieJordanie1 - 3Iran90 Minutes
October 08, 202308/10SSLJournée 1AEK Athènes3 - 0Panetolikos77 Minutes
October 05, 202305/10Ligue EuropaJournée 2AEK Athènes1 - 1Ajax Amsterdam73 Minutes
October 02, 202302/10SSLJournée 7OFI Crète2 - 0AEK AthènesAbsent
September 28, 202328/09SSLJournée 6AEK Athènes2 - 1Atromitos90 MinutesYellow cards
September 25, 202325/09SSLJournée 5Panathinaikos1 - 2AEK AthènesAbsent
September 21, 202321/09Ligue EuropaJournée 1Brighton2 - 3AEK Athènes59 Minutes1
September 17, 202317/09SSLJournée 4AEK Athènes1 - 1OlympiakosOn the bench
September 12, 202312/09Rencontres amicalesIntercontinentalIran4 - 0Angola26 Minutes1
September 07, 202307/09Rencontres amicalesIntercontinentalBulgarie0 - 1Iran90 Minutes
September 03, 202303/09SSLJournée 3Volos NFC2 - 3AEK Athènes76 Minutes
August 30, 202330/08Ligue des ChampionsBarragesAEK Athènes1 - 2Royal Antwerp90 Minutes
August 26, 202326/08SSLJournée 2AEK Athènes1 - 1PanserraikosAbsent
August 22, 202322/08Ligue des ChampionsBarragesRoyal Antwerp1 - 0AEK Athènes90 Minutes
August 19, 202319/08Ligue des Champions3e tourAEK Athènes2 - 2Dinamo Zagreb90 Minutes
August 15, 202315/08Ligue des Champions3e tourDinamo Zagreb1 - 2AEK Athènes90 MinutesYellow cards
First XI
On the bench
Absent

Match ratings and personal notes

You have to sign in to display information here. If you want any information here, you have to rate the player in games he partipated in and/or comment one of his performances.

Closest teammates

photo Aghili Hadi Aghili Compare 146 Games
photo Ebrahimi Omid Ebrahimi Compare 127 Games
Hossein Papi Compare 122 Games
photo Shojaei Masoud Shojaei Compare 116 Games
photo Ansarifard Karim Ansarifard Compare 107 Games

Most visited opponents

photo Kamyabi Nia Kamaledin Kamyabi Nia Compare 14 Games
photo Ebrahimi Hossein Ebrahimi Compare 14 Games
photo Kiani Mehdi Kiani Compare 14 Games
photo Lak Hamed Lak Compare 14 Games
photo Ghazi Mohammad Ghazi Compare 13 Games

Player's teammates

His National Team teammates

Comments

Sign in to save your comment
Back to top