new callback re-factoring for whole User system.