UpperCAmelCase_			    =							tuple[float, float, float]
UpperCAmelCase_			    =							tuple[float, float, float]




def       lowerCAmelCase_     (		lowercase:							Pointad  ,					lowercase:							Pointad		)    ->				Vectorad:







 '''simple docstring'''
 _UpperCamelCase:     List[Any]							= end_pointa[0] - end_pointa[0]
 _UpperCamelCase:     Optional[Any]							= end_pointa[1] - end_pointa[1]
 _UpperCamelCase:     Dict							= end_pointa[2] - end_pointa[2]
 return (x, y, z)




def       lowerCAmelCase_     (		lowercase:							Vectorad  ,					lowercase:							Vectorad		)    ->				Vectorad:







 '''simple docstring'''
 _UpperCamelCase:     List[Any]							= ab[1] * ac[2] - ab[2] * ac[1]  # *i
 _UpperCamelCase:     Any							= (ab[0] * ac[2] - ab[2] * ac[0]) * -1  # *j
 _UpperCamelCase:     Any							= ab[0] * ac[1] - ab[1] * ac[0]  # *k
 return (x, y, z)




def       lowerCAmelCase_     (		lowercase:							Vectorad  ,					lowercase:							int		)    ->				bool:







 '''simple docstring'''
 return tuple(round(lowercase  ,					lowercase		) for x in vector		) == (0, 0, 0)





def       lowerCAmelCase_     (		lowercase:							Pointad  ,					lowercase:							Pointad  ,					lowercase:							Pointad  ,					lowercase:							int = 10		)    ->				bool:







 '''simple docstring'''
 _UpperCamelCase:     Union[str, Any]							= create_vector(lowercase  ,					lowercase		)
 _UpperCamelCase:     str							= create_vector(lowercase  ,					lowercase		)
 return is_zero_vector(get_ad_vectors_cross(lowercase  ,					lowercase		)  ,					lowercase		)
from typing import TYPE_CHECKING

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


UpperCAmelCase_			    =							{'''configuration_xlnet''': ['''XLNET_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''XLNetConfig''']}

try:
  if not is_sentencepiece_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  UpperCAmelCase_			    =							['''XLNetTokenizer''']

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

try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  UpperCAmelCase_			    =							[
      '''XLNET_PRETRAINED_MODEL_ARCHIVE_LIST''',
      '''XLNetForMultipleChoice''',
      '''XLNetForQuestionAnswering''',
      '''XLNetForQuestionAnsweringSimple''',
      '''XLNetForSequenceClassification''',
      '''XLNetForTokenClassification''',
      '''XLNetLMHeadModel''',
      '''XLNetModel''',
      '''XLNetPreTrainedModel''',
      '''load_tf_weights_in_xlnet''',
  ]

try:
  if not is_tf_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  UpperCAmelCase_			    =							[
      '''TF_XLNET_PRETRAINED_MODEL_ARCHIVE_LIST''',
      '''TFXLNetForMultipleChoice''',
      '''TFXLNetForQuestionAnsweringSimple''',
      '''TFXLNetForSequenceClassification''',
      '''TFXLNetForTokenClassification''',
      '''TFXLNetLMHeadModel''',
      '''TFXLNetMainLayer''',
      '''TFXLNetModel''',
      '''TFXLNetPreTrainedModel''',
  ]


if TYPE_CHECKING:
  from .configuration_xlnet import XLNET_PRETRAINED_CONFIG_ARCHIVE_MAP, XLNetConfig

  try:
    if not is_sentencepiece_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .tokenization_xlnet import XLNetTokenizer

  try:
    if not is_tokenizers_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .tokenization_xlnet_fast import XLNetTokenizerFast

  try:
    if not is_torch_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_xlnet import (
        XLNET_PRETRAINED_MODEL_ARCHIVE_LIST,
        XLNetForMultipleChoice,
        XLNetForQuestionAnswering,
        XLNetForQuestionAnsweringSimple,
        XLNetForSequenceClassification,
        XLNetForTokenClassification,
        XLNetLMHeadModel,
        XLNetModel,
        XLNetPreTrainedModel,
        load_tf_weights_in_xlnet,
    )

  try:
    if not is_tf_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_tf_xlnet import (
        TF_XLNET_PRETRAINED_MODEL_ARCHIVE_LIST,
        TFXLNetForMultipleChoice,
        TFXLNetForQuestionAnsweringSimple,
        TFXLNetForSequenceClassification,
        TFXLNetForTokenClassification,
        TFXLNetLMHeadModel,
        TFXLNetMainLayer,
        TFXLNetModel,
        TFXLNetPreTrainedModel,
    )

else:
  import sys

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