Skip to content
Florian Thauvin

Florian Thauvin

Attack - Second Striker  at RC Lens
Age33
CitizenshipFrance
Height1.81 m
Footleft
BornJanuary 26, 1993
at RC Lens 289 days · joined 2025-08-08
👕200+ Apps 100+ Goals 🎯50+ Assists
Market value €5.00m
Second Striker Attack

Career snapshot

7
clubs played for
10/11
debut season
0.26
goals / match
Olympique Marseille
top club · 281 apps

Career highs

€50.00m
peak value · 2018
€18.35m
top transfer fee · 15/16
26
best season · 17/18
12 · 9.9%
pens / of goals
465Appearances
121Goals
83Assists
47Yellow cards
5Red cards
60Full matches (90′)
Full nameFlorian Thauvin
Name in home countryFlorian Tristan Mariano Thauvin
Date of birth1993-01-26 (33 yrs)
Place of birthOrléans, France
CitizenshipFrance
PositionAttack - Second Striker (main: Attack)
Footleft
Height181.00 m
Current clubRC Lens
Joined2025-08-08
Contract expires2028-06-30
AgentSport Cover
Outfitteradidas
Aug 2025
Transfer: Udinese → Lens
25/26 · Transfer · €6.00m
Jul 2025
25/26 — RC Lens
3 matches · 1 G · 0 A · across 1 competition
Mar 2025
Injury: unknown
10 games missed
Oct 2024
Injury: unknown
3 games missed
Jul 2024
24/25 — Udinese Calcio
26 matches · 9 G · 5 A · across 2 competitions
Apr 2024
Injury: unknown
6 games missed
Jul 2023
23/24 — Udinese Calcio
31 matches · 6 G · 5 A · across 2 competitions
Jan 2023
Transfer: Tigres UANL → Udinese
22/23 · Transfer
Jul 2022
Injury: unknown
8 games missed
Jul 2022
22/23 — Tigres UANL, Udinese Calcio
26 matches · 3 G · 2 A · across 4 competitions
Sep 2021
Injury: unknown
5 games missed
Jul 2021
2021 — Tigres UANL
1 matches · 0 G · 0 A · across 1 competition
Jul 2021
21/22 — Tigres UANL
27 matches · 5 G · 3 A · across 4 competitions
Jul 2021
Transfer: Marseille → Tigres UANL
21/22 · Transfer
Feb 2021
Injury: unknown
1 games missed
Jul 2020
20/21 — Olympique Marseille
44 matches · 8 G · 10 A · across 4 competitions
Sep 2019
Injury: unknown
29 games missed
Jul 2019
Injury: unknown
3 games missed
Jul 2019
19/20 — Olympique Marseille
2 matches · 0 G · 0 A · across 1 competition
Apr 2019
Injury: unknown
2 games missed
Oct 2018
Injury: unknown
3 games missed
Oct 2018
Injury: unknown
1 games missed
Jul 2018
18/19 — Olympique Marseille
37 matches · 18 G · 9 A · across 3 competitions
Mar 2018
Injury: unknown
4 games missed
Mar 2018
Injury: unknown
1 games missed
Feb 2018
Injury: unknown
1 games missed
Dec 2017
Injury: unknown
1 games missed
Jul 2017
17/18 — Olympique Marseille
54 matches · 26 G · 17 A · across 5 competitions
Jul 2017
Transfer: Newcastle → Marseille
17/18 · Transfer · €11.00m
Jun 2017
Transfer: Marseille → Newcastle
16/17 · Return from loan
Aug 2016
Transfer: Newcastle → Marseille
16/17 · Loan
Jul 2016
16/17 — Olympique Marseille
43 matches · 15 G · 12 A · across 3 competitions
Jun 2016
Transfer: Marseille → Newcastle
15/16 · Return from loan
Jan 2016
Transfer: Newcastle → Marseille
15/16 · Loan
Aug 2015
Transfer: Marseille → Newcastle
15/16 · Transfer · €18.35m
Jul 2015
15/16 — Olympique Marseille, Newcastle United
38 matches · 5 G · 3 A · across 6 competitions
Jul 2014
14/15 — Olympique Marseille
38 matches · 5 G · 7 A · across 3 competitions
Sep 2013
Transfer: LOSC Lille → Marseille
13/14 · Transfer · €12.00m
Jul 2013
13/14 — Olympique Marseille
41 matches · 10 G · 6 A · across 4 competitions
Jun 2013
Transfer: SC Bastia → LOSC Lille
12/13 · Return from loan
Jan 2013
Transfer: LOSC Lille → SC Bastia
12/13 · Loan
Jan 2013
Transfer: SC Bastia → LOSC Lille
12/13 · Transfer · €3.50m
Jul 2012
12/13 — SC Bastia
35 matches · 10 G · 4 A · across 3 competitions
Aug 2011
Transfer: Grenoble B → SC Bastia
11/12 · Transfer
Jul 2011
11/12 — SC Bastia
16 matches · 0 G · 0 A · across 2 competitions
Jul 2010
10/11 — Grenoble Foot 38
3 matches · 0 G · 0 A · across 1 competition
Jul 2010
Transfer: Grenoble U19 → Grenoble B
10/11 · Transfer
Jan 1970
Peak market value: €50.00m
Highest valuation recorded in dataset
5,418 min
Minutes played by club
RC Lens 3.4%
Udinese Calcio 14.9%
Tigres UANL 16.3%
Olympique Marseille 59.2%
Newcastle United 2.0%
SC Bastia 4.2%
Grenoble Foot 38 0.0%
ClubSeasonsFirstLastMatchesGoalsAssistsMinutes
RC Lens 1 25/26 25/26 3 1 0 182
Udinese Calcio 3 22/23 24/25 73 15 10 809
Tigres UANL 3 2021 22/23 38 8 5 882
Olympique Marseille 8 13/14 20/21 281 86 61 3,209
Newcastle United 1 15/16 15/16 16 1 3 110
SC Bastia 2 11/12 12/13 51 10 4 226
Grenoble Foot 38 1 10/11 10/11 3 0 0 0

