





'''simple docstring'''




import contextlib
import csv
import json
import os
import sqlitea
import tarfile
import textwrap
import zipfile

import pyarrow as pa
import pyarrow.parquet as pq
import pytest

import datasets
import datasets.config






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  )					->					int:
     __A						:			Any								=	10
     __A						:			Dict								=	datasets.Features(
         {
             'tokens': datasets.Sequence(datasets.Value('string'  )  ),
             'labels': datasets.Sequence(datasets.ClassLabel(names=['negative', 'positive']  )  ),
             'answers': datasets.Sequence(
                 {
                     'text': datasets.Value('string'  ),
                     'answer_start': datasets.Value('int32'  ),
                 }  ),
             'id': datasets.Value('int64'  ),
         }  )
     __A						:			Dict								=	datasets.Dataset.from_dict(
         {
             'tokens': [['foo'] * 5] * n,
             'labels': [[1] * 5] * n,
             'answers': [{'answer_start': [97], 'text': ['1976']}] * 10,
             'id': list(range(lowerCamelCase__  )  ),
         }			,							features=lowerCamelCase__			,							)
     return dataset






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			str			,							__snake_case  :			List[str]  )					->					Union[str, Any]:
     __A						:			Dict								=	str(tmp_path_factory.mktemp('data'  ) / 'file.arrow'  )
     dataset.map(cache_file_name=lowerCamelCase__  )
     return filename


# FILE_CONTENT + files


lowercase__   :				str      =   '''\
    Text data.
    Second line of data.'''






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Dict  )					->					List[str]:
     __A						:			Union[str, Any]								=	tmp_path_factory.mktemp('data'  ) / '''file.txt'''
     __A						:			int								=	FILE_CONTENT
     with open(lowerCamelCase__			,							'w'  ) as f:
          f.write(lowerCamelCase__  )
     return filename






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			List[Any]  )					->					Dict:
     import bza

     __A						:			int								=	tmp_path_factory.mktemp('data'  ) / '''file.txt.bz2'''
     __A						:			Union[str, Any]								=	bytes(lowerCamelCase__			,							'utf-8'  )
     with bza.open(lowerCamelCase__			,							'wb'  ) as f:
          f.write(lowerCamelCase__  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			List[str]  )					->					List[Any]:
     import gzip

     __A						:			List[Any]								=	str(tmp_path_factory.mktemp('data'  ) / 'file.txt.gz'  )
     __A						:			int								=	bytes(lowerCamelCase__			,							'utf-8'  )
     with gzip.open(lowerCamelCase__			,							'wb'  ) as f:
          f.write(lowerCamelCase__  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			List[str]  )					->					Optional[Any]:
     if datasets.config.LZ4_AVAILABLE:
          import lza.frame

          __A						:			List[str]								=	tmp_path_factory.mktemp('data'  ) / '''file.txt.lz4'''
          __A						:			Optional[int]								=	bytes(lowerCamelCase__			,							'utf-8'  )
          with lza.frame.open(lowerCamelCase__			,							'wb'  ) as f:
               f.write(lowerCamelCase__  )
          return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			str			,							__snake_case  :			Any  )					->					List[str]:
     if datasets.config.PY7ZR_AVAILABLE:
          import pyazr

          __A						:			int								=	tmp_path_factory.mktemp('data'  ) / '''file.txt.7z'''
          with pyazr.SevenZipFile(lowerCamelCase__			,							'w'  ) as archive:
               archive.write(lowerCamelCase__			,							arcname=os.path.basename(lowerCamelCase__  )  )
          return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			int			,							__snake_case  :			str  )					->					List[Any]:
     import tarfile

     __A						:			Optional[Any]								=	tmp_path_factory.mktemp('data'  ) / '''file.txt.tar'''
     with tarfile.TarFile(lowerCamelCase__			,							'w'  ) as f:
          f.add(lowerCamelCase__			,							arcname=os.path.basename(lowerCamelCase__  )  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			str  )					->					str:
     import lzma

     __A						:			List[str]								=	tmp_path_factory.mktemp('data'  ) / '''file.txt.xz'''
     __A						:			Any								=	bytes(lowerCamelCase__			,							'utf-8'  )
     with lzma.open(lowerCamelCase__			,							'wb'  ) as f:
          f.write(lowerCamelCase__  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			List[str]			,							__snake_case  :			Dict  )					->					Union[str, Any]:
     import zipfile

     __A						:			Union[str, Any]								=	tmp_path_factory.mktemp('data'  ) / '''file.txt.zip'''
     with zipfile.ZipFile(lowerCamelCase__			,							'w'  ) as f:
          f.write(lowerCamelCase__			,							arcname=os.path.basename(lowerCamelCase__  )  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			List[str]  )					->					int:
     if datasets.config.ZSTANDARD_AVAILABLE:
          import zstandard as zstd

          __A						:			Any								=	tmp_path_factory.mktemp('data'  ) / '''file.txt.zst'''
          __A						:			List[str]								=	bytes(lowerCamelCase__			,							'utf-8'  )
          with zstd.open(lowerCamelCase__			,							'wb'  ) as f:
               f.write(lowerCamelCase__  )
          return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Tuple  )					->					Tuple:
     __A						:			List[Any]								=	tmp_path_factory.mktemp('data'  ) / '''file.xml'''
     __A						:			Optional[int]								=	textwrap.dedent(
         '\\n    <?xml version="1.0" encoding="UTF-8" ?>\n    <tmx version="1.4">\n      <header segtype="sentence" srclang="ca" />\n      <body>\n        <tu>\n          <tuv xml:lang="ca"><seg>Contingut 1</seg></tuv>\n          <tuv xml:lang="en"><seg>Content 1</seg></tuv>\n        </tu>\n        <tu>\n          <tuv xml:lang="ca"><seg>Contingut 2</seg></tuv>\n          <tuv xml:lang="en"><seg>Content 2</seg></tuv>\n        </tu>\n        <tu>\n          <tuv xml:lang="ca"><seg>Contingut 3</seg></tuv>\n          <tuv xml:lang="en"><seg>Content 3</seg></tuv>\n        </tu>\n        <tu>\n          <tuv xml:lang="ca"><seg>Contingut 4</seg></tuv>\n          <tuv xml:lang="en"><seg>Content 4</seg></tuv>\n        </tu>\n        <tu>\n          <tuv xml:lang="ca"><seg>Contingut 5</seg></tuv>\n          <tuv xml:lang="en"><seg>Content 5</seg></tuv>\n        </tu>\n      </body>\n    </tmx>'  )
     with open(lowerCamelCase__			,							'w'  ) as f:
          f.write(lowerCamelCase__  )
     return filename


