Last match

14 september 2021 07:05 AM
Tatsuma Ito
0 - 2
Finished
Tung-Lin Wu
Propability:
1: 49% 2: 51%
Scores123 4 5
Tatsuma Ito 3 2 - - -
Tung-Lin Wu 6 6 - - -

Stats

Last 6 matches Tatsuma Ito stats

6 Matches
0.5 Avg set win
1.8 Avg set lost
22.2 Avg games sum in match
8.8 Avg games won in match
13.3 Avg games lost in match
5.2 Avg 1. set games won
2.5 Avg 2. set games won
3.5 Avg 3. set games won
6.0 Avg 1. set games lost
6.2 Avg 2. set games lost
3.5 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 Tatsuma Ito stats

21 Matches
0.7 Avg set win
1.5 Avg set lost
20.9 Avg games sum in match
9.1 Avg games won in match
11.8 Avg games lost in match
4.7 Avg 1. set games won
3.1 Avg 2. set games won
4.5 Avg 3. set games won
5.2 Avg 1. set games lost
5.1 Avg 2. set games lost
5.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

Last matches

S
S1
S2
S3
S4
S5
G
1/64
7:55 pm
0
4
1
-
2
6
6
-
1: 20% 2: 80%
1/32
1:55 pm
0
2
1
-
2
6
6
-
1: 35% 2: 65%
1/64
11:45 am
0
3
4
-
2
6
6
-
1: 61% 2: 39%
S
S1
S2
S3
S4
S5
G
1/16
7:05 pm
0
6
2
-
2
7
6
-
1: 35% 2: 65%
Istanbul » Istanbul 2
S
S1
S2
S3
S4
S5
G
1/16
7:05 am
0
3
2
-
2
6
6
-
1: 49% 2: 51%
1/8
1:40 pm
0
5
3
-
2
7
6
-
1/16
12:10 pm
1
6
7
1
-
2
7
5
6
-
1/16
2:05 pm
2
4
6
6
-
1
6
2
1
-
1/16
10:40 pm
1
6
3
4
-
2
4
6
6
-
1: 28% 2: 72%
1/16
3:05 pm
2
6
6
7
-
1
7
4
5
-
1/4
10:05 am
2
7
6
-
0
5
3
-
1: 62% 2: 38%
1/8
11:55 am
1
6
1
-
0
4
0
-
1: 32% 2: 68%
1/16
10:10 am
2
6
6
-
0
0
2
-

Records

Season Summary Clay Hard Grass Indoors
2021 27% (6/15) 0% (0/1) 50% (2/2) 33% (1/2) -
2020 25% (2/6) 0% (0/1) 40% (2/3) - -
2019 56% (38/28) 0% (0/1) 60% (33/20) 33% (2/4) -
2018 55% (21/16) - 50% (13/12) 40% (2/3) -
2017 54% (35/28) 0% (0/1) 57% (8/4) 67% (4/2) -
2016 52% (28/23) 0% (0/1) 43% (3/4) 50% (2/2) -
2015 100% (1/0) - 100% (1/0) - -
Summary 51% (131/116) 0% (0/5) 55% (62/45) 46% (11/13) -

Tournaments stats

