#!/usr/bin/env python3
"""Content-laag voor Herzieningsvoorstel 003.056 CrVI v3.0.
Gebruikt door generate_herzieningsvoorstel_v3.py; branding via docx_helpers (H)."""
from docx.shared import Pt, Cm, RGBColor
from datetime import datetime

QHSE = "QHSE Manager Koole"
HSEQ_ADV = "HSEQ-adviseur JvG"
COORD = "Uitvoeringscoördinator Koole"
ARST = "Bedrijfsarts (extern)"
DOCBEH = "Documentbeheerder KOO"
LAB = "Extern laboratorium (ISO 17025)"
ORPVT = "OR/PVT Koole"

_P1C = "EF4444"; _P2C = "B45309"; _P3C = "3B82F6"


def prio_col(code):
    n = int(str(code).lstrip("H"))
    if n <= 5: return (_P1C, True)
    if n <= 12: return (_P2C, True)
    return (_P3C, True)


def build_document(out, title, version, datum, author, H, hf, callout, hiaat_kop,
                   prio_status, status_kleur):
    from docx import Document
    from docx.enum.section import WD_ORIENT
    doc = Document()
    H.style_base(doc)
    sec = doc.sections[0]
    sec.orientation = WD_ORIENT.PORTRAIT
    sec.page_width = Cm(21.0); sec.page_height = Cm(29.7)
    sec.left_margin = Cm(2.0); sec.right_margin = Cm(2.0)
    sec.top_margin = Cm(2.2); sec.bottom_margin = Cm(2.0)

    # cover + header/footer
    H.cover(doc, "HERZIENINGSVOORSTEL — v" + version,
            "Chromium VI Exposure Control Procedure 003.056",
            "Volledige herzieningsuitwerking: 5 P1-hiaten, 7 P2-hiaten en 3 P3-aanvullingen",
            [
                ["Project", "2026-audit-koole-chromium-vi"],
                ["Opdrachtgever", "Wintershall"],
                ["Aannemer", "Koole"],
                ["Brondocument", "003.056 Chromium VI Exposure Control Procedure (Rev A / Rev 1)"],
                ["Activiteit", "Decommissioning offshore platform — small piece removal"],
                ["Versie", "v" + version],
                ["Datum", datum],
                ["Auteur", author],
                ["Status", "Definitief — GO voor implementatie Rev. 2, Rev. 3 en Rev. 3+"],
            ])
    hf(doc, "Herzieningsvoorstel 003.056 Chromium VI — v" + version,
       "2026-audit-koole-chromium-vi")

    # 1. doel en context
    H.h1(doc, "1. Doel en Context")
    H.body(doc, "Dit herzieningsvoorstel bundelt de volledige uitwerking van alle bevindingen uit de "
                "compliance audit van de 003.056 Chromium VI Exposure Control Procedure (KOO B.V.) "
                "tegen het Nederlandse arbo-juridisch kader. Versie 1.0 benoemde twaalf hiaten; "
                "versie 3.0 werkt elk hiaat uit tot concreet implementeerbaar maatwerk en voegt "
                "drie aanvullende verbeterpunten toe (P3).")
    H.body(doc, "De audit is uitgevoerd op het brondocument met de vastgestelde "
                "versie-inconsistentie (Rev A van 02-03-2026 versus Rev 1 van 15-04-2026). Deze "
                "inconsistentie is opgenomen als afzonderlijk hiaat (H12) en wordt in de revisie "
                "opgelost [8].")
    callout(doc, "Bevindingen: 5 x P1 (kritiek) — spoedrevisie Rev. 2 vereist  |  7 x P2 "
                 "(verbetering) — Rev. 3  |  3 x P3 (nieuw in v3.0) — Rev. 3+  |  6 onderdelen "
                 "conform — behoud zonder wijziging")

    # 2. prioriteitsmatrix
    H.h1(doc, "2. Prioriteitsmatrix v3.0")
    H.body(doc, "De prioriteitsmatrix bepaalt de volgorde van implementatie. P1-hiaten raken "
                "wettelijke kernverplichtingen (Arbobesluit hoofdstuk 4, afdeling 3) en blokkeren "
                "de rechtsgeldigheid van de procedure [1]; P2-hiaten versterken de werkwijze; "
                "P3-aanvullingen borgen de kwaliteitscyclus.")
    H.make_table(doc,
        ["Prioriteit", "Criterium", "Hiaten", "Actiehorizon", "Revisie", "Status v3.0"],
        [
            ["P1 — Kritiek", "Wettelijke verplichting ontbreekt; blootstellingsrisico niet beheerst", "H1–H5 (5)", "3 werkdagen", "Rev. 2", "Uitgewerkt"],
            ["P2 — Verbetering", "Verplichting aanwezig maar onvolledig uitgewerkt", "H6–H12 (7)", "2 weken", "Rev. 3", "Uitgewerkt"],
            ["P3 — Aanvulling", "Nieuw in v3.0; borging en kwaliteitscyclus", "H13–H15 (3)", "4–6 weken", "Rev. 3+", "Nieuw"],
            ["Conform", "Voldoet aan het juridisch kader", "6 onderdelen", "n.v.t.", "Behoud", "Conform"],
        ],
        widths=[2.6, 5.8, 2.0, 2.2, 1.8, 2.6], size=8.5,
        color_cols={0: prio_status, 5: prio_status})

    # 3. P1-hiaten
    H.h1(doc, "3. P1-Hiaten — Spoedrevisie Rev. 2 (uitwerking v3.0)")

    hiaat_kop(doc, "H1", "Meetstrategie NEN-EN 689/482", "P1 (Kritiek)", "Uitgewerkt in v3.0")
    H.body(doc, "De procedure bevat geen meetstrategie; zonder metingen is de koppeling aan de "
                "wettelijke grenswaarde niet controleerbaar [1][5]. Rev. 2 voegt een volledige "
                "meetstrategie toe met:")
    H.bullet(doc, "baseline-meting bij aanvang en taakmetingen bij elke risicovolle activiteit;", bold_lead="Meetopzet: ")
    H.bullet(doc, "baseline bij aanvang, taakmetingen per activiteit, herhaling na wijziging van de werkomstandigheden;", bold_lead="Meetfrequentie: ")
    H.bullet(doc, "persoonlijke bemonstering 15 minuten (kortdurende taken, NEN-EN 482) en omgevingsbemonstering 4–8 uur;", bold_lead="Bemonsteringsduur: ")
    H.bullet(doc, "toetsing van meetresultaten conform NEN-EN 689 (statistische toets tegen de grenswaarde);", bold_lead="Toetskader: ")
    H.bullet(doc, "QHSE Koole laat de metingen uitvoeren; analyse door een extern ISO 17025-geaccrediteerd laboratorium;", bold_lead="Verantwoordelijke: ")
    H.bullet(doc, "elke meetuitslag wordt getoetst aan en gerapporteerd tegen de wettelijke grenswaarde voor chroom(VI) van 1 µg/m³ [2].", bold_lead="Grenswaardekoppeling: ")
    H.body(doc, "Uitwerking wordt opgenomen in procedureparagraaf 4.2.", italic=True, size=9.5)

    hiaat_kop(doc, "H2", "Arbeidsgezondheidskundig Onderzoek (AGO)", "P1 (Kritiek)", "Uitgewerkt in v3.0")
    H.body(doc, "Voor CMR-stoffen zoals chroom(VI) is het aanbieden van een "
                "arbeidsgezondheidskundig onderzoek verplicht [1]. Rev. 2 voegt toe:")
    H.bullet(doc, "(P)AGO wordt aangeboden vóór aanvang van de werkzaamheden aan alle medewerkers met blootstellingsrisico;")
    H.bullet(doc, "de bedrijfsarts heeft een formele rol: intake en screening, beoordeling van de geschiktheid, periodieke evaluatie en medisch advies;")
    H.bullet(doc, "periodieke gezondheidssurveillance conform het blootstellingsprofiel, met herbeoordeling bij meetresultaten boven 10% van de grenswaarde.")
    H.body(doc, "Uitwerking wordt opgenomen in procedureparagraaf 5.5.", italic=True, size=9.5)

    hiaat_kop(doc, "H3", "Bewaring blootstellingsgegevens (40 jaar)", "P1 (Kritiek)", "Uitgewerkt in v3.0")
    H.body(doc, "Gegevens over blootstelling aan kankerverwekkende stoffen zijn 40 jaar "
                "bewaarplichtig [3]. Rev. 2 voegt toe:")
    H.bullet(doc, "registratieplicht van blootstellingsgegevens: naam medewerker, datum, activiteit, methode, concentratie en duur;")
    H.bullet(doc, "bewaartermijn van 40 jaar na beëindiging van de blootstelling (Arbobesluit art. 4.15);")
    H.bullet(doc, "overdrachtsregeling bij projectafschaling en contractbeëindiging: archivering bij de opdrachtnemer, met notificatie aan de opdrachtgever.")
    H.body(doc, "Uitwerking wordt opgenomen in procedureparagraaf 6.3.", italic=True, size=9.5)

    hiaat_kop(doc, "H4", "RI&E Tox-elementen + vervangingsonderbouwing", "P1 (Kritiek)", "Uitgewerkt in v3.0")
    H.body(doc, "De RI&E-verwijzing dekt de verplichte vastlegging van aard, mate en duur van de "
                "blootstelling niet af en de vervangingsplicht is niet gedocumenteerd [1]. "
                "Rev. 2 voegt toe:")
    H.bullet(doc, "RI&E-registratie met aard, mate en duur van de blootstelling per taak en functie;")
    H.bullet(doc, "expliciete overweging van vervanging en bronmaatregelen vóór afweging van collectieve en individuele bescherming;")
    H.bullet(doc, "substitutieafweging cold cutting versus hot cutting, met risicoanalyse en onderbouwing van de gekozen methode (5M-methode [6]).")
    H.body(doc, "Uitwerking wordt opgenomen in procedureparagrafen 2.1 en 3.1.", italic=True, size=9.5)

    hiaat_kop(doc, "H5", "Lijst blootgestelde werknemers", "P1 (Kritiek)", "Uitgewerkt in v3.0")
    H.body(doc, "Werknemers met blootstelling aan kankerverwekkende stoffen hebben recht op "
                "registratie en inzage [3]. Rev. 2 voegt toe:")
    H.bullet(doc, "registratieplicht van blootgesteld personeel: naam, functie, periode en aard van de werkzaamheden;")
    H.bullet(doc, "inzagerecht voor werknemers in het eigen blootstellingsdossier;")
    H.bullet(doc, "afschriftrecht: de werknemer ontvangt op verzoek een afschrift van de eigen blootstellingsgegevens.")
    H.body(doc, "Uitwerking wordt opgenomen in procedureparagraaf 6.4.", italic=True, size=9.5)

    # 4. P2-hiaten
    H.h1(doc, "4. P2-Hiaten — Verbeteringstraject Rev. 3 (uitwerking v3.0)")

    hiaat_kop(doc, "H6", "Abnormale blootstelling + OR/PVT", "P2", "Uitgewerkt in v3.0")
    H.body(doc, "Bij abnormale blootstelling (calamiteit, overschrijding van de grenswaarde, "
                "afgifte uit installaties) ontbreekt een formeel meldkanaal. Rev. 3 voegt een "
                "formele meldingsprocedure richting ondernemingsraad of "
                "personeelsvertegenwoordiging toe, met een meldingstermijn van 48 uur en "
                "evaluatie van de genomen maatregelen (procedureparagraaf 7.2).")

    hiaat_kop(doc, "H7", "REACH Bijlage XIV — autorisatiecheck", "P2", "Uitgewerkt in v3.0")
    H.body(doc, "Chroom(VI)-verbindingen staan op de autorisatielijst van REACH Bijlage XIV [4]. "
                "Rev. 3 voegt een autorisatiecheck toe voor bijkomend gebruik — waaronder "
                "oppervlaktebehandeling en inzet van producten met chroom(VI) buiten het "
                "goedgekeurde toepassingskader — vóór inkoop en inzet (procedureparagraaf 4.3).")

    hiaat_kop(doc, "H8", "Afvalstroomklassering", "P2", "Uitgewerkt in v3.0")
    H.body(doc, "Chroom(VI)-houdende afvalstromen zijn gevaarlijk afval en vereisen correcte "
                "herkenning en classificatie (Wet milieubeheer / Landelijk Afvalbeheerplan). "
                "Rev. 3 voegt afvalstroomherkenning, classificatie en een "
                "begeleidingsstroomregeling toe (procedureparagraaf 8.2).")

    hiaat_kop(doc, "H9", "Arbo-informatiebladen 67, 31, 18 en 77", "P2", "Uitgewerkt in v3.0")
    H.body(doc, "De referentielijst bevat de relevante arbo-informatiebladen niet. Rev. 3 voegt "
                "toe aan de referentielijst (procedureparagraaf 6): AI-blad 67 "
                "(kankerverwekkende stoffen), AI-blad 31 (gevaarlijke stoffen), AI-blad 18 "
                "(persoonlijke beschermingsmiddelen) en AI-blad 77 (chroom-6) [7].")

    hiaat_kop(doc, "H10", "Beheersregime chroom-6", "P2", "Uitgewerkt in v3.0")
    H.body(doc, "Het beheersregime chroom-6 van de rijksoverheid (Rijkswaterstaat, Defensie, "
                "ProRail, Rijksvastgoedbedrijf) vormt de operationele referentie voor de omgang "
                "met chroom(VI)-houdende coatinglagen. Rev. 3 voegt een operationele uitwerking "
                "toe: herkenning van chroom-6-houdende lagen, werkprotocol bij verstoord "
                "materiaal en registratie van beheersmaatregelen (procedureparagraaf 3.2).")

    hiaat_kop(doc, "H11", "5M-methode + substitutie", "P2", "Uitgewerkt in v3.0")
    H.body(doc, "De 5M-methode (Mens, Middel, Methode, Milieu, Materiaal) uit de arbocatalogi "
                "wordt niet toegepast [6]. Rev. 3 documenteert substitutie- en "
                "bronmaatregeloverwegingen per 5M-dimensie, met expliciete afweging van koude "
                "snijtechnieken als alternatief voor thermisch snijden (procedureparagraaf 2.2).")

    hiaat_kop(doc, "H12", "Documentbeheer Rev A vs Rev 1", "P2", "Uitgewerkt in v3.0")
    H.body(doc, "Het brondocument vermeldt zowel Rev A (02-03-2026) als Rev 1 (15-04-2026) "
                "zonder statusverklaring [8]. Rev. 3 lost de inconsistentie op: één geldige "
                "revisiestatus, volledige revisiehistorie in het documentbeheerblok en "
                "intrekking van de achterhaalde versie (procedureparagraaf 1.0).")

    # 5. P3-aanvullingen
    H.h1(doc, "5. Nieuw in v3.0 — P3-Aanvullingen (Rev. 3+)")

    hiaat_kop(doc, "H13", "Trainingsprogramma", "P3 (Nieuw)", "Nieuw in v3.0")
    H.body(doc, "Rev. 3+ voegt een gestructureerd trainingsprogramma toe:")
    H.bullet(doc, "basistraining chroom-6 bewustzijn voor alle betrokken medewerkers;")
    H.bullet(doc, "specifieke training cold cutting-technieken voor uitvoerend personeel;")
    H.bullet(doc, "fit-test en gebruikerstraining persoonlijke beschermingsmiddelen;")
    H.bullet(doc, "spillresponstraining met jaarlijke herhaling.")

    hiaat_kop(doc, "H14", "Kwaliteitsborging metingen", "P3 (Nieuw)", "Nieuw in v3.0")
    H.body(doc, "Rev. 3+ borgt de betrouwbaarheid van de meetstrategie (H1):")
    H.bullet(doc, "aantoonbare laboratoriumaccreditatie conform ISO 17025 voor alle analyseopdrachten;")
    H.bullet(doc, "kalibratieprocedure en kalibratie-interval voor bemonsteringsapparatuur;")
    H.bullet(doc, "validatieprotocol voor meetdata vóór opname in het blootstellingsregister.")

    hiaat_kop(doc, "H15", "Continue verbetering", "P3 (Nieuw)", "Nieuw in v3.0")
    H.body(doc, "Rev. 3+ institutionaliseert de verbetercyclus:")
    H.bullet(doc, "jaarlijkse periodieke review van de procedure met evaluatie van meetdata;")
    H.bullet(doc, "incidentanalyse en vastlegging van lessons learned;")
    H.bullet(doc, "structurele feedbackloop met de werkvloer via toolboxmeetings.")

    # 6. actieplan
    H.h1(doc, "6. Actieplan — verantwoordelijken en deadlines")
    H.body(doc, "Elk hiaat kent één verantwoordelijke en een concrete deadline. De datums sluiten "
                "aan bij de implementatieroadmap in hoofdstuk 7.")
    H.make_table(doc,
        ["Hiaat", "Actie", "Verantwoordelijke", "Deadline", "Status"],
        [
            ["H1", "Meetstrategie (NEN-EN 689/482) opstellen en in procedure opnemen", QHSE + " + " + LAB, "2026-08-28", "Uitgewerkt in v3.0"],
            ["H2", "(P)AGO-regeling en rol bedrijfsarts vastleggen", QHSE + " + " + ARST, "2026-08-28", "Uitgewerkt in v3.0"],
            ["H3", "Bewaar- en overdrachtsregeling blootstellingsgegevens (40 jr)", QHSE, "2026-08-28", "Uitgewerkt in v3.0"],
            ["H4", "RI&E-toxregistratie en vervangingsonderbouwing opstellen", HSEQ_ADV + " + " + COORD, "2026-08-28", "Uitgewerkt in v3.0"],
            ["H5", "Lijst blootgestelde werknemers + inzage-/afschriftregeling", DOCBEH, "2026-08-28", "Uitgewerkt in v3.0"],
            ["H6", "Formeel meldkanaal abnormale blootstelling naar OR/PVT", QHSE + " + " + ORPVT, "2026-09-08", "Uitgewerkt in v3.0"],
            ["H7", "REACH Bijlage XIV-autorisatiecheck bij bijkomend gebruik", HSEQ_ADV, "2026-09-08", "Uitgewerkt in v3.0"],
            ["H8", "Afvalstroomherkenning en -classificatie toevoegen", QHSE, "2026-09-08", "Uitgewerkt in v3.0"],
            ["H9", "AI-bladen 67, 31, 18, 77 opnemen in referentielijst", DOCBEH, "2026-09-08", "Uitgewerkt in v3.0"],
            ["H10", "Operationele uitwerking beheersregime chroom-6", HSEQ_ADV, "2026-09-08", "Uitgewerkt in v3.0"],
            ["H11", "5M-substitutiedocumentatie uitwerken", HSEQ_ADV + " + " + COORD, "2026-09-08", "Uitgewerkt in v3.0"],
            ["H12", "Rev A/Rev 1-inconsistentie oplossen; revisiehistorie vastleggen", DOCBEH, "2026-09-08", "Uitgewerkt in v3.0"],
            ["H13", "Trainingsprogramma chroom-6 samenstellen en inplannen", QHSE, "2026-10-06", "Nieuw in v3.0"],
            ["H14", "Kwaliteitsborging metingen (ISO 17025, kalibratie, validatie)", QHSE + " + " + LAB, "2026-10-06", "Nieuw in v3.0"],
            ["H15", "Continue verbetercyclus (review, incidentanalyse, feedback)", QHSE, "2026-10-06", "Nieuw in v3.0"],
        ],
        widths=[1.4, 6.6, 4.2, 2.0, 2.8], size=8.0,
        color_cols={0: prio_col, 4: status_kleur})

    # 7. implementation roadmap
    H.h1(doc, "7. Implementation Roadmap")
    H.body(doc, "De roadmap doorloopt vier fasen van 25 augustus tot en met 6 oktober 2026. "
                "Elke fase wordt afgesloten met een goedkeuringsmoment (mijlpaal); de volgende "
                "fase start pas na formele vaststelling van de voorgaande.")
    H.make_table(doc,
        ["Fase", "Periode", "Onderwerpen", "Mijlpaal / oplevering"],
        [
            ["Fase 1 — Spoedrevisie", "25-08 t/m 28-08-2026", "H1–H5 (P1): meetstrategie, AGO, 40-jaar bewaring, RI&E-tox, lijst blootgestelden", "Rev. 2 vastgesteld en verspreid (28-08-2026)"],
            ["Fase 2 — Verbetering", "28-08 t/m 08-09-2026", "H6–H12 (P2): OR/PVT-kanaal, REACH-check, afvalklassering, AI-bladen, beheersregime, 5M, documentbeheer", "Rev. 3 vastgesteld en verspreid (08-09-2026)"],
            ["Fase 3 — Aanvulling", "08-09 t/m 06-10-2026", "H13–H15 (P3): trainingsprogramma, kwaliteitsborging metingen, verbetercyclus", "Rev. 3+ vastgesteld; trainingen gepland (06-10-2026)"],
            ["Fase 4 — Inbedding", "vanaf 06-10-2026", "Uitrol trainingen, eerste periodieke review, evaluatie meetdata", "Jaarlijkse reviewcyclus operationeel"],
        ],
        widths=[3.0, 3.2, 7.2, 3.6], size=8.0)
    H.body(doc, "Tussentijds reviewmoment: 01-09-2026 — de HSEQ-adviseur van JvG Consultancy "
                "toetst de ingevoerde wijzigingen tegen dit voorstel en rapporteert de status aan "
                "de opdrachtgever.")

    # 8. besluit
    H.h1(doc, "8. Besluit en vervolgstappen")
    H.body(doc, "Alle twaalf hiaten uit versie 1.0 zijn in dit voorstel uitgewerkt tot "
                "implementeerbare maatregelen; de drie P3-aanvullingen borgen de kwaliteitscyclus. "
                "De vereiste vervolgstappen:")
    H.bullet(doc, "direct: spoedimplementatie Rev. 2 (H1–H5) vóór 28-08-2026;", bold_lead="1. ")
    H.bullet(doc, "korte termijn: implementatie Rev. 3 (H6–H12) vóór 08-09-2026;", bold_lead="2. ")
    H.bullet(doc, "lange termijn: implementatie Rev. 3+ (H13–H15) vóór 06-10-2026;", bold_lead="3. ")
    H.body(doc, "Eindverantwoordelijk voor de implementatie: QHSE Manager Koole. Reviewdatum: "
                "01-09-2026 (HSEQ-adviseur JvG Consultancy).")
    callout(doc, "Status: GO voor implementatie Rev. 2 + Rev. 3 + Rev. 3+.", kleur="00A859", bg="F0FDF4")

    # 9. versiebeheer
    H.h1(doc, "9. Versiebeheer")
    H.make_table(doc,
        ["Versie", "Datum", "Auteur", "Wijziging"],
        [
            ["v1.0", "2026-08-24", "HSEQ-adviseur JvG", "Eerste herzieningsvoorstel: 12 hiaten geprioriteerd (5 x P1, 7 x P2)"],
            ["v3.0", datum, author, "Volledige uitwerking H1–H12; nieuw: prioriteitsmatrix, P3-aanvullingen H13–H15, actieplan met verantwoordelijken en deadlines, implementation roadmap"],
        ],
        widths=[1.6, 2.4, 4.4, 8.6], size=8.5)

    # bronnen
    H.h1(doc, "Bronnen")
    bronnen = [
        "[1] Arbobesluit (hoofdstuk 4, afdeling 3) — art. 4.2, 4.10, 4.13, 4.15, 4.21",
        "[2] Wettelijke grenswaarde chroom(VI) — 1 µg/m³ (SER), 2026",
        "[3] Arbobesluit art. 4.15 — bewaarplicht blootstellingsgegevens kankerverwekkende stoffen (40 jaar)",
        "[4] REACH Verordening — Bijlage XIV (autorisatie chroom(VI)-verbindingen)",
        "[5] NEN-EN 689 — Werkplekblootstelling: meetstrategie; NEN-EN 482 — eisen meetprocedures",
        "[6] Arbocatalogi — 5M-methode (Mens, Middel, Methode, Milieu, Materiaal)",
        "[7] Arbo-informatiebladen 67, 31, 18 en 77",
        "[8] 003.056 Chromium VI Exposure Control Procedure — Rev A (02-03-2026) / Rev 1 (15-04-2026)",
    ]
    for b in bronnen:
        p = doc.add_paragraph()
        r = p.add_run(b); r.font.size = Pt(9); r.font.name = "Calibri"
        from docx.shared import RGBColor as _RGB
        r.font.color.rgb = _RGB.from_string("374151")
        p.paragraph_format.space_after = Pt(2)

    # metadata
    cp = doc.core_properties
    cp.title = title
    cp.author = author
    cp.created = datetime.now()
    cp.version = version
    cp.subject = "Herzieningsvoorstel 003.056 Chromium VI — Wintershall / Koole"
    cp.keywords = "Chroom VI, CrVI, herzieningsvoorstel, Arbobesluit, REACH, NEN-EN 689"
    cp.last_modified_by = author
    cp.comments = "v" + version + " — gegenereerd via generate_herzieningsvoorstel_v3.py (JvG branding)"

    doc.save(out)
    print("OK aangemaakt: " + out)
    return out
