John Hannah (m.