diff --git a/src/main/java/eu/mulk/aendggner/aenderung/parse/BefehlErkenner.java b/src/main/java/eu/mulk/aendggner/aenderung/parse/BefehlErkenner.java
index 35afabf..dc12398 100644
--- a/src/main/java/eu/mulk/aendggner/aenderung/parse/BefehlErkenner.java
+++ b/src/main/java/eu/mulk/aendggner/aenderung/parse/BefehlErkenner.java
@@ -424,10 +424,13 @@
           "^In der Inhaltsübersicht (?:wird|werden) die Angaben? "
               + "(?:zu den |zu der |zu |zur |zum |von )?(?!«)(.+?) gestrichen\\.$");
 
+  // Neben „wie folgt gefasst“ auch „durch die folgende Angabe ersetzt“ (GVOBl. M-V) — dieselbe
+  // Anweisung in der Wortwahl, die das Handbuch der Rechtsförmlichkeit für Ersetzungen vorsieht.
   private static final Pattern INHALTSUEBERSICHT_NEUFASSUNG =
       Pattern.compile(
           "^In der Inhaltsübersicht (?:wird|werden) die Angaben? "
-              + "(?:zu den |zu der |zu |zur |zum |von )?(?!«)(.+?) wie folgt gefasst: "
+              + "(?:zu den |zu der |zu |zur |zum |von )?(?!«)(.+?) "
+              + "(?:wie folgt gefasst|durch (?:die )?folgende[nrs]? Angaben? ersetzt): "
               + Z
               + "\\.?$");
 
diff --git a/src/main/java/eu/mulk/aendggner/aenderung/parse/TextBereiniger.java b/src/main/java/eu/mulk/aendggner/aenderung/parse/TextBereiniger.java
index e5021a0..4a52a70 100644
--- a/src/main/java/eu/mulk/aendggner/aenderung/parse/TextBereiniger.java
+++ b/src/main/java/eu/mulk/aendggner/aenderung/parse/TextBereiniger.java
@@ -322,6 +322,19 @@
           "[ \\t]*Nr\\. \\d+ Gesetzblatt der Freien Hansestadt Bremen"
               + " vom \\d{1,2}\\. \\p{L}+ \\d{4}[ \\t]*\\d{0,4}[ \\t]*");
 
+  // GVOBl. M-V: Kolumnentitel und Seitenfuß stehen gleichfalls im Inhaltsstrom, und zwar mitten
+  // im Befehlstext („Die Überschrift wird durch die folgende Überschrift ersetzt: Tag der Ausgabe:
+  // Schwerin, den 21. Juli 2026 741Nr. 21 „§ 10 …““). Die Seitenzahl klebt dabei am „Nr.“ der
+  // Heftnummer.
+  private static final Pattern GVOBL_MV_KOPF =
+      Pattern.compile(
+          "[ \\t]*(?:Nr\\. \\d+[ \\t]+)?Tag der Ausgabe: \\p{L}+, den"
+              + " \\d{1,2}\\. \\p{L}+ \\d{4}[ \\t]*\\d{0,4}[ \\t]*(?:Nr\\. \\d+)?[ \\t]*");
+  private static final Pattern GVOBL_MV_FUSS =
+      Pattern.compile(
+          "[ \\t]*\\d{1,4}[ \\t]+Gesetz- und Verordnungsblatt für Mecklenburg-Vorpommern"
+              + " \\d{4}[ \\t]+Nr\\. \\d+[ \\t]*");
+
   // Die Blattzählung des GBl. BW („Seite 2 von 7“) steht im Inhaltsstrom mitunter für sich allein,
   // getrennt vom übrigen Seitenfuß, und zwar zwischen zwei Gliederungspunkten — sie hinge sonst dem
   // vorangehenden Befehl an und machte ihn unkenntlich.
@@ -378,6 +391,8 @@
     text = GBL_BW_FUSS.matcher(text).replaceAll("\n");
     text = GVBL_RP_FUSS.matcher(text).replaceAll("\n");
     text = GBL_HB_KOPF.matcher(text).replaceAll("\n");
+    text = GVOBL_MV_KOPF.matcher(text).replaceAll("\n");
+    text = GVOBL_MV_FUSS.matcher(text).replaceAll("\n");
     var zeilen = entferneKolumnentitel(zerlegeInZeilen(text));
     var verbunden = verbindeUmbrueche(zeilen);
     // Falsch-positive markerlose Zusammenzüge („durch“ + „die“ → „durchdie“) reparieren — die
diff --git a/src/test/java/eu/mulk/aendggner/EndToEndTest.java b/src/test/java/eu/mulk/aendggner/EndToEndTest.java
index 6bb82eb..eead6a0 100644
--- a/src/test/java/eu/mulk/aendggner/EndToEndTest.java
+++ b/src/test/java/eu/mulk/aendggner/EndToEndTest.java
@@ -1851,6 +1851,77 @@
         .containsExactly("§ 22", "§ 29");
   }
 
