"""simple docstring"""







from argparse import ArgumentParser

from . import BaseTransformersCLICommand



def 			lowercase__(       __SCREAMING_SNAKE_CASE							:     int      ):
     return DownloadCommand(args.model     ,			args.cache_dir     ,			args.force     ,			args.trust_remote_code      )







class        UpperCamelCase		(			lowerCAmelCase_  ):
   @staticmethod
   def 			_UpperCAmelCase   (			__UpperCamelCase			)	->      List[str]:


        '''simple docstring'''


        lowercase_	:				Tuple													=	parser.add_parser('download'			)
        download_parser.add_argument(
            '--cache-dir'     ,type=snake_case_     ,default=snake_case_     ,help='Path to location to store the models'			)
        download_parser.add_argument(
            '--force'     ,action='store_true'     ,help='Force the model to be download even if already in cache-dir'			)
        download_parser.add_argument(
            '--trust-remote-code'     ,action='store_true'     ,help='Whether or not to allow for custom models defined on the Hub in their own modeling files. Use only if you\'ve reviewed the code as it will execute on your local machine'     ,)
        download_parser.add_argument('model'     ,type=snake_case_     ,help='Name of the model to download'			)
        download_parser.set_defaults(func=snake_case_			)
   def __init__(			self     ,__UpperCamelCase     ,__UpperCamelCase     ,__UpperCamelCase     ,__UpperCamelCase			)	->      Tuple:


        '''simple docstring'''


        lowercase_	:				List[str]													=	model
        lowercase_	:				Optional[Any]													=	cache
        lowercase_	:				Tuple													=	force
        lowercase_	:				Dict													=	trust_remote_code







   def 			_UpperCAmelCase   (			self			)	->      Any:


        '''simple docstring'''


        from ..models.auto import AutoModel, AutoTokenizer

        AutoModel.from_pretrained(
            self._model     ,cache_dir=self._cache     ,force_download=self._force     ,trust_remote_code=self._trust_remote_code			)
        AutoTokenizer.from_pretrained(
            self._model     ,cache_dir=self._cache     ,force_download=self._force     ,trust_remote_code=self._trust_remote_code			)








'''simple docstring'''




def 	UpperCAmelCase_							(					__lowercase							:      int       )		->       int:


     '''simple docstring'''



     if not isinstance(__lowercase			,     __lowercase       ) or number < 0:
          raise ValueError("Input must be a non-negative integer"       )

     _UpperCAmelCase     							=   0
     while number:
          # This way we arrive at next set bit (next 1) instead of looping
          # through each bit and checking for 1s hence the
          # loop won't run 32 times it will only run the number of `1` times
          number &= number - 1
          count += 1
     return count


if __name__ == "__main__":
  import doctest

  doctest.testmod()




