{
  "schema": 1,
  "reviewedOn": "2026-11-12",
  "timeZone": "Europe/Berlin",
  "allowedLines": [
    "F10",
    "F11",
    "F12",
    "F21",
    "F23",
    "F24"
  ],
  "scope": "Only these six BVG-network public-transport ferry lines. A contractor operating a BVG line does not make it an independent private ferry; a VBB ticket alone does not establish BVG membership. Do not admit other ferry ways or infer service from proximity.",
  "routingPolicy": {
    "timingModel": "One conservative maximum regular headway allowance per boarding plus published average crossing time; not an exact departure timetable or a live-service check.",
    "operatingHoursApproximate": true,
    "hoursDirectionality": "The official line PDFs publish one shared approximate operating span for both directions. Exact first/last departure minutes at each landing have not been established.",
    "requireWithinSpan": "Arrival at boarding plus the full estimated wait plus crossing must remain inside the published operating span. If there is insufficient time, do not offer the ferry.",
    "multiStop": "For a continuous F23 trip, subtract the selected boarding stop cumulativeSeconds from the downstream alighting stop cumulativeSeconds and charge waiting once; do not add a new wait at intermediate stops.",
    "validUntilIsExclusive": true,
    "yearRoundReviewExpiresAt": "2026-12-13T00:00:00+01:00",
    "reviewExpiryMeaning": "A project review cutoff retained from the existing F11 evidence, not a claim that year-round ferries stop operating on this date. Re-review before allowing later travel.",
    "unknownOrExpired": "Fail closed. Unreviewed service, missing approach, changed geometry/access or travel outside reviewed date windows is not a valid ferry crossing.",
    "nextSeason": "No 2027 season, holiday exception, departure or reopening is inferred from a recurring rule.",
    "holidayHandling": "These are the regular day-of-week spans in the line PDFs. Additional public-holiday sailings are not inferred. F24 generic BVG blog wording mentions holidays, but the current specific PDF only publishes Saturday/Sunday and explicitly excludes Monday-Friday.",
    "weatherAndDisruptions": "Fog, ice and other disruptions can suspend operation. The sources are scheduled information and do not guarantee a crossing.",
    "noLiveCheckText": {
      "de": "Warte- und Fahrzeit geschätzt. Keine Live-Prüfung. Prüfe vor der Fahrt den BVG-Fahrplan.",
      "en": "Waiting and crossing times are estimates. No live check. Check the BVG timetable before travelling."
    }
  },
  "sources": [
    {
      "id": "bvg-ferry-network-2026",
      "url": "https://nachgefragt.bvg.de/bvg-faehren/",
      "checkedOn": "2026-11-12",
      "paraphrase": "BVG identifies six lines. F10/F11/F12 run year-round; F21/F23 and the rowing ferry F24 are seasonal. Regular VBB tickets and Deutschlandticket are accepted; additional timetable and fare exceptions apply."
    },
    {
      "id": "bvg-season-summary-2026",
      "url": "https://www.bvg.de/de/unternehmen/medienportal/pressemitteilungen/20260709-mit-der-bvg-ans-wasser",
      "publishedOn": "2026-07-09",
      "checkedOn": "2026-11-12",
      "paraphrase": "Corroborates F10/F11 winter spans, F23/F24 season end dates and ordinary Berlin AB/Deutschlandticket validity. Its prose incorrectly names Spreewiesen as the F23 endpoint; the specific line PDF and directional route data establish Kruggasse, so the route data take precedence."
    },
    {
      "id": "vbb-fare-2026",
      "url": "https://www.vbb.de/fileadmin/user_upload/VBB/Dokumente/Tickets-Abonnements/vbb-tarifbroschuere.pdf",
      "indexUrl": "https://www.vbb.de/tickets/tarifinformationen-services/tarifbroschueren/",
      "validFrom": "2026-08-11",
      "checkedOn": "2026-11-12",
      "location": "Printed page 161 (PDF page index 160), section 1.3.1 Berliner Verkehrsbetriebe (BVG)",
      "paraphrase": "A Berlin short-trip ticket covers one single journey on F11/F12/F21/F23/F24 if the passenger has no other valid ticket. Berlin short-trip tickets are not valid on Wannsee-Kladow (F10)."
    },
    {
      "id": "bvg-f10-timetable",
      "url": "https://www.bvg.de/dam/jcr:e2b24f91-662b-4185-849b-b428598db15e/F10_2025-12-14.pdf",
      "sha256": "fa842646c7fa09691fca2bec8b055a710980acc0ebbede2fb81bec4925ca4f05",
      "validFrom": "2025-12-14",
      "checkedOn": "2026-11-12",
      "paraphrase": "Official BVG line overview: stops, average crossing times, approximate regular operating spans, headways and stated 2026 season dates. Detailed dates/hours are transcribed below; crossing direction data come from the line page public route endpoint."
    },
    {
      "id": "bvg-f11-timetable",
      "url": "https://www.bvg.de/dam/jcr:b4dec176-acef-4109-b1b9-0c4d7732bbe4/F11_2025-12-14.pdf",
      "sha256": "d55fc153666d701774268be93fd1e3377844e767796f420c2ca8ddcdf9e18a22",
      "validFrom": "2025-12-14",
      "checkedOn": "2026-11-12",
      "paraphrase": "Official BVG line overview: stops, average crossing times, approximate regular operating spans, headways and stated 2026 season dates. Detailed dates/hours are transcribed below; crossing direction data come from the line page public route endpoint."
    },
    {
      "id": "bvg-f12-timetable",
      "url": "https://www.bvg.de/dam/jcr:33e3248d-a921-4934-b0b3-8a3f9323f9be/F12_2025-12-14.pdf",
      "sha256": "a62d68b62b8a0bef000ff84acff65c364ec990f48fd33657dde36a155bfa0519",
      "validFrom": "2025-12-14",
      "checkedOn": "2026-11-12",
      "paraphrase": "Official BVG line overview: stops, average crossing times, approximate regular operating spans, headways and stated 2026 season dates. Detailed dates/hours are transcribed below; crossing direction data come from the line page public route endpoint."
    },
    {
      "id": "bvg-f21-timetable",
      "url": "https://www.bvg.de/dam/jcr:4cb5efdd-12c3-4aab-a518-2bafa00aa759/F21_2025-12-14.pdf",
      "sha256": "b7aa6a7633288b1a37e17f96aa05d2fafc1670424fb97b24283eb740ee76ac3b",
      "validFrom": "2025-12-14",
      "checkedOn": "2026-11-12",
      "paraphrase": "Official BVG line overview: stops, average crossing times, approximate regular operating spans, headways and stated 2026 season dates. Detailed dates/hours are transcribed below; crossing direction data come from the line page public route endpoint."
    },
    {
      "id": "bvg-f23-timetable",
      "url": "https://www.bvg.de/dam/jcr:f23c277f-63a7-486a-916f-cc206f93386e/F23_2025-12-14.pdf",
      "sha256": "84373eded83f1d27ca35dc9971bfa56fc68ceb02d7a13e5360f3ab1e74e42f6a",
      "validFrom": "2025-12-14",
      "checkedOn": "2026-11-12",
      "paraphrase": "Official BVG line overview: stops, average crossing times, approximate regular operating spans, headways and stated 2026 season dates. Detailed dates/hours are transcribed below; crossing direction data come from the line page public route endpoint."
    },
    {
      "id": "bvg-f24-timetable",
      "url": "https://www.bvg.de/dam/jcr:5594c9ea-bec3-47f0-9c15-1b4491e5925b/F24_2026-08-23.pdf",
      "sha256": "afd54cea6b789b7c8e1a190abcf4d5141baff32df895c600eb789d2790a392e9",
      "validFrom": "2026-08-23",
      "checkedOn": "2026-11-12",
      "paraphrase": "Official BVG line overview: stops, average crossing times, approximate regular operating spans, headways and stated 2026 season dates. Detailed dates/hours are transcribed below; crossing direction data come from the line page public route endpoint."
    }
  ],
  "services": {
    "F10": {
      "line": "F10",
      "network": "BVG",
      "name": "BVG ferry F10",
      "sourceUrl": "https://www.bvg.de/de/verbindungen/linienuebersicht/f10",
      "departuresUrl": "https://www.bvg.de/de/verbindungen/linienuebersicht/f10",
      "timetableUrl": "https://www.bvg.de/dam/jcr:e2b24f91-662b-4185-849b-b428598db15e/F10_2025-12-14.pdf",
      "sourceIds": [
        "bvg-f10-timetable",
        "vbb-fare-2026",
        "bvg-ferry-network-2026"
      ],
      "validFrom": "2026-11-02T00:00:00+01:00",
      "validUntil": "2026-12-13T00:00:00+01:00",
      "openingHours": "Mo-Fr 06:00-19:00; Sa 07:00-19:00; Su 10:00-17:00",
      "waitSeconds": 3600,
      "crossingSeconds": 1200,
      "estimatedWait": true,
      "ticketKind": "berlin-valid-ticket-no-short-trip",
      "ticketText": {
        "de": "Gültiges Berlin-AB-Ticket, Deutschlandticket oder anderes für F10 gültiges Ticket erforderlich. Kurzstreckentickets gelten hier nicht.",
        "en": "A valid Berlin AB ticket, Deutschlandticket or other ticket valid on F10 is required. Short-trip tickets are not valid here."
      },
      "seasonal": false,
      "statusOnReview": "within-reviewed-winter-pattern",
      "patterns2026": [
        {
          "label": "winter",
          "from": "2026-01-01",
          "throughInclusive": "2026-04-02",
          "openingHours": "Mo-Fr 06:00-19:00; Sa 07:00-19:00; Su 10:00-17:00",
          "headwaySeconds": 3600
        },
        {
          "label": "summer-shoulder",
          "from": "2026-04-03",
          "throughInclusive": "2026-04-30",
          "openingHours": "Mo-Fr 06:00-20:00; Sa 07:00-20:00; Su 09:00-20:00",
          "headwaySeconds": 3600
        },
        {
          "label": "summer",
          "from": "2026-05-01",
          "throughInclusive": "2026-08-30",
          "openingHours": "Mo-Fr 06:00-21:00; Sa 07:00-21:00; Su 09:00-21:00",
          "headwaySeconds": 3600
        },
        {
          "label": "summer-shoulder",
          "from": "2026-08-31",
          "throughInclusive": "2026-11-01",
          "openingHours": "Mo-Fr 06:00-20:00; Sa 07:00-20:00; Su 09:00-20:00",
          "headwaySeconds": 3600
        },
        {
          "label": "winter",
          "from": "2026-11-02",
          "throughInclusive": null,
          "openingHours": "Mo-Fr 06:00-19:00; Sa 07:00-19:00; Su 10:00-17:00",
          "headwaySeconds": 3600
        }
      ],
      "directions": [
        {
          "from": "S Wannsee",
          "to": "Alt-Kladow",
          "sourceUrl": "https://www.bvg.de/.rest/fgi/route/v1/de/50030b14-0b34-40a4-af04-9087e69b71c4",
          "sourceSha256": "5373a5df213ea8c994c7a3b233244f5cb96781ad390343df2e9842a7850cfdf8",
          "stops": [
            {
              "id": "s-wannsee",
              "name": "S Wannsee",
              "cumulativeSeconds": 0,
              "fromPreviousSeconds": 0
            },
            {
              "id": "alt-kladow",
              "name": "Alt-Kladow",
              "cumulativeSeconds": 1200,
              "fromPreviousSeconds": 1200
            }
          ],
          "openingHours": "Mo-Fr 06:00-19:00; Sa 07:00-19:00; Su 10:00-17:00"
        },
        {
          "from": "Alt-Kladow",
          "to": "S Wannsee",
          "sourceUrl": "https://www.bvg.de/.rest/fgi/route/v1/de/50030b14-0b34-40a4-af04-9087e69b71c4_r",
          "sourceSha256": "3e14eefe3f58c8ecb525db9a764ef2cb1c04085b2736bd2d8a8b5b871af07a1c",
          "stops": [
            {
              "id": "alt-kladow",
              "name": "Alt-Kladow",
              "cumulativeSeconds": 0,
              "fromPreviousSeconds": 0
            },
            {
              "id": "s-wannsee",
              "name": "S Wannsee",
              "cumulativeSeconds": 1200,
              "fromPreviousSeconds": 1200
            }
          ],
          "openingHours": "Mo-Fr 06:00-19:00; Sa 07:00-19:00; Su 10:00-17:00"
        }
      ]
    },
    "F11": {
      "line": "F11",
      "network": "BVG",
      "name": "BVG ferry F11",
      "sourceUrl": "https://www.bvg.de/de/verbindungen/linienuebersicht/f11",
      "departuresUrl": "https://www.bvg.de/de/verbindungen/linienuebersicht/f11",
      "timetableUrl": "https://www.bvg.de/dam/jcr:b4dec176-acef-4109-b1b9-0c4d7732bbe4/F11_2025-12-14.pdf",
      "sourceIds": [
        "bvg-f11-timetable",
        "vbb-fare-2026",
        "bvg-ferry-network-2026"
      ],
      "validFrom": "2026-11-02T00:00:00+01:00",
      "validUntil": "2026-12-13T00:00:00+01:00",
      "openingHours": "Mo-Fr 06:00-19:30; Sa-Su 08:00-18:30",
      "waitSeconds": 1200,
      "crossingSeconds": 120,
      "estimatedWait": true,
      "ticketKind": "berlin-short-trip-or-valid-ticket",
      "ticketText": {
        "de": "Gültiges VBB-Ticket oder Deutschlandticket erforderlich. Für eine einzelne Überfahrt gilt auch die Berliner Kurzstrecke.",
        "en": "A valid VBB ticket or Deutschlandticket is required. A Berlin short-trip ticket also covers a single ferry journey."
      },
      "seasonal": false,
      "statusOnReview": "within-reviewed-winter-pattern",
      "patterns2026": [
        {
          "label": "winter",
          "from": "2026-01-01",
          "throughInclusive": "2026-03-29",
          "openingHours": "Mo-Fr 06:00-19:30; Sa-Su 08:00-18:30",
          "headwaySeconds": [
            600,
            1200
          ]
        },
        {
          "label": "summer",
          "from": "2026-03-30",
          "throughInclusive": "2026-11-01",
          "openingHours": "Mo-Fr 06:00-19:30; Sa-Su 08:00-19:00",
          "headwaySeconds": [
            600,
            1200
          ]
        },
        {
          "label": "winter",
          "from": "2026-11-02",
          "throughInclusive": null,
          "openingHours": "Mo-Fr 06:00-19:30; Sa-Su 08:00-18:30",
          "headwaySeconds": [
            600,
            1200
          ]
        }
      ],
      "directions": [
        {
          "from": "Wilhelmstrand",
          "to": "Baumschulenstr./Fähre",
          "sourceUrl": "https://www.bvg.de/.rest/fgi/route/v1/de/77697e04-2abd-40d7-90b2-7be0f18f5fb8",
          "sourceSha256": "48da815de8c364a0564bbc10b83a9c8bd26a41bb6bc468952717afd61c079955",
          "stops": [
            {
              "id": "wilhelmstrand",
              "name": "Wilhelmstrand",
              "cumulativeSeconds": 0,
              "fromPreviousSeconds": 0
            },
            {
              "id": "baumschulenstr-faehre",
              "name": "Baumschulenstr./Fähre",
              "cumulativeSeconds": 120,
              "fromPreviousSeconds": 120
            }
          ],
          "openingHours": "Mo-Fr 06:00-19:30; Sa-Su 08:00-18:30"
        },
        {
          "from": "Baumschulenstr./Fähre",
          "to": "Wilhelmstrand",
          "sourceUrl": "https://www.bvg.de/.rest/fgi/route/v1/de/77697e04-2abd-40d7-90b2-7be0f18f5fb8_r",
          "sourceSha256": "1077bf8fa35991a35a1e8888a1243f815f36c47c6b1f8506e2a8be142e587239",
          "stops": [
            {
              "id": "baumschulenstr-faehre",
              "name": "Baumschulenstr./Fähre",
              "cumulativeSeconds": 0,
              "fromPreviousSeconds": 0
            },
            {
              "id": "wilhelmstrand",
              "name": "Wilhelmstrand",
              "cumulativeSeconds": 120,
              "fromPreviousSeconds": 120
            }
          ],
          "openingHours": "Mo-Fr 06:00-19:30; Sa-Su 08:00-18:30"
        }
      ],
      "headwayDetail": "Weekdays 06:00-06:30 20 min; 06:30-08:00 10 min; 08:00-14:30 20 min; 14:30-17:30 10 min; 17:30-19:30 20 min. Weekends 20 min. Routing deliberately uses 20 min throughout."
    },
    "F12": {
      "line": "F12",
      "network": "BVG",
      "name": "BVG ferry F12",
      "sourceUrl": "https://www.bvg.de/de/verbindungen/linienuebersicht/f12",
      "departuresUrl": "https://www.bvg.de/de/verbindungen/linienuebersicht/f12",
      "timetableUrl": "https://www.bvg.de/dam/jcr:33e3248d-a921-4934-b0b3-8a3f9323f9be/F12_2025-12-14.pdf",
      "sourceIds": [
        "bvg-f12-timetable",
        "vbb-fare-2026",
        "bvg-ferry-network-2026"
      ],
      "validFrom": "2026-11-01T00:00:00+01:00",
      "validUntil": "2026-12-13T00:00:00+01:00",
      "openingHours": "Mo-Fr 06:00-21:00; Sa-Su 08:30-20:00",
      "waitSeconds": 1200,
      "crossingSeconds": 120,
      "estimatedWait": true,
      "ticketKind": "berlin-short-trip-or-valid-ticket",
      "ticketText": {
        "de": "Gültiges VBB-Ticket oder Deutschlandticket erforderlich. Für eine einzelne Überfahrt gilt auch die Berliner Kurzstrecke.",
        "en": "A valid VBB ticket or Deutschlandticket is required. A Berlin short-trip ticket also covers a single ferry journey."
      },
      "seasonal": false,
      "statusOnReview": "within-reviewed-winter-pattern",
      "patterns2026": [
        {
          "label": "winter",
          "from": "2026-01-01",
          "throughInclusive": "2026-03-28",
          "openingHours": "Mo-Fr 06:00-21:00; Sa-Su 08:30-20:00",
          "headwaySeconds": [
            600,
            1200
          ]
        },
        {
          "label": "summer",
          "from": "2026-03-29",
          "throughInclusive": "2026-10-31",
          "openingHours": "Mo-Fr 06:00-21:00; Sa 07:30-20:00; Su 08:30-20:00",
          "headwaySeconds": [
            420,
            480,
            600,
            1200
          ]
        },
        {
          "label": "winter",
          "from": "2026-11-01",
          "throughInclusive": null,
          "openingHours": "Mo-Fr 06:00-21:00; Sa-Su 08:30-20:00",
          "headwaySeconds": [
            600,
            1200
          ]
        }
      ],
      "directions": [
        {
          "from": "Müggelbergallee",
          "to": "Wassersportallee",
          "sourceUrl": "https://www.bvg.de/.rest/fgi/route/v1/de/e9ab1d86-468b-48df-8831-edb357ae1656",
          "sourceSha256": "5f0f9a9ef6178b8514149c87e662782812bc1c24ac3e6b417444fde4e137d61a",
          "stops": [
            {
              "id": "mueggelbergallee",
              "name": "Müggelbergallee",
              "cumulativeSeconds": 0,
              "fromPreviousSeconds": 0
            },
            {
              "id": "wassersportallee",
              "name": "Wassersportallee",
              "cumulativeSeconds": 120,
              "fromPreviousSeconds": 120
            }
          ],
          "openingHours": "Mo-Fr 06:00-21:00; Sa-Su 08:30-20:00"
        },
        {
          "from": "Wassersportallee",
          "to": "Müggelbergallee",
          "sourceUrl": "https://www.bvg.de/.rest/fgi/route/v1/de/e9ab1d86-468b-48df-8831-edb357ae1656_r",
          "sourceSha256": "cfe395b66c7b5b738ba97d8c1c98f71cc7cb0852abfa4e83a9a597617574fc33",
          "stops": [
            {
              "id": "wassersportallee",
              "name": "Wassersportallee",
              "cumulativeSeconds": 0,
              "fromPreviousSeconds": 0
            },
            {
              "id": "mueggelbergallee",
              "name": "Müggelbergallee",
              "cumulativeSeconds": 120,
              "fromPreviousSeconds": 120
            }
          ],
          "openingHours": "Mo-Fr 06:00-21:00; Sa-Su 08:30-20:00"
        }
      ],
      "headwayDetail": "Winter weekdays 06:00-08:30 10 min; 08:30-14:30 20 min; 14:30-16:00 10 min on school days, otherwise 20; 16:00-18:30 10 min; 18:30-21:00 20 min. Weekends 20 min. Summer Tuesday-Friday 07:00-08:00 can be 7/8 min on school days, otherwise 10. Routing deliberately uses 20 min throughout."
    },
    "F21": {
      "line": "F21",
      "network": "BVG",
      "name": "BVG ferry F21",
      "sourceUrl": "https://www.bvg.de/de/verbindungen/linienuebersicht/f21",
      "departuresUrl": "https://www.bvg.de/de/verbindungen/linienuebersicht/f21",
      "timetableUrl": "https://www.bvg.de/dam/jcr:4cb5efdd-12c3-4aab-a518-2bafa00aa759/F21_2025-12-14.pdf",
      "sourceIds": [
        "bvg-f21-timetable",
        "vbb-fare-2026",
        "bvg-ferry-network-2026"
      ],
      "validFrom": "2026-04-03T00:00:00+02:00",
      "validUntil": "2026-11-02T00:00:00+01:00",
      "openingHours": "Tu-Fr 10:00-18:00; Sa-Su 10:00-19:00",
      "waitSeconds": 1800,
      "crossingSeconds": 420,
      "estimatedWait": true,
      "ticketKind": "berlin-short-trip-or-valid-ticket",
      "ticketText": {
        "de": "Gültiges VBB-Ticket oder Deutschlandticket erforderlich. Für eine einzelne Überfahrt gilt auch die Berliner Kurzstrecke.",
        "en": "A valid VBB ticket or Deutschlandticket is required. A Berlin short-trip ticket also covers a single ferry journey."
      },
      "seasonal": true,
      "statusOnReview": "outside-published-season",
      "patterns2026": [
        {
          "label": "season-2026",
          "from": "2026-04-03",
          "throughInclusive": "2026-11-01",
          "openingHours": "Tu-Fr 10:00-18:00; Sa-Su 10:00-19:00",
          "headwaySeconds": 1800
        }
      ],
      "directions": [
        {
          "from": "Krampenburg",
          "to": "Zum Seeblick",
          "sourceUrl": "https://www.bvg.de/.rest/fgi/route/v1/de/41bc3e16-582e-45c4-90e5-3e9bde70fd92",
          "sourceSha256": "81c14eb497d298395927722459dd5535dfad8fe8c50c213f2897b11ab8e6e704",
          "stops": [
            {
              "id": "krampenburg",
              "name": "Krampenburg",
              "cumulativeSeconds": 0,
              "fromPreviousSeconds": 0
            },
            {
              "id": "zum-seeblick",
              "name": "Zum Seeblick",
              "cumulativeSeconds": 420,
              "fromPreviousSeconds": 420
            }
          ],
          "openingHours": "Tu-Fr 10:00-18:00; Sa-Su 10:00-19:00"
        },
        {
          "from": "Zum Seeblick",
          "to": "Krampenburg",
          "sourceUrl": "https://www.bvg.de/.rest/fgi/route/v1/de/41bc3e16-582e-45c4-90e5-3e9bde70fd92_r",
          "sourceSha256": "4b784fe30f0328fe64b7c4370a6906363eb99eeb3a9ffefd492af2d594bf366a",
          "stops": [
            {
              "id": "zum-seeblick",
              "name": "Zum Seeblick",
              "cumulativeSeconds": 0,
              "fromPreviousSeconds": 0
            },
            {
              "id": "krampenburg",
              "name": "Krampenburg",
              "cumulativeSeconds": 420,
              "fromPreviousSeconds": 420
            }
          ],
          "openingHours": "Tu-Fr 10:00-18:00; Sa-Su 10:00-19:00"
        }
      ]
    },
    "F23": {
      "line": "F23",
      "network": "BVG",
      "name": "BVG ferry F23",
      "sourceUrl": "https://www.bvg.de/de/verbindungen/linienuebersicht/f23",
      "departuresUrl": "https://www.bvg.de/de/verbindungen/linienuebersicht/f23",
      "timetableUrl": "https://www.bvg.de/dam/jcr:f23c277f-63a7-486a-916f-cc206f93386e/F23_2025-12-14.pdf",
      "sourceIds": [
        "bvg-f23-timetable",
        "vbb-fare-2026",
        "bvg-ferry-network-2026"
      ],
      "validFrom": "2026-04-03T00:00:00+02:00",
      "validUntil": "2026-11-02T00:00:00+01:00",
      "openingHours": "Tu-Fr 10:00-19:00; Sa-Su 10:00-20:00",
      "waitSeconds": 3600,
      "crossingSeconds": 1500,
      "estimatedWait": true,
      "ticketKind": "berlin-short-trip-or-valid-ticket",
      "ticketText": {
        "de": "Gültiges VBB-Ticket oder Deutschlandticket erforderlich. Für eine einzelne Überfahrt gilt auch die Berliner Kurzstrecke.",
        "en": "A valid VBB ticket or Deutschlandticket is required. A Berlin short-trip ticket also covers a single ferry journey."
      },
      "seasonal": true,
      "statusOnReview": "outside-published-season",
      "patterns2026": [
        {
          "label": "season-2026",
          "from": "2026-04-03",
          "throughInclusive": "2026-11-01",
          "openingHours": "Tu-Fr 10:00-19:00; Sa-Su 10:00-20:00",
          "headwaySeconds": 3600
        }
      ],
      "directions": [
        {
          "from": "Müggelwerderweg",
          "to": "Kruggasse",
          "sourceUrl": "https://www.bvg.de/.rest/fgi/route/v1/de/4b2dce67-be1e-4bd0-b285-586fc481cbf7",
          "sourceSha256": "7150443ce64bd733ed6d82a663bf2a9b5d5d0f0990529091a90c938691864275",
          "stops": [
            {
              "id": "mueggelwerderweg",
              "name": "Müggelwerderweg",
              "cumulativeSeconds": 0,
              "fromPreviousSeconds": 0
            },
            {
              "id": "mueggelhort",
              "name": "Müggelhort",
              "cumulativeSeconds": 600,
              "fromPreviousSeconds": 600
            },
            {
              "id": "neu-helgoland",
              "name": "Neu Helgoland",
              "cumulativeSeconds": 900,
              "fromPreviousSeconds": 300
            },
            {
              "id": "kruggasse",
              "name": "Kruggasse",
              "cumulativeSeconds": 1500,
              "fromPreviousSeconds": 600
            }
          ],
          "openingHours": "Tu-Fr 10:00-19:00; Sa-Su 10:00-20:00"
        },
        {
          "from": "Kruggasse",
          "to": "Müggelwerderweg",
          "sourceUrl": "https://www.bvg.de/.rest/fgi/route/v1/de/4b2dce67-be1e-4bd0-b285-586fc481cbf7_r",
          "sourceSha256": "7e5a657997059bb336549c49e3cf47b600d20d8e841a62fff1998572f182ebd0",
          "stops": [
            {
              "id": "kruggasse",
              "name": "Kruggasse",
              "cumulativeSeconds": 0,
              "fromPreviousSeconds": 0
            },
            {
              "id": "neu-helgoland",
              "name": "Neu Helgoland",
              "cumulativeSeconds": 600,
              "fromPreviousSeconds": 600
            },
            {
              "id": "mueggelhort",
              "name": "Müggelhort",
              "cumulativeSeconds": 900,
              "fromPreviousSeconds": 300
            },
            {
              "id": "mueggelwerderweg",
              "name": "Müggelwerderweg",
              "cumulativeSeconds": 1500,
              "fromPreviousSeconds": 600
            }
          ],
          "openingHours": "Tu-Fr 10:00-19:00; Sa-Su 10:00-20:00"
        }
      ]
    },
    "F24": {
      "line": "F24",
      "network": "BVG",
      "name": "BVG ferry F24",
      "sourceUrl": "https://www.bvg.de/de/verbindungen/linienuebersicht/f24",
      "departuresUrl": "https://www.bvg.de/de/verbindungen/linienuebersicht/f24",
      "timetableUrl": "https://www.bvg.de/dam/jcr:5594c9ea-bec3-47f0-9c15-1b4491e5925b/F24_2026-08-23.pdf",
      "sourceIds": [
        "bvg-f24-timetable",
        "vbb-fare-2026",
        "bvg-ferry-network-2026"
      ],
      "validFrom": "2026-05-01T00:00:00+02:00",
      "validUntil": "2026-10-05T00:00:00+02:00",
      "openingHours": "Sa-Su 11:00-19:00",
      "waitSeconds": 3600,
      "crossingSeconds": 300,
      "estimatedWait": true,
      "ticketKind": "berlin-short-trip-or-valid-ticket",
      "ticketText": {
        "de": "Gültiges VBB-Ticket oder Deutschlandticket erforderlich. Für eine einzelne Überfahrt gilt auch die Berliner Kurzstrecke.",
        "en": "A valid VBB ticket or Deutschlandticket is required. A Berlin short-trip ticket also covers a single ferry journey."
      },
      "seasonal": true,
      "statusOnReview": "outside-published-season",
      "patterns2026": [
        {
          "label": "season-2026",
          "from": "2026-05-01",
          "throughInclusive": "2026-10-04",
          "openingHours": "Sa-Su 11:00-19:00",
          "headwaySeconds": 3600
        }
      ],
      "directions": [
        {
          "from": "Spreewiesen",
          "to": "Kruggasse",
          "sourceUrl": "https://www.bvg.de/.rest/fgi/route/v1/de/d1e1f373-afb0-4599-9e8c-06d0682ddf16",
          "sourceSha256": "41d15193ecbd5e015f455fc23454cfea136573fef6256bd87dd915af39050fc3",
          "stops": [
            {
              "id": "spreewiesen",
              "name": "Spreewiesen",
              "cumulativeSeconds": 0,
              "fromPreviousSeconds": 0
            },
            {
              "id": "kruggasse",
              "name": "Kruggasse",
              "cumulativeSeconds": 300,
              "fromPreviousSeconds": 300
            }
          ],
          "openingHours": "Sa-Su 11:00-19:00"
        },
        {
          "from": "Kruggasse",
          "to": "Spreewiesen",
          "sourceUrl": "https://www.bvg.de/.rest/fgi/route/v1/de/d1e1f373-afb0-4599-9e8c-06d0682ddf16_r",
          "sourceSha256": "4e3360736f646045c6c12a6149070848b56a665adbc71a5b3c4f687b0d4a87e7",
          "stops": [
            {
              "id": "kruggasse",
              "name": "Kruggasse",
              "cumulativeSeconds": 0,
              "fromPreviousSeconds": 0
            },
            {
              "id": "spreewiesen",
              "name": "Spreewiesen",
              "cumulativeSeconds": 300,
              "fromPreviousSeconds": 300
            }
          ],
          "openingHours": "Sa-Su 11:00-19:00"
        }
      ],
      "sourceConflict": "Generic BVG blog mentions holiday trips; the newer line-specific PDF valid 2026-08-23 states no Monday-Friday sailings. Only its explicit Saturday/Sunday schedule is approved. The PDF carries the complete 2026 season dates but no 2027 dates."
    }
  }
}
