Hockey Predictor

HOCKEY Predictor

DateTeam 1Team 2Score PredictionConfidenceBetting predictions Team 1 WinBetting predictions DrawBetting predictions Team 2 WinFinal Score
Austria EBEL

21st Dec 2025,

09:00 ET

Graz99ers
2.570
Salzburg
2.220
2:3
(0:1, 0:1, 2:1)
49.6%
38.95%18.7%42.35%
0:3

21st Dec 2025,

10:00 ET

Black Wings Linz
2.500
Alba Volan
2.240
1:3
(0:1, 0:2, 1:0)
60.4%
37.65%17.9%44.45%
2:4

21st Dec 2025,

10:00 ET

HK Olimpija
Vorarlberg
Unlock

21st Dec 2025,

11:00 ET

Klagenfurt
Ferencvaros
4:3 OT
(0:0, 2:1, 1:2, 1:0)
55%
36.45%30.5%33.05%

21st Dec 2025,

11:30 ET

Villacher
1.580
TWK Innsbruck
4.155
3:2
(1:1, 0:0, 2:1)
67.6%
41.15%21.1%37.75%
1:1

21st Dec 2025,

12:00 ET

Vienna Capitals
Val Pusteria
Unlock
Belarus Extraleague

21st Dec 2025,

04:50 ET

Neman Grodno
4.100
Vitebsk
1.660
1:2
(0:0, 1:1, 0:1)
48.5%
37.55%21.5%40.95%
1:4

21st Dec 2025,

06:00 ET

Baranavichy
7.220
Lida
1.280
1:5
(1:2, 0:2, 0:1)
81.7%
31.8%22.8%45.4%
0:4

21st Dec 2025,

11:40 ET

Yunost Minsk
Gomel
Unlock
Unlock Prediction
Czech Republic Extraliga

21st Dec 2025,

10:00 ET

Karlovy Vary
2.762
Mlada Boleslav
2.250
1:2
(0:0, 1:1, 0:1)
52.7%
38.15%20.3%41.55%
1:0

21st Dec 2025,

10:00 ET

Kladno
3.650
Liberec
1.800
1:3
(1:1, 0:1, 0:1)
71.4%
38%17.2%44.8%
0:4

21st Dec 2025,

10:00 ET

Kometa Brno
Mountfield HK
Unlock
Unlock Prediction

21st Dec 2025,

10:00 ET

Vitkovice
4.525
Sparta Prague
1.600
2:3
(0:1, 0:1, 2:1)
60%
38.35%19.9%41.75%
4:3

21st Dec 2025,

10:30 ET

Pardubice
2.290
Plzen
2.723
2:3 OT
(1:1, 0:1, 1:0, 0:1)
60.4%
34.9%26.8%38.3%
1:1

21st Dec 2025,

11:00 ET

Litvinov
Olomouc
Unlock
Unlock Prediction

21st Dec 2025,

11:00 ET

Trinec
2.460
Ceske Budejovice
2.410
2:3 OT
(0:1, 1:0, 1:1, 0:1)
59.8%
34.7%27.2%38.1%
0:1
Denmark Metal Ligaen

21st Dec 2025,

09:00 ET

Herlev
2.380
Sonderjyske
2.320
2:3 OT
(1:1, 1:0, 0:1, 0:1)
62.2%
31.8%33%35.2%
0:0

21st Dec 2025,

09:00 ET

Rungsted
Frederikshavn
Unlock
Unlock Prediction

21st Dec 2025,

09:30 ET

Rodovre Mighty Bulls
6.310
Odense Bulldogs
1.330
2:4
(1:1, 0:1, 1:2)
71.6%
36.95%19.3%43.75%
1:4
France Ligue Magnus

21st Dec 2025,

10:30 ET

Cergy-Pontoise
5.190
ASG Angers
1.430
2:4
(1:1, 1:2, 0:1)
52.8%
35.1%23%41.9%
2:2

21st Dec 2025,

12:00 ET

Marseille
Dragons
Unlock

21st Dec 2025,

12:30 ET

Amiens
1.950
Rapaces
2.997
2:3
(0:0, 0:2, 2:1)
73.7%
36.75%23.1%40.15%

21st Dec 2025,

12:30 ET

Grenoble
1.747
Bordeaux
3.460
4:2
(2:0, 1:1, 1:1)
78.1%
42.65%21.5%35.85%

