Why does this take a dtype argument?