

"""simple docstring"""




from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_flax_available,
    is_tf_available,
    is_torch_available,
)


SCREAMING_SNAKE_CASE_  :      Tuple							=      {
    '''auto_factory''': ['''get_values'''],
    '''configuration_auto''': ['''ALL_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''CONFIG_MAPPING''', '''MODEL_NAMES_MAPPING''', '''AutoConfig'''],
    '''feature_extraction_auto''': ['''FEATURE_EXTRACTOR_MAPPING''', '''AutoFeatureExtractor'''],
    '''image_processing_auto''': ['''IMAGE_PROCESSOR_MAPPING''', '''AutoImageProcessor'''],
    '''processing_auto''': ['''PROCESSOR_MAPPING''', '''AutoProcessor'''],
    '''tokenization_auto''': ['''TOKENIZER_MAPPING''', '''AutoTokenizer'''],
}

try:
     if not is_torch_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     SCREAMING_SNAKE_CASE_  :      List[str]							=      [
         '''MODEL_FOR_AUDIO_CLASSIFICATION_MAPPING''',
         '''MODEL_FOR_AUDIO_FRAME_CLASSIFICATION_MAPPING''',
         '''MODEL_FOR_AUDIO_XVECTOR_MAPPING''',
         '''MODEL_FOR_BACKBONE_MAPPING''',
         '''MODEL_FOR_CAUSAL_IMAGE_MODELING_MAPPING''',
         '''MODEL_FOR_CAUSAL_LM_MAPPING''',
         '''MODEL_FOR_CTC_MAPPING''',
         '''MODEL_FOR_DOCUMENT_QUESTION_ANSWERING_MAPPING''',
         '''MODEL_FOR_DEPTH_ESTIMATION_MAPPING''',
         '''MODEL_FOR_IMAGE_CLASSIFICATION_MAPPING''',
         '''MODEL_FOR_IMAGE_SEGMENTATION_MAPPING''',
         '''MODEL_FOR_INSTANCE_SEGMENTATION_MAPPING''',
         '''MODEL_FOR_MASKED_IMAGE_MODELING_MAPPING''',
         '''MODEL_FOR_MASKED_LM_MAPPING''',
         '''MODEL_FOR_MASK_GENERATION_MAPPING''',
         '''MODEL_FOR_MULTIPLE_CHOICE_MAPPING''',
         '''MODEL_FOR_NEXT_SENTENCE_PREDICTION_MAPPING''',
         '''MODEL_FOR_OBJECT_DETECTION_MAPPING''',
         '''MODEL_FOR_PRETRAINING_MAPPING''',
         '''MODEL_FOR_QUESTION_ANSWERING_MAPPING''',
         '''MODEL_FOR_SEMANTIC_SEGMENTATION_MAPPING''',
         '''MODEL_FOR_SEQ_TO_SEQ_CAUSAL_LM_MAPPING''',
         '''MODEL_FOR_SEQUENCE_CLASSIFICATION_MAPPING''',
         '''MODEL_FOR_SPEECH_SEQ_2_SEQ_MAPPING''',
         '''MODEL_FOR_TABLE_QUESTION_ANSWERING_MAPPING''',
         '''MODEL_FOR_TEXT_ENCODING_MAPPING''',
         '''MODEL_FOR_TOKEN_CLASSIFICATION_MAPPING''',
         '''MODEL_FOR_UNIVERSAL_SEGMENTATION_MAPPING''',
         '''MODEL_FOR_VIDEO_CLASSIFICATION_MAPPING''',
         '''MODEL_FOR_VISION_2_SEQ_MAPPING''',
         '''MODEL_FOR_VISUAL_QUESTION_ANSWERING_MAPPING''',
         '''MODEL_MAPPING''',
         '''MODEL_WITH_LM_HEAD_MAPPING''',
         '''MODEL_FOR_ZERO_SHOT_IMAGE_CLASSIFICATION_MAPPING''',
         '''MODEL_FOR_ZERO_SHOT_OBJECT_DETECTION_MAPPING''',
         '''AutoModel''',
         '''AutoBackbone''',
         '''AutoModelForAudioClassification''',
         '''AutoModelForAudioFrameClassification''',
         '''AutoModelForAudioXVector''',
         '''AutoModelForCausalLM''',
         '''AutoModelForCTC''',
         '''AutoModelForDepthEstimation''',
         '''AutoModelForImageClassification''',
         '''AutoModelForImageSegmentation''',
         '''AutoModelForInstanceSegmentation''',
         '''AutoModelForMaskGeneration''',
         '''AutoModelForTextEncoding''',
         '''AutoModelForMaskedImageModeling''',
         '''AutoModelForMaskedLM''',
         '''AutoModelForMultipleChoice''',
         '''AutoModelForNextSentencePrediction''',
         '''AutoModelForObjectDetection''',
         '''AutoModelForPreTraining''',
         '''AutoModelForQuestionAnswering''',
         '''AutoModelForSemanticSegmentation''',
         '''AutoModelForSeq2SeqLM''',
         '''AutoModelForSequenceClassification''',
         '''AutoModelForSpeechSeq2Seq''',
         '''AutoModelForTableQuestionAnswering''',
         '''AutoModelForTokenClassification''',
         '''AutoModelForUniversalSegmentation''',
         '''AutoModelForVideoClassification''',
         '''AutoModelForVision2Seq''',
         '''AutoModelForVisualQuestionAnswering''',
         '''AutoModelForDocumentQuestionAnswering''',
         '''AutoModelWithLMHead''',
         '''AutoModelForZeroShotImageClassification''',
         '''AutoModelForZeroShotObjectDetection''',
     ]

