minor changes, process method still doesn't work correctly