{
  "provenance": {
    "source": "Metkagram",
    "source_url": "https://metkagram.github.io",
    "source_repository": "https://github.com/metkagram/metkagram.github.io",
    "creator": "Metkagram",
    "creator_url": "https://github.com/metkagram",
    "maintainer": "Applied Systems Lab at MetalHatsCats",
    "maintainer_url": "https://metalhatscats.com",
    "license": "CC BY-NC 4.0",
    "license_url": "https://creativecommons.org/licenses/by-nc/4.0/",
    "attribution_required": true,
    "attribution_text": "Source: Metkagram — https://metkagram.github.io/",
    "attribution_html": "Source: <a href=\"https://metkagram.github.io/\">Metkagram</a>",
    "terms_url": "https://metkagram.github.io/en/legal/terms/",
    "privacy_url": "https://metkagram.github.io/en/legal/privacy/",
    "contact_url": "https://metalhatscats.com/contact",
    "collaboration_url": "https://metkagram.github.io/en/ai/#collaborate",
    "dataset_version": "1.0.0+20260715",
    "release_date": "2026-07-15",
    "canonical_url": "https://metkagram.github.io/en/practice/mod001/",
    "record_type": "pattern",
    "record_id": "MOD001",
    "content_hash": "90acafac25a6cbc857fe395377505ca2c55538b8637790d8091df2d59598d08e"
  },
  "data": {
    "id": "MOD001",
    "group_id": "MOD",
    "title_ru": "Ты, должно быть, уже это видел",
    "metaphor_ru": "Как если бы ты открыл дверь и увидел следы — почти точно знаешь, кто здесь уже был.",
    "langs": [
      {
        "lang": "en",
        "formula": "must have + Past Participle",
        "example": "You must have seen this document already.",
        "translation": "Следы на полу: ты, должно быть, уже видел этот документ.",
        "examples": [
          {
            "text": "She **must have forgotten** her keys at home.",
            "translation_ru": "Она, должно быть, забыла ключи дома."
          },
          {
            "text": "They **must have completed** the project on time.",
            "translation_ru": "Они, должно быть, завершили проект вовремя."
          },
          {
            "text": "He **must have been** tired after the trip.",
            "translation_ru": "Он, должно быть, был уставшим после поездки."
          },
          {
            "text": "We **must have missed** the announcement.",
            "translation_ru": "Мы, должно быть, пропустили объявление."
          },
          {
            "text": "I **must have left** my phone at work.",
            "translation_ru": "Я, должно быть, оставил телефон на работе."
          },
          {
            "text": "You **must have heard** the news by now.",
            "translation_ru": "Ты, должно быть, уже слышал новости."
          },
          {
            "text": "The package **must have arrived** yesterday.",
            "translation_ru": "Посылка, должно быть, прибыла вчера."
          },
          {
            "text": "He **must have known** about the meeting.",
            "translation_ru": "Он, должно быть, знал о встрече."
          },
          {
            "text": "They **must have understood** the instructions.",
            "translation_ru": "Они, должно быть, поняли инструкции."
          },
          {
            "text": "It **must have been** a challenging task.",
            "translation_ru": "Это, должно быть, была сложная задача."
          },
          {
            "text": "She **must have seen** this coming.",
            "translation_ru": "Она, должно быть, предвидела это."
          },
          {
            "text": "We **must have taken** the wrong turn.",
            "translation_ru": "Мы, должно быть, свернули не туда."
          }
        ]
      },
      {
        "lang": "de",
        "formula": "müssen + Partizip II + haben",
        "example": "Du musst dieses Dokument schon gesehen haben.",
        "translation": "Ты, должно быть, уже видел этот документ.",
        "examples": [
          {
            "text": "Sie **muss** ihre Schlüssel zu Hause **vergessen haben**.",
            "translation_ru": "Она, должно быть, забыла ключи дома."
          },
          {
            "text": "Sie **müssen** das Projekt rechtzeitig **abgeschlossen haben**.",
            "translation_ru": "Они, должно быть, завершили проект вовремя."
          },
          {
            "text": "Er **muss** nach der Reise müde **gewesen sein**.",
            "translation_ru": "Он, должно быть, был уставшим после поездки."
          },
          {
            "text": "Wir **müssen** die Ankündigung **verpasst haben**.",
            "translation_ru": "Мы, должно быть, пропустили объявление."
          },
          {
            "text": "Ich **muss** mein Handy bei der Arbeit **gelassen haben**.",
            "translation_ru": "Я, должно быть, оставил телефон на работе."
          },
          {
            "text": "Du **musst** die Nachricht inzwischen **gehört haben**.",
            "translation_ru": "Ты, должно быть, уже слышал новости."
          },
          {
            "text": "Das Paket **muss** gestern **angekommen sein**.",
            "translation_ru": "Посылка, должно быть, прибыла вчера."
          },
          {
            "text": "Er **muss** von dem Treffen **gewusst haben**.",
            "translation_ru": "Он, должно быть, знал о встрече."
          },
          {
            "text": "Sie **müssen** die Anweisungen **verstanden haben**.",
            "translation_ru": "Они, должно быть, поняли инструкции."
          },
          {
            "text": "Es **muss** eine herausfordernde Aufgabe **gewesen sein**.",
            "translation_ru": "Это, должно быть, была сложная задача."
          },
          {
            "text": "Sie **muss** das **kommen gesehen haben**.",
            "translation_ru": "Она, должно быть, предвидела это."
          },
          {
            "text": "Wir **müssen** falsch **abgebogen sein**.",
            "translation_ru": "Мы, должно быть, свернули не туда."
          }
        ]
      }
    ],
    "formulas": [
      "must have + Past Participle",
      "müssen + Partizip II + haben"
    ],
    "gen": {
      "status": "generated",
      "iterations": 1,
      "lastGeneratedAt": "2025-09-15T19:48:57.737Z",
      "languages": [
        "en",
        "de"
      ],
      "notes": ""
    },
    "set_id": "MOD"
  }
}
