Founded: 1921
Stadium: Estadio Eladio Rosabal Cordero
Coach: Jafet Soto Molina
Primera Division Form:
Overall Form:

Herediano home ground venue is Estadio Eladio Rosabal Cordero.

Jafet Soto Molina is the current coach for Herediano.

Herediano Primera Division Match Fixtures and Results

[ Home Overall Away  ]

Herediano have played a total of 26 matches in Costa Rica Primera Division. Their current statistics is 5 win, 9 draw and 12 lose.

Herediano did not win their last five matches in the competition.

The overall results is shown by default. You can also analyze Herediano results for their home or away matches in Primera Division 2018/2019.

Click on + to view detailed soccer statistics of the goal scorers, yellow and red cards for each match.
The match kick-off date and time is automatically converted to your local timezone.

Team Total Matches Win Draw Lose
Herediano 26 5 9 12
Date
Home
Score
Away
HT      
09/05/2019 San Carlos
4 - 1
Herediano 2-1H2H O +
Álvaro Saborío Chacón 9' 1 - 0  
  11' Keysher Fuller
R. Córdoba 13'  
  21' L. Díaz
Marvin Obando Mata 23'  
  1 - 1 24' J. Ortiz
R. Chirino 26' 2 - 1  
  35' Pablo Salazar
  45' H. Saravia
Marvin Obando Mata 56'  
Juan Solís Brenes 56'  
  60' G. Torres
  60' Óscar Granados Maroto
L. Díaz 64' 3 - 1  
  67' K. Brown
R. Córdoba 69'  
  71' Keysher Fuller
  71' M. Escoe
D. Madrigal 74'  
Sergio Carmona Marín 74'  
R. Chirino 80'  
P. Leal 80'  
P. Leal 84' 4 - 1  
  88' R. Azofeifa
  88' Aldo Magaña
  89' H. Saravia
21/04/2019 Alajuelense
2 - 2
Herediano 1-1H2H O +
  0 - 1 21' D. Villegas
R. Rojas 42' 1 - 1  
  46' J. Leitón
  46' Aldo Magaña
  55' Keysher Fuller
  55' Omar Arellano
  1 - 2 60' Yeltsin Tejeda
  65' J. Ortiz
  65' Óscar Granados Maroto
L. Garrido 67'  
Ariel Lassiter 68'  
E. Morales 68'  
  72' J. Marín
Porfirio López Meza 77'  
G. Castro 77'  
  78' Yeltsin Tejeda
  80' Omar Arellano
F. Álvarez 84'  
R. Rojas 89' 2 - 2  
  89' L. Díaz
Porfirio López Meza 90+2'  
14/04/2019 Santos de Guápiles
1 - 1
Herediano 0-0H2H O +
  40' Pablo Salazar
  40' O. Galo
R. Salas 52' 1 - 0  
  59' M. Escoe
  59' Aldo Magaña
  1 - 1 69' L. Díaz
S. Williams 74'  
Cristhian Lagos Navarro 74'  
R. Salas 76'  
  81' L. Díaz
  81' B. Burke
R. Salas 88'  
Ariel Zapata Pizarro 88'  
Douglas López 90+3'  
Jorge Davis Brown 90+3'  
31/03/2019 Cartaginés
2 - 1
Herediano 2-1H2H O +
  4' L. Díaz
  5' Pablo Salazar
  10' G. Torres
  10' M. Escoe
R. Araya 12' 1 - 0  
J. Cruz 19' 2 - 0  
E. Cabalceta 34'  
  2 - 1 37' M. Escoe
  48' M. Escoe
  54' Aldo Magaña
  54' Antonio Pedroza
R. Araya 58'  
M. Russell 60'  
Rafael Chávez Ramírez 60'  
R. Araya 64'  
Paolo Jiménez Conto 64'  
  73' C. Reyes
  73' Edgar Lugo
J. Cruz 75'  
J. Pemberton 75'  
W. Quirós 77'  
M. Hernández 90+4'  
29/03/2019 UCR
1 - 1
Herediano 0-1H2H O +
  0 - 1 21' Yeltsin Tejeda
  27' H. Saravia
  39' Omar Arellano
  39' Junior Diaz
  49' C. Reyes
Gustavo Díaz 53'  
F. Oviedo 53'  
  67' Edgar Lugo
  67' Youstin Salas
  69' Junior Diaz
