root:
             version = v1
             creates   file:./
             creates   file:plan.py
             creates   step:./plan.py

file:plan.py
                path = plan.py
               state = STATIC
          created by   root:
            consumes   file:./
            supplies   step:./plan.py

file:./
                path = ./
               state = STATIC
          created by   root:
            supplies   file:conv2.txt
            supplies   file:inp2.txt
            supplies   file:plan.py
            supplies   file:step.py
            supplies   file:subs1.txt
            supplies   file:subs2.txt
            supplies   file:subs3.txt
            supplies   step:./plan.py
            supplies   step:./step.py subs1.txt > subs2.txt
            supplies   step:./step.py subs2.txt > subs3.txt
            supplies   step:cp -aT inp2.txt conv2.txt

step:./plan.py
             workdir = ./
             command = ./plan.py
               state = SUCCEEDED
                 ngm = ['inp*.txt'] {}
       extended hash = yes
          created by   root:
            consumes   file:./
            consumes   file:plan.py
             creates   file:inp2.txt
             creates   file:step.py
             creates   file:subs1.txt
             creates   step:./step.py subs1.txt > subs2.txt
             creates   step:./step.py subs2.txt > subs3.txt
             creates   step:cp -aT inp2.txt conv2.txt

file:step.py
                path = step.py
               state = STATIC
          created by   step:./plan.py
            consumes   file:./

file:subs1.txt
                path = subs1.txt
               state = STATIC
          created by   step:./plan.py
            consumes   file:./
            supplies   step:./step.py subs1.txt > subs2.txt

step:./step.py subs1.txt > subs2.txt
             workdir = ./
             command = ./step.py subs1.txt > subs2.txt
               state = SUCCEEDED
  consumes (amended) = file:conv2.txt
       extended hash = yes
          created by   step:./plan.py
            consumes   file:./
            consumes   file:conv2.txt
            consumes   file:subs1.txt
             creates   file:subs2.txt
            supplies   file:subs2.txt

file:subs2.txt
                path = subs2.txt
               state = BUILT
          created by   step:./step.py subs1.txt > subs2.txt
            consumes   file:./
            consumes   step:./step.py subs1.txt > subs2.txt
            supplies   step:./step.py subs2.txt > subs3.txt

step:./step.py subs2.txt > subs3.txt
             workdir = ./
             command = ./step.py subs2.txt > subs3.txt
               state = SUCCEEDED
  consumes (amended) = file:conv2.txt
       extended hash = yes
          created by   step:./plan.py
            consumes   file:./
            consumes   file:conv2.txt
            consumes   file:subs2.txt
             creates   file:subs3.txt
            supplies   file:subs3.txt

file:subs3.txt
                path = subs3.txt
               state = BUILT
          created by   step:./step.py subs2.txt > subs3.txt
            consumes   file:./
            consumes   step:./step.py subs2.txt > subs3.txt

file:inp2.txt
                path = inp2.txt
               state = STATIC
          created by   step:./plan.py
            consumes   file:./
            supplies   step:cp -aT inp2.txt conv2.txt

step:cp -aT inp2.txt conv2.txt
             workdir = ./
             command = cp -aT inp2.txt conv2.txt
               state = SUCCEEDED
       extended hash = yes
          created by   step:./plan.py
            consumes   file:./
            consumes   file:inp2.txt
             creates   file:conv2.txt
            supplies   file:conv2.txt

file:conv2.txt
                path = conv2.txt
               state = BUILT
          created by   step:cp -aT inp2.txt conv2.txt
            consumes   file:./
            consumes   step:cp -aT inp2.txt conv2.txt
            supplies   step:./step.py subs1.txt > subs2.txt
            supplies   step:./step.py subs2.txt > subs3.txt
