{"id":603057,"league_id":95,"league":"Campeonato de Portugal","kickoff":1791640800,"home":"AD Sanjoanense","away":"Guarda FC","home_id":4828,"away_id":8224,"venue_id":null,"rank":6,"status":"notstarted","provisional":true,"lineup_status":"predicted","confidence":0.222,"score":null,"live_score":null,"lambda":[1.41,0.97],"read":null,"pass":"Passing on AD Sanjoanense v Guarda FC. No bookmaker is pricing it yet.","flags":[{"id":"availability.rotation_risk","section":"§3.1","note":"Nobody has named a side yet, so this eleven is a projection."}],"lambda_home":1.41132776355682,"lambda_away":0.9652796069983112,"corner_rate":9.53,"card_rate":0.209,"lineups":{"status":"predicted","confidence":0,"home":{"formation":"4-1-3-2","players":[{"id":75353,"name":"André Duarte","position":"G","starting":true,"ai_score":0.184},{"id":75598,"name":"João Martins","position":"D","starting":true,"ai_score":0},{"id":87521,"name":"Junilson Cá","position":"D","starting":true,"ai_score":0},{"id":87522,"name":"Leandro Silva","position":"D","starting":true,"ai_score":0},{"id":75666,"name":"Rodrigo Sousa","position":"D","starting":true,"ai_score":0},{"id":75537,"name":"Edu Pinheiro","position":"M","starting":true,"ai_score":0.025},{"id":75381,"name":"Rafa Gomes","position":"M","starting":true,"ai_score":0.025},{"id":75593,"name":"Dinis Oliveira","position":"M","starting":true,"ai_score":0},{"id":75348,"name":"Erick Gabriel","position":"F","starting":true,"ai_score":0.005},{"id":87515,"name":"André Ramalho","position":"F","starting":true,"ai_score":0},{"id":87516,"name":"Brandão","position":"F","starting":true,"ai_score":0}],"confidence":0.036},"away":{"formation":"4-1-4-1","players":[{"id":203467,"name":"João Fidalgo","position":"G","starting":true,"ai_score":0},{"id":203454,"name":"Alexandre Mondlane","position":"D","starting":true,"ai_score":0},{"id":203461,"name":"Bruno França","position":"D","starting":true,"ai_score":0},{"id":203438,"name":"Dimiri Gomes","position":"M","starting":true,"ai_score":0},{"id":203458,"name":"Edward Simon Abubu","position":"D","starting":true,"ai_score":0},{"id":203441,"name":"Bernardo Santos","position":"M","starting":true,"ai_score":0},{"id":203429,"name":"Charles Okwara","position":"M","starting":true,"ai_score":0},{"id":203447,"name":"Gustavo Sousa","position":"M","starting":true,"ai_score":0},{"id":203432,"name":"João Pedro Fernandes Pereira","position":"M","starting":true,"ai_score":0},{"id":203445,"name":"José Silva","position":"M","starting":true,"ai_score":0},{"id":75738,"name":"Joel Mendes","position":"F","starting":true,"ai_score":0}],"confidence":0},"unavailable":[]},"people":[{"id":75353,"name":"André Duarte","side":"home"},{"id":75598,"name":"João Martins","side":"home"},{"id":87521,"name":"Junilson Cá","side":"home"},{"id":87522,"name":"Leandro Silva","side":"home"},{"id":75666,"name":"Rodrigo Sousa","side":"home"},{"id":75537,"name":"Edu Pinheiro","side":"home"},{"id":75381,"name":"Rafa Gomes","side":"home"},{"id":75593,"name":"Dinis Oliveira","side":"home"},{"id":75348,"name":"Erick Gabriel","side":"home"},{"id":87515,"name":"André Ramalho","side":"home"},{"id":87516,"name":"Brandão","side":"home"},{"id":75621,"name":"Jhon Collazos","side":"home"},{"id":75649,"name":"Sebas Mosquera","side":"home"},{"id":75594,"name":"André Miguel Martins Costa","side":"home"},{"id":75599,"name":"Kelechi John","side":"home"},{"id":75669,"name":"Ruben Brandão Cardoso","side":"home"},{"id":75483,"name":"Rui Silva","side":"home"},{"id":87523,"name":"Sylvestre","side":"home"},{"id":87514,"name":"Maxwell Sani","side":"home"},{"id":87524,"name":"Bernardo Santos","side":"home"},{"id":87517,"name":"Diogo Andrezo","side":"home"},{"id":87518,"name":"Pedro Martins","side":"home"},{"id":87519,"name":"Raul Henriques","side":"home"},{"id":203467,"name":"João Fidalgo","side":"away"},{"id":203454,"name":"Alexandre Mondlane","side":"away"},{"id":203461,"name":"Bruno França","side":"away"},{"id":203438,"name":"Dimiri Gomes","side":"away"},{"id":203458,"name":"Edward Simon Abubu","side":"away"},{"id":203441,"name":"Bernardo Santos","side":"away"},{"id":203429,"name":"Charles Okwara","side":"away"},{"id":203447,"name":"Gustavo Sousa","side":"away"},{"id":203432,"name":"João Pedro Fernandes Pereira","side":"away"},{"id":203445,"name":"José Silva","side":"away"},{"id":75738,"name":"Joel Mendes","side":"away"},{"id":203463,"name":"Leandro Oliveira","side":"away"},{"id":104920,"name":"Patrick Nunes","side":"away"},{"id":54584,"name":"Rogério Fernandes","side":"away"},{"id":203459,"name":"Gumersindo Teixeira","side":"away"},{"id":203466,"name":"Jerónimo Ortiz","side":"away"},{"id":76843,"name":"Luís Ferreira","side":"away"},{"id":203464,"name":"Rafael Martins","side":"away"},{"id":203452,"name":"Tiago Carvalho","side":"away"},{"id":201820,"name":"Luís Maurício","side":"away"},{"id":201822,"name":"Nuno Machado","side":"away"},{"id":203425,"name":"Samuel Mate","side":"away"},{"id":203423,"name":"Yafran Palácio","side":"away"},{"id":75568,"name":"Tomás Igreja","side":"away"},{"id":206113,"name":"Yohaan Benjamin","side":"away"},{"id":203443,"name":"Pedro Bondo","side":"away"},{"id":203436,"name":"Rodrigo Silva Mendes","side":"away"}],"players":[{"id":75348,"name":"Erick Gabriel","side":"home","team":"AD Sanjoanense","club":null,"role":"ATT","position":"ST","status":"fit","reason":null,"expected_return":null,"season":null,"recent":null,"standout":null,"strengths":[],"tags":[],"importance":0,"country":null,"load":null},{"id":87515,"name":"André Ramalho","side":"home","team":"AD Sanjoanense","club":null,"role":"ATT","position":"FWD","status":"fit","reason":null,"expected_return":null,"season":null,"recent":null,"standout":null,"strengths":[],"tags":[],"importance":0,"country":null,"load":null},{"id":75738,"name":"Joel Mendes","side":"away","team":"Guarda FC","club":null,"role":"ATT","position":"FWD","status":"fit","reason":null,"expected_return":null,"season":null,"recent":null,"standout":null,"strengths":[],"tags":[],"importance":0,"country":null,"load":null}],"extras":{"teams":{"home":4828,"away":8224},"split":{"home":{"above":{"w":0,"d":1,"l":1},"below":{"w":1,"d":1,"l":0}},"away":{"above":{"w":0,"d":1,"l":3},"below":null}},"referee":null,"managers":{"home":{"id":2917,"name":"Pedro Hipolito","vs":null},"away":{"id":3831,"name":"Rui Ferreira","vs":null}},"best_xi":[],"players":{}},"notable":[],"round_label":"Group B · Matchday 5","neutral":false,"h2h":{"total_matches":0,"home_wins":0,"draws":0,"away_wins":0,"home_goals":null,"away_goals":null,"avg_total_goals":null,"home_win_rate":null,"away_win_rate":null,"recent_matches":[]},"standings":{"home":{"team_id":4828,"position":8,"played":4,"points":5,"goal_diff":0,"team_name":"AD Sanjoanense","won":1,"drawn":2,"lost":1,"goals_for":5,"goals_against":5,"group":"Group B"},"away":{"team_id":8224,"position":13,"played":4,"points":1,"goal_diff":-3,"team_name":"Guarda FC","won":0,"drawn":1,"lost":3,"goals_for":2,"goals_against":5,"group":"Group B"},"size":56},"form":{"home":{"matches":6,"ppg":1.83,"record":"3-2-1","goals_for":2,"goals_against":1,"clean_sheets":1,"streak":"none","sequence":"DDWWLW","venue_ppg":2.33},"away":{"matches":6,"ppg":0.67,"record":"1-1-4","goals_for":1.67,"goals_against":1.33,"clean_sheets":1,"streak":"none","sequence":"LLWLDL","venue_ppg":1}},"ledger":[{"id":"availability.home.full_strength","section":"§2.4","tier":1,"state":"COMPUTED","note":"AD Sanjoanense report no absentees.","evidence":{"absences":0},"strength":0.2,"moves":[]},{"id":"availability.away.full_strength","section":"§2.4","tier":1,"state":"COMPUTED","note":"Guarda FC report no absentees.","evidence":{"absences":0},"strength":0.2,"moves":[]},{"id":"availability.rotation_risk","section":"§3.1","tier":1,"state":"COMPUTED","note":"Nobody has named a side yet, so this eleven is a projection.","evidence":{"lineup_status":"predicted","confidence":0,"cup_tie":false},"strength":1,"moves":[]},{"id":"stakes.table","section":"§5.1","tier":2,"state":"UNAVAILABLE","note":"A cup or a group stage, so there is no league table to read what either side is playing for.","evidence":{},"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":"THIN","note":"No reverse fixture on record this season, so there is no revenge angle to read.","evidence":{},"strength":0,"moves":[]},{"id":"manager.home.established","section":"§1.1","tier":3,"state":"COMPUTED","note":"Pedro Hipolito has 36 matches in charge at AD Sanjoanense, long enough that the side plays the way he wants it to.","evidence":{"manager":"Pedro Hipolito","matches_in_charge":36,"tenure_days":427,"ppm":0.94,"appointment_effect":{"before_ppm":2.1,"after_ppm":1.2,"delta":null}},"strength":0.1,"moves":[]},{"id":"manager.away.settling","section":"§1.1","tier":3,"state":"COMPUTED","note":"Rui Ferreira is 6 games into the job at Guarda FC, past the bounce window, where an early lift usually fades back toward the side's real level.","evidence":{"manager":"Rui Ferreira","matches_in_charge":6,"tenure_days":56,"ppm":0.67,"appointment_effect":{"before_ppm":0,"after_ppm":0.67,"delta":null}},"strength":0.3,"moves":[]},{"id":"fatigue.home","section":"§2.8","tier":4,"state":"COMPUTED","note":"AD Sanjoanense come in on 20 days' rest, with nothing unusual in the schedule behind them.","evidence":{"daysRest":20,"matchesIn7":0,"matchesIn14":0,"days_rest":20},"strength":0.1,"moves":[]},{"id":"fatigue.away","section":"§2.8","tier":4,"state":"COMPUTED","note":"Guarda FC come in on 20 days' rest, with nothing unusual in the schedule behind them.","evidence":{"daysRest":20,"matchesIn7":0,"matchesIn14":0,"days_rest":20},"strength":0.1,"moves":[]},{"id":"style.opponent_adjustment","section":"§4.1","tier":5,"state":"THIN","note":"Team strength is estimated against the actual quality of opponents faced, so a soft run of fixtures does not read as form. — though 3.106479797134651 games is too few to read much into, so it is left out of the call.","evidence":{"home":{"attack":0,"defence":-0.015,"effective_matches":3.1,"shrunk":0.72},"away":{"attack":-0.172,"defence":-0.001,"effective_matches":3.1,"shrunk":0.72},"sample":3.106479797134651,"required":6},"strength":0,"moves":[]},{"id":"style.matchup","section":"§4.2","tier":5,"state":"COMPUTED","note":"Neither side holds a clear possession edge on recent evidence.","evidence":{"home":{"matches":12,"possession":49.5,"shots":null,"xg_per_shot":null,"corners":5.5,"corners_per_shot":null,"finishing_vs_xg":null},"away":{"matches":7,"possession":50,"shots":null,"xg_per_shot":null,"corners":5,"corners_per_shot":null,"finishing_vs_xg":null},"possession_gap":-0.5},"strength":0.1,"moves":[]},{"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":"THIN","note":"No chance data on record for AD Sanjoanense's recent matches, so finishing cannot be compared to chances.","evidence":{"matches":12},"strength":0,"moves":[]},{"id":"style.finishing.away","section":"§2.1","tier":5,"state":"THIN","note":"No chance data on record for Guarda FC's recent matches, so finishing cannot be compared to chances.","evidence":{"matches":7},"strength":0,"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":"UNAVAILABLE","note":"No travel distance reported for this fixture.","evidence":{},"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.22057098280873272},"strength":0,"moves":[]}],"pass_reason":"call rule: no-prices","preview":null,"external":{"bsd_prediction":{"id":4525,"created_at":"2026-10-04T02:15:23Z","event":{"id":603057,"event_date":"2026-10-10T14:00:00Z","status":"notstarted","home_team_id":4828,"home_team":"AD Sanjoanense","away_team_id":8224,"away_team":"Guarda FC","league_id":95,"league_name":"Campeonato de Portugal"},"recommendations":{"favorite":"H","favorite_prob":38.9,"bet_favorite":false,"over_15":false,"over_25":false,"over_35":false,"btts":false,"winner":false},"model":{"confidence":0.3889,"version":"dc-blend-v1"}}},"computed_at":1791512777,"verdicts":[],"locked":false,"colors":{"home":"#9b9997","away":null},"venue":null,"pulled":[],"published":[]}