B. Sánchez 74'  
Ronney Mora 74'  
F. Rodríguez 81'  
Sadier Camacho Mena 82'  
J. Daly 82'  
  85' G. Torres
  85' M. Escoe
Johnny Woodly Lambert 89' 1 - 1  
22/03/2019 Carmelita
0 - 3
Herediano 0-2H2H O +
N. Rodríguez 22'  
  0 - 1 23' C. Reyes
  0 - 2 26' Pablo Salazar
N. Rodríguez 35'  
L. Fallas 46'  
Juan Arguedas Chacón 46'  
  0 - 3 47' Carlos Montenegro Rodríguez
B. Alfaro 50'  
S. Núñez 50'  
  55' Edgar Lugo
  55' Antonio Pedroza
  64' G. Torres
  64' B. Burke
José Alfaro Vargas 68'  
J. Zuñiga 68'  
  70' L. Díaz
  70' J. Leitón
  74'
  90' Omar Arellano
17/03/2019 Deportivo Saprissa
2 - 1
Herediano 1-0H2H O +
  43' K. Brown
J. Arrieta 45+1' 1 - 0  
  1 - 1 47' J. Ortiz
A. David 51'  
  57' G. Torres
  57' M. Escoe
L. Hernandez 61'  
R. Leal 61'  
M. Torres 65'  
J. Arrieta 69'  
Rubilio Castillo 69'  
  73' L. Díaz
  73' Antonio Pedroza
A. Cabral 76'  
  80' Yeltsin Tejeda
Rubilio Castillo 81' 2 - 1  
  82' J. Ortiz
  82' Aldo Magaña
M. Angulo 86'  
Heiner Mora Mora 86'  
M. Barrantes 87'  
  88' Antonio Pedroza
04/03/2019 Grecia
1 - 2
Herediano 1-1H2H O +
  0 - 1 29' J. Ortiz
  31' Óscar Granados Maroto
  31' Youstin Salas
  40' J. Marín
K. Fajardo 42' 1 - 1  
  45' Keysher Fuller
  45' O. Galo
  51' D. Cambronero
Lucas Giovagnoli 51'  
Lucas Giovagnoli 52'  
F. Zamora 52'  
Jeremy Araya Molina 58'  
Bayron Jiménez Madrigal 61'  
C. Villegas 61'  
  69' Edgar Lugo
  71' Edgar Lugo
  71' M. Escoe
  1 - 2 73' J. Ortiz
25/02/2019 San Carlos
3 - 2
Herediano 0-1H2H O +
José Cordero Manzanares 3'  
  0 - 1 4' M. Escoe
  11' Carlos Martínez
  19' J. Marín
José Cordero Manzanares 46'  
M. Mena 46'  
  0 - 2 46' C. Reyes
  46' Carlos Martínez
  46' Pablo Salazar
Rudy Dawson Forbes 49'  
Álvaro Saborío Chacón 54' 1 - 2  
  60' C. Reyes
  67' L. Díaz
Álvaro Saborío Chacón 68' 2 - 2  
  75' J. Marín
  75' J. Leitón
  78' J. Ortiz
O. Rodríguez 80'  
Marvin Obando Mata 82'  
  83' J. Ortiz
  83' Óscar Granados Maroto
Álvaro Saborío Chacón 86'  
J. Soto 86'  
  88' M. Escoe
J. Soto 90' 3 - 2  
17/02/2019 Pérez Zeledón
1 - 1
Herediano 1-1H2H O +
  26' Junior Diaz
  0 - 1 30' Aldo Magaña
J. Mitchell 45' 1 - 1  
P. Azcurra 61'  
Javier del Valle Liendo 61'  
J. Mitchell 61'  
Y. Wright 61'  
  63' J. Ortiz
  63' M. Escoe
  69' H. Saravia
  72' Junior Diaz
  72' B. Burke
  78' L. Díaz
  78' Edgar Lugo
  79' Keysher Fuller
Edder Munguio Villegas 81'  
  81' C. Reyes
Y. Wright 81'  
Bryan Segura 83'  
  85' H. Saravia
