





'''simple docstring'''

from ..utils import DummyObject, requires_backends







class __a (   metaclass=_snake_case			):
   __UpperCamelCase   : Tuple	      =	['note_seq']





   def __init__(					self				:			Optional[Any]				,*lowerCamelCase				:			Tuple				,**lowerCamelCase				:			Any    ):

      '''simple docstring'''

      requires_backends(self				,["""note_seq"""]    )





   @classmethod
   def      UpperCAmelCase__     (					cls				:			Dict				,*lowerCamelCase				:			Tuple				,**lowerCamelCase				:			Optional[Any]    ):

      '''simple docstring'''

      requires_backends(cls				,["""note_seq"""]    )





   @classmethod
   def      UpperCAmelCase__     (					cls				:			List[str]				,*lowerCamelCase				:			Optional[Any]				,**lowerCamelCase				:			str    ):

      '''simple docstring'''

      requires_backends(cls				,["""note_seq"""]    )












'''simple docstring'''

import timeit

import numpy as np

import datasets
from datasets.arrow_writer import ArrowWriter
from datasets.features.features import _ArrayXD

def 						__magic_name__       (							__UpperCAmelCase      )						->					Tuple:

   '''simple docstring'''







   def wrapper(*__UpperCAmelCase							,	**__UpperCAmelCase      ):
      __SCREAMING_SNAKE_CASE      							=       timeit.default_timer()
      __SCREAMING_SNAKE_CASE      							=       func(*__UpperCAmelCase							,	**__UpperCAmelCase      )
      __SCREAMING_SNAKE_CASE      							=       timeit.default_timer() - starttime
      return delta

   __SCREAMING_SNAKE_CASE      							=       func.__name__

   return wrapper

def 						__magic_name__       (							__UpperCAmelCase							,	__UpperCAmelCase=100							,	__UpperCAmelCase=None      )						->					Optional[Any]:

   '''simple docstring'''







   __SCREAMING_SNAKE_CASE      							=       []
   __SCREAMING_SNAKE_CASE      							=       seq_shapes or {}
   for i in range(__UpperCAmelCase      ):
      __SCREAMING_SNAKE_CASE      							=       {}
      for col_id, (k, v) in enumerate(features.items()      ):
         if isinstance(__UpperCAmelCase							,	_ArrayXD      ):
            __SCREAMING_SNAKE_CASE      							=       np.random.rand(*v.shape      ).astype(v.dtype      )
         elif isinstance(__UpperCAmelCase							,	datasets.Value      ):
            if v.dtype == "string":
               __SCREAMING_SNAKE_CASE      							=       """The small grey turtle was surprisingly fast when challenged."""
            else:
               __SCREAMING_SNAKE_CASE      							=       np.random.randint(10							,	size=1      ).astype(v.dtype      ).item()
         elif isinstance(__UpperCAmelCase							,	datasets.Sequence      ):
            while isinstance(__UpperCAmelCase							,	datasets.Sequence      ):
               __SCREAMING_SNAKE_CASE      							=       v.feature
            __SCREAMING_SNAKE_CASE      							=       seq_shapes[k]
            __SCREAMING_SNAKE_CASE      							=       np.random.rand(*__UpperCAmelCase      ).astype(v.dtype      )
         __SCREAMING_SNAKE_CASE      							=       data

      dummy_data.append((i, example)      )

   return dummy_data







def 						__magic_name__       (							__UpperCAmelCase							,	__UpperCAmelCase							,	__UpperCAmelCase=100							,	__UpperCAmelCase=None      )						->					str:

   '''simple docstring'''







   __SCREAMING_SNAKE_CASE      							=       generate_examples(__UpperCAmelCase							,	num_examples=__UpperCAmelCase							,	seq_shapes=__UpperCAmelCase      )

   with ArrowWriter(features=__UpperCAmelCase							,	path=__UpperCAmelCase      ) as writer:
      for key, record in dummy_data:
         __SCREAMING_SNAKE_CASE      							=       features.encode_example(__UpperCAmelCase      )
         writer.write(__UpperCAmelCase      )

      __SCREAMING_SNAKE_CASE							,     __SCREAMING_SNAKE_CASE      							=       writer.finalize()

   if not num_final_examples == num_examples:
      raise ValueError(
          f"""Error writing the dataset, wrote {num_final_examples} examples but should have written {num_examples}."""      )

   __SCREAMING_SNAKE_CASE      							=       datasets.Dataset.from_file(filename=__UpperCAmelCase							,	info=datasets.DatasetInfo(features=__UpperCAmelCase      )      )

   return dataset