Tornament Surface 2021 2020 2019 2018 2017 2016 2015
Australian Open, Qualification ATP Hard 1/64 - 1/16 - - - -
Roland Garros, Qualification ATP Clay 1/64 1/64 1/64 - - - -
US Open, Qualification ATP Hard 1/64 - 1/64 - - - -
Wimbledon, Qualification ATP Grass 1/32 - 1/64 - - - -
Auckland Hard - 1/4 - - - - -
Bangkok Hard - - 1/2 - - 1/16 -
Busan Hard - - 1/4 1/8 1/4 1/16 -
Calgary Hard - 1/16 - - - - -
Cary Hard 1/16 - - - - - -
Cassis Hard 1/8 - - - - - -
Chengdu Hard - - 1/2 1/4 - - -
Dallas Hard - - - - 1/2 1/2 -
Delray Beach Hard - - - - - 1/8 -
Gatineau Hard - - - 1/16 1/16 - -
Gimcheon Hard - - - 1/16 1/16 - -
Granby Hard - - - - 1/4 - -
Gwangju Hard - - 1/16 - 1/2 1/2 -
Halle Grass 1/16 - - - - - -
Happy Valley Hard - - - - 1/16 - -
Ho Chi Minh City Hard - - - - - 1/4 -
Hua Hin Hard - - - - 1/2 - 1/8
Ilkley Grass - - 1/32 1/8 - - -
Indian Wells Hard - - 1/64 - - - -
Istanbul Hard 1/16 - - - - - -
Jinan Hard - - 1/8 1/8 - - -
Kobe Hard - - 1/16 W 1/8 1/16 -
Kyoto Hard - - - - 1/8 1/16 -
Launceston Hard - 1/16 1/8 - - - -
Le Gosier Hard - - - - - 1/4 -
Leon Hard - - - - - 1/16 -
Lexington Hard 1/16 - - - - - -
Lizhou Hard - - - 1/8 - - -
Los Cabos Hard - - - - 1/16 - -
Mallorca Hard 1/16 - - - - - -
Maui Hard - - - - 1/16 - -
Memphis Hard - - - - 1/8 1/8 -
Miami Hard 1/32 - 1/32 - - 1/16 -
Nanchang Hard - - - - - 1/8 -
Newport Grass - - 1/8 - - - -
Ningbo Hard - - 1/8 1/4 1/8 - -
Nottingham Grass - - 1/8 1/8 - - -
Nur-Sultan Hard 1/8 - - - - - -
Phoenix Hard - - 1/8 - - - -
Playford Hard - - 1/16 - - - -
Porto Hard 1/4 - - - - - -
Quanzhou Hard - - - - 1/16 - -
San Francisco Hard - - - - 1/4 - -
Seoul Hard - - 1/4 1/2 1/16 1/8 -
Shanghai Hard - - 1/16 - - - -
Shanghai Hard - - 1/8 1/16 1/8 1/16 -
Shenzhen Hard - - - 1/16 - - -
Shenzhen Hard - - - - 1/16 - -
Split Carpet - 1/16 - - - - -
Suzhou Hard - - - - - 1/16 -
Taipei Carpet - - 1/4 - F 1/4 -
Tokyo Hard - - 1/4 1/4 1/8 1/8 -
Toyota Carpet - - - - 1/4 F -
Traralgon Hard - - 1/2 - - - -
Washington Hard 1/16 - - - - - -
Winnipeg Hard - - - 1/16 1/16 - -
Yokkaichi Hard - - 1/2 - - - -
Yokohama Hard - - 1/8 - 1/2 - -
Zhangjiagang Hard - - - 1/8 - - -
Zhuhai Hard - - 1/16 - - - -
s-Hertogenbosch Grass - - - - 1/16 1/8 -

Last tournaments

Date Tornament Surface Round W/L Match Score
sep 2021 Istanbul Hard 1/16 Lost Tung-Lin Wu 0:2
sep 2021 Cassis Hard 1/8 Lost Kacper Zuk 0:2
sep 2021 Mallorca Hard 1/16 Lost Michael Geerts 1:2
aug 2021 US Open, Qualification ATP Hard 1/64 Lost Liam Broady 0:2
jul 2021 Washington Hard 1/16 Lost Sebastian Ofner 0:2
jul 2021 Lexington Hard 1/16 Lost Maxime Cressy 1:2
jul 2021 Cary Hard 1/16 Lost Sam Riffice 1:2
jul 2021 Porto Hard 1/4 Lost Altug Celikbilek 0:2
jun 2021 Wimbledon, Qualification ATP Grass 1/32 Lost Jason Jung 0:2
jun 2021 Halle Grass 1/16 Lost Ilya Ivashka 0:2
may 2021 Roland Garros, Qualification ATP Clay 1/64 Lost Altug Celikbilek 1:2
mar 2021 Miami Hard 1/32 Lost Ivo Karlovic 0:2
mar 2021 Nur-Sultan Hard 1/8 Lost Prajnesh Gunneswaran 0:1
feb 2021 Nur-Sultan Hard 1/8 Lost Jurij Rodionov 0:2
jan 2021 Australian Open, Qualification ATP Hard 1/64 Lost Yannick Maden 0:2

Rivals