Career trajectory — goals, assists & market value

11€12.5M22€25M32€37.5M43€50M11/1212/13 — 10 goals (SC Bastia)12/13 — 4 assists1412/1313/14 — 10 goals (Olympique Marseille)13/14 — 6 assists1613/1414/15 — 5 goals (Olympique Marseille)14/15 — 7 assists1214/1515/16 — 5 goals (Olympique Marseille)15/16 — 3 assists815/1616/17 — 15 goals (Olympique Marseille)16/17 — 12 assists2716/1717/18 — 26 goals (Olympique Marseille)17/18 — 17 assists4317/1818/19 — 18 goals (Olympique Marseille)18/19 — 9 assists2718/1919/2020/21 — 8 goals (Olympique Marseille)20/21 — 10 assists1820/2121/22 — 5 goals (Tigres UANL)21/22 — 3 assists821/2222/23 — 3 goals (Tigres UANL)22/23 — 2 assists522/2323/24 — 6 goals (Udinese Calcio)23/24 — 5 assists1123/2424/25 — 9 goals (Udinese Calcio)24/25 — 5 assists1424/2525/26 — 1 goals (RC Lens)125/2611/12 — €150K12/13 — €500K13/14 — €12M14/15 — €14M15/16 — €14M16/17 — €12M17/18 — €18M18/19 — €50M19/20 — €45M20/21 — €32M21/22 — €28M22/23 — €12M23/24 — €7.5M24/25 — €5M25/26 — €5MGoalsAssistsMarket value

Goals by season

10/11: 0010/1111/12: 0011/1212/13: 101012/1313/14: 101013/1414/15: 5514/1515/16: 5515/1616/17: 151516/1717/18: 262617/1818/19: 181818/1919/20: 0019/2020/21: 8820/212021: 00202121/22: 5521/2222/23: 3322/2323/24: 6623/2424/25: 9924/2525/26: 1125/26

Assists by season

