william snyder