Lucio Barroca 86'  
Lauro Cazal 86'  
10/02/2019 Guadalupe
0 - 0
Herediano 0-0H2H O +
L. Ayala 43'  
B. Bonilla 45'  
Josué Rodríguez Ramírez 45'  
Jean Scott 57'  
Óscar Arce Ramírez 57'  
  64' G. Torres
  64' B. Burke
  71' Óscar Granados Maroto
  71' Edgar Lugo
A. Campos 77'  
Andrés Gómez Rodríguez 77'  
  77' M. Escoe
  77' Aldo Magaña
  88' Keysher Fuller
20/01/2019 Limón
1 - 0
Herediano 0-0H2H O +
  15' B. Burke
A. Espinoza 39'  
Shain Joshua Brown 42'  
R. Parkins 45'  
José Marín Calderón 45'  
Shain Joshua Brown 58'  
Michael Barrantes Barret 58'  
  66' Aldo Magaña
  66' Edgar Lugo
  70' B. Burke
  70' G. Torres
  72' H. Saravia
R. Bolaños 76'  
Henry Cooper Bennett 76'  
  79' J. Ortiz
  79' M. Escoe
A. Espinoza 88' 1 - 0  
  90+1' Omar Arellano
23/12/2018 Deportivo Saprissa
2 - 3
Herediano 1-0H2H O +
  15' H. Saravia
  15' Omar Arellano
Omar Arellano 36' 1 - 0  
  46' J. Ortiz
  46' Edgar Lugo
  1 - 1 47' J. Marín
Johan Venegas 66' 2 - 1  
A. Cabral 68'  
  2 - 2 70' C. Reyes
  73' K. Brown
Johan Venegas 74'  
J. Arrieta 74'  
L. Pérez 74'  
Heiner Mora Mora 74'  
Y. Salinas 77'  
  81' Y. Ruiz
  81' Aldo Magaña
J. Arrieta 86'  
A. Cabral 88'  
J. Medina 93'  
  98' Edgar Lugo
M. Torres 98'  
Heiner Mora Mora 105'  
Y. Salinas 110'  
Juan Bustos Golobio 110'  
  2 - 3 112' Aldo Magaña
  116' Omar Arellano
09/12/2018 Alajuelense
2 - 1
Herediano 1-0H2H O +
K. Gutiérrez 1' 1 - 0  
  1 - 1 1' Antonio Pedroza
  1 - 2 2' Edgar Lugo
J. McDonald 2'  
F. Álvarez 3'  
  1 - 3 3' Pablo Salazar
  1 - 4 4' R. Azofeifa
R. Rojas 4' 2 - 4  
  27' Omar Arellano
J. McDonald 28' 3 - 4  
Allan Miranda Albertazzi 31'  
  38' Óscar Granados Maroto
Jonathan Moya 40'  
  46' A. Villalobos
  46' R. Azofeifa
  46' J. Ortiz
  46' Edgar Lugo
  3 - 5 60' Allan Cruz
D. Villegas 61'  
B. Sequeira 61'  
A. Guevara 71'  
M. Foster 71'  
Jonathan Moya 72' 4 - 5  
  86' Keysher Fuller
  91' Keysher Fuller
  91' Pablo Salazar
  97' J. Marín
  97' Antonio Pedroza
A. López 99'  
K. Gutiérrez 99'  
L. Garrido 113'  
F. Álvarez 113'  
Patrick Pemberton 114'  
  114' Y. Ruiz
  119' H. Saravia
29/11/2018 Deportivo Saprissa
1 - 0
Herediano 1-0H2H O +
C. Bolaños 1' 1 - 0  
  1 - 1 1' Edgar Lugo
Juan Bustos Golobio 2' 2 - 1  
  2' Junior Diaz
R. Blanco 3'  
  2 - 2 3' Aldo Magaña
Juan Guzmán Otárola 4'  
  2 - 3 4' Antonio Pedroza
  2 - 4 5' Pablo Salazar
M. Barrantes 28'  
Juan Guzmán Otárola 28'  
Johan Venegas 33' 3 - 4  
  36' H. Saravia
  45' H. Saravia
  45' B. Burke
  56' J. Marín
  59' J. Marín
  59' Antonio Pedroza
L. Hernandez 61'  
J. Arrieta 61'  
  74' Y. Ruiz
  74' Aldo Magaña
  79' J. Ortiz
  79' Edgar Lugo
A. Cabral 80'  
J. Arrieta 85'  
  85' Junior Diaz
  85' Óscar Granados Maroto
