requires arc set to false