
from typing import TYPE_CHECKING

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


UpperCAmelCase__		:     Tuple     			=      {'configuration_van': ['VAN_PRETRAINED_CONFIG_ARCHIVE_MAP', 'VanConfig']}


try:
   if not is_torch_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   UpperCAmelCase__		:     Optional[Any]     			=      [
       '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

   UpperCAmelCase__		:     Union[str, Any]     			=      _LazyModule(__name__, globals()['__file__'], _import_structure)





def   lowerCamelCase__							(					a		,		a      )      ->   str:
   if a < 0 or b < 0:
      raise ValueError('''the value of both inputs must be positive'''      )

   _A:  Union[str, Any]					=       str(bin(a      )      )[2:]  # remove the leading "0b"
   _A:  Union[str, Any]					=       str(bin(a      )      )[2:]  # remove the leading "0b"

   _A:  Optional[int]					=       max(len(a      )		,		len(a      )      )

   return "0b" + "".join(
       str(int(char_a != char_b      )      )
       for char_a, char_b in zip(a_binary.zfill(a      )		,		b_binary.zfill(a      )      )      )


if __name__ == "__main__":
   import doctest

   doctest.testmod()



