




'''simple docstring'''



from typing import TYPE_CHECKING

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


UpperCAmelCase_       :  Union[str, Any]      =		{
    '''configuration_gpt2''': ['''GPT2_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''GPT2Config''', '''GPT2OnnxConfig'''],
    '''tokenization_gpt2''': ['''GPT2Tokenizer'''],
}

try:
     if not is_tokenizers_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     UpperCAmelCase_       :  Dict      =		['''GPT2TokenizerFast''']

try:
     if not is_torch_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     UpperCAmelCase_       :  int      =		[
         '''GPT2_PRETRAINED_MODEL_ARCHIVE_LIST''',
         '''GPT2DoubleHeadsModel''',
         '''GPT2ForQuestionAnswering''',
         '''GPT2ForSequenceClassification''',
         '''GPT2ForTokenClassification''',
         '''GPT2LMHeadModel''',
         '''GPT2Model''',
         '''GPT2PreTrainedModel''',
         '''load_tf_weights_in_gpt2''',
     ]

try:
     if not is_tf_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     UpperCAmelCase_       :  List[str]      =		[
         '''TF_GPT2_PRETRAINED_MODEL_ARCHIVE_LIST''',
         '''TFGPT2DoubleHeadsModel''',
         '''TFGPT2ForSequenceClassification''',
         '''TFGPT2LMHeadModel''',
         '''TFGPT2MainLayer''',
         '''TFGPT2Model''',
         '''TFGPT2PreTrainedModel''',
     ]

try:
     if not is_keras_nlp_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     UpperCAmelCase_       :  List[str]      =		['''TFGPT2Tokenizer''']

try:
     if not is_flax_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     UpperCAmelCase_       :  Any      =		['''FlaxGPT2LMHeadModel''', '''FlaxGPT2Model''', '''FlaxGPT2PreTrainedModel''']

if TYPE_CHECKING:
     from .configuration_gpta import GPT2_PRETRAINED_CONFIG_ARCHIVE_MAP, GPTaConfig, GPTaOnnxConfig
     from .tokenization_gpta import GPTaTokenizer

     try:
          if not is_tokenizers_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .tokenization_gpta_fast import GPTaTokenizerFast

     try:
          if not is_torch_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_gpta import (
              GPT2_PRETRAINED_MODEL_ARCHIVE_LIST,
              GPTaDoubleHeadsModel,
              GPTaForQuestionAnswering,
              GPTaForSequenceClassification,
              GPTaForTokenClassification,
              GPTaLMHeadModel,
              GPTaModel,
              GPTaPreTrainedModel,
              load_tf_weights_in_gpta,
          )

     try:
          if not is_tf_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_tf_gpta import (
              TF_GPT2_PRETRAINED_MODEL_ARCHIVE_LIST,
              TFGPTaDoubleHeadsModel,
              TFGPTaForSequenceClassification,
              TFGPTaLMHeadModel,
              TFGPTaMainLayer,
              TFGPTaModel,
              TFGPTaPreTrainedModel,
          )

     try:
          if not is_keras_nlp_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .tokenization_gpta_tf import TFGPTaTokenizer

     try:
          if not is_flax_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_flax_gpta import FlaxGPTaLMHeadModel, FlaxGPTaModel, FlaxGPTaPreTrainedModel

else:
     import sys

     UpperCAmelCase_       :  Optional[int]      =		_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)





'''simple docstring'''



from datetime import date

import requests

UpperCAmelCase_       :  str      =		'''https://api.carbonintensity.org.uk/intensity'''







def 			_UpperCamelCase ()->   str:




     '''simple docstring'''





     __snake_case    					=  requests.get(_lowerCamelCase	).json()['''data'''][0]
     return last_half_hour["intensity"]["actual"]







def 			_UpperCamelCase (_lowerCamelCase							:     Dict   ,	_lowerCamelCase							:     List[Any]	)->   list:




     '''simple docstring'''





     return requests.get(f'''{BASE_URL}/{start}/{end}'''	).json()["data"]


if __name__ == "__main__":
     for entry in fetch_from_to(start=date(2_0_2_0, 1_0, 1), end=date(2_0_2_0, 1_0, 3)):
          print('''from {from} to {to}: {intensity[actual]}'''.format(**entry))
     print(F"""{fetch_last_half_hour() = }""")






