anchor.diff:      '';
   
       preBuild = ''
  -      ln -s ${pkgs.z3} Binaries/z3
  +      ln -s ${z3} Binaries/z3
       '';
   
       buildInputs = [ Boogie ];
  
positive.code: 
    Boogie = buildDotnetPackage rec {
      baseName = "Boogie";
      version = "2019-06-20";
      name = "${baseName}-unstable-${version}";
  
      src = fetchFromGitHub {
        owner = "boogie-org";
        repo = "boogie";
        rev = "2e8fae4dc1724d8f9e7b1f877116e56b0773337e";
        sha256 = "01wjps3yfx8q0qy0zrmmfd1ixjxi2dhkn1wfazb5qm2slav39dp2";
      };
  
      # emulate `nuget restore Source/Boogie.sln`
  
negative.code:     };
    };
  
    Dafny = let
      z3 = pkgs.z3.overrideAttrs (oldAttrs: with oldAttrs; rec {
        version = "4.8.4";
        name = "${pname}-${version}";
  
        src = fetchFromGitHub {
          owner = "Z3Prover";
          repo = pname;
          rev = "z3-${version}";
          sha256 = "014igqm5vwswz0yhz0cdxsj3a6dh7i79hvhgc3jmmmz3z0xm1gyn";
        };
      });
      boogie = assert dotnetPackages.Boogie.version == "2.4.1"; dotnetPackages.Boogie;
    in buildDotnetPackage rec {
      baseName = "Dafny";
      version = "2.3.0";
  
  