10/11: 0010/1111/12: 0011/1212/13: 4412/1313/14: 6613/1414/15: 7714/1515/16: 3315/1616/17: 121216/1717/18: 171717/1818/19: 9918/1919/20: 0019/2020/21: 101020/212021: 00202121/22: 3321/2222/23: 2222/2323/24: 5523/2424/25: 5524/2525/26: 0025/26
SeasonCompetitionClubMatchesGoalsAssistsYCRCMinutes
25/26 Ligue 1 RC Lens 3 1 0 0 0 182
24/25 Italy Cup Udinese Calcio 1 1 2 0 0 64
24/25 Serie A Udinese Calcio 25 8 3 0 0 247
23/24 Italy Cup Udinese Calcio 2 1 2 0 0 155
23/24 Serie A Udinese Calcio 29 5 3 4 0 343
22/23 Liga MX Apertura Tigres UANL 7 3 2 0 1 104
22/23 Liga MX Clausura Tigres UANL 0 0 0 0 0 0
22/23 Liguilla Apertura Tigres UANL 3 0 0 0 0 0
22/23 Serie A Udinese Calcio 16 0 0 1 0 0
21/22 Liga MX Apertura Tigres UANL 7 1 1 1 1 354
21/22 Liga MX Clausura Tigres UANL 16 3 2 2 0 369
21/22 Liguilla Apertura Tigres UANL 2 1 0 0 0 55
21/22 Liguilla Clausura Tigres UANL 2 0 0 0 0 0
2021 Leagues Cup Tigres UANL 1 0 0 0 0 0
20/21 Champions League Olympique Marseille 6 0 1 2 0 0
20/21 Coupe de France Olympique Marseille 1 0 0 0 0 0
20/21 Ligue 1 Olympique Marseille 36 8 8 5 0 344
20/21 Trophée des Champions Olympique Marseille 1 0 1 0 0 0
19/20 Ligue 1 Olympique Marseille 2 0 0 0 0 0
18/19 Coupe de France Olympique Marseille 1 0 0 0 0 0
18/19 Europa League Olympique Marseille 3 2 1 1 0 114
18/19 Ligue 1 Olympique Marseille 33 16 8 5 1 164
17/18 Coupe de France Olympique Marseille 3 0 1 0 0 0
17/18 Coupe de la Ligue Olympique Marseille 1 0 0 0 0 0
17/18 Europa League Olympique Marseille 12 3 2 2 0 254
17/18 Europa League Qualifying Olympique Marseille 3 1 3 2 0 223
17/18 Ligue 1 Olympique Marseille 35 22 11 7 0 135
16/17 Coupe de France Olympique Marseille 3 0 1 0 0 0
16/17 Coupe de la Ligue Olympique Marseille 2 0 1 1 0 0
16/17 Ligue 1 Olympique Marseille 38 15 10 2 0 198
15/16 Coupe de France Olympique Marseille 4 2 0 0 0 153
15/16 Europa League Olympique Marseille 2 0 0 0 0 0
15/16 FA Cup Newcastle United 1 0 0 0 0 0
15/16 League Cup Newcastle United 2 1 3 0 0 110
15/16 Ligue 1 Olympique Marseille 16 2 0 0 1 473
15/16 Premier League Newcastle United 13 0 0 1 0 0
14/15 Coupe de France Olympique Marseille 1 0 0 0 0 0
14/15 Coupe de la Ligue Olympique Marseille 1 0 0 0 0 0
14/15 Ligue 1 Olympique Marseille 36 5 7 3 0 503
13/14 Champions League Olympique Marseille 6 1 1 0 0 240
13/14 Coupe de France Olympique Marseille 2 1 1 1 0 147
13/14 Coupe de la Ligue Olympique Marseille 2 0 0 0 0 0
13/14 Ligue 1 Olympique Marseille 31 8 4 2 0 261
12/13 Coupe de France SC Bastia 1 0 0 0 0 0
12/13 Coupe de la Ligue SC Bastia 2 0 1 0 0 0
12/13 Ligue 1 SC Bastia 32 10 3 4 1 226
11/12 Coupe de France SC Bastia 3 0 0 0 0 0
11/12 Ligue 2 SC Bastia 13 0 0 1 0 0
10/11 Ligue 2 Grenoble Foot 38 3 0 0 0 0 0
SeasonDateFromToTypeMarket valueFee
10/11 2010-07-01 Grenoble U19 Grenoble B Transfer 0
11/12 2011-08-10 Grenoble B SC Bastia Transfer 0
12/13 2013-01-30 SC Bastia LOSC Lille Transfer 3000000 €3.50m
12/13 2013-01-31 LOSC Lille SC Bastia Loan 3000000
12/13 2013-06-30 SC Bastia LOSC Lille Return from loan 6000000
13/14 2013-09-02 LOSC Lille Marseille Transfer 6000000 €12.00m
15/16 2015-08-19 Marseille Newcastle Transfer 12000000 €18.35m
15/16 2016-01-31 Newcastle Marseille Loan 14000000
15/16 2016-06-30 Marseille Newcastle Return from loan 9000000
16/17 2016-08-04 Newcastle Marseille Loan 9000000
16/17 2017-06-30 Marseille Newcastle Return from loan 18000000
17/18 2017-07-01 Newcastle Marseille Transfer 18000000 €11.00m
21/22 2021-07-01 Marseille Tigres UANL Transfer 17000000
22/23 2023-01-31 Tigres UANL Udinese Transfer 10000000
25/26 2025-08-08 Udinese Lens Transfer 5000000 €6.00m
SeasonInjuryFromToDays missedGames missed
17/18 Calf problems 2017-12-07 2017-12-07 1 1
17/18 Ill 2018-02-05 2018-02-08 4 1
17/18 Bruise on the ankle joint 2018-03-09 2018-03-14 6 1
17/18 Thigh problems 2018-03-26 2018-04-11 17 4
18/19 Heel spur 2018-10-03 2018-10-06 4 1
18/19 Foot injury 2018-10-14 2018-10-27 14 3
18/19 Bruise on the ankle joint 2019-04-27 2019-05-11 15 2
19/20 Ankle injury 2019-07-14 2019-08-29 47 3
19/20 Arthroscopy 2019-09-11 2020-03-05 177 29
20/21 Knock 2021-02-19 2021-02-27 9 1
21/22 Muscle fiber tear 2021-09-26 2021-10-23 28 5
22/23 Muscle injury 2022-07-23 2022-09-02 42 8
23/24 Hamstring injury 2024-04-11 2024-05-25 45 6
24/25 muscular problems 2024-10-02 2024-10-28 27 3
24/25 Arch problems 2025-03-14 2025-05-31 79 10
Current€5.00m
Peak€50.00m
Low€150k
Δ since start+€4.85m
€150k€12.61m€25.08m€37.54m€50.00m197019701970
DateValue
Jan 1, 1970 €5.00m
Jan 1, 1970 €5.00m
Jan 1, 1970 €5.00m
Jan 1, 1970 €3.00m
Jan 1, 1970 €3.00m
Jan 1, 1970 €3.50m
Jan 1, 1970 €7.50m
Jan 1, 1970 €12.00m
Jan 1, 1970 €10.00m
Jan 1, 1970 €10.00m
Jan 1, 1970 €17.00m
Jan 1, 1970 €28.00m
Jan 1, 1970 €14.00m
Jan 1, 1970 €32.00m
Jan 1, 1970 €32.00m
Jan 1, 1970 €40.00m
Jan 1, 1970 €45.00m
Jan 1, 1970 €50.00m
Jan 1, 1970 €28.00m
Jan 1, 1970 €50.00m
Jan 1, 1970 €11.00m
Jan 1, 1970 €18.00m
Jan 1, 1970 €9.00m
Jan 1, 1970 €12.00m
Jan 1, 1970 €11.00m
Jan 1, 1970 €9.00m
Jan 1, 1970 €14.00m
Jan 1, 1970 €14.00m
Jan 1, 1970 €12.00m
Jan 1, 1970 €14.00m
Jan 1, 1970 €14.00m
Jan 1, 1970 €1.75m
Jan 1, 1970 €5.00m
Jan 1, 1970 €12.00m
Jan 1, 1970 €6.00m
Jan 1, 1970 €3.00m
Jan 1, 1970 €2.50m
Jan 1, 1970 €8.50m
Jan 1, 1970 €300k
Jan 1, 1970 €500k
Jan 1, 1970 €150k
Jan 1, 1970 €150k

