Inputs and Outputs implemented but need to test