original_docstring: 
          Simple time delay loop until the relevant time is met.
  
          We do have a two-phase delay to save some cycles, but sleeping is so
          cheap anyway that it's pretty loose. We also don't just sleep for
          "the number of seconds until the time" in case the system clock changes
          unexpectedly, or handles a DST change poorly.
          
docstring: Simple time delay loop until the relevant time is met.
  We do have a two-phase delay to save some cycles, but sleeping is so
  cheap anyway that it's pretty loose. We also don't just sleep for
  "the number of seconds until the time" in case the system clock changes
  unexpectedly, or handles a DST change poorly.
docstring_tokens: Simple time delay loop until the relevant time is met . We do have a two - phase delay to save some cycles but sleeping is so cheap anyway that it ' s pretty loose . We also don ' t just sleep for " the number of seconds until the time " in case the system clock changes unexpectedly or handles a DST change poorly .
code: async def run(self):
          """
          Simple time delay loop until the relevant time is met.
  
          We do have a two-phase delay to save some cycles, but sleeping is so
          cheap anyway that it's pretty loose. We also don't just sleep for
          "the number of seconds until the time" in case the system clock changes
          unexpectedly, or handles a DST change poorly.
          """
          # Sleep an hour at a time while it's more than 2 hours away
          while (self.moment - timezone.utcnow()).total_seconds() > 2 * 3600:
              await asyncio.sleep(3600)
          # Sleep a second at a time otherwise
          while self.moment > timezone.utcnow():
              await asyncio.sleep(1)
          # Send our single event and then we're done
          yield TriggerEvent(self.moment)
code_tokens: async def run ( self ) : while ( self . moment - timezone . utcnow ( ) ) . total_seconds ( ) > 2 * 3600 : await asyncio . sleep ( 3600 ) while self . moment > timezone . utcnow ( ) : await asyncio . sleep ( 1 ) yield TriggerEvent ( self . moment )
short_docstring: Simple time delay loop until the relevant time is met.
short_docstring_tokens: Simple time delay loop until the relevant time is met .
comment: """
          Simple time delay loop until the relevant time is met.
  
          We do have a two-phase delay to save some cycles, but sleeping is so
          cheap anyway that it's pretty loose. We also don't just sleep for
          "the number of seconds until the time" in case the system clock changes
          unexpectedly, or handles a DST change poorly.
          """$SEP$# Sleep an hour at a time while it's more than 2 hours away$SEP$# Sleep a second at a time otherwise$SEP$# Send our single event and then we're done