don't use process sub or tail