try:
     if not is_tf_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     SCREAMING_SNAKE_CASE_  :      Union[str, Any]							=      [
         '''TF_MODEL_FOR_AUDIO_CLASSIFICATION_MAPPING''',
         '''TF_MODEL_FOR_CAUSAL_LM_MAPPING''',
         '''TF_MODEL_FOR_IMAGE_CLASSIFICATION_MAPPING''',
         '''TF_MODEL_FOR_MASK_GENERATION_MAPPING''',
         '''TF_MODEL_FOR_MASKED_IMAGE_MODELING_MAPPING''',
         '''TF_MODEL_FOR_MASKED_LM_MAPPING''',
         '''TF_MODEL_FOR_MULTIPLE_CHOICE_MAPPING''',
         '''TF_MODEL_FOR_NEXT_SENTENCE_PREDICTION_MAPPING''',
         '''TF_MODEL_FOR_PRETRAINING_MAPPING''',
         '''TF_MODEL_FOR_QUESTION_ANSWERING_MAPPING''',
         '''TF_MODEL_FOR_DOCUMENT_QUESTION_ANSWERING_MAPPING''',
         '''TF_MODEL_FOR_SEMANTIC_SEGMENTATION_MAPPING''',
         '''TF_MODEL_FOR_SEQ_TO_SEQ_CAUSAL_LM_MAPPING''',
         '''TF_MODEL_FOR_SEQUENCE_CLASSIFICATION_MAPPING''',
         '''TF_MODEL_FOR_SPEECH_SEQ_2_SEQ_MAPPING''',
         '''TF_MODEL_FOR_TABLE_QUESTION_ANSWERING_MAPPING''',
         '''TF_MODEL_FOR_TEXT_ENCODING_MAPPING''',
         '''TF_MODEL_FOR_TOKEN_CLASSIFICATION_MAPPING''',
         '''TF_MODEL_FOR_VISION_2_SEQ_MAPPING''',
         '''TF_MODEL_FOR_ZERO_SHOT_IMAGE_CLASSIFICATION_MAPPING''',
         '''TF_MODEL_MAPPING''',
         '''TF_MODEL_WITH_LM_HEAD_MAPPING''',
         '''TFAutoModel''',
         '''TFAutoModelForAudioClassification''',
         '''TFAutoModelForCausalLM''',
         '''TFAutoModelForImageClassification''',
         '''TFAutoModelForMaskedImageModeling''',
         '''TFAutoModelForMaskedLM''',
         '''TFAutoModelForMaskGeneration''',
         '''TFAutoModelForMultipleChoice''',
         '''TFAutoModelForNextSentencePrediction''',
         '''TFAutoModelForPreTraining''',
         '''TFAutoModelForDocumentQuestionAnswering''',
         '''TFAutoModelForQuestionAnswering''',
         '''TFAutoModelForSemanticSegmentation''',
         '''TFAutoModelForSeq2SeqLM''',
         '''TFAutoModelForSequenceClassification''',
         '''TFAutoModelForSpeechSeq2Seq''',
         '''TFAutoModelForTableQuestionAnswering''',
         '''TFAutoModelForTextEncoding''',
         '''TFAutoModelForTokenClassification''',
         '''TFAutoModelForVision2Seq''',
         '''TFAutoModelForZeroShotImageClassification''',
         '''TFAutoModelWithLMHead''',
     ]