lowercase__   :				Optional[Any]      =   [
    {'''col_1''': '''0''', '''col_2''': 0, '''col_3''': 0.0},
    {'''col_1''': '''1''', '''col_2''': 1, '''col_3''': 1.0},
    {'''col_1''': '''2''', '''col_2''': 2, '''col_3''': 2.0},
    {'''col_1''': '''3''', '''col_2''': 3, '''col_3''': 3.0},
]
lowercase__   :				Optional[Any]      =   [
    {'''col_1''': '''4''', '''col_2''': 4, '''col_3''': 4.0},
    {'''col_1''': '''5''', '''col_2''': 5, '''col_3''': 5.0},
]
lowercase__   :				int      =   {
    '''col_1''': ['''0''', '''1''', '''2''', '''3'''],
    '''col_2''': [0, 1, 2, 3],
    '''col_3''': [0.0, 1.0, 2.0, 3.0],
}

lowercase__   :				List[str]      =   [
    {'''col_3''': 0.0, '''col_1''': '''0''', '''col_2''': 0},
    {'''col_3''': 1.0, '''col_1''': '''1''', '''col_2''': 1},
]

lowercase__   :				List[Any]      =   [
    {'''col_1''': '''s0''', '''col_2''': 0, '''col_3''': 0.0},
    {'''col_1''': '''s1''', '''col_2''': 1, '''col_3''': 1.0},
    {'''col_1''': '''s2''', '''col_2''': 2, '''col_3''': 2.0},
    {'''col_1''': '''s3''', '''col_2''': 3, '''col_3''': 3.0},
]






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  )					->					List[str]:
     return DATA_DICT_OF_LISTS






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			List[Any]  )					->					Any:
     __A						:			Optional[Any]								=	datasets.Dataset.from_dict(lowerCamelCase__  )
     __A						:			Union[str, Any]								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset.arrow'  )
     dataset.map(cache_file_name=lowerCamelCase__  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			List[str]  )					->					List[Any]:
     __A						:			Tuple								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset.sqlite'  )
     with contextlib.closing(sqlitea.connect(lowerCamelCase__  )  ) as con:
          __A						:			str								=	con.cursor()
          cur.execute('CREATE TABLE dataset(col_1 text, col_2 int, col_3 real)'  )
          for item in DATA:
               cur.execute('INSERT INTO dataset(col_1, col_2, col_3) VALUES (?, ?, ?)'			,							tuple(item.values()  )  )
          con.commit()
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			int  )					->					Optional[int]:
     __A						:			str								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset.csv'  )
     with open(lowerCamelCase__			,							'w'			,							newline=''  ) as f:
          __A						:			Any								=	csv.DictWriter(lowerCamelCase__			,							fieldnames=['col_1', 'col_2', 'col_3']  )
          writer.writeheader()
          for item in DATA:
               writer.writerow(lowerCamelCase__  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			List[str]  )					->					Optional[int]:
     __A						:			str								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset2.csv'  )
     with open(lowerCamelCase__			,							'w'			,							newline=''  ) as f:
          __A						:			str								=	csv.DictWriter(lowerCamelCase__			,							fieldnames=['col_1', 'col_2', 'col_3']  )
          writer.writeheader()
          for item in DATA:
               writer.writerow(lowerCamelCase__  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Optional[int]			,							__snake_case  :			List[Any]  )					->					int:
     import bza

     __A						:			List[str]								=	tmp_path_factory.mktemp('data'  ) / '''dataset.csv.bz2'''
     with open(lowerCamelCase__			,							'rb'  ) as f:
          __A						:			Union[str, Any]								=	f.read()
     # data = bytes(FILE_CONTENT, "utf-8")
     with bza.open(lowerCamelCase__			,							'wb'  ) as f:
          f.write(lowerCamelCase__  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			int			,							__snake_case  :			Union[str, Any]			,							__snake_case  :			List[Any]  )					->					List[Any]:
     __A						:			Tuple								=	tmp_path_factory.mktemp('data'  ) / '''dataset.csv.zip'''
     with zipfile.ZipFile(lowerCamelCase__			,							'w'  ) as f:
          f.write(lowerCamelCase__			,							arcname=os.path.basename(lowerCamelCase__  )  )
          f.write(lowerCamelCase__			,							arcname=os.path.basename(lowerCamelCase__  )  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Dict			,							__snake_case  :			Optional[Any]			,							__snake_case  :			Optional[Any]  )					->					Optional[int]:
     __A						:			Dict								=	tmp_path_factory.mktemp('data'  ) / '''dataset.csv.zip'''
     with zipfile.ZipFile(lowerCamelCase__			,							'w'  ) as f:
          f.write(lowerCamelCase__			,							arcname=os.path.basename(csv_path.replace('.csv'			,							'.CSV'  )  )  )
          f.write(lowerCamelCase__			,							arcname=os.path.basename(csva_path.replace('.csv'			,							'.CSV'  )  )  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			int			,							__snake_case  :			Optional[int]			,							__snake_case  :			Any  )					->					List[Any]:
     __A						:			Optional[int]								=	tmp_path_factory.mktemp('data'  ) / '''dataset_with_dir.csv.zip'''
     with zipfile.ZipFile(lowerCamelCase__			,							'w'  ) as f:
          f.write(lowerCamelCase__			,							arcname=os.path.join('main_dir'			,							os.path.basename(lowerCamelCase__  )  )  )
          f.write(lowerCamelCase__			,							arcname=os.path.join('main_dir'			,							os.path.basename(lowerCamelCase__  )  )  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Optional[Any]  )					->					List[str]:
     __A						:			Optional[Any]								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset.parquet'  )
     __A						:			Optional[int]								=	pa.schema(
         {
             'col_1': pa.string(),
             'col_2': pa.intaa(),
             'col_3': pa.floataa(),
         }  )
     with open(lowerCamelCase__			,							'wb'  ) as f:
          __A						:			List[str]								=	pq.ParquetWriter(lowerCamelCase__			,							schema=lowerCamelCase__  )
          __A						:			Union[str, Any]								=	pa.Table.from_pydict({k: [DATA[i][k] for i in range(len(lowerCamelCase__  )  )] for k in DATA[0]}			,							schema=lowerCamelCase__  )
          writer.write_table(lowerCamelCase__  )
          writer.close()
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			int  )					->					List[Any]:
     __A						:			Tuple								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset.json'  )
     __A						:			List[Any]								=	{'''data''': DATA}
     with open(lowerCamelCase__			,							'w'  ) as f:
          json.dump(lowerCamelCase__			,							lowerCamelCase__  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			str  )					->					Dict:
     __A						:			Tuple								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset.json'  )
     __A						:			Optional[Any]								=	{'''data''': DATA_DICT_OF_LISTS}
     with open(lowerCamelCase__			,							'w'  ) as f:
          json.dump(lowerCamelCase__			,							lowerCamelCase__  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			List[Any]  )					->					Optional[int]:
     __A						:			Union[str, Any]								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset.jsonl'  )
     with open(lowerCamelCase__			,							'w'  ) as f:
          for item in DATA:
               f.write(json.dumps(lowerCamelCase__  ) + '\n'  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Union[str, Any]  )					->					List[str]:
     __A						:			Dict								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset2.jsonl'  )
     with open(lowerCamelCase__			,							'w'  ) as f:
          for item in DATA:
               f.write(json.dumps(lowerCamelCase__  ) + '\n'  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			int  )					->					List[Any]:
     __A						:			Any								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset_312.jsonl'  )
     with open(lowerCamelCase__			,							'w'  ) as f:
          for item in DATA_312:
               f.write(json.dumps(lowerCamelCase__  ) + '\n'  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Optional[Any]  )					->					Optional[Any]:
     __A						:			List[str]								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset-str.jsonl'  )
     with open(lowerCamelCase__			,							'w'  ) as f:
          for item in DATA_STR:
               f.write(json.dumps(lowerCamelCase__  ) + '\n'  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Tuple			,							__snake_case  :			str  )					->					List[Any]:
     import gzip

     __A						:			Optional[int]								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset.txt.gz'  )
     with open(lowerCamelCase__			,							'rb'  ) as orig_file:
          with gzip.open(lowerCamelCase__			,							'wb'  ) as zipped_file:
               zipped_file.writelines(lowerCamelCase__  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Tuple			,							__snake_case  :			Union[str, Any]  )					->					List[str]:
     import gzip

     __A						:			str								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset.jsonl.gz'  )
     with open(lowerCamelCase__			,							'rb'  ) as orig_file:
          with gzip.open(lowerCamelCase__			,							'wb'  ) as zipped_file:
               zipped_file.writelines(lowerCamelCase__  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Any			,							__snake_case  :			List[str]			,							__snake_case  :			List[Any]  )					->					str:
     __A						:			Any								=	tmp_path_factory.mktemp('data'  ) / '''dataset.jsonl.zip'''
     with zipfile.ZipFile(lowerCamelCase__			,							'w'  ) as f:
          f.write(lowerCamelCase__			,							arcname=os.path.basename(lowerCamelCase__  )  )
          f.write(lowerCamelCase__			,							arcname=os.path.basename(lowerCamelCase__  )  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Any			,							__snake_case  :			int			,							__snake_case  :			Optional[Any]			,							__snake_case  :			Optional[int]  )					->					Union[str, Any]:
     __A						:			str								=	tmp_path_factory.mktemp('data'  ) / '''dataset_nested.jsonl.zip'''
     with zipfile.ZipFile(lowerCamelCase__			,							'w'  ) as f:
          f.write(lowerCamelCase__			,							arcname=os.path.join('nested'			,							os.path.basename(lowerCamelCase__  )  )  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			List[Any]			,							__snake_case  :			Union[str, Any]			,							__snake_case  :			List[Any]  )					->					List[str]:
     __A						:			Optional[int]								=	tmp_path_factory.mktemp('data'  ) / '''dataset_with_dir.jsonl.zip'''
     with zipfile.ZipFile(lowerCamelCase__			,							'w'  ) as f:
          f.write(lowerCamelCase__			,							arcname=os.path.join('main_dir'			,							os.path.basename(lowerCamelCase__  )  )  )
          f.write(lowerCamelCase__			,							arcname=os.path.join('main_dir'			,							os.path.basename(lowerCamelCase__  )  )  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Dict			,							__snake_case  :			Optional[Any]			,							__snake_case  :			int  )					->					Tuple:
     __A						:			List[Any]								=	tmp_path_factory.mktemp('data'  ) / '''dataset.jsonl.tar'''
     with tarfile.TarFile(lowerCamelCase__			,							'w'  ) as f:
          f.add(lowerCamelCase__			,							arcname=os.path.basename(lowerCamelCase__  )  )
          f.add(lowerCamelCase__			,							arcname=os.path.basename(lowerCamelCase__  )  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Any			,							__snake_case  :			Optional[Any]			,							__snake_case  :			Tuple			,							__snake_case  :			List[Any]  )					->					Any:
     __A						:			int								=	tmp_path_factory.mktemp('data'  ) / '''dataset_nested.jsonl.tar'''
     with tarfile.TarFile(lowerCamelCase__			,							'w'  ) as f:
          f.add(lowerCamelCase__			,							arcname=os.path.join('nested'			,							os.path.basename(lowerCamelCase__  )  )  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Tuple  )					->					Tuple:
     __A						:			Any								=	['''0''', '''1''', '''2''', '''3''']
     __A						:			Optional[int]								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset.txt'  )
     with open(lowerCamelCase__			,							'w'  ) as f:
          for item in data:
               f.write(item + '\n'  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Dict  )					->					Any:
     __A						:			Union[str, Any]								=	['''0''', '''1''', '''2''', '''3''']
     __A						:			int								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset2.txt'  )
     with open(lowerCamelCase__			,							'w'  ) as f:
          for item in data:
               f.write(item + '\n'  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			int  )					->					Union[str, Any]:
     __A						:			Union[str, Any]								=	['''0''', '''1''', '''2''', '''3''']
     __A						:			str								=	tmp_path_factory.mktemp('data'  ) / '''dataset.abc'''
     with open(lowerCamelCase__			,							'w'  ) as f:
          for item in data:
               f.write(item + '\n'  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			List[str]			,							__snake_case  :			Any			,							__snake_case  :			Union[str, Any]  )					->					Optional[int]:
     __A						:			Dict								=	tmp_path_factory.mktemp('data'  ) / '''dataset.text.zip'''
     with zipfile.ZipFile(lowerCamelCase__			,							'w'  ) as f:
          f.write(lowerCamelCase__			,							arcname=os.path.basename(lowerCamelCase__  )  )
          f.write(lowerCamelCase__			,							arcname=os.path.basename(lowerCamelCase__  )  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Optional[Any]			,							__snake_case  :			List[Any]			,							__snake_case  :			Any  )					->					List[Any]:
     __A						:			int								=	tmp_path_factory.mktemp('data'  ) / '''dataset_with_dir.text.zip'''
     with zipfile.ZipFile(lowerCamelCase__			,							'w'  ) as f:
          f.write(lowerCamelCase__			,							arcname=os.path.join('main_dir'			,							os.path.basename(lowerCamelCase__  )  )  )
          f.write(lowerCamelCase__			,							arcname=os.path.join('main_dir'			,							os.path.basename(lowerCamelCase__  )  )  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Optional[int]			,							__snake_case  :			Union[str, Any]			,							__snake_case  :			List[Any]  )					->					str:
     __A						:			Union[str, Any]								=	tmp_path_factory.mktemp('data'  ) / '''dataset.ext.zip'''
     with zipfile.ZipFile(lowerCamelCase__			,							'w'  ) as f:
          f.write(lowerCamelCase__			,							arcname=os.path.basename('unsupported.ext'  )  )
          f.write(lowerCamelCase__			,							arcname=os.path.basename('unsupported_2.ext'  )  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			int  )					->					List[Any]:
     __A						:			Union[str, Any]								=	'''\n'''.join(['First', 'Second\u2029with Unicode new line', 'Third']  )
     __A						:			Any								=	str(tmp_path_factory.mktemp('data'  ) / 'dataset_with_unicode_new_lines.txt'  )
     with open(lowerCamelCase__			,							'w'			,							encoding='utf-8'  ) as f:
          f.write(lowerCamelCase__  )
     return path






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  )					->					List[Any]:
     return os.path.join('tests'			,							'features'			,							'data'			,							'test_image_rgb.jpg'  )






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  )					->					Optional[int]:
     return os.path.join('tests'			,							'features'			,							'data'			,							'test_audio_44100.wav'  )






