{
 "schema_name": "page",
 "schema_version": "2.0",
 "page_type": "history",
 "url": "/sources/paris-sportifs-ouest-france-fr/picks/7/",
 "canonical": "/sources/paris-sportifs-ouest-france-fr/picks/7/",
 "language": "en",
 "hreflang": [],
 "translations": [],
 "heading": "Ouest-France paris sportifs — football predictions, page 7 of 9",
 "description": "Predictions 101–120 of 154 by Ouest-France paris sportifs, with outcomes in words and links to the evidence.",
 "first_paragraph": {
  "body": "Page 7 of 9 of the predictions by Ouest-France paris sportifs recorded by Forecast Record: predictions 101–120 of 154 in the order we recorded them, earliest first; as of 7 November 2026. Each row links to its evidence, and the summary of the record is on the profile page.",
  "key_number": "154",
  "data": "2026-11-07",
  "source_info": "our own evidence archive",
  "brand": "Forecast Record"
 },
 "indexable": false,
 "noindex_reason": "technical",
 "indexing_threshold": {
  "settled_count": 0,
  "date_count": 0,
  "required_settled": 0,
  "required_dates": 0
 },
 "data_date": "2026-11-07T18:07:42.517Z",
 "built_at": "2026-11-07T19:52:23.438Z",
 "lastmod": "2026-11-07T19:52:23.438Z",
 "content_hash": null,
 "meaning_hash": "5d133d7b0fb78a03693a9b935367008e9705bdc27934113f6fbf26bc5e47ff25",
 "dependency_group": "author:e-ad551d9e75e7ce9b7cb2722f",
 "release_id": "20261107-195223",
 "markup": [
  {
   "type_code": "WebPage",
   "allowed": true,
   "cause": null
  },
  {
   "type_code": "Organization",
   "allowed": true,
   "cause": null
  }
 ],
 "exports": [
  {
   "type_code": "json",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/7/index.json",
   "bytes": null
  }
 ],
 "modules": {
  "affiliate": false,
  "api": true,
  "compare_yourself": false
 },
 "affiliate_block": null,
 "restrictions": {
  "name_withdrawn": false,
  "tracker_number": null,
  "withdrawn_quotes": [],
  "removed_at": null,
  "cause": null,
  "suspended_records": [],
  "withdrawal_log_number": 0
 },
 "page_links": {
  "methodology": "/methodology/",
  "right_of_reply": "/right-of-reply/",
  "source_coverage": "/coverage/",
  "corrections_log": "/corrections/",
  "api": "/api/",
  "claim": "/claim/"
 },
 "entity": {
  "id": "e-ad551d9e75e7ce9b7cb2722f",
  "public_name": "Ouest-France paris sportifs",
  "tracker_number": 2940,
  "status": "active",
  "inactive_since": null,
  "verified_creator": false,
  "observation_period": {
   "since": "2026-10-11",
   "until": "2026-11-07"
  },
  "platform_list": [
   {
    "medium": "website",
    "handle": null,
    "url": null,
    "link_confirmed": false,
    "show": true
   }
  ],
  "comment": null
 },
 "recorded_picks": [
  {
   "record_id": "n-e30ebae408aa24cd42e28303",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Plus/Moins de buts: Moins de 2.5.",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T00:24:40.000Z",
   "recorded_at": "2026-10-14T03:29:37.477Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-703804d2c14d3f4574c1e5e0",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Les deux équipes marquent: Oui",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T00:24:41.000Z",
   "recorded_at": "2026-10-14T04:29:53.624Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-8c53d50dbc01264fcfd02761",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Résultat du match (1X2): Match nul",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T00:24:41.000Z",
   "recorded_at": "2026-10-14T04:29:53.624Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-962f7168fb7037bcc25acaa2",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Plus/Moins de buts: Plus de 2,5",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T00:24:41.000Z",
   "recorded_at": "2026-10-14T04:29:53.624Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-481ddfc72736463e34fe9987",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/7/#pick-n-481ddfc72736463e34fe9987",
   "match": "1. FC Union Berlin v Borussia Dortmund",
   "match_url": "/football/matches/1-fc-union-berlin-vs-borussia-dortmund-2026-10-17/",
   "kickoff": "2026-10-17T13:30:00.000Z",
   "competition": "Bundesliga",
   "lead_hours": 80.0,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: over 2.5",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "0-0",
   "reason": "graded against the result: wrong",
   "reason_code": "not_checked",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T00:24:42.000Z",
   "recorded_at": "2026-10-14T05:29:34.338Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-481ddfc72736463e34fe9987",
    "quote_text": "Plus/Moins de buts: Plus de 2,5 buts.",
    "fragment_from": 3063,
    "fragment_to": 3100,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/bundesliga/union-berlin-vs-borussia-dortmund-2026-10-17/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "c298d04cf56367c703ade847da7b5a5ad5f3a0728078a5b8862d740a9b8313d4",
     "material_removed": false
    },
    "published_at": "2026-10-14T00:24:42.000Z",
    "detected_at": "2026-10-14T05:29:34.338Z",
    "executed_at": null,
    "statement_class": "unpriced",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "not_checked",
    "event": {
     "event_id": "s-f34b372eaab6",
     "display_name": "1. FC Union Berlin — Borussia Dortmund",
     "competition_name": "Bundesliga",
     "starts_at": "2026-10-17T13:30:00.000Z",
     "url": "/football/matches/1-fc-union-berlin-vs-borussia-dortmund-2026-10-17/",
     "scoreline": "0-0",
     "condition": "finished"
    },
    "market_label": "Over/Under 2.5 goals",
    "outcome_label": "over 2.5",
    "odds_set": {
     "by_author": null,
     "our_snapshot": null,
     "our_snapshot_at": null,
     "our_snapshot_source": null,
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": null,
    "result": "loss",
    "simulation_change_hundredths": null,
    "bankroll_after_hundredths": null,
    "executed_by": null,
    "series_label": null,
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-14T00:24:42.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-14T00:24:42.000Z",
     "detected_at": "2026-10-14T05:29:34.338Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Over/Under 2.5 goals",
     "choice": "over 2.5",
     "author_odds": null,
     "market_key": "total",
     "choice_key": "over",
     "period": "match",
     "line": "2.5",
     "subject": "goals_total",
     "in_words": "Over/Under 2.5 goals: over 2.5"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "0-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was 1. FC Union Berlin 0-0 Borussia Dortmund."
    },
    "settlements": [
     {
      "operation_id": "abe157a17987dcde2e463dbaf0cc1c49c1dd9a573d0b71a15a6090a6e857b547",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Over/Under 2.5 goals",
      "choice": "over 2.5",
      "decimal_odds": null,
      "odds_role": null,
      "stake_hundredths": null,
      "status": "skipped",
      "status_text": "Not executed: ",
      "result": null,
      "result_words": null,
      "change_hundredths": null,
      "executed_at": null,
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "Ouest-France paris sportifs",
     "publisher": "Ouest-France paris sportifs",
     "forecaster": "Ouest-France paris sportifs",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://paris-sportifs.ouest-france.fr/football/bundesliga/union-berlin-vs-borussia-dortmund-2026-10-17/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "over 2.5 (Over/Under 2.5 goals)"
   }
  },
  {
   "record_id": "n-72a80278005cd000eaa942b8",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Résultat du match (1X2): Victoire Borussia Dortmund.",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "ambiguous",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T00:24:42.000Z",
   "recorded_at": "2026-10-14T05:29:34.338Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-810bdb448c785ca125be4e3b",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/7/#pick-n-810bdb448c785ca125be4e3b",
   "match": "1. FC Union Berlin v Borussia Dortmund",
   "match_url": "/football/matches/1-fc-union-berlin-vs-borussia-dortmund-2026-10-17/",
   "kickoff": "2026-10-17T13:30:00.000Z",
   "competition": "Bundesliga",
   "lead_hours": 80.0,
   "market_code": "both_teams_score",
   "author_said": "Both teams to score: no",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Won",
   "final_score": "0-0",
   "reason": "graded against the result: right",
   "reason_code": "not_checked",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T00:24:42.000Z",
   "recorded_at": "2026-10-14T05:29:34.338Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-810bdb448c785ca125be4e3b",
    "quote_text": "Les deux équipes marquent: Non.",
    "fragment_from": 3732,
    "fragment_to": 3763,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/bundesliga/union-berlin-vs-borussia-dortmund-2026-10-17/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "c298d04cf56367c703ade847da7b5a5ad5f3a0728078a5b8862d740a9b8313d4",
     "material_removed": false
    },
    "published_at": "2026-10-14T00:24:42.000Z",
    "detected_at": "2026-10-14T05:29:34.338Z",
    "executed_at": null,
    "statement_class": "unpriced",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "not_checked",
    "event": {
     "event_id": "s-f34b372eaab6",
     "display_name": "1. FC Union Berlin — Borussia Dortmund",
     "competition_name": "Bundesliga",
     "starts_at": "2026-10-17T13:30:00.000Z",
     "url": "/football/matches/1-fc-union-berlin-vs-borussia-dortmund-2026-10-17/",
     "scoreline": "0-0",
     "condition": "finished"
    },
    "market_label": "Both teams to score",
    "outcome_label": "no",
    "odds_set": {
     "by_author": null,
     "our_snapshot": null,
     "our_snapshot_at": null,
     "our_snapshot_source": null,
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": null,
    "result": "win",
    "simulation_change_hundredths": null,
    "bankroll_after_hundredths": null,
    "executed_by": null,
    "series_label": null,
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-14T00:24:42.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-14T00:24:42.000Z",
     "detected_at": "2026-10-14T05:29:34.338Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Both teams to score",
     "choice": "no",
     "author_odds": null,
     "market_key": "both_teams_score",
     "choice_key": "no",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Both teams to score: no"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "0-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was 1. FC Union Berlin 0-0 Borussia Dortmund."
    },
    "settlements": [
     {
      "operation_id": "cefdca9231a5537a1a60031f923ff3bf46869247243f6af58ad88ddd0a01462d",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Both teams to score",
      "choice": "no",
      "decimal_odds": null,
      "odds_role": null,
      "stake_hundredths": null,
      "status": "skipped",
      "status_text": "Not executed: ",
      "result": null,
      "result_words": null,
      "change_hundredths": null,
      "executed_at": null,
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "Ouest-France paris sportifs",
     "publisher": "Ouest-France paris sportifs",
     "forecaster": "Ouest-France paris sportifs",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://paris-sportifs.ouest-france.fr/football/bundesliga/union-berlin-vs-borussia-dortmund-2026-10-17/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "no (Both teams to score)"
   }
  },
  {
   "record_id": "n-282e5ed575635947289ca4af",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Plus/Moins de buts: Moins de 2,5 buts.",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "ambiguous",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-15T00:23:44.000Z",
   "recorded_at": "2026-10-15T00:29:36.465Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-784fe0658a4e262960415a6b",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Les deux équipes marquent: Non.",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "ambiguous",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-15T00:23:44.000Z",
   "recorded_at": "2026-10-15T00:29:36.465Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-b98932730061ce5d28304adf",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Résultat du match (1X2): Angers.",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "ambiguous",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-15T00:23:44.000Z",
   "recorded_at": "2026-10-15T00:29:36.465Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-40bba74f776a4dcbc582c2f6",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/7/#pick-n-40bba74f776a4dcbc582c2f6",
   "match": "Osasuna v Real Racing Club",
   "match_url": "/football/matches/osasuna-vs-real-racing-club-2026-10-18/",
   "kickoff": "2026-10-18T12:00:00.000Z",
   "competition": "LaLiga",
   "lead_hours": 82.3,
   "market_code": "both_teams_score",
   "author_said": "Both teams to score: no",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "2-0",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 13400,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "2.3400",
   "published_at": "2026-10-15T00:23:55.000Z",
   "recorded_at": "2026-10-15T01:42:39.121Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-40bba74f776a4dcbc582c2f6",
    "quote_text": "Les deux équipes marquent: Non",
    "fragment_from": 3778,
    "fragment_to": 3808,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/la-liga/osasuna-vs-racing-santander-2026-10-18/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "87e4cd7b4edc24f2d09832c3e9db075534607f550bb89ae787a31ada66cb76b2",
     "material_removed": false
    },
    "published_at": "2026-10-15T00:23:55.000Z",
    "detected_at": "2026-10-15T01:42:39.121Z",
    "executed_at": "2026-11-07T01:10:54.540Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-944cbfe0e3e0",
     "display_name": "Osasuna — Real Racing Club",
     "competition_name": "LaLiga",
     "starts_at": "2026-10-18T12:00:00.000Z",
     "url": "/football/matches/osasuna-vs-real-racing-club-2026-10-18/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "Both teams to score",
    "outcome_label": "no",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "2.3400",
     "our_snapshot_at": "2026-10-15T01:41:23.784Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 13400,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-15T00:23:55.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-15T00:23:55.000Z",
     "detected_at": "2026-10-15T01:42:39.121Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Both teams to score",
     "choice": "no",
     "author_odds": null,
     "market_key": "both_teams_score",
     "choice_key": "no",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Both teams to score: no"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "2-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Osasuna 2-0 Real Racing Club."
    },
    "settlements": [
     {
      "operation_id": "f815ae716b18910bf282b8d8b4f4f5da8fdf186330dc2771d8baa14c90bd9d40",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Both teams to score",
      "choice": "no",
      "decimal_odds": "2.3400",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 13400,
      "executed_at": "2026-11-07T01:10:54.540Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Ouest-France paris sportifs",
     "publisher": "Ouest-France paris sportifs",
     "forecaster": "Ouest-France paris sportifs",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://paris-sportifs.ouest-france.fr/football/la-liga/osasuna-vs-racing-santander-2026-10-18/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "no (Both teams to score)"
   }
  },
  {
   "record_id": "n-516814f06ddd8a021391686e",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/7/#pick-n-516814f06ddd8a021391686e",
   "match": "Osasuna v Real Racing Club",
   "match_url": "/football/matches/osasuna-vs-real-racing-club-2026-10-18/",
   "kickoff": "2026-10-18T12:00:00.000Z",
   "competition": "LaLiga",
   "lead_hours": 82.3,
   "market_code": "1x2",
   "author_said": "1X2, match result: draw",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "2-0",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "3.6000",
   "published_at": "2026-10-15T00:23:55.000Z",
   "recorded_at": "2026-10-15T01:42:39.121Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-516814f06ddd8a021391686e",
    "quote_text": "Résultat du match (1X2): Match nul",
    "fragment_from": 3450,
    "fragment_to": 3484,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/la-liga/osasuna-vs-racing-santander-2026-10-18/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "87e4cd7b4edc24f2d09832c3e9db075534607f550bb89ae787a31ada66cb76b2",
     "material_removed": false
    },
    "published_at": "2026-10-15T00:23:55.000Z",
    "detected_at": "2026-10-15T01:42:39.121Z",
    "executed_at": "2026-11-07T01:10:55.313Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-944cbfe0e3e0",
     "display_name": "Osasuna — Real Racing Club",
     "competition_name": "LaLiga",
     "starts_at": "2026-10-18T12:00:00.000Z",
     "url": "/football/matches/osasuna-vs-real-racing-club-2026-10-18/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "draw",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "3.6000",
     "our_snapshot_at": "2026-10-15T01:41:23.784Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "loss",
    "simulation_change_hundredths": -10000,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-15T00:23:55.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-15T00:23:55.000Z",
     "detected_at": "2026-10-15T01:42:39.121Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "1X2, match result",
     "choice": "draw",
     "author_odds": null,
     "market_key": "1x2",
     "choice_key": "X",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: draw"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Osasuna 2-0 Real Racing Club."
    },
    "settlements": [
     {
      "operation_id": "d03c6952976976524d8659120a16f1be49da3493b34f5d2e5f01bb6170871c21",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "1X2, match result",
      "choice": "draw",
      "decimal_odds": "3.6000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-07T01:10:55.313Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Ouest-France paris sportifs",
     "publisher": "Ouest-France paris sportifs",
     "forecaster": "Ouest-France paris sportifs",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://paris-sportifs.ouest-france.fr/football/la-liga/osasuna-vs-racing-santander-2026-10-18/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "a draw"
   }
  },
  {
   "record_id": "n-9d1bf3fd4d7d29ba592d716a",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/7/#pick-n-9d1bf3fd4d7d29ba592d716a",
   "match": "Osasuna v Real Racing Club",
   "match_url": "/football/matches/osasuna-vs-real-racing-club-2026-10-18/",
   "kickoff": "2026-10-18T12:00:00.000Z",
   "competition": "LaLiga",
   "lead_hours": 82.3,
   "market_code": "player_to_score",
   "author_said": "Player to score: Yassir Zabiri to score",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": "2-0",
   "reason": "",
   "reason_code": "not_admitted",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-15T00:23:55.000Z",
   "recorded_at": "2026-10-15T01:42:39.121Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-9d1bf3fd4d7d29ba592d716a",
    "quote_text": "Buteur à tout moment: Yassir Zabiri",
    "fragment_from": 3112,
    "fragment_to": 3147,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/la-liga/osasuna-vs-racing-santander-2026-10-18/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "87e4cd7b4edc24f2d09832c3e9db075534607f550bb89ae787a31ada66cb76b2",
     "material_removed": false
    },
    "published_at": "2026-10-15T00:23:55.000Z",
    "detected_at": "2026-10-15T01:42:39.121Z",
    "executed_at": null,
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-944cbfe0e3e0",
     "display_name": "Osasuna — Real Racing Club",
     "competition_name": "LaLiga",
     "starts_at": "2026-10-18T12:00:00.000Z",
     "url": "/football/matches/osasuna-vs-real-racing-club-2026-10-18/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "Player to score",
    "outcome_label": "Yassir Zabiri to score",
    "odds_set": {
     "by_author": null,
     "our_snapshot": null,
     "our_snapshot_at": null,
     "our_snapshot_source": null,
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": null,
    "result": "unknown",
    "simulation_change_hundredths": null,
    "bankroll_after_hundredths": null,
    "executed_by": null,
    "series_label": null,
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-15T00:23:55.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-15T00:23:55.000Z",
     "detected_at": "2026-10-15T01:42:39.121Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Player to score",
     "choice": "Yassir Zabiri to score",
     "author_odds": null,
     "market_key": "player_to_score",
     "choice_key": "yes",
     "period": "match",
     "line": null,
     "subject": "player_goals",
     "in_words": "Player to score: Yassir Zabiri to score"
    },
    "author_claim_outcome": {
     "result": "unknown",
     "scoreline": "2-0",
     "data_status": "unknown",
     "cause": "the result data received so far does not include the player statistics this market needs",
     "methodology_version": "2.2",
     "in_words": "Pending: the result data received so far does not include the player statistics this market needs."
    },
    "settlements": [
     {
      "operation_id": "aa7ddf0fa2b654401f30658fccedfe118ef28b9d8d0193a4844f295387f5e1be",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Player to score",
      "choice": "Yassir Zabiri to score",
      "decimal_odds": null,
      "odds_role": null,
      "stake_hundredths": null,
      "status": "skipped",
      "status_text": "Not executed: ",
      "result": null,
      "result_words": null,
      "change_hundredths": null,
      "executed_at": null,
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": true
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "Ouest-France paris sportifs",
     "publisher": "Ouest-France paris sportifs",
     "forecaster": "Ouest-France paris sportifs",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://paris-sportifs.ouest-france.fr/football/la-liga/osasuna-vs-racing-santander-2026-10-18/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Yassir Zabiri to score"
   }
  },
  {
   "record_id": "n-018c18c911a4f800d6307976",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/7/#pick-n-018c18c911a4f800d6307976",
   "match": "Celta Vigo v Deportivo Alavés",
   "match_url": "/football/matches/celta-vigo-vs-deportivo-alaves-2026-10-18/",
   "kickoff": "2026-10-18T14:15:00.000Z",
   "competition": "LaLiga",
   "lead_hours": 41.1,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: over 2.5",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "2-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 12500,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "2.2500",
   "published_at": "2026-10-15T00:23:56.000Z",
   "recorded_at": "2026-10-16T21:09:41.397Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-018c18c911a4f800d6307976",
    "quote_text": "Plus/Moins de buts, Plus de 2,5 buts",
    "fragment_from": 2822,
    "fragment_to": 2858,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/la-liga/celta-vigo-vs-deportivo-alaves-2026-10-18/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "21434fcf79924e66ed875adfc94b09e1ac44b73124b3f40c6489eeaaab9a03eb",
     "material_removed": false
    },
    "published_at": "2026-10-15T00:23:56.000Z",
    "detected_at": "2026-10-16T21:09:41.397Z",
    "executed_at": "2026-11-07T01:33:28.420Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-34e420ecadfa",
     "display_name": "Celta Vigo — Deportivo Alavés",
     "competition_name": "LaLiga",
     "starts_at": "2026-10-18T14:15:00.000Z",
     "url": "/football/matches/celta-vigo-vs-deportivo-alaves-2026-10-18/",
     "scoreline": "2-1",
     "condition": "finished"
    },
    "market_label": "Over/Under 2.5 goals",
    "outcome_label": "over 2.5",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "2.2500",
     "our_snapshot_at": "2026-10-16T21:05:56.022Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 12500,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-15T00:23:56.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-15T00:23:56.000Z",
     "detected_at": "2026-10-16T21:09:41.397Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Over/Under 2.5 goals",
     "choice": "over 2.5",
     "author_odds": null,
     "market_key": "total",
     "choice_key": "over",
     "period": "match",
     "line": "2.5",
     "subject": "goals_total",
     "in_words": "Over/Under 2.5 goals: over 2.5"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "2-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Celta Vigo 2-1 Deportivo Alavés."
    },
    "settlements": [
     {
      "operation_id": "f62c735c909a10c4ba1ee271ae8dfd33f6950b06ddf4c41fe538b6f3ff58b2e3",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Over/Under 2.5 goals",
      "choice": "over 2.5",
      "decimal_odds": "2.2500",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 12500,
      "executed_at": "2026-11-07T01:33:28.420Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Ouest-France paris sportifs",
     "publisher": "Ouest-France paris sportifs",
     "forecaster": "Ouest-France paris sportifs",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://paris-sportifs.ouest-france.fr/football/la-liga/celta-vigo-vs-deportivo-alaves-2026-10-18/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "over 2.5 (Over/Under 2.5 goals)"
   }
  },
  {
   "record_id": "n-52919f45ac3da1a4377e426c",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/7/#pick-n-52919f45ac3da1a4377e426c",
   "match": "Celta Vigo v Deportivo Alavés",
   "match_url": "/football/matches/celta-vigo-vs-deportivo-alaves-2026-10-18/",
   "kickoff": "2026-10-18T14:15:00.000Z",
   "competition": "LaLiga",
   "lead_hours": 41.1,
   "market_code": "double_chance",
   "author_said": "Double chance: draw or Deportivo Alavés",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "2-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "1.6597",
   "published_at": "2026-10-15T00:23:56.000Z",
   "recorded_at": "2026-10-16T21:09:41.397Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-52919f45ac3da1a4377e426c",
    "quote_text": "Double chance, Victoire ou nul pour Deportivo Alaves",
    "fragment_from": 3308,
    "fragment_to": 3360,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/la-liga/celta-vigo-vs-deportivo-alaves-2026-10-18/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "21434fcf79924e66ed875adfc94b09e1ac44b73124b3f40c6489eeaaab9a03eb",
     "material_removed": false
    },
    "published_at": "2026-10-15T00:23:56.000Z",
    "detected_at": "2026-10-16T21:09:41.397Z",
    "executed_at": "2026-10-18T11:03:04.473Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-34e420ecadfa",
     "display_name": "Celta Vigo — Deportivo Alavés",
     "competition_name": "LaLiga",
     "starts_at": "2026-10-18T14:15:00.000Z",
     "url": "/football/matches/celta-vigo-vs-deportivo-alaves-2026-10-18/",
     "scoreline": "2-1",
     "condition": "finished"
    },
    "market_label": "Double chance",
    "outcome_label": "draw or Deportivo Alavés",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "1.6597",
     "our_snapshot_at": "2026-10-16T21:05:56.022Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "loss",
    "simulation_change_hundredths": -10000,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-15T00:23:56.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-15T00:23:56.000Z",
     "detected_at": "2026-10-16T21:09:41.397Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Double chance",
     "choice": "draw or Deportivo Alavés",
     "author_odds": null,
     "market_key": "double_chance",
     "choice_key": "X2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Double chance: draw or Deportivo Alavés"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Celta Vigo 2-1 Deportivo Alavés."
    },
    "settlements": [
     {
      "operation_id": "b91054cf6e5a05bd196043831d6c0145ae6e7bc90f64eaa87fbf6667fe8a8ae1",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Double chance",
      "choice": "draw or Deportivo Alavés",
      "decimal_odds": "1.6597",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-18T11:03:04.473Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Ouest-France paris sportifs",
     "publisher": "Ouest-France paris sportifs",
     "forecaster": "Ouest-France paris sportifs",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://paris-sportifs.ouest-france.fr/football/la-liga/celta-vigo-vs-deportivo-alaves-2026-10-18/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "draw or Deportivo Alavés"
   }
  },
  {
   "record_id": "n-55dbe437a07e0423b769e524",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/7/#pick-n-55dbe437a07e0423b769e524",
   "match": "Celta Vigo v Deportivo Alavés",
   "match_url": "/football/matches/celta-vigo-vs-deportivo-alaves-2026-10-18/",
   "kickoff": "2026-10-18T14:15:00.000Z",
   "competition": "LaLiga",
   "lead_hours": 41.1,
   "market_code": "both_teams_score",
   "author_said": "Both teams to score: yes",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "2-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 9259,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "1.9259",
   "published_at": "2026-10-15T00:23:56.000Z",
   "recorded_at": "2026-10-16T21:09:41.397Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-55dbe437a07e0423b769e524",
    "quote_text": "Les deux équipes marquent",
    "fragment_from": 3091,
    "fragment_to": 3116,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/la-liga/celta-vigo-vs-deportivo-alaves-2026-10-18/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "21434fcf79924e66ed875adfc94b09e1ac44b73124b3f40c6489eeaaab9a03eb",
     "material_removed": false
    },
    "published_at": "2026-10-15T00:23:56.000Z",
    "detected_at": "2026-10-16T21:09:41.397Z",
    "executed_at": "2026-11-07T01:33:30.399Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-34e420ecadfa",
     "display_name": "Celta Vigo — Deportivo Alavés",
     "competition_name": "LaLiga",
     "starts_at": "2026-10-18T14:15:00.000Z",
     "url": "/football/matches/celta-vigo-vs-deportivo-alaves-2026-10-18/",
     "scoreline": "2-1",
     "condition": "finished"
    },
    "market_label": "Both teams to score",
    "outcome_label": "yes",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "1.9259",
     "our_snapshot_at": "2026-10-16T21:05:56.022Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 9259,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-15T00:23:56.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-15T00:23:56.000Z",
     "detected_at": "2026-10-16T21:09:41.397Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Both teams to score",
     "choice": "yes",
     "author_odds": null,
     "market_key": "both_teams_score",
     "choice_key": "yes",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Both teams to score: yes"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "2-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Celta Vigo 2-1 Deportivo Alavés."
    },
    "settlements": [
     {
      "operation_id": "3c9102e6c8fd7b306a6b630ca1b715d70a38b44955f200fb6668e7c43d5c658f",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Both teams to score",
      "choice": "yes",
      "decimal_odds": "1.9259",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 9259,
      "executed_at": "2026-11-07T01:33:30.399Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Ouest-France paris sportifs",
     "publisher": "Ouest-France paris sportifs",
     "forecaster": "Ouest-France paris sportifs",
     "forecaster_named_in_text": false,
     "basis": null,
     "status": "not_named",
     "status_words": "Attributed by the byline",
     "status_note": "The source does not name a separate tipster, so the selection is attributed to the byline or channel owner.",
     "evidence_fragment": null,
     "material_url": "https://paris-sportifs.ouest-france.fr/football/la-liga/celta-vigo-vs-deportivo-alaves-2026-10-18/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "yes (Both teams to score)"
   }
  },
  {
   "record_id": "n-02e0435faf184b9fdbb6303f",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Plus/Moins de buts: Plus de 2.5",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-17T00:26:05.000Z",
   "recorded_at": "2026-10-17T00:29:45.939Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-20a8e4cc4e444bc1cde4c563",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Les deux équipes marquent: Oui",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-17T00:26:05.000Z",
   "recorded_at": "2026-10-17T00:29:45.939Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-d700e45349424a3aaa4e23ae",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Résultat du match (1X2): Liverpool",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "ambiguous",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-17T00:26:05.000Z",
   "recorded_at": "2026-10-17T00:29:45.939Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-0aed2798dbb2000da2cac053",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Plus/Moins de buts: Moins de 2,5",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-17T00:26:08.000Z",
   "recorded_at": "2026-10-17T00:29:47.753Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  }
 ],
 "pagination": {
  "per_page": 20,
  "total": 154,
  "pages": 9,
  "page_urls": [
   "/sources/paris-sportifs-ouest-france-fr/",
   "/sources/paris-sportifs-ouest-france-fr/picks/2/",
   "/sources/paris-sportifs-ouest-france-fr/picks/3/",
   "/sources/paris-sportifs-ouest-france-fr/picks/4/",
   "/sources/paris-sportifs-ouest-france-fr/picks/5/",
   "/sources/paris-sportifs-ouest-france-fr/picks/6/",
   "/sources/paris-sportifs-ouest-france-fr/picks/7/",
   "/sources/paris-sportifs-ouest-france-fr/picks/8/",
   "/sources/paris-sportifs-ouest-france-fr/picks/9/"
  ],
  "groups": {
   "settled": 50,
   "pending": 0,
   "excluded": 104
  },
  "continuation": "by_time",
  "page": 7,
  "first": 101,
  "last": 120,
  "author_url": "/sources/paris-sportifs-ouest-france-fr/",
  "current": false
 },
 "entity_id": "history:/sources/paris-sportifs-ouest-france-fr/picks/7/",
 "source_revision": 44
}
