{
 "schema_name": "page",
 "schema_version": "2.0",
 "page_type": "history",
 "url": "/sources/oddsekspert-no/picks/17/",
 "canonical": "/sources/oddsekspert-no/picks/17/",
 "language": "en",
 "hreflang": [],
 "translations": [],
 "heading": "OddsEkspert.no — football predictions, page 17 of 19",
 "description": "Predictions 301–320 of 358 by OddsEkspert.no, with outcomes in words and links to the evidence.",
 "first_paragraph": {
  "body": "Page 17 of 19 of the predictions by OddsEkspert.no recorded by Forecast Record: predictions 301–320 of 358 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": "358",
  "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:10:41.631Z",
 "built_at": "2026-11-07T19:52:23.438Z",
 "lastmod": "2026-11-07T19:52:23.438Z",
 "content_hash": null,
 "meaning_hash": "2bc4df6ce60c250b1898cda4dc672086f9d3385b12a4385dc4d1745a4fa2b68b",
 "dependency_group": "author:e-08e0df8122e7e5a9c4e55848",
 "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/oddsekspert-no/picks/17/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-08e0df8122e7e5a9c4e55848",
  "public_name": "OddsEkspert.no",
  "tracker_number": 2918,
  "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-457ccdb7881ced2be9febc7b",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-457ccdb7881ced2be9febc7b",
   "match": "Real Sociedad v Olympique Lyonnais",
   "match_url": "/football/matches/real-sociedad-vs-olympique-lyonnais-2026-11-05/",
   "kickoff": "2026-11-05T17:45:00.000Z",
   "competition": "UEFA Europa League",
   "lead_hours": 9.6,
   "market_code": "1x2",
   "author_said": "1X2, match result: Olympique Lyonnais",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "1-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "4.7000",
   "published_at": null,
   "recorded_at": "2026-11-05T08:10:04.597Z",
   "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-457ccdb7881ced2be9febc7b",
    "quote_text": "Basert på den nåværende formen og lagets prestasjoner, er det rimelig å forutsi at Olympique Lyonnais vil vinne denne kampen.",
    "fragment_from": 1033,
    "fragment_to": 1158,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/real-sociedad-olympique-lyonnais-05-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "e79b8d69ebe0e8b9feae075ec6f7ad4845051c1b022382520ddb2cc4d83ac2b7",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T08:10:04.597Z",
    "executed_at": "2026-11-05T08:12:22.502Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-7186b2d06586",
     "display_name": "Real Sociedad — Olympique Lyonnais",
     "competition_name": "UEFA Europa League",
     "starts_at": "2026-11-05T17:45:00.000Z",
     "url": "/football/matches/real-sociedad-vs-olympique-lyonnais-2026-11-05/",
     "scoreline": "1-1",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "Olympique Lyonnais",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "4.7000",
     "our_snapshot_at": "2026-11-05T08:07:55.189Z",
     "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-05T17:45:00.000Z",
     "detected_at": "2026-11-05T08:10:04.597Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Olympique Lyonnais",
     "author_odds": null,
     "market_key": "1x2",
     "choice_key": "2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: Olympique Lyonnais"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "1-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Real Sociedad 1-1 Olympique Lyonnais."
    },
    "settlements": [
     {
      "operation_id": "17fc202d3514f3a364ee6f65124460e78628d4d0d542f9b97cdcd185c43a2275",
      "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": "Olympique Lyonnais",
      "decimal_odds": "4.7000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-05T08:12:22.502Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/real-sociedad-olympique-lyonnais-05-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Olympique Lyonnais to win"
   }
  },
  {
   "record_id": "n-61641fa131a01018290de42c",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-61641fa131a01018290de42c",
   "match": "Real Sociedad v Olympique Lyonnais",
   "match_url": "/football/matches/real-sociedad-vs-olympique-lyonnais-2026-11-05/",
   "kickoff": "2026-11-05T17:45:00.000Z",
   "competition": "UEFA Europa League",
   "lead_hours": 9.6,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Real Sociedad 1-2 Olympique Lyonnais",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "1-1",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-05T08:10:04.597Z",
   "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-61641fa131a01018290de42c",
    "quote_text": "En mulig resultat kan være 2-1 til Lyon",
    "fragment_from": 1159,
    "fragment_to": 1198,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/real-sociedad-olympique-lyonnais-05-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "e79b8d69ebe0e8b9feae075ec6f7ad4845051c1b022382520ddb2cc4d83ac2b7",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T08:10:04.597Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-7186b2d06586",
     "display_name": "Real Sociedad — Olympique Lyonnais",
     "competition_name": "UEFA Europa League",
     "starts_at": "2026-11-05T17:45:00.000Z",
     "url": "/football/matches/real-sociedad-vs-olympique-lyonnais-2026-11-05/",
     "scoreline": "1-1",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Real Sociedad 1-2 Olympique Lyonnais",
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-05T17:45:00.000Z",
     "detected_at": "2026-11-05T08:10:04.597Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "Real Sociedad 1-2 Olympique Lyonnais",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "1-2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Real Sociedad 1-2 Olympique Lyonnais"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "1-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Real Sociedad 1-1 Olympique Lyonnais."
    },
    "settlements": [
     {
      "operation_id": "64447ddad6e29abdad200c9d57565fe13f900e0fda86a5c44be4300670b7977c",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Olympique Lyonnais",
      "decimal_odds": "4.7000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-05T08:12:22.864Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/real-sociedad-olympique-lyonnais-05-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Real Sociedad 1-2 Olympique Lyonnais"
   }
  },
  {
   "record_id": "n-98e90cc1c91410eaa57dc71e",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-98e90cc1c91410eaa57dc71e",
   "match": "Anderlecht v Red Bull Salzburg",
   "match_url": "/football/matches/anderlecht-vs-red-bull-salzburg-2026-11-05/",
   "kickoff": "2026-11-05T17:45:00.000Z",
   "competition": "UEFA Europa League",
   "lead_hours": 9.4,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Anderlecht 1-2 Red Bull Salzburg",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "2-0",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-05T08:19:46.193Z",
   "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-98e90cc1c91410eaa57dc71e",
    "quote_text": "Jeg tror kampen vil ende 2-1 til Salzburg.",
    "fragment_from": 1197,
    "fragment_to": 1239,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/anderlecht-salzburg-05-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "de6b8e1bc328628c44f99ed0b94bec5c01886013b4795d95bdcf067fb3fae26a",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T08:19:46.193Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-8e47f16889a2",
     "display_name": "Anderlecht — Red Bull Salzburg",
     "competition_name": "UEFA Europa League",
     "starts_at": "2026-11-05T17:45:00.000Z",
     "url": "/football/matches/anderlecht-vs-red-bull-salzburg-2026-11-05/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Anderlecht 1-2 Red Bull Salzburg",
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-05T17:45:00.000Z",
     "detected_at": "2026-11-05T08:19:46.193Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "Anderlecht 1-2 Red Bull Salzburg",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "1-2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Anderlecht 1-2 Red Bull Salzburg"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Anderlecht 2-0 Red Bull Salzburg."
    },
    "settlements": [
     {
      "operation_id": "26a72bc526c3f114bc74c94b80287681a72c2da0bd46776688a9ee1d8369f014",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Red Bull Salzburg",
      "decimal_odds": "3.5000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-05T08:20:42.362Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/anderlecht-salzburg-05-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Anderlecht 1-2 Red Bull Salzburg"
   }
  },
  {
   "record_id": "n-abd85f9bd1461c8711f23ca4",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-abd85f9bd1461c8711f23ca4",
   "match": "Anderlecht v Red Bull Salzburg",
   "match_url": "/football/matches/anderlecht-vs-red-bull-salzburg-2026-11-05/",
   "kickoff": "2026-11-05T17:45:00.000Z",
   "competition": "UEFA Europa League",
   "lead_hours": 9.4,
   "market_code": "1x2",
   "author_said": "1X2, match result: Red Bull Salzburg",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "2-0",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "3.5000",
   "published_at": null,
   "recorded_at": "2026-11-05T08:19:46.193Z",
   "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-abd85f9bd1461c8711f23ca4",
    "quote_text": "Med tanke på lagens nåværende form og situasjon, er det rimelig å forutsi en seier for Salzburg.",
    "fragment_from": 1100,
    "fragment_to": 1196,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/anderlecht-salzburg-05-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "de6b8e1bc328628c44f99ed0b94bec5c01886013b4795d95bdcf067fb3fae26a",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T08:19:46.193Z",
    "executed_at": "2026-11-05T08:20:42.804Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-8e47f16889a2",
     "display_name": "Anderlecht — Red Bull Salzburg",
     "competition_name": "UEFA Europa League",
     "starts_at": "2026-11-05T17:45:00.000Z",
     "url": "/football/matches/anderlecht-vs-red-bull-salzburg-2026-11-05/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "Red Bull Salzburg",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "3.5000",
     "our_snapshot_at": "2026-11-05T08:18:10.557Z",
     "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-05T17:45:00.000Z",
     "detected_at": "2026-11-05T08:19:46.193Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Red Bull Salzburg",
     "author_odds": null,
     "market_key": "1x2",
     "choice_key": "2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: Red Bull Salzburg"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Anderlecht 2-0 Red Bull Salzburg."
    },
    "settlements": [
     {
      "operation_id": "b53f115173541f10e7ffa5580a49c70dced424ca95e5d1edf940293c55540530",
      "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": "Red Bull Salzburg",
      "decimal_odds": "3.5000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-05T08:20:42.804Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/anderlecht-salzburg-05-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Red Bull Salzburg to win"
   }
  },
  {
   "record_id": "n-f82be3f57ffe3428d66d0c25",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-f82be3f57ffe3428d66d0c25",
   "match": "AZ Alkmaar v Juventus",
   "match_url": "/football/matches/az-alkmaar-vs-juventus-2026-11-05/",
   "kickoff": "2026-11-05T20:00:00.000Z",
   "competition": "UEFA Europa League",
   "lead_hours": 11.7,
   "market_code": "correct_score_market",
   "author_said": "Correct score: AZ Alkmaar 0-2 Juventus",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "1-2",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-05T08:19:48.158Z",
   "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-f82be3f57ffe3428d66d0c25",
    "quote_text": "Et realistisk resultat kan være 2-0 til Juventus.",
    "fragment_from": 1054,
    "fragment_to": 1103,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/az-juventus-05-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "7c4cf45d04759b4d646924f61b9d76a5bef158cf1f778fbc20b16ec6696ca643",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T08:19:48.158Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-a705d07502db",
     "display_name": "AZ Alkmaar — Juventus",
     "competition_name": "UEFA Europa League",
     "starts_at": "2026-11-05T20:00:00.000Z",
     "url": "/football/matches/az-alkmaar-vs-juventus-2026-11-05/",
     "scoreline": "1-2",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "AZ Alkmaar 0-2 Juventus",
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-05T20:00:00.000Z",
     "detected_at": "2026-11-05T08:19:48.158Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "AZ Alkmaar 0-2 Juventus",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "0-2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: AZ Alkmaar 0-2 Juventus"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "1-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was AZ Alkmaar 1-2 Juventus."
    },
    "settlements": [
     {
      "operation_id": "0ebf566545c5faaf6cb65e5666ffbd38c4d84f85c945755282bf7d84a11cfeca",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Juventus",
      "decimal_odds": "1.9524",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 9524,
      "executed_at": "2026-11-05T08:21:00.379Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/az-juventus-05-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "AZ Alkmaar 0-2 Juventus"
   }
  },
  {
   "record_id": "n-3cb40e88c25dd7a653cf5b36",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Jeg spår en 2-1 seier til Torreense.",
   "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": null,
   "recorded_at": "2026-11-05T08:19:49.862Z",
   "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-1792ba24f89bd028a016f88f",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-1792ba24f89bd028a016f88f",
   "match": "Celtic v Beşiktaş",
   "match_url": "/football/matches/celtic-vs-besiktas-2026-11-05/",
   "kickoff": "2026-11-05T20:00:00.000Z",
   "competition": "UEFA Europa League",
   "lead_hours": 11.2,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Celtic 1-2 Beşiktaş",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "3-2",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-05T08:50:20.835Z",
   "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-1792ba24f89bd028a016f88f",
    "quote_text": "Jeg spår en 2-1 seier til Beşiktaş.",
    "fragment_from": 1195,
    "fragment_to": 1230,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/celtic-besiktas-05-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "33088e68eccbcfe4e15352337793ef1432b2d653e7d6dcacb7d75e90d9ceff21",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T08:50:20.835Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-956b3f4d80d8",
     "display_name": "Celtic — Beşiktaş",
     "competition_name": "UEFA Europa League",
     "starts_at": "2026-11-05T20:00:00.000Z",
     "url": "/football/matches/celtic-vs-besiktas-2026-11-05/",
     "scoreline": "3-2",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Celtic 1-2 Beşiktaş",
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-05T20:00:00.000Z",
     "detected_at": "2026-11-05T08:50:20.835Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "Celtic 1-2 Beşiktaş",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "1-2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Celtic 1-2 Beşiktaş"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "3-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Celtic 3-2 Beşiktaş."
    },
    "settlements": [
     {
      "operation_id": "69475bf1350307aa10b6d6454a63895429fd8ad7451cfc0704bf0da87addef6f",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Beşiktaş",
      "decimal_odds": "2.2000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-05T08:58:38.079Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/celtic-besiktas-05-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Celtic 1-2 Beşiktaş"
   }
  },
  {
   "record_id": "n-92028fdb24396a5926b5e5bc",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-92028fdb24396a5926b5e5bc",
   "match": "Sunderland v Dinamo Zagreb",
   "match_url": "/football/matches/sunderland-vs-dinamo-zagreb-2026-11-05/",
   "kickoff": "2026-11-05T20:00:00.000Z",
   "competition": "UEFA Europa League",
   "lead_hours": 11.2,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Sunderland 2-1 Dinamo Zagreb",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "0-2",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-05T08:50:30.799Z",
   "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-92028fdb24396a5926b5e5bc",
    "quote_text": "Jeg forutser en 2-1-seier til Sunderland.",
    "fragment_from": 1309,
    "fragment_to": 1350,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/sunderland-dinamo-zagreb-05-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "bc17a2b5930d68bd774f85eb6aa64e7985ff5f165907639f60d26b0d82b52a68",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T08:50:30.799Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-60866a476ac4",
     "display_name": "Sunderland — Dinamo Zagreb",
     "competition_name": "UEFA Europa League",
     "starts_at": "2026-11-05T20:00:00.000Z",
     "url": "/football/matches/sunderland-vs-dinamo-zagreb-2026-11-05/",
     "scoreline": "0-2",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Sunderland 2-1 Dinamo Zagreb",
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-05T20:00:00.000Z",
     "detected_at": "2026-11-05T08:50:30.799Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "Sunderland 2-1 Dinamo Zagreb",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Sunderland 2-1 Dinamo Zagreb"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "0-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Sunderland 0-2 Dinamo Zagreb."
    },
    "settlements": [
     {
      "operation_id": "7ed3f3579e87e29a14a5b7bbb2f178ada811375118989eaf91b0402aff71ae39",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Sunderland",
      "decimal_odds": "1.4600",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-05T09:02:55.095Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/sunderland-dinamo-zagreb-05-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Sunderland 2-1 Dinamo Zagreb"
   }
  },
  {
   "record_id": "n-78247c2114e11abcfed82016",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-78247c2114e11abcfed82016",
   "match": "Sturm Graz v NK Celje",
   "match_url": "/football/matches/sturm-graz-vs-nk-celje-2026-11-05/",
   "kickoff": "2026-11-05T20:00:00.000Z",
   "competition": "UEFA Europa League",
   "lead_hours": 11.2,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Sturm Graz 2-1 NK Celje",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "2-3",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-05T08:50:32.323Z",
   "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-78247c2114e11abcfed82016",
    "quote_text": "I denne kampen tror jeg Sturm Graz vil dra nytte av hjemmefordelen og klare å vinne med 2-1.",
    "fragment_from": 1063,
    "fragment_to": 1155,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/sturm-graz-celje-05-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "12d579e3b531f93c97b911a7dce091f8bfd4093f66761e39ca217b0b3e4fcb31",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T08:50:32.323Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-072ef95e9f2a",
     "display_name": "Sturm Graz — NK Celje",
     "competition_name": "UEFA Europa League",
     "starts_at": "2026-11-05T20:00:00.000Z",
     "url": "/football/matches/sturm-graz-vs-nk-celje-2026-11-05/",
     "scoreline": "2-3",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Sturm Graz 2-1 NK Celje",
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-05T20:00:00.000Z",
     "detected_at": "2026-11-05T08:50:32.323Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "Sturm Graz 2-1 NK Celje",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Sturm Graz 2-1 NK Celje"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-3",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Sturm Graz 2-3 NK Celje."
    },
    "settlements": [
     {
      "operation_id": "f04eb8fc177e466ccbb7bdf2cd202e78a9dd7ba2f01e7c48171e70675f218172",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Sturm Graz",
      "decimal_odds": "1.5118",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-05T09:03:15.027Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/sturm-graz-celje-05-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Sturm Graz 2-1 NK Celje"
   }
  },
  {
   "record_id": "n-c07ed8043a379c26c49c3009",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-c07ed8043a379c26c49c3009",
   "match": "Celta Vigo v Union St. Gilloise",
   "match_url": "/football/matches/celta-vigo-vs-union-st-gilloise-2026-11-05/",
   "kickoff": "2026-11-05T20:00:00.000Z",
   "competition": "UEFA Europa League",
   "lead_hours": 11.0,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Celta Vigo 2-1 Union St. Gilloise",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "1-2",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-05T09:00:00.613Z",
   "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-c07ed8043a379c26c49c3009",
    "quote_text": "Jeg forutser en spennende kamp som ender med 2-1 til Celta de Vigo.",
    "fragment_from": 1242,
    "fragment_to": 1309,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/celta-de-vigo-union-saint-gilloise-05-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "c80a43769e4217a9658446ab8737be0e56301173b8d91bbaa9958ebbe1949e03",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T09:00:00.613Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-e5ece912019d",
     "display_name": "Celta Vigo — Union St. Gilloise",
     "competition_name": "UEFA Europa League",
     "starts_at": "2026-11-05T20:00:00.000Z",
     "url": "/football/matches/celta-vigo-vs-union-st-gilloise-2026-11-05/",
     "scoreline": "1-2",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Celta Vigo 2-1 Union St. Gilloise",
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-05T20:00:00.000Z",
     "detected_at": "2026-11-05T09:00:00.613Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "Celta Vigo 2-1 Union St. Gilloise",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Celta Vigo 2-1 Union St. Gilloise"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "1-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Celta Vigo 1-2 Union St. Gilloise."
    },
    "settlements": [
     {
      "operation_id": "d6b014395b2c221fd2a90f135e5ab9755ff469e438cd3984355dd3f04dfc9ebf",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Celta Vigo",
      "decimal_odds": "2.3000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-05T09:04:26.839Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/celta-de-vigo-union-saint-gilloise-05-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Celta Vigo 2-1 Union St. Gilloise"
   }
  },
  {
   "record_id": "n-8b7956ef58b48148e2c0d223",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-8b7956ef58b48148e2c0d223",
   "match": "Benfica v Lech Poznań",
   "match_url": "/football/matches/benfica-vs-lech-poznan-2026-11-05/",
   "kickoff": "2026-11-05T20:00:00.000Z",
   "competition": "UEFA Europa League",
   "lead_hours": 11.0,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Benfica 3-1 Lech Poznań",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Won",
   "final_score": "3-1",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-05T09:00:02.998Z",
   "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-8b7956ef58b48148e2c0d223",
    "quote_text": "Et mulig resultat kan være 3-1 til Benfica, der de utnytter sin sterke angrepslinje og hjemmefordel.",
    "fragment_from": 1267,
    "fragment_to": 1367,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/benfica-lech-poznan-05-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "2e8496453971213a1e26f59b8482c3d444d87096ea15b502797e479e363dd932",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T09:00:02.998Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-4766d0504814",
     "display_name": "Benfica — Lech Poznań",
     "competition_name": "UEFA Europa League",
     "starts_at": "2026-11-05T20:00:00.000Z",
     "url": "/football/matches/benfica-vs-lech-poznan-2026-11-05/",
     "scoreline": "3-1",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Benfica 3-1 Lech Poznań",
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-05T20:00:00.000Z",
     "detected_at": "2026-11-05T09:00:02.998Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "Benfica 3-1 Lech Poznań",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "3-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Benfica 3-1 Lech Poznań"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "3-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Matched: the final score was Benfica 3-1 Lech Poznań."
    },
    "settlements": [
     {
      "operation_id": "8728bca43fe3d77af072cb56d0ebe3701cd92498b4793b0fd31186a495411e0b",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Benfica",
      "decimal_odds": "1.1401",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 1401,
      "executed_at": "2026-11-05T09:07:00.689Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/benfica-lech-poznan-05-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Benfica 3-1 Lech Poznań"
   }
  },
  {
   "record_id": "n-3029907086bf0f6792641a58",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-3029907086bf0f6792641a58",
   "match": "Bayer 04 Leverkusen v Olympique de Marseille",
   "match_url": "/football/matches/bayer-04-leverkusen-vs-olympique-de-marseille-2026-11-05/",
   "kickoff": "2026-11-05T20:00:00.000Z",
   "competition": "UEFA Europa League",
   "lead_hours": 11.0,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Bayer 04 Leverkusen 3-1 Olympique de Marseille",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "0-1",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-05T09:00:09.860Z",
   "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-3029907086bf0f6792641a58",
    "quote_text": "Et mulig resultat kan være 3-1, der Leverkusen utnytter sitt hjemmepublikum og offensive dyktighet",
    "fragment_from": 1208,
    "fragment_to": 1306,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/bayer-04-leverkusen-olympique-marseille-05-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "daf07dc722b279f65d198a86b68a0f604b7f3e1a548f4a01d1a7064b3236c2a0",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T09:00:09.860Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-0764a27860e9",
     "display_name": "Bayer 04 Leverkusen — Olympique de Marseille",
     "competition_name": "UEFA Europa League",
     "starts_at": "2026-11-05T20:00:00.000Z",
     "url": "/football/matches/bayer-04-leverkusen-vs-olympique-de-marseille-2026-11-05/",
     "scoreline": "0-1",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Bayer 04 Leverkusen 3-1 Olympique de Marseille",
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-05T20:00:00.000Z",
     "detected_at": "2026-11-05T09:00:09.860Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "Bayer 04 Leverkusen 3-1 Olympique de Marseille",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "3-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Bayer 04 Leverkusen 3-1 Olympique de Marseille"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "0-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Bayer 04 Leverkusen 0-1 Olympique de Marseille."
    },
    "settlements": [
     {
      "operation_id": "241cb892a3c48c0e3ea27e9ccc22264667be8ffad3c7d39820b8fe7c77d9a788",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Bayer 04 Leverkusen",
      "decimal_odds": "1.3003",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-05T09:07:07.226Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/bayer-04-leverkusen-olympique-marseille-05-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Bayer 04 Leverkusen 3-1 Olympique de Marseille"
   }
  },
  {
   "record_id": "n-88ccd52e5ffc343e0e37ee8a",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-88ccd52e5ffc343e0e37ee8a",
   "match": "Bayer 04 Leverkusen v Olympique de Marseille",
   "match_url": "/football/matches/bayer-04-leverkusen-vs-olympique-de-marseille-2026-11-05/",
   "kickoff": "2026-11-05T20:00:00.000Z",
   "competition": "UEFA Europa League",
   "lead_hours": 11.0,
   "market_code": "1x2",
   "author_said": "1X2, match result: Bayer 04 Leverkusen",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "0-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "1.3003",
   "published_at": null,
   "recorded_at": "2026-11-05T09:00:09.860Z",
   "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-88ccd52e5ffc343e0e37ee8a",
    "quote_text": "er det rimelig å forutsi en seier for Bayer 04 Leverkusen",
    "fragment_from": 1149,
    "fragment_to": 1206,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/bayer-04-leverkusen-olympique-marseille-05-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "daf07dc722b279f65d198a86b68a0f604b7f3e1a548f4a01d1a7064b3236c2a0",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T09:00:09.860Z",
    "executed_at": "2026-11-05T09:07:07.459Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-0764a27860e9",
     "display_name": "Bayer 04 Leverkusen — Olympique de Marseille",
     "competition_name": "UEFA Europa League",
     "starts_at": "2026-11-05T20:00:00.000Z",
     "url": "/football/matches/bayer-04-leverkusen-vs-olympique-de-marseille-2026-11-05/",
     "scoreline": "0-1",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "Bayer 04 Leverkusen",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "1.3003",
     "our_snapshot_at": "2026-11-05T08:58:32.985Z",
     "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-05T20:00:00.000Z",
     "detected_at": "2026-11-05T09:00:09.860Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Bayer 04 Leverkusen",
     "author_odds": null,
     "market_key": "1x2",
     "choice_key": "1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: Bayer 04 Leverkusen"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "0-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Bayer 04 Leverkusen 0-1 Olympique de Marseille."
    },
    "settlements": [
     {
      "operation_id": "454dc6d77927b7a67ca55e976998d9973712315a7ab735d89113d82261fa9adb",
      "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": "Bayer 04 Leverkusen",
      "decimal_odds": "1.3003",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-05T09:07:07.459Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/bayer-04-leverkusen-olympique-marseille-05-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Bayer 04 Leverkusen to win"
   }
  },
  {
   "record_id": "n-8150a4ca6c2fd4ba1830893e",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-8150a4ca6c2fd4ba1830893e",
   "match": "Hapoel Be'er Sheva v OFI",
   "match_url": "/football/matches/hapoel-be-er-sheva-vs-ofi-2026-11-05/",
   "kickoff": "2026-11-05T20:00:00.000Z",
   "competition": "UEFA Europa League",
   "lead_hours": 10.5,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Hapoel Be'er Sheva 1-2 OFI",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "0-2",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-05T09:29:47.830Z",
   "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-8150a4ca6c2fd4ba1830893e",
    "quote_text": "Jeg spår en 2-1 seier til OFI",
    "fragment_from": 1368,
    "fragment_to": 1397,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/hapoel-beer-sheva-ofi-05-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "938e1e41b7d1b18d8bf33b871dcf5d0801958243d37265551e21cb89aa93da6a",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T09:29:47.830Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-11ef41c1e29b",
     "display_name": "Hapoel Be'er Sheva — OFI",
     "competition_name": "UEFA Europa League",
     "starts_at": "2026-11-05T20:00:00.000Z",
     "url": "/football/matches/hapoel-be-er-sheva-vs-ofi-2026-11-05/",
     "scoreline": "0-2",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Hapoel Be'er Sheva 1-2 OFI",
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-05T20:00:00.000Z",
     "detected_at": "2026-11-05T09:29:47.830Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "Hapoel Be'er Sheva 1-2 OFI",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "1-2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Hapoel Be'er Sheva 1-2 OFI"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "0-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Hapoel Be'er Sheva 0-2 OFI."
    },
    "settlements": [
     {
      "operation_id": "2a3005691f0c43c728d10f6b099949ed4db082964630c2890282b6a24c5bddb7",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "OFI",
      "decimal_odds": "3.3000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 23000,
      "executed_at": "2026-11-05T09:32:27.485Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/hapoel-beer-sheva-ofi-05-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Hapoel Be'er Sheva 1-2 OFI"
   }
  },
  {
   "record_id": "n-21b44e26f40284e1d5b8a5da",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-21b44e26f40284e1d5b8a5da",
   "match": "Hamburger SV v Borussia M'gladbach",
   "match_url": "/football/matches/hamburger-sv-vs-borussia-m-gladbach-2026-11-06/",
   "kickoff": "2026-11-06T19:30:00.000Z",
   "competition": "Bundesliga",
   "lead_hours": 23.3,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Hamburger SV 2-0 Borussia M'gladbach",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "3-1",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-05T20:11:39.752Z",
   "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-21b44e26f40284e1d5b8a5da",
    "quote_text": "Jeg spår en 2-0 seier til Hamburger SV",
    "fragment_from": 1254,
    "fragment_to": 1292,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/hamburger-sv-borussia-monchengladbach-06-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "a53a838a29e9c1b560e94f34efbc94d61611aefad77c6b9bc8d5920658eb2063",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-05T20:11:39.752Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-35a7d6227d32",
     "display_name": "Hamburger SV — Borussia M'gladbach",
     "competition_name": "Bundesliga",
     "starts_at": "2026-11-06T19:30:00.000Z",
     "url": "/football/matches/hamburger-sv-vs-borussia-m-gladbach-2026-11-06/",
     "scoreline": "3-1",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Hamburger SV 2-0 Borussia M'gladbach",
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-06T19:30:00.000Z",
     "detected_at": "2026-11-05T20:11:39.752Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "Hamburger SV 2-0 Borussia M'gladbach",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-0",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Hamburger SV 2-0 Borussia M'gladbach"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "3-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Hamburger SV 3-1 Borussia M'gladbach."
    },
    "settlements": [
     {
      "operation_id": "4c6580b50eece26f1dcdf95b02853eca0327e643563df58f3417b6192fdc9bd1",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Hamburger SV",
      "decimal_odds": "2.3900",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 13900,
      "executed_at": "2026-11-05T20:12:33.814Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/hamburger-sv-borussia-monchengladbach-06-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Hamburger SV 2-0 Borussia M'gladbach"
   }
  },
  {
   "record_id": "n-864d5906050c97f62c8194af",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-864d5906050c97f62c8194af",
   "match": "Venezia v Udinese",
   "match_url": "/football/matches/venezia-vs-udinese-2026-11-06/",
   "kickoff": "2026-11-06T19:45:00.000Z",
   "competition": "Serie A",
   "lead_hours": 18.3,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Venezia 1-2 Udinese",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "2-1",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-06T01:29:58.509Z",
   "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-864d5906050c97f62c8194af",
    "quote_text": "Jeg spår en 2-1 seier til Udinese",
    "fragment_from": 1048,
    "fragment_to": 1081,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/venezia-udinese-06-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "9f2d242a89ad5553aa5962097f3a52bf866a2eef5b9ad49652c52331f3ca2fd9",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-06T01:29:58.509Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-840d47c82bfe",
     "display_name": "Venezia — Udinese",
     "competition_name": "Serie A",
     "starts_at": "2026-11-06T19:45:00.000Z",
     "url": "/football/matches/venezia-vs-udinese-2026-11-06/",
     "scoreline": "2-1",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Venezia 1-2 Udinese",
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-06T19:45:00.000Z",
     "detected_at": "2026-11-06T01:29:58.509Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "Venezia 1-2 Udinese",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "1-2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Venezia 1-2 Udinese"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Venezia 2-1 Udinese."
    },
    "settlements": [
     {
      "operation_id": "3e060534369242e066811d02bfd9239a17ad96b8f294179cda3d8aa07451632a",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Udinese",
      "decimal_odds": "3.1000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-06T01:33:01.574Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/venezia-udinese-06-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Venezia 1-2 Udinese"
   }
  },
  {
   "record_id": "n-ae680a03503ade395def61df",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-ae680a03503ade395def61df",
   "match": "Toulouse v RC Strasbourg",
   "match_url": "/football/matches/toulouse-vs-rc-strasbourg-2026-11-06/",
   "kickoff": "2026-11-06T19:45:00.000Z",
   "competition": "Ligue 1",
   "lead_hours": 18.3,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Toulouse 2-1 RC Strasbourg",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "3-1",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-06T01:29:59.775Z",
   "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-ae680a03503ade395def61df",
    "quote_text": "Jeg spår en 2-1 seier til hjemmelaget.",
    "fragment_from": 1153,
    "fragment_to": 1191,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/toulouse-strasbourg-06-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "5d77edfb6040ea967c3511e5f568efa541d08012e917f31bf388f7c87b9b103b",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-06T01:29:59.775Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-2313515db49a",
     "display_name": "Toulouse — RC Strasbourg",
     "competition_name": "Ligue 1",
     "starts_at": "2026-11-06T19:45:00.000Z",
     "url": "/football/matches/toulouse-vs-rc-strasbourg-2026-11-06/",
     "scoreline": "3-1",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Toulouse 2-1 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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-06T19:45:00.000Z",
     "detected_at": "2026-11-06T01:29:59.775Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "Toulouse 2-1 RC Strasbourg",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Toulouse 2-1 RC Strasbourg"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "3-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Toulouse 3-1 RC Strasbourg."
    },
    "settlements": [
     {
      "operation_id": "0f5207b4b22fbacacd584856cb6feccfacdd85cd5c3b24596366301c053b24a6",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Toulouse",
      "decimal_odds": "2.0500",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 10500,
      "executed_at": "2026-11-06T01:33:18.411Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/toulouse-strasbourg-06-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Toulouse 2-1 RC Strasbourg"
   }
  },
  {
   "record_id": "n-e81aaccae3c0f4005d7ab068",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-e81aaccae3c0f4005d7ab068",
   "match": "Toulouse v RC Strasbourg",
   "match_url": "/football/matches/toulouse-vs-rc-strasbourg-2026-11-06/",
   "kickoff": "2026-11-06T19:45:00.000Z",
   "competition": "Ligue 1",
   "lead_hours": 18.3,
   "market_code": "1x2",
   "author_said": "1X2, match result: Toulouse",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "3-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 10500,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": null,
   "settled_price": "2.0500",
   "published_at": null,
   "recorded_at": "2026-11-06T01:29:59.775Z",
   "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-e81aaccae3c0f4005d7ab068",
    "quote_text": "Basert på den nåværende formen og historikken mellom lagene, er det rimelig å forutsi en seier for Toulouse.",
    "fragment_from": 1044,
    "fragment_to": 1152,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/toulouse-strasbourg-06-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "5d77edfb6040ea967c3511e5f568efa541d08012e917f31bf388f7c87b9b103b",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-06T01:29:59.775Z",
    "executed_at": "2026-11-06T01:33:18.781Z",
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-2313515db49a",
     "display_name": "Toulouse — RC Strasbourg",
     "competition_name": "Ligue 1",
     "starts_at": "2026-11-06T19:45:00.000Z",
     "url": "/football/matches/toulouse-vs-rc-strasbourg-2026-11-06/",
     "scoreline": "3-1",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "Toulouse",
    "odds_set": {
     "by_author": null,
     "our_snapshot": "2.0500",
     "our_snapshot_at": "2026-11-06T01:25:03.456Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 10500,
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-06T19:45:00.000Z",
     "detected_at": "2026-11-06T01:29:59.775Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Toulouse",
     "author_odds": null,
     "market_key": "1x2",
     "choice_key": "1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: Toulouse"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "3-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Toulouse 3-1 RC Strasbourg."
    },
    "settlements": [
     {
      "operation_id": "4445e605bfaa50d3d9bb4d3733bba7bfc7a3cf89a86f118784eff117d27c3849",
      "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": "Toulouse",
      "decimal_odds": "2.0500",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 10500,
      "executed_at": "2026-11-06T01:33:18.781Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/toulouse-strasbourg-06-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Toulouse to win"
   }
  },
  {
   "record_id": "n-0a3bd7ac401795510b2ad626",
   "url": "/sources/oddsekspert-no/picks/17/#pick-n-0a3bd7ac401795510b2ad626",
   "match": "Sevilla v Deportivo Alavés",
   "match_url": "/football/matches/sevilla-vs-deportivo-alaves-2026-11-06/",
   "kickoff": "2026-11-06T20:00:00.000Z",
   "competition": "LaLiga",
   "lead_hours": 18.5,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Sevilla 2-1 Deportivo Alavés",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "0-0",
   "reason": "score forecast without a price, graded against the final score",
   "reason_code": "score_without_price",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-06T01:30:01.161Z",
   "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-0a3bd7ac401795510b2ad626",
    "quote_text": "Jeg forutser en 2-1 seier til Sevilla.",
    "fragment_from": 1326,
    "fragment_to": 1364,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/sevilla-deportivo-alaves-06-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "c616044f7cd8bff914487c97c24ee95a7f589a8e8d37df0c7bba16f763804b0e",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-06T01:30:01.161Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-1bc95b6a742f",
     "display_name": "Sevilla — Deportivo Alavés",
     "competition_name": "LaLiga",
     "starts_at": "2026-11-06T20:00:00.000Z",
     "url": "/football/matches/sevilla-vs-deportivo-alaves-2026-11-06/",
     "scoreline": "0-0",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Sevilla 2-1 Deportivo Alavés",
    "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": null,
     "fragment_basis": "no",
     "source_page_at": "2026-11-06T20:00:00.000Z",
     "detected_at": "2026-11-06T01:30:01.161Z",
     "archive_snapshot_at": null,
     "flags": [
      "after_detection",
      "not_fragment_date"
     ],
     "flag_words": "The source's date is later than our first capture, so the page date is set aside for this prediction.",
     "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": "Correct score",
     "choice": "Sevilla 2-1 Deportivo Alavés",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Sevilla 2-1 Deportivo Alavés"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "0-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Sevilla 0-0 Deportivo Alavés."
    },
    "settlements": [
     {
      "operation_id": "c4632ff2c47e8f79e5e955b21367838c0fb7ce51af5458563664a5514d6ff5b5",
      "series_key": "derived_series",
      "series_label": "Forecast Record reconstruction from the predicted score",
      "derived": true,
      "site_simulation": true,
      "author_words": false,
      "market_label": "1X2, match result",
      "choice": "Sevilla",
      "decimal_odds": "1.9091",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-06T01:36:36.108Z",
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "OddsEkspert",
     "publisher": "OddsEkspert.no",
     "forecaster": "OddsEkspert",
     "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://oddsekspert.no/fotball/kamp/sevilla-deportivo-alaves-06-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Sevilla 2-1 Deportivo Alavés"
   }
  },
  {
   "record_id": "n-2209b49b3ad804eb598a3097",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Jeg spår en 2-1 seier til Rosenborg",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "ambiguous",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-11-06T19:49:45.012Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  }
 ],
 "pagination": {
  "per_page": 20,
  "total": 358,
  "pages": 19,
  "page_urls": [
   "/sources/oddsekspert-no/",
   "/sources/oddsekspert-no/picks/2/",
   "/sources/oddsekspert-no/picks/3/",
   "/sources/oddsekspert-no/picks/4/",
   "/sources/oddsekspert-no/picks/5/",
   "/sources/oddsekspert-no/picks/6/",
   "/sources/oddsekspert-no/picks/7/",
   "/sources/oddsekspert-no/picks/8/",
   "/sources/oddsekspert-no/picks/9/",
   "/sources/oddsekspert-no/picks/10/",
   "/sources/oddsekspert-no/picks/11/",
   "/sources/oddsekspert-no/picks/12/",
   "/sources/oddsekspert-no/picks/13/",
   "/sources/oddsekspert-no/picks/14/",
   "/sources/oddsekspert-no/picks/15/",
   "/sources/oddsekspert-no/picks/16/",
   "/sources/oddsekspert-no/picks/17/",
   "/sources/oddsekspert-no/picks/18/",
   "/sources/oddsekspert-no/picks/19/"
  ],
  "groups": {
   "settled": 28,
   "pending": 1,
   "excluded": 329
  },
  "continuation": "by_time",
  "page": 17,
  "first": 301,
  "last": 320,
  "author_url": "/sources/oddsekspert-no/",
  "current": false
 },
 "entity_id": "history:/sources/oddsekspert-no/picks/17/",
 "source_revision": 5
}