No national team data.

TeammatePPG played withJoint goalsMinutes
Hiroki Sakai 2 4 0
Morgan Sanson 2 14 0
André-Pierre Gignac 2 7 0
Maxime Lopez 2 8 0
Valère Germain 2 12 0
Frank Anguissa 2 1 0
Lucas Ocampos 2 6 0
Luiz Gustavo 2 2 0
Alaixys Romao 1 1 0
Boubacar Kamara 2 0 0
Sandi Lovrić 1 3 0
Duje Caleta-Car 1 2 0
Jaka Bijol 1 0 0

Single-season peaks across competitions in this player's career.

Top goalscoring seasons

SeasonCompetitionClubGoalsMatches
17/18 Ligue 1 Olympique Marseille 22 35
18/19 Ligue 1 Olympique Marseille 16 33
16/17 Ligue 1 Olympique Marseille 15 38

Top assist seasons

SeasonCompetitionClubAssistsMatches
17/18 Ligue 1 Olympique Marseille 11 35
16/17 Ligue 1 Olympique Marseille 10 38
18/19 Ligue 1 Olympique Marseille 8 33

Every loan spell across this player's career.

SeasonDateFromToTypeFeeValue at transfer
16/17 2017-06-30 Marseille Newcastle Return from loan €18.00m
16/17 2016-08-04 Newcastle Marseille Loan €9.00m
15/16 2016-06-30 Marseille Newcastle Return from loan €9.00m
15/16 2016-01-31 Newcastle Marseille Loan €14.00m
12/13 2013-06-30 SC Bastia LOSC Lille Return from loan €6.00m
12/13 2013-01-31 LOSC Lille SC Bastia Loan €3.00m