@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			int			,							__snake_case  :			int  )					->					List[str]:
     __A						:			Tuple								=	tmp_path_factory.mktemp('data'  ) / '''dataset.img.zip'''
     with zipfile.ZipFile(lowerCamelCase__			,							'w'  ) as f:
          f.write(lowerCamelCase__			,							arcname=os.path.basename(lowerCamelCase__  )  )
          f.write(lowerCamelCase__			,							arcname=os.path.basename(lowerCamelCase__  ).replace('.jpg'			,							'2.jpg'  )  )
     return path







@pytest.fixture(scope='session'  )
def 	_lowerCAmelCase      (  __snake_case  :			Any  )					->					Tuple:
     __A						:			Union[str, Any]								=	tmp_path_factory.mktemp('data_dir'  )

     (data_dir / "subdir").mkdir()
     with open(data_dir / 'subdir' / 'train.txt'			,							'w'  ) as f:
          f.write('foo\n' * 10  )
     with open(data_dir / 'subdir' / 'test.txt'			,							'w'  ) as f:
          f.write('bar\n' * 10  )
     # hidden file
     with open(data_dir / 'subdir' / '.test.txt'			,							'w'  ) as f:
          f.write('bar\n' * 10  )

     # hidden directory
     (data_dir / ".subdir").mkdir()
     with open(data_dir / '.subdir' / 'train.txt'			,							'w'  ) as f:
          f.write('foo\n' * 10  )
     with open(data_dir / '.subdir' / 'test.txt'			,							'w'  ) as f:
          f.write('bar\n' * 10  )

     return data_dir






