{
 "schema_name": "page",
 "schema_version": "2.0",
 "page_type": "history",
 "url": "/sources/oddsekspert-no/picks/13/",
 "canonical": "/sources/oddsekspert-no/picks/13/",
 "language": "en",
 "hreflang": [],
 "translations": [],
 "heading": "OddsEkspert.no — football predictions, page 13 of 19",
 "description": "Predictions 221–240 of 358 by OddsEkspert.no, with outcomes in words and links to the evidence.",
 "first_paragraph": {
  "body": "Page 13 of 19 of the predictions by OddsEkspert.no recorded by Forecast Record: predictions 221–240 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": "c566bd36d95a8e9183120c5dd121bbce0dbdc5f7f81fd1d81347479191377ec0",
 "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/13/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-abcf56a9a39ff14d7bfd4863",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-abcf56a9a39ff14d7bfd4863",
   "match": "Udinese v AS Roma",
   "match_url": "/football/matches/udinese-vs-as-roma-2026-10-31/",
   "kickoff": "2026-10-31T17:00:00.000Z",
   "competition": "Serie A",
   "lead_hours": 4.7,
   "market_code": "1x2",
   "author_said": "1X2, match result: AS Roma",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Won",
   "final_score": "2-5",
   "reason": "",
   "reason_code": "disputed_reading",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": null,
   "recorded_at": "2026-10-31T12:20:47.136Z",
   "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-abcf56a9a39ff14d7bfd4863",
    "quote_text": "I denne kampen tror jeg at Roma vil ta med seg momentumet fra sine nylige seire og klare å vinne mot Udinese.",
    "fragment_from": 1250,
    "fragment_to": 1359,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/udinese-roma-31-10-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "666ead4e530aafa34fba997c6c8dca2272cd173e8a80ebc19af52e690fd7ca9f",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-10-31T12:20:47.136Z",
    "executed_at": null,
    "statement_class": "unpriced",
    "status": "recognised",
    "cause": "",
    "cause_code": "disputed_reading",
    "event": {
     "event_id": "s-c8160fbea0a5",
     "display_name": "Udinese — AS Roma",
     "competition_name": "Serie A",
     "starts_at": "2026-10-31T17:00:00.000Z",
     "url": "/football/matches/udinese-vs-as-roma-2026-10-31/",
     "scoreline": "2-5",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "AS Roma",
    "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-10-31T17:00:00.000Z",
     "detected_at": "2026-10-31T12:20:47.136Z",
     "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": "AS Roma",
     "author_odds": null,
     "market_key": "1x2",
     "choice_key": "2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: AS Roma"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "2-5",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Udinese 2-5 AS Roma."
    },
    "settlements": [
     {
      "operation_id": "8b5d37d406d366996a84d70282f34327cd46919f819c2a043c02ddb95e62eae2",
      "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": "AS Roma",
      "decimal_odds": null,
      "odds_role": null,
      "stake_hundredths": null,
      "status": "skipped",
      "status_text": "Not executed: ",
      "result": null,
      "result_words": null,
      "change_hundredths": null,
      "executed_at": null,
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "prediction",
    "authorship": {
     "material_author": "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/udinese-roma-31-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "AS Roma to win"
   }
  },
  {
   "record_id": "n-66eb3f9ce4ac0fbf5309f482",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-66eb3f9ce4ac0fbf5309f482",
   "match": "AC Milan v Inter",
   "match_url": "/football/matches/ac-milan-vs-inter-2026-10-31/",
   "kickoff": "2026-10-31T19:45:00.000Z",
   "competition": "Serie A",
   "lead_hours": 7.4,
   "market_code": "correct_score_market",
   "author_said": "Correct score: AC Milan 2-1 Inter",
   "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-10-31T12:20:48.500Z",
   "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-66eb3f9ce4ac0fbf5309f482",
    "quote_text": "Jeg tror kampen vil ende med en 2-1 seier til AC Milan.",
    "fragment_from": 1369,
    "fragment_to": 1424,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/ac-milan-inter-31-10-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "0bfc6b5562a84ad861bec20ab88756dd8816c9911fd9894153babbda2acd6764",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-10-31T12:20:48.500Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-baa51e710664",
     "display_name": "AC Milan — Inter",
     "competition_name": "Serie A",
     "starts_at": "2026-10-31T19:45:00.000Z",
     "url": "/football/matches/ac-milan-vs-inter-2026-10-31/",
     "scoreline": "3-1",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "AC Milan 2-1 Inter",
    "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-10-31T19:45:00.000Z",
     "detected_at": "2026-10-31T12:20:48.500Z",
     "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": "AC Milan 2-1 Inter",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: AC Milan 2-1 Inter"
    },
    "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 AC Milan 3-1 Inter."
    },
    "settlements": [
     {
      "operation_id": "c3df3a732e310d4a66b87beae3da0650baa13815746abc226433564816674f44",
      "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": "AC Milan",
      "decimal_odds": "3.5250",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 25250,
      "executed_at": "2026-11-01T18:34:31.813Z",
      "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/ac-milan-inter-31-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "AC Milan 2-1 Inter"
   }
  },
  {
   "record_id": "n-f388b4afcf54a661963f14ad",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-f388b4afcf54a661963f14ad",
   "match": "FC Schalke 04 v RB Leipzig",
   "match_url": "/football/matches/fc-schalke-04-vs-rb-leipzig-2026-10-31/",
   "kickoff": "2026-10-31T14:30:00.000Z",
   "competition": "Bundesliga",
   "lead_hours": 1.8,
   "market_code": "correct_score_market",
   "author_said": "Correct score: FC Schalke 04 1-2 RB Leipzig",
   "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-10-31T12:40:05.653Z",
   "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-f388b4afcf54a661963f14ad",
    "quote_text": "Jeg spår en 2-1 seier til RB Leipzig",
    "fragment_from": 1383,
    "fragment_to": 1419,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/schalke-04-rb-leipzig-31-10-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "930cca2e00982ff95d777d5839df1280768d6431790d69f1f07f64a19d628c5c",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-10-31T12:40:05.653Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-0af8ac563359",
     "display_name": "FC Schalke 04 — RB Leipzig",
     "competition_name": "Bundesliga",
     "starts_at": "2026-10-31T14:30:00.000Z",
     "url": "/football/matches/fc-schalke-04-vs-rb-leipzig-2026-10-31/",
     "scoreline": "0-2",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "FC Schalke 04 1-2 RB Leipzig",
    "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-10-31T14:30:00.000Z",
     "detected_at": "2026-10-31T12:40:05.653Z",
     "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": "FC Schalke 04 1-2 RB Leipzig",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "1-2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: FC Schalke 04 1-2 RB Leipzig"
    },
    "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 FC Schalke 04 0-2 RB Leipzig."
    },
    "settlements": [
     {
      "operation_id": "632076c292526fc0039a084af07f1ae67fca296a5f16405bf13a8210adbe452f",
      "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": "RB Leipzig",
      "decimal_odds": "1.8333",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 8333,
      "executed_at": "2026-10-31T13:03:30.964Z",
      "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/schalke-04-rb-leipzig-31-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "FC Schalke 04 1-2 RB Leipzig"
   }
  },
  {
   "record_id": "n-ee90306365dc43d83989689f",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-ee90306365dc43d83989689f",
   "match": "SV Werder Bremen v TSG Hoffenheim",
   "match_url": "/football/matches/sv-werder-bremen-vs-tsg-hoffenheim-2026-10-31/",
   "kickoff": "2026-10-31T14:30:00.000Z",
   "competition": "Bundesliga",
   "lead_hours": 1.8,
   "market_code": "correct_score_market",
   "author_said": "Correct score: SV Werder Bremen 2-1 TSG Hoffenheim",
   "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-10-31T12:40:07.107Z",
   "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-ee90306365dc43d83989689f",
    "quote_text": "Jeg spår en 2-1 seier til Werder Bremen.",
    "fragment_from": 1432,
    "fragment_to": 1472,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/werder-bremen-tsg-hoffenheim-31-10-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "252629a604fa4bea16d74d03a5958094e3c8d49f399bc5ff4dbe5393b86c5efd",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-10-31T12:40:07.107Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-fbb1feeff73d",
     "display_name": "SV Werder Bremen — TSG Hoffenheim",
     "competition_name": "Bundesliga",
     "starts_at": "2026-10-31T14:30:00.000Z",
     "url": "/football/matches/sv-werder-bremen-vs-tsg-hoffenheim-2026-10-31/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "SV Werder Bremen 2-1 TSG Hoffenheim",
    "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-10-31T14:30:00.000Z",
     "detected_at": "2026-10-31T12:40:07.107Z",
     "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": "SV Werder Bremen 2-1 TSG Hoffenheim",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: SV Werder Bremen 2-1 TSG Hoffenheim"
    },
    "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 SV Werder Bremen 2-0 TSG Hoffenheim."
    },
    "settlements": [
     {
      "operation_id": "9bed63122624210060a3f6993d9f621fa387d705f9a9cee89c33eb0451c6d412",
      "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": "SV Werder Bremen",
      "decimal_odds": "2.4400",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 14400,
      "executed_at": "2026-10-31T13:03:40.849Z",
      "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/werder-bremen-tsg-hoffenheim-31-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "SV Werder Bremen 2-1 TSG Hoffenheim"
   }
  },
  {
   "record_id": "n-df37047e129a1f2f89906a6a",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-df37047e129a1f2f89906a6a",
   "match": "Borussia M'gladbach v SC Paderborn 07",
   "match_url": "/football/matches/borussia-m-gladbach-vs-sc-paderborn-07-2026-10-31/",
   "kickoff": "2026-10-31T14:30:00.000Z",
   "competition": "Bundesliga",
   "lead_hours": 1.8,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Borussia M'gladbach 1-2 SC Paderborn 07",
   "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-10-31T12:40:08.614Z",
   "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-df37047e129a1f2f89906a6a",
    "quote_text": "Jeg spår en 2-1 seier til Paderborn.",
    "fragment_from": 1495,
    "fragment_to": 1531,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/borussia-monchengladbach-paderborn-31-10-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "ceccca040672fa55abd2782a4d9d42d426139b043def705158cd3c2677333a21",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-10-31T12:40:08.614Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-941a5bb75f38",
     "display_name": "Borussia M'gladbach — SC Paderborn 07",
     "competition_name": "Bundesliga",
     "starts_at": "2026-10-31T14:30:00.000Z",
     "url": "/football/matches/borussia-m-gladbach-vs-sc-paderborn-07-2026-10-31/",
     "scoreline": "0-0",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Borussia M'gladbach 1-2 SC Paderborn 07",
    "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-10-31T14:30:00.000Z",
     "detected_at": "2026-10-31T12:40:08.614Z",
     "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": "Borussia M'gladbach 1-2 SC Paderborn 07",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "1-2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Borussia M'gladbach 1-2 SC Paderborn 07"
    },
    "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 Borussia M'gladbach 0-0 SC Paderborn 07."
    },
    "settlements": [
     {
      "operation_id": "7147000c0ce5847625a3ba2a67688fe48a3fda8ee8d49164da7154c303ae87ed",
      "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": "SC Paderborn 07",
      "decimal_odds": "3.0000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-31T13:03:51.939Z",
      "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/borussia-monchengladbach-paderborn-31-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Borussia M'gladbach 1-2 SC Paderborn 07"
   }
  },
  {
   "record_id": "n-3a3c39fe3c50039568052c8c",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-3a3c39fe3c50039568052c8c",
   "match": "Fredrikstad v Rosenborg",
   "match_url": "/football/matches/fredrikstad-vs-rosenborg-2026-10-31/",
   "kickoff": "2026-10-31T15:00:00.000Z",
   "competition": "Eliteserien",
   "lead_hours": 1.8,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Fredrikstad 1-2 Rosenborg",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "0-3",
   "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-10-31T13:10:22.328Z",
   "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-3a3c39fe3c50039568052c8c",
    "quote_text": "En scorelinje på 2-1 til Rosenborg virker sannsynlig",
    "fragment_from": 1597,
    "fragment_to": 1649,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/fredrikstad-rosenborg-31-10-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "3ecfd974223430c877f48af0c4c2e6ce88ce01cd91c648a513eabcc2e7ce4ce8",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-10-31T13:10:22.328Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "ambiguous",
    "event": {
     "event_id": "s-144a86b2ca6b",
     "display_name": "Fredrikstad — Rosenborg",
     "competition_name": "Eliteserien",
     "starts_at": "2026-10-31T15:00:00.000Z",
     "url": "/football/matches/fredrikstad-vs-rosenborg-2026-10-31/",
     "scoreline": "0-3",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Fredrikstad 1-2 Rosenborg",
    "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-10-31T15:00:00.000Z",
     "detected_at": "2026-10-31T13:10:22.328Z",
     "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": "Fredrikstad 1-2 Rosenborg",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "1-2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Fredrikstad 1-2 Rosenborg"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "0-3",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Fredrikstad 0-3 Rosenborg."
    },
    "settlements": [
     {
      "operation_id": "c10d5a637437bf21282529c9da2684b51a856df1d4122c2edb4a95a83ff7c511",
      "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": "Rosenborg",
      "decimal_odds": null,
      "odds_role": null,
      "stake_hundredths": null,
      "status": "skipped",
      "status_text": "Not executed: ",
      "result": null,
      "result_words": null,
      "change_hundredths": null,
      "executed_at": null,
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": 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/fredrikstad-rosenborg-31-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Fredrikstad 1-2 Rosenborg"
   }
  },
  {
   "record_id": "n-8ba0dcfb0f4259610242227b",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-8ba0dcfb0f4259610242227b",
   "match": "FC Augsburg v SC Freiburg",
   "match_url": "/football/matches/fc-augsburg-vs-sc-freiburg-2026-10-31/",
   "kickoff": "2026-10-31T14:30:00.000Z",
   "competition": "Bundesliga",
   "lead_hours": 1.3,
   "market_code": "correct_score_market",
   "author_said": "Correct score: FC Augsburg 1-2 SC Freiburg",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Won",
   "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-10-31T13:10:24.361Z",
   "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-8ba0dcfb0f4259610242227b",
    "quote_text": "Jeg spår en 2-1 seier til SC Freiburg.",
    "fragment_from": 1366,
    "fragment_to": 1404,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/fc-augsburg-sc-freiburg-31-10-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "ed6f737341a5649de47ed41548d0afd07b8730f5332890224073f0ee42d01a98",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-10-31T13:10:24.361Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-3424cd07a380",
     "display_name": "FC Augsburg — SC Freiburg",
     "competition_name": "Bundesliga",
     "starts_at": "2026-10-31T14:30:00.000Z",
     "url": "/football/matches/fc-augsburg-vs-sc-freiburg-2026-10-31/",
     "scoreline": "1-2",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "FC Augsburg 1-2 SC Freiburg",
    "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-10-31T14:30:00.000Z",
     "detected_at": "2026-10-31T13:10:24.361Z",
     "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": "FC Augsburg 1-2 SC Freiburg",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "1-2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: FC Augsburg 1-2 SC Freiburg"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "1-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Matched: the final score was FC Augsburg 1-2 SC Freiburg."
    },
    "settlements": [
     {
      "operation_id": "78652f4d9f4eacf14f4757bcb8f8d193bd485fc1d61b43f28a2ca800f8c3d0bb",
      "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": "SC Freiburg",
      "decimal_odds": "2.3000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 13000,
      "executed_at": "2026-10-31T13:13:03.395Z",
      "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/fc-augsburg-sc-freiburg-31-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "FC Augsburg 1-2 SC Freiburg"
   }
  },
  {
   "record_id": "n-7926297b84a3b91f3eca5b63",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-7926297b84a3b91f3eca5b63",
   "match": "Bayer 04 Leverkusen v VfB Stuttgart",
   "match_url": "/football/matches/bayer-04-leverkusen-vs-vfb-stuttgart-2026-10-31/",
   "kickoff": "2026-10-31T14:30:00.000Z",
   "competition": "Bundesliga",
   "lead_hours": 1.3,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Bayer 04 Leverkusen 2-1 VfB Stuttgart",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "2-4",
   "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-10-31T13:10:28.391Z",
   "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-7926297b84a3b91f3eca5b63",
    "quote_text": "Jeg forutser en 2-1 seier til Leverkusen",
    "fragment_from": 1506,
    "fragment_to": 1546,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/bayer-04-leverkusen-vfb-stuttgart-31-10-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "878a960b9c4601f56121d2a3da04e1216de89d66287236978a27ba4c21d682d9",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-10-31T13:10:28.391Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-13162f93c610",
     "display_name": "Bayer 04 Leverkusen — VfB Stuttgart",
     "competition_name": "Bundesliga",
     "starts_at": "2026-10-31T14:30:00.000Z",
     "url": "/football/matches/bayer-04-leverkusen-vs-vfb-stuttgart-2026-10-31/",
     "scoreline": "2-4",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Bayer 04 Leverkusen 2-1 VfB Stuttgart",
    "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-10-31T14:30:00.000Z",
     "detected_at": "2026-10-31T13:10:28.391Z",
     "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 2-1 VfB Stuttgart",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Bayer 04 Leverkusen 2-1 VfB Stuttgart"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-4",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Bayer 04 Leverkusen 2-4 VfB Stuttgart."
    },
    "settlements": [
     {
      "operation_id": "bb900faee9570f7e14d8376f58a08c9e1cdab665482f3cd26411a5c67e8993c8",
      "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.6329",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-31T13:13:10.833Z",
      "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-vfb-stuttgart-31-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Bayer 04 Leverkusen 2-1 VfB Stuttgart"
   }
  },
  {
   "record_id": "n-cd56522705676cf0aebfe03e",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-cd56522705676cf0aebfe03e",
   "match": "FC Bayern München v Borussia Dortmund",
   "match_url": "/football/matches/fc-bayern-munchen-vs-borussia-dortmund-2026-10-31/",
   "kickoff": "2026-10-31T17:30:00.000Z",
   "competition": "Bundesliga",
   "lead_hours": 4.2,
   "market_code": "correct_score_market",
   "author_said": "Correct score: FC Bayern München 2-1 Borussia Dortmund",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "2-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-10-31T13:19:45.751Z",
   "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": {
    "outcome": "1",
    "price": "1.3300",
    "result": "Lost",
    "points_hundredths": -10000,
    "picked_favourite": true
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-cd56522705676cf0aebfe03e",
    "quote_text": "I denne kampen forutser jeg en tett og intens match, men jeg tror Bayern München vil ta seieren med 2-1.",
    "fragment_from": 1417,
    "fragment_to": 1521,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/fc-bayern-munchen-borussia-dortmund-31-10-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "0fb51b1cdb11f39b44f0f844ab2322906dd2a48fa57755fe2fc5204dfea3ee4d",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-10-31T13:19:45.751Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-459823b8fd68",
     "display_name": "FC Bayern München — Borussia Dortmund",
     "competition_name": "Bundesliga",
     "starts_at": "2026-10-31T17:30:00.000Z",
     "url": "/football/matches/fc-bayern-munchen-vs-borussia-dortmund-2026-10-31/",
     "scoreline": "2-2",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "FC Bayern München 2-1 Borussia Dortmund",
    "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-10-31T17:30:00.000Z",
     "detected_at": "2026-10-31T13:19:45.751Z",
     "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": "FC Bayern München 2-1 Borussia Dortmund",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: FC Bayern München 2-1 Borussia Dortmund"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was FC Bayern München 2-2 Borussia Dortmund."
    },
    "settlements": [
     {
      "operation_id": "659fcbb5085ad19e70b14791a056e8aaf0ea4876a77ab473951128bff1c7690b",
      "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": "FC Bayern München",
      "decimal_odds": "1.3300",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-31T13:55:30.834Z",
      "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/fc-bayern-munchen-borussia-dortmund-31-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "FC Bayern München 2-1 Borussia Dortmund"
   }
  },
  {
   "record_id": "n-13893d509cbb1546ef6cfad2",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-13893d509cbb1546ef6cfad2",
   "match": "Aalesund v Sandefjord",
   "match_url": "/football/matches/aalesund-vs-sandefjord-2026-10-31/",
   "kickoff": "2026-10-31T17:00:00.000Z",
   "competition": "Eliteserien",
   "lead_hours": 3.7,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Aalesund 1-1 Sandefjord",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "3-4",
   "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-10-31T13:19:47.207Z",
   "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-13893d509cbb1546ef6cfad2",
    "quote_text": "En realistisk prediksjon for kampen kan være 1-1, et resultat som reflekterer begge lagenes behov for poeng og deres nåværende form.",
    "fragment_from": 1701,
    "fragment_to": 1833,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/aalesund-sandefjord-31-10-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "423d1f769f5653bf01874c42b5c027a2e331ba31043106458763cf01441f68e3",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-10-31T13:19:47.207Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-23b2db7a4680",
     "display_name": "Aalesund — Sandefjord",
     "competition_name": "Eliteserien",
     "starts_at": "2026-10-31T17:00:00.000Z",
     "url": "/football/matches/aalesund-vs-sandefjord-2026-10-31/",
     "scoreline": "3-4",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Aalesund 1-1 Sandefjord",
    "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-10-31T17:00:00.000Z",
     "detected_at": "2026-10-31T13:19:47.207Z",
     "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": "Aalesund 1-1 Sandefjord",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "1-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Aalesund 1-1 Sandefjord"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "3-4",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Aalesund 3-4 Sandefjord."
    },
    "settlements": [
     {
      "operation_id": "2691f030575f8ac3bac0b44675c2371257438cf0aea89deb0f5bf61348d36710",
      "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": "draw",
      "decimal_odds": "3.8000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-31T14:53:59.834Z",
      "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/aalesund-sandefjord-31-10-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Aalesund 1-1 Sandefjord"
   }
  },
  {
   "record_id": "n-ccde03ba985879aa5648ac76",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Gitt den nåværende formen og historikken mellom lagene, er det rimelig å forutsi en seier for Le Mans i denne kampen.",
   "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-10-31T13:19:48.191Z",
   "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-ed9909203e527a6e883512d4",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "En mulig sluttresultat kan være 2-1 til Le Mans.",
   "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-10-31T13:19:48.191Z",
   "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-b01e020dfc5aa6cde15fbcaa",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-b01e020dfc5aa6cde15fbcaa",
   "match": "Como v Venezia",
   "match_url": "/football/matches/como-vs-venezia-2026-11-01/",
   "kickoff": "2026-11-01T11:30:00.000Z",
   "competition": "Serie A",
   "lead_hours": 15.5,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Como 2-0 Venezia",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "1-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-10-31T19:59:37.399Z",
   "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-b01e020dfc5aa6cde15fbcaa",
    "quote_text": "For denne kampen tror jeg Como vil fortsette sin gode form og ta en 2-0 seier over Venezia.",
    "fragment_from": 1254,
    "fragment_to": 1345,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/como-venezia-01-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "4b9be9719d49402950bc697eee28f9cc372d077fc70a4adcc501db55abe19a58",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-10-31T19:59:37.399Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-28e6ee004c9a",
     "display_name": "Como — Venezia",
     "competition_name": "Serie A",
     "starts_at": "2026-11-01T11:30:00.000Z",
     "url": "/football/matches/como-vs-venezia-2026-11-01/",
     "scoreline": "1-0",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Como 2-0 Venezia",
    "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-01T11:30:00.000Z",
     "detected_at": "2026-10-31T19:59:37.399Z",
     "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": "Como 2-0 Venezia",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-0",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Como 2-0 Venezia"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "1-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Did not match: the final score was Como 1-0 Venezia."
    },
    "settlements": [
     {
      "operation_id": "736f8371cd482baf642a172ff93b708176fbb1f3327acb882abed53ee3eeaf3b",
      "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": "Como",
      "decimal_odds": "1.3000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3000,
      "executed_at": "2026-11-01T18:35:55.259Z",
      "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/como-venezia-01-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Como 2-0 Venezia"
   }
  },
  {
   "record_id": "n-e9926a4f92f9dda5246c1ce4",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-e9926a4f92f9dda5246c1ce4",
   "match": "Liverpool v Arsenal",
   "match_url": "/football/matches/liverpool-vs-arsenal-2026-11-01/",
   "kickoff": "2026-11-01T16:30:00.000Z",
   "competition": "Premier League",
   "lead_hours": 20.3,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Liverpool 1-2 Arsenal",
   "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-10-31T20:10:24.402Z",
   "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-e9926a4f92f9dda5246c1ce4",
    "quote_text": "Jeg spår en 2-1 seier til Arsenal.",
    "fragment_from": 1385,
    "fragment_to": 1419,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/liverpool-arsenal-01-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "371c57d1e54e9aa7cbb39c1ceb2dd9c59ef04ae06c0cefe4654fbd940e84cdb6",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-10-31T20:10:24.402Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-f14362e6c2a0",
     "display_name": "Liverpool — Arsenal",
     "competition_name": "Premier League",
     "starts_at": "2026-11-01T16:30:00.000Z",
     "url": "/football/matches/liverpool-vs-arsenal-2026-11-01/",
     "scoreline": "0-1",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Liverpool 1-2 Arsenal",
    "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-01T16:30:00.000Z",
     "detected_at": "2026-10-31T20:10:24.402Z",
     "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": "Liverpool 1-2 Arsenal",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "1-2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Liverpool 1-2 Arsenal"
    },
    "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 Liverpool 0-1 Arsenal."
    },
    "settlements": [
     {
      "operation_id": "40a788f637cb780559a842ef6518d48471d89084799de99ccb7a1eb5ef91cede",
      "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": "Arsenal",
      "decimal_odds": "2.4150",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 14150,
      "executed_at": "2026-11-01T16:10:41.506Z",
      "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/liverpool-arsenal-01-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Liverpool 1-2 Arsenal"
   }
  },
  {
   "record_id": "n-c9b77dc6bf9be173b2ce7824",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-c9b77dc6bf9be173b2ce7824",
   "match": "Malmo FF v Hammarby",
   "match_url": "/football/matches/malmo-ff-vs-hammarby-2026-11-01/",
   "kickoff": "2026-11-01T13:00:00.000Z",
   "competition": "Allsvenskan",
   "lead_hours": 16.8,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Malmo FF 1-2 Hammarby",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Won",
   "final_score": "1-2",
   "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-10-31T20:10:33.439Z",
   "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-c9b77dc6bf9be173b2ce7824",
    "quote_text": "En mulig sluttresultat kan være 2-1 til Hammarby",
    "fragment_from": 1605,
    "fragment_to": 1653,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/malmo-ff-hammarby-01-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "460b91bfba0436b32d3ee80366b710263678d92d16a733e0b57b9c2f61f1e346",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-10-31T20:10:33.439Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "ambiguous",
    "event": {
     "event_id": "s-d14e16b1f776",
     "display_name": "Malmo FF — Hammarby",
     "competition_name": "Allsvenskan",
     "starts_at": "2026-11-01T13:00:00.000Z",
     "url": "/football/matches/malmo-ff-vs-hammarby-2026-11-01/",
     "scoreline": "1-2",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Malmo FF 1-2 Hammarby",
    "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-01T13:00:00.000Z",
     "detected_at": "2026-10-31T20:10:33.439Z",
     "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": "Malmo FF 1-2 Hammarby",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "1-2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Malmo FF 1-2 Hammarby"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "1-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Matched: the final score was Malmo FF 1-2 Hammarby."
    },
    "settlements": [
     {
      "operation_id": "b5d5dc85eeaa5338e1c55a6df9004733b2e4d5ab73e1a40c2de7d9d26e1a7e90",
      "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": "Hammarby",
      "decimal_odds": null,
      "odds_role": null,
      "stake_hundredths": null,
      "status": "skipped",
      "status_text": "Not executed: ",
      "result": null,
      "result_words": null,
      "change_hundredths": null,
      "executed_at": null,
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": 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/malmo-ff-hammarby-01-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Malmo FF 1-2 Hammarby"
   }
  },
  {
   "record_id": "n-866c48d2fa80cb2204f0a8b6",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-866c48d2fa80cb2204f0a8b6",
   "match": "Lazio v Cagliari",
   "match_url": "/football/matches/lazio-vs-cagliari-2026-11-01/",
   "kickoff": "2026-11-01T14:00:00.000Z",
   "competition": "Serie A",
   "lead_hours": 13.8,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Lazio 2-1 Cagliari",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Won",
   "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-01T00:09:45.689Z",
   "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-866c48d2fa80cb2204f0a8b6",
    "quote_text": "Med tanke på lagets nåværende form og tidligere møter, tror jeg Lazio vil vinne 2-1.",
    "fragment_from": 1444,
    "fragment_to": 1528,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/lazio-cagliari-01-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "f9261c470b0b55107add58b8eb482a9a441b70ded4de5b6b06d2bf2d14796407",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-01T00:09:45.689Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-440b743ba853",
     "display_name": "Lazio — Cagliari",
     "competition_name": "Serie A",
     "starts_at": "2026-11-01T14:00:00.000Z",
     "url": "/football/matches/lazio-vs-cagliari-2026-11-01/",
     "scoreline": "2-1",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Lazio 2-1 Cagliari",
    "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-01T14:00:00.000Z",
     "detected_at": "2026-11-01T00:09:45.689Z",
     "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": "Lazio 2-1 Cagliari",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Lazio 2-1 Cagliari"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "2-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Matched: the final score was Lazio 2-1 Cagliari."
    },
    "settlements": [
     {
      "operation_id": "a9323c2c4057087b6217ef1fa95b25e7c61c93e3c16bc9343dad882aa2b0bd2b",
      "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": "Lazio",
      "decimal_odds": "1.4400",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 4400,
      "executed_at": "2026-11-01T18:36:21.742Z",
      "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/lazio-cagliari-01-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Lazio 2-1 Cagliari"
   }
  },
  {
   "record_id": "n-d5fb03e4b7478d71a61929a9",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-d5fb03e4b7478d71a61929a9",
   "match": "Frosinone v Torino",
   "match_url": "/football/matches/frosinone-vs-torino-2026-11-01/",
   "kickoff": "2026-11-01T14:00:00.000Z",
   "competition": "Serie A",
   "lead_hours": 13.8,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Frosinone 1-1 Torino",
   "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-01T00:09:46.676Z",
   "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": {
    "outcome": "1",
    "price": "2.1000",
    "result": "Won",
    "points_hundredths": 11000,
    "picked_favourite": false
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-d5fb03e4b7478d71a61929a9",
    "quote_text": "En realistisk prediksjon for dette oppgjøret er 1-1, et resultat som reflekterer begge lag sin evne til å score, samtidig som de er forsiktige med å slippe inn mål.",
    "fragment_from": 1410,
    "fragment_to": 1574,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/frosinone-torino-01-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "02fc398dcc2f206636dfc9e35c0c097d5f88eda26244afde093946570a756ee2",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-01T00:09:46.676Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-665aa0e695c8",
     "display_name": "Frosinone — Torino",
     "competition_name": "Serie A",
     "starts_at": "2026-11-01T14:00:00.000Z",
     "url": "/football/matches/frosinone-vs-torino-2026-11-01/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Frosinone 1-1 Torino",
    "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-01T14:00:00.000Z",
     "detected_at": "2026-11-01T00:09:46.676Z",
     "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": "Frosinone 1-1 Torino",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "1-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Frosinone 1-1 Torino"
    },
    "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 Frosinone 2-0 Torino."
    },
    "settlements": [
     {
      "operation_id": "9385dde4baf8b57062380eeeeba0e11737cb6438b2f298f7f7cff1556d02c8a6",
      "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": "draw",
      "decimal_odds": "3.9000",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-11-01T10:02:43.656Z",
      "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/frosinone-torino-01-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Frosinone 1-1 Torino"
   }
  },
  {
   "record_id": "n-587c188cea61887d161a7541",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-587c188cea61887d161a7541",
   "match": "Lecce v Genoa",
   "match_url": "/football/matches/lecce-vs-genoa-2026-11-01/",
   "kickoff": "2026-11-01T17:00:00.000Z",
   "competition": "Serie A",
   "lead_hours": 16.8,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Lecce 2-1 Genoa",
   "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-01T00:09:47.811Z",
   "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": {
    "outcome": "2",
    "price": "2.3700",
    "result": "Won",
    "points_hundredths": 13700,
    "picked_favourite": false
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-587c188cea61887d161a7541",
    "quote_text": "Jeg spår en 2-1 seier til Lecce",
    "fragment_from": 1424,
    "fragment_to": 1455,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/lecce-genoa-01-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "f25c156d96b07b8600789b2ea61e5a8f7f954204baadd03f0f0807d442aebd07",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-01T00:09:47.811Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-0cb993c2aba6",
     "display_name": "Lecce — Genoa",
     "competition_name": "Serie A",
     "starts_at": "2026-11-01T17:00:00.000Z",
     "url": "/football/matches/lecce-vs-genoa-2026-11-01/",
     "scoreline": "1-2",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Lecce 2-1 Genoa",
    "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-01T17:00:00.000Z",
     "detected_at": "2026-11-01T00:09:47.811Z",
     "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": "Lecce 2-1 Genoa",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Lecce 2-1 Genoa"
    },
    "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 Lecce 1-2 Genoa."
    },
    "settlements": [
     {
      "operation_id": "9df99ff602ce4ad3d2c96a8802f13e4dc4d6e80a1b83c1a6448532fea414cc19",
      "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": "Lecce",
      "decimal_odds": "3.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-01T10:06:20.805Z",
      "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/lecce-genoa-01-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Lecce 2-1 Genoa"
   }
  },
  {
   "record_id": "n-7db99f26c6340b9f797e13df",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-7db99f26c6340b9f797e13df",
   "match": "Djurgarden v Degerfors",
   "match_url": "/football/matches/djurgarden-vs-degerfors-2026-11-01/",
   "kickoff": "2026-11-01T13:00:00.000Z",
   "competition": "Allsvenskan",
   "lead_hours": 1.3,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Djurgarden 3-1 Degerfors",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "2-1",
   "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-01T11:39:50.580Z",
   "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-7db99f26c6340b9f797e13df",
    "quote_text": "En mulig scorelinje kan være 3-1 til Djurgården",
    "fragment_from": 1512,
    "fragment_to": 1559,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/djurgaarden-degerfors-01-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "4aba9afc9b65b9620a4ec84018639d3966b8adc1b2d375a4ef67b231e0064476",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-01T11:39:50.580Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "ambiguous",
    "event": {
     "event_id": "s-008bf0401a33",
     "display_name": "Djurgarden — Degerfors",
     "competition_name": "Allsvenskan",
     "starts_at": "2026-11-01T13:00:00.000Z",
     "url": "/football/matches/djurgarden-vs-degerfors-2026-11-01/",
     "scoreline": "2-1",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Djurgarden 3-1 Degerfors",
    "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-01T13:00:00.000Z",
     "detected_at": "2026-11-01T11:39:50.580Z",
     "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": "Djurgarden 3-1 Degerfors",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "3-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Djurgarden 3-1 Degerfors"
    },
    "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 Djurgarden 2-1 Degerfors."
    },
    "settlements": [
     {
      "operation_id": "719ce894e64e8d451aba5f9613c299f67caf5a868e44eada180d2bce3d2a8bed",
      "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": "Djurgarden",
      "decimal_odds": null,
      "odds_role": null,
      "stake_hundredths": null,
      "status": "skipped",
      "status_text": "Not executed: ",
      "result": null,
      "result_words": null,
      "change_hundredths": null,
      "executed_at": null,
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": 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/djurgaarden-degerfors-01-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Djurgarden 3-1 Degerfors"
   }
  },
  {
   "record_id": "n-378693508e40731b164ea4c1",
   "url": "/sources/oddsekspert-no/picks/13/#pick-n-378693508e40731b164ea4c1",
   "match": "Juventus v SSC Napoli",
   "match_url": "/football/matches/juventus-vs-ssc-napoli-2026-11-01/",
   "kickoff": "2026-11-01T19:45:00.000Z",
   "competition": "Serie A",
   "lead_hours": 8.1,
   "market_code": "correct_score_market",
   "author_said": "Correct score: Juventus 2-1 SSC Napoli",
   "quote": null,
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": "Lost",
   "final_score": "2-0",
   "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-01T11:39:52.479Z",
   "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-378693508e40731b164ea4c1",
    "quote_text": "tror jeg Juventus vil vinne 2-1",
    "fragment_from": 1439,
    "fragment_to": 1470,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://oddsekspert.no/fotball/kamp/juventus-napoli-01-11-2026/",
     "display_name": null,
     "speaker": "OddsEkspert",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "b0bad59d988fe2f6d88e0f70ff04403953a51e0ace9a41b5eb9bbfe0e66d95d3",
     "material_removed": false
    },
    "published_at": null,
    "detected_at": "2026-11-01T11:39:52.479Z",
    "executed_at": null,
    "statement_class": "score_forecast",
    "status": "ambiguous",
    "cause": "",
    "cause_code": "ambiguous",
    "event": {
     "event_id": "s-b380ecd591fd",
     "display_name": "Juventus — SSC Napoli",
     "competition_name": "Serie A",
     "starts_at": "2026-11-01T19:45:00.000Z",
     "url": "/football/matches/juventus-vs-ssc-napoli-2026-11-01/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "Correct score",
    "outcome_label": "Juventus 2-1 SSC Napoli",
    "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-01T19:45:00.000Z",
     "detected_at": "2026-11-01T11:39:52.479Z",
     "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": "Juventus 2-1 SSC Napoli",
     "author_odds": null,
     "market_key": "correct_score_market",
     "choice_key": "2-1",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Correct score: Juventus 2-1 SSC Napoli"
    },
    "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 Juventus 2-0 SSC Napoli."
    },
    "settlements": [
     {
      "operation_id": "675c7fcca44e6fb6cc5c82b244a23932fcb3eb93d0e9ba696318234008c6e4da",
      "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": null,
      "odds_role": null,
      "stake_hundredths": null,
      "status": "skipped",
      "status_text": "Not executed: ",
      "result": null,
      "result_words": null,
      "change_hundredths": null,
      "executed_at": null,
      "methodology_version": "2.2",
      "on_claim_market": false,
      "replaced": 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/juventus-napoli-01-11-2026/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Juventus 2-1 SSC Napoli"
   }
  }
 ],
 "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": 13,
  "first": 221,
  "last": 240,
  "author_url": "/sources/oddsekspert-no/",
  "current": false
 },
 "entity_id": "history:/sources/oddsekspert-no/picks/13/",
 "source_revision": 18
}
