basic io operation added