{
 "schema_name": "page",
 "schema_version": "2.0",
 "page_type": "history",
 "url": "/authors/fatoumata-coulibaly/picks/4/",
 "canonical": "/authors/fatoumata-coulibaly/picks/4/",
 "language": "en",
 "hreflang": [],
 "translations": [],
 "heading": "Fatoumata Coulibaly — football predictions, page 4 of 10",
 "description": "Predictions 41–60 of 168 by Fatoumata Coulibaly, with outcomes in words and links to the evidence.",
 "first_paragraph": {
  "body": "Page 4 of 10 of the predictions by Fatoumata Coulibaly recorded by Forecast Record: predictions 41–60 of 168 in the order we recorded them, earliest first; as of 7 November 2026. Each row links to its evidence, and the summary of the record is on the profile page.",
  "key_number": "168",
  "data": "2026-11-07",
  "source_info": "our own evidence archive",
  "brand": "Forecast Record"
 },
 "indexable": false,
 "noindex_reason": "technical",
 "indexing_threshold": {
  "settled_count": 0,
  "date_count": 0,
  "required_settled": 0,
  "required_dates": 0
 },
 "data_date": "2026-11-07T18:01:40.794Z",
 "built_at": "2026-11-07T19:52:23.438Z",
 "lastmod": "2026-11-07T19:52:23.438Z",
 "content_hash": null,
 "meaning_hash": "0109521f3b0a754d3c89a1a6e2dac287fb95fce1157e0b2f44204b825c785ffb",
 "dependency_group": "author:e-81c3a120d6cde3e13f6a8644",
 "release_id": "20261107-195223",
 "markup": [
  {
   "type_code": "WebPage",
   "allowed": true,
   "cause": null
  },
  {
   "type_code": "Organization",
   "allowed": true,
   "cause": null
  }
 ],
 "exports": [
  {
   "type_code": "json",
   "url": "/authors/fatoumata-coulibaly/picks/4/index.json",
   "bytes": null
  }
 ],
 "modules": {
  "affiliate": false,
  "api": true,
  "compare_yourself": false
 },
 "affiliate_block": null,
 "restrictions": {
  "name_withdrawn": false,
  "tracker_number": null,
  "withdrawn_quotes": [],
  "removed_at": null,
  "cause": null,
  "suspended_records": [],
  "withdrawal_log_number": 0
 },
 "page_links": {
  "methodology": "/methodology/",
  "right_of_reply": "/right-of-reply/",
  "source_coverage": "/coverage/",
  "corrections_log": "/corrections/",
  "api": "/api/",
  "claim": "/claim/"
 },
 "entity": {
  "id": "e-81c3a120d6cde3e13f6a8644",
  "public_name": "Fatoumata Coulibaly",
  "tracker_number": 2687,
  "status": "active",
  "inactive_since": null,
  "verified_creator": false,
  "observation_period": {
   "since": "2026-10-09",
   "until": "2026-11-06"
  },
  "platform_list": [
   {
    "medium": "website",
    "handle": null,
    "url": null,
    "link_confirmed": false,
    "show": true
   }
  ],
  "comment": null
 },
 "recorded_picks": [
  {
   "record_id": "n-dc06e0525728e67d6f4a7090",
   "url": "/authors/fatoumata-coulibaly/picks/4/#pick-n-dc06e0525728e67d6f4a7090",
   "match": "Egnatia Rrogozhinë v FC Midtjylland",
   "match_url": "/football/matches/egnatia-rrogozhine-vs-fc-midtjylland-2026-10-15/",
   "kickoff": "2026-10-15T16:45:00.000Z",
   "competition": "UEFA Conference League",
   "lead_hours": 46.7,
   "market_code": "1x2",
   "author_said": "1X2, match result: FC Midtjylland at 1.49",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "1-1",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "author_price",
   "series_short": "author's odds",
   "author_price": "1.488",
   "settled_price": "1.488",
   "published_at": "2026-10-13T17:36:09.000Z",
   "recorded_at": "2026-10-13T18:05:44.314Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-dc06e0525728e67d6f4a7090",
    "quote_text": "Midtjylland vainqueur @1.488",
    "fragment_from": 517,
    "fragment_to": 545,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://african-football.com/prognoses/pronostic-egnatia-midtjylland/",
     "display_name": null,
     "speaker": "Fatoumata Coulibaly",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "eb9e935c7c568e87fce740f9fda0fcc76b36f5374778188de92e8b20fdfd5dbc",
     "material_removed": false
    },
    "published_at": "2026-10-13T17:36:09.000Z",
    "detected_at": "2026-10-13T18:05:44.314Z",
    "executed_at": "2026-10-27T02:24:50.846Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-1e00168386ce",
     "display_name": "Egnatia Rrogozhinë — FC Midtjylland",
     "competition_name": "UEFA Conference League",
     "starts_at": "2026-10-15T16:45:00.000Z",
     "url": "/football/matches/egnatia-rrogozhine-vs-fc-midtjylland-2026-10-15/",
     "scoreline": "1-1",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "FC Midtjylland",
    "odds_set": {
     "by_author": "1.488",
     "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": "2026-10-13T17:36:09.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-13T17:36:09.000Z",
     "detected_at": "2026-10-13T18:05:44.314Z",
     "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": "FC Midtjylland",
     "author_odds": "1.488",
     "market_key": "1x2",
     "choice_key": "2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: FC Midtjylland at 1.49"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "1-1",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Egnatia Rrogozhinë 1-1 FC Midtjylland."
    },
    "settlements": [
     {
      "operation_id": "8805f2a0003931699a289bac3dec63de21ef88b99930d47efa3f032c6f4cb937",
      "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": "FC Midtjylland",
      "decimal_odds": "1.488",
      "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:50.846Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "32535c200d8c515f244cd053ff83575c8c4c4b350a72966b9522ce2357ef51af",
      "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": "FC Midtjylland",
      "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": "Fatoumata Coulibaly",
     "publisher": "african-football.com",
     "forecaster": "Fatoumata Coulibaly",
     "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://african-football.com/prognoses/pronostic-egnatia-midtjylland/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "FC Midtjylland to win"
   }
  },
  {
   "record_id": "n-0da9783d78777fed822c3b14",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Plus de 2,5 buts @1.568",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T17:42:03.000Z",
   "recorded_at": "2026-10-14T18:20:40.219Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-ac4d3c34c6bf8b32ed5770f9",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Notre pari principal va sur la victoire de Pyramids à 1.09.",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T17:42:03.000Z",
   "recorded_at": "2026-10-14T18:20:40.219Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-afbcf255b4fdc4975f190257",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Les deux équipes marquent, Non @1.43",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T17:42:03.000Z",
   "recorded_at": "2026-10-14T18:20:40.219Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-22c47fba91d07802e882718c",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Plus de 2,5 buts @1.64",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T19:38:55.000Z",
   "recorded_at": "2026-10-14T20:35:39.704Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-82e60f6d6632f62ab46cb7c3",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Les deux équipes marquent – Non @1.45",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T19:38:55.000Z",
   "recorded_at": "2026-10-14T20:35:39.704Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-d765e7d71fc61cf0de4fac74",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Berkane vainqueur @1.12",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-14T19:38:55.000Z",
   "recorded_at": "2026-10-14T20:35:39.704Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-5d13ed664e450cf651681ea3",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Moins de 2,5 buts @1.775",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-15T21:08:44.000Z",
   "recorded_at": "2026-10-15T22:05:42.347Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-98ee2a31fe4049f0d5c8aee2",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Double chance X2 @1.356",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-15T21:08:44.000Z",
   "recorded_at": "2026-10-15T22:05:42.347Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-dcbd100ef57ea590d4d1cb7a",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Athletic Bilbao vainqueur @2.155",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-15T21:08:44.000Z",
   "recorded_at": "2026-10-15T22:05:42.347Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-0ef06edd6f84aad6faa6e395",
   "url": "/authors/fatoumata-coulibaly/picks/4/#pick-n-0ef06edd6f84aad6faa6e395",
   "match": "Borussia M'gladbach v TSG Hoffenheim",
   "match_url": "/football/matches/borussia-m-gladbach-vs-tsg-hoffenheim-2026-10-18/",
   "kickoff": "2026-10-18T15:30:00.000Z",
   "competition": "Bundesliga",
   "lead_hours": 40.4,
   "market_code": "1x2",
   "author_said": "1X2, match result: TSG Hoffenheim at 2",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "1-2",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 10500,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "2",
   "settled_price": "2.0500",
   "published_at": "2026-10-16T22:01:37.000Z",
   "recorded_at": "2026-10-16T23:05:39.335Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": {
    "outcome": "2",
    "price": "2.0500",
    "result": "Won",
    "points_hundredths": 10500,
    "picked_favourite": true
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-0ef06edd6f84aad6faa6e395",
    "quote_text": "Pari recommandé — Hoffenheim vainqueur @2.00 (risque modéré)",
    "fragment_from": 5752,
    "fragment_to": 5812,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://african-football.com/prognoses/pronostic-monchengladbach-hoffenheim/",
     "display_name": null,
     "speaker": "Fatoumata Coulibaly",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "65080ae83bec3969af6a0fc1c6a9e010dea212da2b8267de0fd96ee06f4faa4c",
     "material_removed": false
    },
    "published_at": "2026-10-16T22:01:37.000Z",
    "detected_at": "2026-10-16T23:05:39.335Z",
    "executed_at": "2026-10-17T23:48:57.927Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-8eef7fce6ad9",
     "display_name": "Borussia M'gladbach — TSG Hoffenheim",
     "competition_name": "Bundesliga",
     "starts_at": "2026-10-18T15:30:00.000Z",
     "url": "/football/matches/borussia-m-gladbach-vs-tsg-hoffenheim-2026-10-18/",
     "scoreline": "1-2",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "TSG Hoffenheim",
    "odds_set": {
     "by_author": "2",
     "our_snapshot": "2.0500",
     "our_snapshot_at": "2026-10-16T23:04:29.307Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 10500,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-16T22:01:37.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-16T22:01:37.000Z",
     "detected_at": "2026-10-16T23:05:39.335Z",
     "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": "TSG Hoffenheim",
     "author_odds": "2",
     "market_key": "1x2",
     "choice_key": "2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: TSG Hoffenheim at 2"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "1-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Borussia M'gladbach 1-2 TSG Hoffenheim."
    },
    "settlements": [
     {
      "operation_id": "abf35d7019b9165c2c6760e4b3f7cdc38863a82f69f4ce682c4c1927336b640a",
      "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": "TSG Hoffenheim",
      "decimal_odds": "2",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 10000,
      "executed_at": "2026-10-17T23:48:57.195Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "c04b33512a0f059115cbab6ba2a18c41a4fdccc7d4e98ebf4a01b6cb67008f0c",
      "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": "TSG Hoffenheim",
      "decimal_odds": "2.0500",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 10500,
      "executed_at": "2026-10-17T23:48:57.927Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Fatoumata Coulibaly",
     "publisher": "african-football.com",
     "forecaster": "Fatoumata Coulibaly",
     "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://african-football.com/prognoses/pronostic-monchengladbach-hoffenheim/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "TSG Hoffenheim to win"
   }
  },
  {
   "record_id": "n-258e101d0715124841275f21",
   "url": "/authors/fatoumata-coulibaly/picks/4/#pick-n-258e101d0715124841275f21",
   "match": "Borussia M'gladbach v TSG Hoffenheim",
   "match_url": "/football/matches/borussia-m-gladbach-vs-tsg-hoffenheim-2026-10-18/",
   "kickoff": "2026-10-18T15:30:00.000Z",
   "competition": "Bundesliga",
   "lead_hours": 40.4,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: over 2.5 at 1.36",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "1-2",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 3900,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.36",
   "settled_price": "1.3900",
   "published_at": "2026-10-16T22:01:37.000Z",
   "recorded_at": "2026-10-16T23:05:39.335Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-258e101d0715124841275f21",
    "quote_text": "Pari valeur — Plus de 2,5 buts @1.36 (risque faible)",
    "fragment_from": 5418,
    "fragment_to": 5470,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://african-football.com/prognoses/pronostic-monchengladbach-hoffenheim/",
     "display_name": null,
     "speaker": "Fatoumata Coulibaly",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "65080ae83bec3969af6a0fc1c6a9e010dea212da2b8267de0fd96ee06f4faa4c",
     "material_removed": false
    },
    "published_at": "2026-10-16T22:01:37.000Z",
    "detected_at": "2026-10-16T23:05:39.335Z",
    "executed_at": "2026-10-22T11:13:56.961Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-8eef7fce6ad9",
     "display_name": "Borussia M'gladbach — TSG Hoffenheim",
     "competition_name": "Bundesliga",
     "starts_at": "2026-10-18T15:30:00.000Z",
     "url": "/football/matches/borussia-m-gladbach-vs-tsg-hoffenheim-2026-10-18/",
     "scoreline": "1-2",
     "condition": "finished"
    },
    "market_label": "Over/Under 2.5 goals",
    "outcome_label": "over 2.5",
    "odds_set": {
     "by_author": "1.36",
     "our_snapshot": "1.3900",
     "our_snapshot_at": "2026-10-16T23:05:36.000Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 3900,
    "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-16T22:01:37.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-16T22:01:37.000Z",
     "detected_at": "2026-10-16T23:05:39.335Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Over/Under 2.5 goals",
     "choice": "over 2.5",
     "author_odds": "1.36",
     "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.36"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "1-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Borussia M'gladbach 1-2 TSG Hoffenheim."
    },
    "settlements": [
     {
      "operation_id": "ef902f09a93388b4790738d1249c9d433be137dec9ac7727e899d1acfc5f26fe",
      "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.36",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3600,
      "executed_at": "2026-10-17T23:48:56.513Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "1193499afb50fda537e6082ac7c528ad9bf58ab295257072eac90ba3e1926c98",
      "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.3900",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3900,
      "executed_at": "2026-10-22T11:13:56.961Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Fatoumata Coulibaly",
     "publisher": "african-football.com",
     "forecaster": "Fatoumata Coulibaly",
     "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://african-football.com/prognoses/pronostic-monchengladbach-hoffenheim/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "over 2.5 (Over/Under 2.5 goals)"
   }
  },
  {
   "record_id": "n-d52beaabb47154ef8e9b8282",
   "url": "/authors/fatoumata-coulibaly/picks/4/#pick-n-d52beaabb47154ef8e9b8282",
   "match": "Borussia M'gladbach v TSG Hoffenheim",
   "match_url": "/football/matches/borussia-m-gladbach-vs-tsg-hoffenheim-2026-10-18/",
   "kickoff": "2026-10-18T15:30:00.000Z",
   "competition": "Bundesliga",
   "lead_hours": 40.4,
   "market_code": "both_teams_score",
   "author_said": "Both teams to score: yes at 1.36",
   "quote": null,
   "group": "settled",
   "outcome": "Won",
   "claim_outcome": "Won",
   "final_score": "1-2",
   "reason": null,
   "reason_code": null,
   "points_hundredths": 3636,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.36",
   "settled_price": "1.3636",
   "published_at": "2026-10-16T22:01:37.000Z",
   "recorded_at": "2026-10-16T23:05:39.335Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": {
    "outcome": "yes",
    "price": "1.3636",
    "result": "Won",
    "points_hundredths": 3636,
    "picked_favourite": true
   },
   "correction": null,
   "evidence": {
    "observation_id": "n-d52beaabb47154ef8e9b8282",
    "quote_text": "Notre pari principal va sur « les deux équipes marquent » à 1.36.",
    "fragment_from": 953,
    "fragment_to": 1018,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://african-football.com/prognoses/pronostic-monchengladbach-hoffenheim/",
     "display_name": null,
     "speaker": "Fatoumata Coulibaly",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "65080ae83bec3969af6a0fc1c6a9e010dea212da2b8267de0fd96ee06f4faa4c",
     "material_removed": false
    },
    "published_at": "2026-10-16T22:01:37.000Z",
    "detected_at": "2026-10-16T23:05:39.335Z",
    "executed_at": "2026-10-17T23:48:56.491Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-8eef7fce6ad9",
     "display_name": "Borussia M'gladbach — TSG Hoffenheim",
     "competition_name": "Bundesliga",
     "starts_at": "2026-10-18T15:30:00.000Z",
     "url": "/football/matches/borussia-m-gladbach-vs-tsg-hoffenheim-2026-10-18/",
     "scoreline": "1-2",
     "condition": "finished"
    },
    "market_label": "Both teams to score",
    "outcome_label": "yes",
    "odds_set": {
     "by_author": "1.36",
     "our_snapshot": "1.3636",
     "our_snapshot_at": "2026-10-16T23:04:29.307Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "win",
    "simulation_change_hundredths": 3636,
    "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-16T22:01:37.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-16T22:01:37.000Z",
     "detected_at": "2026-10-16T23:05:39.335Z",
     "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.36",
     "market_key": "both_teams_score",
     "choice_key": "yes",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Both teams to score: yes at 1.36"
    },
    "author_claim_outcome": {
     "result": "win",
     "scoreline": "1-2",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Won: the final score was Borussia M'gladbach 1-2 TSG Hoffenheim."
    },
    "settlements": [
     {
      "operation_id": "d5d6ea57c4520993a6e3d48d42605e44b9ee8d483774363e947202d576156e8b",
      "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.36",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3600,
      "executed_at": "2026-10-17T23:48:55.530Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "68584168ed61512fc0dec46943dc34e12f9adcd79aec0fa092a906e6c94c4e1f",
      "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.3636",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "win",
      "result_words": "Won",
      "change_hundredths": 3636,
      "executed_at": "2026-10-17T23:48:56.491Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Fatoumata Coulibaly",
     "publisher": "african-football.com",
     "forecaster": "Fatoumata Coulibaly",
     "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://african-football.com/prognoses/pronostic-monchengladbach-hoffenheim/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "yes (Both teams to score)"
   }
  },
  {
   "record_id": "n-9ea3c35c9767701e9ed368f8",
   "url": "/authors/fatoumata-coulibaly/picks/4/#pick-n-9ea3c35c9767701e9ed368f8",
   "match": "Trabzonspor v Beşiktaş",
   "match_url": "/football/matches/trabzonspor-vs-besiktas-2026-10-19/",
   "kickoff": "2026-10-19T17:00:00.000Z",
   "competition": "Süper Lig",
   "lead_hours": 55.2,
   "market_code": "1x2",
   "author_said": "1X2, match result: Beşiktaş at 2.29",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "2-0",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "2.295",
   "settled_price": "2.1900",
   "published_at": "2026-10-17T09:00:00.000Z",
   "recorded_at": "2026-10-17T09:50:41.266Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-9ea3c35c9767701e9ed368f8",
    "quote_text": "Victoire Beşiktaş @2.295",
    "fragment_from": 712,
    "fragment_to": 736,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://african-football.com/prognoses/pronostic-trabzonspor-besiktas/",
     "display_name": null,
     "speaker": "Fatoumata Coulibaly",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "75bb04a0b8f8a08b92b558f57c8c78b8acc3ae90d0b6bb47aaeefc4909b0f256",
     "material_removed": false
    },
    "published_at": "2026-10-17T09:00:00.000Z",
    "detected_at": "2026-10-17T09:50:41.266Z",
    "executed_at": "2026-10-22T12:02:57.058Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-50d7f8d2dd2c",
     "display_name": "Trabzonspor — Beşiktaş",
     "competition_name": "Süper Lig",
     "starts_at": "2026-10-19T17:00:00.000Z",
     "url": "/football/matches/trabzonspor-vs-besiktas-2026-10-19/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "1X2, match result",
    "outcome_label": "Beşiktaş",
    "odds_set": {
     "by_author": "2.295",
     "our_snapshot": "2.1900",
     "our_snapshot_at": "2026-10-17T09:50:36.000Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "loss",
    "simulation_change_hundredths": -10000,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-17T09:00:00.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-17T09:00:00.000Z",
     "detected_at": "2026-10-17T09:50:41.266Z",
     "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": "Beşiktaş",
     "author_odds": "2.295",
     "market_key": "1x2",
     "choice_key": "2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "1X2, match result: Beşiktaş at 2.29"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Trabzonspor 2-0 Beşiktaş."
    },
    "settlements": [
     {
      "operation_id": "dd3e09bd1e2ee4447699605b0483e3fc4431e57e7c376ca0fba9a9645c410d09",
      "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": "Beşiktaş",
      "decimal_odds": "2.295",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-18T13:37:20.196Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "62b38da77e0b70e16dc78717ca1df0cc40e9cbcbf5d36bc1484d84ddd091b65d",
      "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": "Beşiktaş",
      "decimal_odds": "2.1900",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-22T12:02:57.058Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Fatoumata Coulibaly",
     "publisher": "african-football.com",
     "forecaster": "Fatoumata Coulibaly",
     "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://african-football.com/prognoses/pronostic-trabzonspor-besiktas/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "Beşiktaş to win"
   }
  },
  {
   "record_id": "n-ee5c72d2ed8c7a5b93dffa8d",
   "url": "/authors/fatoumata-coulibaly/picks/4/#pick-n-ee5c72d2ed8c7a5b93dffa8d",
   "match": "Trabzonspor v Beşiktaş",
   "match_url": "/football/matches/trabzonspor-vs-besiktas-2026-10-19/",
   "kickoff": "2026-10-19T17:00:00.000Z",
   "competition": "Süper Lig",
   "lead_hours": 55.2,
   "market_code": "double_chance",
   "author_said": "Double chance: draw or Beşiktaş at 1.43",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "2-0",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "author_price",
   "series_short": "author's odds",
   "author_price": "1.431",
   "settled_price": "1.431",
   "published_at": "2026-10-17T09:00:00.000Z",
   "recorded_at": "2026-10-17T09:50:41.266Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-ee5c72d2ed8c7a5b93dffa8d",
    "quote_text": "Double chance 2X @1.431",
    "fragment_from": 661,
    "fragment_to": 684,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://african-football.com/prognoses/pronostic-trabzonspor-besiktas/",
     "display_name": null,
     "speaker": "Fatoumata Coulibaly",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "75bb04a0b8f8a08b92b558f57c8c78b8acc3ae90d0b6bb47aaeefc4909b0f256",
     "material_removed": false
    },
    "published_at": "2026-10-17T09:00:00.000Z",
    "detected_at": "2026-10-17T09:50:41.266Z",
    "executed_at": "2026-10-18T13:37:20.464Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-50d7f8d2dd2c",
     "display_name": "Trabzonspor — Beşiktaş",
     "competition_name": "Süper Lig",
     "starts_at": "2026-10-19T17:00:00.000Z",
     "url": "/football/matches/trabzonspor-vs-besiktas-2026-10-19/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "Double chance",
    "outcome_label": "draw or Beşiktaş",
    "odds_set": {
     "by_author": "1.431",
     "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": "2026-10-17T09:00:00.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-17T09:00:00.000Z",
     "detected_at": "2026-10-17T09:50:41.266Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Double chance",
     "choice": "draw or Beşiktaş",
     "author_odds": "1.431",
     "market_key": "double_chance",
     "choice_key": "X2",
     "period": "match",
     "line": null,
     "subject": "goals_total",
     "in_words": "Double chance: draw or Beşiktaş at 1.43"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Trabzonspor 2-0 Beşiktaş."
    },
    "settlements": [
     {
      "operation_id": "140105c982fdfc0665f2e4c50547e5038e0db8bc145b54102adf4790d155c212",
      "series_key": "author_price",
      "series_label": "At the author's stated price",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Double chance",
      "choice": "draw or Beşiktaş",
      "decimal_odds": "1.431",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-18T13:37:20.464Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "b2adbb56ab75eb96f43f125b21293727fd53f50bb999de613c1573349c51b9df",
      "series_key": "market_price",
      "series_label": "At an independent odds snapshot",
      "derived": false,
      "site_simulation": true,
      "author_words": true,
      "market_label": "Double chance",
      "choice": "draw or Beşiktaş",
      "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": "Fatoumata Coulibaly",
     "publisher": "african-football.com",
     "forecaster": "Fatoumata Coulibaly",
     "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://african-football.com/prognoses/pronostic-trabzonspor-besiktas/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "draw or Beşiktaş"
   }
  },
  {
   "record_id": "n-f8ae0d46b7bae2e9655b24b6",
   "url": "/authors/fatoumata-coulibaly/picks/4/#pick-n-f8ae0d46b7bae2e9655b24b6",
   "match": "Trabzonspor v Beşiktaş",
   "match_url": "/football/matches/trabzonspor-vs-besiktas-2026-10-19/",
   "kickoff": "2026-10-19T17:00:00.000Z",
   "competition": "Süper Lig",
   "lead_hours": 55.2,
   "market_code": "total",
   "author_said": "Over/Under 2.5 goals: over 2.5 at 1.49",
   "quote": null,
   "group": "settled",
   "outcome": "Lost",
   "claim_outcome": "Lost",
   "final_score": "2-0",
   "reason": null,
   "reason_code": null,
   "points_hundredths": -10000,
   "series_code": "market_price",
   "series_short": "odds snapshot",
   "author_price": "1.49",
   "settled_price": "1.5100",
   "published_at": "2026-10-17T09:00:00.000Z",
   "recorded_at": "2026-10-17T09:50:41.266Z",
   "origin": "Recorded by us before kick-off",
   "record_part": "live",
   "record_part_words": "Recorded before kick-off",
   "in_headline": true,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null,
   "evidence": {
    "observation_id": "n-f8ae0d46b7bae2e9655b24b6",
    "quote_text": "Plus de 2.5 buts @1.49",
    "fragment_from": 687,
    "fragment_to": 709,
    "quote_allowed": true,
    "source_info": {
     "medium": "website",
     "url": "https://african-football.com/prognoses/pronostic-trabzonspor-besiktas/",
     "display_name": null,
     "speaker": "Fatoumata Coulibaly",
     "authorship": "channel_owner",
     "media_from_ms": null,
     "bundle_id": "75bb04a0b8f8a08b92b558f57c8c78b8acc3ae90d0b6bb47aaeefc4909b0f256",
     "material_removed": false
    },
    "published_at": "2026-10-17T09:00:00.000Z",
    "detected_at": "2026-10-17T09:50:41.266Z",
    "executed_at": "2026-10-22T12:43:54.032Z",
    "statement_class": "priced",
    "status": "recognised",
    "cause": null,
    "cause_code": null,
    "event": {
     "event_id": "s-50d7f8d2dd2c",
     "display_name": "Trabzonspor — Beşiktaş",
     "competition_name": "Süper Lig",
     "starts_at": "2026-10-19T17:00:00.000Z",
     "url": "/football/matches/trabzonspor-vs-besiktas-2026-10-19/",
     "scoreline": "2-0",
     "condition": "finished"
    },
    "market_label": "Over/Under 2.5 goals",
    "outcome_label": "over 2.5",
    "odds_set": {
     "by_author": "1.49",
     "our_snapshot": "1.5100",
     "our_snapshot_at": "2026-10-17T09:50:36.000Z",
     "our_snapshot_source": "market snapshot",
     "closing": null,
     "closing_source": null
    },
    "stake_hundredths": 10000,
    "result": "loss",
    "simulation_change_hundredths": -10000,
    "bankroll_after_hundredths": null,
    "executed_by": "ours",
    "series_label": "At an independent odds snapshot",
    "withdrawn": false,
    "provenance": "recorded_pre_match",
    "provenance_words": "Recorded by us before kick-off",
    "dates": {
     "fragment_at": "2026-10-17T09:00:00.000Z",
     "fragment_basis": "page",
     "source_page_at": "2026-10-17T09:00:00.000Z",
     "detected_at": "2026-10-17T09:50:41.266Z",
     "archive_snapshot_at": null,
     "flags": [],
     "flag_words": null,
     "rule_version": "1.1"
    },
    "origin": "recorded_before_kickoff",
    "origin_detail": null,
    "origin_words": "Recorded by us before kick-off",
    "added_on": null,
    "late_publication": null,
    "author_claim": {
     "market_label": "Over/Under 2.5 goals",
     "choice": "over 2.5",
     "author_odds": "1.49",
     "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.49"
    },
    "author_claim_outcome": {
     "result": "loss",
     "scoreline": "2-0",
     "data_status": "measured",
     "cause": null,
     "methodology_version": "2.2",
     "in_words": "Lost: the final score was Trabzonspor 2-0 Beşiktaş."
    },
    "settlements": [
     {
      "operation_id": "b996edc1f335480a99a26f311057cc22440366d4043eabc99e76595892d8dafb",
      "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.49",
      "odds_role": "author_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-18T13:37:20.734Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     },
     {
      "operation_id": "836ec1e6b4a8286d8c8c51fcd484da745eb5a3f3b145fedf6acc3b2ec6d90fb9",
      "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.5100",
      "odds_role": "market_price",
      "stake_hundredths": 10000,
      "status": "confirmed",
      "status_text": "Executed",
      "result": "loss",
      "result_words": "Lost",
      "change_hundredths": -10000,
      "executed_at": "2026-10-22T12:43:54.032Z",
      "methodology_version": "2.2",
      "on_claim_market": true,
      "replaced": false
     }
    ],
    "corrections": [],
    "funnel_stage": "settled_pick",
    "authorship": {
     "material_author": "Fatoumata Coulibaly",
     "publisher": "african-football.com",
     "forecaster": "Fatoumata Coulibaly",
     "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://african-football.com/prognoses/pronostic-trabzonspor-besiktas/",
     "excluded_from_individual_summaries": false,
     "verdict_by": null,
     "verdict_line": null
    },
    "correction": null,
    "choice_words": "over 2.5 (Over/Under 2.5 goals)"
   }
  },
  {
   "record_id": "n-19b6ecad19166a87e93b61a7",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Pari recommandé — Les deux équipes marquent, Non @1.81 (risque modéré)",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-17T08:35:45.000Z",
   "recorded_at": "2026-10-17T09:50:42.569Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-54fd8d2bf4952241eee449a6",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Notre pari principal va sur la victoire du KAC à 1.67.",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-17T08:35:45.000Z",
   "recorded_at": "2026-10-17T09:50:42.569Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-873b7d81a47c118e68ae2d14",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Pari valeur — Moins de 2,5 buts @1.76 (risque faible)",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-17T08:35:45.000Z",
   "recorded_at": "2026-10-17T09:50:42.569Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  },
  {
   "record_id": "n-0599d4c30d59431c7213e1ce",
   "url": null,
   "match": null,
   "match_url": null,
   "kickoff": null,
   "competition": null,
   "lead_hours": null,
   "market_code": null,
   "author_said": null,
   "quote": "Pari recommandé — Handicap Kharkiv -1.5 @2.46",
   "group": "excluded",
   "outcome": "Excluded",
   "claim_outcome": null,
   "final_score": null,
   "reason": "",
   "reason_code": "not_supported",
   "points_hundredths": null,
   "series_code": null,
   "series_short": null,
   "author_price": null,
   "settled_price": null,
   "published_at": "2026-10-17T13:26:15.000Z",
   "recorded_at": "2026-10-17T14:21:05.251Z",
   "origin": "Date as stated by the source; no match is linked to this statement",
   "record_part": "unlinked",
   "record_part_words": "Without a match page",
   "in_headline": false,
   "attribution": null,
   "verdict_line": null,
   "price_disputed": null,
   "checked_after_kickoff": false,
   "favourite": null,
   "correction": null
  }
 ],
 "pagination": {
  "per_page": 20,
  "total": 168,
  "pages": 10,
  "page_urls": [
   "/authors/fatoumata-coulibaly/",
   "/authors/fatoumata-coulibaly/picks/2/",
   "/authors/fatoumata-coulibaly/picks/3/",
   "/authors/fatoumata-coulibaly/picks/4/",
   "/authors/fatoumata-coulibaly/picks/5/",
   "/authors/fatoumata-coulibaly/picks/6/",
   "/authors/fatoumata-coulibaly/picks/7/",
   "/authors/fatoumata-coulibaly/picks/8/",
   "/authors/fatoumata-coulibaly/picks/9/",
   "/authors/fatoumata-coulibaly/picks/10/"
  ],
  "groups": {
   "settled": 47,
   "pending": 0,
   "excluded": 121
  },
  "continuation": "by_time",
  "page": 4,
  "first": 41,
  "last": 60,
  "author_url": "/authors/fatoumata-coulibaly/",
  "current": false
 },
 "entity_id": "history:/authors/fatoumata-coulibaly/picks/4/",
 "source_revision": 55
}
