andrew patterson