J. Medina 85'  
Johan Venegas 86'  
Juan Bustos Golobio 86'  
M. Angulo 104'  
R. Blanco 104'  
08/11/2018 San Carlos
1 - 2
Herediano 1-1H2H O +
Rudy Dawson Forbes 3'  
Manuel González 16' 1 - 0  
  1 - 1 27' J. Ortiz
Carlos Acosta Evans 34'  
  1 - 2 46' Y. Ruiz
  51' G. Torres
Bryan Solórzano 54'  
Luis González 54'  
  57' K. Brown
  58' G. Torres
  58' Omar Arellano
D. Madrigal 61'  
Juan Solís Brenes 61'  
  66' Y. Ruiz
  66' C. Reyes
  71' C. Reyes
  72' J. Ortiz
  72' A. Villalobos
Reggy Rivera Angulo 80'  
E. Ramírez 80'  
28/10/2018 Carmelita
0 - 0
Herediano 0-0H2H O +
  10' Junior Diaz
J. Gutiérrez 23'  
  25' A. Villalobos
E. Cabalceta 46'  
F. Montoya 46'  
  54' A. Villalobos
  54' G. Torres
  56' Aldo Magaña
  56' Antonio Pedroza
  61' H. Saravia
  61' Youstin Salas
A. Vargas 62'  
F. Montoya 66'  
A. Vargas 67'  
J. Zuñiga 67'  
  68' Allan Cruz
  69' G. Torres
S. Núñez 76'  
José Alfaro Vargas 76'  
  82' L. Moreira
  85' Youstin Salas
  86' J. Ortiz
J. Zuñiga 88'  
  88' Óscar Granados Maroto
Juan Arguedas Chacón 90'  
18/10/2018 Cartaginés
3 - 2
Herediano 1-1H2H O +
W. Quirós 8' 1 - 0  
  1 - 1 10' Junior Diaz
J. Pemberton 40'  
J. Sosa 47'  
  1 - 2 50' J. Ortiz
  51' Edgar Lugo
  56' Edgar Lugo
  56' Óscar Granados Maroto
W. Quirós 59'  
  62' Junior Diaz
N. Monge 65'  
Cristopher Núñez 65'  
  66' C. Reyes
  75' B. Burke
  75' J. Leitón
M. Russell 77'  
G. Clunie 77'  
  82' Keysher Fuller
  82' A. Villalobos
  83' Omar Arellano
J. Pemberton 86'  
L. Pérez 86'  
Nelson Barahona Collins 86'  
Nelson Barahona Collins 86'  
G. Clunie 88' 2 - 2  
M. Hernández 90' 3 - 2  
14/10/2018 Grecia
2 - 0
Herediano 0-0H2H O +
  1' H. Saravia
E. Rodríguez 42'  
J. Ordain 49' 1 - 0  
  56' Aldo Magaña
  56' Edgar Lugo
  56' H. Saravia
  56' J. Ortiz
E. Rodríguez 61' 2 - 0  
H. Rojas 69'  
Allan Alemán Ávila 69'  
  72' A. Villalobos
  72' Omar Arellano
D. Estrada 74'  
Rafael Chávez Ramírez 74'  
James Hudson 88'  
Verny Ramírez Suárez 88'  
  90+2' Omar Arellano
10/10/2018 Limón
3 - 0
Herediano 2-0H2H O +
Michael Barrantes Barret 26' 1 - 0  
J. Gordon 35' 2 - 0  
  46' Edgar Lugo
  46' Aldo Magaña
J. Brenes 56' 3 - 0  
K. Cordero 63'  
  65' D. Cambronero
K. Cordero 65'  
Erick Scott Bernard 65'  
  67' Antonio Pedroza
  67' Juan Alfaro Monge
J. Gordon 67'  
A. Bennett 67'  
Shain Joshua Brown 71'  
  74' H. Saravia
R. Parkins 76'  
José Marín Calderón 76'  
  81' A. Villalobos
  81' Óscar Granados Maroto
  84' Y. Ruiz
  90+2' C. Reyes
03/10/2018 Santos de Guápiles
0 - 1
Herediano 0-1H2H O +
  0 - 1 5' Omar Arellano
M. Barquero 39'  
  55' Óscar Granados Maroto
  60' Omar Arellano
  60' Edgar Lugo