21st Dec 2025,

13:00 ET

Nice
Anglet
Unlock

21st Dec 2025,

14:05 ET

Briancon
3.170
Chamonix Mont-Blanc
1.880
2:3
(1:1, 0:1, 1:1)
78.1%
38.2%20.2%41.6%
Germany DEL

21st Dec 2025,

08:00 ET

Adler Mannheim
2.130
Grizzly Wolfsburg
2.812
1:2
(0:0, 0:1, 1:1)
91.9%
38.45%19.7%41.85%
2:5

21st Dec 2025,

08:00 ET

Munchen
Bremerhaven
Unlock
Unlock Prediction

21st Dec 2025,

08:00 ET

Nurnberg Ice Tigers
2.733
Schwenninger
2.160
3:4
(2:0, 0:2, 1:2)
83.3%
36.4%23.8%39.8%
4:3 OT

21st Dec 2025,

10:30 ET

Frankfurt Lowen
3.420
Iserlohn Roosters
1.830
1:4
(0:2, 1:1, 0:1)
75.5%
36.2%17.4%46.4%
3:3

21st Dec 2025,

10:30 ET

Straubing Tigers
Augsburger Panther
Unlock
Unlock Prediction

21st Dec 2025,

10:45 ET

ERC Ingolstadt
1.390
Dresdner Eislöwen
5.930
4:3 OT
(0:0, 2:1, 1:2, 1:0)
81.8%
37%29.4%33.6%
1:3

21st Dec 2025,

13:00 ET

Kolner
2.802
Eisbaren Berlin
2.120
2:3
(1:1, 0:1, 1:1)
81.6%
37.45%21.7%40.85%
Germany DEL2

21st Dec 2025,

09:00 ET

Kaufbeuren
Crimmitschau
Unlock
Unlock Prediction

21st Dec 2025,

11:00 ET

Freiburg
3.595
Dusseldorf
1.720
2:3
(1:0, 0:2, 1:1)
32%
37%22.6%40.4%
0:1

21st Dec 2025,

11:00 ET

Krefeld Pinguine
1.830
Regensburg
3.285
2:3
(0:1, 1:1, 1:1)
32.8%
36.6%23.4%40%
2:2

21st Dec 2025,

11:00 ET

Lausitzer Füchse
Bietigheim/Bissingen
Unlock
Unlock Prediction

21st Dec 2025,

11:00 ET

Starbulls Rosenheim
2.623
Landshut
2.180
2:3
(1:0, 1:1, 0:2)
76.6%
36.45%23.7%39.85%
1:1

21st Dec 2025,

12:30 ET

Kassel
1.760
Bad Nauheim
3.495
1:2
(0:1, 1:1, 0:0)
46%
38.3%20%41.7%

21st Dec 2025,

12:30 ET

Ravensburg
Weiden
Unlock
Great Britan Elite League

21st Dec 2025,

11:00 ET

Guildford
4.450
Nottingham
1.540
1:4
(1:1, 0:1, 0:2)
75.4%
34.5%20.8%44.7%
3:0

21st Dec 2025,

12:00 ET

Dundee
7.330
Belfast
1.270
1:6
(0:2, 1:3, 0:1)
74.9%
31.95%19.1%48.95%

21st Dec 2025,

12:30 ET

Cardiff
Manchester
Unlock

21st Dec 2025,

12:30 ET

Sheffield
1.630
Coventry
3.995
3:2
(1:1, 1:1, 1:0)
79.9%
40.3%22.8%36.9%
Poland Polish Hockey League

21st Dec 2025,

10:00 ET

Tychy
1.610
Jastrzebie
4.095
3:1
(1:1, 0:0, 2:0)
62%
44.7%17.4%37.9%
3:1

21st Dec 2025,

11:00 ET

Krakow
Zaglebie Sosnowiec
Unlock
Unlock Prediction

21st Dec 2025,

11:00 ET

Torun
Sanok
4:3
(0:1, 2:1, 2:1)
73.9%
42.9%17.6%39.5%
0:0

21st Dec 2025,

12:00 ET

Unia Oświęcim
1.820
Bytom
3.265
2:3
(0:0, 0:2, 2:1)
38.1%
36.4%23.8%39.8%
Russia MHL

