added general pin io