



'''simple docstring'''
from __future__ import annotations

snake_case_					:      int    			=    8.9_88e9  # units = N * m^s * C^-2






def A__       (	UpperCAmelCase_    ,    UpperCAmelCase_    ,    UpperCAmelCase_    ,    UpperCAmelCase_				):
						_UpperCamelCase   :						Optional[Any]												=  abs(chargea * chargea				)

						if (force, chargea, chargea, distance).count(0				) != 1:
												raise ValueError('One and only one argument must be 0'				)
						if distance < 0:
												raise ValueError('Distance cannot be negative'				)
						if force == 0:
												_UpperCamelCase   :						Tuple												=  COULOMBS_CONSTANT * charge_product / (distance**2)
												return {"force": force}
						elif chargea == 0:
												_UpperCamelCase   :						Tuple												=  abs(UpperCAmelCase_				) * (distance**2) / (COULOMBS_CONSTANT * chargea)
												return {"charge1": chargea}
						elif chargea == 0:
												_UpperCamelCase   :						Dict												=  abs(UpperCAmelCase_				) * (distance**2) / (COULOMBS_CONSTANT * chargea)
												return {"charge2": chargea}
						elif distance == 0:
												_UpperCamelCase   :						Tuple												=  (COULOMBS_CONSTANT * charge_product / abs(UpperCAmelCase_				)) ** 0.5
												return {"distance": distance}
						raise ValueError('Exactly one argument must be 0'				)


if __name__ == "__main__":
					import doctest

					doctest.testmod()







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

from ....utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available, is_vision_available


snake_case_					:      List[Any]    			=    {'configuration_van': ['VAN_PRETRAINED_CONFIG_ARCHIVE_MAP', 'VanConfig']}


try:
					if not is_torch_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					snake_case_					:      str    			=    [
					    'VAN_PRETRAINED_MODEL_ARCHIVE_LIST',
					    'VanForImageClassification',
					    'VanModel',
					    'VanPreTrainedModel',
					]

if TYPE_CHECKING:
					from .configuration_van import VAN_PRETRAINED_CONFIG_ARCHIVE_MAP, VanConfig

					try:
										if not is_torch_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .modeling_van import (
										    VAN_PRETRAINED_MODEL_ARCHIVE_LIST,
										    VanForImageClassification,
										    VanModel,
										    VanPreTrainedModel,
										)

else:
					import sys

					snake_case_					:      List[Any]    			=    _LazyModule(__name__, globals()['__file__'], _import_structure)


