diff --git a/src/userprog/syscall.h b/src/userprog/syscall.h
index 90590967a9f96f9ea359d15c672b815dfb4379cb..6d657430bdcb1948686f2cab5244d72d437cabb8 100644
--- a/src/userprog/syscall.h
+++ b/src/userprog/syscall.h
@@ -1,6 +1,20 @@
 #ifndef USERPROG_SYSCALL_H
 #define USERPROG_SYSCALL_H
-
-void syscall_init (void);
-
+// #include "userprog/syscall.h"
+#include <stdio.h>
+#include <syscall-nr.h>
+#include "threads/interrupt.h"
+#include "threads/thread.h"
+#include "process.h"
+#include "pagedir.h"
+#include "threads/vaddr.h"
+#include "devices/shutdown.h"
+#include "filesys/filesys.h"
+// import system calls declaration
+#include "user/syscall.h"
+// for the input function
+#include "devices/input.h"
+#include "threads/synch.h"
+// lock for thread synchronization
+struct lock mainLock;void syscall_init (void);
 #endif /* userprog/syscall.h */