upgraded argument processing to nopt