{
 "schema_name": "page",
 "schema_version": "2.0",
 "page_type": "event",
 "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
 "canonical": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
 "language": "en",
 "hreflang": [],
 "translations": [],
 "heading": "Olympique de Marseille vs Olympiakos Piraeus: recorded predictions and results",
 "description": "Olympique de Marseille vs Olympiakos Piraeus, 15 October 2026. Final score 0-1 · UEFA Europa League: 14 distinct predictions from 9 authors.",
 "first_paragraph": {
  "body": "Olympique de Marseille finished 0-1 against Olympiakos Piraeus. None of the 3 recorded correct-score predictions matched that score. Other markets are shown separately below. Forecast Record recorded 14 statements from 9 authors on Olympique de Marseille vs Olympiakos Piraeus (UEFA Europa League, kick-off 15 October 2026): 14 distinct predictions, all of the statements recorded before kick-off.",
  "key_number": "14",
  "data": "2026-10-15",
  "source_info": "our own evidence archive",
  "brand": "Forecast Record"
 },
 "indexable": true,
 "noindex_reason": null,
 "indexing_threshold": {
  "settled_count": 14,
  "date_count": 1,
  "required_settled": 0,
  "required_dates": 0
 },
 "data_date": "2026-10-15T21:02:08.156Z",
 "built_at": "2026-11-07T19:52:23.438Z",
 "lastmod": "2026-11-08T02:12:33.000Z",
 "content_hash": null,
 "meaning_hash": "6e3b9013592d3f96925485838307dee6a338a46ef1d8e16d7fc14a9623330794",
 "dependency_group": "event:s-50cbf0117aea",
 "release_id": "20261107-195223",
 "markup": [
  {
   "type_code": "WebPage",
   "allowed": true,
   "cause": null
  },
  {
   "type_code": "Organization",
   "allowed": true,
   "cause": null
  },
  {
   "type_code": "SportsEvent",
   "allowed": true,
   "cause": null
  }
 ],
 "exports": [
  {
   "type_code": "json",
   "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/index.json",
   "bytes": null
  },
  {
   "type_code": "csv",
   "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/picks.csv",
   "bytes": null
  }
 ],
 "modules": {
  "affiliate": true,
  "api": true,
  "compare_yourself": false
 },
 "affiliate_block": {
  "container": true,
  "request_url": "/partnery/moi",
  "disclosure": "Some links below are affiliate links and are marked as such. They never affect what you see above: the order of any table is computed before any commission is known.",
  "page_category": "event"
 },
 "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/"
 },
 "event": {
  "id": "s-50cbf0117aea",
  "display_name": "Olympique de Marseille — Olympiakos Piraeus",
  "competition_name": "UEFA Europa League",
  "starts_at": "2026-10-15T19:00:00.000Z",
  "status": "finished",
  "scoreline": "0-1",
  "condition": "finished",
  "condition_words": "finished",
  "result_received_at": "2026-10-15T21:02:08.156Z",
  "postponement": null,
  "consensus": {
   "market_label": "Both teams to score",
   "distribution": [
    {
     "outcome_label": "yes",
     "figure": 4,
     "share": "100.0"
    }
   ],
   "n": 4,
   "author_count": 4,
   "median_odds": "1.61",
   "summary": "Most common recorded selection in this market: yes — 4 of 4 eligible picks (one per author), median stated price 1.61",
   "late_excluded": 0,
   "contributions": 4,
   "prediction_count": 4,
   "chain": {
    "publications": 14,
    "unique": 14,
    "comparable": 14,
    "admissible": 14,
    "contributions": 14
   },
   "differing_choices": 0,
   "different_products": 0,
   "counting_rule": "1"
  },
  "country_name": "Europe",
  "competition_full": "UEFA Europa League (Europe)"
 },
 "evidence_items": [
  {
   "observation_id": "n-64a591d9af2e24355f481189",
   "url": "/sources/wincomparator-com/products/l-equipe-wincomparator/picks/18/#pick-n-64a591d9af2e24355f481189",
   "quote_text": "Notre pronostic\n\nOlympiakós Le Pirée gagne le match\n\nProbabilité : 49.32%\n\nProbabilité : 49.32%\n\n3",
   "fragment_from": 791,
   "fragment_to": 889,
   "quote_allowed": true,
   "source_info": {
    "medium": "website",
    "url": "https://www.wincomparator.com/fr-fr/pronostics/marseille-olympiakos-le-piree-8786966/",
    "display_name": null,
    "speaker": "L'équipe Wincomparator",
    "authorship": "channel_owner",
    "media_from_ms": null,
    "bundle_id": "59f0eb899ed014abf383d02fa2b6c2f3edac5a4c297842825fd49139baaf15e7",
    "material_removed": false
   },
   "published_at": null,
   "detected_at": "2026-10-11T10:49:46.219Z",
   "executed_at": "2026-10-26T02:40:59.563Z",
   "statement_class": "priced",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "1X2, match result",
   "outcome_label": "Olympiakos Piraeus",
   "odds_set": {
    "by_author": "3",
    "our_snapshot": "3.1500",
    "our_snapshot_at": "2026-10-11T10:47:19.911Z",
    "our_snapshot_source": "market snapshot",
    "closing": null,
    "closing_source": null
   },
   "stake_hundredths": 10000,
   "result": "win",
   "simulation_change_hundredths": 21500,
   "bankroll_after_hundredths": null,
   "executed_by": "ours",
   "series_label": "At an independent odds snapshot",
   "withdrawn": false,
   "provenance": "recorded_pre_match",
   "provenance_words": "Recorded by us before kick-off",
   "dates": {
    "fragment_at": null,
    "fragment_basis": "no",
    "source_page_at": null,
    "detected_at": "2026-10-11T10:49:46.219Z",
    "archive_snapshot_at": null,
    "flags": [
     "no_date"
    ],
    "flag_words": "The source states no publication date.",
    "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": "Olympiakos Piraeus",
    "author_odds": "3",
    "market_key": "1x2",
    "choice_key": "2",
    "period": "match",
    "line": null,
    "subject": "goals_total",
    "in_words": "1X2, match result: Olympiakos Piraeus at 3"
   },
   "author_claim_outcome": {
    "result": "win",
    "scoreline": "0-1",
    "data_status": "measured",
    "cause": null,
    "methodology_version": "2.2",
    "in_words": "Won: the final score was Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "7d249a22b3acff50357ce7532951f8d8860d0aa4ca2c20b1e92e2f66baf4ff28",
     "series_key": "author_price",
     "series_label": "At the author's stated price",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "1X2, match result",
     "choice": "Olympiakos Piraeus",
     "decimal_odds": "3",
     "odds_role": "author_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "win",
     "result_words": "Won",
     "change_hundredths": 20000,
     "executed_at": "2026-10-26T02:40:58.681Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    },
    {
     "operation_id": "2c54e0df2c7e1d852fdc8c59374d95788869e91f00929efb4fae7f272962453e",
     "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": "Olympiakos Piraeus",
     "decimal_odds": "3.1500",
     "odds_role": "market_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "win",
     "result_words": "Won",
     "change_hundredths": 21500,
     "executed_at": "2026-10-26T02:40:59.563Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    }
   ],
   "corrections": [],
   "funnel_stage": "settled_pick",
   "authorship": {
    "material_author": "L'équipe Wincomparator",
    "publisher": "Wincomparator",
    "forecaster": "L'équipe Wincomparator",
    "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://www.wincomparator.com/fr-fr/pronostics/marseille-olympiakos-le-piree-8786966/",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": null
  },
  {
   "observation_id": "n-b577ca244a8b85a6dca6d25e",
   "url": "/sources/wincomparator-com/products/l-equipe-wincomparator/picks/18/#pick-n-b577ca244a8b85a6dca6d25e",
   "quote_text": "Notre pronostic\n\n+2.5\n\nProbabilité : 65.96%\n\nProbabilité : 65.96%\n\n1.55",
   "fragment_from": 1281,
   "fragment_to": 1352,
   "quote_allowed": true,
   "source_info": {
    "medium": "website",
    "url": "https://www.wincomparator.com/fr-fr/pronostics/marseille-olympiakos-le-piree-8786966/",
    "display_name": null,
    "speaker": "L'équipe Wincomparator",
    "authorship": "channel_owner",
    "media_from_ms": null,
    "bundle_id": "59f0eb899ed014abf383d02fa2b6c2f3edac5a4c297842825fd49139baaf15e7",
    "material_removed": false
   },
   "published_at": null,
   "detected_at": "2026-10-11T10:49:46.219Z",
   "executed_at": "2026-10-26T02:41:00.327Z",
   "statement_class": "priced",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "Over/Under 2.5 goals",
   "outcome_label": "over 2.5",
   "odds_set": {
    "by_author": "1.55",
    "our_snapshot": "1.6897",
    "our_snapshot_at": "2026-10-11T10:47:19.911Z",
    "our_snapshot_source": "market snapshot",
    "closing": null,
    "closing_source": null
   },
   "stake_hundredths": 10000,
   "result": "loss",
   "simulation_change_hundredths": -10000,
   "bankroll_after_hundredths": null,
   "executed_by": "ours",
   "series_label": "At an independent odds snapshot",
   "withdrawn": false,
   "provenance": "recorded_pre_match",
   "provenance_words": "Recorded by us before kick-off",
   "dates": {
    "fragment_at": null,
    "fragment_basis": "no",
    "source_page_at": null,
    "detected_at": "2026-10-11T10:49:46.219Z",
    "archive_snapshot_at": null,
    "flags": [
     "no_date"
    ],
    "flag_words": "The source states no publication date.",
    "rule_version": "1.1"
   },
   "origin": "recorded_before_kickoff",
   "origin_detail": null,
   "origin_words": "Recorded by us before kick-off",
   "added_on": null,
   "late_publication": null,
   "author_claim": {
    "market_label": "Over/Under 2.5 goals",
    "choice": "over 2.5",
    "author_odds": "1.55",
    "market_key": "total",
    "choice_key": "over",
    "period": "match",
    "line": "2.5",
    "subject": "goals_total",
    "in_words": "Over/Under 2.5 goals: over 2.5 at 1.55"
   },
   "author_claim_outcome": {
    "result": "loss",
    "scoreline": "0-1",
    "data_status": "measured",
    "cause": null,
    "methodology_version": "2.2",
    "in_words": "Lost: the final score was Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "c47c801e6eec5fe4772375e14d7302eead0165a84d68f899176a8fc153b92191",
     "series_key": "author_price",
     "series_label": "At the author's stated price",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Over/Under 2.5 goals",
     "choice": "over 2.5",
     "decimal_odds": "1.55",
     "odds_role": "author_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-26T02:40:59.602Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    },
    {
     "operation_id": "19e79c54b7013848de07360b48fc99c26ebf9c8bcc783ca0fa70bd51ac24de16",
     "series_key": "market_price",
     "series_label": "At an independent odds snapshot",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Over/Under 2.5 goals",
     "choice": "over 2.5",
     "decimal_odds": "1.6897",
     "odds_role": "market_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-26T02:41:00.327Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    }
   ],
   "corrections": [],
   "funnel_stage": "settled_pick",
   "authorship": {
    "material_author": "L'équipe Wincomparator",
    "publisher": "Wincomparator",
    "forecaster": "L'équipe Wincomparator",
    "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://www.wincomparator.com/fr-fr/pronostics/marseille-olympiakos-le-piree-8786966/",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": null
  },
  {
   "observation_id": "n-c6641c78ccf1ef0cc1eff20c",
   "url": "/authors/goksim/picks/4/#pick-n-c6641c78ccf1ef0cc1eff20c",
   "quote_text": "Manje od 3,5 gola po kvoti 1.44",
   "fragment_from": 11440,
   "fragment_to": 11471,
   "quote_allowed": true,
   "source_info": {
    "medium": "rss",
    "url": "https://www.svijetkladjenja.com/najave-utakmica/marseille-olympiakos-prognoza-europska-liga/",
    "display_name": null,
    "speaker": "Goksim",
    "authorship": "channel_owner",
    "media_from_ms": null,
    "bundle_id": "ac5bfa9211cc4e3f14ef94d8d3053830e65acaa3e2e6c3752d800184ba8bbb21",
    "material_removed": false
   },
   "published_at": "2026-10-13T05:30:22.000Z",
   "detected_at": "2026-10-13T05:59:39.653Z",
   "executed_at": "2026-10-26T02:39:09.498Z",
   "statement_class": "priced",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "Over/Under 3.5 goals",
   "outcome_label": "under 3.5",
   "odds_set": {
    "by_author": "1.44",
    "our_snapshot": null,
    "our_snapshot_at": null,
    "our_snapshot_source": null,
    "closing": null,
    "closing_source": null
   },
   "stake_hundredths": 10000,
   "result": "win",
   "simulation_change_hundredths": 4400,
   "bankroll_after_hundredths": null,
   "executed_by": "ours",
   "series_label": "At the author's stated price",
   "withdrawn": false,
   "provenance": "recorded_pre_match",
   "provenance_words": "Recorded by us before kick-off",
   "dates": {
    "fragment_at": "2026-10-13T05:30:22.000Z",
    "fragment_basis": "element",
    "source_page_at": "2026-10-13T05:30:22.000Z",
    "detected_at": "2026-10-13T05:59:39.653Z",
    "archive_snapshot_at": null,
    "flags": [],
    "flag_words": null,
    "rule_version": "1.1"
   },
   "origin": "recorded_before_kickoff",
   "origin_detail": null,
   "origin_words": "Recorded by us before kick-off",
   "added_on": null,
   "late_publication": null,
   "author_claim": {
    "market_label": "Over/Under 3.5 goals",
    "choice": "under 3.5",
    "author_odds": "1.44",
    "market_key": "total",
    "choice_key": "under",
    "period": "match",
    "line": "3.5",
    "subject": "goals_total",
    "in_words": "Over/Under 3.5 goals: under 3.5 at 1.44"
   },
   "author_claim_outcome": {
    "result": "win",
    "scoreline": "0-1",
    "data_status": "measured",
    "cause": null,
    "methodology_version": "2.2",
    "in_words": "Won: the final score was Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "d5e828f9c224bb56573263bbc06304f263c19e1262e3ac44a3c7e8b387540621",
     "series_key": "author_price",
     "series_label": "At the author's stated price",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Over/Under 3.5 goals",
     "choice": "under 3.5",
     "decimal_odds": "1.44",
     "odds_role": "author_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "win",
     "result_words": "Won",
     "change_hundredths": 4400,
     "executed_at": "2026-10-26T02:39:09.498Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    },
    {
     "operation_id": "e610abcb4f682b1d5886261728bcf569c4ae7545917407440474d9960ed45a32",
     "series_key": "market_price",
     "series_label": "At an independent odds snapshot",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Over/Under 3.5 goals",
     "choice": "under 3.5",
     "decimal_odds": null,
     "odds_role": null,
     "stake_hundredths": null,
     "status": "skipped",
     "status_text": "Not executed: ",
     "result": null,
     "result_words": null,
     "change_hundredths": null,
     "executed_at": null,
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    }
   ],
   "corrections": [
    {
     "at": "2026-10-14T02:01:14.412Z",
     "field_name": "line sign",
     "was": "Over/Under −3.5 goals · under −3.5",
     "now": "Over/Under 3.5 goals · under 3.5",
     "cause": "Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and the outcome is worked out on it. This pick was never executed, so no number changes."
    }
   ],
   "funnel_stage": "settled_pick",
   "authorship": {
    "material_author": "Goksim",
    "publisher": "Svijet Klađenja",
    "forecaster": "Goksim",
    "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://www.svijetkladjenja.com/najave-utakmica/marseille-olympiakos-prognoza-europska-liga/",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": {
    "at": "2026-10-14T02:01:14.412Z",
    "field": "line sign",
    "reason": "Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and the outcome is worked out on it. This pick was never executed, so no number changes.",
    "version": 2,
    "url": "/corrections/#c-f1b2048399e9",
    "text": "Corrected on 14 October 2026: Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and"
   }
  },
  {
   "observation_id": "n-1b07ba4a29ab037b23674336",
   "url": "/authors/goksim/picks/4/#pick-n-1b07ba4a29ab037b23674336",
   "quote_text": "alternativu manje od 2,5 gola po kvoti 2.10",
   "fragment_from": 11476,
   "fragment_to": 11519,
   "quote_allowed": true,
   "source_info": {
    "medium": "rss",
    "url": "https://www.svijetkladjenja.com/najave-utakmica/marseille-olympiakos-prognoza-europska-liga/",
    "display_name": null,
    "speaker": "Goksim",
    "authorship": "channel_owner",
    "media_from_ms": null,
    "bundle_id": "ac5bfa9211cc4e3f14ef94d8d3053830e65acaa3e2e6c3752d800184ba8bbb21",
    "material_removed": false
   },
   "published_at": "2026-10-13T05:30:22.000Z",
   "detected_at": "2026-10-13T05:59:39.653Z",
   "executed_at": "2026-10-26T02:39:10.763Z",
   "statement_class": "priced",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "Over/Under 2.5 goals",
   "outcome_label": "under 2.5",
   "odds_set": {
    "by_author": "2.1",
    "our_snapshot": "2.1000",
    "our_snapshot_at": "2026-10-13T05:59:07.319Z",
    "our_snapshot_source": "market snapshot",
    "closing": null,
    "closing_source": null
   },
   "stake_hundredths": 10000,
   "result": "win",
   "simulation_change_hundredths": 11000,
   "bankroll_after_hundredths": null,
   "executed_by": "ours",
   "series_label": "At an independent odds snapshot",
   "withdrawn": false,
   "provenance": "recorded_pre_match",
   "provenance_words": "Recorded by us before kick-off",
   "dates": {
    "fragment_at": "2026-10-13T05:30:22.000Z",
    "fragment_basis": "element",
    "source_page_at": "2026-10-13T05:30:22.000Z",
    "detected_at": "2026-10-13T05:59:39.653Z",
    "archive_snapshot_at": null,
    "flags": [],
    "flag_words": null,
    "rule_version": "1.1"
   },
   "origin": "recorded_before_kickoff",
   "origin_detail": null,
   "origin_words": "Recorded by us before kick-off",
   "added_on": null,
   "late_publication": null,
   "author_claim": {
    "market_label": "Over/Under 2.5 goals",
    "choice": "under 2.5",
    "author_odds": "2.1",
    "market_key": "total",
    "choice_key": "under",
    "period": "match",
    "line": "2.5",
    "subject": "goals_total",
    "in_words": "Over/Under 2.5 goals: under 2.5 at 2.1"
   },
   "author_claim_outcome": {
    "result": "win",
    "scoreline": "0-1",
    "data_status": "measured",
    "cause": null,
    "methodology_version": "2.2",
    "in_words": "Won: the final score was Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "94acb815431c411a73d2d48eec7acd98a046b8a8b8348bb91d4563bc79d9d44f",
     "series_key": "author_price",
     "series_label": "At the author's stated price",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Over/Under 2.5 goals",
     "choice": "under 2.5",
     "decimal_odds": "2.1",
     "odds_role": "author_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "win",
     "result_words": "Won",
     "change_hundredths": 11000,
     "executed_at": "2026-10-26T02:39:10.527Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    },
    {
     "operation_id": "ab4e41831447d46bfba38d03f607683034724575bd7e17742e146f52049c00ad",
     "series_key": "market_price",
     "series_label": "At an independent odds snapshot",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Over/Under 2.5 goals",
     "choice": "under 2.5",
     "decimal_odds": "2.1000",
     "odds_role": "market_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "win",
     "result_words": "Won",
     "change_hundredths": 11000,
     "executed_at": "2026-10-26T02:39:10.763Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    }
   ],
   "corrections": [
    {
     "at": "2026-10-14T02:01:14.655Z",
     "field_name": "line sign",
     "was": "Over/Under −2.5 goals · under −2.5",
     "now": "Over/Under 2.5 goals · under 2.5",
     "cause": "Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and the outcome is worked out on it. This pick was never executed, so no number changes."
    }
   ],
   "funnel_stage": "settled_pick",
   "authorship": {
    "material_author": "Goksim",
    "publisher": "Svijet Klađenja",
    "forecaster": "Goksim",
    "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://www.svijetkladjenja.com/najave-utakmica/marseille-olympiakos-prognoza-europska-liga/",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": {
    "at": "2026-10-14T02:01:14.655Z",
    "field": "line sign",
    "reason": "Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and the outcome is worked out on it. This pick was never executed, so no number changes.",
    "version": 2,
    "url": "/corrections/#c-f1b2048399e9",
    "text": "Corrected on 14 October 2026: Data corrected: line sign. The line of this over/under market was recorded with a minus sign; a total cannot be negative, and the source gives the line without one. The line now matches the source and"
   }
  },
  {
   "observation_id": "n-ebf917f7763d27084b3ba935",
   "url": "/sources/free-super-tips/picks/16/#pick-n-ebf917f7763d27084b3ba935",
   "quote_text": "Both Teams To Score\n\nReasoning\n\nReason for tip\n\nMarseille remain dangerous going forward but vulnerable at the back, while Olympiakos arrive in good scoring form. With both defences offering opportunities, each side should find the net.\n\n8/13odds when tipped",
   "fragment_from": 306,
   "fragment_to": 564,
   "quote_allowed": true,
   "source_info": {
    "medium": "website",
    "url": "https://www.freesupertips.com/predictions/marseille-vs-olympiacos-predictions-betting-tips-match-previews-2/",
    "display_name": null,
    "speaker": null,
    "authorship": "channel_consensus",
    "media_from_ms": null,
    "bundle_id": "8e3cd27188d7caf479d16d4dcff62113cd52be4056ffd4bb2a3073310c1712dd",
    "material_removed": false
   },
   "published_at": null,
   "detected_at": "2026-10-13T15:24:44.735Z",
   "executed_at": "2026-10-27T02:24:54.066Z",
   "statement_class": "priced",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "Both teams to score",
   "outcome_label": "yes",
   "odds_set": {
    "by_author": "1.615",
    "our_snapshot": "1.5714",
    "our_snapshot_at": "2026-10-13T15:21:58.265Z",
    "our_snapshot_source": "market snapshot",
    "closing": null,
    "closing_source": null
   },
   "stake_hundredths": 10000,
   "result": "loss",
   "simulation_change_hundredths": -10000,
   "bankroll_after_hundredths": null,
   "executed_by": "ours",
   "series_label": "At an independent odds snapshot",
   "withdrawn": false,
   "provenance": "recorded_pre_match",
   "provenance_words": "Recorded by us before kick-off",
   "dates": {
    "fragment_at": null,
    "fragment_basis": "no",
    "source_page_at": null,
    "detected_at": "2026-10-13T15:24:44.735Z",
    "archive_snapshot_at": null,
    "flags": [
     "no_date"
    ],
    "flag_words": "The source states no publication date.",
    "rule_version": "1.1"
   },
   "origin": "recorded_before_kickoff",
   "origin_detail": null,
   "origin_words": "Recorded by us before kick-off",
   "added_on": null,
   "late_publication": null,
   "author_claim": {
    "market_label": "Both teams to score",
    "choice": "yes",
    "author_odds": "1.615",
    "market_key": "both_teams_score",
    "choice_key": "yes",
    "period": "match",
    "line": null,
    "subject": "goals_total",
    "in_words": "Both teams to score: yes at 1.61"
   },
   "author_claim_outcome": {
    "result": "loss",
    "scoreline": "0-1",
    "data_status": "measured",
    "cause": null,
    "methodology_version": "2.2",
    "in_words": "Lost: the final score was Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "62da655512b98336b93a9708953ce9a814abc0c2946b059ad52579722f9d4a2f",
     "series_key": "author_price",
     "series_label": "At the author's stated price",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Both teams to score",
     "choice": "yes",
     "decimal_odds": "1.615",
     "odds_role": "author_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-27T02:24:53.608Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    },
    {
     "operation_id": "5c7eae3ab170ab27780712fe9b05fe2a2e33dfc5cf3b6ec8fa0ddbe6461acc71",
     "series_key": "market_price",
     "series_label": "At an independent odds snapshot",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Both teams to score",
     "choice": "yes",
     "decimal_odds": "1.5714",
     "odds_role": "market_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-27T02:24:54.066Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    }
   ],
   "corrections": [],
   "funnel_stage": "settled_pick",
   "authorship": {
    "material_author": "Free Super Tips",
    "publisher": "Free Super Tips",
    "forecaster": "Free Super Tips",
    "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://www.freesupertips.com/predictions/marseille-vs-olympiacos-predictions-betting-tips-match-previews-2/",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": null
  },
  {
   "observation_id": "n-cf521e64aa9a6375a56d8651",
   "url": "/sources/free-super-tips/picks/15/#pick-n-cf521e64aa9a6375a56d8651",
   "quote_text": "Draw 1-1\n\nReasoning\n\nReason for tip\n\nA 1-1 draw looks the most likely correct score, with Marseille expected to create chances at home but Olympiakos carrying enough attacking threat to respond.\n\n6/1odds when tipped",
   "fragment_from": 1491,
   "fragment_to": 1706,
   "quote_allowed": true,
   "source_info": {
    "medium": "website",
    "url": "https://www.freesupertips.com/predictions/marseille-vs-olympiacos-predictions-betting-tips-match-previews-2/",
    "display_name": null,
    "speaker": null,
    "authorship": "channel_consensus",
    "media_from_ms": null,
    "bundle_id": "8e3cd27188d7caf479d16d4dcff62113cd52be4056ffd4bb2a3073310c1712dd",
    "material_removed": false
   },
   "published_at": null,
   "detected_at": "2026-10-13T15:24:44.735Z",
   "executed_at": "2026-10-27T02:24:54.083Z",
   "statement_class": "priced",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "Correct score",
   "outcome_label": "Olympique de Marseille 1-1 Olympiakos Piraeus",
   "odds_set": {
    "by_author": "7",
    "our_snapshot": null,
    "our_snapshot_at": null,
    "our_snapshot_source": null,
    "closing": null,
    "closing_source": null
   },
   "stake_hundredths": 10000,
   "result": "loss",
   "simulation_change_hundredths": -10000,
   "bankroll_after_hundredths": null,
   "executed_by": "ours",
   "series_label": "At the author's stated price",
   "withdrawn": false,
   "provenance": "recorded_pre_match",
   "provenance_words": "Recorded by us before kick-off",
   "dates": {
    "fragment_at": null,
    "fragment_basis": "no",
    "source_page_at": null,
    "detected_at": "2026-10-13T15:24:44.735Z",
    "archive_snapshot_at": null,
    "flags": [
     "no_date"
    ],
    "flag_words": "The source states no publication date.",
    "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": "Olympique de Marseille 1-1 Olympiakos Piraeus",
    "author_odds": "7",
    "market_key": "correct_score_market",
    "choice_key": "1-1",
    "period": "match",
    "line": null,
    "subject": "goals_total",
    "in_words": "Correct score: Olympique de Marseille 1-1 Olympiakos Piraeus at 7"
   },
   "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 Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "6b21daca317ce7cf41771b24027321c4b4d4e5f21a9cf1f19771dcf43623bff1",
     "series_key": "author_price",
     "series_label": "At the author's stated price",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Correct score",
     "choice": "Olympique de Marseille 1-1 Olympiakos Piraeus",
     "decimal_odds": "7",
     "odds_role": "author_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-27T02:24:54.083Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    },
    {
     "operation_id": "bfee7b83f968fac593b0fc7de5a0e9c763d1706383c360220fcf2af18a0aa29d",
     "series_key": "market_price",
     "series_label": "At an independent odds snapshot",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Correct score",
     "choice": "Olympique de Marseille 1-1 Olympiakos Piraeus",
     "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": "settled_pick",
   "authorship": {
    "material_author": "Free Super Tips",
    "publisher": "Free Super Tips",
    "forecaster": "Free Super Tips",
    "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://www.freesupertips.com/predictions/marseille-vs-olympiacos-predictions-betting-tips-match-previews-2/",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": null
  },
  {
   "observation_id": "n-978d24fcdd5fef55870f7287",
   "url": "/authors/matthew-cooper/picks/2/#pick-n-978d24fcdd5fef55870f7287",
   "quote_text": "We say: Marseille 1-2 Olympiacos",
   "fragment_from": 3351,
   "fragment_to": 3383,
   "quote_allowed": true,
   "source_info": {
    "medium": "rss",
    "url": "https://www.sportsmole.co.uk/football/marseille/preview/marseille-vs-olympiacos-prediction-team-news-lineups_606818.html",
    "display_name": null,
    "speaker": "Matthew Cooper",
    "authorship": "channel_owner",
    "media_from_ms": null,
    "bundle_id": "66bfe47e39e8d91370230869f6b87d4b715106819b84f7cb43540714d72aadf0",
    "material_removed": false
   },
   "published_at": "2026-10-13T14:58:27.000Z",
   "detected_at": "2026-10-13T17:09:49.316Z",
   "executed_at": null,
   "statement_class": "score_forecast",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "Correct score",
   "outcome_label": "Olympique de Marseille 1-2 Olympiakos Piraeus",
   "odds_set": {
    "by_author": null,
    "our_snapshot": null,
    "our_snapshot_at": null,
    "our_snapshot_source": null,
    "closing": null,
    "closing_source": null
   },
   "stake_hundredths": null,
   "result": "loss",
   "simulation_change_hundredths": null,
   "bankroll_after_hundredths": null,
   "executed_by": null,
   "series_label": null,
   "withdrawn": false,
   "provenance": "recorded_pre_match",
   "provenance_words": "Recorded by us before kick-off",
   "dates": {
    "fragment_at": "2026-10-13T14:58:27.000Z",
    "fragment_basis": "element",
    "source_page_at": "2026-10-13T14:58:27.000Z",
    "detected_at": "2026-10-13T17:09:49.316Z",
    "archive_snapshot_at": null,
    "flags": [],
    "flag_words": null,
    "rule_version": "1.1"
   },
   "origin": "recorded_before_kickoff",
   "origin_detail": null,
   "origin_words": "Recorded by us before kick-off",
   "added_on": null,
   "late_publication": null,
   "author_claim": {
    "market_label": "Correct score",
    "choice": "Olympique de Marseille 1-2 Olympiakos Piraeus",
    "author_odds": null,
    "market_key": "correct_score_market",
    "choice_key": "1-2",
    "period": "match",
    "line": null,
    "subject": "goals_total",
    "in_words": "Correct score: Olympique de Marseille 1-2 Olympiakos Piraeus"
   },
   "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 Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "3614051e42bfc189681e3a368a64bee09968e71e1261773d933d7e99c9995449",
     "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": "Olympiakos Piraeus",
     "decimal_odds": "2.9500",
     "odds_role": "market_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "win",
     "result_words": "Won",
     "change_hundredths": 19500,
     "executed_at": "2026-10-27T02:24:52.605Z",
     "methodology_version": "2.2",
     "on_claim_market": false,
     "replaced": false
    }
   ],
   "corrections": [],
   "funnel_stage": "prediction",
   "authorship": {
    "material_author": "Matthew Cooper",
    "publisher": "Sports Mole",
    "forecaster": "Matthew Cooper",
    "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://www.sportsmole.co.uk/football/marseille/preview/marseille-vs-olympiacos-prediction-team-news-lineups_606818.html",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": null
  },
  {
   "observation_id": "n-b04d106e125249da475a7ffb",
   "url": "/authors/steeven-occhipinti/picks/7/#pick-n-b04d106e125249da475a7ffb",
   "quote_text": "Les deux équipes marquent\n\n1.51",
   "fragment_from": 14018,
   "fragment_to": 14049,
   "quote_allowed": true,
   "source_info": {
    "medium": "website",
    "url": "https://www.sportytrader.com/pronostics/marseille-olympiakos-le-piree-378940/",
    "display_name": null,
    "speaker": "Steeven Occhipinti",
    "authorship": "channel_owner",
    "media_from_ms": null,
    "bundle_id": "f76a5975b319469c827333f66d09235920efbe251418ab2a97bdeacaf8d2a0f7",
    "material_removed": false
   },
   "published_at": null,
   "detected_at": "2026-10-13T19:03:32.936Z",
   "executed_at": "2026-11-06T23:23:30.070Z",
   "statement_class": "priced",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "Both teams to score",
   "outcome_label": "yes",
   "odds_set": {
    "by_author": "1.51",
    "our_snapshot": "1.5714",
    "our_snapshot_at": "2026-10-13T18:59:20.519Z",
    "our_snapshot_source": "market snapshot",
    "closing": null,
    "closing_source": null
   },
   "stake_hundredths": 10000,
   "result": "loss",
   "simulation_change_hundredths": -10000,
   "bankroll_after_hundredths": null,
   "executed_by": "ours",
   "series_label": "At an independent odds snapshot",
   "withdrawn": false,
   "provenance": "recorded_pre_match",
   "provenance_words": "Recorded by us before kick-off",
   "dates": {
    "fragment_at": null,
    "fragment_basis": "no",
    "source_page_at": null,
    "detected_at": "2026-10-13T19:03:32.936Z",
    "archive_snapshot_at": null,
    "flags": [
     "no_date"
    ],
    "flag_words": "The source states no publication date.",
    "rule_version": "1.1"
   },
   "origin": "recorded_before_kickoff",
   "origin_detail": null,
   "origin_words": "Recorded by us before kick-off",
   "added_on": null,
   "late_publication": null,
   "author_claim": {
    "market_label": "Both teams to score",
    "choice": "yes",
    "author_odds": "1.51",
    "market_key": "both_teams_score",
    "choice_key": "yes",
    "period": "match",
    "line": null,
    "subject": "goals_total",
    "in_words": "Both teams to score: yes at 1.51"
   },
   "author_claim_outcome": {
    "result": "loss",
    "scoreline": "0-1",
    "data_status": "measured",
    "cause": null,
    "methodology_version": "2.2",
    "in_words": "Lost: the final score was Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "3c2db33c2118b2774cccc51560f3a68c227831a0c731695c2d8ebb6fd7831465",
     "series_key": "author_price",
     "series_label": "At the author's stated price",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Both teams to score",
     "choice": "yes",
     "decimal_odds": "1.51",
     "odds_role": "author_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-11-06T23:23:28.501Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    },
    {
     "operation_id": "5c15e75ed1ce8e84bcd0fb05b33a3ed28843ec49aa6575b2150ebf6e9603c840",
     "series_key": "market_price",
     "series_label": "At an independent odds snapshot",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Both teams to score",
     "choice": "yes",
     "decimal_odds": "1.5714",
     "odds_role": "market_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-11-06T23:23:30.070Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    }
   ],
   "corrections": [],
   "funnel_stage": "settled_pick",
   "authorship": {
    "material_author": "Steeven Occhipinti",
    "publisher": "sportytrader.com",
    "forecaster": "Steeven Occhipinti",
    "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://www.sportytrader.com/pronostics/marseille-olympiakos-le-piree-378940/",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": null
  },
  {
   "observation_id": "n-692b2792287917d5aa14bde5",
   "url": "/authors/steeven-occhipinti/picks/7/#pick-n-692b2792287917d5aa14bde5",
   "quote_text": "Marseille gagne\n\nCote\n2.24",
   "fragment_from": 14174,
   "fragment_to": 14200,
   "quote_allowed": true,
   "source_info": {
    "medium": "website",
    "url": "https://www.sportytrader.com/pronostics/marseille-olympiakos-le-piree-378940/",
    "display_name": null,
    "speaker": "Steeven Occhipinti",
    "authorship": "channel_owner",
    "media_from_ms": null,
    "bundle_id": "f76a5975b319469c827333f66d09235920efbe251418ab2a97bdeacaf8d2a0f7",
    "material_removed": false
   },
   "published_at": null,
   "detected_at": "2026-10-13T19:03:32.936Z",
   "executed_at": "2026-10-26T02:38:39.441Z",
   "statement_class": "priced",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "1X2, match result",
   "outcome_label": "Olympique de Marseille",
   "odds_set": {
    "by_author": "2.24",
    "our_snapshot": "2.2500",
    "our_snapshot_at": "2026-10-13T18:59:20.519Z",
    "our_snapshot_source": "market snapshot",
    "closing": null,
    "closing_source": null
   },
   "stake_hundredths": 10000,
   "result": "loss",
   "simulation_change_hundredths": -10000,
   "bankroll_after_hundredths": null,
   "executed_by": "ours",
   "series_label": "At an independent odds snapshot",
   "withdrawn": false,
   "provenance": "recorded_pre_match",
   "provenance_words": "Recorded by us before kick-off",
   "dates": {
    "fragment_at": null,
    "fragment_basis": "no",
    "source_page_at": null,
    "detected_at": "2026-10-13T19:03:32.936Z",
    "archive_snapshot_at": null,
    "flags": [
     "no_date"
    ],
    "flag_words": "The source states no publication date.",
    "rule_version": "1.1"
   },
   "origin": "recorded_before_kickoff",
   "origin_detail": null,
   "origin_words": "Recorded by us before kick-off",
   "added_on": null,
   "late_publication": null,
   "author_claim": {
    "market_label": "1X2, match result",
    "choice": "Olympique de Marseille",
    "author_odds": "2.24",
    "market_key": "1x2",
    "choice_key": "1",
    "period": "match",
    "line": null,
    "subject": "goals_total",
    "in_words": "1X2, match result: Olympique de Marseille at 2.24"
   },
   "author_claim_outcome": {
    "result": "loss",
    "scoreline": "0-1",
    "data_status": "measured",
    "cause": null,
    "methodology_version": "2.2",
    "in_words": "Lost: the final score was Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "f8ba50a0bd019aebd0d3887b27fa8c8a93ed6ab749d40bf7b87c804ef86e1ca1",
     "series_key": "author_price",
     "series_label": "At the author's stated price",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "1X2, match result",
     "choice": "Olympique de Marseille",
     "decimal_odds": "2.24",
     "odds_role": "author_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-26T02:38:38.515Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    },
    {
     "operation_id": "83297b160b1cc2f30fa22523b4accaa1b54d6796dad8c21c218824c0cf70a087",
     "series_key": "market_price",
     "series_label": "At an independent odds snapshot",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "1X2, match result",
     "choice": "Olympique de Marseille",
     "decimal_odds": "2.2500",
     "odds_role": "market_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-26T02:38:39.441Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    }
   ],
   "corrections": [],
   "funnel_stage": "settled_pick",
   "authorship": {
    "material_author": "Steeven Occhipinti",
    "publisher": "sportytrader.com",
    "forecaster": "Steeven Occhipinti",
    "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://www.sportytrader.com/pronostics/marseille-olympiakos-le-piree-378940/",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": null
  },
  {
   "observation_id": "n-ecf1261b7bfdd8d6da23098d",
   "url": "/sources/futbol24-com/picks/5/#pick-n-ecf1261b7bfdd8d6da23098d",
   "quote_text": "Victoria local para el Olympique Marseille: En las predicciones fútbol, el Olympique Marseille tiene una ligera ventaja como local, a pesar de su inicio desfavorable en el torneo. Su última victoria contra el ESTAC Troyes por 2-0 muestra un resurgir en su forma. Con una cuota de 2.30 en YoSports, una victoria del equipo local parece una buena apuesta.",
   "fragment_from": 1033,
   "fragment_to": 1386,
   "quote_allowed": true,
   "source_info": {
    "medium": "website",
    "url": "https://www.futbol24.com/es/pronosticos-deportivos/previa/15-10-2026-olympique-marseille-olympiakos-piraeus-pronostico/",
    "display_name": null,
    "speaker": null,
    "authorship": "channel_consensus",
    "media_from_ms": null,
    "bundle_id": "218c06de703fb1209c7d5047559c60fe85d2d1b4465d6fb221dc556fed54ee32",
    "material_removed": false
   },
   "published_at": "2026-10-12T01:09:13.000Z",
   "detected_at": "2026-10-15T00:40:16.090Z",
   "executed_at": "2026-10-15T00:42:23.090Z",
   "statement_class": "priced",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "1X2, match result",
   "outcome_label": "Olympique de Marseille",
   "odds_set": {
    "by_author": "2.3",
    "our_snapshot": "2.3000",
    "our_snapshot_at": "2026-10-15T00:35:52.957Z",
    "our_snapshot_source": "market snapshot",
    "closing": null,
    "closing_source": null
   },
   "stake_hundredths": 10000,
   "result": "loss",
   "simulation_change_hundredths": -10000,
   "bankroll_after_hundredths": null,
   "executed_by": "ours",
   "series_label": "At an independent odds snapshot",
   "withdrawn": false,
   "provenance": "recorded_pre_match",
   "provenance_words": "Recorded by us before kick-off",
   "dates": {
    "fragment_at": "2026-10-12T01:09:13.000Z",
    "fragment_basis": "page",
    "source_page_at": "2026-10-12T01:09:13.000Z",
    "detected_at": "2026-10-15T00:40:16.090Z",
    "archive_snapshot_at": null,
    "flags": [],
    "flag_words": null,
    "rule_version": "1.1"
   },
   "origin": "recorded_before_kickoff",
   "origin_detail": null,
   "origin_words": "Recorded by us before kick-off",
   "added_on": null,
   "late_publication": null,
   "author_claim": {
    "market_label": "1X2, match result",
    "choice": "Olympique de Marseille",
    "author_odds": "2.3",
    "market_key": "1x2",
    "choice_key": "1",
    "period": "match",
    "line": null,
    "subject": "goals_total",
    "in_words": "1X2, match result: Olympique de Marseille at 2.3"
   },
   "author_claim_outcome": {
    "result": "loss",
    "scoreline": "0-1",
    "data_status": "measured",
    "cause": null,
    "methodology_version": "2.2",
    "in_words": "Lost: the final score was Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "ac57e5e11d05908909980c16a21d718f4faec7b3238f7857c6f4bd511ff5e76c",
     "series_key": "author_price",
     "series_label": "At the author's stated price",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "1X2, match result",
     "choice": "Olympique de Marseille",
     "decimal_odds": "2.3",
     "odds_role": "author_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-15T00:42:22.331Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    },
    {
     "operation_id": "379ed23c7a6617f4edd236a0c46294bc5f04f74fba99b5c0e138d45f5098e2fd",
     "series_key": "market_price",
     "series_label": "At an independent odds snapshot",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "1X2, match result",
     "choice": "Olympique de Marseille",
     "decimal_odds": "2.3000",
     "odds_role": "market_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-15T00:42:23.090Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    }
   ],
   "corrections": [],
   "funnel_stage": "settled_pick",
   "authorship": {
    "material_author": "Futbol24 — Pronósticos (es)",
    "publisher": "Futbol24 — Pronósticos (es)",
    "forecaster": "Futbol24 — Pronósticos (es)",
    "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://www.futbol24.com/es/pronosticos-deportivos/previa/15-10-2026-olympique-marseille-olympiakos-piraeus-pronostico/",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": null
  },
  {
   "observation_id": "n-3f86039caa3e09123fa7a924",
   "url": "/sources/futbol24-com/picks/5/#pick-n-3f86039caa3e09123fa7a924",
   "quote_text": "Ambos equipos marcarán: Con el historial de enfrentamientos recientes entre ambos equipos, donde se han registrado goles en los dos lados, es probable que veamos goles de ambas partes. Además, el Olympiakos Piraeus viene de una victoria contra Jagiellonia Białystok, lo que indica su capacidad ofensiva. La cuota de 1.62 en Betway para que ambos equipos marquen es atractiva para los apostadores.",
   "fragment_from": 1388,
   "fragment_to": 1784,
   "quote_allowed": true,
   "source_info": {
    "medium": "website",
    "url": "https://www.futbol24.com/es/pronosticos-deportivos/previa/15-10-2026-olympique-marseille-olympiakos-piraeus-pronostico/",
    "display_name": null,
    "speaker": null,
    "authorship": "channel_consensus",
    "media_from_ms": null,
    "bundle_id": "218c06de703fb1209c7d5047559c60fe85d2d1b4465d6fb221dc556fed54ee32",
    "material_removed": false
   },
   "published_at": "2026-10-12T01:09:13.000Z",
   "detected_at": "2026-10-15T00:40:16.090Z",
   "executed_at": "2026-10-15T00:42:22.262Z",
   "statement_class": "priced",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "Both teams to score",
   "outcome_label": "yes",
   "odds_set": {
    "by_author": "1.62",
    "our_snapshot": "1.5882",
    "our_snapshot_at": "2026-10-15T00:35:52.957Z",
    "our_snapshot_source": "market snapshot",
    "closing": null,
    "closing_source": null
   },
   "stake_hundredths": 10000,
   "result": "loss",
   "simulation_change_hundredths": -10000,
   "bankroll_after_hundredths": null,
   "executed_by": "ours",
   "series_label": "At an independent odds snapshot",
   "withdrawn": false,
   "provenance": "recorded_pre_match",
   "provenance_words": "Recorded by us before kick-off",
   "dates": {
    "fragment_at": "2026-10-12T01:09:13.000Z",
    "fragment_basis": "page",
    "source_page_at": "2026-10-12T01:09:13.000Z",
    "detected_at": "2026-10-15T00:40:16.090Z",
    "archive_snapshot_at": null,
    "flags": [],
    "flag_words": null,
    "rule_version": "1.1"
   },
   "origin": "recorded_before_kickoff",
   "origin_detail": null,
   "origin_words": "Recorded by us before kick-off",
   "added_on": null,
   "late_publication": null,
   "author_claim": {
    "market_label": "Both teams to score",
    "choice": "yes",
    "author_odds": "1.62",
    "market_key": "both_teams_score",
    "choice_key": "yes",
    "period": "match",
    "line": null,
    "subject": "goals_total",
    "in_words": "Both teams to score: yes at 1.62"
   },
   "author_claim_outcome": {
    "result": "loss",
    "scoreline": "0-1",
    "data_status": "measured",
    "cause": null,
    "methodology_version": "2.2",
    "in_words": "Lost: the final score was Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "25167dd77a5046d7a8822a97a03406712d79e7b25344a1e05725aec569c8208d",
     "series_key": "author_price",
     "series_label": "At the author's stated price",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Both teams to score",
     "choice": "yes",
     "decimal_odds": "1.62",
     "odds_role": "author_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-15T00:42:21.556Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    },
    {
     "operation_id": "64e30977c0cd6fce4a7fe3d65ec3c78662a7569a124a0cf6dbd76c2941019809",
     "series_key": "market_price",
     "series_label": "At an independent odds snapshot",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Both teams to score",
     "choice": "yes",
     "decimal_odds": "1.5882",
     "odds_role": "market_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-15T00:42:22.262Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    }
   ],
   "corrections": [],
   "funnel_stage": "settled_pick",
   "authorship": {
    "material_author": "Futbol24 — Pronósticos (es)",
    "publisher": "Futbol24 — Pronósticos (es)",
    "forecaster": "Futbol24 — Pronósticos (es)",
    "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://www.futbol24.com/es/pronosticos-deportivos/previa/15-10-2026-olympique-marseille-olympiakos-piraeus-pronostico/",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": null
  },
  {
   "observation_id": "n-76b60fd241934145bdbec122",
   "url": "/authors/baba/picks/45/#pick-n-76b60fd241934145bdbec122",
   "quote_text": "Additionally, considering both teams' attacking prowess and defensive lapses, we predict that both teams will score during this encounter.",
   "fragment_from": 2511,
   "fragment_to": 2649,
   "quote_allowed": true,
   "source_info": {
    "medium": "website",
    "url": "https://www.livetipsportal.com/en/sportsbetting-tips/olympique-marseille-vs-olympiakos-piraeus-europa-league-12520296/",
    "display_name": null,
    "speaker": "Baba",
    "authorship": "channel_owner",
    "media_from_ms": null,
    "bundle_id": "aa64285b8a75f7a92b88a3f9836c3d6a02fae1143c2f7f143b3190ee2a3346aa",
    "material_removed": false
   },
   "published_at": "2026-10-12T00:45:15.000Z",
   "detected_at": "2026-10-15T01:09:32.650Z",
   "executed_at": "2026-10-15T01:11:16.032Z",
   "statement_class": "unpriced",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "Both teams to score",
   "outcome_label": "yes",
   "odds_set": {
    "by_author": null,
    "our_snapshot": "1.5882",
    "our_snapshot_at": "2026-10-15T01:06:00.427Z",
    "our_snapshot_source": "market snapshot",
    "closing": null,
    "closing_source": null
   },
   "stake_hundredths": 10000,
   "result": "loss",
   "simulation_change_hundredths": -10000,
   "bankroll_after_hundredths": null,
   "executed_by": "ours",
   "series_label": "At an independent odds snapshot",
   "withdrawn": false,
   "provenance": "recorded_pre_match",
   "provenance_words": "Recorded by us before kick-off",
   "dates": {
    "fragment_at": "2026-10-12T00:45:15.000Z",
    "fragment_basis": "page",
    "source_page_at": "2026-10-12T00:45:15.000Z",
    "detected_at": "2026-10-15T01:09:32.650Z",
    "archive_snapshot_at": null,
    "flags": [],
    "flag_words": null,
    "rule_version": "1.1"
   },
   "origin": "recorded_before_kickoff",
   "origin_detail": null,
   "origin_words": "Recorded by us before kick-off",
   "added_on": null,
   "late_publication": null,
   "author_claim": {
    "market_label": "Both teams to score",
    "choice": "yes",
    "author_odds": null,
    "market_key": "both_teams_score",
    "choice_key": "yes",
    "period": "match",
    "line": null,
    "subject": "goals_total",
    "in_words": "Both teams to score: yes"
   },
   "author_claim_outcome": {
    "result": "loss",
    "scoreline": "0-1",
    "data_status": "measured",
    "cause": null,
    "methodology_version": "2.2",
    "in_words": "Lost: the final score was Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "6b7d1dcc21b4246468b073416c19041d927cee916a6f552af5ce2fe5b9b438eb",
     "series_key": "market_price",
     "series_label": "At an independent odds snapshot",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Both teams to score",
     "choice": "yes",
     "decimal_odds": "1.5882",
     "odds_role": "market_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-15T01:11:16.032Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    }
   ],
   "corrections": [],
   "funnel_stage": "settled_pick",
   "authorship": {
    "material_author": "Baba",
    "publisher": "Livetipsportal",
    "forecaster": "Baba",
    "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://www.livetipsportal.com/en/sportsbetting-tips/olympique-marseille-vs-olympiakos-piraeus-europa-league-12520296/",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": null
  },
  {
   "observation_id": "n-4d9c192f62250a4a5e450d7a",
   "url": "/sources/bet-experts-nl/picks/9/#pick-n-4d9c192f62250a4a5e450d7a",
   "quote_text": "Eindvoorspelling: 1-1 – Een moeizame avond voor Marseille, maar Olympiakos pakt een verdiend punt.",
   "fragment_from": 8926,
   "fragment_to": 9024,
   "quote_allowed": true,
   "source_info": {
    "medium": "website",
    "url": "https://www.bet-experts.nl/nieuws/wedtips-marseille---olympiakos-piraeus-voorspelling-odds-opstellingen-kan-marseille-zijn-eerste-europa-league-punt-pakken",
    "display_name": null,
    "speaker": null,
    "authorship": "channel_consensus",
    "media_from_ms": null,
    "bundle_id": "d2399542d14f4b685c1410ee354f543e483a084ed43d3200b4cfd769b47eb943",
    "material_removed": false
   },
   "published_at": null,
   "detected_at": "2026-10-15T04:09:31.984Z",
   "executed_at": null,
   "statement_class": "score_forecast",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "Correct score",
   "outcome_label": "Olympique de Marseille 1-1 Olympiakos Piraeus",
   "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": null,
    "detected_at": "2026-10-15T04:09:31.984Z",
    "archive_snapshot_at": null,
    "flags": [
     "no_date"
    ],
    "flag_words": "The source states no publication date.",
    "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": "Olympique de Marseille 1-1 Olympiakos Piraeus",
    "author_odds": null,
    "market_key": "correct_score_market",
    "choice_key": "1-1",
    "period": "match",
    "line": null,
    "subject": "goals_total",
    "in_words": "Correct score: Olympique de Marseille 1-1 Olympiakos Piraeus"
   },
   "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 Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "970157076787c133dee346e55b5a3691f0bab49c4562294220a17030e20a7085",
     "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.5000",
     "odds_role": "market_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-15T04:11:21.552Z",
     "methodology_version": "2.2",
     "on_claim_market": false,
     "replaced": false
    }
   ],
   "corrections": [],
   "funnel_stage": "prediction",
   "authorship": {
    "material_author": "Bet-Experts.nl",
    "publisher": "Bet-Experts.nl",
    "forecaster": "Bet-Experts.nl",
    "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://www.bet-experts.nl/nieuws/wedtips-marseille---olympiakos-piraeus-voorspelling-odds-opstellingen-kan-marseille-zijn-eerste-europa-league-punt-pakken",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": null
  },
  {
   "observation_id": "n-24e003705523f6b7c32fb501",
   "url": "/authors/arvid-snacke/picks/2/#pick-n-24e003705523f6b7c32fb501",
   "quote_text": "1X ska räcka gott.",
   "fragment_from": 1781,
   "fragment_to": 1799,
   "quote_allowed": true,
   "source_info": {
    "medium": "rss",
    "url": "https://speltips.se/topptipset-15-10-europa-league-och-confan",
    "display_name": null,
    "speaker": "Arvid Snacke",
    "authorship": "channel_owner",
    "media_from_ms": null,
    "bundle_id": "17e617e71f21cccaf867bd787695a5cba3a607daaa0c80098a7808cecf86354f",
    "material_removed": false
   },
   "published_at": "2026-10-15T07:11:16.000Z",
   "detected_at": "2026-10-15T07:19:35.137Z",
   "executed_at": "2026-10-26T02:36:41.958Z",
   "statement_class": "unpriced",
   "status": "recognised",
   "cause": null,
   "cause_code": null,
   "event": {
    "event_id": "s-50cbf0117aea",
    "display_name": "Olympique de Marseille — Olympiakos Piraeus",
    "competition_name": "UEFA Europa League",
    "starts_at": "2026-10-15T19:00:00.000Z",
    "url": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
    "scoreline": "0-1",
    "condition": "finished"
   },
   "market_label": "Double chance",
   "outcome_label": "Olympique de Marseille or draw",
   "odds_set": {
    "by_author": null,
    "our_snapshot": "1.3984",
    "our_snapshot_at": "2026-10-15T07:14:48.255Z",
    "our_snapshot_source": "market snapshot",
    "closing": null,
    "closing_source": null
   },
   "stake_hundredths": 10000,
   "result": "loss",
   "simulation_change_hundredths": -10000,
   "bankroll_after_hundredths": null,
   "executed_by": "ours",
   "series_label": "At an independent odds snapshot",
   "withdrawn": false,
   "provenance": "recorded_pre_match",
   "provenance_words": "Recorded by us before kick-off",
   "dates": {
    "fragment_at": "2026-10-15T07:11:16.000Z",
    "fragment_basis": "element",
    "source_page_at": "2026-10-15T07:11:16.000Z",
    "detected_at": "2026-10-15T07:19:35.137Z",
    "archive_snapshot_at": null,
    "flags": [],
    "flag_words": null,
    "rule_version": "1.1"
   },
   "origin": "recorded_before_kickoff",
   "origin_detail": null,
   "origin_words": "Recorded by us before kick-off",
   "added_on": null,
   "late_publication": null,
   "author_claim": {
    "market_label": "Double chance",
    "choice": "Olympique de Marseille or draw",
    "author_odds": null,
    "market_key": "double_chance",
    "choice_key": "1X",
    "period": "match",
    "line": null,
    "subject": "goals_total",
    "in_words": "Double chance: Olympique de Marseille or draw"
   },
   "author_claim_outcome": {
    "result": "loss",
    "scoreline": "0-1",
    "data_status": "measured",
    "cause": null,
    "methodology_version": "2.2",
    "in_words": "Lost: the final score was Olympique de Marseille 0-1 Olympiakos Piraeus."
   },
   "settlements": [
    {
     "operation_id": "ddaeb3e174842e5bcd90424f014c1ff6bc606874f82790fd8f5e601fff31805f",
     "series_key": "market_price",
     "series_label": "At an independent odds snapshot",
     "derived": false,
     "site_simulation": true,
     "author_words": true,
     "market_label": "Double chance",
     "choice": "Olympique de Marseille or draw",
     "decimal_odds": "1.3984",
     "odds_role": "market_price",
     "stake_hundredths": 10000,
     "status": "confirmed",
     "status_text": "Executed",
     "result": "loss",
     "result_words": "Lost",
     "change_hundredths": -10000,
     "executed_at": "2026-10-26T02:36:41.958Z",
     "methodology_version": "2.2",
     "on_claim_market": true,
     "replaced": false
    }
   ],
   "corrections": [],
   "funnel_stage": "settled_pick",
   "authorship": {
    "material_author": "Arvid Snacke",
    "publisher": "Speltips.se",
    "forecaster": "Arvid Snacke",
    "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://speltips.se/topptipset-15-10-europa-league-och-confan",
    "excluded_from_individual_summaries": false,
    "verdict_by": null,
    "verdict_line": null
   },
   "correction": null
  }
 ],
 "record_counts": {
  "dictionary_version": "1",
  "dictionary_url": "/methodology/#words",
  "statements": 14,
  "predictions": 14,
  "authors": 9,
  "statements_before_kickoff": 14,
  "settled_picks": 12,
  "duplicates": 1,
  "junk": {}
 },
 "match_summary": {
  "contract_version": "1",
  "final_score": "0-1",
  "state_words": "finished",
  "distinct_predictions": 14,
  "sources": 9,
  "one_source": false,
  "sentence": "Olympique de Marseille finished 0-1 against Olympiakos Piraeus. None of the 3 recorded correct-score predictions matched that score. Other markets are shown separately below.",
  "who_predicted_what": [
   {
    "record_id": "n-ecf1261b7bfdd8d6da23098d",
    "url": "/sources/futbol24-com/picks/5/#pick-n-ecf1261b7bfdd8d6da23098d",
    "author": "Futbol24",
    "author_url": "/sources/futbol24-com/",
    "market": "1X2, match result",
    "selection": "Olympique de Marseille",
    "outcome": "Lost",
    "price": "2.30",
    "published_at": "2026-10-12T01:09:13.000Z",
    "recorded_at": "2026-10-15T00:40:16.090Z",
    "lead_hours": 18.3,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   },
   {
    "record_id": "n-692b2792287917d5aa14bde5",
    "url": "/authors/steeven-occhipinti/picks/7/#pick-n-692b2792287917d5aa14bde5",
    "author": "Steeven Occhipinti",
    "author_url": "/authors/steeven-occhipinti/",
    "market": "1X2, match result",
    "selection": "Olympique de Marseille",
    "outcome": "Lost",
    "price": "2.24",
    "published_at": null,
    "recorded_at": "2026-10-13T19:03:32.936Z",
    "lead_hours": 47.9,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   },
   {
    "record_id": "n-64a591d9af2e24355f481189",
    "url": "/sources/wincomparator-com/products/l-equipe-wincomparator/picks/18/#pick-n-64a591d9af2e24355f481189",
    "author": "Wincomparator",
    "author_url": "/sources/wincomparator-com/",
    "market": "1X2, match result",
    "selection": "Olympiakos Piraeus",
    "outcome": "Won",
    "price": "3.00",
    "published_at": null,
    "recorded_at": "2026-10-11T10:49:46.219Z",
    "lead_hours": 104.2,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   },
   {
    "record_id": "n-76b60fd241934145bdbec122",
    "url": "/authors/baba/picks/45/#pick-n-76b60fd241934145bdbec122",
    "author": "Baba",
    "author_url": "/authors/baba/",
    "market": "Both teams to score",
    "selection": "yes",
    "outcome": "Lost",
    "price": null,
    "published_at": "2026-10-12T00:45:15.000Z",
    "recorded_at": "2026-10-15T01:09:32.650Z",
    "lead_hours": 17.8,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   },
   {
    "record_id": "n-ebf917f7763d27084b3ba935",
    "url": "/sources/free-super-tips/picks/16/#pick-n-ebf917f7763d27084b3ba935",
    "author": "Free Super Tips",
    "author_url": "/sources/free-super-tips/",
    "market": "Both teams to score",
    "selection": "yes",
    "outcome": "Lost",
    "price": "1.61",
    "published_at": null,
    "recorded_at": "2026-10-13T15:24:44.735Z",
    "lead_hours": 51.6,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   },
   {
    "record_id": "n-3f86039caa3e09123fa7a924",
    "url": "/sources/futbol24-com/picks/5/#pick-n-3f86039caa3e09123fa7a924",
    "author": "Futbol24",
    "author_url": "/sources/futbol24-com/",
    "market": "Both teams to score",
    "selection": "yes",
    "outcome": "Lost",
    "price": "1.62",
    "published_at": "2026-10-12T01:09:13.000Z",
    "recorded_at": "2026-10-15T00:40:16.090Z",
    "lead_hours": 18.3,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   },
   {
    "record_id": "n-b04d106e125249da475a7ffb",
    "url": "/authors/steeven-occhipinti/picks/7/#pick-n-b04d106e125249da475a7ffb",
    "author": "Steeven Occhipinti",
    "author_url": "/authors/steeven-occhipinti/",
    "market": "Both teams to score",
    "selection": "yes",
    "outcome": "Lost",
    "price": "1.51",
    "published_at": null,
    "recorded_at": "2026-10-13T19:03:32.936Z",
    "lead_hours": 47.9,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   },
   {
    "record_id": "n-4d9c192f62250a4a5e450d7a",
    "url": "/sources/bet-experts-nl/picks/9/#pick-n-4d9c192f62250a4a5e450d7a",
    "author": "Bet-Experts.nl",
    "author_url": "/sources/bet-experts-nl/",
    "market": "Correct score",
    "selection": "Olympique de Marseille 1-1 Olympiakos Piraeus",
    "outcome": "Lost",
    "price": null,
    "published_at": null,
    "recorded_at": "2026-10-15T04:09:31.984Z",
    "lead_hours": 14.8,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   },
   {
    "record_id": "n-cf521e64aa9a6375a56d8651",
    "url": "/sources/free-super-tips/picks/15/#pick-n-cf521e64aa9a6375a56d8651",
    "author": "Free Super Tips",
    "author_url": "/sources/free-super-tips/",
    "market": "Correct score",
    "selection": "Olympique de Marseille 1-1 Olympiakos Piraeus",
    "outcome": "Lost",
    "price": "7.00",
    "published_at": null,
    "recorded_at": "2026-10-13T15:24:44.735Z",
    "lead_hours": 51.6,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   },
   {
    "record_id": "n-978d24fcdd5fef55870f7287",
    "url": "/authors/matthew-cooper/picks/2/#pick-n-978d24fcdd5fef55870f7287",
    "author": "Matthew Cooper",
    "author_url": "/authors/matthew-cooper/",
    "market": "Correct score",
    "selection": "Olympique de Marseille 1-2 Olympiakos Piraeus",
    "outcome": "Lost",
    "price": null,
    "published_at": "2026-10-13T14:58:27.000Z",
    "recorded_at": "2026-10-13T17:09:49.316Z",
    "lead_hours": 49.8,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   },
   {
    "record_id": "n-24e003705523f6b7c32fb501",
    "url": "/authors/arvid-snacke/picks/2/#pick-n-24e003705523f6b7c32fb501",
    "author": "Arvid Snacke",
    "author_url": "/authors/arvid-snacke/",
    "market": "Double chance",
    "selection": "Olympique de Marseille or draw",
    "outcome": "Lost",
    "price": null,
    "published_at": "2026-10-15T07:11:16.000Z",
    "recorded_at": "2026-10-15T07:19:35.137Z",
    "lead_hours": 11.7,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   },
   {
    "record_id": "n-1b07ba4a29ab037b23674336",
    "url": "/authors/goksim/picks/4/#pick-n-1b07ba4a29ab037b23674336",
    "author": "Goksim",
    "author_url": "/authors/goksim/",
    "market": "Over/Under 2.5 goals",
    "selection": "under 2.5",
    "outcome": "Won",
    "price": "2.10",
    "published_at": "2026-10-13T05:30:22.000Z",
    "recorded_at": "2026-10-13T05:59:39.653Z",
    "lead_hours": 61.0,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   },
   {
    "record_id": "n-b577ca244a8b85a6dca6d25e",
    "url": "/sources/wincomparator-com/products/l-equipe-wincomparator/picks/18/#pick-n-b577ca244a8b85a6dca6d25e",
    "author": "Wincomparator",
    "author_url": "/sources/wincomparator-com/",
    "market": "Over/Under 2.5 goals",
    "selection": "over 2.5",
    "outcome": "Lost",
    "price": "1.55",
    "published_at": null,
    "recorded_at": "2026-10-11T10:49:46.219Z",
    "lead_hours": 104.2,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   },
   {
    "record_id": "n-c6641c78ccf1ef0cc1eff20c",
    "url": "/authors/goksim/picks/4/#pick-n-c6641c78ccf1ef0cc1eff20c",
    "author": "Goksim",
    "author_url": "/authors/goksim/",
    "market": "Over/Under 3.5 goals",
    "selection": "under 3.5",
    "outcome": "Won",
    "price": "1.44",
    "published_at": "2026-10-13T05:30:22.000Z",
    "recorded_at": "2026-10-13T05:59:39.653Z",
    "lead_hours": 61.0,
    "origin": "Recorded by us before kick-off",
    "outcome_reason": null,
    "before_kickoff": true,
    "attribution": null
   }
  ],
  "by_market": [
   {
    "market": "Both teams to score",
    "predictions": 4,
    "sources": 4,
    "one_source": false,
    "eligible": 4,
    "different_selections": 0,
    "selections": [
     {
      "selection": "yes",
      "predictions": 4,
      "eligible": 4
     }
    ],
    "median_odds": "1.60",
    "odds_from_author": 3,
    "odds_from_snapshot": 1
   },
   {
    "market": "1X2, match result",
    "predictions": 3,
    "sources": 3,
    "one_source": false,
    "eligible": 3,
    "different_selections": 0,
    "selections": [
     {
      "selection": "Olympique de Marseille",
      "predictions": 2,
      "eligible": 2
     },
     {
      "selection": "Olympiakos Piraeus",
      "predictions": 1,
      "eligible": 1
     }
    ],
    "median_odds": "2.30",
    "odds_from_author": 3,
    "odds_from_snapshot": 0
   },
   {
    "market": "Correct score",
    "predictions": 3,
    "sources": 3,
    "one_source": false,
    "eligible": 3,
    "different_selections": 0,
    "selections": [
     {
      "selection": "Olympique de Marseille 1-1 Olympiakos Piraeus",
      "predictions": 2,
      "eligible": 2
     },
     {
      "selection": "Olympique de Marseille 1-2 Olympiakos Piraeus",
      "predictions": 1,
      "eligible": 1
     }
    ],
    "implied_by_score": [
     {
      "selection": "draw",
      "predictions": 2
     },
     {
      "selection": "Olympiakos Piraeus",
      "predictions": 1
     }
    ],
    "median_odds": "7.00",
    "odds_from_author": 1,
    "odds_from_snapshot": 0
   },
   {
    "market": "Over/Under 2.5 goals",
    "predictions": 2,
    "sources": 2,
    "one_source": false,
    "eligible": 2,
    "different_selections": 0,
    "selections": [
     {
      "selection": "over 2.5",
      "predictions": 1,
      "eligible": 1
     },
     {
      "selection": "under 2.5",
      "predictions": 1,
      "eligible": 1
     }
    ],
    "median_odds": "1.83",
    "odds_from_author": 2,
    "odds_from_snapshot": 0
   },
   {
    "market": "Double chance",
    "predictions": 1,
    "sources": 1,
    "one_source": true,
    "eligible": 1,
    "different_selections": 0,
    "selections": [
     {
      "selection": "Olympique de Marseille or draw",
      "predictions": 1,
      "eligible": 1
     }
    ],
    "median_odds": "1.40",
    "odds_from_author": 0,
    "odds_from_snapshot": 1
   },
   {
    "market": "Over/Under 3.5 goals",
    "predictions": 1,
    "sources": 1,
    "one_source": true,
    "eligible": 1,
    "different_selections": 0,
    "selections": [
     {
      "selection": "under 3.5",
      "predictions": 1,
      "eligible": 1
     }
    ],
    "median_odds": "1.44",
    "odds_from_author": 1,
    "odds_from_snapshot": 0
   }
  ],
  "found_after_kickoff": 0,
  "selections_before_kickoff": 14,
  "independent_sources": 9,
  "same_material_repeats": 0,
  "sources_list": [
   {
    "source": "freesupertips.com",
    "materials": 1,
    "authors": 1,
    "selections": 2
   },
   {
    "source": "futbol24.com",
    "materials": 1,
    "authors": 1,
    "selections": 2
   },
   {
    "source": "sportytrader.com",
    "materials": 1,
    "authors": 1,
    "selections": 2
   },
   {
    "source": "svijetkladjenja.com",
    "materials": 1,
    "authors": 1,
    "selections": 2
   },
   {
    "source": "wincomparator.com",
    "materials": 1,
    "authors": 1,
    "selections": 2
   },
   {
    "source": "bet-experts.nl",
    "materials": 1,
    "authors": 1,
    "selections": 1
   },
   {
    "source": "livetipsportal.com",
    "materials": 1,
    "authors": 1,
    "selections": 1
   },
   {
    "source": "speltips.se",
    "materials": 1,
    "authors": 1,
    "selections": 1
   },
   {
    "source": "sportsmole.co.uk",
    "materials": 1,
    "authors": 1,
    "selections": 1
   }
  ],
  "what_happened": {
   "won": 3,
   "lost": 11,
   "void": 0,
   "half_won": 0,
   "half_lost": 0,
   "not_settled": 0
  },
  "scenarios": [
   {
    "author": "Free Super Tips",
    "author_url": "/sources/free-super-tips/",
    "picks": 2,
    "record_ids": [
     "n-ebf917f7763d27084b3ba935",
     "n-cf521e64aa9a6375a56d8651"
    ],
    "markets": [
     "Both teams to score",
     "Correct score"
    ],
    "selections": [
     "yes",
     "Olympique de Marseille 1-1 Olympiakos Piraeus"
    ],
    "prices": [
     "1.61",
     "7.00"
    ],
    "outcomes": [
     "Lost",
     "Lost"
    ],
    "scenario": "Both teams to score: yes · Olympique de Marseille 1-1 Olympiakos Piraeus",
    "result": "any_wrong",
    "recorded_at": "2026-10-13T15:24:44.735Z",
    "lead_hours": 51.6,
    "evidence_urls": [
     "/sources/free-super-tips/picks/16/#pick-n-ebf917f7763d27084b3ba935",
     "/sources/free-super-tips/picks/15/#pick-n-cf521e64aa9a6375a56d8651"
    ]
   },
   {
    "author": "Futbol24",
    "author_url": "/sources/futbol24-com/",
    "picks": 2,
    "record_ids": [
     "n-ecf1261b7bfdd8d6da23098d",
     "n-3f86039caa3e09123fa7a924"
    ],
    "markets": [
     "1X2, match result",
     "Both teams to score"
    ],
    "selections": [
     "Olympique de Marseille",
     "yes"
    ],
    "prices": [
     "2.30",
     "1.62"
    ],
    "outcomes": [
     "Lost",
     "Lost"
    ],
    "scenario": "Olympique de Marseille · Both teams to score: yes",
    "result": "any_wrong",
    "recorded_at": "2026-10-15T00:40:16.090Z",
    "lead_hours": 18.3,
    "evidence_urls": [
     "/sources/futbol24-com/picks/5/#pick-n-ecf1261b7bfdd8d6da23098d",
     "/sources/futbol24-com/picks/5/#pick-n-3f86039caa3e09123fa7a924"
    ]
   },
   {
    "author": "Goksim",
    "author_url": "/authors/goksim/",
    "picks": 2,
    "record_ids": [
     "n-1b07ba4a29ab037b23674336",
     "n-c6641c78ccf1ef0cc1eff20c"
    ],
    "markets": [
     "Over/Under 2.5 goals",
     "Over/Under 3.5 goals"
    ],
    "selections": [
     "under 2.5",
     "under 3.5"
    ],
    "prices": [
     "2.10",
     "1.44"
    ],
    "outcomes": [
     "Won",
     "Won"
    ],
    "scenario": "under 2.5 goals · under 3.5 goals",
    "result": "all_right",
    "recorded_at": "2026-10-13T05:59:39.653Z",
    "lead_hours": 61.0,
    "evidence_urls": [
     "/authors/goksim/picks/4/#pick-n-1b07ba4a29ab037b23674336",
     "/authors/goksim/picks/4/#pick-n-c6641c78ccf1ef0cc1eff20c"
    ]
   },
   {
    "author": "Steeven Occhipinti",
    "author_url": "/authors/steeven-occhipinti/",
    "picks": 2,
    "record_ids": [
     "n-692b2792287917d5aa14bde5",
     "n-b04d106e125249da475a7ffb"
    ],
    "markets": [
     "1X2, match result",
     "Both teams to score"
    ],
    "selections": [
     "Olympique de Marseille",
     "yes"
    ],
    "prices": [
     "2.24",
     "1.51"
    ],
    "outcomes": [
     "Lost",
     "Lost"
    ],
    "scenario": "Olympique de Marseille · Both teams to score: yes",
    "result": "any_wrong",
    "recorded_at": "2026-10-13T19:03:32.936Z",
    "lead_hours": 47.9,
    "evidence_urls": [
     "/authors/steeven-occhipinti/picks/7/#pick-n-692b2792287917d5aa14bde5",
     "/authors/steeven-occhipinti/picks/7/#pick-n-b04d106e125249da475a7ffb"
    ]
   },
   {
    "author": "Wincomparator",
    "author_url": "/sources/wincomparator-com/",
    "picks": 2,
    "record_ids": [
     "n-64a591d9af2e24355f481189",
     "n-b577ca244a8b85a6dca6d25e"
    ],
    "markets": [
     "1X2, match result",
     "Over/Under 2.5 goals"
    ],
    "selections": [
     "Olympiakos Piraeus",
     "over 2.5"
    ],
    "prices": [
     "3.00",
     "1.55"
    ],
    "outcomes": [
     "Won",
     "Lost"
    ],
    "scenario": "Olympiakos Piraeus · over 2.5 goals",
    "result": "any_wrong",
    "recorded_at": "2026-10-11T10:49:46.219Z",
    "lead_hours": 104.2,
    "evidence_urls": [
     "/sources/wincomparator-com/products/l-equipe-wincomparator/picks/18/#pick-n-64a591d9af2e24355f481189",
     "/sources/wincomparator-com/products/l-equipe-wincomparator/picks/18/#pick-n-b577ca244a8b85a6dca6d25e"
    ]
   }
  ],
  "lead_time": {
   "contract_version": 1,
   "threshold_hours": 2.0,
   "picks": 14,
   "before_kickoff": 14,
   "after_kickoff": 0,
   "at_least_2h": 14,
   "share_2h_plus": 100.0,
   "median_hours": 48.8,
   "min_hours": 11.7,
   "max_hours": 104.2,
   "words": "Hours between the moment we recorded the pick and kick-off; the share counts picks recorded at least two hours before kick-off."
  }
 },
 "title_tag": "Olympique de Marseille vs Olympiakos Piraeus: Results — 15 Oct 2026",
 "snapshots": {
  "counting_rule": "1",
  "early": {
   "id": "sr-e3d468f44cecc1cb68671ee5",
   "type_code": "early",
   "moment_at": "2026-10-15T01:58:03.774Z",
   "freeze_at": "2026-10-15T01:58:03.896Z",
   "approach": "at_the_time",
   "methodology_version": null,
   "counting_rule": "1",
   "figures": {
    "chain": {
     "admissible": 9,
     "publications": 9,
     "comparable": 9,
     "unique": 9,
     "contributions": 7
    },
    "group_list": [
     {
      "phrase": "Both teams to score — Most common recorded selection: yes (3 of 3 eligible)",
      "source_group": "both_teams_score|*|match|*|*#explicit",
      "leader": "yes",
      "n": 3,
      "market_label": "Both teams to score",
      "row_list": [
       {
        "figure": 3,
        "in_words": "yes",
        "choice": "yes"
       }
      ]
     },
     {
      "phrase": "1X2, match result — Most common recorded selection: Olympique de Marseille (2 of 2 eligible)",
      "source_group": "1x2|*|match|*|*#explicit",
      "leader": "1",
      "n": 2,
      "market_label": "1X2, match result",
      "row_list": [
       {
        "figure": 2,
        "in_words": "Olympique de Marseille",
        "choice": "1"
       }
      ]
     },
     {
      "phrase": "Double chance — Most common recorded selection: draw or Olympiakos Piraeus (1 of 1 eligible)",
      "source_group": "double_chance|*|match|*|*#explicit",
      "leader": "X2",
      "n": 1,
      "market_label": "Double chance",
      "row_list": [
       {
        "figure": 1,
        "in_words": "draw or Olympiakos Piraeus",
        "choice": "X2"
       }
      ]
     },
     {
      "phrase": "European handicap 1 — Most common recorded selection: draw (handicap) (1 of 1 eligible)",
      "source_group": "handicap_european|1|match|*|*#explicit",
      "leader": "X",
      "n": 1,
      "market_label": "European handicap 1",
      "row_list": [
       {
        "figure": 1,
        "in_words": "draw (handicap)",
        "choice": "X"
       }
      ]
     }
    ],
    "counting_rule": "1",
    "different_products": 0,
    "differing_choices": 1,
    "not_counted": 2
   },
   "composition": [
    "n-0bb17a4aa06e8d3314079f66",
    "n-3f86039caa3e09123fa7a924",
    "n-76b60fd241934145bdbec122",
    "n-7a5e4ccdeae6c970031115ff",
    "n-8e8caffc674fdb6da8a6ddf3",
    "n-91e656c378644af9fbef2ea6",
    "n-a57085845bbccd94f6dcd514",
    "n-bb8487951615f08b173096f3",
    "n-ecf1261b7bfdd8d6da23098d"
   ],
   "hash": "dcf0c05c3f1a27761947979c09c5d0908d129a2b9b5e2eb3ff590910ae631b39"
  },
  "closing_line": {
   "id": "sr-87c6f1a9457801b19130f848",
   "type_code": "closing_price",
   "moment_at": "2026-10-15T19:00:00.000Z",
   "freeze_at": "2026-10-15T19:14:38.635Z",
   "approach": "by_capture_time",
   "methodology_version": null,
   "counting_rule": "1",
   "figures": {
    "chain": {
     "admissible": 11,
     "publications": 11,
     "comparable": 11,
     "unique": 11,
     "contributions": 7
    },
    "group_list": [
     {
      "phrase": "Both teams to score — Most common recorded selection: yes (4 of 4 eligible)",
      "source_group": "both_teams_score|*|match|*|*#explicit",
      "leader": "yes",
      "n": 4,
      "market_label": "Both teams to score",
      "row_list": [
       {
        "figure": 4,
        "in_words": "yes",
        "choice": "yes"
       }
      ]
     },
     {
      "phrase": "1X2, match result — Most common recorded selection: Olympique de Marseille (1 of 1 eligible)",
      "source_group": "1x2|*|match|*|*#explicit",
      "leader": "1",
      "n": 1,
      "market_label": "1X2, match result",
      "row_list": [
       {
        "figure": 1,
        "in_words": "Olympique de Marseille",
        "choice": "1"
       }
      ]
     },
     {
      "phrase": "European handicap 1 — Most common recorded selection: draw (handicap) (1 of 1 eligible)",
      "source_group": "handicap_european|1|match|*|*#explicit",
      "leader": "X",
      "n": 1,
      "market_label": "European handicap 1",
      "row_list": [
       {
        "figure": 1,
        "in_words": "draw (handicap)",
        "choice": "X"
       }
      ]
     },
     {
      "phrase": "Correct score — Most common recorded selection: Olympique de Marseille 1-1 Olympiakos Piraeus (1 of 1 eligible)",
      "source_group": "correct_score_market|*|match|*|*#explicit",
      "leader": "1-1",
      "n": 1,
      "market_label": "Correct score",
      "row_list": [
       {
        "figure": 1,
        "in_words": "Olympique de Marseille 1-1 Olympiakos Piraeus",
        "choice": "1-1"
       }
      ]
     }
    ],
    "counting_rule": "1",
    "different_products": 0,
    "differing_choices": 1,
    "not_counted": 4
   },
   "composition": [
    "n-04b7ca1ac52a2a1a89d7fd9f",
    "n-18c2c9a9be6ea5515957eacc",
    "n-3f86039caa3e09123fa7a924",
    "n-4a229be64bd3ca32bee4b9ed",
    "n-4d9c192f62250a4a5e450d7a",
    "n-76b60fd241934145bdbec122",
    "n-79d41c080b90fbde88a2d429",
    "n-bd5ead2c54b70d6101c71111",
    "n-d9b4889dda08331561cda44d",
    "n-dae3b4f1d376e7f976689fe7",
    "n-ecf1261b7bfdd8d6da23098d"
   ],
   "hash": "f622568fa0a3a395ae999a4d8832b1b826ca90fec5b146ccb2fbc692f1ee7a6a"
  },
  "author_rows": [
   {
    "id": "sr-e6ceee0c538509bc6749ac2c",
    "type_code": "author_before_match",
    "moment_at": "2026-10-15T19:00:00.000Z",
    "freeze_at": "2026-10-15T19:14:38.642Z",
    "approach": "by_capture_time",
    "methodology_version": "2.2",
    "counting_rule": "1",
    "figures": {
     "matches": 5,
     "method_version": "2.2",
     "net_points_hundredths": -13200,
     "period_from": "2026-10-11",
     "period_to": "2026-10-15",
     "price_rule": "Our market snapshot",
     "return_percent": "-26.40",
     "settled_picks": 5,
     "staked_hundredths": 50000,
     "void": 0
    },
    "composition": [
     "c|s-890891f7d4b9|r-26040de607fd6678|v-b8cd9af9301fd723",
     "c|s-a64933a025cd|r-9c3eb5c87a9c856d|v-a2da9b7c9e3dbb0b",
     "c|s-c1a676aa20c3|r-ce233ba226e67a9e|v-4f1cc47d62800bfa",
     "c|s-c6ff28609cbc|r-71691b0377ca68f9|v-15659294580702eb",
     "c|s-fc9bf1d276b1|r-d182113cbda96450|v-fd01b08948519a52"
    ],
    "hash": "806cf95282a3bfbd9700a0f7a38ae3500dd0c9c4f67ffe11ebe719c2119185b7",
    "entity_ref": "e-21289e22c7c060b6172848b9",
    "name_shown": "Bet-Experts.nl",
    "url": "/sources/bet-experts-nl/"
   },
   {
    "id": "sr-26823aa79ef23aaf16634db7",
    "type_code": "author_before_match",
    "moment_at": "2026-10-15T19:00:00.000Z",
    "freeze_at": "2026-10-15T19:14:38.643Z",
    "approach": "by_capture_time",
    "methodology_version": "2.2",
    "counting_rule": "1",
    "figures": {
     "matches": 13,
     "method_version": "2.2",
     "net_points_hundredths": -23235,
     "period_from": "2026-10-11",
     "period_to": "2026-10-15",
     "price_rule": "Our market snapshot",
     "return_percent": "-10.56",
     "settled_picks": 22,
     "staked_hundredths": 220000,
     "void": 0
    },
    "composition": [
     "c|s-0271fdbeeb0d|r-724a72289e7af8c9|v-2dc7ec4adce4b1f5",
     "c|s-06bacf89a285|r-3d3092d76bc58e28|v-a820b418aa57a58b",
     "c|s-1e00168386ce|r-0a94b705a7e95e27|v-58ed2a38a5ee89d6",
     "c|s-1e00168386ce|r-1f9d8311a3633e5a|v-6da2ccd71416cfd3",
     "c|s-1e00168386ce|r-99fb5304d6f7c845|v-687704158f4b5a7e",
     "c|s-3bc84f9786dd|r-3addadac09536c56|v-00d97183a862b422",
     "c|s-3bc84f9786dd|r-d2cc52b9099dd29b|v-40402ef73ef2b833",
     "c|s-46d4d944cc24|r-beb844aa278a41ef|v-053426295ad34d97",
     "c|s-59dcc3b337b9|r-aacf2d3a38cd0694|v-3b19696af0c25a18",
     "c|s-59dcc3b337b9|r-eca45c0c064adfa5|v-a66071af1f7def1b",
     "c|s-7f51e7225c5b|r-cb68a7c9e3c03126|v-e2c50b865e159733",
     "c|s-7f51e7225c5b|r-cf00101707003355|v-5f504b3731bd1558",
     "c|s-83453d98f561|r-1ba2e461bfac9824|v-fb07a7983167b3a9",
     "c|s-83453d98f561|r-60b1d08e7cfe9731|v-3cc8f075a56a07cf",
     "c|s-890891f7d4b9|r-26040de607fd6678|v-b8cd9af9301fd723",
     "c|s-890891f7d4b9|r-65bff3fdffa5e1ce|v-7c4355e185f7a572",
     "c|s-890891f7d4b9|r-e00324403db5efeb|v-5f2f98ece914f53a",
     "c|s-dfd94b3dad49|r-a926555384a08113|v-5f9c31499882ec4c",
     "c|s-e65525f23524|r-ab4e4aab7bc0184f|v-017d6e69868cb8a1",
     "c|s-f932f096e0dd|r-0e44a3d315db27f2|v-42e39b5304a16aeb",
     "c|s-fd95b00fe280|r-0d43ea9ea43a8efa|v-e03b5eec1e3fef14",
     "c|s-fd95b00fe280|r-f2536a7caa21bd5d|v-1077860f1a777330"
    ],
    "hash": "972d998635dd892ed27a6eb6f903d11ca88311393763225aca062b76f8add74d",
    "entity_ref": "e-5aff6034c3930ab6c56f10de",
    "name_shown": "Javier Ortega",
    "url": "/authors/javier-ortega/"
   },
   {
    "id": "sr-1ad19d49f2e9ed1fd97d6c13",
    "type_code": "author_before_match",
    "moment_at": "2026-10-15T19:00:00.000Z",
    "freeze_at": "2026-10-15T19:14:38.643Z",
    "approach": "by_capture_time",
    "methodology_version": "2.2",
    "counting_rule": "1",
    "figures": {
     "matches": 3,
     "method_version": "2.2",
     "net_points_hundredths": 3980,
     "period_from": "2026-10-14",
     "period_to": "2026-10-15",
     "price_rule": "Our market snapshot",
     "return_percent": "6.63",
     "settled_picks": 6,
     "staked_hundredths": 60000,
     "void": 0
    },
    "composition": [
     "c|s-1e00168386ce|r-1f9d8311a3633e5a|v-6da2ccd71416cfd3",
     "c|s-1e00168386ce|r-99fb5304d6f7c845|v-687704158f4b5a7e",
     "c|s-c2448b2122f1|r-2e2b3a874c1c414f|v-08ccaa8dadeabfe1",
     "c|s-c2448b2122f1|r-b8bb64806ea43c86|v-5be7ed690339202a",
     "c|s-fd95b00fe280|r-0d43ea9ea43a8efa|v-e03b5eec1e3fef14",
     "c|s-fd95b00fe280|r-f2536a7caa21bd5d|v-1077860f1a777330"
    ],
    "hash": "7b280f2884188010330f4a3a9d7cb6cc80a74584d8fb634f6119a0c052a9ee8a",
    "entity_ref": "e-c57c0f57ddc963530093db98",
    "name_shown": "Futbol24",
    "url": "/sources/futbol24-com/"
   },
   {
    "id": "sr-af8114cac687188ed11e746f",
    "type_code": "author_before_match",
    "moment_at": "2026-10-15T19:00:00.000Z",
    "freeze_at": "2026-10-15T19:14:38.643Z",
    "approach": "by_capture_time",
    "methodology_version": "2.2",
    "counting_rule": "1",
    "figures": {
     "matches": 36,
     "method_version": "2.2",
     "net_points_hundredths": -199123,
     "period_from": "2026-10-11",
     "period_to": "2026-10-15",
     "price_rule": "Our market snapshot",
     "return_percent": "-25.53",
     "settled_picks": 78,
     "staked_hundredths": 780000,
     "void": 0
    },
    "composition": [
     "c|s-06bacf89a285|r-3d3092d76bc58e28|v-a820b418aa57a58b",
     "c|s-08913b098410|r-361f0882780fcab5|v-61ec1644acc313d2",
     "c|s-08913b098410|r-5544ce7bea86de9c|v-6c60324b74e870b4",
     "c|s-08913b098410|r-6bb67371786c99e3|v-011fbd7b43296457",
     "c|s-08913b098410|r-85d778ad9a9f3ac6|v-c7005eaa36f755a0",
     "c|s-08913b098410|r-c8018dc9ade9c684|v-68492daba26cbecf",
     "c|s-1e00168386ce|r-1f9d8311a3633e5a|v-6da2ccd71416cfd3",
     "c|s-3bc84f9786dd|r-3483221117b037af|v-0cad466eb40037c4",
     "c|s-3bc84f9786dd|r-3483221117b037af|v-8c4ec01b0a132693",
     "c|s-3bc84f9786dd|r-5d7b97a7f446dc19|v-c22fff0114bd7b5b",
     "c|s-40031903677a|r-308e227cfa2bbee7|v-81fff31766cd9600",
     "c|s-40031903677a|r-5488484b1d2c0560|v-0557dca48853fa05",
     "c|s-46d4d944cc24|r-50e6c381f2ca682e|v-e6f20fd9013340d2",
     "c|s-46d4d944cc24|r-9d5b7f7051ca8530|v-efcfcb24d12fc544",
     "c|s-46d4d944cc24|r-beb844aa278a41ef|v-053426295ad34d97",
     "c|s-495e121fd6c8|r-33fd10f1209cec0f|v-ddc844955f7fbb0f",
     "c|s-495e121fd6c8|r-3f15c4c096e6f6dd|v-1d265a5196f75174",
     "c|s-495e121fd6c8|r-c14ebf497d1c9497|v-8a3dc9c13a119f26",
     "c|s-4c70979c538e|r-7b5227816d7d942e|v-826bc32c3869c1b6",
     "c|s-4c70979c538e|r-b3a846b311337cec|v-0c77456250309e00",
     "c|s-51292fa0ec5c|r-c383f969be96ed37|v-030f1c1674288cdf",
     "c|s-59dcc3b337b9|r-2592fa04b2d5c58f|v-c91ddcf4fa080795",
     "c|s-59dcc3b337b9|r-eca45c0c064adfa5|v-a66071af1f7def1b",
     "c|s-63a23007668d|r-4436f4564b718a45|v-4b5c4097ab69fd44",
     "c|s-63a23007668d|r-5db62ddebb772a14|v-c4fd5980f8ed8ab1",
     "c|s-63a23007668d|r-dbb6589532785173|v-b14a44ffae4e59ef",
     "c|s-63a23007668d|r-f43cb275c9ddf746|v-8ae5a376661d8e24",
     "c|s-7674778c71d5|r-a2467934ba705f6e|v-4eb0051dc65def93",
     "c|s-7674778c71d5|r-b556b6f342659c1a|v-f0b9ba44652b59ce",
     "c|s-7b7b0db78d19|r-b80241fb088a7b23|v-6baf406edb18a30a",
     "c|s-7b7b0db78d19|r-bf36574871df1b5b|v-a10fe945a188b0fc",
     "c|s-7cede4ef3316|r-0955c4abd5b32a13|v-fe4e1a79309778b3",
     "c|s-7cede4ef3316|r-61b2ba23cd8d4561|v-946b7523d9da1355",
     "c|s-7cede4ef3316|r-9b990fe49e146922|v-904677b37b47938e",
     "c|s-7cede4ef3316|r-bfe8cee30a20eec2|v-543edc4e97e3299c",
     "c|s-7cede4ef3316|r-f134b89c02cbf083|v-0652e78be3e8fb59",
     "c|s-7cfbaca8558a|r-9ae5e882e04c19d9|v-aa479ca8138e0c8d",
     "c|s-7e7815c670e4|r-5a1836ff60715a87|v-dd4f8732cf44602c",
     "c|s-7e7815c670e4|r-e81ae5d7b37d319d|v-1c794374be39d6f6",
     "c|s-7e7815c670e4|r-ea2e10a1fa61a221|v-211b0459e894cad8",
     "c|s-7f51e7225c5b|r-82075465a4a75ed3|v-a7a2be7bdd5b8541",
     "c|s-7f51e7225c5b|r-cb68a7c9e3c03126|v-e2c50b865e159733",
     "c|s-83453d98f561|r-1ba2e461bfac9824|v-fb07a7983167b3a9",
     "c|s-83453d98f561|r-60b1d08e7cfe9731|v-3cc8f075a56a07cf",
     "c|s-83453d98f561|r-ec9f8c732310bf16|v-b339efd9cdcb1193",
     "c|s-83453d98f561|r-f6f36352b7ea1cda|v-8db0f04502ce6033",
     "c|s-8832f9431e49|r-431384a78bcd18db|v-935cabeb62daa249",
     "c|s-8832f9431e49|r-75c38f12bc67a179|v-45064ba162cf88c1",
     "c|s-890891f7d4b9|r-26040de607fd6678|v-b8cd9af9301fd723",
     "c|s-890891f7d4b9|r-65bff3fdffa5e1ce|v-7c4355e185f7a572",
     "c|s-890891f7d4b9|r-e00324403db5efeb|v-5f2f98ece914f53a",
     "c|s-99b355985f5d|r-fe6ed4539a1c1b27|v-daa417a24c3899fa",
     "c|s-a52bcdbd2d51|r-300de3964d1696ec|v-64d66915bb9ae036",
     "c|s-afa635035945|r-c4638774448eba9f|v-1b95e705c0a9ac17",
     "c|s-c0602045c235|r-a687e3b2d34182db|v-e1fcababe72b01b2",
     "c|s-c1b4e4da7027|r-8e163da60747c10d|v-46b6159899659f0f",
     "c|s-c1b4e4da7027|r-929ea929ebaf678a|v-0b3ec45ab97bc8e9",
     "c|s-c1b4e4da7027|r-929ea929ebaf678a|v-0ddd3064ae564e65",
     "c|s-c1b4e4da7027|r-e4926a526bf1fecc|v-2906da1d9c095afb",
     "c|s-ce3580243a73|r-ee416ee8fc2a8f4a|v-00824c771cfc5fdb",
     "c|s-cf49d45bc76f|r-bfc1addf5289f708|v-18272a27c47d3060",
     "c|s-cf49d45bc76f|r-ec12fdbbef9021dd|v-70133a6c9e3ec5d5",
     "c|s-d50d34139ad5|r-065f039a20126e03|v-edd7ca1c11daef1a",
     "c|s-d50d34139ad5|r-37e8ce67cae38740|v-a903ae43ad7e3f99",
     "c|s-d50d34139ad5|r-542e6707c40ff7bb|v-a446802a4ef3aee1",
     "c|s-d50d34139ad5|r-d76864ad850bc901|v-631682dfd47c3b0d",
     "c|s-dfd94b3dad49|r-a926555384a08113|v-5f9c31499882ec4c",
     "c|s-e3eba42401d5|r-5eda45511baa686e|v-5e9968906c0667d1",
     "c|s-e98cf71e0ed4|r-424377d4f5b62b33|v-7a2958b13ea1b4e9",
     "c|s-e98cf71e0ed4|r-7e1f880f2892c799|v-45e142694024232c",
     "c|s-f1d27d00d25a|r-a19091f46e086c38|v-f8266456a0bd9a17",
     "c|s-f1d27d00d25a|r-cca9dda7d346c4b2|v-69064ad9a50b36c7",
     "c|s-f2a9273ae62b|r-905cdf0e7292fb06|v-9b209bd382ee570c",
     "c|s-f793845eecea|r-9034d876aebe914e|v-b5deba495c01d657",
     "c|s-f793845eecea|r-b6ef4d504c311670|v-27dbd23dd143e35c",
     "c|s-f932f096e0dd|r-0e44a3d315db27f2|v-42e39b5304a16aeb",
     "c|s-f932f096e0dd|r-f50b3a7fab5aa818|v-e7dbd6947ee4eb1b",
     "c|s-fd95b00fe280|r-0d43ea9ea43a8efa|v-e03b5eec1e3fef14"
    ],
    "hash": "dbf304c2e5660d2f0ad2256792b18224f4ac691443aca6d7c004594f480a02a8",
    "entity_ref": "e-d18c9ab7f542a7603c1d6274",
    "name_shown": "Baba",
    "url": "/authors/baba/"
   }
  ],
  "late_additions": null,
  "chips": {
   "id": "sr-de90767cd35c94d5d49156f5",
   "type_code": "chips",
   "moment_at": "2026-10-15T19:00:00.000Z",
   "freeze_at": "2026-10-15T19:14:38.642Z",
   "approach": "by_capture_time",
   "methodology_version": null,
   "counting_rule": "1",
   "figures": {
    "chips": {
     "n-04b7ca1ac52a2a1a89d7fd9f": [],
     "n-18c2c9a9be6ea5515957eacc": [],
     "n-3f86039caa3e09123fa7a924": [],
     "n-4a229be64bd3ca32bee4b9ed": [],
     "n-4d9c192f62250a4a5e450d7a": [],
     "n-76b60fd241934145bdbec122": [],
     "n-79d41c080b90fbde88a2d429": [],
     "n-bd5ead2c54b70d6101c71111": [],
     "n-d9b4889dda08331561cda44d": [],
     "n-dae3b4f1d376e7f976689fe7": [],
     "n-ecf1261b7bfdd8d6da23098d": []
    },
    "in_catalog": "1"
   },
   "composition": [
    "n-04b7ca1ac52a2a1a89d7fd9f",
    "n-18c2c9a9be6ea5515957eacc",
    "n-3f86039caa3e09123fa7a924",
    "n-4a229be64bd3ca32bee4b9ed",
    "n-4d9c192f62250a4a5e450d7a",
    "n-76b60fd241934145bdbec122",
    "n-79d41c080b90fbde88a2d429",
    "n-bd5ead2c54b70d6101c71111",
    "n-d9b4889dda08331561cda44d",
    "n-dae3b4f1d376e7f976689fe7",
    "n-ecf1261b7bfdd8d6da23098d"
   ],
   "hash": "d7afc0a3985a868c90e833c03a4a14f5854c675f46cfcee34fb2f1b5f2326fe1"
  }
 },
 "match_card": {
  "revision": "1",
  "gates": "B",
  "open_to_search": true,
  "inputs": {
   "prediction_count": 4,
   "publisher_count": 4,
   "contract": "both_teams_score|*|match|*|*#explicit",
   "forecaster_count": 9,
   "publishers_all": 9,
   "topic_count": 2,
   "checked_count": false,
   "competition_authors": [
    {
     "settled_count": 111
    },
    {
     "settled_count": 61
    },
    {
     "settled_count": 59
    },
    {
     "settled_count": 26
    },
    {
     "settled_count": 13
    },
    {
     "settled_count": 11
    },
    {
     "settled_count": 11
    },
    {
     "settled_count": 11
    },
    {
     "settled_count": 10
    },
    {
     "settled_count": 9
    },
    {
     "settled_count": 9
    },
    {
     "settled_count": 8
    },
    {
     "settled_count": 8
    },
    {
     "settled_count": 8
    },
    {
     "settled_count": 8
    },
    {
     "settled_count": 7
    },
    {
     "settled_count": 7
    },
    {
     "settled_count": 6
    },
    {
     "settled_count": 6
    },
    {
     "settled_count": 5
    },
    {
     "settled_count": 5
    },
    {
     "settled_count": 5
    },
    {
     "settled_count": 5
    },
    {
     "settled_count": 4
    },
    {
     "settled_count": 4
    },
    {
     "settled_count": 4
    },
    {
     "settled_count": 4
    },
    {
     "settled_count": 4
    },
    {
     "settled_count": 4
    },
    {
     "settled_count": 4
    },
    {
     "settled_count": 4
    },
    {
     "settled_count": 4
    },
    {
     "settled_count": 3
    },
    {
     "settled_count": 3
    },
    {
     "settled_count": 3
    },
    {
     "settled_count": 3
    },
    {
     "settled_count": 2
    },
    {
     "settled_count": 2
    },
    {
     "settled_count": 2
    },
    {
     "settled_count": 1
    },
    {
     "settled_count": 1
    },
    {
     "settled_count": 1
    },
    {
     "settled_count": 1
    }
   ],
   "started": true,
   "facts_only": false,
   "counted_predictions": 14,
   "counted_sources": 9
  },
  "gates_words": "Open to search: 14 counted predictions from 9 different sources",
  "created_from": "prediction_page",
  "prediction_count": 3,
  "publisher_count": 9,
  "forecaster_count": 2,
  "newcomer_count": 11,
  "competition_authors": [
   {
    "name_shown": "Baba",
    "url": "/authors/baba/",
    "source_group": "tipsters",
    "settled_count": 61,
    "match_count": 33,
    "portion": "live",
    "portion_words": "Recorded before kick-off · return at our recorded market price",
    "return_percent": "4.7",
    "too_few": false,
    "header_titles": [
     {
      "title_id": "zk-5ed8b1279a481fcc4214",
      "code_name": "P-09",
      "title_tier": "dated_record",
      "badge_label": "2. Bundesliga · 5/8 · 26 Oct",
      "body": "2. Bundesliga, week of 26 Oct 2026: 5/8 result calls right, first of 6 tipsters and sources with 3+ calls",
      "provenance": "live",
      "anchor_id": "title-5ed8b1279a48",
      "url": null,
      "tier": null,
      "event_at": "2026-11-01"
     },
     {
      "title_id": "zk-37e18fe87e18079a2945",
      "code_name": "C-02",
      "title_tier": "dated_record",
      "badge_label": "Only right of 7 · 31 Oct",
      "body": "Only one right of 7 tipsters and sources · Draw · Kocaelispor v Rizespor · 31 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-37e18fe87e18",
      "url": null,
      "tier": null,
      "event_at": "2026-10-31"
     }
    ]
   },
   {
    "name_shown": "Infobetting",
    "url": "/sources/infobetting-com/",
    "source_group": "websites",
    "settled_count": 53,
    "match_count": 135,
    "portion": "archived",
    "portion_words": "Archived before kick-off · reconstructed at the last pre-match archive price",
    "return_percent": "-26.8",
    "too_few": false,
    "header_titles": [
     {
      "title_id": "zk-5f259bebd944649c02ef",
      "code_name": "S-01",
      "title_tier": "dated_record",
      "badge_label": "7 right in a row · 1 Nov",
      "body": "7 matches in a row, every pick correct · 31 Oct–1 Nov 2026",
      "provenance": "live",
      "anchor_id": "title-5f259bebd944",
      "url": null,
      "tier": null,
      "event_at": "2026-11-01"
     },
     {
      "title_id": "zk-abb804e6fe445ae3046d",
      "code_name": "E-07",
      "title_tier": "dated_record",
      "badge_label": "Correct at 3.25 · 25 Oct",
      "body": "Draw at 3.25 · Angers v Lorient · 25 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-abb804e6fe44",
      "url": null,
      "tier": null,
      "event_at": "2026-10-25"
     }
    ]
   },
   {
    "name_shown": "Dailysports",
    "url": "/sources/dailysports-net/",
    "source_group": "websites",
    "settled_count": 23,
    "match_count": 40,
    "portion": "live",
    "portion_words": "Recorded before kick-off · return at our recorded market price",
    "return_percent": "-22.7",
    "too_few": false,
    "header_titles": [
     {
      "title_id": "zk-1f2dc73852fb72ab0133",
      "code_name": "P-09",
      "title_tier": "dated_record",
      "badge_label": "Bundesliga · 2/3 · 26 Oct",
      "body": "Bundesliga, week of 26 Oct 2026: 2/3 result calls right, first of 22 tipsters and sources with 3+ calls",
      "provenance": "live",
      "anchor_id": "title-1f2dc73852fb",
      "url": null,
      "tier": null,
      "event_at": "2026-11-01"
     },
     {
      "title_id": "zk-ca7508509979566f1f5d",
      "code_name": "S-01",
      "title_tier": "dated_record",
      "badge_label": "8 right in a row · 12 Oct",
      "body": "8 matches in a row, every pick correct · 11 Oct–12 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-ca7508509979",
      "url": null,
      "tier": null,
      "event_at": "2026-10-12"
     }
    ]
   },
   {
    "name_shown": "James Milton",
    "url": "/authors/james-milton/",
    "source_group": "experts",
    "settled_count": 9,
    "match_count": 15,
    "portion": "archived",
    "portion_words": "Archived before kick-off · reconstructed at the last pre-match archive price",
    "return_percent": null,
    "too_few": true
   },
   {
    "name_shown": "Kelechi Udoka",
    "url": "/authors/kelechi-udoka/",
    "source_group": "experts",
    "settled_count": 9,
    "match_count": 6,
    "portion": "live",
    "portion_words": "Recorded before kick-off · return at our recorded market price",
    "return_percent": null,
    "too_few": true,
    "header_titles": [
     {
      "title_id": "zk-ba521923fc96a7885424",
      "code_name": "CS-10",
      "title_tier": "dated_record",
      "badge_label": "Exact score 0–2 · 31 Oct",
      "body": "Exact score 0–2 · Levante UD v Atlético Madrid · 31 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-ba521923fc96",
      "url": null,
      "tier": null,
      "event_at": "2026-10-31"
     },
     {
      "title_id": "zk-3dc8575a8b807d7234a0",
      "code_name": "E-07",
      "title_tier": "dated_record",
      "badge_label": "Correct at 3.45 · 16 Oct",
      "body": "Draw at 3.45 · Deportivo de A Coruña v Levante UD · 16 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-3dc8575a8b80",
      "url": null,
      "tier": null,
      "event_at": "2026-10-16"
     }
    ]
   },
   {
    "name_shown": "Adam Clancy",
    "url": "/authors/adam-clancy/",
    "source_group": "experts",
    "settled_count": 8,
    "match_count": 5,
    "portion": "live",
    "portion_words": "Recorded before kick-off · return at our recorded market price",
    "return_percent": null,
    "too_few": true,
    "header_titles": [
     {
      "title_id": "zk-00127b096cd80b1c2185",
      "code_name": "CS-10",
      "title_tier": "dated_record",
      "badge_label": "Exact score 3–1 · 6 Nov",
      "body": "Exact score 3–1 · Everton v Coventry City · 6 Nov 2026",
      "provenance": "live",
      "anchor_id": "title-00127b096cd8",
      "url": null,
      "tier": null,
      "event_at": "2026-11-06"
     },
     {
      "title_id": "zk-1d1004a15d4a5a634d37",
      "code_name": "E-07",
      "title_tier": "dated_record",
      "badge_label": "Correct at 4.00 · 5 Nov",
      "body": "Draw at 4.00 · Crystal Palace v TSG Hoffenheim · 5 Nov 2026",
      "provenance": "live",
      "anchor_id": "title-1d1004a15d4a",
      "url": null,
      "tier": null,
      "event_at": "2026-11-05"
     }
    ]
   },
   {
    "name_shown": "Ali Demir",
    "url": "/authors/ali-demir/",
    "source_group": "tipsters",
    "settled_count": 8,
    "match_count": 6,
    "portion": "live",
    "portion_words": "Recorded before kick-off · return at our recorded market price",
    "return_percent": null,
    "too_few": true,
    "header_titles": [
     {
      "title_id": "zk-e8d773eb29699a689dc2",
      "code_name": "C-02",
      "title_tier": "dated_record",
      "badge_label": "Only right of 6 · 25 Oct",
      "body": "Only one right of 6 tipsters and sources · Draw · Santos v Bahia · 25 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-e8d773eb2969",
      "url": null,
      "tier": null,
      "event_at": "2026-10-25"
     },
     {
      "title_id": "zk-b3dc711a627ebea53e70",
      "code_name": "E-07",
      "title_tier": "dated_record",
      "badge_label": "Correct at 4.70 · 24 Oct",
      "body": "Home win at 4.70 · Aston Villa v Manchester City · 24 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-b3dc711a627e",
      "url": null,
      "tier": null,
      "event_at": "2026-10-24"
     }
    ]
   },
   {
    "name_shown": "Free Super Tips",
    "url": "/sources/free-super-tips/",
    "source_group": "websites",
    "settled_count": 8,
    "match_count": 12,
    "portion": "live",
    "portion_words": "Recorded before kick-off · return at our recorded market price",
    "return_percent": null,
    "too_few": true,
    "header_titles": [
     {
      "title_id": "zk-73ce7fd9e5f9fd07b8cb",
      "code_name": "C-02",
      "title_tier": "dated_record",
      "badge_label": "Only right of 8 · 17 Oct",
      "body": "Only one right of 8 tipsters and sources · Away win · Brentford v Liverpool · 17 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-73ce7fd9e5f9",
      "url": null,
      "tier": null,
      "event_at": "2026-10-17"
     },
     {
      "title_id": "zk-40ac82fdc6c742107246",
      "code_name": "CS-10",
      "title_tier": "dated_record",
      "badge_label": "Exact score 3–1 · 6 Nov",
      "body": "Exact score 3–1 · Toulouse v RC Strasbourg · 6 Nov 2026",
      "provenance": "live",
      "anchor_id": "title-40ac82fdc6c7",
      "url": null,
      "tier": null,
      "event_at": "2026-11-06"
     }
    ]
   },
   {
    "name_shown": "Jonas Meyer",
    "url": "/authors/jonas-meyer/",
    "source_group": "tipsters",
    "settled_count": 8,
    "match_count": 11,
    "portion": "live",
    "portion_words": "Recorded before kick-off · return at our recorded market price",
    "return_percent": null,
    "too_few": true,
    "header_titles": [
     {
      "title_id": "zk-225e034bae6cf63b4f0b",
      "code_name": "C-02",
      "title_tier": "dated_record",
      "badge_label": "Only right of 8 · 10 Oct",
      "body": "Only one right of 8 tipsters and sources · Draw · Monaco v Toulouse · 10 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-225e034bae6c",
      "url": null,
      "tier": null,
      "event_at": "2026-10-10"
     },
     {
      "title_id": "zk-567225b1675f40afc96e",
      "code_name": "E-07",
      "title_tier": "dated_record",
      "badge_label": "Correct at 3.75 · 23 Oct",
      "body": "Draw at 3.75 · Deportivo Alavés v Málaga CF · 23 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-567225b1675f",
      "url": null,
      "tier": null,
      "event_at": "2026-10-23"
     }
    ]
   },
   {
    "name_shown": "Matteo Oneto",
    "url": "/authors/matteo-oneto/",
    "source_group": "tipsters",
    "settled_count": 8,
    "match_count": 5,
    "portion": "live",
    "portion_words": "Recorded before kick-off · return at our recorded market price",
    "return_percent": null,
    "too_few": true,
    "header_titles": [
     {
      "title_id": "zk-37081bc598cf69fab184",
      "code_name": "S-01",
      "title_tier": "dated_record",
      "badge_label": "4 right in a row · 28 Oct",
      "body": "4 matches in a row, every pick correct · 25 Oct–28 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-37081bc598cf",
      "url": null,
      "tier": null,
      "event_at": "2026-10-28"
     }
    ]
   },
   {
    "name_shown": "FootballPredictions.net",
    "url": "/sources/footballpredictions-net/",
    "source_group": "websites",
    "settled_count": 6,
    "match_count": 40,
    "portion": "live",
    "portion_words": "Recorded before kick-off · return at our recorded market price",
    "return_percent": null,
    "too_few": true,
    "header_titles": [
     {
      "title_id": "zk-47cc45887781ed2bc810",
      "code_name": "P-09",
      "title_tier": "dated_record",
      "badge_label": "1st of 3 · week of 5 Oct",
      "body": "UEFA Nations League, week of 5 Oct 2026: 4/5 result calls right, first of 3 tipsters and sources with 3+ calls",
      "provenance": "live",
      "anchor_id": "title-47cc45887781",
      "url": null,
      "tier": null,
      "event_at": "2026-10-11"
     },
     {
      "title_id": "zk-3f294e364978e9d313ed",
      "code_name": "S-01",
      "title_tier": "dated_record",
      "badge_label": "5 right in a row · 6 Oct",
      "body": "5 matches in a row, every pick correct · 6 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-3f294e364978",
      "url": null,
      "tier": null,
      "event_at": "2026-10-06"
     }
    ]
   },
   {
    "name_shown": "Jack Ogalbe",
    "url": "/authors/jack-ogalbe/",
    "source_group": "experts",
    "settled_count": 6,
    "match_count": 5,
    "portion": "archived",
    "portion_words": "Archived before kick-off · reconstructed at the last pre-match archive price",
    "return_percent": null,
    "too_few": true
   },
   {
    "name_shown": "Adeyeye Oluwapelumi",
    "url": "/authors/adeyeye-oluwapelumi/",
    "source_group": "experts",
    "settled_count": 5,
    "match_count": 3,
    "portion": "live",
    "portion_words": "Recorded before kick-off · return at our recorded market price",
    "return_percent": null,
    "too_few": true,
    "header_titles": [
     {
      "title_id": "zk-8da5bd8d8162c9e9ea53",
      "code_name": "CS-10",
      "title_tier": "dated_record",
      "badge_label": "Exact score 1–2 · 26 Oct",
      "body": "Exact score 1–2 · Santa Clara v Benfica · 26 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-8da5bd8d8162",
      "url": null,
      "tier": null,
      "event_at": "2026-10-26"
     },
     {
      "title_id": "zk-ec7cb1a48c134e50ee80",
      "code_name": "E-07",
      "title_tier": "dated_record",
      "badge_label": "Correct at 3.40 · 15 Oct",
      "body": "Away win at 3.40 · TSG Hoffenheim v Beşiktaş · 15 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-ec7cb1a48c13",
      "url": null,
      "tier": null,
      "event_at": "2026-10-15"
     }
    ]
   },
   {
    "name_shown": "Baptiste Couturiaux",
    "url": "/authors/baptiste-couturiaux/",
    "source_group": "tipsters",
    "settled_count": 5,
    "match_count": 6,
    "portion": "live",
    "portion_words": "Recorded before kick-off · return at our recorded market price",
    "return_percent": null,
    "too_few": true,
    "header_titles": [
     {
      "title_id": "zk-cb7e0a6cafc6fb522747",
      "code_name": "S-01",
      "title_tier": "dated_record",
      "badge_label": "7 right in a row · 19 Oct",
      "body": "7 matches in a row, every pick correct · 17 Oct–19 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-cb7e0a6cafc6",
      "url": null,
      "tier": null,
      "event_at": "2026-10-19"
     },
     {
      "title_id": "zk-3ff8f6b757bb4a2d9118",
      "code_name": "P-01",
      "title_tier": "dated_record",
      "badge_label": "8/8 · week of 26 Oct",
      "body": "8/8 result calls right · week of 26 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-3ff8f6b757bb",
      "url": null,
      "tier": null,
      "event_at": "2026-11-01"
     }
    ]
   },
   {
    "name_shown": "Calum Burrowes",
    "url": "/authors/calum-burrowes/",
    "source_group": "experts",
    "settled_count": 5,
    "match_count": 3,
    "portion": "live",
    "portion_words": "Recorded before kick-off · return at our recorded market price",
    "return_percent": null,
    "too_few": true,
    "header_titles": [
     {
      "title_id": "zk-4f7c8ae4bd308aeb6586",
      "code_name": "C-02",
      "title_tier": "dated_record",
      "badge_label": "Only right of 9 · 24 Oct",
      "body": "Only one right of 9 tipsters and sources · Draw · Stoke City v Bristol City · 24 Oct 2026",
      "provenance": "live",
      "anchor_id": "title-4f7c8ae4bd30",
      "url": null,
      "tier": null,
      "event_at": "2026-10-24"
     },
     {
      "title_id": "zk-e3cdaf77eb94ba1739fc",
      "code_name": "CS-10",
      "title_tier": "dated_record",
      "badge_label": "Exact score 1–2 · 3 Nov",
      "body": "Exact score 1–2 · Blackburn Rovers v Stoke City · 3 Nov 2026",
      "provenance": "live",
      "anchor_id": "title-e3cdaf77eb94",
      "url": null,
      "tier": null,
      "event_at": "2026-11-03"
     }
    ]
   }
  ],
  "competition_authors_total": 40,
  "competition_authors_10": 3,
  "full": false,
  "facts_only": false,
  "checked_count": null,
  "window": {
   "d_minus_14_at": "2026-10-01T19:00:00.000Z",
   "d_minus_3_at": "2026-10-12T19:00:00.000Z"
  },
  "first_screen": {
   "body": "Before kick-off, 3 tipsters and sources with 10 or more predictions checked against the final score to date had a 90-minute match-result prediction: Olympique de Marseille 2 · Draw 0 · Olympiakos Piraeus 1. Another 3 predicted an exact score (implied: Olympique de Marseille 0 · Draw 2 · Olympiakos Piraeus 1). 3 gave other markets only.",
   "byline": "Split of recorded tipsters and sources.",
   "outcome_split": {
    "1": 2,
    "X": 0,
    "2": 1
   },
   "forecasters_outcome": 3,
   "from_score": {
    "X": 2,
    "2": 1
   },
   "forecasters_from_score": 3,
   "other_markets_only": 3,
   "newcomers": null,
   "market_label": null,
   "market_at": null,
   "predictions_at": "2026-10-15T07:19:35.137Z",
   "comparison": null
  },
  "who_what": {
   "contracts": [
    {
     "contract_code": "both_teams_score|*|match|*|*#explicit",
     "source_group": "explicit",
     "market_label": "Both teams to score",
     "market_key": "both_teams_score",
     "choices": [
      {
       "code_name": "yes",
       "in_words": "yes",
       "tips": [
        {
         "entry_id": "n-76b60fd241934145bdbec122",
         "author_name": "Baba",
         "author_href": "/authors/baba/",
         "source_group": "tipsters",
         "trust_tier": "tracked",
         "market_label": "Both teams to score",
         "market_key": "both_teams_score",
         "choice": "yes",
         "choice_key": "yes",
         "byline": "Recorded by us before kick-off",
         "logged_at": "2026-10-15T01:09:32.650Z",
         "posted_at": "2026-10-12T00:45:15.000Z",
         "author_quoted_price": null,
         "our_snapshot": "1.5882",
         "closing_line": null,
         "outcome_label": "Lost",
         "pre_match": true,
         "outcome_pending_reason": null,
         "proof": "/authors/baba/picks/45/#pick-n-76b60fd241934145bdbec122",
         "original": "https://www.livetipsportal.com/en/sportsbetting-tips/olympique-marseille-vs-olympiakos-piraeus-europa-league-12520296/",
         "contradictory": false,
         "authorship": null,
         "chips": [],
         "tracker": null,
         "tally": {
          "settled_picks": 299,
          "won": 169,
          "void": 0,
          "return_percent": "-9.5",
          "period_from": "2026-10-11",
          "period_to": "2026-11-07",
          "portion": "live",
          "market_label": "Both teams to score"
         },
         "prematch_tally": {
          "settled_picks": 78,
          "return_percent": "-25.53",
          "snapshot_taken_at": "2026-10-15T19:00:00.000Z"
         },
         "source_type": "prediction_sites",
         "entry_record": {
          "scope": "market",
          "competition": null,
          "market_key": "both_teams_score",
          "portion": "live",
          "n": 33,
          "won": 16,
          "lost": 17,
          "void": 0,
          "net_points_hundredths": -65607,
          "return_percent": "-19.9",
          "avg_odds": "1.65",
          "odds_from_author": 13,
          "odds_from_snapshot": 20,
          "league_market_n": 3,
          "market_n": 33,
          "small_sample": false,
          "period_from": "2026-10-11",
          "period_to": "2026-10-15",
          "as_of": "2026-10-15T19:00:00.000Z"
         },
         "repeats": 0,
         "publications": 1
        },
        {
         "entry_id": "n-ebf917f7763d27084b3ba935",
         "author_name": "Free Super Tips",
         "author_href": "/sources/free-super-tips/",
         "source_group": "websites",
         "trust_tier": "tracked",
         "market_label": "Both teams to score",
         "market_key": "both_teams_score",
         "choice": "yes",
         "choice_key": "yes",
         "byline": "Recorded by us before kick-off",
         "logged_at": "2026-10-13T15:24:44.735Z",
         "posted_at": null,
         "author_quoted_price": "1.61",
         "our_snapshot": "1.5714",
         "closing_line": null,
         "outcome_label": "Lost",
         "pre_match": true,
         "outcome_pending_reason": null,
         "proof": "/sources/free-super-tips/picks/16/#pick-n-ebf917f7763d27084b3ba935",
         "original": "https://www.freesupertips.com/predictions/marseille-vs-olympiacos-predictions-betting-tips-match-previews-2/",
         "contradictory": false,
         "authorship": null,
         "chips": [],
         "tracker": null,
         "tally": {
          "settled_picks": 23,
          "won": 11,
          "void": 0,
          "return_percent": "-19.3",
          "period_from": "2026-10-09",
          "period_to": "2026-11-04",
          "portion": "live",
          "market_label": "Both teams to score"
         },
         "prematch_tally": null,
         "source_type": "prediction_sites",
         "entry_record": {
          "scope": "all",
          "competition": null,
          "market_key": null,
          "portion": "live",
          "n": 41,
          "won": 20,
          "lost": 21,
          "void": 0,
          "net_points_hundredths": -18349,
          "return_percent": "-4.5",
          "avg_odds": "2.07",
          "odds_from_author": 29,
          "odds_from_snapshot": 12,
          "league_market_n": 0,
          "market_n": 8,
          "small_sample": true,
          "period_from": "2026-10-03",
          "period_to": "2026-10-15",
          "as_of": "2026-10-15T19:00:00.000Z"
         },
         "repeats": 0,
         "publications": 1
        }
       ],
       "figure": 2
      }
     ],
     "n": 2,
     "publisher_count": 2
    },
    {
     "contract_code": "correct_score_market|*|match|*|*#explicit",
     "source_group": "explicit",
     "market_label": "Correct score",
     "market_key": "correct_score_market",
     "choices": [
      {
       "code_name": "1-1",
       "in_words": "Olympique de Marseille 1-1 Olympiakos Piraeus",
       "tips": [
        {
         "entry_id": "n-cf521e64aa9a6375a56d8651",
         "author_name": "Free Super Tips",
         "author_href": "/sources/free-super-tips/",
         "source_group": "websites",
         "trust_tier": "tracked",
         "market_label": "Correct score",
         "market_key": "correct_score_market",
         "choice": "Olympique de Marseille 1-1 Olympiakos Piraeus",
         "choice_key": "1-1",
         "byline": "Recorded by us before kick-off",
         "logged_at": "2026-10-13T15:24:44.735Z",
         "posted_at": null,
         "author_quoted_price": "7.00",
         "our_snapshot": null,
         "closing_line": null,
         "outcome_label": "Lost",
         "pre_match": true,
         "outcome_pending_reason": null,
         "proof": "/sources/free-super-tips/picks/15/#pick-n-cf521e64aa9a6375a56d8651",
         "original": "https://www.freesupertips.com/predictions/marseille-vs-olympiacos-predictions-betting-tips-match-previews-2/",
         "contradictory": false,
         "authorship": null,
         "chips": [],
         "tracker": null,
         "tally": {
          "settled_picks": 40,
          "won": 4,
          "void": 0,
          "return_percent": "0.4",
          "period_from": "2026-10-24",
          "period_to": "2026-11-07",
          "portion": "live",
          "market_label": "Correct score"
         },
         "prematch_tally": null,
         "source_type": "prediction_sites",
         "entry_record": {
          "scope": "all",
          "competition": null,
          "market_key": null,
          "portion": "live",
          "n": 41,
          "won": 20,
          "lost": 21,
          "void": 0,
          "net_points_hundredths": -18349,
          "return_percent": "-4.5",
          "avg_odds": "2.07",
          "odds_from_author": 29,
          "odds_from_snapshot": 12,
          "league_market_n": 0,
          "market_n": 0,
          "small_sample": true,
          "period_from": "2026-10-03",
          "period_to": "2026-10-15",
          "as_of": "2026-10-15T19:00:00.000Z"
         },
         "repeats": 0,
         "publications": 1
        }
       ],
       "figure": 1
      }
     ],
     "n": 1,
     "publisher_count": 1
    }
   ],
   "newcomers": [
    {
     "entry_id": "n-ecf1261b7bfdd8d6da23098d",
     "author_name": "Futbol24",
     "author_href": "/sources/futbol24-com/",
     "source_group": "websites",
     "trust_tier": "probation",
     "market_label": "1X2, match result",
     "market_key": "1x2",
     "choice": "Olympique de Marseille",
     "choice_key": "1",
     "byline": "Recorded by us before kick-off",
     "logged_at": "2026-10-15T00:40:16.090Z",
     "posted_at": "2026-10-12T01:09:13.000Z",
     "author_quoted_price": "2.30",
     "our_snapshot": "2.3000",
     "closing_line": null,
     "outcome_label": "Lost",
     "pre_match": true,
     "proof": "/sources/futbol24-com/picks/5/#pick-n-ecf1261b7bfdd8d6da23098d",
     "original": null,
     "contradictory": false,
     "authorship": null,
     "source_type": "telegram_channels",
     "own_page": true,
     "trust_settled_count": 1547
    },
    {
     "entry_id": "n-692b2792287917d5aa14bde5",
     "author_name": "Steeven Occhipinti",
     "author_href": "/authors/steeven-occhipinti/",
     "source_group": "tipsters",
     "trust_tier": "probation",
     "market_label": "1X2, match result",
     "market_key": "1x2",
     "choice": "Olympique de Marseille",
     "choice_key": "1",
     "byline": "Recorded by us before kick-off",
     "logged_at": "2026-10-13T19:03:32.936Z",
     "posted_at": null,
     "author_quoted_price": "2.24",
     "our_snapshot": "2.2500",
     "closing_line": null,
     "outcome_label": "Lost",
     "pre_match": true,
     "proof": "/authors/steeven-occhipinti/picks/7/#pick-n-692b2792287917d5aa14bde5",
     "original": null,
     "contradictory": false,
     "authorship": null,
     "source_type": "prediction_sites",
     "own_page": true,
     "trust_settled_count": 221
    },
    {
     "entry_id": "n-64a591d9af2e24355f481189",
     "author_name": "Wincomparator",
     "author_href": "/sources/wincomparator-com/",
     "source_group": "websites",
     "trust_tier": "probation",
     "market_label": "1X2, match result",
     "market_key": "1x2",
     "choice": "Olympiakos Piraeus",
     "choice_key": "2",
     "byline": "Recorded by us before kick-off",
     "logged_at": "2026-10-11T10:49:46.219Z",
     "posted_at": null,
     "author_quoted_price": "3.00",
     "our_snapshot": "3.1500",
     "closing_line": null,
     "outcome_label": "Won",
     "pre_match": true,
     "proof": "/sources/wincomparator-com/products/l-equipe-wincomparator/picks/18/#pick-n-64a591d9af2e24355f481189",
     "original": null,
     "contradictory": false,
     "authorship": null,
     "source_type": "telegram_channels",
     "own_page": true,
     "trust_settled_count": 2135
    },
    {
     "entry_id": "n-24e003705523f6b7c32fb501",
     "author_name": "Arvid Snacke",
     "author_href": "/authors/arvid-snacke/",
     "source_group": "tipsters",
     "trust_tier": "probation",
     "market_label": "Double chance",
     "market_key": "double_chance",
     "choice": "Olympique de Marseille or draw",
     "choice_key": "1X",
     "byline": "Recorded by us before kick-off",
     "logged_at": "2026-10-15T07:19:35.137Z",
     "posted_at": "2026-10-15T07:11:16.000Z",
     "author_quoted_price": null,
     "our_snapshot": "1.3984",
     "closing_line": null,
     "outcome_label": "Lost",
     "pre_match": true,
     "proof": "/authors/arvid-snacke/picks/2/#pick-n-24e003705523f6b7c32fb501",
     "original": null,
     "contradictory": false,
     "authorship": null,
     "source_type": "prediction_sites",
     "own_page": true,
     "trust_settled_count": 15
    },
    {
     "entry_id": "n-4d9c192f62250a4a5e450d7a",
     "author_name": "Bet-Experts.nl",
     "author_href": "/sources/bet-experts-nl/",
     "source_group": "websites",
     "trust_tier": "probation",
     "market_label": "Correct score",
     "market_key": "correct_score_market",
     "choice": "Olympique de Marseille 1-1 Olympiakos Piraeus",
     "choice_key": "1-1",
     "byline": "Recorded by us before kick-off",
     "logged_at": "2026-10-15T04:09:31.984Z",
     "posted_at": null,
     "author_quoted_price": null,
     "our_snapshot": null,
     "closing_line": null,
     "outcome_label": "Lost",
     "pre_match": true,
     "proof": "/sources/bet-experts-nl/picks/9/#pick-n-4d9c192f62250a4a5e450d7a",
     "original": null,
     "contradictory": false,
     "authorship": null,
     "source_type": "telegram_channels",
     "own_page": true,
     "trust_settled_count": 121
    },
    {
     "entry_id": "n-3f86039caa3e09123fa7a924",
     "author_name": "Futbol24",
     "author_href": "/sources/futbol24-com/",
     "source_group": "websites",
     "trust_tier": "probation",
     "market_label": "Both teams to score",
     "market_key": "both_teams_score",
     "choice": "yes",
     "choice_key": "yes",
     "byline": "Recorded by us before kick-off",
     "logged_at": "2026-10-15T00:40:16.090Z",
     "posted_at": "2026-10-12T01:09:13.000Z",
     "author_quoted_price": "1.62",
     "our_snapshot": "1.5882",
     "closing_line": null,
     "outcome_label": "Lost",
     "pre_match": true,
     "proof": "/sources/futbol24-com/picks/5/#pick-n-3f86039caa3e09123fa7a924",
     "original": null,
     "contradictory": false,
     "authorship": null,
     "source_type": "telegram_channels",
     "own_page": true,
     "trust_settled_count": 1547
    },
    {
     "entry_id": "n-1b07ba4a29ab037b23674336",
     "author_name": "Goksim",
     "author_href": "/authors/goksim/",
     "source_group": "tipsters",
     "trust_tier": "probation",
     "market_label": "Over/Under 2.5 goals",
     "market_key": "total",
     "choice": "under 2.5",
     "choice_key": "under",
     "byline": "Recorded by us before kick-off",
     "logged_at": "2026-10-13T05:59:39.653Z",
     "posted_at": "2026-10-13T05:30:22.000Z",
     "author_quoted_price": "2.10",
     "our_snapshot": "2.1000",
     "closing_line": null,
     "outcome_label": "Won",
     "pre_match": true,
     "proof": "/authors/goksim/picks/4/#pick-n-1b07ba4a29ab037b23674336",
     "original": null,
     "contradictory": false,
     "authorship": null,
     "source_type": "private_authors",
     "own_page": true,
     "trust_settled_count": 116
    },
    {
     "entry_id": "n-c6641c78ccf1ef0cc1eff20c",
     "author_name": "Goksim",
     "author_href": "/authors/goksim/",
     "source_group": "tipsters",
     "trust_tier": "probation",
     "market_label": "Over/Under 3.5 goals",
     "market_key": "total",
     "choice": "under 3.5",
     "choice_key": "under",
     "byline": "Recorded by us before kick-off",
     "logged_at": "2026-10-13T05:59:39.653Z",
     "posted_at": "2026-10-13T05:30:22.000Z",
     "author_quoted_price": "1.44",
     "our_snapshot": null,
     "closing_line": null,
     "outcome_label": "Won",
     "pre_match": true,
     "proof": "/authors/goksim/picks/4/#pick-n-c6641c78ccf1ef0cc1eff20c",
     "original": null,
     "contradictory": false,
     "authorship": null,
     "source_type": "private_authors",
     "own_page": true,
     "trust_settled_count": 116
    },
    {
     "entry_id": "n-978d24fcdd5fef55870f7287",
     "author_name": "Matthew Cooper",
     "author_href": "/authors/matthew-cooper/",
     "source_group": "experts",
     "trust_tier": "probation",
     "market_label": "Correct score",
     "market_key": "correct_score_market",
     "choice": "Olympique de Marseille 1-2 Olympiakos Piraeus",
     "choice_key": "1-2",
     "byline": "Recorded by us before kick-off",
     "logged_at": "2026-10-13T17:09:49.316Z",
     "posted_at": "2026-10-13T14:58:27.000Z",
     "author_quoted_price": null,
     "our_snapshot": null,
     "closing_line": null,
     "outcome_label": "Lost",
     "pre_match": true,
     "proof": "/authors/matthew-cooper/picks/2/#pick-n-978d24fcdd5fef55870f7287",
     "original": null,
     "contradictory": false,
     "authorship": null,
     "source_type": "media",
     "own_page": true,
     "trust_settled_count": 27
    },
    {
     "entry_id": "n-b04d106e125249da475a7ffb",
     "author_name": "Steeven Occhipinti",
     "author_href": "/authors/steeven-occhipinti/",
     "source_group": "tipsters",
     "trust_tier": "probation",
     "market_label": "Both teams to score",
     "market_key": "both_teams_score",
     "choice": "yes",
     "choice_key": "yes",
     "byline": "Recorded by us before kick-off",
     "logged_at": "2026-10-13T19:03:32.936Z",
     "posted_at": null,
     "author_quoted_price": "1.51",
     "our_snapshot": "1.5714",
     "closing_line": null,
     "outcome_label": "Lost",
     "pre_match": true,
     "proof": "/authors/steeven-occhipinti/picks/7/#pick-n-b04d106e125249da475a7ffb",
     "original": null,
     "contradictory": false,
     "authorship": null,
     "source_type": "prediction_sites",
     "own_page": true,
     "trust_settled_count": 221
    },
    {
     "entry_id": "n-b577ca244a8b85a6dca6d25e",
     "author_name": "Wincomparator",
     "author_href": "/sources/wincomparator-com/",
     "source_group": "websites",
     "trust_tier": "probation",
     "market_label": "Over/Under 2.5 goals",
     "market_key": "total",
     "choice": "over 2.5",
     "choice_key": "over",
     "byline": "Recorded by us before kick-off",
     "logged_at": "2026-10-11T10:49:46.219Z",
     "posted_at": null,
     "author_quoted_price": "1.55",
     "our_snapshot": "1.6897",
     "closing_line": null,
     "outcome_label": "Lost",
     "pre_match": true,
     "proof": "/sources/wincomparator-com/products/l-equipe-wincomparator/picks/18/#pick-n-b577ca244a8b85a6dca6d25e",
     "original": null,
     "contradictory": false,
     "authorship": null,
     "source_type": "telegram_channels",
     "own_page": true,
     "trust_settled_count": 2135
    }
   ],
   "not_counted": [],
   "after_start": [],
   "forecaster_split": {
    "contracts": [
     {
      "contract_code": "1x2|*|match|*|*#explicit",
      "source_group": "explicit",
      "market_label": "1X2, match result",
      "market_key": "1x2",
      "choices": [
       {
        "code_name": "1",
        "in_words": "Olympique de Marseille",
        "tips": [
         {
          "author_name": "Futbol24",
          "entry_id": "n-ecf1261b7bfdd8d6da23098d",
          "outcome_label": "Lost",
          "source_group": "websites"
         },
         {
          "author_name": "Steeven Occhipinti",
          "entry_id": "n-692b2792287917d5aa14bde5",
          "outcome_label": "Lost",
          "source_group": "tipsters"
         }
        ],
        "figure": 2
       },
       {
        "code_name": "X",
        "in_words": "Draw",
        "tips": [],
        "figure": 0
       },
       {
        "code_name": "2",
        "in_words": "Olympiakos Piraeus",
        "tips": [
         {
          "author_name": "Wincomparator",
          "entry_id": "n-64a591d9af2e24355f481189",
          "outcome_label": "Won",
          "source_group": "websites"
         }
        ],
        "figure": 1
       }
      ],
      "n": 3,
      "publisher_count": 3
     },
     {
      "contract_code": "both_teams_score|*|match|*|*#explicit",
      "source_group": "explicit",
      "market_label": "Both teams to score",
      "market_key": "both_teams_score",
      "choices": [
       {
        "code_name": "yes",
        "in_words": "yes",
        "tips": [
         {
          "author_name": "Baba",
          "entry_id": "n-76b60fd241934145bdbec122",
          "outcome_label": "Lost",
          "source_group": "tipsters"
         },
         {
          "author_name": "Free Super Tips",
          "entry_id": "n-ebf917f7763d27084b3ba935",
          "outcome_label": "Lost",
          "source_group": "websites"
         },
         {
          "author_name": "Futbol24",
          "entry_id": "n-3f86039caa3e09123fa7a924",
          "outcome_label": "Lost",
          "source_group": "websites"
         },
         {
          "author_name": "Steeven Occhipinti",
          "entry_id": "n-b04d106e125249da475a7ffb",
          "outcome_label": "Lost",
          "source_group": "tipsters"
         }
        ],
        "figure": 4
       }
      ],
      "n": 4,
      "publisher_count": 4
     },
     {
      "contract_code": "correct_score_market|*|match|*|*#explicit",
      "source_group": "explicit",
      "market_label": "Correct score",
      "market_key": "correct_score_market",
      "choices": [
       {
        "code_name": "1-1",
        "in_words": "Olympique de Marseille 1-1 Olympiakos Piraeus",
        "tips": [
         {
          "author_name": "Bet-Experts.nl",
          "entry_id": "n-4d9c192f62250a4a5e450d7a",
          "outcome_label": "Lost",
          "source_group": "websites"
         },
         {
          "author_name": "Free Super Tips",
          "entry_id": "n-cf521e64aa9a6375a56d8651",
          "outcome_label": "Lost",
          "source_group": "websites"
         }
        ],
        "figure": 2
       },
       {
        "code_name": "1-2",
        "in_words": "Olympique de Marseille 1-2 Olympiakos Piraeus",
        "tips": [
         {
          "author_name": "Matthew Cooper",
          "entry_id": "n-978d24fcdd5fef55870f7287",
          "outcome_label": "Lost",
          "source_group": "experts"
         }
        ],
        "figure": 1
       }
      ],
      "n": 3,
      "publisher_count": 3
     },
     {
      "contract_code": "total|2.5|match|*|*#explicit",
      "source_group": "explicit",
      "market_label": "Over/Under 2.5 goals",
      "market_key": "total",
      "choices": [
       {
        "code_name": "over",
        "in_words": "over 2.5",
        "tips": [
         {
          "author_name": "Wincomparator",
          "entry_id": "n-b577ca244a8b85a6dca6d25e",
          "outcome_label": "Lost",
          "source_group": "websites"
         }
        ],
        "figure": 1
       },
       {
        "code_name": "under",
        "in_words": "under 2.5",
        "tips": [
         {
          "author_name": "Goksim",
          "entry_id": "n-1b07ba4a29ab037b23674336",
          "outcome_label": "Won",
          "source_group": "tipsters"
         }
        ],
        "figure": 1
       }
      ],
      "n": 2,
      "publisher_count": 2
     },
     {
      "contract_code": "double_chance|*|match|*|*#explicit",
      "source_group": "explicit",
      "market_label": "Double chance",
      "market_key": "double_chance",
      "choices": [
       {
        "code_name": "1X",
        "in_words": "Olympique de Marseille or draw",
        "tips": [
         {
          "author_name": "Arvid Snacke",
          "entry_id": "n-24e003705523f6b7c32fb501",
          "outcome_label": "Lost",
          "source_group": "tipsters"
         }
        ],
        "figure": 1
       }
      ],
      "n": 1,
      "publisher_count": 1
     },
     {
      "contract_code": "total|3.5|match|*|*#explicit",
      "source_group": "explicit",
      "market_label": "Over/Under 3.5 goals",
      "market_key": "total",
      "choices": [
       {
        "code_name": "under",
        "in_words": "under 3.5",
        "tips": [
         {
          "author_name": "Goksim",
          "entry_id": "n-c6641c78ccf1ef0cc1eff20c",
          "outcome_label": "Won",
          "source_group": "tipsters"
         }
        ],
        "figure": 1
       }
      ],
      "n": 1,
      "publisher_count": 1
     }
    ],
    "author_count": 9,
    "below_threshold": {
     "prediction_count": 0,
     "author_count": 0
    },
    "limit": 10
   },
   "chain": {
    "publications": 3,
    "unique": 3,
    "comparable": 3,
    "admissible": 3,
    "contributions": 3
   },
   "differing_choices": 0,
   "visible_who": 2,
   "newcomers_who": 7,
   "newcomers_before": 11,
   "titles_shown": true,
   "legend": "Badges show titles earned before this prediction, by published rules."
  },
  "arguments": {
   "topics": [
    {
     "code_name": "recent_form",
     "display_name": "Form",
     "checkable_item": false,
     "bullet_points": [
      {
       "entry_id": "n-ebf917f7763d27084b3ba935",
       "author_name": "Free Super Tips",
       "author_href": "/sources/free-super-tips/",
       "source_group": "websites",
       "choice": "yes",
       "market_label": "Both teams to score",
       "logged_at": "2026-10-13T15:24:44.735Z",
       "original": "https://www.freesupertips.com/predictions/marseille-vs-olympiacos-predictions-betting-tips-match-previews-2/",
       "proof": "/sources/free-super-tips/picks/16/#pick-n-ebf917f7763d27084b3ba935",
       "quote_text": "Marseille remain dangerous going forward but vulnerable at the back, while Olympiakos arrive in good scoring form. With both defences offering opportunities…",
       "retelling": null,
       "checkable_item": false,
       "against": false
      }
     ],
     "total_count": 1
    },
    {
     "code_name": "tactics",
     "display_name": "Tactics and style",
     "checkable_item": false,
     "bullet_points": [
      {
       "entry_id": "n-cf521e64aa9a6375a56d8651",
       "author_name": "Free Super Tips",
       "author_href": "/sources/free-super-tips/",
       "source_group": "websites",
       "choice": "Olympique de Marseille 1-1 Olympiakos Piraeus",
       "market_label": "Correct score",
       "logged_at": "2026-10-13T15:24:44.735Z",
       "original": "https://www.freesupertips.com/predictions/marseille-vs-olympiacos-predictions-betting-tips-match-previews-2/",
       "proof": "/sources/free-super-tips/picks/15/#pick-n-cf521e64aa9a6375a56d8651",
       "quote_text": "A 1-1 draw looks the most likely correct score, with Marseille expected to create chances at home but Olympiakos carrying enough attacking threat to respond.",
       "retelling": null,
       "checkable_item": false,
       "against": false
      }
     ],
     "total_count": 1
    }
   ],
   "against": [],
   "other_languages": 1,
   "other_language_hosts": [
    "livetipsportal.com"
   ],
   "mode": "quotes",
   "topics_total": 2,
   "checkable": 0
  },
  "market_label": null,
  "market_mode": "show",
  "fact_sheet": {
   "tournament": "UEFA Europa League (Europe)",
   "matchday": "League Stage · Matchday 2",
   "starts_at": "2026-10-15T19:00:00.000Z",
   "form": {
    "home_side": [
     {
      "res": "W",
      "scoreline": "2-0",
      "opponent": "Troyes",
      "at_home": false,
      "data": "2026-10-11"
     },
     {
      "res": "L",
      "scoreline": "1-2",
      "opponent": "Paris Saint-Germain",
      "at_home": true,
      "data": "2026-09-20"
     },
     {
      "res": "L",
      "scoreline": "1-4",
      "opponent": "Beşiktaş",
      "at_home": false,
      "data": "2026-09-17"
     },
     {
      "res": "L",
      "scoreline": "0-1",
      "opponent": "Stade Rennais",
      "at_home": false,
      "data": "2026-09-11"
     },
     {
      "res": "L",
      "scoreline": "2-3",
      "opponent": "Paris FC",
      "at_home": true,
      "data": "2026-09-06"
     }
    ],
    "away": [
     {
      "res": "W",
      "scoreline": "1-0",
      "opponent": "Panathinaikos",
      "at_home": true,
      "data": "2026-10-11"
     },
     {
      "res": "W",
      "scoreline": "2-1",
      "opponent": "Jagiellonia",
      "at_home": true,
      "data": "2026-09-16"
     },
     {
      "res": "D",
      "scoreline": "1-1",
      "opponent": "Volos NFC",
      "at_home": false,
      "data": "2026-09-05"
     },
     {
      "res": "D",
      "scoreline": "1-1",
      "opponent": "NEC Nijmegen",
      "at_home": false,
      "data": "2026-08-11"
     },
     {
      "res": "D",
      "scoreline": "0-0",
      "opponent": "NEC Nijmegen",
      "at_home": true,
      "data": "2026-08-04"
     }
    ]
   },
   "head_to_head": [],
   "past_cards": [],
   "reach": ""
  },
  "after_match": {
   "scoreline": "0-1",
   "fact_code": "2",
   "row_list": [
    "Match-result predictions from tipsters and sources with 10 or more predictions checked against the final score to date: 1 of 3 matched · Tipsters 0 of 1 · Prediction sites 1 of 2",
    "All recorded exact-score predictions: 0 of 3 matched",
    "Exact-score predictions from tipsters and sources with 10 or more predictions checked against the final score to date: 0 of 3 matched the score, 1 of 3 the outcome",
    "Most common selection among tipsters and sources with 10 or more predictions checked against the final score to date: Olympique de Marseille (2 of 3), missed"
   ],
   "by_group": {
    "websites": {
     "correct": 1,
     "of": 2
    },
    "tipsters": {
     "correct": 0,
     "of": 1
    }
   },
   "placement": null,
   "checks": []
  },
  "prices": [
   {
    "author_name": "Free Super Tips",
    "choice": "yes",
    "market_label": "Both teams to score",
    "author_quoted_price": "1.61",
    "our_snapshot": "1.5714",
    "closing_line": null
   }
  ],
  "revisions": [
   "First published with predictions on 15 October 2026."
  ],
  "titles": {
   "shown": true,
   "legend": "Badges show titles earned before this prediction, by published rules.",
   "frozen_in": "sr-87c6f1a9457801b19130f848"
  },
  "tracker": null,
  "source_groups": {
   "as_of": "2026-10-15T19:00:00.000Z",
   "groups": [
    {
     "key": "prediction_sites",
     "label": "Prediction sites"
    },
    {
     "key": "media",
     "label": "Media"
    },
    {
     "key": "telegram_channels",
     "label": "Telegram channels"
    },
    {
     "key": "private_authors",
     "label": "Independent tipsters"
    }
   ],
   "authors": 9,
   "by_group": [
    {
     "key": "prediction_sites",
     "authors": 4
    },
    {
     "key": "media",
     "authors": 1
    },
    {
     "key": "telegram_channels",
     "authors": 3
    },
    {
     "key": "private_authors",
     "authors": 1
    }
   ],
   "markets": [
    {
     "key": "1x2",
     "label": "Match result",
     "authors": 3,
     "by_group": [
      {
       "key": "prediction_sites",
       "authors": 1
      },
      {
       "key": "media",
       "authors": 0
      },
      {
       "key": "telegram_channels",
       "authors": 2
      },
      {
       "key": "private_authors",
       "authors": 0
      }
     ],
     "choices": [
      {
       "code_name": "1",
       "in_words": "Olympique de Marseille",
       "authors": 2,
       "by_group": [
        {
         "key": "prediction_sites",
         "authors": 1
        },
        {
         "key": "media",
         "authors": 0
        },
        {
         "key": "telegram_channels",
         "authors": 1
        },
        {
         "key": "private_authors",
         "authors": 0
        }
       ]
      },
      {
       "code_name": "X",
       "in_words": "Draw",
       "authors": 0,
       "by_group": [
        {
         "key": "prediction_sites",
         "authors": 0
        },
        {
         "key": "media",
         "authors": 0
        },
        {
         "key": "telegram_channels",
         "authors": 0
        },
        {
         "key": "private_authors",
         "authors": 0
        }
       ]
      },
      {
       "code_name": "2",
       "in_words": "Olympiakos Piraeus",
       "authors": 1,
       "by_group": [
        {
         "key": "prediction_sites",
         "authors": 0
        },
        {
         "key": "media",
         "authors": 0
        },
        {
         "key": "telegram_channels",
         "authors": 1
        },
        {
         "key": "private_authors",
         "authors": 0
        }
       ]
      }
     ]
    },
    {
     "key": "totals",
     "label": "Goal totals",
     "authors": 2,
     "by_group": [
      {
       "key": "prediction_sites",
       "authors": 0
      },
      {
       "key": "media",
       "authors": 0
      },
      {
       "key": "telegram_channels",
       "authors": 1
      },
      {
       "key": "private_authors",
       "authors": 1
      }
     ]
    },
    {
     "key": "other",
     "label": "Handicaps, both teams to score, correct score and other markets",
     "authors": 7,
     "by_group": [
      {
       "key": "prediction_sites",
       "authors": 4
      },
      {
       "key": "media",
       "authors": 1
      },
      {
       "key": "telegram_channels",
       "authors": 2
      },
      {
       "key": "private_authors",
       "authors": 0
      }
     ]
    }
   ]
  },
  "market_line": {
   "line_state": "no_snapshot",
   "line_frozen": true,
   "phrase": null,
   "line_markets": [
    {
     "market_text": "Both teams to score",
     "market_group": "other",
     "line_kind": "recorded_price",
     "margin_included": true,
     "closing_line": false,
     "price_sides": [
      {
       "choice": "yes",
       "snapshot_price": "1.59",
       "percent_value": 63,
       "snapshot_at": "2026-10-15T01:06:00.427Z",
       "snapshot_count": 4,
       "first_snapshot_price": "1.57",
       "first_at": "2026-10-13T15:21:58.265Z",
       "shift_pp": 0.7,
       "shift_direction": "down",
       "line_state": "barely_moved"
      }
     ],
     "line_state": "barely_moved",
     "phrase": "Both teams to score, yes: market price 1.59 on 15 October 2026, 02:06 BST (implied 63%, margin included), 0.7 percentage points down from 13 October 2026, 16:21 BST."
    },
    {
     "market_text": "Over/Under 2.5 goals",
     "market_group": "totals",
     "line_kind": "recorded_price",
     "margin_included": true,
     "closing_line": false,
     "price_sides": [
      {
       "choice": "over 2.5",
       "snapshot_price": "1.69",
       "percent_value": 59,
       "snapshot_at": "2026-10-11T10:47:19.911Z",
       "snapshot_count": 1,
       "first_snapshot_price": null,
       "first_at": null,
       "shift_pp": null,
       "shift_direction": null,
       "line_state": "single_snapshot"
      },
      {
       "choice": "under 2.5",
       "snapshot_price": "2.10",
       "percent_value": 48,
       "snapshot_at": "2026-10-13T05:59:07.319Z",
       "snapshot_count": 1,
       "first_snapshot_price": null,
       "first_at": null,
       "shift_pp": null,
       "shift_direction": null,
       "line_state": "single_snapshot"
      }
     ],
     "line_state": "single_snapshot",
     "phrase": "Over/Under 2.5 goals, over 2.5 goals: market price 1.69 on 11 October 2026, 11:47 BST (implied 59%, margin included). Over/Under 2.5 goals, under 2.5 goals: market price 2.10 on 13 October 2026, 06:59 BST (implied 48%, margin included)."
    }
   ]
  },
  "pre_kickoff_snapshot": {
   "frozen_before_kickoff": true,
   "as_of_moment": "2026-10-15T19:00:00.000Z",
   "starts_at": "2026-10-15T19:00:00.000Z",
   "phrase": "Before kick-off on 15 October 2026, 20:00 BST: 1X2, match result, recorded picks before the match (3): 2 on Olympique de Marseille, 0 on the draw, 1 on Olympiakos Piraeus; Over/Under 2.5 goals, recorded picks before the match (2): 1 on over 2.5 goals, 1 on under 2.5 goals; Both teams to score, recorded picks before the match (4): 4 on yes.",
   "market_line_brief": null,
   "market_groups": [
    {
     "market_group": "1x2",
     "group_markets": [
      {
       "market_text": "1X2, match result",
       "prediction_count": 3,
       "row_count": 3,
       "market_choices": [
        {
         "choice": "Olympique de Marseille",
         "figure": 2
        },
        {
         "choice": "Olympiakos Piraeus",
         "figure": 1
        }
       ],
       "phrase_mode": "listing",
       "leader_choice": null,
       "leader_count": null,
       "share_percent": 67,
       "phrase": "1X2, match result, recorded picks before the match (3): 2 on Olympique de Marseille, 0 on the draw, 1 on Olympiakos Piraeus",
       "sides_1x2": [
        {
         "side": "1",
         "in_words": "Olympique de Marseille",
         "figure": 2
        },
        {
         "side": "X",
         "in_words": "draw",
         "figure": 0
        },
        {
         "side": "2",
         "in_words": "Olympiakos Piraeus",
         "figure": 1
        }
       ]
      }
     ]
    },
    {
     "market_group": "totals",
     "group_markets": [
      {
       "market_text": "Over/Under 2.5 goals",
       "prediction_count": 2,
       "row_count": 2,
       "market_choices": [
        {
         "choice": "over 2.5",
         "figure": 1
        },
        {
         "choice": "under 2.5",
         "figure": 1
        }
       ],
       "phrase_mode": "listing",
       "leader_choice": null,
       "leader_count": null,
       "share_percent": null,
       "phrase": "Over/Under 2.5 goals, recorded picks before the match (2): 1 on over 2.5 goals, 1 on under 2.5 goals"
      },
      {
       "market_text": "Over/Under 3.5 goals",
       "prediction_count": 1,
       "row_count": 1,
       "market_choices": [
        {
         "choice": "under 3.5",
         "figure": 1
        }
       ],
       "phrase_mode": "listing",
       "leader_choice": null,
       "leader_count": null,
       "share_percent": 100,
       "phrase": "Over/Under 3.5 goals, recorded picks before the match (1): 1 on under 3.5 goals"
      }
     ]
    },
    {
     "market_group": "other",
     "group_markets": [
      {
       "market_text": "Both teams to score",
       "prediction_count": 4,
       "row_count": 4,
       "market_choices": [
        {
         "choice": "yes",
         "figure": 4
        }
       ],
       "phrase_mode": "listing",
       "leader_choice": null,
       "leader_count": null,
       "share_percent": 100,
       "phrase": "Both teams to score, recorded picks before the match (4): 4 on yes"
      },
      {
       "market_text": "Correct score",
       "prediction_count": 3,
       "row_count": 3,
       "market_choices": [
        {
         "choice": "Olympique de Marseille 1-1 Olympiakos Piraeus",
         "figure": 2
        },
        {
         "choice": "Olympique de Marseille 1-2 Olympiakos Piraeus",
         "figure": 1
        }
       ],
       "phrase_mode": "listing",
       "leader_choice": null,
       "leader_count": null,
       "share_percent": 67,
       "phrase": "Correct score, recorded picks before the match (3): 2 on Olympique de Marseille 1-1 Olympiakos Piraeus, 1 on Olympique de Marseille 1-2 Olympiakos Piraeus"
      },
      {
       "market_text": "Double chance",
       "prediction_count": 1,
       "row_count": 1,
       "market_choices": [
        {
         "choice": "Olympique de Marseille or draw",
         "figure": 1
        }
       ],
       "phrase_mode": "listing",
       "leader_choice": null,
       "leader_count": null,
       "share_percent": 100,
       "phrase": "Double chance, recorded picks before the match (1): 1 on Olympique de Marseille or draw"
      }
     ]
    }
   ],
   "predictions_before_kickoff": 14,
   "majority_threshold": {
    "min_predictions": 5,
    "min_share_percent": 60.0
   }
  },
  "teams_prev_next": [
   {
    "side": "home",
    "team": "Olympique de Marseille",
    "team_url": "/football/teams/olympique-de-marseille/",
    "participant_id": "u-814efe94d232",
    "previous": {
     "kickoff": "2026-09-20T18:45:00.000Z",
     "name": "Olympique de Marseille vs Paris Saint-Germain",
     "url": null,
     "competition": "Ligue 1",
     "state": "played",
     "score": "1-2"
    },
    "next": {
     "kickoff": "2026-10-18T13:00:00.000Z",
     "name": "Angers vs Olympique de Marseille",
     "url": "/football/matches/angers-vs-olympique-de-marseille-2026-10-18/",
     "competition": "Ligue 1",
     "state": "played",
     "score": "2-5"
    },
    "why": null
   },
   {
    "side": "away",
    "team": "Olympiakos Piraeus",
    "team_url": "/football/teams/olympiakos-piraeus/",
    "participant_id": "u-dfcaeddae777",
    "previous": {
     "kickoff": "2026-10-11T18:00:00.000Z",
     "name": "Olympiakos Piraeus vs Panathinaikos",
     "url": null,
     "competition": "Super League Greece",
     "state": "played",
     "score": "1-0"
    },
    "next": {
     "kickoff": "2026-10-18T14:00:00.000Z",
     "name": "Panetolikos vs Olympiakos Piraeus",
     "url": "/football/matches/panetolikos-vs-olympiakos-piraeus-2026-10-18/",
     "competition": "Super League Greece",
     "state": "played",
     "score": "0-2"
    },
    "why": null
   }
  ]
 },
 "number_sets": [
  {
   "set": "match.recorded_price.percent",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Both teams to score|yes",
   "value": 63,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.recorded_price.percent",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Over/Under 2.5 goals|over 2.5",
   "value": 59,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.recorded_price.percent",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Over/Under 2.5 goals|under 2.5",
   "value": 48,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.market",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|1X2, match result",
   "value": 3,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.leader_share_percent",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|1X2, match result",
   "value": 67,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.selection",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|1X2, match result|Olympique de Marseille",
   "value": 2,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.selection",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|1X2, match result|draw",
   "value": 0,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.selection",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|1X2, match result|Olympiakos Piraeus",
   "value": 1,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.market",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Over/Under 2.5 goals",
   "value": 2,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.selection",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Over/Under 2.5 goals|over 2.5",
   "value": 1,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.selection",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Over/Under 2.5 goals|under 2.5",
   "value": 1,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.market",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Over/Under 3.5 goals",
   "value": 1,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.leader_share_percent",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Over/Under 3.5 goals",
   "value": 100,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.selection",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Over/Under 3.5 goals|under 3.5",
   "value": 1,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.market",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Both teams to score",
   "value": 4,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.leader_share_percent",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Both teams to score",
   "value": 100,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.selection",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Both teams to score|yes",
   "value": 4,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.market",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Correct score",
   "value": 3,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.leader_share_percent",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Correct score",
   "value": 67,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.selection",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Correct score|Olympique de Marseille 1-1 Olympiakos Piraeus",
   "value": 2,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.selection",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Correct score|Olympique de Marseille 1-2 Olympiakos Piraeus",
   "value": 1,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.market",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Double chance",
   "value": 1,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.leader_share_percent",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Double chance",
   "value": 100,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.before_kickoff.selection",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/|Double chance|Olympique de Marseille or draw",
   "value": 1,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.other_forecasters",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
   "value": 11,
   "where": null,
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.snapshot",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
   "value": 11,
   "where": "pre-match-record",
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.snapshot.on_page",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
   "value": 4,
   "where": "pre-match-record",
   "as_of": "2026-11-07T19:52:23.438Z"
  },
  {
   "set": "match.snapshot.left",
   "entity": "/football/matches/olympique-de-marseille-vs-olympiakos-piraeus-2026-10-15/",
   "value": 7,
   "where": "pre-match-record",
   "as_of": "2026-11-07T19:52:23.438Z"
  }
 ],
 "data_changes": {
  "records_corrected": 2,
  "last_correction_at": "2026-10-14T02:01:14.655Z",
  "corrections_url": "/corrections/",
  "text": "2 records shown here have been corrected; the last correction was on 14 October 2026, with its reason in the corrections log."
 },
 "entity_id": "event:s-50cbf0117aea",
 "source_revision": 154,
 "title_short": {
  "length": 67,
  "names": [
   "Marseille",
   "Olympiakos"
  ],
  "title": "Marseille vs Olympiakos: Results — 15 Oct 2026",
  "title_length": 46
 }
}
