{
 "schema_name": "page",
 "schema_version": "2.0",
 "page_type": "history",
 "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/",
 "canonical": "/sources/paris-sportifs-ouest-france-fr/picks/2/",
 "language": "en",
 "hreflang": [],
 "translations": [],
 "heading": "Ouest-France paris sportifs — football predictions, page 2 of 9",
 "description": "Predictions 1–20 of 154 by Ouest-France paris sportifs, with outcomes in words and links to the evidence.",
 "first_paragraph": {
  "body": "Page 2 of 9 of the predictions by Ouest-France paris sportifs recorded by Forecast Record: predictions 1–20 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-07T07:23:48.684Z",
 "content_hash": null,
 "meaning_hash": "65c94e53b08593256ee3757570313d90e5456ad30cc5d213830268dd7a694199",
 "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/2/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-04d62e20a66fdbfe2d4f8224",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-04d62e20a66fdbfe2d4f8224",
   "match": "Nice v RC Strasbourg",
   "match_url": "/football/matches/nice-vs-rc-strasbourg-2026-10-11/",
   "kickoff": "2026-10-11T13:00:00.000Z",
   "competition": "Ligue 1",
   "lead_hours": 11.1,
   "market_code": "double_chance",
   "author_said": "Double chance: draw or RC Strasbourg",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "2-1",
   "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-09T13:12:48.000Z",
   "recorded_at": "2026-10-11T01:51:01.594Z",
   "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-04d62e20a66fdbfe2d4f8224",
    "quote_text": "Double chance: Strasbourg ou match nul.",
    "fragment_from": 2886,
    "fragment_to": 2925,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/ligue-1/nice-vs-strasbourg-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "f3c51b20e9c7990211afdf4e3642cbe9c3a00e98f5b25cd086eb16e6366810b8",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:12:48.000Z",
    "detected_at": "2026-10-11T01:51:01.594Z",
    "executed_at": null,
    "statement_class": "unpriced",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "not_checked",
    "event": {
     "event_id": "s-98cb3d9d0835",
     "display_name": "Nice — RC Strasbourg",
     "competition_name": "Ligue 1",
     "starts_at": "2026-10-11T13:00:00.000Z",
     "url": "/football/matches/nice-vs-rc-strasbourg-2026-10-11/",
     "scoreline": "2-1",
     "condition": "finished"
    },
    "market_label": "Double chance",
    "outcome_label": "draw or RC Strasbourg",
    "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-09T13:12:48.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:12:48.000Z",
     "detected_at": "2026-10-11T01:51:01.594Z",
     "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 RC Strasbourg",
     "author_odds": null,
     "market_key": "double_chance",
     "choice_key": "X2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Double chance: draw or RC Strasbourg"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Nice 2-1 RC Strasbourg."
    },
    "settlements": [
     {
      "operation_id": "9d7ce652aa63985ae41e492c8721ec19a79499580827110c90cc648815b32b9b",
      "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 RC Strasbourg",
      "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/ligue-1/nice-vs-strasbourg-2026-10-11/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "draw or RC Strasbourg"
   }
  },
  {
   "record_id": "n-409d05445a38c27a80ac381e",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-409d05445a38c27a80ac381e",
   "match": "Nice v RC Strasbourg",
   "match_url": "/football/matches/nice-vs-rc-strasbourg-2026-10-11/",
   "kickoff": "2026-10-11T13:00:00.000Z",
   "competition": "Ligue 1",
   "lead_hours": 11.1,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: over 2.5",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Won",
   "final_score": "2-1",
   "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-09T13:12:48.000Z",
   "recorded_at": "2026-10-11T01:51:01.594Z",
   "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-409d05445a38c27a80ac381e",
    "quote_text": "Plus/Moins de buts: Plus de 2,5 buts.",
    "fragment_from": 3573,
    "fragment_to": 3610,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/ligue-1/nice-vs-strasbourg-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "f3c51b20e9c7990211afdf4e3642cbe9c3a00e98f5b25cd086eb16e6366810b8",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:12:48.000Z",
    "detected_at": "2026-10-11T01:51:01.594Z",
    "executed_at": null,
    "statement_class": "unpriced",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "not_checked",
    "event": {
     "event_id": "s-98cb3d9d0835",
     "display_name": "Nice — RC Strasbourg",
     "competition_name": "Ligue 1",
     "starts_at": "2026-10-11T13:00:00.000Z",
     "url": "/football/matches/nice-vs-rc-strasbourg-2026-10-11/",
     "scoreline": "2-1",
     "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": "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-09T13:12:48.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:12:48.000Z",
     "detected_at": "2026-10-11T01:51:01.594Z",
     "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 Nice 2-1 RC Strasbourg."
    },
    "settlements": [
     {
      "operation_id": "83783a8db70573e2fe8655b63ab21c0e709e69b4f3086e5b4521841b58b63e3d",
      "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/ligue-1/nice-vs-strasbourg-2026-10-11/",
     "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-474b5bc50a1be2b1f3c7bf2e",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-474b5bc50a1be2b1f3c7bf2e",
   "match": "Nice v RC Strasbourg",
   "match_url": "/football/matches/nice-vs-rc-strasbourg-2026-10-11/",
   "kickoff": "2026-10-11T13:00:00.000Z",
   "competition": "Ligue 1",
   "lead_hours": 11.1,
   "market_code": "both_teams_score",
   "author_said": "Both teams to score: yes",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Won",
   "final_score": "2-1",
   "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-09T13:12:48.000Z",
   "recorded_at": "2026-10-11T01:51:01.594Z",
   "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-474b5bc50a1be2b1f3c7bf2e",
    "quote_text": "Les deux équipes marquent: Oui.",
    "fragment_from": 3198,
    "fragment_to": 3229,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/ligue-1/nice-vs-strasbourg-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "f3c51b20e9c7990211afdf4e3642cbe9c3a00e98f5b25cd086eb16e6366810b8",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:12:48.000Z",
    "detected_at": "2026-10-11T01:51:01.594Z",
    "executed_at": null,
    "statement_class": "unpriced",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "not_checked",
    "event": {
     "event_id": "s-98cb3d9d0835",
     "display_name": "Nice — RC Strasbourg",
     "competition_name": "Ligue 1",
     "starts_at": "2026-10-11T13:00:00.000Z",
     "url": "/football/matches/nice-vs-rc-strasbourg-2026-10-11/",
     "scoreline": "2-1",
     "condition": "finished"
    },
    "market_label": "Both teams to score",
    "outcome_label": "yes",
    "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-09T13:12:48.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:12:48.000Z",
     "detected_at": "2026-10-11T01:51:01.594Z",
     "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 Nice 2-1 RC Strasbourg."
    },
    "settlements": [
     {
      "operation_id": "b1e7ce4de7523580e4cb6f183269e843e387f5339589b9515496f8a75ed5b187",
      "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": 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/ligue-1/nice-vs-strasbourg-2026-10-11/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "yes (Both teams to score)"
   }
  },
  {
   "record_id": "n-67671e2fc9199479f6ac3878",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-67671e2fc9199479f6ac3878",
   "match": "Stade Rennais v Auxerre",
   "match_url": "/football/matches/stade-rennais-vs-auxerre-2026-10-11/",
   "kickoff": "2026-10-11T15:15:00.000Z",
   "competition": "Ligue 1",
   "lead_hours": 13.4,
   "market_code": "both_teams_score",
   "author_said": "Both teams to score: no",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "4-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "2.1600",
   "published_at": "2026-10-09T13:12:50.000Z",
   "recorded_at": "2026-10-11T01:51:01.946Z",
   "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": {
    "outcome": "yes",
    "price": "1.6494",
    "result": "Won",
    "points_hundredths": 6494,
    "picked_favourite": false
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-67671e2fc9199479f6ac3878",
    "quote_text": "Les deux équipes marquent: Non.",
    "fragment_from": 3028,
    "fragment_to": 3059,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/ligue-1/rennes-vs-auxerre-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "372786821a407e08d68a181a0fbb5e6deee2648c2f5de25f521ccaff98cb31ec",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:12:50.000Z",
    "detected_at": "2026-10-11T01:51:01.946Z",
    "executed_at": "2026-10-11T02:13:02.608Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-8736de637615",
     "display_name": "Stade Rennais — Auxerre",
     "competition_name": "Ligue 1",
     "starts_at": "2026-10-11T15:15:00.000Z",
     "url": "/football/matches/stade-rennais-vs-auxerre-2026-10-11/",
     "scoreline": "4-1",
     "condition": "finished"
    },
    "market_label": "Both teams to score",
    "outcome_label": "no",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "2.1600",
     "our_snapshot_at": "2026-10-11T01:57:55.501Z",
     "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-09T13:12:50.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:12:50.000Z",
     "detected_at": "2026-10-11T01:51:01.946Z",
     "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": "loss",
     "scoreline": "4-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Stade Rennais 4-1 Auxerre."
    },
    "settlements": [
     {
      "operation_id": "b067d87edfd54d034f8fb6bf621d22c475332157b1b4220dceb7b7a25a923b4b",
      "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.1600",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-11T02:13:02.608Z",
      "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/ligue-1/rennes-vs-auxerre-2026-10-11/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "no (Both teams to score)"
   }
  },
  {
   "record_id": "n-c1b7ea2f97f79e577cf87d1f",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-c1b7ea2f97f79e577cf87d1f",
   "match": "Stade Rennais v Auxerre",
   "match_url": "/football/matches/stade-rennais-vs-auxerre-2026-10-11/",
   "kickoff": "2026-10-11T15:15:00.000Z",
   "competition": "Ligue 1",
   "lead_hours": 13.4,
   "market_code": "1x2",
   "author_said": "1X2, match result: Stade Rennais",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "4-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 4202,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "1.4202",
   "published_at": "2026-10-09T13:12:50.000Z",
   "recorded_at": "2026-10-11T01:51:01.946Z",
   "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": {
    "outcome": "1",
    "price": "1.4202",
    "result": "Won",
    "points_hundredths": 4202,
    "picked_favourite": true
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-c1b7ea2f97f79e577cf87d1f",
    "quote_text": "Résultat du match (1X2): Victoire de Rennes.",
    "fragment_from": 2520,
    "fragment_to": 2564,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/ligue-1/rennes-vs-auxerre-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "372786821a407e08d68a181a0fbb5e6deee2648c2f5de25f521ccaff98cb31ec",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:12:50.000Z",
    "detected_at": "2026-10-11T01:51:01.946Z",
    "executed_at": "2026-10-11T02:13:02.581Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-8736de637615",
     "display_name": "Stade Rennais — Auxerre",
     "competition_name": "Ligue 1",
     "starts_at": "2026-10-11T15:15:00.000Z",
     "url": "/football/matches/stade-rennais-vs-auxerre-2026-10-11/",
     "scoreline": "4-1",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "Stade Rennais",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "1.4202",
     "our_snapshot_at": "2026-10-11T01:57:55.501Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 4202,
    "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-09T13:12:50.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:12:50.000Z",
     "detected_at": "2026-10-11T01:51:01.946Z",
     "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": "Stade Rennais",
     "author_odds": null,
     "market_key": "1x2",
     "choice_key": "1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: Stade Rennais"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "4-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Stade Rennais 4-1 Auxerre."
    },
    "settlements": [
     {
      "operation_id": "e24686fe8fcec281eff4e5e8e8ea0f1534dcf4f911ec996fa9d07c901cdf3949",
      "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": "Stade Rennais",
      "decimal_odds": "1.4202",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 4202,
      "executed_at": "2026-10-11T02:13:02.581Z",
      "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/ligue-1/rennes-vs-auxerre-2026-10-11/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Stade Rennais to win"
   }
  },
  {
   "record_id": "n-d92be3cb58403302efd7ddcf",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-d92be3cb58403302efd7ddcf",
   "match": "Stade Rennais v Auxerre",
   "match_url": "/football/matches/stade-rennais-vs-auxerre-2026-10-11/",
   "kickoff": "2026-10-11T15:15:00.000Z",
   "competition": "Ligue 1",
   "lead_hours": 13.4,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: under 2.5",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "4-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "2.5800",
   "published_at": "2026-10-09T13:12:50.000Z",
   "recorded_at": "2026-10-11T01:51:01.946Z",
   "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": {
    "at": "2026-10-14T02:01:02.939Z",
    "field": "line sign",
    "reason": "Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and the outcome is worked out on it. This pick had not been executed. It is now assessed under the publ",
    "version": 2,
    "url": "/corrections/#c-b39fe511c931",
    "text": "Corrected on 14 October 2026: Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and"
   },
   "evidence": {
    "observation_id": "n-d92be3cb58403302efd7ddcf",
    "quote_text": "Plus/Moins de buts: Moins de 2,5 buts.",
    "fragment_from": 2770,
    "fragment_to": 2808,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/ligue-1/rennes-vs-auxerre-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "372786821a407e08d68a181a0fbb5e6deee2648c2f5de25f521ccaff98cb31ec",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:12:50.000Z",
    "detected_at": "2026-10-11T01:51:01.946Z",
    "executed_at": "2026-10-22T12:28:59.307Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-8736de637615",
     "display_name": "Stade Rennais — Auxerre",
     "competition_name": "Ligue 1",
     "starts_at": "2026-10-11T15:15:00.000Z",
     "url": "/football/matches/stade-rennais-vs-auxerre-2026-10-11/",
     "scoreline": "4-1",
     "condition": "finished"
    },
    "market_label": "Over/Under 2.5 goals",
    "outcome_label": "under 2.5",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "2.5800",
     "our_snapshot_at": "2026-10-11T01:50:36.000Z",
     "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-09T13:12:50.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:12:50.000Z",
     "detected_at": "2026-10-11T01:51:01.946Z",
     "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": "under 2.5",
     "author_odds": null,
     "market_key": "total",
     "choice_key": "under",
     "period": "match",
     "line": "2.5",
     "subject": "goals_total",
     "in_words": "Over/Under 2.5 goals: under 2.5"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "4-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Stade Rennais 4-1 Auxerre."
    },
    "settlements": [
     {
      "operation_id": "e2fb11a63efd62b9e3f837dc48532c96a44b165ec8b2a9f6ef7597cddb8b5d79",
      "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": "under 2.5",
      "decimal_odds": "2.5800",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-22T12:28:59.307Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [
     {
      "at": "2026-10-14T02:01:02.939Z",
      "field_name": "line sign",
      "was": "Over/Under −2.5 goals · under −2.5",
      "now": "Over/Under 2.5 goals · under 2.5",
      "cause": "Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and the outcome is worked out on it. This pick had not been executed. It is now assessed under the published method."
     }
    ],
    "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/ligue-1/rennes-vs-auxerre-2026-10-11/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": {
     "at": "2026-10-14T02:01:02.939Z",
     "field": "line sign",
     "reason": "Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and the outcome is worked out on it. This pick had not been executed. It is now assessed under the publ",
     "version": 2,
     "url": "/corrections/#c-b39fe511c931",
     "text": "Corrected on 14 October 2026: Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and"
    },
    "choice_words": "under 2.5 (Over/Under 2.5 goals)"
   }
  },
  {
   "record_id": "n-0958e28729453e5edebd5115",
   "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-09T13:12:52.000Z",
   "recorded_at": "2026-10-11T01:51:02.209Z",
   "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-36db228717f20b0e0f87a3a7",
   "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-09T13:12:52.000Z",
   "recorded_at": "2026-10-11T01:51:02.209Z",
   "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-40b568ea0276a887d6bac16a",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Aucun but encaissé: Non.",
   "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-09T13:12:52.000Z",
   "recorded_at": "2026-10-11T01:51:02.209Z",
   "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-13df79af5d1d67921e1f021b",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-13df79af5d1d67921e1f021b",
   "match": "Crystal Palace v Nottingham Forest",
   "match_url": "/football/matches/crystal-palace-vs-nottingham-forest-2026-10-11/",
   "kickoff": "2026-10-11T13:00:00.000Z",
   "competition": "Premier League",
   "lead_hours": 10.5,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: under 2.5",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "3-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "1.8893",
   "published_at": "2026-10-09T13:12:58.000Z",
   "recorded_at": "2026-10-11T02:30:45.106Z",
   "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": {
    "outcome": "under",
    "price": "1.8893",
    "result": "Lost",
    "points_hundredths": -10000,
    "picked_favourite": true
   },
   "correction": {
    "at": "2026-10-14T02:01:04.179Z",
    "field": "line sign",
    "reason": "Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and the outcome is worked out on it. This pick had not been executed. It is now assessed under the publ",
    "version": 2,
    "url": "/corrections/#c-b39fe511c931",
    "text": "Corrected on 14 October 2026: Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and"
   },
   "evidence": {
    "observation_id": "n-13df79af5d1d67921e1f021b",
    "quote_text": "Plus/Moins de buts: Moins de 2,5 buts.",
    "fragment_from": 3577,
    "fragment_to": 3615,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/premier-league/crystal-palace-vs-nottingham-forest-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "1bd5571e3c7fd43eebf62a8745235f881701c65345480242c5a7af5327137846",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:12:58.000Z",
    "detected_at": "2026-10-11T02:30:45.106Z",
    "executed_at": "2026-10-14T02:14:19.252Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-83453d98f561",
     "display_name": "Crystal Palace — Nottingham Forest",
     "competition_name": "Premier League",
     "starts_at": "2026-10-11T13:00:00.000Z",
     "url": "/football/matches/crystal-palace-vs-nottingham-forest-2026-10-11/",
     "scoreline": "3-1",
     "condition": "finished"
    },
    "market_label": "Over/Under 2.5 goals",
    "outcome_label": "under 2.5",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "1.8893",
     "our_snapshot_at": "2026-10-11T02:27:09.249Z",
     "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-09T13:12:58.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:12:58.000Z",
     "detected_at": "2026-10-11T02:30:45.106Z",
     "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": "under 2.5",
     "author_odds": null,
     "market_key": "total",
     "choice_key": "under",
     "period": "match",
     "line": "2.5",
     "subject": "goals_total",
     "in_words": "Over/Under 2.5 goals: under 2.5"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "3-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Crystal Palace 3-1 Nottingham Forest."
    },
    "settlements": [
     {
      "operation_id": "a578d0b50da4e4042bf6c13d335d507ada0b87d49808418078221aed96f00cd0",
      "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": "under 2.5",
      "decimal_odds": "1.8893",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-14T02:14:19.252Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [
     {
      "at": "2026-10-14T02:01:04.179Z",
      "field_name": "line sign",
      "was": "Over/Under −2.5 goals · under −2.5",
      "now": "Over/Under 2.5 goals · under 2.5",
      "cause": "Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and the outcome is worked out on it. This pick had not been executed. It is now assessed under the published method."
     }
    ],
    "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/premier-league/crystal-palace-vs-nottingham-forest-2026-10-11/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": {
     "at": "2026-10-14T02:01:04.179Z",
     "field": "line sign",
     "reason": "Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and the outcome is worked out on it. This pick had not been executed. It is now assessed under the publ",
     "version": 2,
     "url": "/corrections/#c-b39fe511c931",
     "text": "Corrected on 14 October 2026: Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and"
    },
    "choice_words": "under 2.5 (Over/Under 2.5 goals)"
   }
  },
  {
   "record_id": "n-34b69c52b2cdd70591990803",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-34b69c52b2cdd70591990803",
   "match": "Crystal Palace v Nottingham Forest",
   "match_url": "/football/matches/crystal-palace-vs-nottingham-forest-2026-10-11/",
   "kickoff": "2026-10-11T13:00:00.000Z",
   "competition": "Premier League",
   "lead_hours": 10.5,
   "market_code": "both_teams_score",
   "author_said": "Both teams to score: no",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "3-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "2.1000",
   "published_at": "2026-10-09T13:12:58.000Z",
   "recorded_at": "2026-10-11T02:30:45.106Z",
   "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": {
    "outcome": "yes",
    "price": "1.6757",
    "result": "Won",
    "points_hundredths": 6757,
    "picked_favourite": false
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-34b69c52b2cdd70591990803",
    "quote_text": "Les deux équipes marquent: Non.",
    "fragment_from": 3227,
    "fragment_to": 3258,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/premier-league/crystal-palace-vs-nottingham-forest-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "1bd5571e3c7fd43eebf62a8745235f881701c65345480242c5a7af5327137846",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:12:58.000Z",
    "detected_at": "2026-10-11T02:30:45.106Z",
    "executed_at": "2026-10-11T03:25:53.770Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-83453d98f561",
     "display_name": "Crystal Palace — Nottingham Forest",
     "competition_name": "Premier League",
     "starts_at": "2026-10-11T13:00:00.000Z",
     "url": "/football/matches/crystal-palace-vs-nottingham-forest-2026-10-11/",
     "scoreline": "3-1",
     "condition": "finished"
    },
    "market_label": "Both teams to score",
    "outcome_label": "no",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "2.1000",
     "our_snapshot_at": "2026-10-11T02:27:09.249Z",
     "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-09T13:12:58.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:12:58.000Z",
     "detected_at": "2026-10-11T02:30:45.106Z",
     "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": "loss",
     "scoreline": "3-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Crystal Palace 3-1 Nottingham Forest."
    },
    "settlements": [
     {
      "operation_id": "64b6a19c0507bd83473eee45d0f9325511fda593ecdbdeee897f16fc5b8b078f",
      "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.1000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-11T03:25:53.770Z",
      "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/premier-league/crystal-palace-vs-nottingham-forest-2026-10-11/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "no (Both teams to score)"
   }
  },
  {
   "record_id": "n-e1d2f11ec319d5e2c96a192a",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-e1d2f11ec319d5e2c96a192a",
   "match": "Crystal Palace v Nottingham Forest",
   "match_url": "/football/matches/crystal-palace-vs-nottingham-forest-2026-10-11/",
   "kickoff": "2026-10-11T13:00:00.000Z",
   "competition": "Premier League",
   "lead_hours": 10.5,
   "market_code": "double_chance",
   "author_said": "Double chance: draw or Nottingham Forest",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "3-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "1.4325",
   "published_at": "2026-10-09T13:12:58.000Z",
   "recorded_at": "2026-10-11T02:30:45.106Z",
   "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-e1d2f11ec319d5e2c96a192a",
    "quote_text": "Double chance: Nottingham Forest ou match nul.",
    "fragment_from": 2948,
    "fragment_to": 2994,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/premier-league/crystal-palace-vs-nottingham-forest-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "1bd5571e3c7fd43eebf62a8745235f881701c65345480242c5a7af5327137846",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:12:58.000Z",
    "detected_at": "2026-10-11T02:30:45.106Z",
    "executed_at": "2026-10-11T03:25:56.277Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-83453d98f561",
     "display_name": "Crystal Palace — Nottingham Forest",
     "competition_name": "Premier League",
     "starts_at": "2026-10-11T13:00:00.000Z",
     "url": "/football/matches/crystal-palace-vs-nottingham-forest-2026-10-11/",
     "scoreline": "3-1",
     "condition": "finished"
    },
    "market_label": "Double chance",
    "outcome_label": "draw or Nottingham Forest",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "1.4325",
     "our_snapshot_at": "2026-10-11T02:27:09.249Z",
     "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-09T13:12:58.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:12:58.000Z",
     "detected_at": "2026-10-11T02:30:45.106Z",
     "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 Nottingham Forest",
     "author_odds": null,
     "market_key": "double_chance",
     "choice_key": "X2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Double chance: draw or Nottingham Forest"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "3-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Crystal Palace 3-1 Nottingham Forest."
    },
    "settlements": [
     {
      "operation_id": "411b4112c638eb65469d1aec2cce3fc7e0d1679c63201fb784fabd5c23b95e4a",
      "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 Nottingham Forest",
      "decimal_odds": "1.4325",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-11T03:25:56.277Z",
      "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/premier-league/crystal-palace-vs-nottingham-forest-2026-10-11/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "draw or Nottingham Forest"
   }
  },
  {
   "record_id": "n-795214980fb4dd69e1ad43fe",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-795214980fb4dd69e1ad43fe",
   "match": "Hull City v Everton",
   "match_url": "/football/matches/hull-city-vs-everton-2026-10-11/",
   "kickoff": "2026-10-11T13:00:00.000Z",
   "competition": "Premier League",
   "lead_hours": 10.5,
   "market_code": "both_teams_score",
   "author_said": "Both teams to score: no",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "2-2",
   "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-09T13:12:56.000Z",
   "recorded_at": "2026-10-11T02:30:45.451Z",
   "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-795214980fb4dd69e1ad43fe",
    "quote_text": "Les deux équipes marquent: Non.",
    "fragment_from": 3339,
    "fragment_to": 3370,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/premier-league/hull-vs-everton-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "d47712b42a17b273c85079feb2c371aae91dcfde72a56f6cdd60a411cc822a6a",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:12:56.000Z",
    "detected_at": "2026-10-11T02:30:45.451Z",
    "executed_at": null,
    "statement_class": "unpriced",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "not_checked",
    "event": {
     "event_id": "s-e65525f23524",
     "display_name": "Hull City — Everton",
     "competition_name": "Premier League",
     "starts_at": "2026-10-11T13:00:00.000Z",
     "url": "/football/matches/hull-city-vs-everton-2026-10-11/",
     "scoreline": "2-2",
     "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": "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-09T13:12:56.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:12:56.000Z",
     "detected_at": "2026-10-11T02:30:45.451Z",
     "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": "loss",
     "scoreline": "2-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Hull City 2-2 Everton."
    },
    "settlements": [
     {
      "operation_id": "6fbfce314accc215c7f2e6091f10db24463a0b2501ea60dd3e794e496447f468",
      "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/premier-league/hull-vs-everton-2026-10-11/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "no (Both teams to score)"
   }
  },
  {
   "record_id": "n-7a7dbf01ab23b78032197c85",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-7a7dbf01ab23b78032197c85",
   "match": "Hull City v Everton",
   "match_url": "/football/matches/hull-city-vs-everton-2026-10-11/",
   "kickoff": "2026-10-11T13:00:00.000Z",
   "competition": "Premier League",
   "lead_hours": 10.5,
   "market_code": "1x2",
   "author_said": "1X2, match result: draw",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Won",
   "final_score": "2-2",
   "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-09T13:12:56.000Z",
   "recorded_at": "2026-10-11T02:30:45.451Z",
   "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-7a7dbf01ab23b78032197c85",
    "quote_text": "Résultat du match (1X2): Nul.",
    "fragment_from": 2952,
    "fragment_to": 2981,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/premier-league/hull-vs-everton-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "d47712b42a17b273c85079feb2c371aae91dcfde72a56f6cdd60a411cc822a6a",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:12:56.000Z",
    "detected_at": "2026-10-11T02:30:45.451Z",
    "executed_at": null,
    "statement_class": "unpriced",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "not_checked",
    "event": {
     "event_id": "s-e65525f23524",
     "display_name": "Hull City — Everton",
     "competition_name": "Premier League",
     "starts_at": "2026-10-11T13:00:00.000Z",
     "url": "/football/matches/hull-city-vs-everton-2026-10-11/",
     "scoreline": "2-2",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "draw",
    "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-09T13:12:56.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:12:56.000Z",
     "detected_at": "2026-10-11T02:30:45.451Z",
     "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": "win",
     "scoreline": "2-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Hull City 2-2 Everton."
    },
    "settlements": [
     {
      "operation_id": "73a2ef8b9334db9cec2305e217a87c2e578e57dc058bf7e7e6b42bf5be584699",
      "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": 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/premier-league/hull-vs-everton-2026-10-11/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "a draw"
   }
  },
  {
   "record_id": "n-8f87f8e9fddac6518931b205",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-8f87f8e9fddac6518931b205",
   "match": "Hull City v Everton",
   "match_url": "/football/matches/hull-city-vs-everton-2026-10-11/",
   "kickoff": "2026-10-11T13:00:00.000Z",
   "competition": "Premier League",
   "lead_hours": 10.5,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: under 2.5",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "2-2",
   "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-09T13:12:56.000Z",
   "recorded_at": "2026-10-11T02:30:45.451Z",
   "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": {
    "at": "2026-10-14T02:01:04.193Z",
    "field": "line sign",
    "reason": "Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and the outcome is worked out on it. This pick was never executed, so no number changes.",
    "version": 2,
    "url": "/corrections/#c-f1b2048399e9",
    "text": "Corrected on 14 October 2026: Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and"
   },
   "evidence": {
    "observation_id": "n-8f87f8e9fddac6518931b205",
    "quote_text": "Plus/Moins de buts: Moins de 2,5 buts.",
    "fragment_from": 3718,
    "fragment_to": 3756,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/premier-league/hull-vs-everton-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "d47712b42a17b273c85079feb2c371aae91dcfde72a56f6cdd60a411cc822a6a",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:12:56.000Z",
    "detected_at": "2026-10-11T02:30:45.451Z",
    "executed_at": null,
    "statement_class": "unpriced",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "not_checked",
    "event": {
     "event_id": "s-e65525f23524",
     "display_name": "Hull City — Everton",
     "competition_name": "Premier League",
     "starts_at": "2026-10-11T13:00:00.000Z",
     "url": "/football/matches/hull-city-vs-everton-2026-10-11/",
     "scoreline": "2-2",
     "condition": "finished"
    },
    "market_label": "Over/Under 2.5 goals",
    "outcome_label": "under 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-09T13:12:56.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:12:56.000Z",
     "detected_at": "2026-10-11T02:30:45.451Z",
     "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": "under 2.5",
     "author_odds": null,
     "market_key": "total",
     "choice_key": "under",
     "period": "match",
     "line": "2.5",
     "subject": "goals_total",
     "in_words": "Over/Under 2.5 goals: under 2.5"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Hull City 2-2 Everton."
    },
    "settlements": [
     {
      "operation_id": "1388606f7d00cb6c03bc30ae83c1a1f3bf929f132dfa37b735f03b0ce10c7d04",
      "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": "under 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": [
     {
      "at": "2026-10-14T02:01:04.193Z",
      "field_name": "line sign",
      "was": "Over/Under −2.5 goals · under −2.5",
      "now": "Over/Under 2.5 goals · under 2.5",
      "cause": "Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and the outcome is worked out on it. This pick was never executed, so no number changes."
     }
    ],
    "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/premier-league/hull-vs-everton-2026-10-11/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": {
     "at": "2026-10-14T02:01:04.193Z",
     "field": "line sign",
     "reason": "Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and the outcome is worked out on it. This pick was never executed, so no number changes.",
     "version": 2,
     "url": "/corrections/#c-f1b2048399e9",
     "text": "Corrected on 14 October 2026: Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and"
    },
    "choice_words": "under 2.5 (Over/Under 2.5 goals)"
   }
  },
  {
   "record_id": "n-22c6984111985bbd0a58b701",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-22c6984111985bbd0a58b701",
   "match": "Liverpool v Manchester City",
   "match_url": "/football/matches/liverpool-vs-manchester-city-2026-10-11/",
   "kickoff": "2026-10-11T15:30:00.000Z",
   "competition": "Premier League",
   "lead_hours": 13.0,
   "market_code": "both_teams_score",
   "author_said": "Both teams to score: yes",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "0-3",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "1.5000",
   "published_at": "2026-10-09T13:13:00.000Z",
   "recorded_at": "2026-10-11T02:30:45.728Z",
   "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": {
    "outcome": "yes",
    "price": "1.5000",
    "result": "Lost",
    "points_hundredths": -10000,
    "picked_favourite": true
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-22c6984111985bbd0a58b701",
    "quote_text": "Les deux équipes marquent: Oui.",
    "fragment_from": 3367,
    "fragment_to": 3398,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/premier-league/liverpool-vs-manchester-city-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "05446fb59ac3ad5e09471b296ea187ec035c00941261e31f7bc49473b095bb85",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:13:00.000Z",
    "detected_at": "2026-10-11T02:30:45.728Z",
    "executed_at": "2026-10-11T03:28:05.722Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-890891f7d4b9",
     "display_name": "Liverpool — Manchester City",
     "competition_name": "Premier League",
     "starts_at": "2026-10-11T15:30:00.000Z",
     "url": "/football/matches/liverpool-vs-manchester-city-2026-10-11/",
     "scoreline": "0-3",
     "condition": "finished"
    },
    "market_label": "Both teams to score",
    "outcome_label": "yes",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "1.5000",
     "our_snapshot_at": "2026-10-11T02:27:09.249Z",
     "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-09T13:13:00.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:13:00.000Z",
     "detected_at": "2026-10-11T02:30:45.728Z",
     "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": "loss",
     "scoreline": "0-3",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Liverpool 0-3 Manchester City."
    },
    "settlements": [
     {
      "operation_id": "937a36279a46c11ca4591ecc2d5eb7b4b744c7cdeda4f6cd9a34ff5ce8a8fb57",
      "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.5000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-11T03:28:05.722Z",
      "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/premier-league/liverpool-vs-manchester-city-2026-10-11/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "yes (Both teams to score)"
   }
  },
  {
   "record_id": "n-5eb50c03c838df8d63f3fdc6",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-5eb50c03c838df8d63f3fdc6",
   "match": "Liverpool v Manchester City",
   "match_url": "/football/matches/liverpool-vs-manchester-city-2026-10-11/",
   "kickoff": "2026-10-11T15:30:00.000Z",
   "competition": "Premier League",
   "lead_hours": 13.0,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: over 2.5",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "0-3",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 6000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "1.6000",
   "published_at": "2026-10-09T13:13:00.000Z",
   "recorded_at": "2026-10-11T02:30:45.728Z",
   "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-5eb50c03c838df8d63f3fdc6",
    "quote_text": "Plus/Moins de buts: Plus de 2,5 buts.",
    "fragment_from": 3667,
    "fragment_to": 3704,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/premier-league/liverpool-vs-manchester-city-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "05446fb59ac3ad5e09471b296ea187ec035c00941261e31f7bc49473b095bb85",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:13:00.000Z",
    "detected_at": "2026-10-11T02:30:45.728Z",
    "executed_at": "2026-10-22T12:49:06.453Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-890891f7d4b9",
     "display_name": "Liverpool — Manchester City",
     "competition_name": "Premier League",
     "starts_at": "2026-10-11T15:30:00.000Z",
     "url": "/football/matches/liverpool-vs-manchester-city-2026-10-11/",
     "scoreline": "0-3",
     "condition": "finished"
    },
    "market_label": "Over/Under 2.5 goals",
    "outcome_label": "over 2.5",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "1.6000",
     "our_snapshot_at": "2026-10-11T02:30:37.000Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 6000,
    "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-09T13:13:00.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:13:00.000Z",
     "detected_at": "2026-10-11T02:30:45.728Z",
     "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": "0-3",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Liverpool 0-3 Manchester City."
    },
    "settlements": [
     {
      "operation_id": "a7926293b95b03162c5b2714308920b544ffbb34e120007f770c60e0e3ce2593",
      "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": "1.6000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 6000,
      "executed_at": "2026-10-22T12:49:06.453Z",
      "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/premier-league/liverpool-vs-manchester-city-2026-10-11/",
     "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-fdfeee3826b6242f2764089a",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-fdfeee3826b6242f2764089a",
   "match": "Liverpool v Manchester City",
   "match_url": "/football/matches/liverpool-vs-manchester-city-2026-10-11/",
   "kickoff": "2026-10-11T15:30:00.000Z",
   "competition": "Premier League",
   "lead_hours": 13.0,
   "market_code": "1x2",
   "author_said": "1X2, match result: draw",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "0-3",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "3.6500",
   "published_at": "2026-10-09T13:13:00.000Z",
   "recorded_at": "2026-10-11T02:30:45.728Z",
   "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": {
    "outcome": "2",
    "price": "2.2500",
    "result": "Won",
    "points_hundredths": 12500,
    "picked_favourite": false
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-fdfeee3826b6242f2764089a",
    "quote_text": "Résultat du match (1X2): Match nul.",
    "fragment_from": 2921,
    "fragment_to": 2956,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/premier-league/liverpool-vs-manchester-city-2026-10-11/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "05446fb59ac3ad5e09471b296ea187ec035c00941261e31f7bc49473b095bb85",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:13:00.000Z",
    "detected_at": "2026-10-11T02:30:45.728Z",
    "executed_at": "2026-10-11T03:28:05.660Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-890891f7d4b9",
     "display_name": "Liverpool — Manchester City",
     "competition_name": "Premier League",
     "starts_at": "2026-10-11T15:30:00.000Z",
     "url": "/football/matches/liverpool-vs-manchester-city-2026-10-11/",
     "scoreline": "0-3",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "draw",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "3.6500",
     "our_snapshot_at": "2026-10-11T02:27:09.249Z",
     "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-09T13:13:00.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:13:00.000Z",
     "detected_at": "2026-10-11T02:30:45.728Z",
     "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": "0-3",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Liverpool 0-3 Manchester City."
    },
    "settlements": [
     {
      "operation_id": "16bce3d9a0f8efc70a2d63a4da943bc0d589eef202a592d17d9718d2feaefc7d",
      "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.6500",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-11T03:28:05.660Z",
      "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/premier-league/liverpool-vs-manchester-city-2026-10-11/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "a draw"
   }
  },
  {
   "record_id": "n-15fce0806795abc46053982d",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Aucun but encaissé: Non.",
   "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-09T13:24:07.000Z",
   "recorded_at": "2026-10-11T03:29:48.321Z",
   "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-5985150bf13854fc86118448",
   "url": "/sources/paris-sportifs-ouest-france-fr/picks/2/#pick-n-5985150bf13854fc86118448",
   "match": "Coventry City v Newcastle United",
   "match_url": "/football/matches/coventry-city-vs-newcastle-united-2026-10-12/",
   "kickoff": "2026-10-12T19:00:00.000Z",
   "competition": "Premier League",
   "lead_hours": 39.5,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: under 2.5",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "4-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "2.1400",
   "published_at": "2026-10-09T13:24:07.000Z",
   "recorded_at": "2026-10-11T03:29:48.321Z",
   "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": {
    "outcome": "over",
    "price": "1.6993",
    "result": "Won",
    "points_hundredths": 6993,
    "picked_favourite": false
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-5985150bf13854fc86118448",
    "quote_text": "Plus/Moins de buts: Moins de 2,5 buts.",
    "fragment_from": 3651,
    "fragment_to": 3689,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://paris-sportifs.ouest-france.fr/football/premier-league/coventry-vs-newcastle-2026-10-12/",
     "display_name": null,
     "speaker": null,
     "authorship": "channel_consensus",
     "media_from_ms": null,
     "bundle_id": "c251a58f6cdd8a730400005c957c3eb48337979ec37d3409c446b3f83c3b42e1",
     "material_removed": false
    },
    "published_at": "2026-10-09T13:24:07.000Z",
    "detected_at": "2026-10-11T03:29:48.321Z",
    "executed_at": "2026-10-11T03:44:52.688Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-3bc84f9786dd",
     "display_name": "Coventry City — Newcastle United",
     "competition_name": "Premier League",
     "starts_at": "2026-10-12T19:00:00.000Z",
     "url": "/football/matches/coventry-city-vs-newcastle-united-2026-10-12/",
     "scoreline": "4-1",
     "condition": "finished"
    },
    "market_label": "Over/Under 2.5 goals",
    "outcome_label": "under 2.5",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "2.1400",
     "our_snapshot_at": "2026-10-11T03:28:06.872Z",
     "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-09T13:24:07.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-09T13:24:07.000Z",
     "detected_at": "2026-10-11T03:29:48.321Z",
     "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": "under 2.5",
     "author_odds": null,
     "market_key": "total",
     "choice_key": "under",
     "period": "match",
     "line": "2.5",
     "subject": "goals_total",
     "in_words": "Over/Under 2.5 goals: under 2.5"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "4-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Coventry City 4-1 Newcastle United."
    },
    "settlements": [
     {
      "operation_id": "eec986ef745ea8a05b7dccbcec76fb12f0794c379ac4a8bf5c959121e3ce2f04",
      "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": "under 2.5",
      "decimal_odds": "2.1400",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-11T03:44:52.688Z",
      "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/premier-league/coventry-vs-newcastle-2026-10-12/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "under 2.5 (Over/Under 2.5 goals)"
   }
  }
 ],
 "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": 2,
  "first": 1,
  "last": 20,
  "author_url": "/sources/paris-sportifs-ouest-france-fr/",
  "current": false
 },
 "entity_id": "history:/sources/paris-sportifs-ouest-france-fr/picks/2/",
 "source_revision": 89
}
