added tail input operator