21st Dec 2025,

01:00 ET

Chaika
Kuznetskie Medvedi
Unlock
Unlock Prediction

21st Dec 2025,

05:00 ET

Dinamo-Shinnik
5.780
Loko
1.440
1:4
(0:2, 1:1, 0:1)
71%
33.6%22.6%43.8%
3:4 OT

21st Dec 2025,

05:00 ET

Sputnik Almetievsk
3.350
Molot Perm
1.848
2:5
(1:2, 0:2, 1:1)
67.9%
36.2%17.4%46.4%
3:2 OT

21st Dec 2025,

05:00 ET

Tolpar
Almaz
Unlock
Unlock Prediction

21st Dec 2025,

06:00 ET

Irbis
2.950
Omskie Yastreby
2.035
4:3 OT
(0:1, 1:0, 2:2, 1:0)
67%
35.85%31.7%32.45%
3:4 OT
Russia VHL

21st Dec 2025,

03:00 ET

Khimik
Gornyak Uchaly
2:3
(0:1, 0:1, 2:1)
52.2%
36.6%23.4%40%
2:3 OT

21st Dec 2025,

03:00 ET

Torpedo Gorky
Chelmet Chelyabinsk
Unlock
Unlock Prediction

21st Dec 2025,

08:00 ET

HK Norilsk
4.750
CSK VVS
1.565
1:3
(0:1, 0:2, 1:0)
78.1%
34.8%23.6%41.6%

21st Dec 2025,

09:00 ET

Krasnoyarsk
1.875
Chelny
3.390
2:3 OT
(1:0, 0:0, 1:2, 0:1)
48.7%
32.85%30.9%36.25%
0:0

21st Dec 2025,

09:00 ET

Metallurg Novokuznetsk
Almetyevsk
Unlock
Unlock Prediction
Slovakia Extraliga

21st Dec 2025,

09:00 ET

Poprad
1.990
Michalovce
2.920
3:2
(2:0, 0:1, 1:1)
49.3%
40.6%22.2%37.2%
5:2

21st Dec 2025,

09:30 ET

Zvolen
2.722
Dukla Trencin
2.150
2:3
(1:0, 0:2, 1:1)
48.5%
36.5%23.6%39.9%
3:3

21st Dec 2025,

10:00 ET

Liptovsky Mikulas
Kosice
Unlock
Unlock Prediction

21st Dec 2025,

11:00 ET

Slovan Bratislava
2.801
Zilina
2.080
1:3
(0:1, 1:0, 0:2)
43.2%
34.9%23.4%41.7%
3:0

21st Dec 2025,

11:30 ET

Ban. Bystrica
3.400
Nitra
1.790
2:3 OT
(1:0, 0:2, 1:0, 0:1)
37.9%
30.65%35.3%34.05%
1:0
Switzerland Swiss League

21st Dec 2025,

10:00 ET

Chur
Winterthur
Unlock
Unlock Prediction

21st Dec 2025,

11:00 ET

Basel
3.845
La Chaux-de-Fonds
1.660
4:3 OT
(1:1, 0:1, 2:1, 1:0)
75%
33.4%36.6%30%
1:0

21st Dec 2025,

11:30 ET

GCK Lions
4.090
Olten
1.600
0:5
(0:1, 0:2, 0:2)
80.8%
32.5%18%49.5%
0:1
USA AHL

21st Dec 2025,

16:00 ET

San Diego Gulls
Calgary Wranglers
Unlock
USA USA AHL

21st Dec 2025,

15:00 ET

Rockford IceHogs
2.792
Manitoba Moose
2.090
2:3
(1:0, 1:2, 0:1)
71.1%
37.9%20.8%41.3%

21st Dec 2025,

15:00 ET

Toronto Marlies
1.940
Belleville Senators
3.045
1:2
(0:0, 1:1, 0:1)
79%
39.4%17.8%42.8%

21st Dec 2025,

15:05 ET

Hershey Bears
Wilkes-Barre/Scranton
Unlock

21st Dec 2025,

16:00 ET

Cleveland Monsters
3.740
Grand Rapids Griffins
1.710
1:3
(0:0, 1:1, 0:2)
75%
37.35%18.5%44.15%

21st Dec 2025,

16:00 ET

