 
         setupStatusItem()
         setupMenu()
+        setupReachability()
 
         if Settings.shouldPlayOnLaunch {
             togglePlay()


    private func selectChannel(_ channel: Channel) {
        guard let channels = SomaAPI.channels, let selectedChannelIdx = channels.index(where: { $0.id == channel.id }) else { return }

        stationsMenu.items.forEach { $0.state = $0.tag == selectedChannelIdx ? .on : .off }


    }

    @objc func togglePlay() {
        if RadioPlayer.player.timeControlStatus != .paused {
            RadioPlayer.player.pause()
            return
        }

        guard reachability.connection != .none else {
            showConnectionError()
            return
        }

        if RadioPlayer.player.currentItem != nil {
            RadioPlayer.resumeLive()
        } else if let savedChannel = SomaAPI.lastPlayedChannel {
            selectChannel(savedChannel)
        }
    }

