modification from zdw