TRAINER PROFILE
Denis Gerard Hogan
7,067 runners
503 wins
7.1% strike
★ Career statistics
7,067
Runners
503
Wins
7.1%
Strike rate
1,632
Placed
0.61
Avg A/E
-2,812.65
1pt P/L
⌖ Performance by course
| Course | Runners | Wins | Win % | A/E | 1pt P/L |
|---|---|---|---|---|---|
| Dundalk (AW) (IRE) | 1332 | 97 | 7.3% | 0.78 | -575.44 |
| Cork (IRE) | 439 | 19 | 4.3% | 0.53 | -287.90 |
| Limerick (IRE) | 432 | 32 | 7.4% | 0.74 | -173.27 |
| Curragh (IRE) | 363 | 23 | 6.3% | 0.90 | -169.50 |
| Galway (IRE) | 351 | 22 | 6.3% | 0.85 | -141.50 |
| Gowran Park (IRE) | 346 | 16 | 4.6% | 0.55 | -190.83 |
| Fairyhouse (IRE) | 290 | 21 | 7.2% | 0.83 | -52.88 |
| Leopardstown (IRE) | 282 | 16 | 5.7% | 0.73 | -131.77 |
| Naas (IRE) | 250 | 13 | 5.2% | 0.68 | -125.67 |
| Thurles (IRE) | 250 | 22 | 8.8% | 1.02 | -34.00 |
| Navan (IRE) | 246 | 15 | 6.1% | 0.77 | -140.56 |
| Killarney (IRE) | 231 | 16 | 6.9% | 0.71 | -110.62 |
⏱ Recent runners
1
18 Jun
1878 At 3Arena Handicap (Div II)
9/2
SP
2
18 Jun
1878 At 3Arena Handicap (Div II)
100/30F
SP
3
18 Jun
1878 At 3Arena Handicap (Div II)
12/1
SP
4
18 Jun
1878 At 3Arena Handicap (Div II)
4/1
SP
5
18 Jun
1878 At 3Arena Handicap (Div II)
22/1
SP
6
18 Jun
1878 At 3Arena Handicap (Div II)
14/1
SP
7
18 Jun
1878 At 3Arena Handicap (Div II)
22/1
SP
8
18 Jun
1878 At 3Arena Handicap (Div II)
33/1
SP
9
18 Jun
1878 At 3Arena Handicap (Div II)
9/2
SP
10
18 Jun
1878 At 3Arena Handicap (Div II)
33/1
SP
11
18 Jun
1878 At 3Arena Handicap (Div II)
80/1
SP
12
18 Jun
1878 At 3Arena Handicap (Div II)
8/1
SP
13
18 Jun
1878 At 3Arena Handicap (Div II)
12/1
SP
14
18 Jun
1878 At 3Arena Handicap (Div II)
50/1
SP
1
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
11/4F
SP
2
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
11/1
SP
3
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
20/1
SP
4
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
11/1
SP
5
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
12/1
SP
6
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
9/2
SP
7
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
80/1
SP
8
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
11/1
SP
9
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
10/1
SP
10
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
22/1
SP
11
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
12/1
SP
12
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
5/1
SP
13
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
16/1
SP
14
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
22/1
SP
15
18 Jun
BOYLE Sports Money Back If 2nd To SP Fav Handicap
66/1
SP
1
15 Jun
T. Murray & Son Ltd. Beginners Chase
EvensF
SP
2
15 Jun
T. Murray & Son Ltd. Beginners Chase
8/1
SP
3
15 Jun
T. Murray & Son Ltd. Beginners Chase
80/1
SP
4
15 Jun
T. Murray & Son Ltd. Beginners Chase
80/1
SP
5
15 Jun
T. Murray & Son Ltd. Beginners Chase
3/1
SP
6
15 Jun
T. Murray & Son Ltd. Beginners Chase
15/2
SP
7
15 Jun
T. Murray & Son Ltd. Beginners Chase
40/1
SP
8
15 Jun
T. Murray & Son Ltd. Beginners Chase
100/1
SP
9
15 Jun
T. Murray & Son Ltd. Beginners Chase
66/1
SP
10
15 Jun
T. Murray & Son Ltd. Beginners Chase
200/1
SP
11
15 Jun
T. Murray & Son Ltd. Beginners Chase
125/1
SP
RO
15 Jun
T. Murray & Son Ltd. Beginners Chase
4/1
SP
1
14 Jun
Ryan's Cleaning Handicap
7/2F
SP
2
14 Jun
Ryan's Cleaning Handicap
18/1
SP
3
14 Jun
Ryan's Cleaning Handicap
4/1
SP
4
14 Jun
Ryan's Cleaning Handicap
11/2
SP
5
14 Jun
Ryan's Cleaning Handicap
4/1
SP
6
14 Jun
Ryan's Cleaning Handicap
10/1
SP
7
14 Jun
Ryan's Cleaning Handicap
14/1
SP
8
14 Jun
Ryan's Cleaning Handicap
14/1
SP
9
14 Jun
Ryan's Cleaning Handicap
13/2
SP
10
14 Jun
Ryan's Cleaning Handicap
80/1
SP
1
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
15/2
SP
2
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
6/1
SP
3
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
33/1
SP
4
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
14/1
SP
5
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
1/2F
SP
6
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
100/1
SP
7
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
12/1
SP
8
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
14/1
SP
9
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
500/1
SP
10
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
200/1
SP
11
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
20/1
SP
12
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
100/1
SP
13
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
50/1
SP
14
14 Jun
Irish Stallion Farms EBF Fillies Maiden (IRE Incentive Race)
33/1
SP
1
12 Jun
Kate O'Sullivan Memorial Handicap
13/2
SP
2
12 Jun
Kate O'Sullivan Memorial Handicap
16/1
SP
3
12 Jun
Kate O'Sullivan Memorial Handicap
7/1
SP
4
12 Jun
Kate O'Sullivan Memorial Handicap
12/1
SP
5
12 Jun
Kate O'Sullivan Memorial Handicap
14/1
SP
6
12 Jun
Kate O'Sullivan Memorial Handicap
12/1
SP
7
12 Jun
Kate O'Sullivan Memorial Handicap
28/1
SP
8
12 Jun
Kate O'Sullivan Memorial Handicap
3/1F
SP
9
12 Jun
Kate O'Sullivan Memorial Handicap
7/2
SP
10
12 Jun
Kate O'Sullivan Memorial Handicap
33/1
SP
11
12 Jun
Kate O'Sullivan Memorial Handicap
50/1
SP
12
12 Jun
Kate O'Sullivan Memorial Handicap
66/1
SP
13
12 Jun
Kate O'Sullivan Memorial Handicap
17/2
SP
14
12 Jun
Kate O'Sullivan Memorial Handicap
14/1
SP
15
12 Jun
Kate O'Sullivan Memorial Handicap
18/1
SP
16
12 Jun
Kate O'Sullivan Memorial Handicap
66/1
SP
17
12 Jun
Kate O'Sullivan Memorial Handicap
33/1
SP
1
11 Jun
Irish Stallion Farms EBF Fillies Handicap
5/1
SP
2
11 Jun
Irish Stallion Farms EBF Fillies Handicap
5/2F
SP
3
11 Jun
Irish Stallion Farms EBF Fillies Handicap
18/1
SP
4
11 Jun
Irish Stallion Farms EBF Fillies Handicap
100/30
SP
5
11 Jun
Irish Stallion Farms EBF Fillies Handicap
15/2
SP
6
11 Jun
Irish Stallion Farms EBF Fillies Handicap
28/1
SP
7
11 Jun
Irish Stallion Farms EBF Fillies Handicap
8/1
SP
8
11 Jun
Irish Stallion Farms EBF Fillies Handicap
28/1
SP
9
11 Jun
Irish Stallion Farms EBF Fillies Handicap
20/1
SP
10
11 Jun
Irish Stallion Farms EBF Fillies Handicap
12/1
SP
11
11 Jun
Irish Stallion Farms EBF Fillies Handicap
10/1
SP
12
11 Jun
Irish Stallion Farms EBF Fillies Handicap
66/1
SP
13
11 Jun
Irish Stallion Farms EBF Fillies Handicap
50/1
SP
1
11 Jun
GAIN The Advantage Series Handicap
4/1
SP
2
11 Jun
GAIN The Advantage Series Handicap
12/1
SP
3
11 Jun
GAIN The Advantage Series Handicap
5/2F
SP
4
11 Jun
GAIN The Advantage Series Handicap
12/1
SP
5
11 Jun
GAIN The Advantage Series Handicap
17/2
SP
6
11 Jun
GAIN The Advantage Series Handicap
25/1
SP
7
11 Jun
GAIN The Advantage Series Handicap
8/1
SP
8
11 Jun
GAIN The Advantage Series Handicap
7/1
SP
9
11 Jun
GAIN The Advantage Series Handicap
11/2
SP
10
11 Jun
GAIN The Advantage Series Handicap
25/1
SP
11
11 Jun
GAIN The Advantage Series Handicap
50/1
SP
12
11 Jun
GAIN The Advantage Series Handicap
66/1
SP
1
10 Jun
Racing Again On June 19th Handicap
15/8F
SP
2
10 Jun
Racing Again On June 19th Handicap
33/1
SP
3
10 Jun
Racing Again On June 19th Handicap
14/1
SP
4
10 Jun
Racing Again On June 19th Handicap
5/1
SP
5
10 Jun
Racing Again On June 19th Handicap
10/1
SP
6
10 Jun
Racing Again On June 19th Handicap
16/1
SP
7
10 Jun
Racing Again On June 19th Handicap
16/1
SP
8
10 Jun
Racing Again On June 19th Handicap
40/1
SP
9
10 Jun
Racing Again On June 19th Handicap
25/1
SP
10
10 Jun
Racing Again On June 19th Handicap
28/1
SP
11
10 Jun
Racing Again On June 19th Handicap
9/4
SP
12
10 Jun
Racing Again On June 19th Handicap
40/1
SP
13
10 Jun
Racing Again On June 19th Handicap
22/1
SP
14
10 Jun
Racing Again On June 19th Handicap
100/1
SP
1
10 Jun
Cosgrave Transport Handicap (Div II)
7/1
SP
2
10 Jun
Cosgrave Transport Handicap (Div II)
3/1F
SP
3
10 Jun
Cosgrave Transport Handicap (Div II)
9/1
SP
4
10 Jun
Cosgrave Transport Handicap (Div II)
16/1
SP
5
10 Jun
Cosgrave Transport Handicap (Div II)
40/1
SP
6
10 Jun
Cosgrave Transport Handicap (Div II)
22/1
SP
7
10 Jun
Cosgrave Transport Handicap (Div II)
100/30
SP
8
10 Jun
Cosgrave Transport Handicap (Div II)
17/2
SP
9
10 Jun
Cosgrave Transport Handicap (Div II)
12/1
SP
10
10 Jun
Cosgrave Transport Handicap (Div II)
66/1
SP
11
10 Jun
Cosgrave Transport Handicap (Div II)
8/1
SP
12
10 Jun
Cosgrave Transport Handicap (Div II)
40/1
SP
13
10 Jun
Cosgrave Transport Handicap (Div II)
11/1
SP
1
10 Jun
Cosgrave Transport Handicap (Div I)
15/2
SP
2
10 Jun
Cosgrave Transport Handicap (Div I)
28/1
SP
3
10 Jun
Cosgrave Transport Handicap (Div I)
16/1
SP
4
10 Jun
Cosgrave Transport Handicap (Div I)
33/1
SP
5
10 Jun
Cosgrave Transport Handicap (Div I)
9/2
SP
6
10 Jun
Cosgrave Transport Handicap (Div I)
100/30F
SP
7
10 Jun
Cosgrave Transport Handicap (Div I)
28/1
SP
8
10 Jun
Cosgrave Transport Handicap (Div I)
5/1
SP
9
10 Jun
Cosgrave Transport Handicap (Div I)
18/1
SP
10
10 Jun
Cosgrave Transport Handicap (Div I)
10/1
SP
11
10 Jun
Cosgrave Transport Handicap (Div I)
8/1
SP
12
10 Jun
Cosgrave Transport Handicap (Div I)
12/1
SP
13
10 Jun
Cosgrave Transport Handicap (Div I)
14/1
SP
14
10 Jun
Cosgrave Transport Handicap (Div I)
25/1
SP
1
10 Jun
Twilight Summer Racing @ Limerick Handicap
6/1
SP
2
10 Jun
Twilight Summer Racing @ Limerick Handicap
18/5F
SP
3
10 Jun
Twilight Summer Racing @ Limerick Handicap
7/1
SP
4
10 Jun
Twilight Summer Racing @ Limerick Handicap
40/1
SP
5
10 Jun
Twilight Summer Racing @ Limerick Handicap
28/1
SP
6
10 Jun
Twilight Summer Racing @ Limerick Handicap
25/1
SP
7
10 Jun
Twilight Summer Racing @ Limerick Handicap
18/1
SP
8
10 Jun
Twilight Summer Racing @ Limerick Handicap
50/1
SP
9
10 Jun
Twilight Summer Racing @ Limerick Handicap
11/2
SP
10
10 Jun
Twilight Summer Racing @ Limerick Handicap
5/1
SP
11
10 Jun
Twilight Summer Racing @ Limerick Handicap
4/1
SP
12
10 Jun
Twilight Summer Racing @ Limerick Handicap
11/1
SP
13
10 Jun
Twilight Summer Racing @ Limerick Handicap
18/1
SP
14
10 Jun
Twilight Summer Racing @ Limerick Handicap
25/1
SP
15
10 Jun
Twilight Summer Racing @ Limerick Handicap
80/1
SP
1
10 Jun
Limerick Optional Claiming Race
9/4
SP
2
10 Jun
Limerick Optional Claiming Race
18/1
SP
3
10 Jun
Limerick Optional Claiming Race
7/2
SP
4
10 Jun
Limerick Optional Claiming Race
25/1
SP
5
10 Jun
Limerick Optional Claiming Race
22/1
SP
6
10 Jun
Limerick Optional Claiming Race
6/5F
SP
7
10 Jun
Limerick Optional Claiming Race
66/1
SP
8
10 Jun
Limerick Optional Claiming Race
200/1
SP
9
10 Jun
Limerick Optional Claiming Race
20/1
SP
10
10 Jun
Limerick Optional Claiming Race
80/1
SP
1
9 Jun
Knocknarea Handicap Hurdle
4/1J
SP
2
9 Jun
Knocknarea Handicap Hurdle
4/1J
SP
3
9 Jun
Knocknarea Handicap Hurdle
10/1
SP
4
9 Jun
Knocknarea Handicap Hurdle
11/1
SP
5
9 Jun
Knocknarea Handicap Hurdle
5/1
SP
6
9 Jun
Knocknarea Handicap Hurdle
15/2
SP
7
9 Jun
Knocknarea Handicap Hurdle
16/1
SP
8
9 Jun
Knocknarea Handicap Hurdle
16/1
SP
9
9 Jun
Knocknarea Handicap Hurdle
40/1
SP
10
9 Jun
Knocknarea Handicap Hurdle
66/1
SP
11
9 Jun
Knocknarea Handicap Hurdle
12/1
SP
12
9 Jun
Knocknarea Handicap Hurdle
20/1
SP
13
9 Jun
Knocknarea Handicap Hurdle
80/1
SP
PU
9 Jun
Knocknarea Handicap Hurdle
20/1
SP
PU
9 Jun
Knocknarea Handicap Hurdle
9/1
SP
1
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
3/1F
SP
2
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
5/1
SP
3
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
13/2
SP
4
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
8/1
SP
5
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
20/1
SP
6
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
9/2
SP
7
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
18/1
SP
8
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
13/2
SP
9
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
25/1
SP
10
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
125/1
SP
11
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
25/1
SP
12
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
22/1
SP
13
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
12/1
SP
14
7 Jun
Cusack Hotel Group Family Raceday July 11th Handicap (Div II)
80/1
SP
1
7 Jun
Navan Handicap
7/2
SP
2
7 Jun
Navan Handicap
16/1
SP
3
7 Jun
Navan Handicap
22/1
SP
4
7 Jun
Navan Handicap
100/30F
SP
5
7 Jun
Navan Handicap
11/2
SP
6
7 Jun
Navan Handicap
15/2
SP
7
7 Jun
Navan Handicap
18/1
SP
8
7 Jun
Navan Handicap
7/2
SP
9
7 Jun
Navan Handicap
12/1
SP
1
5 Jun
Bulmers Original Maiden Hurdle
9/1
SP
2
5 Jun
Bulmers Original Maiden Hurdle
40/1
SP
3
5 Jun
Bulmers Original Maiden Hurdle
100/1
SP
4
5 Jun
Bulmers Original Maiden Hurdle
10/1
SP
5
5 Jun
Bulmers Original Maiden Hurdle
100/1
SP
6
5 Jun
Bulmers Original Maiden Hurdle
80/1
SP
7
5 Jun
Bulmers Original Maiden Hurdle
125/1
SP
DSQ
5 Jun
Bulmers Original Maiden Hurdle
5/1
SP
8
5 Jun
Bulmers Original Maiden Hurdle
80/1
SP
9
5 Jun
Bulmers Original Maiden Hurdle
125/1
SP
10
5 Jun
Bulmers Original Maiden Hurdle
100/1
SP
CO
5 Jun
Bulmers Original Maiden Hurdle
50/1
SP
CO
5 Jun
Bulmers Original Maiden Hurdle
6/1
SP
CO
5 Jun
Bulmers Original Maiden Hurdle
100/30
SP
RO
5 Jun
Bulmers Original Maiden Hurdle
13/2
SP
RO
5 Jun
Bulmers Original Maiden Hurdle
20/1
SP
RO
5 Jun
Bulmers Original Maiden Hurdle
9/4F
SP
1
4 Jun
BOYLE Sports Best Odds From 8am Handicap
12/1
SP
2
4 Jun
BOYLE Sports Best Odds From 8am Handicap
5/1J
SP
3
4 Jun
BOYLE Sports Best Odds From 8am Handicap
33/1
SP
4
4 Jun
BOYLE Sports Best Odds From 8am Handicap
14/1
SP
5
4 Jun
BOYLE Sports Best Odds From 8am Handicap
10/1
SP
6
4 Jun
BOYLE Sports Best Odds From 8am Handicap
8/1
SP
7
4 Jun
BOYLE Sports Best Odds From 8am Handicap
12/1
SP
8
4 Jun
BOYLE Sports Best Odds From 8am Handicap
11/2
SP
9
4 Jun
BOYLE Sports Best Odds From 8am Handicap
16/1
SP
10
4 Jun
BOYLE Sports Best Odds From 8am Handicap
7/1
SP
11
4 Jun
BOYLE Sports Best Odds From 8am Handicap
28/1
SP
12
4 Jun
BOYLE Sports Best Odds From 8am Handicap
5/1J
SP
13
4 Jun
BOYLE Sports Best Odds From 8am Handicap
14/1
SP
14
4 Jun
BOYLE Sports Best Odds From 8am Handicap
40/1
SP
15
4 Jun
BOYLE Sports Best Odds From 8am Handicap
12/1
SP
1
3 Jun
Sky Bet Build A Bet Handicap
20/1
SP
2
3 Jun
Sky Bet Build A Bet Handicap
16/1
SP
3
3 Jun
Sky Bet Build A Bet Handicap
22/1
SP
4
3 Jun
Sky Bet Build A Bet Handicap
9/1
SP
5
3 Jun
Sky Bet Build A Bet Handicap
17/2
SP
6
3 Jun
Sky Bet Build A Bet Handicap
33/1
SP
7
3 Jun
Sky Bet Build A Bet Handicap
4/1F
SP
8
3 Jun
Sky Bet Build A Bet Handicap
66/1
SP
9
3 Jun
Sky Bet Build A Bet Handicap
15/2
SP
10
3 Jun
Sky Bet Build A Bet Handicap
15/2
SP
11
3 Jun
Sky Bet Build A Bet Handicap
18/1
SP
12
3 Jun
Sky Bet Build A Bet Handicap
8/1
SP
13
3 Jun
Sky Bet Build A Bet Handicap
28/1
SP
14
3 Jun
Sky Bet Build A Bet Handicap
20/1
SP
15
3 Jun
Sky Bet Build A Bet Handicap
11/1
SP
16
3 Jun
Sky Bet Build A Bet Handicap
25/1
SP
17
3 Jun
Sky Bet Build A Bet Handicap
80/1
SP
18
3 Jun
Sky Bet Build A Bet Handicap
20/1
SP
19
3 Jun
Sky Bet Build A Bet Handicap
14/1
SP
20
3 Jun
Sky Bet Build A Bet Handicap
15/2
SP
1
3 Jun
Sky Bet Race To The Ebor Handicap
10/1
SP
2
3 Jun
Sky Bet Race To The Ebor Handicap
100/30F
SP
3
3 Jun
Sky Bet Race To The Ebor Handicap
7/1
SP
4
3 Jun
Sky Bet Race To The Ebor Handicap
5/1
SP
5
3 Jun
Sky Bet Race To The Ebor Handicap
10/1
SP
6
3 Jun
Sky Bet Race To The Ebor Handicap
5/1
SP
7
3 Jun
Sky Bet Race To The Ebor Handicap
16/1
SP
8
3 Jun
Sky Bet Race To The Ebor Handicap
11/2
SP
9
3 Jun
Sky Bet Race To The Ebor Handicap
16/1
SP
10
3 Jun
Sky Bet Race To The Ebor Handicap
16/1
SP
11
3 Jun
Sky Bet Race To The Ebor Handicap
22/1
SP
12
3 Jun
Sky Bet Race To The Ebor Handicap
40/1
SP