Name Games Won Lost Won% Last Match
Soon-Woo Kwon 6 3 3
50%
Won Soon-Woo Kwon (2:1)
Yasutaka Uchiyama 5 3 2
60%
Lost Yasutaka Uchiyama (1:2)
Duck-Hee Lee 5 2 3
40%
Lost Duck-Hee Lee (1:2)
Shuichi Sekiguchi 4 4 0
100%
Won Shuichi Sekiguchi (2:1)
Steven Diez 4 3 1
75%
Lost Steven Diez (0:2)
Bradley Klahn 4 3 1
75%
Won Bradley Klahn (2:1)
Di Wu 4 2 2
50%
Lost Di Wu (1:2)
Bradley Mousley 3 3 0
100%
Won Bradley Mousley (2:0)
James McGee 3 2 1
67%
Won James McGee (2:1)
Yosuke Watanuki 3 2 1
67%
Won Yosuke Watanuki (2:1)
Konstantin Kravchuk 3 1 2
33%
Lost Konstantin Kravchuk (0:1)
Ze Zhang 3 0 3
0%
Lost Ze Zhang (0:1)
Daniel Evans 3 0 3
0%
Lost Daniel Evans (0:2)
James Duckworth 3 0 3
0%
Lost James Duckworth (0:1)
Elias Ymer 2 2 0
100%
Won Elias Ymer (2:0)
Rigele Te 2 2 0
100%
Won Rigele Te (2:0)
Maverick Banes 2 2 0
100%
Won Maverick Banes (2:1)
Seong-Chan Hong 2 2 0
100%
Won Seong-Chan Hong (2:0)
Thomas Fabbiano 2 2 0
100%
Won Thomas Fabbiano (2:0)
Casper Ruud 2 2 0
100%
Won Casper Ruud (2:1)
Lukas Lacko 2 2 0
100%
Won Lukas Lacko (2:0)
Alex Bolt 2 1 1
50%
Won Alex Bolt (2:0)
Yusuke Takahashi 2 1 1
50%
Lost Yusuke Takahashi (0:2)
Mackenzie McDonald 2 1 1
50%
Won Mackenzie McDonald (2:1)
Lukas Rosol 2 1 1
50%
Lost Lukas Rosol (1:2)
Bjorn Fratangelo 2 1 1
50%
Lost Bjorn Fratangelo (0:2)
Peter Gojowczyk 2 1 1
50%
Won Peter Gojowczyk (2:1)
Sumit Nagal 2 1 1
50%
Lost Sumit Nagal (0:2)
J. C. Aragone 2 1 0
50%
Won J. C. Aragone (2:0)
Max Purcell 2 1 1
50%
Won Max Purcell (2:0)
Prajnesh Gunneswaran 2 1 1
50%
Lost Prajnesh Gunneswaran (0:1)
Marco Chiudinelli 2 1 1
50%
Won Marco Chiudinelli (2:0)
Luke Saville 2 1 1
50%
Won Luke Saville (2:1)
Darian King 2 1 1
50%
Lost Darian King (0:1)
Tung-Lin Wu 2 1 1
50%
Lost Tung-Lin Wu (0:2)
Frederico Ferreira Silva 2 1 1
50%
Won Frederico Ferreira Silva (1:0)
Matthew Ebden 2 1 0
50%
Won Matthew Ebden (2:1)
Peter Polansky 2 1 1
50%
Won Peter Polansky (2:1)
Yen-Hsun Lu 2 0 2
0%
Lost Yen-Hsun Lu (0:2)
Altug Celikbilek 2 0 2
0%
Lost Altug Celikbilek (0:2)
Jason Jung 2 0 2
0%
Lost Jason Jung (0:2)
Yuki Bhambri 2 0 2
0%
Lost Yuki Bhambri (0:2)
Sergiy Stakhovsky 2 0 2
0%
Lost Sergiy Stakhovsky (1:2)
John Millman 2 0 2
0%
Lost John Millman (0:2)
Vijay Sundar Prashanth 1 1 0
100%
Won Vijay Sundar Prashanth (2:1)
Yusuke Watanuki 1 1 0
100%
Won Yusuke Watanuki (2:0)
Mikhail Kukushkin 1 1 0
100%
Won Mikhail Kukushkin (2:1)
Kaito Uesugi 1 1 0
100%
Won Kaito Uesugi (2:1)
Akira Santillan 1 1 0
100%
Won Akira Santillan (2:1)
Matija Pecotic 1 1 0
100%
Won Matija Pecotic (2:0)
Benjamin Sigouin 1 1 0
100%
Won Benjamin Sigouin (2:0)
Yun-Seong Chung 1 1 0
100%
Won Yun-Seong Chung (2:0)
Lorenzo Sonego 1 1 0
100%
Won Lorenzo Sonego (2:1)
Alejandro Davidovich 1 1 0
100%
Won Alejandro Davidovich (2:1)
Kamil Majchrzak 1 1 0
100%
Won Kamil Majchrzak (2:1)
Cem Ilkel 1 1 0
100%
Won Cem Ilkel (2:1)
Baptiste Crepatte 1 1 0
100%
Won Baptiste Crepatte (2:0)
Jiri Vesely 1 1 0
100%
Won Jiri Vesely (1:0)
Harry Bourchier 1 1 0
100%
Won Harry Bourchier (2:1)
Vladyslav Manafov 1 1 0
100%
Won Vladyslav Manafov (2:0)
Luis Faria 1 1 0
100%
Won Luis Faria (2:0)
Cameron Norrie 1 1 0
100%
Won Cameron Norrie (2:1)
Tennys Sandgren 1 1 0
100%
Won Tennys Sandgren (2:0)
Henri Laaksonen 1 1 0
100%
Won Henri Laaksonen (2:0)
Nicolas Mahut 1 1 0
100%
Won Nicolas Mahut (2:0)
Andre Ghem 1 1 0
100%
Won Andre Ghem (2:0)
Nam Hoang Ly 1 1 0
100%
Won Nam Hoang Ly (2:0)
Daniel Masur 1 1 0
100%
Won Daniel Masur (2:0)
Alex De Minaur 1 1 0
100%
Won Alex De Minaur (2:0)
Danilo Petrovic 1 1 0
100%
Won Danilo Petrovic (2:0)
Jacob Grills 1 1 0
100%
Won Jacob Grills (2:0)
Nathan Ponwith 1 1 0
100%
Won Nathan Ponwith (2:0)
Filip Peliwo 1 1 0
100%
Won Filip Peliwo (2:0)
Kento Takeuchi 1 1 0
100%
Won Kento Takeuchi (2:0)
Adrian Menendez 1 1 0
100%
Won Adrian Menendez (2:1)
Frances Tiafoe 1 1 0
100%
Won Frances Tiafoe (2:1)
Cheng-Yu Yu 1 1 0
100%
Won Cheng-Yu Yu (2:0)
Yaraslau Shyla 1 1 0
100%
Won Yaraslau Shyla (2:0)
Joris de Loore 1 1 0
100%
Won Joris de Loore (2:0)
Julien Benneteau 1 1 0
100%
Won Julien Benneteau (2:0)
Marc Polmans 1 1 0
100%
Won Marc Polmans (2:0)
Stephane Robert 1 1 0
100%
Won Stephane Robert (2:1)
Miliaan Niesten 1 1 0
100%
Won Miliaan Niesten (2:0)
Federico Gaio 1 1 0
100%
Won Federico Gaio (2:1)
Simone Bolelli 1 1 0
100%
Won Simone Bolelli (2:1)
Jason Kubler 1 1 0
100%
Won Jason Kubler (2:0)
Makoto Ochi 1 1 0
100%
Won Makoto Ochi (2:0)
Shinji Hazawa 1 1 0
100%
Won Shinji Hazawa (2:0)
Sasi Kumar Mukund 1 1 0
100%
Won Sasi Kumar Mukund (2:0)
Kaichi Uchida 1 1 0
100%
Won Kaichi Uchida (2:1)
Brydan Klein 1 1 0
100%
Won Brydan Klein (2:0)
Denis Yevseyev 1 1 0
100%
Won Denis Yevseyev (2:1)
Arthur Fils 1 1 0
100%
Won Arthur Fils (2:1)
Dennis Novikov 1 1 0
100%
Won Dennis Novikov (2:0)
Daniel Yoo 1 1 0
100%
Won Daniel Yoo (2:0)
Gavin Van Peperzeel 1 1 0
100%
Won Gavin Van Peperzeel (2:0)
Ivan Dodig 1 1 0
100%
Won Ivan Dodig (2:1)
Alejandro Gomez 1 1 0
100%
Won Alejandro Gomez (2:0)
Go Soeda 1 1 0
100%
Won Go Soeda (2:0)
Kenny De Schepper 1 1 0
100%
Won Kenny De Schepper (2:1)
Hiroyasu Ehara 1 1 0
100%
Won Hiroyasu Ehara (2:0)
Yuta Shimizu 1 1 0
100%
Won Yuta Shimizu (2:0)
Nicola Kuhn 1 1 0
100%
Won Nicola Kuhn (2:0)
David Perez 1 1 0
100%
Won David Perez (2:0)
Moez Echargui 1 1 0
100%
Won Moez Echargui (2:0)
Kuan-Yi Lee 1 1 0
100%
Won Kuan-Yi Lee (2:0)
Marcel Granollers 1 1 0
100%
Won Marcel Granollers (2:0)
Matthew Romios 1 1 0
100%
Won Matthew Romios (2:0)
Saketh Myneni 1 1 0
100%
Won Saketh Myneni (2:0)
Blake Mott 1 1 0
100%
Won Blake Mott (2:0)
Pol Wattanakul 1 1 0
100%
Won Pol Wattanakul (2:0)
Hong Chung 1 1 0
100%
Won Hong Chung (2:1)
Marton Fucsovics 1 1 0
100%
Won Marton Fucsovics (2:0)
Denys Molchanov 1 1 0
100%
Won Denys Molchanov (2:1)
Noah Rubin 1 1 0
100%
Won Noah Rubin (2:0)
Julien Dubail 1 1 0
100%
Won Julien Dubail (2:1)
Jeremy Jahn 1 0 0
0%
Lost Jeremy Jahn (0:0)
Marinko Matosevic 1 0 1
0%
Lost Marinko Matosevic (0:2)
Sam Querrey 1 0 1
0%
Lost Sam Querrey (0:2)
Matthew Barton 1 0 0
0%
Lost Matthew Barton (0:0)
Vincent Millot 1 0 1
0%
Lost Vincent Millot (0:2)
Stefanos Tsitsipas 1 0 1
0%
Lost Stefanos Tsitsipas (1:2)
Hubert Hurkacz 1 0 1
0%
Lost Hubert Hurkacz (0:1)
Maximilian Neuchrist 1 0 1
0%
Lost Maximilian Neuchrist (1:2)
Thiago Monteiro 1 0 1
0%
Lost Thiago Monteiro (1:2)
Jared Donaldson 1 0 1
0%
Lost Jared Donaldson (0:2)
Ruben Bemelmans 1 0 1
0%
Lost Ruben Bemelmans (1:2)
Hyeon Chung 1 0 1
0%
Lost Hyeon Chung (0:2)
Chun-Hsin Tseng 1 0 1
0%
Lost Chun-Hsin Tseng (0:1)
Matias Franco Descotte 1 0 1
0%
Lost Matias Franco Descotte (0:2)
Ivo Karlovic 1 0 1
0%
Lost Ivo Karlovic (0:2)
Liam Broady 1 0 1
0%
Lost Liam Broady (0:2)
Dominik Koepfer 1 0 1
0%
Lost Dominik Koepfer (0:2)
Vasek Pospisil 1 0 1
0%
Lost Vasek Pospisil (0:2)
Grega Zemlja 1 0 1
0%
Lost Grega Zemlja (0:2)
Alexander Kudryavtsev 1 0 1
0%
Lost Alexander Kudryavtsev (0:2)
Hiroki Moriya 1 0 1
0%
Lost Hiroki Moriya (0:2)
Evgeny Karlovskiy 1 0 0
0%
Lost Evgeny Karlovskiy (1:1)
Omar Jasika 1 0 1
0%
Lost Omar Jasika (1:2)
Yibing Wu 1 0 1
0%
Lost Yibing Wu (1:2)
Radu Albot 1 0 1
0%
Lost Radu Albot (0:2)
Aleksandr Nedovyesov 1 0 1
0%
Lost Aleksandr Nedovyesov (0:2)
Dudi Sela 1 0 0
0%
Lost Dudi Sela (0:0)
Johan Sebastien Tatlot 1 0 1
0%
Lost Johan Sebastien Tatlot (0:2)
John-Patrick Smith 1 0 1
0%
Lost John-Patrick Smith (1:2)
Teymuraz Gabashvili 1 0 1
0%
Lost Teymuraz Gabashvili (0:2)
Damir Dzumhur 1 0 1
0%
Lost (1:2)
Andrew Harris 1 0 1
0%
Lost Andrew Harris (1:2)
Michael Mmoh 1 0 1
0%
Lost Michael Mmoh (0:2)
Nikola Milojevic 1 0 1
0%
Lost Nikola Milojevic (1:2)
Jurij Rodionov 1 0 1
0%
Lost Jurij Rodionov (0:2)
Sam Riffice 1 0 1
0%
Lost Sam Riffice (1:2)
Michael Geerts 1 0 1
0%
Lost Michael Geerts (1:2)
Brayden Schnur 1 0 1
0%
Lost Brayden Schnur (1:2)
Marko Tepavac 1 0 1
0%
Lost Marko Tepavac (0:2)
Paul-Henri Mathieu 1 0 1
0%
Lost Paul-Henri Mathieu (1:2)
Christian Ruud 1 0 0
0%
Lost Christian Ruud (0:0)
Gael Monfils 1 0 1
0%
Lost Gael Monfils (0:2)
Taylor Fritz 1 0 1
0%
Lost Taylor Fritz (1:2)
Yuichi Sugita 1 0 1
0%
Lost Yuichi Sugita (0:2)
Andrew Whittington 1 0 0
0%
Lost Andrew Whittington (1:1)
Pere Riba 1 0 1
0%
Lost Pere Riba (0:2)
Ernesto Escobedo 1 0 1
0%
Lost Ernesto Escobedo (0:2)
Ryan Harrison 1 0 1
0%
Lost Ryan Harrison (0:2)
Blaz Kavcic 1 0 1
0%
Lost Blaz Kavcic (0:2)
Jay Clarke 1 0 1
0%
Lost Jay Clarke (1:2)
Guido Andreozzi 1 0 1
0%
Lost Guido Andreozzi (1:2)
Viktor Troicki 1 0 1
0%
Lost Viktor Troicki (0:2)
Ilya Ivashka 1 0 1
0%
Lost Ilya Ivashka (0:2)
Maxime Cressy 1 0 1
0%
Lost Maxime Cressy (1:2)
Radek Stepanek 1 0 1
0%
Lost Radek Stepanek (1:3)
Alejandro Gonzalez 1 0 1
0%
Lost Alejandro Gonzalez (0:2)
Amir Weintraub 1 0 1
0%
Lost Amir Weintraub (1:2)
Donald Young 1 0 1
0%
Lost Donald Young (0:2)
Andreas Seppi 1 0 1
0%
Lost Andreas Seppi (1:2)
Ronnie Schneider 1 0 1
0%
Lost Ronnie Schneider (0:2)
Matthias Bachinger 1 0 1
0%
Lost Matthias Bachinger (0:2)
Roman Safiullin 1 0 1
0%
Lost Roman Safiullin (0:2)
Taro Daniel 1 0 1
0%
Lost Taro Daniel (1:2)
Collin Altamirano 1 0 1
0%
Lost Collin Altamirano (0:2)
Novak Djokovic 1 0 1
0%
Lost Novak Djokovic (0:3)
Yannick Maden 1 0 1
0%
Lost Yannick Maden (0:2)
Aleksandar Vukic 1 0 0
0%
Lost Aleksandar Vukic (0:0)
Sebastian Ofner 1 0 1
0%
Lost Sebastian Ofner (0:2)
Kacper Zuk 1 0 1
0%
Lost Kacper Zuk (0:2)
Marc-Andrea Huesler 1 0 1
0%
Lost Marc-Andrea Huesler (0:2)
Adrian Mannarino 1 0 1
0%
Lost Adrian Mannarino (1:2)

Calendar

Monday
Mon
Tuesday
Tue
Wednesday
Wed
Thursday
Thu
Friday
Fri
Saturday
Sat
Sunday
Sun
27
28
29
30
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
31