made the inputs typedef cluster changed the output to typedef