working inputs and outputs