added onDiscoverComplete