Springfield Thunderbirds
3.250
Charlotte Checkers
1.870
1:3
(0:1, 1:1, 0:1)
64.6%
36%21.2%42.8%

21st Dec 2025,

17:05 ET

Henderson Silver Knights
Colorado Eagles
Unlock

21st Dec 2025,

18:00 ET

San Jose Barracuda
2.480
Ontario Reign
2.250
1:5
(0:2, 1:3, 0:0)
70.1%
32.55%21.3%46.15%

Value bets for today based on Scores Predictor:

DateTeam 1Team 2Score PredictionMoney line1Money line2Final ScoreValue Bet
Belarus Extraleague

21st Dec 2025,

04:50 ET

Neman Grodno
4.100
Vitebsk
1.660
1:2
4.1001.660
1:4
Take Neman Grodno +2.5
Czech Republic Extraliga

21st Dec 2025,

10:00 ET

Vitkovice
4.525
Sparta Prague
1.600
2:3
4.5251.600
4:3
Take Vitkovice +2.5
Germany DEL

21st Dec 2025,

10:45 ET

ERC Ingolstadt
1.390
Dresdner Eislöwen
5.930
4:3 OT
1.3905.930
1:3
Take Dresdner Eislowen +2.5
Switzerland Swiss League

21st Dec 2025,

11:00 ET

Basel
3.845
La Chaux-de-Fonds
1.660
4:3 OT
3.8451.660
1:0
Take Basel +2.5
Germany DEL2

21st Dec 2025,

11:00 ET

Freiburg
3.595
Dusseldorf
1.720
2:3
3.5951.720
0:1
Take Freiburg +2.5
Austria EBEL

21st Dec 2025,

11:30 ET

Villacher
1.580
TWK Innsbruck
4.155
3:2
1.5804.155
1:1
Take TWK Innsbruck +2.5
Great Britan Elite League

21st Dec 2025,

12:30 ET

Sheffield
1.630
Coventry
3.995
3:2
1.6303.995Take Coventry +2.5
DateTeam 1Team 2Score PredictionTotalBookmaker TotalFinal ScoreValue Bet
Belarus Extraleague

21st Dec 2025,

04:50 ET

Neman Grodno
4.100
Vitebsk
1.660
1:2
34.25
1:4
Bet under 4.25
Russia MHL

21st Dec 2025,

05:00 ET

Dinamo-Shinnik
5.780
Loko
1.440
1:4
55.25
3:4 OT
Bet under 5.25
Russia MHL

21st Dec 2025,

05:00 ET

Sputnik Almetievsk
3.350
Molot Perm
1.848
2:5
76.25
3:2 OT
Bet over 6.25
Belarus Extraleague

21st Dec 2025,

06:00 ET

Baranavichy
7.220
Lida
1.280
1:5
65.25
0:4
Bet over 5.25
Russia MHL

21st Dec 2025,

06:00 ET

Irbis
2.950
Omskie Yastreby
2.035
4:3 OT
75.25
3:4 OT
Bet over 5.25
Russia VHL

21st Dec 2025,

08:00 ET

HK Norilsk
4.750
CSK VVS
1.565
1:3
44.50
3:3
Bet under 4.50
Germany DEL

21st Dec 2025,

08:00 ET

Nurnberg Ice Tigers
2.733
Schwenninger
2.160
3:4
75.25
4:3 OT
Bet over 5.25
Austria EBEL

21st Dec 2025,

09:00 ET

Graz99ers
2.570
Salzburg
2.220
2:3
55.25
0:3
Bet under 5.25
Denmark Metal Ligaen

21st Dec 2025,

09:00 ET

Herlev
2.380
Sonderjyske
2.320
2:3 OT
55.50
0:0
Bet under 5.50
Russia VHL

21st Dec 2025,

09:00 ET

Krasnoyarsk
1.875
Chelny
3.390
2:3 OT
55.25
0:0
Bet under 5.25
Slovakia Extraliga

21st Dec 2025,

09:00 ET

Poprad
1.990
Michalovce
2.920
3:2
55.25
5:2
Bet under 5.25
Denmark Metal Ligaen

21st Dec 2025,

09:30 ET

Rodovre Mighty Bulls
6.310
Odense Bulldogs
1.330
2:4
66.25
1:4
Bet under 6.25
Slovakia Extraliga

21st Dec 2025,

09:30 ET

