Last match

20 november 2019 10:00 AM
Daniel Masur
? - ?
Not started
Thomas Fabbiano
Propability:
1: 62% 2: 38%
Scores123 4 5
Daniel Masur - - - - -
Thomas Fabbiano - - - - -

Stats

Last 6 matches Thomas Fabbiano stats

4 Matches
0.2 Avg set win
2.0 Avg set lost
21.2 Avg games sum in match
9.0 Avg games won in match
12.2 Avg games lost in match
4.2 Avg 1. set games won
3.8 Avg 2. set games won
4.0 Avg 3. set games won
4.8 Avg 1. set games lost
6.0 Avg 2. set games lost
6.0 Avg 3. set games lost
Won 1st set
Won 2nd set
Under/Over 2.5
Under/Over 3.5
Under/Over 4.5
Spread -0.5
Spread -1.5
Spread -2.5

Actual season matches Thomas Fabbiano stats

51 Matches
1.2 Avg set win
1.5 Avg set lost
26.9 Avg games sum in match
12.9 Avg games won in match
14.0 Avg games lost in match
5.0 Avg 1. set games won
4.6 Avg 2. set games won
4.1 Avg 3. set games won
5.0 Avg 4. set games won
5.5 Avg 5. set games won
5.2 Avg 1. set games lost
5.0 Avg 2. set games lost
5.0 Avg 3. set games lost
5.2 Avg 4. set games lost
4.8 Avg 5. set games lost
Won 1st set
Won 2nd set
Under/Over 2.5
Under/Over 3.5
Under/Over 4.5
Spread -0.5
Spread -1.5
Spread -2.5

Last matches

New York » US Open ATP
S
S1
S2
S3
S4
S5
G
1/32
8:05 pm
3
6
5
6
6
6
-
2
7
7
4
3
3
-
1: 39% 2: 61%
1/64
7:05 pm
3
6
3
6
6
-
1
4
6
3
2
-
1: 17% 2: 83%
Moscow » VTB Kremlin Cup
S
S1
S2
S3
S4
S5
G
1/16
8:10 am
2
6
6
-
0
3
4
-
1: 75% 2: 25%
Set 3
9:10 am
1
2
6
0
4
1
6
2
0
4
1/8
6:20 am
2
6
6
-
0
4
4
-
1: 72% 2: 28%
1/16
8:55 am
1
6
0
6
-
2
3
6
7
-
1/8
4:35 am
0
2
3
-
2
6
6
-
1: 45% 2: 55%
1/8
6:40 am
0
4
3
-
2
6
6
-
1/16
12:50 pm
2
2
6
6
-
1
6
3
3
-
1: 39% 2: 61%
1/32
5:10 pm
0
4
2
-
2
6
6
-
1: 29% 2: 71%
1/16
9:10 am
1
6
6
1
-
2
7
1
6
-
1: 29% 2: 71%
Maia » Maia
S
S1
S2
S3
S4
S5
G
1/16
10:00 am
?
-
?
-
1: 62% 2: 38%
1/16
1:15 pm
2
1
6
6
-
1
6
3
4
-
1/16
12:10 pm
0
4
4
-
2
6
6
-
1: 41% 2: 59%

Records

Season Summary Clay Hard Grass Indoors
2019 40% (21/30) 31% (4/9) 44% (7/9) 62% (8/5) -
2018 62% (29/17) 50% (3/3) 63% (19/10) 64% (7/4) -
2017 59% (44/29) 43% (3/4) 27% (3/7) 70% (7/3) -
2016 51% (37/34) 26% (5/13) 65% (26/14) 67% (2/1) -
Summary 53% (131/110) 33% (15/29) 57% (55/40) 65% (24/13) -

Tournaments stats

