Added strong type declarations to functions