change the way acquire resource