Zvolen
2.722
Dukla Trencin
2.150
2:3
55.25
3:3
Bet under 5.25
Austria EBEL

21st Dec 2025,

10:00 ET

Black Wings Linz
2.500
Alba Volan
2.240
1:3
45.25
2:4
Bet under 5.25
Czech Republic Extraliga

21st Dec 2025,

10:00 ET

Karlovy Vary
2.762
Mlada Boleslav
2.250
1:2
34.25
1:0
Bet under 4.25
Czech Republic Extraliga

21st Dec 2025,

10:00 ET

Kladno
3.650
Liberec
1.800
1:3
45.25
0:4
Bet under 5.25
Poland Polish Hockey League

21st Dec 2025,

10:00 ET

Tychy
1.610
Jastrzebie
4.095
3:1
45.25
3:1
Bet under 5.25
Czech Republic Extraliga

21st Dec 2025,

10:00 ET

Vitkovice
4.525
Sparta Prague
1.600
2:3
55.25
4:3
Bet under 5.25
France Ligue Magnus

21st Dec 2025,

10:30 ET

Cergy-Pontoise
5.190
ASG Angers
1.430
2:4
65.25
2:2
Bet over 5.25
Germany DEL

21st Dec 2025,

10:30 ET

Frankfurt Lowen
3.420
Iserlohn Roosters
1.830
1:4
55.25
3:3
Bet under 5.25
Czech Republic Extraliga

21st Dec 2025,

10:30 ET

Pardubice
2.290
Plzen
2.723
2:3 OT
54.25
1:1
Bet over 4.25
Germany DEL

21st Dec 2025,

10:45 ET

ERC Ingolstadt
1.390
Dresdner Eislöwen
5.930
4:3 OT
76.25
1:3
Bet over 6.25
Switzerland Swiss League

21st Dec 2025,

11:00 ET

Basel
3.845
La Chaux-de-Fonds
1.660
4:3 OT
75.25
1:0
Bet over 5.25
Germany DEL2

21st Dec 2025,

11:00 ET

Freiburg
3.595
Dusseldorf
1.720
2:3
55.25
0:1
Bet under 5.25
Great Britan Elite League

21st Dec 2025,

11:00 ET

Guildford
4.450
Nottingham
1.540
1:4
55.50
3:0
Bet under 5.50
Germany DEL2

21st Dec 2025,

11:00 ET

Krefeld Pinguine
1.830
Regensburg
3.285
2:3
55.25
2:2
Bet under 5.25
Slovakia Extraliga

21st Dec 2025,

11:00 ET

Slovan Bratislava
2.801
Zilina
2.080
1:3
45.25
3:0
Bet under 5.25
Germany DEL2

21st Dec 2025,

11:00 ET

Starbulls Rosenheim
2.623
Landshut
2.180
2:3
55.25
1:1
Bet under 5.25
Poland Polish Hockey League

21st Dec 2025,

11:00 ET

Torun
Sanok
4:3
77.25
0:0
Bet under 7.25
Czech Republic Extraliga

21st Dec 2025,

11:00 ET

Trinec
2.460
Ceske Budejovice
2.410
2:3 OT
55.25
0:1
Bet under 5.25
Slovakia Extraliga

21st Dec 2025,

11:30 ET

Ban. Bystrica
3.400
Nitra
1.790
2:3 OT
55.25
1:0
Bet under 5.25
Switzerland Swiss League

21st Dec 2025,

11:30 ET

GCK Lions
4.090
Olten
1.600
0:5
55.25
0:1
Bet under 5.25
Austria EBEL

21st Dec 2025,

11:30 ET

Villacher
1.580
TWK Innsbruck
4.155
3:2
56.25
1:1
Bet under 6.25
Great Britan Elite League

21st Dec 2025,

12:00 ET

Dundee
7.330
Belfast
1.270
1:6
76.25Bet over 6.25
Poland Polish Hockey League

21st Dec 2025,

12:00 ET

Unia Oświęcim
1.820
Bytom
3.265
2:3
55.25Bet under 5.25
France Ligue Magnus

21st Dec 2025,

12:30 ET

Amiens
1.950
Rapaces
2.997
2:3
55.25Bet under 5.25
France Ligue Magnus

21st Dec 2025,

12:30 ET

