{"id":606060,"league_id":53,"league":"Botola Pro","kickoff":1792008000,"home":"Ittihad Tanger","away":"Maghreb Fes","home_id":2059,"away_id":2071,"venue_id":null,"rank":6,"status":"finished","provisional":false,"lineup_status":"confirmed","confidence":0.698,"score":[2,1],"live_score":null,"lambda":[0.89,1.13],"odds_1x2":{"HOME":0.2815165999231388,"DRAW":0.34123172237929034,"AWAY":0.3772516776975708},"read":{"text":"Too close to call. A draw is live","side":null},"top_pick":null,"pass":"No call on Ittihad Tanger against Maghreb Fes. The money has gone against the likeliest outcome since the betting opened, and we do not back into that.","confident":[],"flags":[{"id":"form.away","section":"§2.1","note":"Maghreb Fes have taken 2.33 points a game from their last 6 (4W 2D 0L), scoring 1.7 and conceding 0.5, and 2.00 a game on the road."},{"id":"market.movement","section":"§7.1","note":"Since opening, HOME has shortened 33.5% since the market opened."},{"id":"market.sharp_reference","section":"§7.1","note":"The sharp book makes DRAW 4.4 points more likely than the wider market does."}],"lambda_home":0.887253204304386,"lambda_away":1.1273021332370081,"corner_rate":7.55,"card_rate":0.266,"lineups":{"status":"confirmed","confidence":null,"home":{"formation":"3-5-2","players":[{"id":16929,"name":"Malcolm Barcola","position":"G","starting":true,"ai_score":null},{"id":49776,"name":"Akram El Wahabi","position":"D","starting":true,"ai_score":null},{"id":49761,"name":"Bilal El Ouadghiri","position":"D","starting":true,"ai_score":null},{"id":49762,"name":"Mohamed Saoud","position":"D","starting":true,"ai_score":null},{"id":49760,"name":"Zakaria Kiani","position":"D","starting":true,"ai_score":null},{"id":15051,"name":"Babacar Sarr","position":"M","starting":true,"ai_score":null},{"id":49766,"name":"Mohamed El Arouch","position":"M","starting":true,"ai_score":null},{"id":15563,"name":"Gape Mohutsiwa","position":"M","starting":true,"ai_score":null},{"id":36818,"name":"Achraf Laaziri","position":"D","starting":true,"ai_score":null},{"id":49771,"name":"Abdel Hamid Maali","position":"M","starting":true,"ai_score":null},{"id":93852,"name":"Ibrahima Dieng","position":"F","starting":true,"ai_score":null}],"confidence":null},"away":{"formation":"4-3-3","players":[{"id":49666,"name":"Salaheddine Chihab","position":"G","starting":true,"ai_score":null},{"id":49667,"name":"Hamza Ait Allal","position":"D","starting":true,"ai_score":null},{"id":49686,"name":"Abdellah Khafifi","position":"D","starting":true,"ai_score":null},{"id":49941,"name":"Ayman Chabani","position":"D","starting":true,"ai_score":null},{"id":49670,"name":"Marouane Ouhrou","position":"D","starting":true,"ai_score":null},{"id":49674,"name":"Anas Tahiri","position":"M","starting":true,"ai_score":null},{"id":49672,"name":"Noureddine Oussama","position":"M","starting":true,"ai_score":null},{"id":49671,"name":"Achraf Harmach","position":"M","starting":true,"ai_score":null},{"id":186019,"name":"Devin Titus","position":"M","starting":true,"ai_score":null},{"id":105327,"name":"Tshegofatso Mabasa","position":"F","starting":true,"ai_score":null},{"id":68224,"name":"Anas El Mahraoui","position":"M","starting":true,"ai_score":null}],"confidence":null},"unavailable":[{"id":49934,"name":"Adil Rhaili","team_id":null,"side":"away","reason":"Knock Injury"},{"id":1539,"name":"Diogo Calila","team_id":null,"side":"away","reason":"Broken Foot"},{"id":148997,"name":"Samba Mbengue","team_id":null,"side":"away","reason":"Muscle Injury"},{"id":49675,"name":"Soulaïman Allouch","team_id":null,"side":"away","reason":"Shoulder Injury"}]},"people":[{"id":16929,"name":"Malcolm Barcola","side":"home"},{"id":49776,"name":"Akram El Wahabi","side":"home"},{"id":49761,"name":"Bilal El Ouadghiri","side":"home"},{"id":49762,"name":"Mohamed Saoud","side":"home"},{"id":49760,"name":"Zakaria Kiani","side":"home"},{"id":15051,"name":"Babacar Sarr","side":"home"},{"id":49766,"name":"Mohamed El Arouch","side":"home"},{"id":15563,"name":"Gape Mohutsiwa","side":"home"},{"id":36818,"name":"Achraf Laaziri","side":"home"},{"id":49771,"name":"Abdel Hamid Maali","side":"home"},{"id":93852,"name":"Ibrahima Dieng","side":"home"},{"id":49669,"name":"Saad Ait Khorsa","side":"home"},{"id":52392,"name":"Anass Mrabet","side":"home"},{"id":49978,"name":"Saad Karouat","side":"home"},{"id":49775,"name":"Louay El Moussaoui","side":"home"},{"id":52391,"name":"Youssef Ezzarradi","side":"home"},{"id":49923,"name":"Akram Tali","side":"home"},{"id":47954,"name":"Reda El Meliani","side":"home"},{"id":214137,"name":"Yassine Kermadi","side":"home"},{"id":49918,"name":"Youness Najari","side":"home"},{"id":60364,"name":"Haytham Bakhlakh","side":"home"},{"id":65881,"name":"Senad Jarović","side":"home"},{"id":49646,"name":"Badreddine Abyir","side":"home"},{"id":49774,"name":"Ahmed Azmi","side":"home"},{"id":49767,"name":"Ennaama El Bellali","side":"home"},{"id":49860,"name":"Hamza El Moudene","side":"home"},{"id":49764,"name":"Anas Lamrabat","side":"home"},{"id":49827,"name":"Soufyan Ahannach","side":"home"},{"id":49777,"name":"Mohamed El Guartit","side":"home"},{"id":50027,"name":"Achraf El Quaraoui","side":"home"},{"id":49970,"name":"Moussa Kote","side":"home"},{"id":93853,"name":"Mouad Frizit","side":"home"},{"id":32004,"name":"Ousama Siddiki","side":"home"},{"id":49666,"name":"Salaheddine Chihab","side":"away"},{"id":49667,"name":"Hamza Ait Allal","side":"away"},{"id":49686,"name":"Abdellah Khafifi","side":"away"},{"id":49941,"name":"Ayman Chabani","side":"away"},{"id":49670,"name":"Marouane Ouhrou","side":"away"},{"id":49674,"name":"Anas Tahiri","side":"away"},{"id":49672,"name":"Noureddine Oussama","side":"away"},{"id":49671,"name":"Achraf Harmach","side":"away"},{"id":186019,"name":"Devin Titus","side":"away"},{"id":105327,"name":"Tshegofatso Mabasa","side":"away"},{"id":68224,"name":"Anas El Mahraoui","side":"away"},{"id":49934,"name":"Adil Rhaili","side":"away"},{"id":1539,"name":"Diogo Calila","side":"away"},{"id":148997,"name":"Samba Mbengue","side":"away"},{"id":29041,"name":"Mohamed Jaouab","side":"away"},{"id":46360,"name":"Salaheddine Ghedamsi","side":"away"},{"id":65914,"name":"Ismail Laghzali","side":"away"},{"id":52444,"name":"Akram Khlifi","side":"away"},{"id":52437,"name":"Zakaria Allaoui","side":"away"},{"id":7412,"name":"Christopher Ibayi","side":"away"},{"id":214148,"name":"Youssef Hafidi","side":"away"},{"id":49681,"name":"Oussama Errahmany","side":"away"},{"id":52441,"name":"Ilias Brahimi","side":"away"},{"id":52440,"name":"Walid Lghrissi","side":"away"},{"id":49679,"name":"Hamza Afsal","side":"away"},{"id":41010,"name":"Amine El Farissi","side":"away"},{"id":49675,"name":"Soulaïman Allouch","side":"away"},{"id":49806,"name":"Mounir Elgouje","side":"away"},{"id":49673,"name":"Adam   Brika","side":"away"},{"id":49678,"name":"El Habib Brija","side":"away"},{"id":49914,"name":"Khalid Baba","side":"away"}],"players":[{"id":49918,"name":"Youness Najari","side":"home","team":"Ittihad Tanger","club":null,"role":"ATT","position":"ST","status":"fit","reason":null,"expected_return":null,"season":{"apps":3,"starts":2,"goals":2,"assists":2,"big_chances":0,"clean_sheets":0,"team_games":8,"tracked_apps":3,"tracked_starts":2},"recent":{"apps":3,"goals":2,"assists":2,"scoredIn":2,"country":0},"standout":{"opponent":"Kawkab Athletic Club Marrakech","kickoff":1791651600,"goals":1,"assists":0,"score":"1-2","won":false},"strengths":[],"tags":["in_form"],"importance":0.21,"country":null,"load":{"games":2,"minutes":113,"country":0}},{"id":93852,"name":"Ibrahima Dieng","side":"home","team":"Ittihad Tanger","club":null,"role":"ATT","position":"ST","status":"fit","reason":null,"expected_return":null,"season":{"apps":3,"starts":3,"goals":1,"assists":0,"big_chances":0,"clean_sheets":0,"team_games":8,"tracked_apps":3,"tracked_starts":3},"recent":{"apps":3,"goals":1,"assists":0,"scoredIn":0,"country":0},"standout":{"opponent":"Union Sportive Amal Tiznit","kickoff":1790280000,"goals":1,"assists":0,"score":"3-1","won":true},"strengths":[],"tags":[],"importance":0.069,"country":null,"load":{"games":2,"minutes":180,"country":0}},{"id":49934,"name":"Adil Rhaili","side":"away","team":"Maghreb Fes","club":null,"role":"DEF","position":"CB","status":"out","reason":"Knock Injury","expected_return":"2026-10-31","season":{"apps":2,"starts":2,"goals":0,"assists":0,"big_chances":0,"clean_sheets":2,"team_games":7,"tracked_apps":2,"tracked_starts":2},"recent":{"apps":5,"goals":1,"assists":0,"scoredIn":0,"country":0},"standout":null,"strengths":[],"tags":[],"importance":0.011,"country":null,"load":null},{"id":1539,"name":"Diogo Calila","side":"away","team":"Maghreb Fes","club":null,"role":"DEF","position":"RM","status":"out","reason":"Broken Foot","expected_return":"2026-11-10","season":null,"recent":null,"standout":null,"strengths":[],"tags":[],"importance":0,"country":null,"load":null},{"id":148997,"name":"Samba Mbengue","side":"away","team":"Maghreb Fes","club":null,"role":"DEF","position":"DEF","status":"out","reason":"Muscle Injury","expected_return":"2026-11-10","season":null,"recent":null,"standout":null,"strengths":[],"tags":[],"importance":0,"country":null,"load":null},{"id":49675,"name":"Soulaïman Allouch","side":"away","team":"Maghreb Fes","club":null,"role":"MID","position":"LW","status":"out","reason":"Shoulder Injury","expected_return":"2027-01-10","season":{"apps":1,"starts":0,"goals":0,"assists":0,"big_chances":0,"clean_sheets":0,"team_games":7,"tracked_apps":1,"tracked_starts":0},"recent":{"apps":5,"goals":0,"assists":0,"scoredIn":0,"country":0},"standout":null,"strengths":[],"tags":[],"importance":0,"country":null,"load":null},{"id":68224,"name":"Anas El Mahraoui","side":"away","team":"Maghreb Fes","club":null,"role":"MID","position":"RW","status":"fit","reason":null,"expected_return":null,"season":{"apps":3,"starts":2,"goals":2,"assists":0,"big_chances":0,"clean_sheets":1,"team_games":7,"tracked_apps":3,"tracked_starts":2},"recent":{"apps":3,"goals":2,"assists":0,"scoredIn":0,"country":0},"standout":{"opponent":"Hassania d'Agadir","kickoff":1791043200,"goals":1,"assists":0,"score":"2-1","won":true},"strengths":[],"tags":[],"importance":0.106,"country":null,"load":{"games":2,"minutes":152,"country":0}},{"id":105327,"name":"Tshegofatso Mabasa","side":"away","team":"Maghreb Fes","club":null,"role":"ATT","position":"ST","status":"fit","reason":null,"expected_return":null,"season":{"apps":3,"starts":3,"goals":2,"assists":0,"big_chances":0,"clean_sheets":1,"team_games":7,"tracked_apps":3,"tracked_starts":3},"recent":{"apps":3,"goals":2,"assists":0,"scoredIn":0,"country":0},"standout":{"opponent":"Hassania d'Agadir","kickoff":1791043200,"goals":1,"assists":0,"score":"2-1","won":true},"strengths":[],"tags":[],"importance":0.118,"country":null,"load":{"games":2,"minutes":180,"country":0}}],"extras":{"teams":{"home":2059,"away":2071},"split":{"home":{"above":{"w":0,"d":1,"l":1},"below":{"w":5,"d":1,"l":2}},"away":{"above":{"w":1,"d":0,"l":0},"below":{"w":5,"d":3,"l":1}}},"referee":null,"managers":{"home":{"id":1477,"name":"Abdelhak Benchikha","vs":{"w":1,"d":1,"l":0,"last":{"kickoff":1779472800,"score":"1-0","result":"W"}}},"away":{"id":1487,"name":"Rui Almeida","vs":{"w":0,"d":1,"l":1,"last":{"kickoff":1779472800,"score":"0-1","result":"L"}}}},"best_xi":[],"players":{"1539":{"caps":9,"goals":1,"country":"Mozambique","signed":null}}},"notable":[{"id":14358,"name":"Imad Riahi","goals":5,"rank":1},{"id":49638,"name":"Abderrazak Ennakouss","goals":4,"rank":2},{"id":49902,"name":"Ayoub Benaadi ","goals":3,"rank":3},{"id":68224,"name":"Anas El Mahraoui","goals":2,"rank":4},{"id":49974,"name":"Ayoub Maamouri","goals":2,"rank":5},{"id":49714,"name":"Hamza El Wasti","goals":2,"rank":6},{"id":52520,"name":"Jawad Essaghir","goals":2,"rank":7},{"id":49788,"name":"Saleh Al Sellami","goals":2,"rank":8},{"id":8059,"name":"Silvère Ganvoula","goals":2,"rank":9},{"id":105327,"name":"Tshegofatso Mabasa","goals":2,"rank":10},{"id":49918,"name":"Youness Najari","goals":2,"rank":11},{"id":14743,"name":"Youssef El Fahli","goals":2,"rank":12},{"id":73836,"name":"Zakaria Essalhi","goals":2,"rank":13},{"id":49771,"name":"Abdel Hamid Maali","goals":1,"rank":14},{"id":49663,"name":"Abdellah Ait Brayim","goals":1,"rank":15}],"round_label":"Regular season · Matchday 4","neutral":false,"h2h":{"total_matches":12,"home_wins":2,"draws":6,"away_wins":4,"home_goals":13,"away_goals":15,"avg_total_goals":2.3333333333333335,"home_win_rate":0.16666666666666666,"away_win_rate":0.3333333333333333,"recent_matches":[{"away":"Ittihad Tanger","date":"2026-05-22T18:00:00+00:00","home":"MAS de Fès","score":"0-1","event_id":207475,"away_score":1,"home_score":0,"away_team_id":2059,"home_team_id":2071},{"away":"MAS de Fès","date":"2025-10-25T15:00:00+00:00","home":"Ittihad Tanger","score":"1-1","event_id":206760,"away_score":1,"home_score":1,"away_team_id":2071,"home_team_id":2059},{"away":"Ittihad Tanger","date":"2025-03-08T22:00:00+00:00","home":"MAS de Fès","score":"1-1","event_id":230212,"away_score":1,"home_score":1,"away_team_id":2059,"home_team_id":2071},{"away":"MAS de Fès","date":"2024-11-03T19:00:00+00:00","home":"Ittihad Tanger","score":"1-1","event_id":230093,"away_score":1,"home_score":1,"away_team_id":2071,"home_team_id":2059},{"away":"Ittihad Tanger","date":"2024-03-09T19:00:00+00:00","home":"MAS de Fès","score":"2-1","event_id":239779,"away_score":1,"home_score":2,"away_team_id":2059,"home_team_id":2071},{"away":"MAS de Fès","date":"2023-11-05T15:00:00+00:00","home":"Ittihad Tanger","score":"2-2","event_id":239652,"away_score":2,"home_score":2,"away_team_id":2071,"home_team_id":2059},{"away":"Ittihad Tanger","date":"2023-04-07T22:00:00+00:00","home":"MAS de Fès","score":"0-1","event_id":250273,"away_score":1,"home_score":0,"away_team_id":2059,"home_team_id":2071},{"away":"MAS de Fès","date":"2022-10-28T17:00:00+00:00","home":"Ittihad Tanger","score":"2-3","event_id":250152,"away_score":3,"home_score":2,"away_team_id":2071,"home_team_id":2059},{"away":"MAS de Fès","date":"2022-06-29T17:00:00+00:00","home":"Ittihad Tanger","score":"1-1","event_id":263527,"away_score":1,"home_score":1,"away_team_id":2071,"home_team_id":2059},{"away":"Ittihad Tanger","date":"2021-12-25T19:30:00+00:00","home":"MAS de Fès","score":"2-1","event_id":263497,"away_score":1,"home_score":2,"away_team_id":2059,"home_team_id":2071}]},"standings":{"home":{"team_id":2059,"position":7,"played":3,"points":4,"goal_diff":1,"team_name":"Ittihad Tanger","won":1,"drawn":1,"lost":1,"goals_for":5,"goals_against":4,"group":null},"away":{"team_id":2071,"position":2,"played":3,"points":7,"goal_diff":2,"team_name":"Maghreb Fes","won":2,"drawn":1,"lost":0,"goals_for":4,"goals_against":2,"group":null},"size":16},"form":{"home":{"matches":6,"ppg":1.67,"record":"3-1-2","goals_for":1.17,"goals_against":0.83,"clean_sheets":2,"streak":"none","sequence":"WLWWDL","venue_ppg":1.33},"away":{"matches":6,"ppg":2.33,"record":"4-2-0","goals_for":1.67,"goals_against":0.5,"clean_sheets":3,"streak":"unbeaten 6","sequence":"WWDWWD","venue_ppg":2}},"ledger":[{"id":"availability.home.full_strength","section":"§2.4","tier":1,"state":"COMPUTED","note":"Ittihad Tanger report no absentees.","evidence":{"absences":0},"strength":0.2,"moves":[]},{"id":"availability.away.absences","section":"§2.4","tier":1,"state":"COMPUTED","note":"Maghreb Fes are without 4 players, none of them central to how the side plays.","evidence":{"count":4,"measured":2,"combined_goal_share":0,"combined_importance":0.011,"players":[{"player":"Adil Rhaili","role":"DEF","reason":"Knock Injury","goal_share":0,"importance":0.011,"measured":true,"doubtful":false,"cover_at_position":8},{"player":"Diogo Calila","role":"DEF","reason":"Broken Foot","goal_share":0,"importance":0.05,"measured":false,"doubtful":false,"cover_at_position":8},{"player":"Samba Mbengue","role":"DEF","reason":"Muscle Injury","goal_share":0,"importance":0.05,"measured":false,"doubtful":false,"cover_at_position":8},{"player":"Soulaïman Allouch","role":"MID","reason":"Shoulder Injury","goal_share":0,"importance":0,"measured":true,"doubtful":false,"cover_at_position":11}]},"strength":0.15,"moves":[{"channel":"goals","side":"away","pct":-0.1},{"channel":"goals","side":"home","pct":0.8},{"channel":"cards","side":"both","pct":0.2}]},{"id":"availability.lineup_confirmed","section":"§3.1","tier":1,"state":"COMPUTED","note":"The starting elevens are confirmed, so selection is known rather than guessed.","evidence":{"lineup_status":"confirmed","changes":{"home":{"n":2,"out":["Youness Najari","Senad Jarović"],"in":["Akram El Wahabi","Gape Mohutsiwa"]},"away":{"n":2,"out":["Amine El Farissi","Adam   Brika"],"in":["Devin Titus","Anas El Mahraoui"]}}},"strength":0.3,"moves":[]},{"id":"form.home","section":"§2.1","tier":2,"state":"COMPUTED","note":"Ittihad Tanger have taken 1.67 points a game from their last 6 (3W 1D 2L), scoring 1.2 and conceding 0.8, and 1.33 a game at home.","evidence":{"matches":6,"ppg":1.67,"record":"3-1-2","goals_for":1.17,"goals_against":0.83,"clean_sheets":2,"streak":"none","sequence":"WLWWDL","venue_ppg":1.33},"strength":0.211,"moves":[]},{"id":"form.away","section":"§2.1","tier":2,"state":"COMPUTED","note":"Maghreb Fes have taken 2.33 points a game from their last 6 (4W 2D 0L), scoring 1.7 and conceding 0.5, and 2.00 a game on the road.","evidence":{"matches":6,"ppg":2.33,"record":"4-2-0","goals_for":1.67,"goals_against":0.5,"clean_sheets":3,"streak":"unbeaten 6","sequence":"WWDWWD","venue_ppg":2},"strength":0.656,"moves":[]},{"id":"stakes.season","section":"§5.1","tier":2,"state":"COMPUTED","note":"Nothing much riding on this one for either side yet.","evidence":{"games_left":26,"home":{"state":"mid_table","position":7,"points":4,"games_left":26,"gap_to_leader":3,"gap_to_safety":1,"gap_to_europe":2},"away":{"state":"mid_table","position":2,"points":7,"games_left":26,"gap_to_leader":0,"gap_to_safety":4,"gap_to_europe":-1},"six_pointer":false},"strength":0,"moves":[]},{"id":"fixture.derby","section":"§5.2","tier":2,"state":"COMPUTED","note":"Not a local derby.","evidence":{"derby":false},"strength":0,"moves":[]},{"id":"fixture.revenge","section":"§5.3","tier":2,"state":"COMPUTED","note":"The reverse fixture finished 0-1, too close to carry a revenge motive.","evidence":{"reverse_margin":1},"strength":0,"moves":[]},{"id":"manager.home.established","section":"§1.1","tier":3,"state":"COMPUTED","note":"Abdelhak Benchikha has 36 matches in charge at Ittihad Tanger, long enough that the side plays the way he wants it to.","evidence":{"manager":"Abdelhak Benchikha","matches_in_charge":36,"tenure_days":398,"ppm":1.36,"appointment_effect":{"before_ppm":1.4,"after_ppm":1.2,"delta":null}},"strength":0.1,"moves":[]},{"id":"manager.away.settling","section":"§1.1","tier":3,"state":"COMPUTED","note":"Rui Almeida is 11 games into the job at Maghreb Fes, past the bounce window, where an early lift usually fades back toward the side's real level.","evidence":{"manager":"Rui Almeida","matches_in_charge":11,"tenure_days":120,"ppm":2.18,"appointment_effect":{"before_ppm":1.8,"after_ppm":2.3,"delta":null}},"strength":0.3,"moves":[]},{"id":"fatigue.home","section":"§2.8","tier":4,"state":"COMPUTED","note":"Ittihad Tanger come in on 4 days' rest, with nothing unusual in the schedule behind them.","evidence":{"daysRest":4.125,"matchesIn7":1,"matchesIn14":2,"days_rest":4.1},"strength":0.1,"moves":[]},{"id":"fatigue.away","section":"§2.8","tier":4,"state":"COMPUTED","note":"Maghreb Fes come in on 6 days' rest, with nothing unusual in the schedule behind them.","evidence":{"daysRest":6,"matchesIn7":1,"matchesIn14":2,"days_rest":6},"strength":0.1,"moves":[]},{"id":"style.opponent_adjustment","section":"§4.1","tier":5,"state":"COMPUTED","note":"Team strength is estimated against the actual quality of opponents faced, so a soft run of fixtures does not read as form.","evidence":{"home":{"attack":-0.031,"defence":0.02,"effective_matches":11.4,"shrunk":0.41},"away":{"attack":0.019,"defence":0.197,"effective_matches":11.5,"shrunk":0.41}},"strength":0.2,"moves":[]},{"id":"style.matchup","section":"§4.2","tier":5,"state":"COMPUTED","note":"Maghreb Fes average 11 points more possession than Ittihad Tanger, so this should be one side with the ball and one without it; Ittihad Tanger work noticeably more of their attacks into wide areas.","evidence":{"home":{"matches":12,"possession":48.3,"shots":9.2,"xg_per_shot":0.095,"corners":4.6,"corners_per_shot":0.499,"finishing_vs_xg":0.21},"away":{"matches":12,"possession":59.7,"shots":10.9,"xg_per_shot":0.099,"corners":3.3,"corners_per_shot":0.303,"finishing_vs_xg":0.34},"possession_gap":-11.4},"strength":0.457,"moves":[{"channel":"corners","side":"away","pct":2.4},{"channel":"corners","side":"home","pct":-2.4}]},{"id":"style.press_matchup","section":"§4.2","tier":5,"state":"UNAVAILABLE","note":"Pressing intensity and defensive line height are not in the ingested stats, so the press matchup is not assessed. Possession is not a substitute for PPDA and is not used as one.","evidence":{"requires":["ppda","defensive_line_height"]},"strength":0,"moves":[]},{"id":"style.finishing.home","section":"§2.1","tier":5,"state":"COMPUTED","note":"Ittihad Tanger are scoring about what their chances are worth.","evidence":{"goals_minus_xg_per_match":0.21,"matches":12},"strength":0.1,"moves":[]},{"id":"style.finishing.away","section":"§2.1","tier":5,"state":"COMPUTED","note":"Maghreb Fes have scored 4 more than the chances they made over 12 games, a gap that usually closes rather than holds.","evidence":{"goals_minus_xg_per_match":0.34,"matches":12},"strength":0.25,"moves":[]},{"id":"referee.tendency","section":"§13","tier":5,"state":"UNAVAILABLE","note":"No referee appointed or recorded for this fixture yet.","evidence":{},"strength":0,"moves":[]},{"id":"fatigue.travel","section":"§6.4","tier":6,"state":"COMPUTED","note":"Routine trip of 210 km for Maghreb Fes.","evidence":{"travel_km":210},"strength":0,"moves":[]},{"id":"environment.weather","section":"§6.2","tier":6,"state":"UNAVAILABLE","note":"No weather reported for this fixture.","evidence":{},"strength":0,"moves":[]},{"id":"environment.pitch","section":"§6.3","tier":6,"state":"UNAVAILABLE","note":"No pitch condition reported for this fixture.","evidence":{},"strength":0,"moves":[]},{"id":"environment.venue","section":"§6.1","tier":6,"state":"UNAVAILABLE","note":"Attendance is only published after kickoff, so crowd size cannot be assessed in advance. Home advantage is carried by the fitted rating rather than estimated here.","evidence":{"home_adv":-0.021658728949653323},"strength":0,"moves":[]},{"id":"market.overround","section":"§7.3","tier":7,"state":"COMPUTED","note":"The bookmakers are taking a 11.3% cut on this match. The bigger their cut, the further out a price has to be before it is worth backing.","evidence":{"overround":1.1125,"margin_pct":11.25,"devig_method":"shin","books_quoting":3},"strength":0.2,"moves":[]},{"id":"market.movement","section":"§7.1","tier":7,"state":"COMPUTED","note":"Since opening, HOME has shortened 33.5% since the market opened.","evidence":{"moves":[{"outcome":"HOME","move_pct":33.5,"direction":"SHORTENING"},{"outcome":"AWAY","move_pct":-14.1,"direction":"DRIFTING"},{"outcome":"DRAW","move_pct":-1.7,"direction":"SHORTENING"}]},"strength":0.6,"moves":[]},{"id":"market.sharp_reference","section":"§7.1","tier":7,"state":"COMPUTED","note":"The sharp book makes DRAW 4.4 points more likely than the wider market does.","evidence":{"sharp":{"HOME":0.2554,"DRAW":0.385,"AWAY":0.3595},"consensus":{"HOME":0.2815,"DRAW":0.3412,"AWAY":0.3773},"largest_gap":{"outcome":"DRAW","points":4.38},"sharp_overround":1.0914},"strength":0.547,"moves":[]},{"id":"market.prediction_market","section":"§7.2","tier":7,"state":"UNAVAILABLE","note":"No prediction-market prices for this fixture.","evidence":{},"strength":0,"moves":[]}],"markets":[{"market":"1x2","line":null,"confidence":0.698,"model":{"HOME":0.2681,"DRAW":0.3389,"AWAY":0.3931},"book":{"HOME":0.2815,"DRAW":0.3412,"AWAY":0.3773},"best":{"HOME":{"odds":3.52,"bookmaker":"Pinnacle"},"DRAW":{"odds":2.9,"bookmaker":"BetVictor"},"AWAY":{"odds":2.56,"bookmaker":"Pinnacle"}},"overround":1.1125,"books":14,"sharp":{"book":"pinnacle","fair":{"HOME":0.2554,"DRAW":0.385,"AWAY":0.3595}},"open":{"book":"pinnacle","fair":{"HOME":0.1859,"DRAW":0.392,"AWAY":0.4221}}},{"market":"double_chance","line":null,"confidence":0.698,"model":{"12":0.6611,"1X":0.6069,"X2":0.7319},"book":{"12":0.6588,"1X":0.6227,"X2":0.7185},"best":{"12":{"odds":1.4,"bookmaker":"William Hill"},"1X":{"odds":1.53,"bookmaker":"betfair"},"X2":{"odds":1.35,"bookmaker":"William Hill"}},"overround":1.0543,"books":5,"sharp":{"book":"pinnacle","fair":{"12":0.615,"1X":0.6405,"X2":0.7446}},"open":{"book":"pinnacle","fair":{"12":0.608,"1X":0.5779,"X2":0.8141}}},{"market":"draw_no_bet","line":null,"confidence":0.698,"model":{"HOME":0.4055,"AWAY":0.5945},"book":{"HOME":0.4273,"AWAY":0.5727},"best":{"HOME":{"odds":2.5,"bookmaker":"Novibet"},"AWAY":{"odds":1.727,"bookmaker":"10bet"}},"overround":1.0849,"books":12,"sharp":{"book":"pinnacle","fair":{"HOME":0.4154,"AWAY":0.5846}},"open":{"book":"pinnacle","fair":{"HOME":0.3057,"AWAY":0.6943}}},{"market":"btts","line":null,"confidence":0.698,"model":{"yes":0.4151,"no":0.5849},"book":{"yes":0.4484,"no":0.5516},"best":{"yes":{"odds":2.1,"bookmaker":"888Sport"},"no":{"odds":1.78,"bookmaker":"Unibet"}},"overround":1.087,"books":16,"sharp":{"book":"betfair","fair":{"yes":0.4707,"no":0.5293}},"open":{"book":"betfair","fair":{"yes":0.461,"no":0.539}}},{"market":"over_under_05","line":0.5,"confidence":0.698,"model":{"over":0.8492,"under":0.1508},"book":{"over":0.8951,"under":0.1049},"best":{"over":{"odds":1.08,"bookmaker":"1xBet"},"under":{"odds":7.5,"bookmaker":"betfair"}},"overround":1.0841,"books":3,"sharp":{"book":"betfair","fair":{"over":0.905,"under":0.095}},"open":{"book":"betfair","fair":{"over":0.8959,"under":0.1041}}},{"market":"over_under_15","line":1.5,"confidence":0.698,"model":{"over":0.6153,"under":0.3847},"book":{"over":0.636,"under":0.364},"best":{"over":{"odds":1.51,"bookmaker":"BetVictor"},"under":{"odds":2.55,"bookmaker":"betfair"}},"overround":1.0808,"books":4,"sharp":{"book":"pinnacle","fair":{"over":0.634,"under":0.366}},"open":{"book":"pinnacle","fair":{"over":0.6331,"under":0.3669}}},{"market":"over_under_25","line":2.5,"confidence":0.698,"model":{"over":0.3273,"under":0.6727},"book":{"over":0.3499,"under":0.6501},"best":{"over":{"odds":2.64,"bookmaker":"Pinnacle"},"under":{"odds":1.47,"bookmaker":"Bet365"}},"overround":1.0794,"books":5,"sharp":{"book":"pinnacle","fair":{"over":0.3422,"under":0.6578}},"open":{"book":"pinnacle","fair":{"over":0.3331,"under":0.6669}}},{"market":"over_under_35","line":3.5,"confidence":0.698,"model":{"over":0.1455,"under":0.8545},"book":{"over":0.1481,"under":0.8519},"best":{"over":{"odds":5.5,"bookmaker":"betfair"},"under":{"odds":1.13,"bookmaker":"BetVictor"}},"overround":1.0861,"books":3,"sharp":{"book":"betfair","fair":{"over":0.1405,"under":0.8595}},"open":{"book":"betfair","fair":{"over":0.1405,"under":0.8595}}},{"market":"asian_handicap","line":-1.5,"confidence":0.698,"model":{"HOME":0.0972,"AWAY":0.9028},"book":{"HOME":0.0986,"AWAY":0.9014},"best":{"HOME":{"odds":7.7,"bookmaker":"1xBet"},"AWAY":{"odds":1.1,"bookmaker":"Bet365"}},"overround":1.0799,"books":3,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.0899,"AWAY":0.9101}}},{"market":"asian_handicap","line":-1.25,"confidence":0.698,"model":{"HOME":0.1063,"AWAY":0.8937},"book":{"HOME":0.1127,"AWAY":0.8873},"best":{"HOME":{"odds":7.1,"bookmaker":"1xBet"},"AWAY":{"odds":1.115,"bookmaker":"Bet365"}},"overround":1.0744,"books":2,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.1102,"AWAY":0.8898}}},{"market":"asian_handicap","line":-1,"confidence":0.698,"model":{"HOME":0.1172,"AWAY":0.8828},"book":{"HOME":0.1239,"AWAY":0.8761},"best":{"HOME":{"odds":6.55,"bookmaker":"1xBet"},"AWAY":{"odds":1.14,"bookmaker":"Bet365"}},"overround":1.0803,"books":3,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.0927,"AWAY":0.9073}}},{"market":"asian_handicap","line":-0.75,"confidence":0.698,"model":{"HOME":0.1997,"AWAY":0.8003},"book":{"HOME":0.218,"AWAY":0.782},"best":{"HOME":{"odds":4.15,"bookmaker":"1xBet"},"AWAY":{"odds":1.26,"bookmaker":"Bet365"}},"overround":1.0805,"books":2,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.1683,"AWAY":0.8317}}},{"market":"asian_handicap","line":-0.5,"confidence":0.698,"model":{"HOME":0.2681,"AWAY":0.7319},"book":{"HOME":0.3183,"AWAY":0.6817},"best":{"HOME":{"odds":2.85,"bookmaker":"Bet365"},"AWAY":{"odds":1.4,"bookmaker":"Bet365"}},"overround":1.0652,"books":1,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.2603,"AWAY":0.7397}}},{"market":"asian_handicap","line":-0.25,"confidence":0.698,"model":{"HOME":0.3227,"AWAY":0.6773},"book":{"HOME":0.3584,"AWAY":0.6416},"best":{"HOME":{"odds":2.65,"bookmaker":"1xBet"},"AWAY":{"odds":1.525,"bookmaker":"Bet365"}},"overround":1.0792,"books":2,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.2833,"AWAY":0.7167}}},{"market":"asian_handicap","line":0,"confidence":0.698,"model":{"HOME":0.4055,"AWAY":0.5945},"book":{"HOME":0.4281,"AWAY":0.5719},"best":{"HOME":{"odds":2.55,"bookmaker":"Novibet"},"AWAY":{"odds":1.75,"bookmaker":"Bet365"}},"overround":1.078,"books":5,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.3705,"AWAY":0.6295}}},{"market":"asian_handicap","line":0.25,"confidence":0.698,"model":{"HOME":0.5267,"AWAY":0.4733},"book":{"HOME":0.5386,"AWAY":0.4614},"best":{"HOME":{"odds":1.9,"bookmaker":"Novibet"},"AWAY":{"odds":2.15,"bookmaker":"Bet365"}},"overround":1.0778,"books":3,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.4831,"AWAY":0.5169}}},{"market":"asian_handicap","line":0.5,"confidence":0.698,"model":{"HOME":0.6069,"AWAY":0.3931},"book":{"HOME":0.6271,"AWAY":0.3729},"best":{"HOME":{"odds":1.63,"bookmaker":"Novibet"},"AWAY":{"odds":2.5,"bookmaker":"888Sport"}},"overround":1.0819,"books":5,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.5725,"AWAY":0.4275}}},{"market":"asian_handicap","line":0.75,"confidence":0.698,"model":{"HOME":0.6826,"AWAY":0.3174},"book":{"HOME":0.6946,"AWAY":0.3054},"best":{"HOME":{"odds":1.45,"bookmaker":"Novibet"},"AWAY":{"odds":3.1,"bookmaker":"Bet365"}},"overround":1.0764,"books":3,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.6481,"AWAY":0.3519}}},{"market":"asian_handicap","line":1,"confidence":0.698,"model":{"HOME":0.7799,"AWAY":0.2201},"book":{"HOME":0.8132,"AWAY":0.1868},"best":{"HOME":{"odds":1.19,"bookmaker":"Bet365"},"AWAY":{"odds":4.5,"bookmaker":"Bet365"}},"overround":1.0847,"books":3,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.7501,"AWAY":0.2499}}},{"market":"asian_handicap","line":1.25,"confidence":0.698,"model":{"HOME":0.8074,"AWAY":0.1926},"book":{"HOME":0.8385,"AWAY":0.1615},"best":{"HOME":{"odds":1.16,"bookmaker":"Bet365"},"AWAY":{"odds":5.25,"bookmaker":"Bet365"}},"overround":1.0743,"books":2,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.7813,"AWAY":0.2187}}},{"market":"asian_handicap","line":1.5,"confidence":0.698,"model":{"HOME":0.8287,"AWAY":0.1713},"book":{"HOME":0.856,"AWAY":0.144},"best":{"HOME":{"odds":1.14,"bookmaker":"Bet365"},"AWAY":{"odds":5.75,"bookmaker":"Bet365"}},"overround":1.0733,"books":2,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.8091,"AWAY":0.1909}}},{"market":"asian_handicap","line":1.75,"confidence":0.698,"model":{"HOME":0.8801,"AWAY":0.1199},"book":{"HOME":0.9145,"AWAY":0.0855},"best":{"HOME":{"odds":1.042,"bookmaker":"1xBet"},"AWAY":{"odds":7.65,"bookmaker":"1xBet"}},"overround":1.0904,"books":1,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.8661,"AWAY":0.1339}}},{"market":"asian_handicap","line":2,"confidence":0.698,"model":{"HOME":0.9383,"AWAY":0.0617},"book":{"HOME":0.945,"AWAY":0.055},"best":{"HOME":{"odds":1.01,"bookmaker":"1xBet"},"AWAY":{"odds":10,"bookmaker":"1xBet"}},"overround":1.0901,"books":1,"sharp":null,"open":{"book":"consensus","fair":{"HOME":0.9324,"AWAY":0.0676}}},{"market":"total_corners","line":7.5,"confidence":0.698,"model":{"over":0.4738,"under":0.5262},"book":{"over":0.6335,"under":0.3665},"best":{"over":{"odds":1.47,"bookmaker":"1xBet"},"under":{"odds":2.42,"bookmaker":"1xBet"}},"overround":1.0935,"books":1,"sharp":null,"open":{"book":"consensus","fair":{"over":0.6335,"under":0.3665}}},{"market":"total_corners","line":8.5,"confidence":0.698,"model":{"over":0.3511,"under":0.6489},"book":{"over":0.4821,"under":0.5179},"best":{"over":{"odds":1.89,"bookmaker":"1xBet"},"under":{"odds":1.77,"bookmaker":"1xBet"}},"overround":1.0941,"books":1,"sharp":null,"open":{"book":"consensus","fair":{"over":0.4821,"under":0.5179}}},{"market":"total_corners","line":9.5,"confidence":0.698,"model":{"over":0.247,"under":0.753},"book":{"over":0.3377,"under":0.6623},"best":{"over":{"odds":2.6,"bookmaker":"1xBet"},"under":{"odds":1.41,"bookmaker":"1xBet"}},"overround":1.0938,"books":1,"sharp":null,"open":{"book":"consensus","fair":{"over":0.3377,"under":0.6623}}},{"market":"corners_1x2","line":null,"confidence":0.558,"model":{"HOME":0.5946,"DRAW":0.1251,"AWAY":0.2804},"book":{},"best":{},"overround":1,"books":0,"sharp":null,"open":null},{"market":"red_card","line":null,"confidence":0.488,"model":{"yes":0.2337,"no":0.7663},"book":{},"best":{},"overround":1,"books":0,"sharp":null,"open":null}],"candidates":[{"market":"total_corners","outcome":"under","line":7.5,"push":null,"model_prob":0.5262,"book_prob":0.3665,"edge":0.1597,"shrunk_edge":0.0879,"odds":2.42,"bookmaker":"1xBet","prices":[{"slug":"1xbet","book":"1xBet","odds":2.42}],"kelly":0.0481,"confidence":0.698,"family":"corners"},{"market":"total_corners","outcome":"under","line":8.5,"push":null,"model_prob":0.6489,"book_prob":0.5179,"edge":0.1309,"shrunk_edge":0.072,"odds":1.77,"bookmaker":"1xBet","prices":[{"slug":"1xbet","book":"1xBet","odds":1.77}],"kelly":0.0482,"confidence":0.698,"family":"corners"},{"market":"total_corners","outcome":"under","line":9.5,"push":null,"model_prob":0.753,"book_prob":0.6623,"edge":0.0907,"shrunk_edge":0.0499,"odds":1.41,"bookmaker":"1xBet","prices":[{"slug":"1xbet","book":"1xBet","odds":1.41}],"kelly":0.0376,"confidence":0.698,"family":"corners"},{"market":"over_under_05","outcome":"under","line":0.5,"push":null,"model_prob":0.1508,"book_prob":0.1049,"edge":0.0458,"shrunk_edge":0.039,"odds":7.5,"bookmaker":"betfair","prices":[{"slug":"betfair","book":"betfair","odds":7.5},{"slug":"betvictor","book":"BetVictor","odds":7},{"slug":"1xbet","book":"1xBet","odds":5.5}],"kelly":0.005,"confidence":0.698,"family":"goals"},{"market":"asian_handicap","outcome":"AWAY","line":-0.5,"push":"none","model_prob":0.7319,"book_prob":0.6817,"edge":0.0502,"shrunk_edge":0.0377,"odds":1.4,"bookmaker":"Bet365","prices":[{"slug":"bet365","book":"Bet365","odds":1.4}],"kelly":0.0154,"confidence":0.698,"family":"handicap"},{"market":"btts","outcome":"no","line":null,"push":null,"model_prob":0.5849,"book_prob":0.5516,"edge":0.0333,"shrunk_edge":0.0283,"odds":1.78,"bookmaker":"Unibet","prices":[{"slug":"unibet","book":"Unibet","odds":1.78},{"slug":"betway","book":"Betway","odds":1.775},{"slug":"betfair","book":"betfair","odds":1.75},{"slug":"1xbet","book":"1xBet","odds":1.68},{"slug":"novibet","book":"Novibet","odds":1.68},{"slug":"betano","book":"Betano","odds":1.67},{"slug":"fonbet","book":"fonbet","odds":1.67},{"slug":"10bet","book":"10bet","odds":1.666},{"slug":"bwin","book":"Bwin","odds":1.66},{"slug":"sportingbet","book":"SportingBet","odds":1.66},{"slug":"bet365","book":"Bet365","odds":1.66},{"slug":"vistabet","book":"Vistabet","odds":1.66}],"kelly":0.0132,"confidence":0.698,"family":"goals"},{"market":"asian_handicap","outcome":"AWAY","line":-0.25,"push":"half","model_prob":0.6773,"book_prob":0.6416,"edge":0.0357,"shrunk_edge":0.0268,"odds":1.525,"bookmaker":"Bet365","prices":[{"slug":"bet365","book":"Bet365","odds":1.525},{"slug":"1xbet","book":"1xBet","odds":1.393}],"kelly":0.0156,"confidence":0.698,"family":"handicap"},{"market":"asian_handicap","outcome":"AWAY","line":1.75,"push":"half","model_prob":0.1199,"book_prob":0.0855,"edge":0.0344,"shrunk_edge":0.0258,"odds":7.65,"bookmaker":"1xBet","prices":[{"slug":"1xbet","book":"1xBet","odds":7.65}],"kelly":0,"confidence":0.698,"family":"handicap"},{"market":"asian_handicap","outcome":"AWAY","line":1,"push":"full","model_prob":0.2201,"book_prob":0.1868,"edge":0.0333,"shrunk_edge":0.025,"odds":4.5,"bookmaker":"Bet365","prices":[{"slug":"bet365","book":"Bet365","odds":4.5},{"slug":"fonbet","book":"fonbet","odds":4.3},{"slug":"1xbet","book":"1xBet","odds":4.25}],"kelly":0,"confidence":0.698,"family":"handicap"},{"market":"asian_handicap","outcome":"AWAY","line":1.25,"push":"half","model_prob":0.1926,"book_prob":0.1615,"edge":0.0311,"shrunk_edge":0.0233,"odds":5.25,"bookmaker":"Bet365","prices":[{"slug":"bet365","book":"Bet365","odds":5.25},{"slug":"1xbet","book":"1xBet","odds":4.75}],"kelly":0.0007,"confidence":0.698,"family":"handicap"},{"market":"asian_handicap","outcome":"AWAY","line":1.5,"push":"none","model_prob":0.1713,"book_prob":0.144,"edge":0.0272,"shrunk_edge":0.0204,"odds":5.75,"bookmaker":"Bet365","prices":[{"slug":"bet365","book":"Bet365","odds":5.75},{"slug":"1xbet","book":"1xBet","odds":5.25}],"kelly":0,"confidence":0.698,"family":"handicap"},{"market":"over_under_25","outcome":"under","line":2.5,"push":null,"model_prob":0.6727,"book_prob":0.6501,"edge":0.0226,"shrunk_edge":0.0192,"odds":1.47,"bookmaker":"Bet365","prices":[{"slug":"bet365","book":"Bet365","odds":1.47},{"slug":"betvictor","book":"BetVictor","odds":1.47},{"slug":"betfair","book":"betfair","odds":1.45},{"slug":"pinnacle","book":"Pinnacle","odds":1.44},{"slug":"1xbet","book":"1xBet","odds":1.43}],"kelly":0,"confidence":0.698,"family":"goals"},{"market":"over_under_15","outcome":"under","line":1.5,"push":null,"model_prob":0.3847,"book_prob":0.364,"edge":0.0207,"shrunk_edge":0.0176,"odds":2.55,"bookmaker":"betfair","prices":[{"slug":"betfair","book":"betfair","odds":2.55},{"slug":"pinnacle","book":"Pinnacle","odds":2.48},{"slug":"1xbet","book":"1xBet","odds":2.44},{"slug":"betvictor","book":"BetVictor","odds":2.34}],"kelly":0,"confidence":0.698,"family":"goals"},{"market":"draw_no_bet","outcome":"AWAY","line":null,"push":null,"model_prob":0.5945,"book_prob":0.5727,"edge":0.0219,"shrunk_edge":0.0175,"odds":1.727,"bookmaker":"10bet","prices":[{"slug":"10bet","book":"10bet","odds":1.727},{"slug":"betsson","book":"Betsson","odds":1.71},{"slug":"unibet","book":"Unibet","odds":1.7},{"slug":"888sport","book":"888Sport","odds":1.7},{"slug":"william-hill","book":"William Hill","odds":1.7},{"slug":"betano","book":"Betano","odds":1.67},{"slug":"bet365","book":"Bet365","odds":1.667},{"slug":"bwin","book":"Bwin","odds":1.65},{"slug":"sportingbet","book":"SportingBet","odds":1.65},{"slug":"betway","book":"Betway","odds":1.65},{"slug":"vistabet","book":"Vistabet","odds":1.65},{"slug":"novibet","book":"Novibet","odds":1.46}],"kelly":0.0092,"confidence":0.698,"family":"result"},{"market":"asian_handicap","outcome":"AWAY","line":0,"push":"full","model_prob":0.5945,"book_prob":0.5719,"edge":0.0227,"shrunk_edge":0.017,"odds":1.75,"bookmaker":"Bet365","prices":[{"slug":"bet365","book":"Bet365","odds":1.75},{"slug":"10bet","book":"10bet","odds":1.7},{"slug":"fonbet","book":"fonbet","odds":1.65},{"slug":"1xbet","book":"1xBet","odds":1.61},{"slug":"novibet","book":"Novibet","odds":1.47}],"kelly":0.0135,"confidence":0.698,"family":"handicap"},{"market":"asian_handicap","outcome":"AWAY","line":0.5,"push":"none","model_prob":0.3931,"book_prob":0.3729,"edge":0.0202,"shrunk_edge":0.0151,"odds":2.5,"bookmaker":"888Sport","prices":[{"slug":"888sport","book":"888Sport","odds":2.5},{"slug":"william-hill","book":"William Hill","odds":2.5},{"slug":"bet365","book":"Bet365","odds":2.5},{"slug":"unibet","book":"Unibet","odds":2.45},{"slug":"novibet","book":"Novibet","odds":2.15}],"kelly":0,"confidence":0.698,"family":"handicap"},{"market":"asian_handicap","outcome":"AWAY","line":-0.75,"push":"half","model_prob":0.8003,"book_prob":0.782,"edge":0.0183,"shrunk_edge":0.0137,"odds":1.26,"bookmaker":"Bet365","prices":[{"slug":"bet365","book":"Bet365","odds":1.26},{"slug":"1xbet","book":"1xBet","odds":1.158}],"kelly":0.0081,"confidence":0.698,"family":"handicap"},{"market":"1x2","outcome":"AWAY","line":null,"push":null,"model_prob":0.3931,"book_prob":0.3773,"edge":0.0158,"shrunk_edge":0.0127,"odds":2.56,"bookmaker":"Pinnacle","prices":[{"slug":"pinnacle","book":"Pinnacle","odds":2.56},{"slug":"interwetten","book":"Interwetten","odds":2.5},{"slug":"bet365","book":"Bet365","odds":2.5},{"slug":"cashpoint","book":"Cashpoint","odds":2.5},{"slug":"dafabet","book":"dafabet","odds":2.46},{"slug":"william-hill","book":"William Hill","odds":2.45},{"slug":"1xbet","book":"1xBet","odds":2.4},{"slug":"betfair","book":"betfair","odds":2.4},{"slug":"betvictor","book":"BetVictor","odds":2.38},{"slug":"bwin","book":"Bwin","odds":2.37},{"slug":"coral","book":"coral","odds":2.37},{"slug":"ladbrokes","book":"ladbrokes","odds":2.37}],"kelly":0.001,"confidence":0.698,"family":"result"},{"market":"double_chance","outcome":"X2","line":null,"push":null,"model_prob":0.7319,"book_prob":0.7185,"edge":0.0135,"shrunk_edge":0.0108,"odds":1.35,"bookmaker":"William Hill","prices":[{"slug":"william-hill","book":"William Hill","odds":1.35},{"slug":"betvictor","book":"BetVictor","odds":1.33},{"slug":"betfair","book":"betfair","odds":1.3},{"slug":"sbo","book":"Sbo","odds":1.24},{"slug":"1xbet","book":"1xBet","odds":1.23}],"kelly":0,"confidence":0.698,"family":"result"},{"market":"asian_handicap","outcome":"AWAY","line":0.75,"push":"half","model_prob":0.3174,"book_prob":0.3054,"edge":0.0119,"shrunk_edge":0.009,"odds":3.1,"bookmaker":"Bet365","prices":[{"slug":"bet365","book":"Bet365","odds":3.1},{"slug":"1xbet","book":"1xBet","odds":2.971},{"slug":"novibet","book":"Novibet","odds":2.65}],"kelly":0,"confidence":0.698,"family":"handicap"},{"market":"asian_handicap","outcome":"AWAY","line":0.25,"push":"half","model_prob":0.4733,"book_prob":0.4614,"edge":0.0118,"shrunk_edge":0.0089,"odds":2.15,"bookmaker":"Bet365","prices":[{"slug":"bet365","book":"Bet365","odds":2.15},{"slug":"1xbet","book":"1xBet","odds":2},{"slug":"novibet","book":"Novibet","odds":1.83}],"kelly":0.0038,"confidence":0.698,"family":"handicap"},{"market":"asian_handicap","outcome":"AWAY","line":2,"push":"full","model_prob":0.0617,"book_prob":0.055,"edge":0.0067,"shrunk_edge":0.0051,"odds":10,"bookmaker":"1xBet","prices":[{"slug":"1xbet","book":"1xBet","odds":10}],"kelly":0,"confidence":0.698,"family":"handicap"},{"market":"asian_handicap","outcome":"AWAY","line":-1,"push":"full","model_prob":0.8828,"book_prob":0.8761,"edge":0.0066,"shrunk_edge":0.005,"odds":1.14,"bookmaker":"Bet365","prices":[{"slug":"bet365","book":"Bet365","odds":1.14},{"slug":"fonbet","book":"fonbet","odds":1.07},{"slug":"1xbet","book":"1xBet","odds":1.05}],"kelly":0.0114,"confidence":0.698,"family":"handicap"},{"market":"asian_handicap","outcome":"AWAY","line":-1.25,"push":"half","model_prob":0.8937,"book_prob":0.8873,"edge":0.0065,"shrunk_edge":0.0049,"odds":1.115,"bookmaker":"Bet365","prices":[{"slug":"bet365","book":"Bet365","odds":1.115},{"slug":"1xbet","book":"1xBet","odds":1.037}],"kelly":0,"confidence":0.698,"family":"handicap"},{"market":"over_under_35","outcome":"under","line":3.5,"push":null,"model_prob":0.8545,"book_prob":0.8519,"edge":0.0026,"shrunk_edge":0.0022,"odds":1.13,"bookmaker":"BetVictor","prices":[{"slug":"betvictor","book":"BetVictor","odds":1.13},{"slug":"1xbet","book":"1xBet","odds":1.12},{"slug":"betfair","book":"betfair","odds":1.11}],"kelly":0,"confidence":0.698,"family":"goals"}],"verdicts":[],"pass_reason":"call rule: drift","preview":null,"external":{"bsd_prediction":{"id":4874,"created_at":"2026-10-08T02:15:22Z","event":{"id":606060,"event_date":"2026-10-14T20:00:00Z","status":"notstarted","home_team_id":2059,"home_team":"Ittihad Tanger","away_team_id":2071,"away_team":"Maghreb Fes","league_id":53,"league_name":"Botola Pro"},"markets":{"match_result":{"prob_home":28.8,"prob_draw":33.6,"prob_away":37.7,"predicted":"A"},"expected_goals":{"home":0.91,"away":1.25},"over_under":{"prob_over_15":62.5,"prob_over_25":36.4,"prob_over_35":17.7},"btts":{"prob_yes":45.1},"score":{"most_likely":"0-1"},"draw_no_bet":{"prob_home":36.2},"corners":{"prob_over_85":49.5,"prob_over_95":37.8,"prob_over_105":25.9}},"recommendations":{"favorite":"A","favorite_prob":37.7,"bet_favorite":false,"over_15":false,"over_25":false,"over_35":false,"btts":false,"winner":false},"model":{"confidence":0.3766,"version":"dc-blend-v1"}}},"computed_at":1792006340,"report":{"fetched_at":1792015427,"ht":[0,1],"attendance":null,"highlights":[],"events":[{"t":"card","minute":2,"added":null,"side":"away","player":"K. Baba","player_id":49914,"card":"yellow","reason":null},{"t":"sub","minute":25,"added":null,"side":"home","in":"H. E. Moudene","in_id":49860,"out":"Y. Najari","out_id":49918},{"t":"goal","minute":32,"added":null,"side":"away","player":"C. Ibayi","player_id":7412,"assist":"K. Baba","kind":"regular","score":[0,1]},{"t":"card","minute":45,"added":null,"side":"home","player":"H. E. Moudene","player_id":49860,"card":"yellow","reason":null},{"t":"card","minute":53,"added":null,"side":"home","player":"M. Saoud","player_id":49762,"card":"yellow","reason":null},{"t":"sub","minute":61,"added":null,"side":"away","in":"T. Mabasa","in_id":105327,"out":"C. Ibayi","out_id":7412},{"t":"sub","minute":70,"added":null,"side":"home","in":"H. Bakhlakh","in_id":60364,"out":"M. E. Arouch","out_id":49766},{"t":"card","minute":70,"added":null,"side":"home","player":"G. Mohutsiwa","player_id":15563,"card":"yellow","reason":null},{"t":"goal","minute":74,"added":null,"side":"home","player":"M. Saoud","player_id":49762,"assist":null,"kind":"regular","score":[1,1]},{"t":"card","minute":76,"added":null,"side":"home","player":"A. H. Maali","player_id":49771,"card":"yellow","reason":null},{"t":"sub","minute":77,"added":null,"side":"away","in":"H. A. Allal","in_id":49667,"out":"D. Titus","out_id":186019},{"t":"goal","minute":77,"added":null,"side":"home","player":"H. E. Moudene","player_id":49860,"assist":null,"kind":"regular","score":[2,1]},{"t":"card","minute":78,"added":null,"side":"away","player":"A. Harmach","player_id":49671,"card":"yellow","reason":null},{"t":"sub","minute":83,"added":null,"side":"home","in":"S. A. Khorsa","in_id":49669,"out":"M. Saoud","out_id":49762},{"t":"sub","minute":85,"added":null,"side":"home","in":"E. E. Bellali","in_id":49767,"out":"A. H. Maali","out_id":49771},{"t":"sub","minute":85,"added":null,"side":"home","in":"A. E. Wahabi","in_id":49776,"out":"S. Ahannach","out_id":49827},{"t":"sub","minute":88,"added":null,"side":"away","in":"N. Ouédraogo","in_id":218187,"out":"M. Jaouab","out_id":29041}],"players":[{"id":93852,"team_id":2059,"minutes":90,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":16929,"team_id":2059,"minutes":90,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49760,"team_id":2059,"minutes":90,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49761,"team_id":2059,"minutes":90,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":36818,"team_id":2059,"minutes":90,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":15563,"team_id":2059,"minutes":90,"rating":null,"goals":0,"assists":0,"yellow":1,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49827,"team_id":2059,"minutes":85,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49771,"team_id":2059,"minutes":85,"rating":null,"goals":0,"assists":0,"yellow":1,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49762,"team_id":2059,"minutes":83,"rating":null,"goals":1,"assists":0,"yellow":1,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49766,"team_id":2059,"minutes":70,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49860,"team_id":2059,"minutes":65,"rating":null,"goals":1,"assists":0,"yellow":1,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49918,"team_id":2059,"minutes":25,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":60364,"team_id":2059,"minutes":20,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49669,"team_id":2059,"minutes":7,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49767,"team_id":2059,"minutes":5,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49776,"team_id":2059,"minutes":5,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49774,"team_id":2059,"minutes":0,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49777,"team_id":2059,"minutes":0,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49764,"team_id":2059,"minutes":0,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":47954,"team_id":2059,"minutes":0,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49666,"team_id":2071,"minutes":90,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":46360,"team_id":2071,"minutes":90,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49686,"team_id":2071,"minutes":90,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49670,"team_id":2071,"minutes":90,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49671,"team_id":2071,"minutes":90,"rating":null,"goals":0,"assists":0,"yellow":1,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49672,"team_id":2071,"minutes":90,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49914,"team_id":2071,"minutes":90,"rating":null,"goals":0,"assists":1,"yellow":1,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49673,"team_id":2071,"minutes":90,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":29041,"team_id":2071,"minutes":88,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":186019,"team_id":2071,"minutes":77,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":7412,"team_id":2071,"minutes":61,"rating":null,"goals":1,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":105327,"team_id":2071,"minutes":29,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49667,"team_id":2071,"minutes":13,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":218187,"team_id":2071,"minutes":2,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49678,"team_id":2071,"minutes":0,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49681,"team_id":2071,"minutes":0,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49941,"team_id":2071,"minutes":0,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49674,"team_id":2071,"minutes":0,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":68224,"team_id":2071,"minutes":0,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0},{"id":49679,"team_id":2071,"minutes":0,"rating":null,"goals":0,"assists":0,"yellow":0,"red":0,"saves":0,"shots":0,"on_target":0,"key_passes":0}],"stats":{"home":{"possession":null,"shots":null,"on_target":null,"corners":null,"fouls":null,"yellow":4,"red":0,"big_chances":null,"passes":null,"pass_pct":null,"offsides":null,"saves":null},"away":{"possession":null,"shots":null,"on_target":null,"corners":null,"fouls":null,"yellow":2,"red":0,"big_chances":null,"passes":null,"pass_pct":null,"offsides":null,"saves":null}},"lineups":{"home":{"formation":"4-2-3-1","players":[{"id":16929,"name":"Malcolm Barcola","position":"G","number":12,"captain":false,"starting":true},{"id":49760,"name":"Zakaria Kiani","position":"D","number":22,"captain":false,"starting":true},{"id":49761,"name":"Bilal El Ouadghiri","position":"D","number":6,"captain":false,"starting":true},{"id":49762,"name":"Mohamed Saoud","position":"D","number":4,"captain":true,"starting":true},{"id":36818,"name":"Achraf Laaziri","position":"D","number":15,"captain":false,"starting":true},{"id":15563,"name":"Gape Mohutsiwa","position":"M","number":8,"captain":false,"starting":true},{"id":49827,"name":"Soufyan Ahannach","position":"M","number":18,"captain":false,"starting":true},{"id":49771,"name":"Abdel Hamid Maali","position":"M","number":17,"captain":false,"starting":true},{"id":49766,"name":"Mohamed El Arouch","position":"M","number":10,"captain":false,"starting":true},{"id":49918,"name":"Youness Najari","position":"F","number":7,"captain":false,"starting":true},{"id":93852,"name":"Ibrahima Dieng","position":"F","number":31,"captain":false,"starting":true},{"id":49860,"name":"Hamza El Moudene","position":"M","number":21,"captain":false,"starting":false},{"id":60364,"name":"Haytham Bakhlakh","position":"F","number":67,"captain":false,"starting":false},{"id":49669,"name":"Saad Ait Khorsa","position":"D","number":27,"captain":false,"starting":false},{"id":49776,"name":"Akram El Wahabi","position":"D","number":24,"captain":false,"starting":false},{"id":49767,"name":"Ennaama El Bellali","position":"M","number":20,"captain":false,"starting":false},{"id":49774,"name":"Ahmed Azmi","position":"G","number":25,"captain":false,"starting":false},{"id":47954,"name":"Reda El Meliani","position":"D","number":2,"captain":false,"starting":false},{"id":49764,"name":"Anas Lamrabat","position":"M","number":23,"captain":false,"starting":false},{"id":49777,"name":"Mohamed El Guartit","position":"M","number":34,"captain":false,"starting":false}]},"away":{"formation":"4-3-3","players":[{"id":49666,"name":"Salaheddine Chihab","position":"G","number":16,"captain":false,"starting":true},{"id":46360,"name":"Salaheddine Ghedamsi","position":"D","number":20,"captain":false,"starting":true},{"id":29041,"name":"Mohamed Jaouab","position":"D","number":27,"captain":false,"starting":true},{"id":49686,"name":"Abdellah Khafifi","position":"D","number":15,"captain":false,"starting":true},{"id":49670,"name":"Marouane Ouhrou","position":"D","number":21,"captain":false,"starting":true},{"id":49671,"name":"Achraf Harmach","position":"M","number":8,"captain":false,"starting":true},{"id":49672,"name":"Noureddine Oussama","position":"M","number":6,"captain":false,"starting":true},{"id":49914,"name":"Khalid Baba","position":"M","number":7,"captain":false,"starting":true},{"id":49673,"name":"Adam   Brika","position":"M","number":14,"captain":false,"starting":true},{"id":7412,"name":"Christopher Ibayi","position":"F","number":18,"captain":false,"starting":true},{"id":186019,"name":"Devin Titus","position":"M","number":26,"captain":false,"starting":true},{"id":105327,"name":"Tshegofatso Mabasa","position":"F","number":9,"captain":false,"starting":false},{"id":49667,"name":"Hamza Ait Allal","position":"D","number":22,"captain":false,"starting":false},{"id":49681,"name":"Oussama Errahmany","position":"G","number":12,"captain":false,"starting":false},{"id":49941,"name":"Ayman Chabani","position":"D","number":5,"captain":false,"starting":false},{"id":49674,"name":"Anas Tahiri","position":"M","number":19,"captain":false,"starting":false},{"id":68224,"name":"Anas El Mahraoui","position":"M","number":17,"captain":false,"starting":false},{"id":49678,"name":"El Habib Brija","position":"M","number":29,"captain":false,"starting":false},{"id":49679,"name":"Hamza Afsal","position":"M","number":30,"captain":false,"starting":false}]}}},"colors":{"home":null,"away":"#ddcb12"},"venue":null,"pulled":[{"pulled_at":1791992729,"reason":"With the latest team news and prices, it’s no longer one we’d back.","after_result":"LOST","after_home":2,"after_away":1,"label":"Maghreb Fes to win or draw","odds":1.25,"bookmaker":"William Hill","replaced_by":null}],"published":[]}