william shen