try:
     if not is_flax_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     SCREAMING_SNAKE_CASE_  :      int							=      [
         '''FLAX_MODEL_FOR_AUDIO_CLASSIFICATION_MAPPING''',
         '''FLAX_MODEL_FOR_CAUSAL_LM_MAPPING''',
         '''FLAX_MODEL_FOR_IMAGE_CLASSIFICATION_MAPPING''',
         '''FLAX_MODEL_FOR_MASKED_LM_MAPPING''',
         '''FLAX_MODEL_FOR_MULTIPLE_CHOICE_MAPPING''',
         '''FLAX_MODEL_FOR_NEXT_SENTENCE_PREDICTION_MAPPING''',
         '''FLAX_MODEL_FOR_PRETRAINING_MAPPING''',
         '''FLAX_MODEL_FOR_QUESTION_ANSWERING_MAPPING''',
         '''FLAX_MODEL_FOR_SEQ_TO_SEQ_CAUSAL_LM_MAPPING''',
         '''FLAX_MODEL_FOR_SEQUENCE_CLASSIFICATION_MAPPING''',
         '''FLAX_MODEL_FOR_SPEECH_SEQ_2_SEQ_MAPPING''',
         '''FLAX_MODEL_FOR_TOKEN_CLASSIFICATION_MAPPING''',
         '''FLAX_MODEL_FOR_VISION_2_SEQ_MAPPING''',
         '''FLAX_MODEL_MAPPING''',
         '''FlaxAutoModel''',
         '''FlaxAutoModelForCausalLM''',
         '''FlaxAutoModelForImageClassification''',
         '''FlaxAutoModelForMaskedLM''',
         '''FlaxAutoModelForMultipleChoice''',
         '''FlaxAutoModelForNextSentencePrediction''',
         '''FlaxAutoModelForPreTraining''',
         '''FlaxAutoModelForQuestionAnswering''',
         '''FlaxAutoModelForSeq2SeqLM''',
         '''FlaxAutoModelForSequenceClassification''',
         '''FlaxAutoModelForSpeechSeq2Seq''',
         '''FlaxAutoModelForTokenClassification''',
         '''FlaxAutoModelForVision2Seq''',
     ]