Grenoble
1.747
Bordeaux
3.460
4:2
65.25Bet over 5.25
Great Britan Elite League

21st Dec 2025,

12:30 ET

Sheffield
1.630
Coventry
3.995
3:2
55.25Bet under 5.25
Germany DEL

21st Dec 2025,

13:00 ET

Kolner
2.802
Eisbaren Berlin
2.120
2:3
55.25Bet under 5.25
France Ligue Magnus

21st Dec 2025,

14:05 ET

Briancon
3.170
Chamonix Mont-Blanc
1.880
2:3
55.25Bet under 5.25
USA USA AHL

21st Dec 2025,

15:00 ET

Rockford IceHogs
2.792
Manitoba Moose
2.090
2:3
55.25Bet under 5.25
USA USA AHL

21st Dec 2025,

16:00 ET

Cleveland Monsters
3.740
Grand Rapids Griffins
1.710
1:3
45.25Bet under 5.25
USA USA AHL

21st Dec 2025,

16:00 ET

Springfield Thunderbirds
3.250
Charlotte Checkers
1.870
1:3
45.25Bet under 5.25
USA USA AHL

21st Dec 2025,

18:00 ET

San Jose Barracuda
2.480
Ontario Reign
2.250
1:5
65.25Bet over 5.25

Value bets for today based on Scores Predictor and Kelly Criterion:

What is Kelly Criterion?

The Kelly Criterion is a bet-sizing technique which balances both risk and reward for the advantage gambler. It determines the optimal % of your total capital (ie bankroll) that you can bet on a single outcome or game. Here is the formula for the Kelly Criterion copied from Wikipedia:

Where:

  • f* is the fraction of the current bankroll to wager;
  • b is the net odds received on the wager (“b to 1”); that is, you could win $b (plus the $1 wagered) for a $1 bet
  • p is the probability of winning;
  • q is the probability of losing, which is 1 − p.

As an example, if a gamble has a 60% chance of winning (p = 0.60, q = 0.40), and the gambler receives 1-to-1 odds on a winning bet (b = 1), then the gambler should bet 20% of his bankroll at each opportunity (f* = 0.20), in order to maximize the long-run growth rate of the bankroll.

If the gambler has zero edge, i.e. if b = q / p, then the criterion recommends the gambler bets nothing.

If the edge is negative (b < q / p) the formula gives a negative result, indicating that the gambler should take the other side of the bet.

DateTeam 1Team 2Optimal Stake PartBet OnFinal Score
Germany DEL

21st Dec 2025,

08:00 ET

Adler Mannheim
2.130
Grizzly Wolfsburg
2.812
0.1
Grizzly Wolfsburg ML
2:5
Denmark Metal Ligaen

21st Dec 2025,

09:30 ET

Rodovre Mighty Bulls
6.310
Odense Bulldogs
1.330
0.25
Rodovre Mighty Bulls ML
1:4
Czech Republic Extraliga

21st Dec 2025,

10:00 ET

Kladno
3.650
Liberec
1.800
0.15
Kladno ML
0:4
Poland Polish Hockey League

21st Dec 2025,

10:00 ET

Tychy
1.610
Jastrzebie
4.095
0.18
Jastrzebie ML
3:1
Germany DEL2

21st Dec 2025,

11:00 ET

Krefeld Pinguine
1.830
Regensburg
3.285
0.14
Regensburg ML
2:2
Poland Polish Hockey League

21st Dec 2025,

12:00 ET

Unia Oświęcim
1.820
Bytom
3.265
0.13
Bytom ML
France Ligue Magnus

21st Dec 2025,

12:30 ET

Amiens
1.950
Rapaces
2.997
0.1
Rapaces ML
Germany DEL2

21st Dec 2025,

12:30 ET

Kassel
1.760
Bad Nauheim
3.495
0.18
Bad Nauheim ML
France Ligue Magnus

21st Dec 2025,

14:05 ET

Briancon
3.170
Chamonix Mont-Blanc
1.880
0.1
Briancon ML
USA USA AHL

21st Dec 2025,

15:00 ET

Toronto Marlies
1.940
Belleville Senators
3.045
0.15
Belleville Senators ML
USA USA AHL

21st Dec 2025,

16:00 ET

Cleveland Monsters
3.740
Grand Rapids Griffins
1.710
0.14
Cleveland Monsters ML