Douglas López 62'  
M. Barquero 63'  
B. López 63'  
  69' Leonardo Gonzalez
  69' Junior Diaz
Randall Alvarado Brenes 72'  
S. Williams 72'  
S. Matarrita 73'  
W. Azofeifa 73'  
  74' J. Marín
  80' J. Marín
  80' B. Burke
  90+1' Junior Diaz
S. Williams 90+1'  
23/09/2018 UCR
1 - 1
Herediano 0-0H2H O +
Daniel Ocampo 16'  
  28' K. Brown
  31' A. Villalobos
  31' H. Saravia
Daniel Ocampo 46'  
Kenneth Dixon Mcoy 46'  
Fernando Cárdenas Arredondo 46'  
Fernando Cárdenas Arredondo 57'  
R. Gamboa 57'  
  66' J. Marín
  66' J. Ortiz
Yeison Esquivel Ramírez 76'  
F. Zamora 76'  
  82' Allan Cruz
  82' B. Burke
  0 - 1 84' Y. Ruiz
F. Zamora 90+1' 1 - 1  
09/09/2018 Alajuelense
6 - 1
Herediano 4-1H2H O +
A. Guevara 13' 1 - 0  
  22' J. Ortiz
R. Rojas 25' 2 - 0  
  2 - 1 29' Y. Ruiz
  36' Keysher Fuller
J. McDonald 36' 3 - 1  
  45' Antonio Pedroza
  45' Antonio Pedroza
A. Guevara 45' 4 - 1  
  46' J. Ortiz
  46' R. Azofeifa
  46' José Espinoza Sibaja
  46' Junior Diaz
Allan Miranda Albertazzi 46'  
K. Gutiérrez 46'  
  54' Edgar Lugo
  54' G. Torres
R. Rojas 62' 5 - 1  
A. López 70'  
J. Cubero 70'  
  76' A. Villalobos
A. Guevara 81'  
Pablo Martinez Martínez 81'  
  83' R. Azofeifa
J. McDonald 90+3' 6 - 1  
02/09/2018 Pérez Zeledón
1 - 1
Herediano 1-0H2H O +
A. López 16' 1 - 0  
  52' R. Azofeifa
  52' Antonio Pedroza
  53' Omar Arellano
  53' Yecsy Jarquín Ramos
A. López 55'  
César Carrillo Madrigal 55'  
  1 - 1 59' Y. Ruiz
  60' José Espinoza Sibaja
L. Rodríguez 64'  
P. Azcurra 64'  
J. Venegas 67'  
  68' Antonio Pedroza
Y. Wright 76'  
12/08/2018 Deportivo Saprissa
1 - 0
Herediano 0-0H2H O +
  46' Omar Arellano
  46' J. Marín
M. Torres 49'  
  58' Antonio Pedroza
  58' J. Arrieta
C. Bolaños 59'  
Y. Salinas 59'  
A. Cabral 68'  
Y. Salinas 72'  
Johan Venegas 76' 1 - 0  
  76' H. Saravia
  76' D. Estrada
  76' R. Miranda
  77' Pablo Salazar
M. Torres 83'  
Christian Martínez 83'  
  90+2' José Espinoza Sibaja
29/07/2018 Guadalupe
2 - 2
Herediano 0-0H2H O +
M. Meneses 43'  
  44' Omar Arellano
M. Meneses 45'  
K. Espinoza 45'  
  58' Omar Arellano
  58' Y. Ruiz
A. Campos 61' 1 - 0  
A. Campos 62'  
  64' Allan Cruz
  64' J. Ortiz
L. Ayala 65'  
  65' Óscar Granados Maroto
Óscar Arce Ramírez 67' 2 - 0  
A. Campos 71'  
J. Cruz 71'  
  72' Edgar Lugo
  72' R. Azofeifa
  2 - 1 81' Pablo Salazar
  2 - 2 85' Óscar Granados Maroto
F. Ramírez 88'  
D. Quirós 88'  

Chart Analysis

The graph shows the performance and results of Herediano in Primera Division.

Statistics & Analysis of Herediano

J. Ortiz is the leading top goal scorer for Herediano with 6 goals.

