multi_source3-tree.ai 312 Bytes
sink: "{ S[] -> a[] }"
must_source: "{ T[] -> a[]; U[] -> a[] }"
may_source: "{ V[] -> a[] }"
schedule:
  domain: "{ S[]; U[]; T[]; V[] }"
  child:
    sequence:
    - filter: "{ U[]; T[]; V[] }"
      child:
        sequence:
        - filter: "{ T[]; U[] }"
        - filter: "{ V[] }"
    - filter: "{ S[] }"