code: def idle_task(self):
          '''handle missing waypoints'''
          if self.wp_period.trigger():
              # cope with packet loss fetching mission
              if self.master is not None and self.master.time_since('MISSION_ITEM') >= 2 and self.wploader.count() < getattr(self.wploader,'expected_count',0):
                  wps = self.missing_wps_to_request();
                  print("re-requesting WPs %s" % str(wps))
                  self.send_wp_requests(wps)
          if self.module('console') is not None and not self.menu_added_console:
              self.menu_added_console = True
              self.module('console').add_menu(self.menu)
          if self.module('map') is not None and not self.menu_added_map:
              self.menu_added_map = True
              self.module('map').add_menu(self.menuf idle_task(self):
          '''handle missing waypoints'''
          if self.wp_period.trigger():
              # cope with packet loss fetching mission
              if self.master is not None and self.master.time_since('MISSION_ITEM') >= 2 and self.wploader.count() < getattr(self.wploader,'expected_count',0):
                  wps = self.missing_wps_to_request();
                  print("re-requesting WPs %s" % str(wps))
                  self.send_wp_requests(wps)
          if self.module('console') is not None and not self.menu_added_console:
              self.menu_added_console = True
              self.module('console').add_menu(self.menu)
          if self.module('map') is not None and not self.menu_added_map:
              self.menu_added_map = True
              self.module('map').add_menu(self.menu)
docs: handle missing waypoints