Achievement Statistics
Longest winning run
1
Longest losing streak
3
Longest run without loss
2
Longest run without win
5
Clean sheets
4
Matches over 2.25 goals
14
Matches under 2.25 goals
12
Matches First Half Over 0.5
18
Matches First Half Under 0.5
8
Matches odd
16
Matches even
10
Average goals scored
1.12
Average goals allowed
1.65
Failure to score
7
Biggest victory
0 - 3
Biggest defeat
6 - 1
Missed penalties
0
Penalty goals
7
Own goals
2
Goalless draw at home match
0
Goalless draw at away match
2 (8%)
Comeback win
2
Top Goal Scorer
Top Assist

Herediano Talk

Create a New Post





Submit Cancel

Herediano Squad

Detailed statistics of each Herediano player with their photo, nationality, jersey number, position and caps.

If you want to bet on the players, you should see who are the Herediano top goal scorers and which players have a disciplinary problem with the the most yellow or red cards.

Click on the players to get in-depth players' profile. Such as the players' age, place of birth, height, weight and his entire soccer career path.

# Photo Name of Player N A
Pablo Andrés Salazar Sánchez 3024 35 2 2 5 1 6 0 0
Jose Guillermo Ortiz Picado 2936 41 6 19 15 0 7 0 0
Keyner Yamal Brown Blackwood 2878 32 0 0 1 0 9 0 1
Keysher Fuller Spence 2840 33 0 7 1 0 17 0 0
Heyreel Antonio Saravia Vargas 2825 35 2 7 2 0 14 2 0
Daniel Arturo Cambronero Solano 2765 31 0 0 0 0 2 0 1
Omar Arellano Riverón 2633 36 6 10 3 2 13 0 1
Rándall Azofeifa Corrales 2531 34 8 5 5 3 5 0 0
Jimmy Marín 2507 32 3 11 6 0 6 0 1
Óscar Esteban Granados Maroto 2321 31 6 4 2 0 10 0 0
Christian Antonio Reyes Alemán 2268 26 2 1 5 0 9 0 0
Júnior Enrique Díaz Campbell 2167 26 4 1 1 0 9 0 0
Edgar Gerardo Lugo Aranda 1708 37 22 12 1 1 5 0 0
Luis Mario Díaz Espinoza 1617 21 2 8 1 0 5 0 0
Aldo Xavier Magaña Padilla 1429 31 17 8 7 1 2 0 0
Yeltsin Ignacio Tejeda Valverde 1380 16 1 1 2 0 4 0 0
Gerson Torres Barrantes 1187 24 8 12 0 0 3 0 0
Mynor Javier Escoe Miller 899 19 12 4 3 0 5 1 0
Orlando Moisés Galo Calderón 853 12 4 0 0 0 0 0 0
Berny Thomas Burke Montiel 751 17 10 6 0 0 1 0 0
José Martín Leitón Rodriguez 746 13 5 2 0 0 1 0 0
José Esteban Espinoza Sibaja 515 7 0 2 0 0 2 0 0
Leonardo González Arce 429 5 0 1 0 0 1 0 0
Youstin Delfin Salas Gómez 244 6 4 1 0 0 0 0 1
Juan Ignacio Alfaro Monge 113 2 1 0 0 0 0 0 0
Jairo Alexander Monge Ruiz 90 1 0 0 0 0 0 0 0
Yecsy Jarquín Ramos 52 2 2 0 0 0 1 0 0
Carlos Manuel Martínez 46 1 0 1 0 0 1 0 0
Víctor Núñez Rodríguez 26 1 0 1 1 0 0 0 0
Anthony Daniel Contreras Enríquez 0 0 0 0 0 0 0 0 0
Jean Innecken 0 0 0 0 0 0 0 0
Costa Rica Football
Season:

Results and Fixtures
Top Soccer Tipsters
Tipsters Competition Review
Superior H2H Statistics
H2H Home Team Advantage
H2H Away Team Advantage
Top Football Clubs
Worst Football Clubs
Teams Home Win 100%
Good Home Teams
Poor Away Teams
Platinum Membership Testimonial

Soccer Fixtures Calendar

Choose a date to view the past soccer results or upcoming match fixtures.

Pick a Country or Region

Get the listings of soccer leagues and competitions for each region, including past seasons results and football statistics.

Match Preview and News

Copyright © 2002-2025 SoccerPunter Pte. Ltd. All rights reserved.