Last 50 matches for RC Lens The Availability column cross-references our injury database — matches inside a known injury window are flagged INJURED. Per-match goal attribution requires a paid feed (FBref/Sofascore) and isn't wired up yet.

DateCompHomeScoreAwayAvailability
2023-06-03 FR1 AJ Auxerre 1–3 RC Lens Available
2023-05-27 FR1 RC Lens 3–0 AC Ajaccio Available
2023-05-21 FR1 FC Lorient 1–3 RC Lens Available
2023-05-12 FR1 RC Lens 2–1 Stade de Reims Available
2023-05-06 FR1 RC Lens 2–1 Olympique Marseille Available
2023-05-02 FR1 Toulouse FC 0–1 RC Lens Available
2023-04-22 FR1 RC Lens 3–0 AS Monaco Available
2023-04-15 FR1 Paris Saint-Germain 3–1 RC Lens Available
2023-04-07 FR1 RC Lens 2–1 RC Strasbourg Available
2023-04-01 FR1 Stade Rennais 0–1 RC Lens Available
2023-03-18 FR1 RC Lens 3–0 Angers SCO Available
2023-03-12 FR1 Clermont Foot 63 0–4 RC Lens Available
2023-03-04 FR1 RC Lens 1–1 Lille OSC Available
2023-02-25 FR1 Montpellier HSC 1–1 RC Lens Available
2023-02-19 FR1 RC Lens 3–1 FC Nantes Available
2023-02-12 FR1 Olympique Lyonnais 2–1 RC Lens Available
2023-02-05 FR1 Stade Brestois 29 1–1 RC Lens Available
2023-02-01 FR1 RC Lens 0–1 OGC Nice Available
2023-01-28 FR1 ESTAC Troyes 1–1 RC Lens Available
2023-01-14 FR1 RC Lens 1–0 AJ Auxerre Available
2023-01-11 FR1 RC Strasbourg 2–2 RC Lens Available
2023-01-01 FR1 RC Lens 3–1 Paris Saint-Germain Available
2022-12-29 FR1 OGC Nice 0–0 RC Lens Available
2022-11-12 FR1 RC Lens 2–1 Clermont Foot 63 Available
2022-11-05 FR1 Angers SCO 1–2 RC Lens Available
2022-10-28 FR1 RC Lens 3–0 Toulouse FC Available
2022-10-22 FR1 Olympique Marseille 0–1 RC Lens Available
2022-10-15 FR1 RC Lens 1–0 Montpellier HSC Available
2022-10-09 FR1 Lille OSC 1–0 RC Lens Available
2022-10-02 FR1 RC Lens 1–0 Olympique Lyonnais Available
2022-09-18 FR1 FC Nantes 0–0 RC Lens Available
2022-09-09 FR1 RC Lens 1–0 ESTAC Troyes Available
2022-09-04 FR1 Stade de Reims 1–1 RC Lens Available
2022-08-31 FR1 RC Lens 5–2 FC Lorient INJURED Muscle injury
2022-08-27 FR1 RC Lens 2–1 Stade Rennais INJURED Muscle injury
2022-08-20 FR1 AS Monaco 1–4 RC Lens INJURED Muscle injury
2022-08-14 FR1 AC Ajaccio 0–0 RC Lens INJURED Muscle injury
2022-08-07 FR1 RC Lens 3–2 Stade Brestois 29 INJURED Muscle injury
2022-05-21 FR1 RC Lens 2–2 AS Monaco Available
2022-05-14 FR1 ESTAC Troyes 1–3 RC Lens Available
2022-05-08 FR1 Stade de Reims 1–2 RC Lens Available
2022-04-30 FR1 RC Lens 2–2 FC Nantes Available
2022-04-23 FR1 Paris Saint-Germain 1–1 RC Lens Available
2022-04-20 FR1 RC Lens 2–0 Montpellier HSC Available
2022-04-16 FR1 Lille OSC 1–2 RC Lens Available
2022-04-10 FR1 RC Lens 3–0 OGC Nice Available
2022-04-03 FR1 RC Strasbourg 1–0 RC Lens Available
2022-03-19 FR1 RC Lens 3–1 Clermont Foot 63 Available
2022-03-13 FR1 FC Metz 0–0 RC Lens Available
2022-03-05 FR1 RC Lens 0–1 Stade Brestois 29 Available

