added Function type to args