 ++#include "mman.c"
 + #include <sys/stat.h>
 + #include <thread>
-+ #include <unistd.h> // ftruncate
++-#include <unistd.h> // ftruncate
+++#include "unistd.h"
++ #include <unordered_map>
++ #include <unordered_set>
++ #include <vector>
 +@@ -689,4 +689,4 @@ void applybpe_stream(const char *codesPath, const char *vocabPath) {
 +   }
 + }

+#endif /*  _SYS_MMAN_H_ */
diff --git a/fastBPE/mman_new2.patch b/fastBPE/mman_new2.patch
new file mode 100644
index 0000000..4a01e04
--- /dev/null
+++ b/fastBPE/mman_new2.patch
@@ -0,0 +1,169 @@
+diff --git a/fastBPE/fastBPE.hpp b/fastBPE/fastBPE.hpp
+index 099ae80..5dead7f 100644
+--- a/fastBPE/fastBPE.hpp
++++ b/fastBPE/fastBPE.hpp
+@@ -12,7 +12,7 @@
+ #include <stdio.h>
+ #include <string>
+ #include <cstring>

++
++int mprotect(void *addr, size_t len, int prot)
++{
++    DWORD newP
\ No newline at end of file
diff --git a/fastBPE/unistd.h b/fastBPE/unistd.h
new file mode 100644
