now passing vars with all callbacks