code: async def checkpoint_async_event_data(self, event_data, event_processor_context=None):
          
          if not event_data:
              raise ValueError("event_data")
          if event_data.sequence_number > self.sequence_number:
              #We have never seen this sequence number yet
              raise ValueError("Argument Out Of Range event_data x-opt-sequence-number")
  
          await self.persist_checkpoint_async(Checkpoint(self.partition_id,
                                                         event_data.offset.value,
                                                         event_data.sequence_number),
                                              event_processor_context)
          self.event_processor_context = event_processor_context
docs: Stores the offset and sequenceNumber from the provided received EventData instance,
          then writes those values to the checkpoint store via the checkpoint manager.
          Optionally stores the state of the Event Processor along the checkpoint.
  
          :param event_data: A received EventData with valid offset and sequenceNumber.
          :type event_data: ~azure.eventhub.common.EventData
          :param event_processor_context An optional custom state value for the Event Processor.
           This data must be in a JSON serializable format.
          :type event_processor_context: str or dict
          :raises: ValueError if suplied event_data is None.
          :raises: ValueError if the sequenceNumber is less than the last checkpointed value.