changed default behavior to shallow=false