'''simple docstring'''




import PIL.Image
import PIL.ImageOps
from packaging import version
from PIL import Image


if version.parse(version.parse(PIL.__version__).base_version) >= version.parse('''9.1.0'''):
  lowercase__   :				Dict      =   {
      '''linear''': PIL.Image.Resampling.BILINEAR,
      '''bilinear''': PIL.Image.Resampling.BILINEAR,
      '''bicubic''': PIL.Image.Resampling.BICUBIC,
      '''lanczos''': PIL.Image.Resampling.LANCZOS,
      '''nearest''': PIL.Image.Resampling.NEAREST,
  }
else:
  lowercase__   :				Any      =   {
      '''linear''': PIL.Image.LINEAR,
      '''bilinear''': PIL.Image.BILINEAR,
      '''bicubic''': PIL.Image.BICUBIC,
      '''lanczos''': PIL.Image.LANCZOS,
      '''nearest''': PIL.Image.NEAREST,
  }






def 	_lowerCAmelCase      (  __snake_case  :			Any      )					->					Optional[Any]:
     __A						:			Dict								=	(images / 2 + 0.5).clamp(0			,							1      )
     __A						:			str								=	images.cpu().permute(0			,							2			,							3			,							1      ).float().numpy()
     __A						:			Dict								=	numpy_to_pil(__snake_case      )
     return images







def 	_lowerCAmelCase      (  __snake_case  :			List[Any]      )					->					Optional[Any]:
     if images.ndim == 3:
          __A						:			List[Any]								=	images[None, ...]
     __A						:			List[str]								=	(images * 2_55).round().astype('uint8'      )
     if images.shape[-1] == 1:
          # special case for grayscale (single channel) images
          __A						:			str								=	[Image.fromarray(image.squeeze()			,							mode='L'      ) for image in images]
     else:
          __A						:			str								=	[Image.fromarray(__snake_case      ) for image in images]

     return pil_images