added output and input objects