+  /**
+   * Mecklenburg-Vorpommern: Die Ausbildungs- und Prüfungsordnung amtstierärztlicher Dienst,
+   * geändert durch <em>Artikel 44</em> des Gesetzes über die Anpassung von Besoldungs- und
+   * Beamtenversorgungsbezügen … vom 8. Juli 2026 (GVOBl. M-V Nr. 21 vom 21. Juli 2026, S. 719,
+   * 740).
+   *
+   * <p>Der Fall prüft zweierlei, was bisher kein anderer prüfte. Erstens die <em>Artikelwahl</em>:
+   * Das Heft trägt ein Mantelgesetz mit rund sechzig Artikeln, von denen jeder ein anderes Werk
+   * ändert; gewählt werden muss der eine, der dieses trifft. Zweitens die <em>Inhaltsübersicht als
+   * eigene Norm</em>: Der erste Befehl ändert deren Angabe zu § 10, der siebte die Überschrift des
+   * § 10 selbst — beides muss zusammenpassen.
+   *
+   * <p>Eine Nachfassung gibt es nicht: Die Änderung tritt erst am 1. September 2026 in Kraft, und
+   * das Portal führt allein die geltende Gesamtausgabe. Sie ist eben deshalb die Vorfassung, gegen
+   * die {@code APOAmtsTA-MV-alt.txt} geprüft worden ist (siehe {@code
+   * MecklenburgVorpommern/SOURCES}).
+   */
+  @Test
+  void apoAmtsTaMecklenburgVorpommern() throws Exception {
+    var alt = SAMPLEDATA.resolve("MecklenburgVorpommern/APOAmtsTA-MV-alt.txt");
+    var pdf =
+        SAMPLEDATA.resolve("MecklenburgVorpommern/GVOBl-MV-2026-21_Besoldungsanpassung-ua.pdf");
+    assumeTrue(Files.exists(alt) && Files.exists(pdf), "Mecklenburger Beispieldaten fehlen");
+
+    var gesetz = new eu.mulk.aendggner.gesetz.land.LandesRechtLoader().load(alt);
+    assertThat(gesetz.jurabk()).isEqualTo("APOAmtsTA M-V");
+    // Die Inhaltsübersicht ist eine Norm gleichen Namens; dazu die 28 Paragraphen.
+    assertThat(gesetz.normen()).hasSize(29);
+
+    var text = TextBereiniger.bereinige(new PatchTextExtraktor().extrahiere(pdf));
+    // Kolumnentitel und Seitenfuß stehen im Inhaltsstrom, und zwar mitten im Befehlstext.
+    assertThat(text).doesNotContain("Tag der Ausgabe: Schwerin, den 21. Juli 2026 741");
+
+    var parseErgebnis = new AenderungsgesetzParser().parse(text, gesetz, null);
+    // Aus rund sechzig Artikeln des Mantelgesetzes wird der eine gewählt, der die Verordnung
+    // trifft.
+    assertThat(parseErgebnis.artikel()).containsExactly("44");
+    assertThat(parseErgebnis.befehle()).hasSize(24);
+
+    var anwendung = BefehlAnwender.anwenden(gesetz, parseErgebnis.befehle());
+    assertThat(anwendung.anzahlAngewandt()).isEqualTo(20);
+
+    // Die Nummern 2 und 3 entfallen, die Nummern 4 bis 6 rücken auf 2 bis 4 — ohne Platzhalter,
+    // denn sie stehen am Ende ihres Blockes nicht.
+    var dritter = anwendung.neu().norm("§ 3").orElseThrow().absaetze().get(1).text();
+    assertThat(dritter)
+        .contains("\n  2. Zeugnisse über die tierärztliche Prüfung,")
+        .contains("\n  4. ein Nachweis über die in § 2 Satz 1 Nummer 5 geforderte Tätigkeit.")
+        .doesNotContain("ein aktuelles Lichtbild");
+
+    // Die Überschrift des § 10 und die Angabe zu § 10 in der Inhaltsübersicht gehen zusammen.
+    var zehnter = anwendung.neu().norm("§ 10").orElseThrow();
+    assertThat(zehnter.titel()).isEqualTo("Ausbildungsnachweise");
+    assertThat(zehnter.absaetze().get(0).text())
+        .contains(
+            "einen Ausbildungsnachweis nach Anlage 2 zu fertigen. Diese beinhalten die"
+                + " ausbildungsbegleitenden Leistungskontrollen nach § 8 Satz 2.");
+    assertThat(anwendung.neu().norm("Inhaltsübersicht").orElseThrow().absaetze().get(0).text())
+        .contains("§ 10 | Ausbildungsnachweise");
+
+    // Übrig bleiben allein die vier Befehle, die die Anlagen betreffen: Die Stammfassung führt sie
+    // nicht mit (Tabellen und Vordrucke), und der elfte Befehl verweist auf einen Anhang des
+    // Änderungsgesetzes.
+    var offen =
+        anwendung.protokoll().stream()
+            .filter(a -> a.status() == BefehlAnwender.Status.MANUELL_PRUEFEN)
+            .map(a -> a.befehl().provenienz().gliederungsPfad())
+            .toList();
+    assertThat(offen).containsExactly("10. a)", "10. b)", "10. c)", "11.");
+  }
+
   private static Aenderungsbefehl befehlZu(
       AenderungsgesetzParser.ParseErgebnis ergebnis, String gliederungsPfad) {
     return ergebnis.befehle().stream()
diff --git a/src/test/resources/sampledata/Landesrecht-Beispiele.adoc b/src/test/resources/sampledata/Landesrecht-Beispiele.adoc
index b699243..fa1f7b7 100644
--- a/src/test/resources/sampledata/Landesrecht-Beispiele.adoc
+++ b/src/test/resources/sampledata/Landesrecht-Beispiele.adoc
@@ -116,6 +116,17 @@
 geschlossene Zitate in einem Abschnitt. Voller Belegfall; Vor- *und* Nachfassung stammen aus
 demselben offenen Portal (`transparenz.bremen.de`, Schaltfläche „Frühere Fassungen“).
 
+|Mecklenburg-Vorpommern
+|`MecklenburgVorpommern/GVOBl-MV-2026-21_Besoldungsanpassung-ua.pdf` — GVOBl. M-V 2026 Nr. 21 vom
+21.07.2026, S. 719, 740 (Artikel 44 des Besoldungsanpassungsgesetzes vom 08.07.2026)
+|*Mantelgesetz mit rund sechzig Artikeln*, von denen jeder ein anderes Werk ändert — der schärfste
+Prüfstein der Artikelwahl. Zweispaltiger Satz; Kolumnentitel *und* Seitenfuß stehen im
+Inhaltsstrom, mitten im Befehlstext, und zerschneiden Wörter. Der erste Befehl ändert die
+*Inhaltsübersicht* („die Angabe zu § 10 wird durch die folgende Angabe ersetzt“), der siebte die
+Überschrift des § 10 selbst. Dazu eine Bereichs-Streichung samt Bereichs-Umnummerierung („Die
+Nummern 4 bis 6 werden *zu* den Nummern 2 bis 4“). Belegfall bis zur Anwendung; eine Nachfassung
+gibt es nicht, weil die Änderung erst zum 01.09.2026 in Kraft tritt.
+
 |Hamburg
 |`Hamburg/HmbGVBl-2026-17_GutachterausschussVO-AendVO.pdf` — HmbGVBl. Teil I Nr. 17 vom
 26.05.2026, S. 147 (Verordnung zur Änderung der Verordnung über den Gutachterausschuss für
@@ -202,6 +213,13 @@
 überzähliges Anführungszeichen aus dem Änderungsgesetz; § 93 LMG NRW: zusätzlich die Wörter
 „Film (“ gestrichen) — ÄndGgner wendet dort den Wortlaut an. Damit ist das Heft GV. NRW. 7/2026
 vollständig belegt.
+* *Mecklenburg-Vorpommern* ist umgesetzt (`EndToEndTest.apoAmtsTaMecklenburgVorpommern`): 24
+  Befehle gelesen, 20 angewandt. Liegen bleiben allein die vier, die die Anlagen betreffen — die
+  Stammfassung führt sie nicht mit (Tabellen und Vordrucke), und der letzte verweist auf einen
+  Anhang des ändernden Gesetzes. Der Fall hat zwei Muster für das Gesetzblatt gebracht
+  (`GVOBL_MV_KOPF`, `GVOBL_MV_FUSS`) und eine Nebenform der Inhaltsübersichts-Anweisung („durch die
+  folgende Angabe ersetzt“ neben „wie folgt gefasst“). Die Stammfassung ist gegen die
+  Gesamtausgabe des Portals geprüft, die zum Stichtag noch die Vorfassung ist.
 * *Bremen* ist umgesetzt (`EndToEndTest.berufsfachschulVOBremen`): 41 Befehle gelesen, 37
   angewandt; 26 von 29 Normen gleichen der amtlichen Nachfassung, eine fehlt. Der Fall hat sechs
   allgemeine Funde gebracht: Die *Aufzählungs-Zitatgrenze* darf nicht verlangen, dass der Rest des
@@ -335,7 +353,7 @@
   Baden-Württemberg jede Fassung datierbar ausgeben, fehlt dort. Ohne Vorfassung ist kein
   Akzeptanzfall möglich, sondern nur die Prüfung bis zur Befehlserkennung. Ein Ausweg wäre, die
   Vorfassung aus den *Einzelnormen* mit ihren Stichtagen zusammenzusetzen.
-* Mecklenburg-Vorpommern, Saarland, Sachsen-Anhalt: noch nicht erfasst.
+* Saarland und Sachsen-Anhalt: noch nicht erfasst.
 
 == Wo weitermachen
 
@@ -346,22 +364,22 @@
 Klartext aus. Ein weiteres Land kostet damit Stammfassung, Heft und Nachfassung — keinen eigenen
 Prüfcode mehr. Nach absteigendem Nutzen:
 
-. *Weitere Länder erfassen* — Mecklenburg-Vorpommern, Saarland, Sachsen-Anhalt (Bremen ist seit
-  Welle 25 erfasst). Die Beschaffungswege sind für alle geprüft (26./27.08.2026):
+. *Weitere Länder erfassen* — Saarland und Sachsen-Anhalt (Bremen und Mecklenburg-Vorpommern sind
+  seit Welle 25 erfasst). Die Beschaffungswege sind für alle geprüft (26./27.08.2026):
 +
 --
-Mecklenburg-Vorpommern:: Das Gesetzblatt liegt *frei und skriptlesbar* unter
-`regierung-mv.de/static/Regierungsportal/Justizministerium/Inhalte/Rechtliches/GVOBI.M-V/GVOBl.%20Nr.%20<N>%20v.%20<T.M.JJJJ>.pdf`;
-ein Änderungsgesetz ist damit ohne Browsersteuerung zu haben. Das Portal `landesrecht-mv.de`
-dagegen ist eine juris-Einseitenanwendung (5,6 kB Hülle) und führt — wie Hamburg — *keine*
-Fassungsliste, sondern nur die aktuelle Gesamtausgabe nebst Änderungshistorie; die Adressform
-`…/document/<Kennung>@<JJJJMMTT>` weist es ab. Die Gesamtausgabe nennt immerhin ihren
-Geltungszeitraum („Gesamtausgabe in der Gültigkeit vom 12.06.2026 bis 31.08.2026“), sodass sich
-erkennen lässt, ob sie genau ein Heft trägt. Ein voller Belegfall verlangt deshalb dasselbe wie
-Hamburg: eine Vorschrift, die *genau einmal* geändert worden ist — dann ist die Vorfassung die
-Ursprungsfassung aus dem Gesetzblatt. Der geprüfte Fall (Gesetz zur Änderung der Landesbauordnung
-M-V und des Architekten- und Ingenieurgesetzes, GVOBl. Nr. 16 vom 11.06.2026) taugt dafür nicht:
-Beide Stammgesetze sind vielfach geändert.
+Mecklenburg-Vorpommern:: *Gegangen* (Welle 25). Das Gesetzblatt liegt vollständig und
+skriptlesbar; die Übersicht
+`regierung-mv.de/Landesregierung/jm/service_justizministerium/verkuendungsblaetter/gesetz-verordnungsblaetter/`
+führt die Jahrgänge 2014 bis heute (rund 440 Hefte). Adressform der neueren Hefte:
+`…/GVOBI.M-V/GVOBl.%20Nr.%20<N>%20v.%20<T.M.JJJJ>.pdf` — *Tag und Monat ohne führende Null*, mit
+Null antwortet der Wirt mit 404; die älteren liegen unter `…/GVOBI.M-V/Dateien/…` mit
+uneinheitlichen Namen. Das Portal `landesrecht-mv.de` bleibt eine juris-Einseitenanwendung *ohne*
+Fassungsliste; auch die Adressform `…/document/<Kennung>@<JJJJMMTT>` weist es ab, und selbst die
+Kennung ist nur über die Suche der Anwendung zu erreichen. Die Vorfassung kommt deshalb aus dem
+Gesetzblatt: Nennt der Einleitungssatz die Stammvorschrift *ohne* jede frühere Änderung, so ist die
+Ursprungsfassung beweisbar die Vorfassung. Die aktuelle Gesamtausgabe des Portals taugt dann als
+Gegenprobe — und, solange die Änderung noch nicht in Kraft ist, gerade nicht als Nachfassung.
 Bremen:: *Gegangen* (Welle 25). `transparenz.bremen.de` antwortet einer Skriptabfrage mit
 gewöhnlichem HTML und führt — als drittes offenes Portal nach BRAVORS und recht.nrw.de, und als
 erstes außerhalb Brandenburgs — jede *frühere* Gesamtausgabe einzeln adressierbar: Vorschrift über
@@ -454,5 +472,7 @@
 Befehlen des Artikels 1 und die drei benannten Abweichungen von der Nachfassung; für
 Baden-Württemberg einunddreißig von siebenunddreißig Befehlen und die zwei benannten
 Abweichungen; für Bremen einundvierzig gelesene und siebenunddreißig angewandte Befehle, die
-fehlende Norm und die zwei benannten Abweichungen. Wer eine dieser Zahlen
+fehlende Norm und die zwei benannten Abweichungen; für Mecklenburg-Vorpommern die Wahl des
+vierundvierzigsten Artikels, vierundzwanzig gelesene und zwanzig angewandte Befehle sowie die vier
+namentlich aufgeführten Reste. Wer eine dieser Zahlen
 ändern muss, sollte den Grund im Test vermerken.
diff --git a/src/test/resources/sampledata/MecklenburgVorpommern/APOAmtsTA-MV-alt.txt b/src/test/resources/sampledata/MecklenburgVorpommern/APOAmtsTA-MV-alt.txt
new file mode 100644
index 0000000..32a5bd0
--- /dev/null
+++ b/src/test/resources/sampledata/MecklenburgVorpommern/APOAmtsTA-MV-alt.txt
@@ -0,0 +1,218 @@
+Verordnung über die Ausbildung und Prüfung für den amtstierärztlichen Dienst im zweiten Einstiegsamt der Laufbahngruppe 2 in der Fachrichtung des Gesundheits- und sozialen Dienstes in Mecklenburg-Vorpommern
+(Ausbildungs- und Prüfungsordnung amtstierärztlicher Dienst – APOAmtsTA M-V)
+Vom 2. Juni 2016
+(GVOBl. M-V 2016 S. 491)
+Inhaltsübersicht
+Abschnitt 1  Allgemeine Bestimmungen
+§ 1 | Geltungsbereich und Ziel
+§ 2 | Zulassungsvoraussetzungen
+§ 3 | Bewerbung, Auswahl
+§ 4 | Einstellung, Rechtsstellung
+Abschnitt 2  Ausbildung
+§ 5 | Ausbildungsbehörde, Ausbildungsleitung, Ausbildungsstelle, Ausbilder
+§ 6 | Dauer und Ausbildungsabschnitte des Vorbereitungsdienstes
+§ 7 | Inhalt der Ausbildung
+§ 8 | Leistungsnachweise
+§ 9 | Bewertung der Leistungen
+§ 10 | Befähigungsberichte
+Abschnitt 3  Laufbahnprüfung
+§ 11 | Zulassung zur Laufbahnprüfung
+§ 12 | Inhalt der Prüfung
+§ 13 | Prüfungsausschuss
+§ 14 | Hausarbeit
+§ 15 | Aufsichtsarbeiten
+§ 16 | Kennzeichnung und Abgabe der schriftlichen Arbeiten
+§ 17 | Bewertung der schriftlichen Arbeiten
+§ 18 | Zulassung zur mündlichen Prüfung
+§ 19 | Mündliche Prüfung
+§ 20 | Prüfungsergebnis, Bestehen der Laufbahnprüfung
+§ 21 | Prüfungszeugnis, Befähigungsurkunde
+§ 22 | Wiederholung der Laufbahnprüfung
+§ 23 | Erkrankung, Versäumnis
+§ 24 | Folgen bei Unregelmäßigkeiten
+§ 25 | Prüfungsakte
+§ 26 | Rücknahme der Prüfungsentscheidung
+§ 27 | Nachteilsausgleich
+Abschnitt 4  Schlussvorschriften
+§ 28 | Inkrafttreten, Außerkrafttreten
+Abschnitt 1  Allgemeine Bestimmungen
+§ 1  Geltungsbereich und Ziel
+(1) Diese Verordnung regelt die Ausbildung und Prüfung für den amtstierärztlichen Dienst im zweiten Einstiegsamt der Laufbahngruppe 2 in der Fachrichtung des Gesundheits- und sozialen Dienstes in Mecklenburg-Vorpommern.
+(2) Ziel der Ausbildung im Vorbereitungsdienst ist die Vermittlung von erforderlichen Kenntnissen und Fähigkeiten, die zur Erfüllung der Aufgaben im amtstierärztlichen Dienst befähigen. Die Ausbildung dient der Gewinnung von geeigneten Nachwuchskräften für den amtstierärztlichen Dienst, die den Anforderungen an eine leitende Tätigkeit gewachsen sind.
+§ 2  Zulassungsvoraussetzungen
+Zum amtstierärztlichen Vorbereitungsdienst kann zugelassen werden, wer
+  1. die gesetzlichen Voraussetzungen für die Berufung in das Beamtenverhältnis auf Widerruf erfüllt,
+  2. das Höchstalter gemäß § 18a Absatz 5 des Landesbeamtengesetzes noch nicht überschritten hat,
+  3. ein abgeschlossenes Studium der Veterinärmedizin nachweist,
+  4. die Approbation als Tierärztin oder Tierarzt besitzt,
+  5. eine einjährige hauptberufliche Tätigkeit als Tierärztin oder Tierarzt, davon mindestens sechs Monate in einer tierärztlichen Großtierpraxis, nachweist und
+  6. gesundheitlich geeignet ist.
+Das Ministerium für Landwirtschaft, Umwelt und Verbraucherschutz kann von den in Satz 1 Nummer 5 genannten Voraussetzungen in begründeten Einzelfällen Ausnahmen zulassen.
+§ 3  Bewerbung, Auswahl
+(1) Bewerbungen sind beim Ministerium für Landwirtschaft, Umwelt und Verbraucherschutz einzureichen.
+(2) Der Bewerbung sind beizufügen
+  1. ein Lebenslauf,
+  2. ein aktuelles Lichtbild,
+  3. ein Nachweis der allgemeinen Hochschulreife,
+  4. Zeugnisse über die tierärztliche Prüfung,
+  5. eine Urkunde über die Approbation als Tierärztin oder Tierarzt und gegebenenfalls die Promotionsurkunde,
+  6. ein Nachweis über die in § 2 Satz 1 Nummer 5 geforderte Tätigkeit.
+Nachweise können als Kopien, Zeugnisse und Urkunden als beglaubigte Kopien vorgelegt werden.
+(3) Der Entscheidung über die Einstellung geht ein Auswahlverfahren voraus. Das Ergebnis des Auswahlverfahrens ist der Bewerberin oder dem Bewerber schriftlich mitzuteilen.
+§ 4  Einstellung, Rechtsstellung
+(1) Die nach § 3 ausgewählten Personen haben vor der Einstellung folgende Unterlagen beizubringen:
+  1. ein amtsärztliches Gesundheitszeugnis,
+  2. den Nachweis der deutschen Staatsangehörigkeit im Sinne des Artikels 116 des Grundgesetzes oder der Staatsangehörigkeit eines Mitgliedstaates der Europäischen Union,
+  3. die Geburtsurkunde, gegebenenfalls die Ehe- oder Lebenspartnerschaftsurkunde und Geburtsurkunden der Kinder,
+  4. eine Erklärung über etwaige Vorstrafen oder laufende Ermittlungs- oder Strafverfahren und
+  5. ein Führungszeugnis.
+(2) Einstellungsbehörde ist das Ministerium für Landwirtschaft, Umwelt und Verbraucherschutz. Einstellungstermin ist in der Regel der 1. Oktober eines jeden Jahres.
+(3) Die ausgewählten Personen werden unter Berufung in das Beamtenverhältnis auf Widerruf in den Vorbereitungsdienst eingestellt. Sie führen die Dienstbezeichnung „Veterinärreferendarin“ oder „Veterinärreferendar“.
+(4) Das Beamtenverhältnis endet mit Ablauf des Tages, an dem der Veterinärreferendarin oder dem Veterinärreferendar das Bestehen der Laufbahnprüfung oder das endgültige Nichtbestehen der Laufbahnprüfung bekannt gegeben wurde, frühestens jedoch mit Ablauf des für den Vorbereitungsdienst vorgesehenen Zeitraums.
+Abschnitt 2  Ausbildung
+§ 5  Ausbildungsbehörde, Ausbildungsleitung, Ausbildungsstelle, Ausbilder
+(1) Ausbildungsbehörde ist das Ministerium für Landwirtschaft, Umwelt und Verbraucherschutz. Es führt die Aufsicht über die Ausbildung der Veterinärreferendarinnen und Veterinärreferendare und weist sie den Ausbildungsstellen zu. Die Ausbildungsbehörde bestimmt eine approbierte Tierärztin oder einen approbierten Tierarzt der zuständigen Fachabteilung zur Ausbildungsleiterin oder zum Ausbildungsleiter. Sie oder er ist für die Ausbildung verantwortlich.
+(2) Ausbildungsstellen sind das Ministerium für Landwirtschaft, Umwelt und Verbraucherschutz, das Landesamt für Landwirtschaft, Lebensmittelsicherheit und Fischerei und die Veterinär- und Lebensmittelüberwachungsämter der Landkreise und kreisfreien Städte des Landes Mecklenburg-Vorpommern. Die Ausbildung im Einzelnen obliegt den Ausbildern. Ausbilder sind die Leiterin oder der Leiter der jeweiligen Ausbildungsstelle oder eine von ihr oder ihm beauftragte Person mit entsprechender fachlicher Eignung.
+§ 6  Dauer und Ausbildungsabschnitte des Vorbereitungsdienstes
+(1) Der Vorbereitungsdienst dauert 24 Monate einschließlich der Laufbahnprüfung.
+(2) Der Vorbereitungsdienst gliedert sich in eine berufspraktische und fachtheoretische Ausbildung sowie den Prüfungsabschnitt wie folgt:
+  1. Ministerium für Landwirtschaft, Umwelt und Verbraucherschutz: sieben Monate,
+  2. Veterinär- und Lebensmittelüberwachungsamt eines Landkreises oder einer kreisfreien Stadt: sechs Monate,
+  3. Landesamt für Landwirtschaft, Lebensmittelsicherheit und Fischerei: vier Monate,
+  4. Veterinär- und Lebensmittelüberwachungsamt eines Landkreises oder einer kreisfreien Stadt, Sachgebiet: Schlachttier- und Fleischuntersuchung und Hygieneüberwachung: zwei Monate,
+  5. Fachseminar: drei Monate,
+  6. Prüfungsabschnitt: zwei Monate.
+Die Reihenfolge und Dauer der Ausbildungsabschnitte kann in begründeten Einzelfällen geändert werden. Aus organisatorischen Gründen ist die zeitliche Unterbrechung von Ausbildungsabschnitten, mit Ausnahme der Prüfung, zulässig.
+(3) Der Vorbereitungsdienst kann insbesondere wegen Zeiten längerer Erkrankung, Beurlaubung oder Mutterschutz verlängert werden, wenn diese einen Monat innerhalb eines Ausbildungsjahres überschreiten. Über die Verlängerung entscheidet die Ausbildungsbehörde.
+§ 7  Inhalt der Ausbildung
+(1) Im Vorbereitungsdienst sollen die Veterinärreferendarinnen und Veterinärreferendare einen Überblick über den Aufbau und die Arbeitsweise der öffentlichen Verwaltung erhalten und besonders in den Aufgabenbereichen des Veterinärwesens und der Lebensmittelüberwachung einschließlich ihrer wissenschaftlichen Grundlagen ausgebildet werden.
+(2) In den einzelnen Ausbildungsabschnitten sind die Veterinärreferendarinnen und Veterinärreferendare mit den Aufgaben und der Arbeitsweise der Ausbildungsstelle vertraut zu machen und über die wesentlichen Fach- und Verwaltungsfragen zu unterrichten. Ihnen ist Gelegenheit zu geben, die Ausbildung durch Eigenverantwortlichkeit und selbstständige Tätigkeit zu fördern. Sie sollen die Fähigkeit erwerben, Verwaltungsvorgänge geordnet vorzutragen und schriftlich darzustellen. Hierauf sind sie durch Teilnahme an Beratungen und durch Vorlage von Entwürfen für Berichte, gutachtliche Äußerungen und Verwaltungsmaßnahmen zu schulen.
+(3) Die Einzelheiten der Ausbildungsinhalte für die in § 6 Absatz 2 genannten Ausbildungsabschnitte ergeben sich aus dem Ausbildungsrahmenplan (Anlage 1). Die Anlage 1 ist Bestandteil dieser Verordnung.
+(4) In dem Ausbildungsabschnitt nach § 6 Absatz 2 Nummer 1 ist ein Aktenvortrag durch die Veterinärreferendarin oder den Veterinärreferendar zu halten. In den Ausbildungsabschnitten nach § 6 Absatz 2 Nummer 2 bis 4 ist jeweils ein praktischer oder theoretischer Fall etwa innerhalb eines Tages praxisgerecht schriftlich zu bearbeiten. Die Fallbearbeitungen und der Aktenvortrag sind von der Ausbilderin oder dem Ausbilder zu bewerten, mit der Veterinärreferendarin oder dem Veterinärreferendar zu besprechen und zu den Ausbildungsakten bei der Ausbildungsbehörde zu nehmen.
+§ 8  Leistungsnachweise
+Während der gesamten Ausbildung sind ausbildungsbegleitende Leistungskontrollen zu erbringen. Diese sind schriftliche Arbeiten und der Aktenvortrag (§ 7 Absatz 4). Für die im Rahmen der Abschlussprüfung zu erbringenden Leistungsnachweise gelten die §§ 14 bis 19.
+§ 9  Bewertung der Leistungen
+Die während der Ausbildung einschließlich der Prüfungen gezeigten Leistungen der Veterinärreferendarinnen oder Veterinärreferendare sind mit folgenden Punktzahlen und den sich daraus ergebenden Noten zu bewerten:
+15 bis 14 Punkte = „sehr gut“ (Note 1)
+eine den Anforderungen in beson
+derem Maß entsprechende Leistung,
+13,99 bis 11 Punkte = „gut“ (Note 2)
+eine den Anforderungen voll
+entsprechende Leistung,
+10,99 bis 8 Punkte = „befriedigend“ (Note 3)
+eine den Anforderungen im
+Allgemeinen entsprechende Leistung,
+7,99 bis 5 Punkte = „ausreichend“ (Note 4)
+eine Leistung, die zwar Mängel
+aufweist, aber im Ganzen den
+Anforderungen noch entspricht,
+4,99 bis 0 Punkte = „nicht ausreichend“ (Note 5)
+eine den Anforderungen wegen
+erheblicher Mängel nicht mehr genügende Leistung.
+Punktzahlen sind jeweils auf zwei Dezimalstellen zu berechnen, wobei die dritte Dezimalstelle unberücksichtigt bleibt.
+§ 10  Befähigungsberichte
+(1) Unmittelbar vor Ablauf der Ausbildungsabschnitte haben die Ausbilderinnen und Ausbilder jeweils einen Befähigungsbericht nach Anlage 2 zu fertigen. Die Anlage 2 ist Bestandteil dieser Verordnung. Von der Abgabe eines Befähigungsberichtes kann abgesehen werden, wenn die Ausbildung in der jeweiligen Ausbildungsstation weniger als 20 Arbeitstage dauert. Für das Fachseminar ist kein Befähigungsbericht zu fertigen.
+(2) Die Befähigungsberichte sind den Veterinärreferendarinnen oder Veterinärreferendaren zu eröffnen, mit ihnen zu besprechen und zur Prüfungsakte bei der Ausbildungsbehörde zu nehmen.
+(3) Am Ende des Fachseminars hat die Veterinärreferendarin oder der Veterinärreferendar der Ausbildungsbehörde eine Bescheinigung der Leitung der Ausbildungsstätte über die regelmäßige Teilnahme umgehend vorzulegen.
+Abschnitt 3  Laufbahnprüfung
+§ 11  Zulassung zur Laufbahnprüfung
+(1) Die Veterinärreferendarin oder der Veterinärreferendar ist zur Laufbahnprüfung zugelassen, wenn alle Ausbildungsabschnitte ord-
+nungsgemäß absolviert worden sind und das arithmetische Mittel aus den Punktzahlen aller ausbildungsbegleitenden Leistungskontrollen (§ 7 Absatz 4) mindestens 5 Punkte ergibt. Aus dem Mittelwert der Ergebnisse aller ausbildungsbegleitenden Leistungskontrollen wird die Vornote gebildet.
+(2) Die Feststellung der Zulassung ist der Veterinärreferendarin oder dem Veterinärreferendar durch die Ausbildungsleitung schriftlich bekannt zu geben und es ist eine Kopie zur Prüfungsakte zu nehmen.
+(3) Wird die Veterinärreferendarin oder der Veterinärreferendar zur Laufbahnprüfung nicht zugelassen, kann sie oder er die Leistungskontrollen, die mit weniger als 5 Punkten bewertet worden sind, wiederholen. Die Entscheidung trifft die Ausbildungsleitung.
+(4) Sind auch nach Wiederholung die Voraussetzungen nach Absatz 1 Satz 1 nicht erfüllt, so gilt die Laufbahnprüfung als endgültig nicht bestanden. Die Veterinärreferendarin oder der Veterinärreferendar erhält darüber eine schriftliche Mitteilung, welche die oder der Vorsitzende des Prüfungsausschusses unterzeichnet. Das Beamtenverhältnis endet mit dem Ablauf des Tages, an dem die Veterinärreferendarin oder der Veterinärreferendar die Mitteilung nach Satz 2 erhält.
+§ 12  Inhalt der Prüfung
+(1) Die Prüfung besteht aus der Hausarbeit, den Aufsichtsarbeiten und der mündlichen Prüfung.
+(2) Die Prüfung umfasst:
+  1. Gesetzes- und Verwaltungskunde,
+  2. Tierseuchenbekämpfung und Tiergesundheit,
+  3. Beseitigung tierischer Nebenprodukte,
+  4. Tierschutz,
+  5. Arzneimittelüberwachung und veterinärmedizinische Aspekte in der Futtermittelüberwachung,
+  6. Lebensmittelhygiene und Lebensmittelüberwachung.
+(3) Die Prüfung erstreckt sich auf die im Ausbildungsrahmenplan genannten Inhalte (Anlage 1).
+§ 13  Prüfungsausschuss
+(1) Der Prüfungsausschuss wird bei der Ausbildungsbehörde gebildet und führt die Bezeichnung „Prüfungsausschuss für den amtstierärztlichen Dienst in Mecklenburg-Vorpommern“. Er führt das Landessiegel.
+(2) Der Prüfungsausschuss besteht aus sechs Mitgliedern:
+  1. der leitenden Veterinärbeamtin oder dem leitenden Veterinärbeamten des Landes als Vorsitzende oder Vorsitzender,
+  2. vier Beamtinnen oder Beamten des zweiten Einstiegsamtes der Laufbahngruppe 2 in der Fachrichtung des Gesundheits- und sozialen Dienstes im Bereich des amtstierärztlichen Dienstes, die im Geschäftsbereich des Ministeriums oder in den Veterinär- und Lebensmittelüberwachungsämtern der Landkreise und kreisfreien Städte tätig sind, und
+  3. einer Beamtin oder einem Beamten mit der Befähigung zum Richteramt.
+(3) Die Ausbildungsbehörde bestellt die Mitglieder des Prüfungsausschusses und für jedes dieser Mitglieder eine stellvertretende Person widerruflich. Darüber hinaus können stellvertretende Personen ausnahmsweise bei Verhinderung eines Mitgliedes und seiner Stellvertretung auch für einzelne Prüfungstermine unabhängig von den Regelungen nach Absatz 2 bestellt werden.
+(4) Die oder der Vorsitzende des Prüfungsausschusses bestimmt ihre oder seine Stellvertreterin oder ihren oder seinen Stellvertreter.
+(5) Die oder der Vorsitzende des Prüfungsausschusses leitet die Prüfung und hat insbesondere
+  1. die vorbereitenden Maßnahmen zur Durchführung der Prüfung zu treffen,
+  2. die Prüfungsaufgaben auszuwählen,
+  3. den Ablauf der Prüfung festzusetzen und
+  4. für jede Aufsichtsarbeit zwei Personen zu benennen, die die Arbeit bewerten.
+(6) Der Prüfungsausschuss hat
+  1. eine Bewertungsliste zu führen und die Prüfungsnote festzustellen,
+  2. über das Bestehen der Prüfung zu entscheiden und
+  3. eine Niederschrift über die Prüfung zu fertigen.
+(7) Der Prüfungsausschuss ist beschlussfähig, wenn außer der oder dem Vorsitzenden drei Mitglieder anwesend sind, von denen mindestens ein Mitglied die Befähigung für das zweite Einstiegsamt der Laufbahngruppe 2 in der Fachrichtung des Gesundheits- und sozialen Dienstes im Bereich des amtstierärztlichen Dienstes und mindestens ein Mitglied die Befähigung zum Richteramt besitzt.
+(8) Die Mitglieder des Prüfungsausschusses sind in ihren Entscheidungen unabhängig und nicht an Weisungen gebunden.
+§ 14  Hausarbeit
+(1) Das Thema der Hausarbeit wird der Veterinärreferendarin oder dem Veterinärreferendar am Ende des letzten Ausbildungsabschnittes von der oder dem Vorsitzenden des Prüfungsausschusses zugeteilt.
+(2) Die Hausarbeit ist innerhalb einer Frist von drei Wochen, gerechnet ab dem Tag nach der Aushändigung des Themas, bei der oder dem Vorsitzenden des Prüfungsausschusses vorzulegen. Die Hausarbeit soll 40 Seiten nicht überschreiten. Am Schluss der Arbeit hat die Veterinärreferendarin oder der Veterinärreferendar die benutzten Hilfsmittel anzugeben und zu erklären, dass die Arbeit ohne fremde Hilfe angefertigt wurde.
+(3) Wird die Hausarbeit nicht fristgerecht eingereicht und werden hierfür keine triftigen Gründe geltend gemacht, ist die Prüfung nicht bestanden. Bei Vorliegen triftiger Gründe kann ein neues Thema zugeteilt oder eine angemessene Nachfrist gewährt werden. Krankheit gilt als triftiger Grund, wenn sie unverzüglich durch ein amtsärztliches Attest nachgewiesen wird. Die oder der Vorsitzende des Prüfungsausschusses kann von der Vorlage des amtsärztlichen Attestes absehen, wenn die geltend gemachten Gründe offensichtlich sind.
+§ 15  Aufsichtsarbeiten
+(1) Es sind drei Prüfungsarbeiten an drei Tagen, die möglichst aufeinander folgen sollen, unter Aufsicht zu fertigen. Die drei Aufsichtsarbeiten sind aus den in § 12 Absatz 2 aufgeführten Prüfungsfächern zu fertigen. Für die Bearbeitung jeder Aufsichtsarbeit stehen fünf Stunden zur Verfügung.
+(2) Die oder der Vorsitzende bestimmt die Aufgaben für die Aufsichtsarbeiten aus Vorschlägen der Mitglieder des Prüfungsausschusses. Die Aufgaben sind geheim zu halten und in verschlossenen Umschlägen aufzubewahren, die jeweils zu Beginn der Prüfung in Gegenwart der Prüflinge zu öffnen sind. Mit dem Thema wird auch bestimmt, welche Hilfsmittel bei der Arbeit benutzt werden dürfen.
+(3) Die oder der Vorsitzende des Prüfungsausschusses bestimmt, welche Person die Aufsicht führt. Während der schriftlichen Prüfung darf der Prüfling den Prüfungsraum nur mit Genehmigung der Aufsicht führenden Person verlassen. Es darf sich jeweils nur ein Prüfling außerhalb des Prüfungsraumes aufhalten. Spätestens nach Ablauf der Bearbeitungszeit ist die Aufsichtsarbeit unverzüglich der Aufsicht führenden Person zu übergeben. Eine nicht oder nicht unverzüglich abgegebene Arbeit wird mit 0 Punkten bewertet; Ausnahmen hiervon regelt § 23.
+(4) Unternimmt der Prüfling einen Täuschungsversuch, so wird er von der Fortsetzung der Arbeit nicht ausgeschlossen. Über die weitere Bewertung der Prüfungsarbeit entscheidet der Prüfungsausschuss gemäß § 24.
+(5) Die Aufsicht führende Person kann einen Prüfling, der schuldhaft einen Verstoß gegen die Ordnung (Störung) begeht, von der Fortsetzung der jeweiligen schriftlichen Prüfung ausschließen, wenn das störende Verhalten trotz Ermahnung nicht eingestellt wird.
+(6) Die Aufsicht führende Person fertigt bei besonderen Vorkommnissen eine Niederschrift über den Verlauf der schriftlichen Prüfung an.
+§ 16  Kennzeichnung und Abgabe der schriftlichen Arbeiten
+(1) Falls mehrere Prüflinge teilnehmen, versehen sie die Arbeiten anstelle des Namens mit einer Kennzahl, die vor Aushändigung der Arbeit ausgelost wird. Für jede Prüfungsarbeit ist eine neue Kennzahl zu ziehen, die in einer Niederschrift festzuhalten ist. Die Niederschrift über die Ermittlung der Kennzahl ist bei der Ausbildungsleitung unter Verschluss zu halten.
+(2) Die Aufsicht führende Person verschließt die Arbeiten in einem Umschlag und sendet diesen mit der gegebenenfalls nach § 15 Absatz 6 zu fertigenden Niederschrift unverzüglich an die Vorsitzende oder den Vorsitzenden des Prüfungsausschusses oder an eine von ihr oder ihm bestimmte Person.
+(3) Der Name der Person, die die Arbeit angefertigt hat, darf dem Prüfungsausschuss erst nach Bewertung aller schriftlichen Arbeiten bekannt gegeben werden. Hat ein Mitglied des Prüfungsausschusses Kenntnis von einem Namen im Rahmen der Durchführung des Prüfungsverfahrens oder sonst vorher erlangt, steht dies seiner Mitwirkung nicht entgegen.
+§ 17  Bewertung der schriftlichen Arbeiten
+(1) Jede schriftliche Arbeit ist von zwei Mitgliedern des Prüfungsausschusses, die die oder der Vorsitzende bestimmt, unabhängig voneinander zu bewerten. Alle Arbeiten einer Prüfung zu einem Thema sind von denselben Prüferinnen oder Prüfern zu bewerten. Für die Bewertung der schriftlichen Arbeiten können auch Nichtmitglieder von der oder dem Vorsitzenden bestimmt werden.
+(2) Weichen die Bewertungen um 3 oder mehr Punkte voneinander ab, entscheidet die oder der Vorsitzende des Prüfungsausschusses. Sie oder er ist hierbei an die Entscheidung der beiden Erstbewertenden nicht gebunden. Bei geringeren Abweichungen wird ein Mittelwert gebildet.
+(3) Bei der Bewertung sind insbesondere die sachliche Richtigkeit und die Art der Begründung neben der äußeren Form der Arbeit, der Rechtschreibung und dem sprachlichen Ausdruck zu berücksichtigen. Die Bewertung ist zu begründen.
+(4) Wird eine schriftliche Arbeit ohne triftige Entschuldigung nicht abgegeben oder versäumt, so gilt sie als nicht ausreichend (0 Punkte).
+(5) Die Note für die schriftliche Prüfung wird aus dem arithmetischen Mittel der Punktzahlen für die Hausarbeit und die einzelnen Aufsichtsarbeiten gebildet.
+§ 18  Zulassung zur mündlichen Prüfung
+(1) Die Veterinärreferendarin oder der Veterinärreferendar ist zur mündlichen Prüfung zugelassen, wenn
+  1. nicht mehr als eine der Aufsichtsarbeiten schlechter als „ausreichend“ (5 Punkte) bewertet worden ist,
+  2. die Hausarbeit mindestens mit „ausreichend“ (5 Punkte) bewertet worden ist und
+  3. die Note für die schriftliche Prüfung (§ 17 Absatz 5) mindestens „ausreichend“ (5 Punkte) beträgt.
+(2) Die Feststellung der Zulassung ist der Veterinärreferendarin oder dem Veterinärreferendar schriftlich bekannt zu geben und es ist eine Kopie zur Prüfungsakte zu nehmen.
+(3) Bei Nichtzulassung zur mündlichen Prüfung gilt die Laufbahnprüfung als nicht bestanden.
+§ 19  Mündliche Prüfung
+(1) Die mündliche Prüfung soll spätestens einen Monat nach Beendigung der schriftlichen Prüfung stattfinden. Ort und Zeitpunkt bestimmt die oder der Vorsitzende des Prüfungsausschusses.
+(2) Die mündliche Prüfung beinhaltet einen freien Vortrag und ein Prüfungsgespräch, das sich auf die in § 12 Absatz 2 genannten Fächer erstreckt.
+(3) Der Prüfling hat einen freien Vortrag von zehn bis 15 Minuten Dauer zu halten. Das Thema wird dem Prüfling von der oder dem Vorsitzenden oder einer von ihr oder ihm bestimmten Person vier Tage vor dem Tag der mündlichen Prüfung mitgeteilt.
+(4) Die Prüfungsdauer soll für jedes Prüfungsfach je Prüfling mindestens 20 Minuten und höchstens 45 Minuten betragen.
+(5) Der Prüfungsausschuss bewertet die mündlichen Prüfungsleistungen in den einzelnen Fächern sowie den freien Vortrag. Die Note für die mündliche Prüfung wird aus dem arithmetischen Mittel der Punktzahlen für die einzelnen Fächer und den freien Vortrag gebildet.
+(6) An der mündlichen Prüfung und der anschließenden Beratung des Prüfungsausschusses nimmt die Ausbildungsleiterin oder der Ausbildungsleiter teil; dabei kann sie oder er den Prüfungsausschuss beraten. Der Prüfungsausschuss kann darüber hinaus auch Veterinärreferendarinnen oder Veterinärreferendare der folgenden Jahrgänge als Zuhörer an der mündlichen Prüfung zulassen, sofern keine zu prüfende Person widerspricht.
+(7) Über den Verlauf der mündlichen Prüfung ist für jeden Prüfling eine Niederschrift zu fertigen, die mit dem Ergebnis der Laufbahnprüfung abschließt. Die Niederschrift ist von den Mitgliedern des Prüfungsausschusses zu unterzeichnen und zu den Prüfungsakten zu nehmen.
+§ 20  Prüfungsergebnis, Bestehen der Laufbahnprüfung
+(1) Das Ergebnis der Laufbahnprüfung ermittelt der Prüfungsausschuss aufgrund der während des gesamten Vorbereitungsdienstes erbrachten Leistungen. Es wird in der Niederschrift über den Verlauf der mündlichen Prüfung festgestellt.
+(2) Die Gesamtnote wird aus den Noten der schriftlichen und der mündlichen Prüfung (§ 17 Absatz 5 und § 19 Absatz 5 Satz 2) sowie der Vornote (§ 11 Absatz 1 Satz 2) gebildet. Dabei werden die Vornote mit 30 Prozent und die Noten der schriftlichen und der mündlichen Prüfung mit jeweils 35 Prozent berücksichtigt.
+(3) Der Prüfungsausschuss kann von dem nach Absatz 2 ermittelten Ergebnis um bis zu einem Punkt abweichen, wenn dadurch die Leistung der Veterinärreferendarin oder des Veterinärreferendars unter Berücksichtigung des Vorbereitungsdienstes zutreffender gekennzeichnet wird. Die Abweichung ist in der Prüfungsniederschrift zu begründen.
+(4) Die Laufbahnprüfung ist bestanden, wenn das Prüfungsergebnis mindestens „ausreichend“ (5 Punkte) ist.
+§ 21  Prüfungszeugnis, Befähigungsurkunde
+(1) Nach bestandener Prüfung erhält die Veterinärreferendarin oder der Veterinärreferendar ein Zeugnis nach dem Muster der Anlage 3, die Bestandteil dieser Verordnung ist. Das Zeugnis wird von der oder dem Vorsitzenden des Prüfungsausschusses unterzeichnet.
+(2) Die Veterinärreferendarin oder der Veterinärreferendar erhält von der Ausbildungsbehörde eine Urkunde darüber, dass sie oder er nach dem Bestehen der Laufbahnprüfung die Befähigung für den amtstierärztlichen Dienst im zweiten Einstiegsamt der Laufbahngruppe 2 der Fachrichtung Gesundheits- und soziale Dienste in Mecklenburg-Vorpommern besitzt und berechtigt ist, die Bezeichnung „Veterinärassessorin“ oder „Veterinärassessor“ zu führen (Anlage 4). Die Anlage 4 ist Bestandteil dieser Verordnung.
+(3) Je eine Ausfertigung des Zeugnisses und der Befähigungsurkunde ist zu der Prüfungs- und der Personalakte zu nehmen.
+§ 22  Wiederholung der Laufbahnprüfung
+(1) Ist die Prüfung nicht bestanden, kann sie einmal wiederholt werden. Die Frist bis zur erneuten Prüfung soll mindestens zwei Monate und höchstens sechs Monate betragen. Die Wiederholung der Prüfung soll nur in dem nicht bestandenen Teil, der mündlichen oder der schriftlichen Prüfung, erfolgen. Den Termin der Wiederholung bestimmt die oder der Vorsitzende des Prüfungsausschusses.
+(2) Der Vorbereitungsdienst wird durch die Ausbildungsbehörde entsprechend verlängert. Inhalt und Gestaltung des verlängerten Vorbereitungsdienstes legt die Ausbildungsbehörde fest.
+(3) Wer die Prüfung auch bei Wiederholung nicht besteht, erhält darüber eine schriftliche Mitteilung, die von der oder dem Vorsitzenden des Prüfungsausschusses unterzeichnet wird.
+(4) Das Beamtenverhältnis endet mit Ablauf des Tages, an dem die Veterinärreferendarin oder der Veterinärreferendar eine Mitteilung nach Absatz 3 erhält.
+§ 23  Erkrankung, Versäumnis
+(1) Ist der Prüfling durch Krankheit oder sonstige von ihm nicht zu vertretende Umstände gehindert, zur Prüfung zu erscheinen oder die Prüfung vollständig abzulegen, so hat er die Hinderungsgründe in geeigneter Form glaubhaft zu machen. Im Fall der Erkrankung ist ein amtsärztliches Zeugnis vorzulegen. Die oder der Vorsitzende des Prüfungsausschusses kann von der Vorlage des Zeugnisses absehen, wenn die Erkrankung offensichtlich ist. Die Prüfung ist in angemessener Zeit nachzuholen.
+(2) Bricht der Prüfling aus den in Absatz 1 genannten Gründen Prüfungsteile ab, so entscheidet der Prüfungsausschuss, welche der bereits erbrachten Prüfungsleistungen als gültig anzusehen sind. Die oder der Vorsitzende des Prüfungsausschusses bestimmt den Zeitpunkt und die Aufgaben für nachzuholende Prüfungsteile.
+(3) Erscheint der Prüfling ohne triftige Entschuldigung zu einem Prüfungstermin nicht, so gilt der Prüfungsteil als nicht bestanden. Diese Feststellung trifft der Prüfungsausschuss.
+§ 24  Folgen bei Unregelmäßigkeiten
+Begeht der Prüfling einen Täuschungsversuch oder schuldhaft eine Störung, kann der Prüfungsausschuss je nach Schwere der Verfehlung die Wiederholung der betreffenden Prüfung anordnen, die betreffende Prüfungsleistung mit „nicht ausreichend“ (0 Punkte) bewerten oder die gesamte Prüfung für nicht bestanden erklären.
+§ 25  Prüfungsakte
+(1) Die Prüfungsunterlagen (Hausarbeiten, schriftliche Aufsichtsarbeiten, Niederschriften und andere Unterlagen, die das Prüfungsverfahren betreffen) verbleiben als Prüfungsakte beim Ministerium für Landwirtschaft, Umwelt und Verbraucherschutz.
+(2) Auf Antrag kann der Prüfling innerhalb eines Jahres nach Abschluss der Laufbahnprüfung oder nach dem endgültigen Nichtbestehen der Prüfung seine Prüfungsakte einsehen. Die Einsichtnahme erfolgt unter Aufsicht und ist aktenkundig zu machen.
+§ 26  Rücknahme der Prüfungsentscheidung
+Wird innerhalb einer Frist von drei Jahren nach der Aushändigung des Prüfungszeugnisses eine Täuschungshandlung bekannt, so kann die Ausbildungsbehörde gemäß § 24 die Prüfung für nicht bestanden erklären und das Prüfungszeugnis einziehen. Diese Entscheidung ist nur innerhalb einer Frist von sechs Monaten zulässig, nachdem die Ausbildungsbehörde von dem ihr zu Grunde liegenden Tatbestand Kenntnis erlangt hat. Die Entscheidung ist der oder dem Betroffenen zuzustellen.
+§ 27  Nachteilsausgleich
+Für Veterinärreferendarinnen und Veterinärreferendare mit Behinderungen sind auf Antrag zur Wahrung ihrer Chancengleichheit geeignete Maßnahmen zum Ausgleich behinderungsbedingter Nachteile zu gewähren. Über Nachteilsausgleiche, die die theoretische und praktische Ausbildung sowie die Leistungsnachweise betreffen, entscheidet die Ausbildungsleitung. Über Nachteilsausgleiche, die die Prüfung betreffen, entscheidet der Prüfungsausschuss gemäß der Schwerbehindertenrichtlinie Mecklenburg-Vorpommern.
+Abschnitt 4  Schlussvorschriften
+§ 28  Inkrafttreten, Außerkrafttreten
+Diese Verordnung tritt am 1. Oktober 2016 in Kraft. Gleichzeitig tritt die Ausbildungs- und Prüfungsordnung höherer Veterinärdienst vom 29. Dezember 1997 (GVOBl. M-V 1998 S. 85), die zuletzt durch Artikel 3 Absatz 8 des Gesetzes vom 1. Dezember 2008 (GVOBl. M-V S. 461, 464) geändert worden ist, außer Kraft.
diff --git a/src/test/resources/sampledata/MecklenburgVorpommern/GVOBl-MV-2026-21_Besoldungsanpassung-ua.pdf b/src/test/resources/sampledata/MecklenburgVorpommern/GVOBl-MV-2026-21_Besoldungsanpassung-ua.pdf
new file mode 100644
index 0000000..662b756
--- /dev/null
+++ b/src/test/resources/sampledata/MecklenburgVorpommern/GVOBl-MV-2026-21_Besoldungsanpassung-ua.pdf
Binary files differ
diff --git a/src/test/resources/sampledata/MecklenburgVorpommern/SOURCES b/src/test/resources/sampledata/MecklenburgVorpommern/SOURCES
new file mode 100644
index 0000000..f821362
--- /dev/null
+++ b/src/test/resources/sampledata/MecklenburgVorpommern/SOURCES
@@ -0,0 +1,88 @@
+Beispieldaten Mecklenburg-Vorpommern — Herkunft und Aufbereitung
+================================================================
+
+1. Änderungsdokument
+   GVOBl-MV-2026-21_Besoldungsanpassung-ua.pdf
+   Gesetz- und Verordnungsblatt für Mecklenburg-Vorpommern 2026 Nr. 21,
+   ausgegeben in Schwerin am 21. Juli 2026: Gesetz über die Anpassung von
+   Besoldungs- und Beamtenversorgungsbezügen und zur Änderung dienstrechtlicher
+   Vorschriften des Landes Mecklenburg-Vorpommern vom 8. Juli 2026 (S. 719).
+   Maßgeblich ist dessen **Artikel 44** (S. 740): Änderung der Ausbildungs- und
+   Prüfungsordnung amtstierärztlicher Dienst.
+   Bezogen über
+   https://www.regierung-mv.de/static/Regierungsportal/Justizministerium/Inhalte/
+   Rechtliches/GVOBI.M-V/GVOBl.%20Nr.%2021%20v.%2021.7.2026.pdf
+   (abgerufen am 27.08.2026).
+
+   Zum Blatt: Das Gesetzblatt liegt vollständig und ohne Anmeldung beim
+   Justizministerium; die Übersicht
+   https://www.regierung-mv.de/Landesregierung/jm/service_justizministerium/
+   verkuendungsblaetter/gesetz-verordnungsblaetter/ führt die Jahrgänge 2014 bis
+   heute (rund 440 Hefte). Die Adressform der neueren Hefte lautet
+   `…/GVOBI.M-V/GVOBl.%20Nr.%20<N>%20v.%20<T.M.JJJJ>.pdf` — **Tag und Monat ohne
+   führende Null**; mit Null antwortet der Wirt mit 404. Die älteren Jahrgänge
+   liegen unter `…/GVOBI.M-V/Dateien/…` mit uneinheitlichen Dateinamen; die
+   Übersichtsseite nennt sie.
+
+2. Stammfassung (vor der Änderung)
+   APOAmtsTA-MV-alt.txt
+   Verordnung über die Ausbildung und Prüfung für den amtstierärztlichen Dienst im
+   zweiten Einstiegsamt der Laufbahngruppe 2 in der Fachrichtung des Gesundheits-
+   und sozialen Dienstes in Mecklenburg-Vorpommern (APOAmtsTA M-V) vom 2. Juni
+   2016, GVOBl. M-V 2016 S. 491, in ihrer Ursprungsfassung.
+
+   Der Einleitungssatz des Artikels 44 nennt die Verordnung ohne jede frühere
+   Änderung („Die Ausbildungs- und Prüfungsordnung amtstierärztlicher Dienst vom
+   2. Juni 2016 (GVOBl. M-V S. 491) wird wie folgt geändert“). Die Vorfassung ist
+   damit beweisbar die Ursprungsfassung, und die steht im Gesetzblatt selbst:
+   GVOBl. M-V 2016 Nr. 12 vom 29. Juni 2016, S. 491
+   (…/GVOBI.M-V/Dateien/GVOBl_1245663.pdf).
+
+   Aufbereitet mit `--extract-only` des Erzeugnisses (der zweispaltige Satz des
+   Blattes verlangt dessen Lesereihenfolge) und mit dem Skript `clean_mv.py` in
+   die kanonische Form gebracht. Drei Eigenheiten waren dabei zu beachten:
+   - Die Lesereihenfolge setzt die *Inhaltsübersicht* (rechte Spalte der ersten
+     Seite) zwischen den Anfang des Textes (linke Spalte) und dessen Fortsetzung;
+     die drei Stücke sind einzeln zu entnehmen und neu zu ordnen.
+   - Kolumnentitel und Seitenfuß stehen im Inhaltsstrom und zerschneiden Wörter
+     („… alle Ausbildungsabschnitte ord-“ / Fußzeile / „nungsgemäß absolviert“);
+     nur an der Schnittstelle ist der Trennstrich eine Silbentrennung.
+   - Normkopf und Titel stehen auf getrennten Zeilen, der erste Absatz kann am
+     Titel kleben, und ein umbrochener Titel endet auf ein Komma.
+
+   Gegenprobe: Das Portal `landesrecht-mv.de` führt zum Stichtag dieser Welle
+   (27.08.2026) genau diese Fassung als *aktuelle* Gesamtausgabe („Gesamtausgabe
+   in der Gültigkeit vom 01.10.2016 bis 31.08.2026“). Ihr Wortlaut ist über die
+   Browsersteuerung Norm für Norm gegen die hier abgelegte Fassung gehalten
+   worden.
+
+3. Nachfassung — es gibt keine
+   Artikel 44 tritt erst am 1. September 2026 in Kraft. Das Portal führt allein
+   die geltende Gesamtausgabe; eine künftige Fassung gibt es dort nicht, und die
+   Adressform `…/document/<Kennung>@<JJJJMMTT>` weist es ab (geprüft). Der Fall
+   reicht deshalb — wie der thüringische — bis zur Anwendung, nicht bis zum
+   normweisen Abgleich.
+
+4. Was der Fall trägt
+   - Die *Artikelwahl* in einem Mantelgesetz mit rund sechzig Artikeln, von denen
+     jeder ein anderes Werk ändert. Kein anderer Belegfall prüft sie so scharf.
+   - Die *Inhaltsübersicht als eigene Norm*: Der erste Befehl ändert die Angabe zu
+     § 10, der siebte die Überschrift des § 10 selbst.
+   - Die Wortwahl „die Angabe zu § 10 wird durch die folgende Angabe ersetzt“
+     neben dem geläufigen „wie folgt gefasst“.
+   - Eine Bereichs-Streichung samt Bereichs-Umnummerierung („Die Nummern 2 und 3
+     werden gestrichen“, „Die Nummern 4 bis 6 werden zu den Nummern 2 bis 4“) —
+     mit „werden zu“ statt „werden“.
+   - Kolumnentitel *und* Seitenfuß im Inhaltsstrom, mitten im Befehlstext.
+   - Hochgestellte Fußnotenziffern an den Artikel-Überschriften des Mantelgesetzes
+     („Änderung der … amtstierärztlicher Dienst⁴⁴“).
+
+5. Benannte Grenzen
+   Vier der 24 Befehle bleiben liegen, sämtlich die *Anlagen* betreffend:
+   Nummer 10 Buchstaben a bis c ändern die Anlage 1 (Ausbildungsrahmenplan) über
+   deren „Ausbildungsabschnitte“, Nummer 11 ersetzt die Anlage 2 durch eine
+   Fassung, die im *Anhang des Änderungsgesetzes* steht. Die Anlagen sind
+   Tabellen und Vordrucke; der kanonische Klartext hat für sie keine Form, und
+   sie sind in der Stammfassung deshalb nicht mitgeführt. Der Verweis auf einen
+   Anhang des ändernden Gesetzes ist überdies eine Form, die das Erzeugnis nicht
+   auflöst.
