anchor.diff:  , md5 ? ""
   , sha1 ? ""
   , sha256 ? ""
  +, sha512 ? ""
   
   , recursiveHash ? false
   
  
positive.code: 
    # New-style output content requirements.
    outputHashAlgo = if outputHashAlgo != "" then outputHashAlgo else
        if sha256 != "" then "sha256" else if sha1 != "" then "sha1" else "md5";
    outputHash = if outputHash != "" then outputHash else
        if sha256 != "" then sha256 else if sha1 != "" then sha1 else md5;
  
    outputHashMode = if (recursiveHash || executable) then "recursive" else "flat";
  
  
negative.code: let
  
    hasHash = showURLs || (outputHash != "" && outputHashAlgo != "")
      || md5 != "" || sha1 != "" || sha256 != "" || sha512 != "";
    urls_ = if urls != [] then urls else [url];
  
  in
  