class_docstr: Start AWS EC2 instance using boto3.
  
  .. seealso::
      For more information on how to use this operator, take a look at the guide:
      :ref:`howto/operator:EC2StartInstanceOperator`
  
  :param instance_id: id of the AWS EC2 instance
  :param aws_conn_id: aws connection to use
  :param region_name: (optional) aws region name associated with the client
  :param check_interval: time in seconds that the job should wait in
      between each instance state checks until operation is completed
code: def execute(self, context: Context):
      ec2_hook = EC2Hook(
          aws_conn_id=self.aws_conn_id, region_name=self.region_name
      )
      self.log.info("Starting EC2 instance %s", self.instance_id)
      instance = ec2_hook.get_instance(instance_id=self.instance_id)
      instance.start()
      ec2_hook.wait_for_state(
          instance_id=self.instance_id,
          target_state="running",
          check_interval=self.check_interval,
      )
  
imports: from __future__ import annotations
  from typing import TYPE_CHECKING, Sequence
  from airflow.exceptions import AirflowException
  from airflow.models import BaseOperator
  from airflow.providers.amazon.aws.hooks.ec2 import EC2Hook
label_desc: Use image node_id 2 for calling the EC2StartInstanceOperator obj's underlying member method code with example usage: obj.execute(context) without return types