gary mcpherson