Separate out CallbackHelper for reusability and cleaner code.