if TYPE_CHECKING:
     from .auto_factory import get_values
     from .configuration_auto import ALL_PRETRAINED_CONFIG_ARCHIVE_MAP, CONFIG_MAPPING, MODEL_NAMES_MAPPING, AutoConfig
     from .feature_extraction_auto import FEATURE_EXTRACTOR_MAPPING, AutoFeatureExtractor
     from .image_processing_auto import IMAGE_PROCESSOR_MAPPING, AutoImageProcessor
     from .processing_auto import PROCESSOR_MAPPING, AutoProcessor
     from .tokenization_auto import TOKENIZER_MAPPING, AutoTokenizer

     try:
          if not is_torch_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_auto import (
              MODEL_FOR_AUDIO_CLASSIFICATION_MAPPING,
              MODEL_FOR_AUDIO_FRAME_CLASSIFICATION_MAPPING,
              MODEL_FOR_AUDIO_XVECTOR_MAPPING,
              MODEL_FOR_BACKBONE_MAPPING,
              MODEL_FOR_CAUSAL_IMAGE_MODELING_MAPPING,
              MODEL_FOR_CAUSAL_LM_MAPPING,
              MODEL_FOR_CTC_MAPPING,
              MODEL_FOR_DEPTH_ESTIMATION_MAPPING,
              MODEL_FOR_DOCUMENT_QUESTION_ANSWERING_MAPPING,
              MODEL_FOR_IMAGE_CLASSIFICATION_MAPPING,
              MODEL_FOR_IMAGE_SEGMENTATION_MAPPING,
              MODEL_FOR_INSTANCE_SEGMENTATION_MAPPING,
              MODEL_FOR_MASK_GENERATION_MAPPING,
              MODEL_FOR_MASKED_IMAGE_MODELING_MAPPING,
              MODEL_FOR_MASKED_LM_MAPPING,
              MODEL_FOR_MULTIPLE_CHOICE_MAPPING,
              MODEL_FOR_NEXT_SENTENCE_PREDICTION_MAPPING,
              MODEL_FOR_OBJECT_DETECTION_MAPPING,
              MODEL_FOR_PRETRAINING_MAPPING,
              MODEL_FOR_QUESTION_ANSWERING_MAPPING,
              MODEL_FOR_SEMANTIC_SEGMENTATION_MAPPING,
              MODEL_FOR_SEQ_TO_SEQ_CAUSAL_LM_MAPPING,
              MODEL_FOR_SEQUENCE_CLASSIFICATION_MAPPING,
              MODEL_FOR_SPEECH_SEQ_2_SEQ_MAPPING,
              MODEL_FOR_TABLE_QUESTION_ANSWERING_MAPPING,
              MODEL_FOR_TEXT_ENCODING_MAPPING,
              MODEL_FOR_TOKEN_CLASSIFICATION_MAPPING,
              MODEL_FOR_UNIVERSAL_SEGMENTATION_MAPPING,
              MODEL_FOR_VIDEO_CLASSIFICATION_MAPPING,
              MODEL_FOR_VISION_2_SEQ_MAPPING,
              MODEL_FOR_VISUAL_QUESTION_ANSWERING_MAPPING,
              MODEL_FOR_ZERO_SHOT_IMAGE_CLASSIFICATION_MAPPING,
              MODEL_FOR_ZERO_SHOT_OBJECT_DETECTION_MAPPING,
              MODEL_MAPPING,
              MODEL_WITH_LM_HEAD_MAPPING,
              AutoBackbone,
              AutoModel,
              AutoModelForAudioClassification,
              AutoModelForAudioFrameClassification,
              AutoModelForAudioXVector,
              AutoModelForCausalLM,
              AutoModelForCTC,
              AutoModelForDepthEstimation,
              AutoModelForDocumentQuestionAnswering,
              AutoModelForImageClassification,
              AutoModelForImageSegmentation,
              AutoModelForInstanceSegmentation,
              AutoModelForMaskedImageModeling,
              AutoModelForMaskedLM,
              AutoModelForMaskGeneration,
              AutoModelForMultipleChoice,
              AutoModelForNextSentencePrediction,
              AutoModelForObjectDetection,
              AutoModelForPreTraining,
              AutoModelForQuestionAnswering,
              AutoModelForSemanticSegmentation,
              AutoModelForSeqaSeqLM,
              AutoModelForSequenceClassification,
              AutoModelForSpeechSeqaSeq,
              AutoModelForTableQuestionAnswering,
              AutoModelForTextEncoding,
              AutoModelForTokenClassification,
              AutoModelForUniversalSegmentation,
              AutoModelForVideoClassification,
              AutoModelForVisionaSeq,
              AutoModelForVisualQuestionAnswering,
              AutoModelForZeroShotImageClassification,
              AutoModelForZeroShotObjectDetection,
              AutoModelWithLMHead,
          )

     try:
          if not is_tf_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_tf_auto import (
              TF_MODEL_FOR_AUDIO_CLASSIFICATION_MAPPING,
              TF_MODEL_FOR_CAUSAL_LM_MAPPING,
              TF_MODEL_FOR_DOCUMENT_QUESTION_ANSWERING_MAPPING,
              TF_MODEL_FOR_IMAGE_CLASSIFICATION_MAPPING,
              TF_MODEL_FOR_MASK_GENERATION_MAPPING,
              TF_MODEL_FOR_MASKED_IMAGE_MODELING_MAPPING,
              TF_MODEL_FOR_MASKED_LM_MAPPING,
              TF_MODEL_FOR_MULTIPLE_CHOICE_MAPPING,
              TF_MODEL_FOR_NEXT_SENTENCE_PREDICTION_MAPPING,
              TF_MODEL_FOR_PRETRAINING_MAPPING,
              TF_MODEL_FOR_QUESTION_ANSWERING_MAPPING,
              TF_MODEL_FOR_SEMANTIC_SEGMENTATION_MAPPING,
              TF_MODEL_FOR_SEQ_TO_SEQ_CAUSAL_LM_MAPPING,
              TF_MODEL_FOR_SEQUENCE_CLASSIFICATION_MAPPING,
              TF_MODEL_FOR_SPEECH_SEQ_2_SEQ_MAPPING,
              TF_MODEL_FOR_TABLE_QUESTION_ANSWERING_MAPPING,
              TF_MODEL_FOR_TEXT_ENCODING_MAPPING,
              TF_MODEL_FOR_TOKEN_CLASSIFICATION_MAPPING,
              TF_MODEL_FOR_VISION_2_SEQ_MAPPING,
              TF_MODEL_FOR_ZERO_SHOT_IMAGE_CLASSIFICATION_MAPPING,
              TF_MODEL_MAPPING,
              TF_MODEL_WITH_LM_HEAD_MAPPING,
              TFAutoModel,
              TFAutoModelForAudioClassification,
              TFAutoModelForCausalLM,
              TFAutoModelForDocumentQuestionAnswering,
              TFAutoModelForImageClassification,
              TFAutoModelForMaskedImageModeling,
              TFAutoModelForMaskedLM,
              TFAutoModelForMaskGeneration,
              TFAutoModelForMultipleChoice,
              TFAutoModelForNextSentencePrediction,
              TFAutoModelForPreTraining,
              TFAutoModelForQuestionAnswering,
              TFAutoModelForSemanticSegmentation,
              TFAutoModelForSeqaSeqLM,
              TFAutoModelForSequenceClassification,
              TFAutoModelForSpeechSeqaSeq,
              TFAutoModelForTableQuestionAnswering,
              TFAutoModelForTextEncoding,
              TFAutoModelForTokenClassification,
              TFAutoModelForVisionaSeq,
              TFAutoModelForZeroShotImageClassification,
              TFAutoModelWithLMHead,
          )

     try:
          if not is_flax_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_flax_auto import (
              FLAX_MODEL_FOR_AUDIO_CLASSIFICATION_MAPPING,
              FLAX_MODEL_FOR_CAUSAL_LM_MAPPING,
              FLAX_MODEL_FOR_IMAGE_CLASSIFICATION_MAPPING,
              FLAX_MODEL_FOR_MASKED_LM_MAPPING,
              FLAX_MODEL_FOR_MULTIPLE_CHOICE_MAPPING,
              FLAX_MODEL_FOR_NEXT_SENTENCE_PREDICTION_MAPPING,
              FLAX_MODEL_FOR_PRETRAINING_MAPPING,
              FLAX_MODEL_FOR_QUESTION_ANSWERING_MAPPING,
              FLAX_MODEL_FOR_SEQ_TO_SEQ_CAUSAL_LM_MAPPING,
              FLAX_MODEL_FOR_SEQUENCE_CLASSIFICATION_MAPPING,
              FLAX_MODEL_FOR_SPEECH_SEQ_2_SEQ_MAPPING,
              FLAX_MODEL_FOR_TOKEN_CLASSIFICATION_MAPPING,
              FLAX_MODEL_FOR_VISION_2_SEQ_MAPPING,
              FLAX_MODEL_MAPPING,
              FlaxAutoModel,
              FlaxAutoModelForCausalLM,
              FlaxAutoModelForImageClassification,
              FlaxAutoModelForMaskedLM,
              FlaxAutoModelForMultipleChoice,
              FlaxAutoModelForNextSentencePrediction,
              FlaxAutoModelForPreTraining,
              FlaxAutoModelForQuestionAnswering,
              FlaxAutoModelForSeqaSeqLM,
              FlaxAutoModelForSequenceClassification,
              FlaxAutoModelForSpeechSeqaSeq,
              FlaxAutoModelForTokenClassification,
              FlaxAutoModelForVisionaSeq,
          )

