more static typing added