functions with different type of arguements