Tornament Surface 2019 2018 2017 2016
Australian Open ATP Hard 1/16 - - -
Roland Garros ATP Clay 1/64 - - -
US Open ATP Hard 1/32 - - -
Wimbledon ATP Grass 1/16 - - -
An-Ning Clay - - 1/8 -
Aptos Hard - 1/2 - -
Atlanta Hard - - 1/16 -
Auckland Hard 1/4 - - -
Barletta Clay - - 1/8 -
Bastad Clay - - - 1/16
Beijing Hard - - - 1/8
Bratislava Hard - - - 1/16
Brest Hard 1/16 - - -
Budapest Hard - - 1/16 1/8
Budapest Clay 1/16 - - -
Busan Hard - - 1/16 -
Chennai Hard - - - 1/4
Cincinnati Hard - - 1/16 -
Doha Hard - - - 1/8
Dubai Hard 1/16 - - -
Eastbourne Grass 1/2 - - -
Estoril Clay - - - 1/16
Furth Clay - - - 1/16
Gatineau Hard - - 1/4 -
Geneva Clay 1/4 - - -
Gimcheon Hard - - W -
Gstaad Clay 1/4 - - -
Guangzhou Hard - - - 1/8
Halle Grass 1/8 - - -
Hamburg Clay - - - 1/16
Helsinki Hard 1/16 - - -
Ilkley Grass - 1/4 - -
Indian Wells Hard 1/32 - - -
Istanbul Clay - 1/4 - -
Istanbul Hard - 1/2 - -
Kitzbuehel Clay 1/16 - - -
Lizhou Hard - 1/4 - -
Los Cabos Hard - 1/8 - -
Lyon Clay - - - 1/16
Maia Clay 1/16 - - -
Mallorca Hard - 1/4 - -
Manila Hard - - - 1/8
Marrakech Clay 1/16 - - -
Marseille Hard - - 1/4 -
Metz Hard - - - 1/4
Miami Hard 1/64 - - -
Monte Carlo Clay 1/8 - - 1/8
Montpellier Hard 1/16 - - -
Montreal Hard - - 1/32 -
Moscow Hard 1/16 - 1/16 -
Munich Clay 1/8 - - -
Napoli Clay - - - 1/16
Ningbo Hard - W - -
Nottingham Grass - 1/16 F -
Paris Hard - - 1/16 -
Perugia Clay - - - 1/16
Qingdao Clay - - 1/8 -
Quanzhou Hard - - W -
Raanana Hard - - - 1/2
Rio de Janeiro Hard - - - 1/32
Rome Clay - 1/16 - 1/16
Rotterdam Hard 1/16 - - -
Seoul Hard - - W -
Shanghai Hard 1/8 1/16 - -
Shenzhen Hard - - - 1/8
Shenzhen Hard - 1/8 - -
Sofia Hard - - - 1/16
St. Petersburg Hard 1/16 - 1/8 -
Surbiton Grass - 1/16 - -
Sydney Hard - - 1/8 -
Tashkent Hard - - 1/8 -
Tokyo Hard 1/8 - - -
Turin Clay - - - 1/16
Umag Clay 1/16 - - -
Vancouver Hard - 1/2 - -
Vienna Hard - - 1/16 -
Washington Hard - - 1/32 -
Winston-Salem Hard 1/32 - 1/32 -
Zhuhai Hard 1/8 - - -
Zhuhai Hard - - F W
s-Hertogenbosch Grass 1/16 - - -

Last tournaments

Date Tornament Surface Round W/L Match Score
nov 2019 Maia Clay 1/16 Lost Daniel Masur 0:0
nov 2019 Helsinki Hard 1/16 Lost Otto Virtanen 1:2
oct 2019 Brest Hard 1/16 Lost Illya Marchenko 0:2
oct 2019 Moscow Hard 1/16 Lost Egor Gerasimov 0:2
oct 2019 Shanghai Hard 1/8 Lost Cameron Norrie 0:2
sep 2019 Tokyo Hard 1/8 Lost James Duckworth 0:2
sep 2019 Zhuhai Hard 1/8 Lost Tatsuma Ito 0:2
sep 2019 St. Petersburg Hard 1/16 Lost Salvatore Caruso 1:2
aug 2019 US Open ATP Hard 1/32 Lost Alexander Bublik 2:3
aug 2019 Winston-Salem Hard 1/32 Lost Andrey Rublev 0:2
jul 2019 Kitzbuehel Clay 1/16 Lost Jaume Munar 1:2
jul 2019 Gstaad Clay 1/4 Lost Cedrik-Marcel Stebe 1:2
jul 2019 Umag Clay 1/16 Lost Stefano Travaglia 0:2
jul 2019 Wimbledon ATP Grass 1/16 Lost Fernando Verdasco 0:3
jun 2019 Eastbourne Grass 1/2 Lost Sam Querrey 1:2