Teams faced most often by Florian Thauvin's clubs during seasons he played in those competitions (team-level results, not personal head-to-head goals — see disclaimer above).

OpponentPWDLGFGAGDWin %
FC Lorient 32 13 11 8 54 40 +14 41%
Montpellier HSC 31 12 8 11 43 42 +1 39%
Girondins Bordeaux 30 11 12 7 35 33 +2 37%
Stade Rennais 30 17 6 7 41 28 +13 57%
FC Nantes 30 12 11 7 39 29 +10 40%
OGC Nice 30 14 5 11 44 35 +9 47%
AS Monaco 30 9 7 14 40 58 -18 30%
Lille OSC 30 10 7 13 34 40 -6 33%
Olympique Lyonnais 30 5 10 15 23 43 -20 17%
AS Saint-Étienne 30 12 7 11 44 40 +4 40%
Paris Saint-Germain 30 4 5 21 24 61 -37 13%
FC Metz 28 12 9 7 39 27 +12 43%

Auto-detected milestones based on cumulative career totals.

Season / YearMilestoneDate
10/11 Senior debut season
12/13 First senior goal
17/18 Goal #50 (career)
21/22 Goal #100 (career)

Yellow / second-yellow / red cards per season. Only seasons with at least one card are shown.

SeasonMatchesMinsYC2nd YCRCCards / 90′
23/24 31 498 4 0 0 0.72
22/23 26 104 1 0 1 1.73
21/22 27 778 3 0 1 0.46
20/21 44 344 7 0 0 1.83
18/19 37 278 6 0 1 2.27
17/18 54 612 11 0 0 1.62
16/17 43 198 3 0 0 1.36
15/16 38 736 1 0 1 0.24
14/15 38 503 3 0 0 0.54
13/14 41 648 3 0 0 0.42
12/13 35 226 4 0 1 1.99
11/12 16 0 1 0 0 0

Output by competition

Career goals and assists broken down by tournament.

Ligue 1
262 apps
87 G
51 A
Serie A
70 apps
13 G
6 A
Europa League
17 apps
5 G
3 A
Liga MX Apertura
14 apps
4 G
3 A
Coupe de France
19 apps
3 G
3 A
Liga MX Clausura
16 apps
3 G
2 A
Italy Cup
3 apps
2 G
4 A
Europa League Qualifying
3 apps
1 G
3 A
League Cup
2 apps
1 G
3 A
Champions League
12 apps
1 G
2 A

Frequently asked about Florian Thauvin

Who is Florian Thauvin?

Florian Thauvin is a France professional footballer who plays as a second striker for RC Lens.

How old is Florian Thauvin?

Florian Thauvin is 33 years old. He was born on January 26, 1993 in Orléans.

What position does Florian Thauvin play?

Florian Thauvin plays as a second striker (Attack - Second Striker).

What club does Florian Thauvin play for?

Florian Thauvin currently plays for RC Lens.

How many career goals has Florian Thauvin scored?

Across all senior club competitions in our dataset, Florian Thauvin has scored 121 goals in 465 appearances.

What is Florian Thauvin's market value?

Florian Thauvin's most recent reported market value is €5.00m.