# Nested wildcards with constraints
# Tests complex wildcard patterns with regex constraints

wildcard_constraints:
    sample="[A-Z][0-9]+",
    lane="L[0-9]+",
    read="R[12]"

SAMPLES = ["A1", "A2", "B1"]
LANES = ["L001", "L002"]
READS = ["R1", "R2"]

rule all:
    input:
        expand("output/{sample}/{lane}_{read}.processed.txt",
               sample=SAMPLES, lane=LANES, read=READS)

rule process_read:
    output:
        "output/{sample}/{lane}_{read}.processed.txt"
    shell:
        """
        mkdir -p output/{wildcards.sample}
        echo "Sample: {wildcards.sample}" > {output}
        echo "Lane: {wildcards.lane}" >> {output}
        echo "Read: {wildcards.read}" >> {output}
        """