else:
     import sys

     SCREAMING_SNAKE_CASE_  :      str							=      _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)







"""simple docstring"""




import math

import qiskit
from qiskit import Aer, ClassicalRegister, QuantumCircuit, QuantumRegister, execute



def 						UpperCAmelCase__ (					A__ = 1						,     A__ = 1 )   ->   qiskit.result.counts.Counts:




   """simple docstring"""
   if isinstance(A__						,     A__ ) or isinstance(A__						,     A__ ):
      raise TypeError("inputs must be integers." )
   if (bit_a < 0) or (bit_a < 0):
      raise ValueError("inputs must be positive." )
   if (math.floor(A__ ) != bit_a) or (math.floor(A__ ) != bit_a):
      raise ValueError("inputs must be exact integers." )
   if (bit_a > 1) or (bit_a > 1):
      raise ValueError("inputs must be less or equal to 1." )

   # build registers
   lowerCamelCase__						       =      QuantumRegister(2						,     "qr" )
   lowerCamelCase__						       =      ClassicalRegister(2						,     "cr" )

   lowerCamelCase__						       =      QuantumCircuit(A__						,     A__ )

   # entanglement the qubits
   quantum_circuit.h(1 )
   quantum_circuit.cx(1						,     0 )

   # send the information
   lowerCamelCase__						       =      str(A__ ) + str(A__ )

   if c_information == "11":
      quantum_circuit.x(1 )
      quantum_circuit.z(1 )
   elif c_information == "10":
      quantum_circuit.z(1 )
   elif c_information == "01":
      quantum_circuit.x(1 )
   else:
      quantum_circuit.i(1 )

   # unentangled the circuit
   quantum_circuit.cx(1						,     0 )
   quantum_circuit.h(1 )

   # measure the circuit
   quantum_circuit.measure(A__						,     A__ )

   lowerCamelCase__						       =      Aer.get_backend("aer_simulator" )
   lowerCamelCase__						       =      execute(A__						,     A__						,     shots=1000 )

   return job.result().get_counts(A__ )


if __name__ == "__main__":
     print(F'''Counts for classical state send: {superdense_coding(1,1)}''')




