diff --git a/extrap/.DS_Store b/extrap/.DS_Store
index 14850029b2e2aebed09cfc4fffb75769304464f8..c3b7e3a2a3d8b2fe690a6030d2e0100659cfb237 100644
Binary files a/extrap/.DS_Store and b/extrap/.DS_Store differ
diff --git a/marchenko/applyMute_tshift.c b/marchenko/applyMute_tshift.c
index 158f270c7df1a88a3ce61b14b6f3723fceb7858e..26cd141e72f2d170a7bfa809dbaab1a641c2fd4b 100644
--- a/marchenko/applyMute_tshift.c
+++ b/marchenko/applyMute_tshift.c
@@ -3,7 +3,9 @@
 #include <string.h>
 #include <math.h>
 #include <assert.h>
+#include "genfft.h"
 
+void verr(char *fmt, ...);
 #ifndef MAX
 #define MAX(x,y) ((x) > (y) ? (x) : (y))
 #endif
diff --git a/marchenko/findFirstBreak.c b/marchenko/findFirstBreak.c
index 100974d81a47eb914d4c9d3e197bcd0e1b40e697..40a7c5e7a9e482c65b47bc1185a2bff714ee128c 100644
--- a/marchenko/findFirstBreak.c
+++ b/marchenko/findFirstBreak.c
@@ -4,6 +4,7 @@
 #include <math.h>
 #include <assert.h>
 
+void vmess(char *fmt, ...);
 #ifndef MAX
 #define MAX(x,y) ((x) > (y) ? (x) : (y))
 #endif
diff --git a/marchenko/marchenko_primaries.c b/marchenko/marchenko_primaries.c
index 9dcc6a46995014ebfd3421fa02cdd3c8360d2c3a..7a4d68aff0ec4047dd205245b9cad6aaefbe116e 100644
--- a/marchenko/marchenko_primaries.c
+++ b/marchenko/marchenko_primaries.c
@@ -790,8 +790,8 @@ int main (int argc, char **argv)
                                 energyMi += RMi[l*nacq*nts+ix*nts+j]*RMi[l*nacq*nts+ix*nts+j];
 					        }
                         }
-                        if ( (iter==0) ) energyM0[l] = energyMi;
-                        if ( (recur==0) ) {
+                        if ( iter==0 ) energyM0[l] = energyMi;
+                        if ( recur==0 ) {
                         	vmess(" - ii %d: Mi at iteration %d has energy %e; relative to M0 %e", ii, iter, sqrt(energyMi), sqrt(energyMi/energyM0[l]));
 						}
                     }
diff --git a/marchenko/writeDataIter.c b/marchenko/writeDataIter.c
index e75ffb1fd5db92385c2481363b7b161b453ec7ab..23ca41bc7bb4c51c969eac9196ca3d3b35ef61ce 100644
--- a/marchenko/writeDataIter.c
+++ b/marchenko/writeDataIter.c
@@ -25,7 +25,7 @@ int writeDataIter(char *file_iter, float *data, segy *hdrs, int n1, int n2, floa
     char number[16], filename[1024];
 	float *trace;
 
-	if (file_iter==NULL) return;
+	if (file_iter==NULL) return -1;
     trace  = (float *)malloc(n1*sizeof(float));
 	strcpy(filename, file_iter);
 	sprintf(number,"_%03d",(iter));
diff --git a/marchenko3D/TWtransform.c b/marchenko3D/TWtransform.c
index 12bcb7a790be00fb2e16d6c8eb7b4b64f759facc..72e6fb39d1c61cfab16fdb1337ec9c6e21d7c48d 100644
--- a/marchenko3D/TWtransform.c
+++ b/marchenko3D/TWtransform.c
@@ -3,14 +3,11 @@
 #include <string.h>
 #include <math.h>
 #include "segy.h"
+#include "genfft.h"
 #include "zfpmar.h"
 #include <assert.h>
 #include <zfp.h>
 
-typedef struct { /* complex number */
-        float r,i;
-} complex;
-
 #define NINT(x) ((long)((x)>0.0?(x)+0.5:(x)-0.5))
 #define MAX(x,y) ((x) > (y) ? (x) : (y))
 #define MIN(x,y) ((x) < (y) ? (x) : (y))
diff --git a/marchenko3D/applyMute3D.c b/marchenko3D/applyMute3D.c
index b1e0abe60e02d4d6265e4a968df3d296f71e6e4f..985b918f84121413d956a5f29b58896240b85dc8 100644
--- a/marchenko3D/applyMute3D.c
+++ b/marchenko3D/applyMute3D.c
@@ -3,7 +3,9 @@
 #include <string.h>
 #include <math.h>
 #include <assert.h>
+#include "genfft.h"
 
+void verr(char *fmt, ...);
 #ifndef MAX
 #define MAX(x,y) ((x) > (y) ? (x) : (y))
 #endif
@@ -328,4 +330,4 @@ void timeShift(float *data, long nsam, long nrec, float dt, float shift, float f
     free(trace);
 
     return;
-}
\ No newline at end of file
+}
diff --git a/marchenko3D/getFileInfo3Dzfp.c b/marchenko3D/getFileInfo3Dzfp.c
index 36854f58f1d5d0b9dda17df7363ce2c589517cd4..105c8295351966a22794494857bc8f9870c51f15 100644
--- a/marchenko3D/getFileInfo3Dzfp.c
+++ b/marchenko3D/getFileInfo3Dzfp.c
@@ -38,7 +38,7 @@ long getFileInfo3Dzfp(char *filename, long *n1, long *n2, long *n3, long *ngath,
     
     fp_in = fopen(filename, "r");
 	if (fp_in==NULL) {
-		fprintf(stderr,"input file %s has an error\n", fp_in);
+		fprintf(stderr,"input file %s has an error\n", filename);
 		perror("error in opening file: ");
 		fflush(stderr);
 		return -1;
@@ -78,4 +78,4 @@ long getFileInfo3Dzfp(char *filename, long *n1, long *n2, long *n3, long *ngath,
     *nxm = (*n2)*(*n3);
 
     return 0;
-}
\ No newline at end of file
+}
diff --git a/marchenko3D/writeDataIter3D.c b/marchenko3D/writeDataIter3D.c
index fbaecdb2f4d71bb67a5982bae554c5aee5078955..dab35d61a802a38f9ab05b607f3c1578ec4d5622 100644
--- a/marchenko3D/writeDataIter3D.c
+++ b/marchenko3D/writeDataIter3D.c
@@ -26,7 +26,7 @@ long writeDataIter3D(char *file_iter, float *data, segy *hdrs, long n1, long n2,
 
     trace  = (float *)malloc(n1*sizeof(float));
 	strcpy(filename, file_iter);
-	sprintf(number,"_%03d",(iter));
+	sprintf(number,"_%03ld",(iter));
 	name_ext(filename, number);
 	fp_iter = fopen(filename, "w+");
 	if (fp_iter==NULL) verr("error on creating output file %s", filename);