--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE delegatemap [
+  <!ELEMENT delegatemap (delegate+)>
+  <!ELEMENT delegate (#PCDATA)>
+  <!ATTLIST delegate decode CDATA #IMPLIED>
+  <!ATTLIST delegate encode CDATA #IMPLIED>
+  <!ATTLIST delegate mode CDATA #IMPLIED>
+  <!ATTLIST delegate spawn CDATA #IMPLIED>
+  <!ATTLIST delegate stealth CDATA #IMPLIED>
+  <!ATTLIST delegate command CDATA #REQUIRED>
+]>
+<!--
+  Delegate command file.
+
+  Commands which specify
+
+    decode="in_format" encode="out_format"
+
+  specify the rules for converting from in_format to out_format These
+  rules may be used to translate directly between formats.
+
+  Commands which specify only
+
+    decode="in_format"
+
+  specify the rules for converting from in_format to some format that
+  ImageMagick will automatically recognize. These rules are used to
+  decode formats.
+
+  Commands which specify only
+
+   encode="out_format"
+
+  specify the rules for an "encoder" which may accept any input format.
+
+  For delegates other than ps:alpha, ps:color, ps:cmyk, ps:mono, pcl-color,
+  pcl-cmyk, pcl-mono, and mpeg-encode the substitution rules are as follows:
+
+    %i  input image filename
+    %o  output image filename
+    %u  unique temporary filename
+    %z  secondary unique temporary filename
+
+    %#  input image signature
+    %b  image file size
+    %c  input image comment
+    %g  window group
+    %h  image rows (height)
+    %k  input image number colors
+    %m  input image format
+    %p  page number
+    %q  input image depth
+    %s  scene number
+    %w  image columns (width)
+    %x  input image x resolution
+    %y  input image y resolution
+
+-->
+<delegatemap>
+  <delegate decode="autotrace" stealth="True" command='"autotrace" -output-format svg -output-file "%o" "%i"' />
+  <delegate decode="browse" stealth="True" spawn="True" command='"htmlview" http://www.imagemagick.org/'  />
+  <delegate decode="cgm" thread-support="False" command='"ralcgm" -d ps -oC < "%i" > "%o" 2>/dev/null' />
+  <delegate decode="cr2" thread-support="False" command='"dcraw" -3 -w -c "%i" > "%o"' />
+  <delegate decode="crw" thread-support="False" command='"dcraw" -3 -w -c "%i" > "%o"' />
+  <delegate decode="dcr" thread-support="False" command='"dcraw" -3 -w -c "%i" > "%o"' />
+  <delegate decode="mrw" thread-support="False" command='"dcraw" -3 -w -c "%i" > "%o"' />
+  <delegate decode="nef" thread-support="False" command='"dcraw" -3 -w -c "%i" > "%o"' />
+  <delegate decode="orf" thread-support="False" command='"dcraw" -3 -w -c "%i" > "%o"' />
+  <delegate decode="raf" thread-support="False" command='"dcraw" -3 -w -c "%i" > "%o"' />
+  <delegate decode="x3f" thread-support="False" command='"dcraw" -3 -w -c "%i" > "%o"' />
+  <delegate decode="dvi" command='"dvips" -R -q -o "%o" "%i"' />
+  <delegate decode="edit" stealth="True" command='"xterm" -title "Edit Image Comment" -e vi "%o"' />
+  <delegate decode="eps" encode="pdf" mode="bi" command='"gs" -q -dBATCH -dSAFER -dMaxBitmap=500000000 -dNOPAUSE -dAlignToPixels=0 -dEPSCrop -sDEVICE="pdfwrite" -sOutputFile="%o" -f"%i"' />
+  <delegate decode="eps" encode="ps" mode="bi" command='"gs" -q -dBATCH -dSAFER -dMaxBitmap=500000000 -dNOPAUSE -dAlignToPixels=0 -dEPSCrop -sDEVICE="pswrite" -sOutputFile="%o" -f"%i"' />
+  <delegate decode="fig" command='"fig2dev" -L ps "%i" "%o"' />
+  <delegate decode="gplt" command='"echo" "set size 1.25,0.62
+    set terminal postscript portrait color solid; set output "%o"; load "%i"" > "%u";"gnuplot" "%u"' />
+  <delegate decode="ps:alpha" stealth="True" command='"gs" -q -dBATCH -dSAFER -dMaxBitmap=500000000 -dNOPAUSE -dAlignToPixels=0 -dEPSCrop "-sDEVICE=pnmraw" -dTextAlphaBits=%u -dGraphicsAlphaBits=%u "-g%s" "-r%s" %s "-sOutputFile=%s" "-f%s" "-f%s"' />
+  <delegate decode="ps:color" stealth="True" command='"gs" -q -dBATCH -dSAFER -dMaxBitmap=500000000 -dNOPAUSE -dAlignToPixels=0 -dEPSCrop "-sDEVICE=pnmraw" -dTextAlphaBits=%u -dGraphicsAlphaBits=%u "-g%s" "-r%s" %s "-sOutputFile=%s" "-f%s" "-f%s"' />
+  <delegate decode="ps:cmyk" stealth="True" command='"gs" -q -dBATCH -dSAFER -dMaxBitmap=500000000 -dNOPAUSE -dAlignToPixels=0 -dEPSCrop "-sDEVICE=bmpsep8" -dTextAlphaBits=%u -dGraphicsAlphaBits=%u "-g%s" "-r%s" %s "-sOutputFile=%s" "-f%s" "-f%s"' />
+  <delegate decode="ps:mono" stealth="True" command='"gs" -q -dBATCH -dSAFER -dMaxBitmap=500000000 -dNOPAUSE -dAlignToPixels=0 -dEPSCrop "-sDEVICE=pbmraw" -dTextAlphaBits=%u -dGraphicsAlphaBits=%u "-g%s" "-r%s" %s "-sOutputFile=%s" "-f%s" "-f%s"' />
+  <delegate decode="hpg" command='"hp2xx" -q -m eps -f `basename "%o"` "%i"
+    mv -f `basename "%o"` "%o"' />
+  <delegate decode="hpgl" command='if [ -e hp2xx -o -e /usr/bin/hp2xx ]; then
+    hp2xx -q -m eps -f `basename "%o"` "%i"
+    mv -f `basename "%o"` "%o
+  else
+    echo "You need to install hp2xx to use HPGL files with ImageMagick."
+    exit 1
+  fi' />
+  <delegate decode="htm" command='"html2ps" -U -o "%o" "%i"' />
+  <delegate decode="html" command='"html2ps" -U -o "%o" "%i"' />
+  <delegate decode="https" command='"wget" -q -O "%o" "https:%M"' />
+  <delegate decode="ilbm" command='"ilbmtoppm" "%i" > "%o"' />
+  <delegate decode="man" command='"groff" -man -Tps "%i" > "%o"' />
+  <delegate decode="mpeg-decode" stealth="True" command='"mpeg2decode" -q -b "%i" -f -r -o3 "%u%%d"' />
+  <delegate encode="mpeg-encode" stealth="True" command='"mpeg2encode" "%i" "%o"' />
+  <delegate decode="pcl-color" stealth="True" command='"pcl6" -dBATCH -dSAFER -dMaxBitmap=500000000 -dNOPAUSE -dAlignToPixels=0 -dEPSCrop "-sDEVICE=ppmraw" -dTextAlphaBits=%u -dGraphicsAlphaBits=%u "-g%s" "-r%s" %s "-sOutputFile=%s" "%s"' />
+  <delegate decode="pcl-cmyk" stealth="True" command='"pcl6" -dBATCH -dSAFER -dMaxBitmap=500000000 -dNOPAUSE -dAlignToPixels=0 -dEPSCrop "-sDEVICE=bmpsep8" -dTextAlphaBits=%u -dGraphicsAlphaBits=%u "-g%s" "-r%s" %s "-sOutputFile=%s" "%s"' />
+  <delegate decode="pcl-mono" stealth="True" command='"pcl6" -dBATCH -dSAFER -dMaxBitmap=500000000 -dNOPAUSE -dAlignToPixels=0 -dEPSCrop "-sDEVICE=pbmraw" -dTextAlphaBits=%u -dGraphicsAlphaBits=%u "-g%s" "-r%s" %s "-sOutputFile=%s" "%s"' />
+  <delegate decode="pdf" encode="eps" mode="bi" command='"gs" -q -dBATCH -dSAFER -dMaxBitmap=500000000 -dNOPAUSE -dAlignToPixels=0 -dEPSCrop -sDEVICE="epswrite" -sOutputFile="%o" -f"%i"' />
+  <delegate decode="pdf" encode="ps" mode="bi" command='"gs" -q -dBATCH -dSAFER -dMaxBitmap=500000000 -dNOPAUSE -dAlignToPixels=0 -dEPSCrop -sDEVICE="pswrite" -sOutputFile="%o" -f"%i"' />
+  <delegate decode="pnm" encode="ilbm" mode="encode" command='"ppmtoilbm" -24if "%i" > "%o"' />
+  <delegate decode="pnm" encode="launch" mode="encode" command='"gimp" "%i"' />
+  <delegate decode="miff" encode="win" mode="encode" command='"/usr/local/bin/display" -immutable "%i"' />
+  <delegate decode="pov" command='"povray" "+i"%i"" -D0 +o"%o" +fn%q +w%w +h%h +a -q9 -kfi"%s" -kff"%n"
+    "convert" -concatenate "%o*.png" "%o"' />
+  <delegate decode="ps" encode="eps" mode="bi" command='"gs" -q -dBATCH -dSAFER -dMaxBitmap=500000000 -dNOPAUSE -dAlignToPixels=0 -dEPSCrop -sDEVICE="epswrite" -sOutputFile="%o" -f"%i"' />
+  <delegate decode="ps" encode="pdf" mode="bi" command='"gs" -q -dBATCH -dSAFER -dMaxBitmap=500000000 -dNOPAUSE -dAlignToPixels=0 -dEPSCrop -sDEVICE="pdfwrite" -sOutputFile="%o" -f"%i"' />
+  <delegate decode="ps" encode="print" mode="encode" command='lpr "%i"' />
+  <delegate decode="rad" command='"ra_ppm" -g 1.0 "%i" "%o"' />
+  <delegate decode="rgba" encode="rle" mode="encode" command='"modify" -flip -size %wx%h "rgba:%i"
+    "rawtorle" -w %w -h %h -n 4 -o "%o" "%i"' />
+  <delegate decode="scan" command='"scanimage" -d "%i" > "%o"' />
+  <delegate decode="shtml" command='"html2ps" -U -o "%o" "%i"' />
+  <delegate decode="svg" command='"wmf2svg" -o "%o" "%i"' />
+  <delegate decode="txt" encode="ps" mode="bi" command='"enscript" -o "%o" "%i"' />
+  <delegate decode="wmf" command='"wmf2svg" -o "%o" "%i"' />
+  <delegate encode="show" stealth="True" spawn="True" command='"/usr/local/bin/display" -immutable -delay 0 -window_group %g -title "%l of %f" "tmp:%i"' />
+</delegatemap>
 
--- /dev/null
+[
+
+type = "dag";
+
+stdoutput = "std.out";
+stderror = "std.err";
+outputsandbox = { "std.out", "std.err" };
+
+nodes = [
+       align1 = [ description = [
+               executable = "align.sh";
+               arguments = "BASE1 REFERENCE";
+               inputsandbox = { "align.sh", "align_warp", "scanheader" };
+       ] ];
+       align2 = [ description = [
+               executable = "align.sh";
+               arguments = "BASE2 REFERENCE";
+               inputsandbox = { "align.sh", "align_warp" };
+       ] ];
+       align3 = [ description = [
+               executable = "align.sh";
+               arguments = "BASE3 REFERENCE";
+               inputsandbox = { "align.sh", "align_warp" };
+       ] ];
+       align4 = [ description = [
+               executable = "align.sh";
+               arguments = "BASE4 REFERENCE";
+               inputsandbox = { "align.sh", "align_warp" };
+       ] ];
+
+
+       reslice1 = [ description = [
+               executable = "reslice.sh";
+               arguments = "BASE1"; 
+               inputsandbox = { "reslice.sh", "reslice" };
+       ] ];
+       reslice2 = [ description = [
+               executable = "reslice.sh";
+               arguments = "BASE2"; 
+               inputsandbox = { "reslice.sh", "reslice" };
+       ] ];
+       reslice3 = [ description = [
+               executable = "reslice.sh";
+               arguments = "BASE3"; 
+               inputsandbox = { "reslice.sh", "reslice" };
+       ] ];
+       reslice4 = [ description = [
+               executable = "reslice.sh";
+               arguments = "BASE4"; 
+               inputsandbox = { "reslice.sh", "reslice" };
+       ] ];
+
+       softmean = [ description = [
+               executable = "softmean.sh";
+               arguments = "BASE1 BASE2 BASE3 BASE4 ATLAS";
+               inputsandbox = { "softmean.sh", "softmean" };
+       ] ];
+
+       slicerx = [ description = [
+               executable = "slicer.sh";
+               arguments = "ATLAS x";
+               inputsandbox = { "slicer.sh", "slicer" };
+       ] ];
+       slicery = [ description = [
+               executable = "slicer.sh";
+               arguments = "ATLAS y";
+               inputsandbox = { "slicer.sh", "slicer" };
+       ] ];
+       slicerz = [ description = [
+               executable = "slicer.sh";
+               arguments = "ATLAS z";
+               inputsandbox = { "slicer.sh", "slicer" };
+       ] ];
+
+       convertx = [ description = [
+               executable = "convert.sh"; 
+               arguments = "ATLAS x";
+               inputsandbox = { "convert.sh", "convert", "delegates.xml" };
+       ] ];
+       converty = [ description = [
+               executable = "convert.sh"; 
+               arguments = "ATLAS y";
+               inputsandbox = { "convert.sh", "convert", "delegates.xml" };
+       ] ];
+       convertz = [ description = [
+               executable = "convert.sh"; 
+               arguments = "ATLAS z";
+               inputsandbox = { "convert.sh", "convert", "delegates.xml" };
+       ] ];
+
+];
+
+       dependencies = {
+               { align1, reslice1 },
+               { align2, reslice2 },
+               { align3, reslice3 },
+               { align4, reslice4 },
+               { { reslice1, reslice2, reslice3, reslice4 }, softmean },
+               { softmean, { slicerx, slicery, slicerz } },
+               { slicerx, convertx },
+               { slicery, converty },
+               { slicerz, convertz }
+       };
+
+
+
+];