Moved Callback to a private inner interface