Implemented argument type checking