fn change + add loading func