William snyder