fixed bug: wrong callback