Rivals

Name Games Won Lost Won% Last Match
Franko Skugor 5 4 1
80%
Won Franko Skugor (2:0)
Damir Dzumhur 5 1 4
20%
Lost (0:2)
Yuki Bhambri 3 3 0
100%
Won Yuki Bhambri (2:0)
Ze Zhang 3 3 0
100%
Won Ze Zhang (2:0)
Laslo Djere 3 3 0
100%
Won Laslo Djere (2:0)
Nikola Mektic 3 2 0
67%
Lost Nikola Mektic (1:1)
Jordan Thompson 3 2 1
67%
Won Jordan Thompson (3:2)
Uladzimir Ignatik 3 2 1
67%
Won Uladzimir Ignatik (2:0)
Stefanos Tsitsipas 3 1 2
33%
Won Stefanos Tsitsipas (3:2)
Marton Fucsovics 3 1 2
33%
Lost Marton Fucsovics (0:2)
Ilya Ivashka 3 0 2
0%
Lost Ilya Ivashka (1:2)
Akira Santillan 2 2 0
100%
Won Akira Santillan (2:1)
Ti Chen 2 2 0
100%
Won Ti Chen (2:0)
Lorenzo Sonego 2 2 0
100%
Won Lorenzo Sonego (2:1)
Blaz Kavcic 2 2 0
100%
Won Blaz Kavcic (2:1)
Aleksandr Nedovyesov 2 2 0
100%
Won Aleksandr Nedovyesov (2:1)
Hiroki Moriya 2 2 0
100%
Won Hiroki Moriya (2:0)
Federico Gaio 2 2 0
100%
Won Federico Gaio (2:1)
Matthew Ebden 2 2 0
100%
Won Matthew Ebden (2:0)
Alexander Bublik 2 1 1
50%
Lost Alexander Bublik (2:3)
Sergiy Stakhovsky 2 1 1
50%
Won Sergiy Stakhovsky (2:1)
Prajnesh Gunneswaran 2 1 1
50%
Lost Prajnesh Gunneswaran (1:2)
Feliciano Lopez 2 1 1
50%
Won Feliciano Lopez (2:1)
Denis Shapovalov 2 1 1
50%
Lost Denis Shapovalov (1:2)
Marius Copil 2 1 1
50%
Won Marius Copil (2:1)
Nicolas Mahut 2 1 1
50%
Won Nicolas Mahut (2:0)
Juan Ignacio Londero 2 1 1
50%
Won Juan Ignacio Londero (2:0)
Tobias Kamke 2 1 1
50%
Lost Tobias Kamke (0:2)
Illya Marchenko 2 1 1
50%
Lost Illya Marchenko (0:2)
Cedrik-Marcel Stebe 2 0 2
0%
Lost Cedrik-Marcel Stebe (1:2)
Fernando Verdasco 2 0 2
0%
Lost Fernando Verdasco (0:3)
Tatsuma Ito 2 0 2
0%
Lost Tatsuma Ito (0:2)
Daniel Evans 2 0 2
0%
Lost Daniel Evans (1:2)
Evgeny Donskoy 2 0 2
0%
Lost Evgeny Donskoy (0:2)
Karen Khachanov 2 0 2
0%
Lost Karen Khachanov (0:2)
Matthias Bachinger 2 0 2
0%
Lost Matthias Bachinger (1:2)
Maximilian Marterer 2 0 2
0%
Lost Maximilian Marterer (0:2)
Sam Querrey 2 0 2
0%
Lost Sam Querrey (1:2)
Dennis Novak 2 0 2
0%
Lost Dennis Novak (0:2)
Grigor Dimitrov 2 0 2
0%
Lost Grigor Dimitrov (0:2)
Di Wu 2 0 2
0%
Lost Di Wu (1:2)
Ivan Dodig 1 1 0
100%
Won Ivan Dodig (2:1)
Chuhan Wang 1 1 0
100%
Won Chuhan Wang (2:0)
Taro Daniel 1 1 0
100%
Won Taro Daniel (2:1)
Roberto Marcora 1 1 0
100%
Won Roberto Marcora (2:0)
Zhe Li 1 1 0
100%
Won Zhe Li (2:0)
Elias Ymer 1 1 0
100%
Won Elias Ymer (2:1)
Andrea Arnaboldi 1 1 0
100%
Won Andrea Arnaboldi (2:1)
Mathias Bourgue 1 1 0
100%
Won Mathias Bourgue (2:0)
Andre Ghem 1 1 0
100%
Won Andre Ghem (2:0)
Juergen Melzer 1 1 0
100%
Won Juergen Melzer (2:1)
Karim Mohamed Maamoun 1 1 0
100%
Won Karim Mohamed Maamoun (2:0)
Omar Jasika 1 1 0
100%
Won Omar Jasika (2:1)
Hubert Hurkacz 1 1 0
100%
Won Hubert Hurkacz (2:1)
John-Patrick Smith 1 1 0
100%
Won John-Patrick Smith (3:1)
Temur Ismailov 1 1 0
100%
Won Temur Ismailov (2:0)
Martin Redlicki 1 1 0
100%
Won Martin Redlicki (2:0)
Lucas Miedler 1 1 0
100%
Won Lucas Miedler (2:0)
Hugo Grenier 1 1 0
100%
Won Hugo Grenier (2:0)
Radu Albot 1 1 0
100%
Won Radu Albot (2:0)
Finn Tearney 1 1 0
100%
Won Finn Tearney (2:0)
Jelle Sels 1 1 0
100%
Won Jelle Sels (2:0)
Emil Ruusuvuori 1 1 0
100%
Won Emil Ruusuvuori (2:1)
Kenny De Schepper 1 1 0
100%
Won Kenny De Schepper (2:1)
Dominic Thiem 1 1 0
100%
Won Dominic Thiem (3:1)
Jason Jung 1 1 0
100%
Won Jason Jung (3:1)
Marco Chiudinelli 1 1 0
100%
Won Marco Chiudinelli (2:0)
Gilles Mueller 1 1 0
100%
Won Gilles Mueller (2:0)
Leonardo Mayer 1 1 0
100%
Won Leonardo Mayer (2:0)
Luke Saville 1 1 0
100%
Won Luke Saville (2:0)
Yannik Reuter 1 1 0
100%
Won Yannik Reuter (2:0)
Matteo Berrettini 1 1 0
100%
Won Matteo Berrettini (2:0)
Andres Molteni 1 1 0
100%
Won Andres Molteni (2:0)
Sekou Bangoura 1 1 0
100%
Won Sekou Bangoura (2:0)
Takanyi Garanganga 1 1 0
100%
Won Takanyi Garanganga (2:1)
Jason Kubler 1 1 0
100%
Won Jason Kubler (3:1)
James Ward 1 1 0
100%
Won James Ward (2:1)
Sandro Ehrat 1 1 0
100%
Won Sandro Ehrat (2:0)
Stan Wawrinka 1 1 0
100%
Won Stan Wawrinka (3:0)
Go Soeda 1 1 0
100%
Won Go Soeda (2:1)
Mikhail Elgin 1 1 0
100%
Won Mikhail Elgin (1:0)
Ruben Ramirez 1 1 0
100%
Won Ruben Ramirez (2:0)
Alejandro Gonzalez 1 1 0
100%
Won Alejandro Gonzalez (2:1)
Yasutaka Uchiyama 1 1 0
100%
Won Yasutaka Uchiyama (2:0)
Jordi Samper 1 1 0
100%
Won Jordi Samper (2:0)
Daniil Medvedev 1 1 0
100%
Won Daniil Medvedev (2:0)
Andreas Haider-Maurer 1 1 0
100%
Won Andreas Haider-Maurer (2:0)
Miomir Kecmanovic 1 1 0
100%
Won Miomir Kecmanovic (2:0)
Filip Peliwo 1 1 0
100%
Won Filip Peliwo (2:0)
Tim van Rijthoven 1 1 0
100%
Won Tim van Rijthoven (2:0)
Benjamin Bonzi 1 1 0
100%
Won Benjamin Bonzi (2:1)
Sumit Nagal 1 1 0
100%
Won Sumit Nagal (2:1)
Zihao Xia 1 1 0
100%
Won Zihao Xia (2:0)
Reilly Opelka 1 1 0
100%
Won Reilly Opelka (3:2)
Rudolf Molleker 1 1 0
100%
Won Rudolf Molleker (2:0)
Marko Miladinovic 1 1 0
100%
Won Marko Miladinovic (2:0)
Gilles Simon 1 1 0
100%
Won Gilles Simon (2:0)
Guilherme Clezar 1 1 0
100%
Won Guilherme Clezar (2:0)
Jea-Moon Lee 1 1 0
100%
Won Jea-Moon Lee (2:0)
Teymuraz Gabashvili 1 1 0
100%
Won Teymuraz Gabashvili (2:0)
Ruben Bemelmans 1 1 0
100%
Won Ruben Bemelmans (2:0)
Saketh Myneni 1 1 0
100%
Won Saketh Myneni (2:0)
Denys Molchanov 1 1 0
100%
Won Denys Molchanov (2:1)
Filip Krajinovic 1 1 0
100%
Won Filip Krajinovic (2:0)
Dekel Bar 1 1 0
100%
Won Dekel Bar (2:0)
Filippo Volandri 1 1 0
100%
Won Filippo Volandri (2:0)
Jonathan Eysseric 1 1 0
100%
Won Jonathan Eysseric (2:0)
Yoshihito Nishioka 1 1 0
100%
Won Yoshihito Nishioka (2:1)
Luca Vanni 1 1 0
100%
Won Luca Vanni (2:1)
Bradley Klahn 1 1 0
100%
Won Bradley Klahn (2:1)
Steven Diez 1 1 0
100%
Won Steven Diez (2:0)
Sam Groth 1 1 0
100%
Won Sam Groth (2:0)
Stefano Napolitano 1 1 0
100%
Won Stefano Napolitano (2:0)
Oscar Otte 1 1 0
100%
Won Oscar Otte (2:0)
Matteo Viola 1 1 0
100%
Won Matteo Viola (2:1)
Antoine Hoang 1 1 0
100%
Won Antoine Hoang (2:0)
Ivo Karlovic 1 1 0
100%
Won Ivo Karlovic (3:2)
Runhao Hua 1 1 0
100%
Won Runhao Hua (2:1)
Mikhail Youzhny 1 1 0
100%
Won Mikhail Youzhny (2:0)
Alexander Ward 1 1 0
100%
Won Alexander Ward (2:0)
Duck-Hee Lee 1 1 0
100%
Won Duck-Hee Lee (2:0)
Soon-Woo Kwon 1 1 0
100%
Won Soon-Woo Kwon (2:1)
Jozef Kovalik 1 1 0
100%
Won Jozef Kovalik (2:1)
Cem Ilkel 1 1 0
100%
Won Cem Ilkel (2:1)
Edoardo Eremin 1 0 1
0%
Lost Edoardo Eremin (1:2)
Julian Reister 1 0 0
0%
Lost Julian Reister (0:0)
Thomaz Bellucci 1 0 1
0%
Lost Thomaz Bellucci (0:2)
Yuichi Sugita 1 0 1
0%
Lost Yuichi Sugita (0:2)
Dudi Sela 1 0 1
0%
Lost Dudi Sela (1:2)
Ugo Humbert 1 0 1
0%
Lost Ugo Humbert (1:2)
Quentin Halys 1 0 1
0%
Lost Quentin Halys (1:2)
Robin Haase 1 0 1
0%
Lost Robin Haase (1:2)
Stefano Travaglia 1 0 1
0%
Lost Stefano Travaglia (0:2)
Cameron Norrie 1 0 1
0%
Lost Cameron Norrie (0:2)
Borna Coric 1 0 1
0%
Lost Borna Coric (1:3)
Daniel Brands 1 0 1
0%
Lost Daniel Brands (0:2)
Stephane Robert 1 0 1
0%
Lost Stephane Robert (0:2)
Marco Trungelliti 1 0 1
0%
Lost Marco Trungelliti (0:2)
Marco Bortolotti 1 0 1
0%
Lost Marco Bortolotti (1:2)
Carl Soederlund 1 0 1
0%
Lost Carl Soederlund (0:2)
Peter Gojowczyk 1 0 1
0%
Lost Peter Gojowczyk (0:2)
Adrian Mannarino 1 0 1
0%
Lost Adrian Mannarino (1:2)
Vincent Millot 1 0 1
0%
Lost Vincent Millot (1:2)
Donald Young 1 0 1
0%
Lost Donald Young (0:3)
Andrej Martin 1 0 1
0%
Lost Andrej Martin (1:2)
Ryan Harrison 1 0 1
0%
Lost Ryan Harrison (0:2)
Paolo Lorenzi 1 0 1
0%
Lost Paolo Lorenzi (0:3)
Mohamed Safwat 1 0 1
0%
Lost Mohamed Safwat (1:2)
Thanasi Kokkinakis 1 0 1
0%
Lost Thanasi Kokkinakis (0:2)
J. C. Aragone 1 0 1
0%
Lost J. C. Aragone (0:2)
Tuna Altuna 1 0 1
0%
Lost Tuna Altuna (0:2)
Vasek Pospisil 1 0 1
0%
Lost Vasek Pospisil (0:2)
Jo-Wilfried Tsonga 1 0 1
0%
Lost Jo-Wilfried Tsonga (0:2)
Marcos Giron 1 0 1
0%
Lost Marcos Giron (1:2)
Yannick Maden 1 0 1
0%
Lost Yannick Maden (1:2)
Jannik Sinner 1 0 1
0%
Lost Jannik Sinner (0:2)
Salvatore Caruso 1 0 1
0%
Lost Salvatore Caruso (1:2)
Egor Gerasimov 1 0 1
0%
Lost Egor Gerasimov (0:2)
Jeremy Chardy 1 0 1
0%
Lost Jeremy Chardy (0:2)
Michael Mmoh 1 0 1
0%
Lost Michael Mmoh (0:2)
Benoit Paire 1 0 1
0%
Lost Benoit Paire (0:2)
David Guez 1 0 1
0%
Lost David Guez (1:2)
Steve Darcis 1 0 1
0%
Lost Steve Darcis (0:2)
Tomas Berdych 1 0 1
0%
Lost Tomas Berdych (0:2)
Inigo Cervantes 1 0 1
0%
Lost Inigo Cervantes (0:2)
Nicolas Kicker 1 0 1
0%
Lost Nicolas Kicker (1:2)
Andrew Whittington 1 0 1
0%
Lost Andrew Whittington (0:2)
John Millman 1 0 1
0%
Lost John Millman (0:2)
Thiago Monteiro 1 0 1
0%
Lost Thiago Monteiro (1:2)
Andrey Golubev 1 0 0
0%
Lost Andrey Golubev (0:0)
Steve Johnson 1 0 1
0%
Lost Steve Johnson (1:2)
Lukas Lacko 1 0 1
0%
Lost Lukas Lacko (0:2)
Mitchell Krueger 1 0 1
0%
Lost Mitchell Krueger (0:2)
Pierre-Hugues Herbert 1 0 1
0%
Lost Pierre-Hugues Herbert (1:2)
Andreas Seppi 1 0 1
0%
Lost Andreas Seppi (0:2)
Jaume Munar 1 0 1
0%
Lost Jaume Munar (1:2)
James Duckworth 1 0 1
0%
Lost James Duckworth (0:2)
Otto Virtanen 1 0 1
0%
Lost Otto Virtanen (1:2)
Viktor Troicki 1 0 1
0%
Lost Viktor Troicki (0:2)
Marcel Granollers 1 0 1
0%
Lost Marcel Granollers (0:2)
Julien Benneteau 1 0 1
0%
Lost Julien Benneteau (0:2)
Maxime Chazal 1 0 1
0%
Lost Maxime Chazal (1:2)
Rogerio Dutra Silva 1 0 1
0%
Lost Rogerio Dutra Silva (0:2)
Kyle Edmund 1 0 1
0%
Lost Kyle Edmund (0:2)
Jan-Lennard Struff 1 0 1
0%
Lost Jan-Lennard Struff (0:2)
Luke Bambridge 1 0 0
0%
Lost Luke Bambridge (0:0)
Mate Valkusz 1 0 1
0%
Lost Mate Valkusz (0:2)
Marin Cilic 1 0 1
0%
Lost Marin Cilic (0:3)
Denis Kudla 1 0 1
0%
Lost Denis Kudla (1:2)
Andrey Rublev 1 0 1
0%
Lost Andrey Rublev (0:2)

Calendar

Monday
Mon
Tuesday
Tue
Wednesday
Wed
Thursday
Thu
Friday
Fri
Saturday
Sat
Sunday
Sun
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1