shadow code in but broken