
'''simple docstring'''
from typing import TYPE_CHECKING

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


lowercase__						       =      {
    "configuration_electra": ["ELECTRA_PRETRAINED_CONFIG_ARCHIVE_MAP", "ElectraConfig", "ElectraOnnxConfig"],
    "tokenization_electra": ["ElectraTokenizer"],
}

try:
						if not is_tokenizers_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowercase__						       =      ["ElectraTokenizerFast"]

try:
						if not is_torch_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowercase__						       =      [
						    "ELECTRA_PRETRAINED_MODEL_ARCHIVE_LIST",
						    "ElectraForCausalLM",
						    "ElectraForMaskedLM",
						    "ElectraForMultipleChoice",
						    "ElectraForPreTraining",
						    "ElectraForQuestionAnswering",
						    "ElectraForSequenceClassification",
						    "ElectraForTokenClassification",
						    "ElectraModel",
						    "ElectraPreTrainedModel",
						    "load_tf_weights_in_electra",
						]

try:
						if not is_tf_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowercase__						       =      [
						    "TF_ELECTRA_PRETRAINED_MODEL_ARCHIVE_LIST",
						    "TFElectraForMaskedLM",
						    "TFElectraForMultipleChoice",
						    "TFElectraForPreTraining",
						    "TFElectraForQuestionAnswering",
						    "TFElectraForSequenceClassification",
						    "TFElectraForTokenClassification",
						    "TFElectraModel",
						    "TFElectraPreTrainedModel",
						]

try:
						if not is_flax_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowercase__						       =      [
						    "FlaxElectraForCausalLM",
						    "FlaxElectraForMaskedLM",
						    "FlaxElectraForMultipleChoice",
						    "FlaxElectraForPreTraining",
						    "FlaxElectraForQuestionAnswering",
						    "FlaxElectraForSequenceClassification",
						    "FlaxElectraForTokenClassification",
						    "FlaxElectraModel",
						    "FlaxElectraPreTrainedModel",
						]


if TYPE_CHECKING:
						from .configuration_electra import ELECTRA_PRETRAINED_CONFIG_ARCHIVE_MAP, ElectraConfig, ElectraOnnxConfig
						from .tokenization_electra import ElectraTokenizer

						try:
												if not is_tokenizers_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .tokenization_electra_fast import ElectraTokenizerFast

						try:
												if not is_torch_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_electra import (
												    ELECTRA_PRETRAINED_MODEL_ARCHIVE_LIST,
												    ElectraForCausalLM,
												    ElectraForMaskedLM,
												    ElectraForMultipleChoice,
												    ElectraForPreTraining,
												    ElectraForQuestionAnswering,
												    ElectraForSequenceClassification,
												    ElectraForTokenClassification,
												    ElectraModel,
												    ElectraPreTrainedModel,
												    load_tf_weights_in_electra,
												)

						try:
												if not is_tf_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_tf_electra import (
												    TF_ELECTRA_PRETRAINED_MODEL_ARCHIVE_LIST,
												    TFElectraForMaskedLM,
												    TFElectraForMultipleChoice,
												    TFElectraForPreTraining,
												    TFElectraForQuestionAnswering,
												    TFElectraForSequenceClassification,
												    TFElectraForTokenClassification,
												    TFElectraModel,
												    TFElectraPreTrainedModel,
												)

						try:
												if not is_flax_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_flax_electra import (
												    FlaxElectraForCausalLM,
												    FlaxElectraForMaskedLM,
												    FlaxElectraForMultipleChoice,
												    FlaxElectraForPreTraining,
												    FlaxElectraForQuestionAnswering,
												    FlaxElectraForSequenceClassification,
												    FlaxElectraForTokenClassification,
												    FlaxElectraModel,
												    FlaxElectraPreTrainedModel,
												)

else:
						import sys

						lowercase__						       =      _LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)




'''simple docstring'''
import numpy as np




def    _UpperCamelCase						(       SCREAMING_SNAKE_CASE__			)  ->							np.ndarray:


		'''simple docstring'''


		return 1 / (1 + np.exp(-vector			))




def    _UpperCamelCase						(       SCREAMING_SNAKE_CASE__			)  ->							np.ndarray:


		'''simple docstring'''


		return vector * sigmoid(SCREAMING_SNAKE_CASE__			)


if __name__ == "__main__":
						import doctest

						doctest.testmod()


