code: 
  
  
  
  
  import csv
  import os
  
  import pytest
  
  from datasets import Dataset, DatasetDict, Features, NamedSplit, Value
  from datasets.io.csv import CsvDatasetReader, CsvDatasetWriter
  
  from ..utils import assert_arrow_memory_doesnt_increase, assert_arrow_memory_increases
  
  def lowercase						(     SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE   ) ->       int:
  
  
  			'''simple docstring'''
  
  
  
  
  
  
  
  			assert isinstance(_A					,						_A   )
  			assert dataset.num_rows == 4
  			assert dataset.num_columns == 3
  			assert dataset.column_names == ["col_1", "col_2", "col_3"]
  			for feature, expected_dtype in expected_features.items():
  						assert dataset.features[feature].dtype == expected_dtype
  
  @pytest.mark.parametrize('keep_in_memory'					,						[False, True]   )
  def lowercase						(     SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE   ) ->       str:
  
  
  			'''simple docstring'''
  
  
  
  
  
  
  
  			SCREAMING_SNAKE_CASE_			=	tmp_path / 'cache'
  			SCREAMING_SNAKE_CASE_			=	{'col_1': 'int64', 'col_2': 'int64', 'col_3': 'float64'}
  			with assert_arrow_memory_increases() if keep_in_memory else assert_arrow_memory_doesnt_increase():
  						SCREAMING_SNAKE_CASE_			=	CsvDatasetReader(_A					,						cache_dir=_A					,						keep_in_memory=_A   ).read()
  			_check_csv_dataset(_A					,						_A   )
  
  @pytest.mark.parametrize(
      'features'					,						[
          None,
          {'col_1': 'string', 'col_2': 'int64', 'col_3': 'float64'},
          {'col_1': 'string', 'col_2': 'string', 'col_3': 'string'},
          {'col_1': 'int32', 'col_2': 'int32', 'col_3': 'int32'},
          {'col_1': 'float32', 'col_2': 'float32', 'col_3': 'float32'},
      ]					,						)
  def lowercase						(     SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE   ) ->       Dict:
  
  
  			'''simple docstring'''
  
  
  
  
  
  
  
  			SCREAMING_SNAKE_CASE_			=	tmp_path / 'cache'
  			# CSV file loses col_1 string dtype information: default now is "int64" instead of "string"
  			SCREAMING_SNAKE_CASE_			=	{'col_1': 'int64', 'col_2': 'int64', 'col_3': 'float64'}
  			SCREAMING_SNAKE_CASE_			=	features.copy() if features else default_expected_features
  			SCREAMING_SNAKE_CASE_			=	(
  			    Features({feature: Value(_A   ) for feature, dtype in features.items()}   ) if features is not None else None
  			)
  			SCREAMING_SNAKE_CASE_			=	CsvDatasetReader(_A					,						features=_A					,						cache_dir=_A   ).read()
  			_check_csv_dataset(_A					,						_A   )
  
  @pytest.mark.parametrize('split'					,						[None, NamedSplit('train'   ), 'train', 'test']   )
  def lowercase						(     SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE   ) ->       Optional[int]:
  
  
  			'''simple docstring'''
  
  
  
  
  
  
  
  			SCREAMING_SNAKE_CASE_			=	tmp_path / 'cache'
  			SCREAMING_SNAKE_CASE_			=	{'col_1': 'int64', 'col_2': 'int64', 'col_3': 'float64'}
  			SCREAMING_SNAKE_CASE_			=	CsvDatasetReader(_A					,						cache_dir=_A					,						split=_A   ).read()
  			_check_csv_dataset(_A					,						_A   )
  			assert dataset.split == split if split else "train"
  
  @pytest.mark.parametrize('path_type'					,						[str, list]   )
  def lowercase						(     SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE   ) ->       List[Any]:
  
  
  			'''simple docstring'''
  
  
  
  
  
  
  
  			if issubclass(_A					,						_A   ):
  						SCREAMING_SNAKE_CASE_			=	csv_path
  			elif issubclass(_A					,						_A   ):
  						SCREAMING_SNAKE_CASE_			=	[csv_path]
  			SCREAMING_SNAKE_CASE_			=	tmp_path / 'cache'
  			SCREAMING_SNAKE_CASE_			=	{'col_1': 'int64', 'col_2': 'int64', 'col_3': 'float64'}
  			SCREAMING_SNAKE_CASE_			=	CsvDatasetReader(_A					,						cache_dir=_A   ).read()
  			_check_csv_dataset(_A					,						_A   )
  
  def lowercase						(     SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE=("train",)   ) ->       Optional[int]:
  
  
  			'''simple docstring'''
  
  
  
  
  
  
  
  			assert isinstance(_A					,						_A   )
  			for split in splits:
  						SCREAMING_SNAKE_CASE_			=	dataset_dict[split]
  						assert dataset.num_rows == 4
  						assert dataset.num_columns == 3
  						assert dataset.column_names == ["col_1", "col_2", "col_3"]
  						for feature, expected_dtype in expected_features.items():
  									assert dataset.features[feature].dtype == expected_dtype
  
  @pytest.mark.parametrize('keep_in_memory'					,						[False, True]   )
  def lowercase						(     SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE   ) ->       Any:
  
  
  			'''simple docstring'''
  
  
  
  
  
  
  
  			SCREAMING_SNAKE_CASE_			=	tmp_path / 'cache'
  			SCREAMING_SNAKE_CASE_			=	{'col_1': 'int64', 'col_2': 'int64', 'col_3': 'float64'}
  			with assert_arrow_memory_increases() if keep_in_memory else assert_arrow_memory_doesnt_increase():
  						SCREAMING_SNAKE_CASE_			=	CsvDatasetReader({'train': csv_path}					,						cache_dir=_A					,						keep_in_memory=_A   ).read()
  			_check_csv_datasetdict(_A					,						_A   )
  
  @pytest.mark.parametrize(
      'features'					,						[
          None,
          {'col_1': 'string', 'col_2': 'int64', 'col_3': 'float64'},
          {'col_1': 'string', 'col_2': 'string', 'col_3': 'string'},
          {'col_1': 'int32', 'col_2': 'int32', 'col_3': 'int32'},
          {'col_1': 'float32', 'col_2': 'float32', 'col_3': 'float32'},
      ]					,						)
  def lowercase						(     SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE   ) ->       Any:
  
  
  			'''simple docstring'''
  
  
  
  
  
  
  
  			SCREAMING_SNAKE_CASE_			=	tmp_path / 'cache'
  			# CSV file loses col_1 string dtype information: default now is "int64" instead of "string"
  			SCREAMING_SNAKE_CASE_			=	{'col_1': 'int64', 'col_2': 'int64', 'col_3': 'float64'}
  			SCREAMING_SNAKE_CASE_			=	features.copy() if features else default_expected_features
  			SCREAMING_SNAKE_CASE_			=	(
  			    Features({feature: Value(_A   ) for feature, dtype in features.items()}   ) if features is not None else None
  			)
  			SCREAMING_SNAKE_CASE_			=	CsvDatasetReader({'train': csv_path}					,						features=_A					,						cache_dir=_A   ).read()
  			_check_csv_datasetdict(_A					,						_A   )
  
  @pytest.mark.parametrize('split'					,						[None, NamedSplit('train'   ), 'train', 'test']   )
  def lowercase						(     SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE   ) ->       int:
  
  
  			'''simple docstring'''
  
  
  
  
  
  
  
  			if split:
  						SCREAMING_SNAKE_CASE_			=	{split: csv_path}
  			else:
  						SCREAMING_SNAKE_CASE_			=	{'train': csv_path, 'test': csv_path}
  			SCREAMING_SNAKE_CASE_			=	tmp_path / 'cache'
  			SCREAMING_SNAKE_CASE_			=	{'col_1': 'int64', 'col_2': 'int64', 'col_3': 'float64'}
  			SCREAMING_SNAKE_CASE_			=	CsvDatasetReader(_A					,						cache_dir=_A   ).read()
  			_check_csv_datasetdict(_A					,						_A					,						splits=list(path.keys()   )   )
  			assert all(dataset[split].split == split for split in path.keys()   )
  
  def lowercase						(     SCREAMING_SNAKE_CASE   ) ->       str:
  
  
  			'''simple docstring'''
  
  
  
  
  
  
  
  			with open(_A					,						encoding='utf-8'   ) as csvfile:
  						yield from csv.reader(_A   )
  
  def lowercase						(     SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE   ) ->       Optional[int]:
  
  
  			'''simple docstring'''
  
  
  
  
  
  
  
  			SCREAMING_SNAKE_CASE_			=	tmp_path / 'cache'
  			SCREAMING_SNAKE_CASE_			=	os.path.join(_A					,						'tmp.csv'   )
  			SCREAMING_SNAKE_CASE_			=	CsvDatasetReader({'train': csv_path}					,						cache_dir=_A   ).read()
  			CsvDatasetWriter(dataset['train']					,						_A					,						num_proc=1   ).write()
  
  			SCREAMING_SNAKE_CASE_			=	iter_csv_file(_A   )
  			SCREAMING_SNAKE_CASE_			=	iter_csv_file(_A   )
  
  			for rowa, rowa in zip(_A					,						_A   ):
  						assert rowa == rowa
  
  def lowercase						(     SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE   ) ->       Union[str, Any]:
  
  
  			'''simple docstring'''
  
  
  
  
  
  
  
  			SCREAMING_SNAKE_CASE_			=	tmp_path / 'cache'
  			SCREAMING_SNAKE_CASE_			=	os.path.join(_A					,						'tmp.csv'   )
  			SCREAMING_SNAKE_CASE_			=	CsvDatasetReader({'train': csv_path}					,						cache_dir=_A   ).read()
  			CsvDatasetWriter(dataset['train']					,						_A					,						num_proc=2   ).write()
  
  			SCREAMING_SNAKE_CASE_			=	iter_csv_file(_A   )
  			SCREAMING_SNAKE_CASE_			=	iter_csv_file(_A   )
  
  			for rowa, rowa in zip(_A					,						_A   ):
  						assert rowa == rowa
  
  def lowercase						(     SCREAMING_SNAKE_CASE					,						SCREAMING_SNAKE_CASE   ) ->       str:
  
  
  			'''simple docstring'''
  
  
  
  
  
  
  
  			SCREAMING_SNAKE_CASE_			=	tmp_path / 'cache'
  			SCREAMING_SNAKE_CASE_			=	os.path.join(_A					,						'tmp.csv'   )
  			SCREAMING_SNAKE_CASE_			=	CsvDatasetReader({'train': csv_path}					,						cache_dir=_A   ).read()
  			with pytest.raises(_A   ):
  						CsvDatasetWriter(dataset['train']					,						_A					,						num_proc=0   )
  
style_context: 
  
  
  
  
  from dataclasses import dataclass
  from typing import List, Optional, Union
  
  import numpy as np
  import PIL
  
  from ...utils import BaseOutput, is_invisible_watermark_available, is_torch_available, is_transformers_available
  
  
  
  @dataclass
  class 			a_					(    SCREAMING_SNAKE_CASE__    ):
  	A						       =   42
  
  
  if is_transformers_available() and is_torch_available() and is_invisible_watermark_available():
  				from .pipeline_stable_diffusion_xl import StableDiffusionXLPipeline
  				from .pipeline_stable_diffusion_xl_imgaimg import StableDiffusionXLImgaImgPipeline
  