




from typing import Callable, Optional

from .. import Features
from ..packaged_modules.generator.generator import Generator
from .abc import AbstractDatasetInputStream





class 			lowerCamelCase_				( _SCREAMING_SNAKE_CASE   ):


 '''simple docstring'''







 def __init__(				self    :						Union[str, Any]							,							_lowerCAmelCase    :						Callable							,							_lowerCAmelCase    :						Optional[Features] = None							,							_lowerCAmelCase    :						str = None							,							_lowerCAmelCase    :						bool = False							,							_lowerCAmelCase    :						bool = False							,							_lowerCAmelCase    :						Optional[dict] = None							,							_lowerCAmelCase    :						Optional[int] = None							,							**_lowerCAmelCase    :						Union[str, Any]							,							):
       super().__init__(
           features=_lowerCAmelCase							,							cache_dir=_lowerCAmelCase							,							keep_in_memory=_lowerCAmelCase							,							streaming=_lowerCAmelCase							,							num_proc=_lowerCAmelCase							,							**_lowerCAmelCase							,							)
       SCREAMING_SNAKE_CASE_      		=     Generator(
           cache_dir=_lowerCAmelCase							,							features=_lowerCAmelCase							,							generator=_lowerCAmelCase							,							gen_kwargs=_lowerCAmelCase							,							**_lowerCAmelCase							,							)




 def  lowerCAmelCase_    (				self    :						Dict		):
       # Build iterable dataset
       if self.streaming:
             SCREAMING_SNAKE_CASE_      		=     self.builder.as_streaming_dataset(split='train'		)
       # Build regular (map-style) dataset
       else:
             SCREAMING_SNAKE_CASE_      		=     None
             SCREAMING_SNAKE_CASE_      		=     None
             SCREAMING_SNAKE_CASE_      		=     None
             SCREAMING_SNAKE_CASE_      		=     None

             self.builder.download_and_prepare(
                 download_config=_lowerCAmelCase							,							download_mode=_lowerCAmelCase							,							verification_mode=_lowerCAmelCase							,							base_path=_lowerCAmelCase							,							num_proc=self.num_proc							,							)
             SCREAMING_SNAKE_CASE_      		=     self.builder.as_dataset(
                 split='train'							,							verification_mode=_lowerCAmelCase							,							in_memory=self.keep_in_memory		)
       return dataset







"""simple docstring"""



def 	SCREAMING_SNAKE_CASE__       (  snake_case       : int			,					snake_case       : int				)->		str:






     '''simple docstring'''



     if not isinstance(snake_case			,					snake_case				):
          raise ValueError("iterations must be defined as integers"				)
     if not isinstance(snake_case			,					snake_case				) or not number >= 1:
          raise ValueError(
              "starting number must be\n                         and integer and be more than 0"				)
     if not iterations >= 1:
          raise ValueError("Iterations must be done more than 0 times to play FizzBuzz"				)

     UpperCAmelCase__						:    str							=							""
     while number <= iterations:
          if number % 3 == 0:
               out += "Fizz"
          if number % 5 == 0:
               out += "Buzz"
          if 0 not in (number % 3, number % 5):
               out += str(snake_case				)

          # print(out)
          number += 1
          out += " "
     return out


if __name__ == "__main__":
 import doctest

 doctest.testmod()


