diff --git a/secure/master.h b/secure/master.h
index b9988b7..7c8a137 100644
--- a/secure/master.h
+++ b/secure/master.h
@@ -101,7 +101,7 @@
 public mixed    *get_userinfo(string user);
 public int       get_wiz_level(string user);
 public mixed     query_userlist(string user, int prop);
-public int       query_wiz_level(mixed player);
+public int       query_wiz_level(object|string player);
 int              update_wiz_level(string user,int lev);
 protected void   set_guilds(string player, string *guilds);
 protected void   set_domains(string player, string *domains);
diff --git a/secure/simul_efun/simul_efun.c b/secure/simul_efun/simul_efun.c
index 55c0480..d9c2a54 100644
--- a/secure/simul_efun/simul_efun.c
+++ b/secure/simul_efun/simul_efun.c
@@ -44,10 +44,10 @@
  */
 string dtime(int wann);
 varargs int log_file(string file, string txt, int size_to_break);
-int query_wiz_level(mixed player);
+int query_wiz_level(object|string player);
 nomask varargs int snoop(object snooper, object snoopee);
 varargs string country(mixed ip, string num);
-int query_wiz_grp(mixed wiz);
+int query_wiz_grp(object|string wiz);
 public varargs object deep_present(mixed what, object ob);
 nomask int secure_level();
 nomask string secure_euid();
diff --git a/secure/simul_efun/spare/simul_efun.c b/secure/simul_efun/spare/simul_efun.c
index 5728ae7..d9c2a54 100644
--- a/secure/simul_efun/spare/simul_efun.c
+++ b/secure/simul_efun/spare/simul_efun.c
@@ -44,10 +44,10 @@
  */
 string dtime(int wann);
 varargs int log_file(string file, string txt, int size_to_break);
-int query_wiz_level(mixed player);
+int query_wiz_level(object|string player);
 nomask varargs int snoop(object snooper, object snoopee);
 varargs string country(mixed ip, string num);
-int query_wiz_grp(mixed wiz);
+int query_wiz_grp(object|string wiz);
 public varargs object deep_present(mixed what, object ob);
 nomask int secure_level();
 nomask string secure_euid();
@@ -433,7 +433,7 @@
 }
 
 // * Magier-Level abfragen
-int query_wiz_level(mixed player) {
+int query_wiz_level(object|string player) {
   return "/secure/master"->query_wiz_level(player);
 }
 
@@ -1036,7 +1036,7 @@
 }
 
 // * Magierlevelgruppen ermitteln
-int query_wiz_grp(mixed wiz)
+int query_wiz_grp(object|string wiz)
 {
   int lev;
 
