






'''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 				SCREAMING_SNAKE_CASE_ ()   -> List[str]:
       lowerCamelCase__      :			Any 						= 10
       lowerCamelCase__      :			Tuple 						= 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"""   ),
           }   )
       lowerCamelCase__      :			Optional[Any] 						= datasets.Dataset.from_dict(
           {
               """tokens""": [["""foo"""] * 5] * n,
               """labels""": [[1] * 5] * n,
               """answers""": [{"""answer_start""": [97], """text""": ["""1976"""]}] * 10,
               """id""": list(range(UpperCamelCase__   )   ),
           }       ,    features=UpperCamelCase__       ,    )
       return dataset





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase   )   -> List[str]:
       lowerCamelCase__      :			Dict 						= str(tmp_path_factory.mktemp("""data"""   ) / """file.arrow"""   )
       dataset.map(cache_file_name=UpperCamelCase__   )
       return filename


# FILE_CONTENT + files


_A			:    List[str]					  ="""\
    Text data.
    Second line of data."""





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> Union[str, Any]:
       lowerCamelCase__      :			Optional[int] 						= tmp_path_factory.mktemp("""data"""   ) / """file.txt"""
       lowerCamelCase__      :			Optional[Any] 						= FILE_CONTENT
       with open(UpperCamelCase__       ,    """w"""   ) as f:
              f.write(UpperCamelCase__   )
       return filename





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> int:
       import bza

       lowerCamelCase__      :			Optional[Any] 						= tmp_path_factory.mktemp("""data"""   ) / """file.txt.bz2"""
       lowerCamelCase__      :			Any 						= bytes(UpperCamelCase__       ,    """utf-8"""   )
       with bza.open(UpperCamelCase__       ,    """wb"""   ) as f:
              f.write(UpperCamelCase__   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> List[str]:
       import gzip

       lowerCamelCase__      :			Tuple 						= str(tmp_path_factory.mktemp("""data"""   ) / """file.txt.gz"""   )
       lowerCamelCase__      :			str 						= bytes(UpperCamelCase__       ,    """utf-8"""   )
       with gzip.open(UpperCamelCase__       ,    """wb"""   ) as f:
              f.write(UpperCamelCase__   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> int:






       if datasets.config.LZ4_AVAILABLE:
              import lza.frame

              lowerCamelCase__      :			Tuple 						= tmp_path_factory.mktemp("""data"""   ) / """file.txt.lz4"""
              lowerCamelCase__      :			str 						= bytes(UpperCamelCase__       ,    """utf-8"""   )
              with lza.frame.open(UpperCamelCase__       ,    """wb"""   ) as f:
                     f.write(UpperCamelCase__   )
              return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase   )   -> Optional[int]:






       if datasets.config.PY7ZR_AVAILABLE:
              import pyazr

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





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase   )   -> List[Any]:
       import tarfile

       lowerCamelCase__      :			Dict 						= tmp_path_factory.mktemp("""data"""   ) / """file.txt.tar"""
       with tarfile.TarFile(UpperCamelCase__       ,    """w"""   ) as f:
              f.add(UpperCamelCase__       ,    arcname=os.path.basename(UpperCamelCase__   )   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> Optional[int]:
       import lzma

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





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase   )   -> Dict:
       import zipfile

       lowerCamelCase__      :			Optional[int] 						= tmp_path_factory.mktemp("""data"""   ) / """file.txt.zip"""
       with zipfile.ZipFile(UpperCamelCase__       ,    """w"""   ) as f:
              f.write(UpperCamelCase__       ,    arcname=os.path.basename(UpperCamelCase__   )   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> List[Any]:






       if datasets.config.ZSTANDARD_AVAILABLE:
              import zstandard as zstd

              lowerCamelCase__      :			Tuple 						= tmp_path_factory.mktemp("""data"""   ) / """file.txt.zst"""
              lowerCamelCase__      :			str 						= bytes(UpperCamelCase__       ,    """utf-8"""   )
              with zstd.open(UpperCamelCase__       ,    """wb"""   ) as f:
                     f.write(UpperCamelCase__   )
              return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> List[str]:
       lowerCamelCase__      :			str 						= tmp_path_factory.mktemp("""data"""   ) / """file.xml"""
       lowerCamelCase__      :			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(UpperCamelCase__       ,    """w"""   ) as f:
              f.write(UpperCamelCase__   )
       return filename


_A			:    Union[str, 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},
]
_A			:    List[Any]					  =[
    {"""col_1""": """4""", """col_2""": 4, """col_3""": 4.0},
    {"""col_1""": """5""", """col_2""": 5, """col_3""": 5.0},
]
_A			:    Tuple					  ={
    """col_1""": ["""0""", """1""", """2""", """3"""],
    """col_2""": [0, 1, 2, 3],
    """col_3""": [0.0, 1.0, 2.0, 3.0],
}

_A			:    List[Any]					  =[
    {"""col_3""": 0.0, """col_1""": """0""", """col_2""": 0},
    {"""col_3""": 1.0, """col_1""": """1""", """col_2""": 1},
]

_A			:    Dict					  =[
    {"""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 				SCREAMING_SNAKE_CASE_ ()   -> str:
       return DATA_DICT_OF_LISTS





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> Dict:
       lowerCamelCase__      :			Optional[Any] 						= datasets.Dataset.from_dict(UpperCamelCase__   )
       lowerCamelCase__      :			Dict 						= str(tmp_path_factory.mktemp("""data"""   ) / """dataset.arrow"""   )
       dataset.map(cache_file_name=UpperCamelCase__   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> Optional[Any]:
       lowerCamelCase__      :			Optional[int] 						= str(tmp_path_factory.mktemp("""data"""   ) / """dataset.sqlite"""   )
       with contextlib.closing(sqlitea.connect(UpperCamelCase__   )   ) as con:
              lowerCamelCase__      :			Optional[int] 						= 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 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> Union[str, Any]:
       lowerCamelCase__      :			Optional[int] 						= str(tmp_path_factory.mktemp("""data"""   ) / """dataset.csv"""   )
       with open(UpperCamelCase__       ,    """w"""       ,    newline=""""""   ) as f:
              lowerCamelCase__      :			str 						= csv.DictWriter(UpperCamelCase__       ,    fieldnames=["""col_1""", """col_2""", """col_3"""]   )
              writer.writeheader()
              for item in DATA:
                     writer.writerow(UpperCamelCase__   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> Any:
       lowerCamelCase__      :			int 						= str(tmp_path_factory.mktemp("""data"""   ) / """dataset2.csv"""   )
       with open(UpperCamelCase__       ,    """w"""       ,    newline=""""""   ) as f:
              lowerCamelCase__      :			Tuple 						= csv.DictWriter(UpperCamelCase__       ,    fieldnames=["""col_1""", """col_2""", """col_3"""]   )
              writer.writeheader()
              for item in DATA:
                     writer.writerow(UpperCamelCase__   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase   )   -> str:
       import bza

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





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase       ,    UpperCamelCase   )   -> str:
       lowerCamelCase__      :			Optional[Any] 						= tmp_path_factory.mktemp("""data"""   ) / """dataset.csv.zip"""
       with zipfile.ZipFile(UpperCamelCase__       ,    """w"""   ) as f:
              f.write(UpperCamelCase__       ,    arcname=os.path.basename(UpperCamelCase__   )   )
              f.write(UpperCamelCase__       ,    arcname=os.path.basename(UpperCamelCase__   )   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase       ,    UpperCamelCase   )   -> Dict:
       lowerCamelCase__      :			List[Any] 						= tmp_path_factory.mktemp("""data"""   ) / """dataset.csv.zip"""
       with zipfile.ZipFile(UpperCamelCase__       ,    """w"""   ) as f:
              f.write(UpperCamelCase__       ,    arcname=os.path.basename(csv_path.replace(""".csv"""       ,    """.CSV"""   )   )   )
              f.write(UpperCamelCase__       ,    arcname=os.path.basename(csva_path.replace(""".csv"""       ,    """.CSV"""   )   )   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase       ,    UpperCamelCase   )   -> Union[str, Any]:
       lowerCamelCase__      :			str 						= tmp_path_factory.mktemp("""data"""   ) / """dataset_with_dir.csv.zip"""
       with zipfile.ZipFile(UpperCamelCase__       ,    """w"""   ) as f:
              f.write(UpperCamelCase__       ,    arcname=os.path.join("""main_dir"""       ,    os.path.basename(UpperCamelCase__   )   )   )
              f.write(UpperCamelCase__       ,    arcname=os.path.join("""main_dir"""       ,    os.path.basename(UpperCamelCase__   )   )   )
       return path





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





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> Dict:
       lowerCamelCase__      :			Optional[Any] 						= str(tmp_path_factory.mktemp("""data"""   ) / """dataset.json"""   )
       lowerCamelCase__      :			Dict 						= {"""data""": DATA}
       with open(UpperCamelCase__       ,    """w"""   ) as f:
              json.dump(UpperCamelCase__       ,    UpperCamelCase__   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> List[Any]:
       lowerCamelCase__      :			Union[str, Any] 						= str(tmp_path_factory.mktemp("""data"""   ) / """dataset.json"""   )
       lowerCamelCase__      :			List[str] 						= {"""data""": DATA_DICT_OF_LISTS}
       with open(UpperCamelCase__       ,    """w"""   ) as f:
              json.dump(UpperCamelCase__       ,    UpperCamelCase__   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> str:
       lowerCamelCase__      :			int 						= str(tmp_path_factory.mktemp("""data"""   ) / """dataset.jsonl"""   )
       with open(UpperCamelCase__       ,    """w"""   ) as f:
              for item in DATA:
                     f.write(json.dumps(UpperCamelCase__   ) + """\n"""   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> Tuple:
       lowerCamelCase__      :			List[str] 						= str(tmp_path_factory.mktemp("""data"""   ) / """dataset2.jsonl"""   )
       with open(UpperCamelCase__       ,    """w"""   ) as f:
              for item in DATA:
                     f.write(json.dumps(UpperCamelCase__   ) + """\n"""   )
       return path





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





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> Dict:
       lowerCamelCase__      :			Union[str, Any] 						= str(tmp_path_factory.mktemp("""data"""   ) / """dataset-str.jsonl"""   )
       with open(UpperCamelCase__       ,    """w"""   ) as f:
              for item in DATA_STR:
                     f.write(json.dumps(UpperCamelCase__   ) + """\n"""   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase   )   -> Optional[Any]:
       import gzip

       lowerCamelCase__      :			List[Any] 						= str(tmp_path_factory.mktemp("""data"""   ) / """dataset.txt.gz"""   )
       with open(UpperCamelCase__       ,    """rb"""   ) as orig_file:
              with gzip.open(UpperCamelCase__       ,    """wb"""   ) as zipped_file:
                     zipped_file.writelines(UpperCamelCase__   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase   )   -> List[str]:
       import gzip

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





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase       ,    UpperCamelCase   )   -> List[Any]:
       lowerCamelCase__      :			Dict 						= tmp_path_factory.mktemp("""data"""   ) / """dataset.jsonl.zip"""
       with zipfile.ZipFile(UpperCamelCase__       ,    """w"""   ) as f:
              f.write(UpperCamelCase__       ,    arcname=os.path.basename(UpperCamelCase__   )   )
              f.write(UpperCamelCase__       ,    arcname=os.path.basename(UpperCamelCase__   )   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase       ,    UpperCamelCase       ,    UpperCamelCase   )   -> Tuple:
       lowerCamelCase__      :			Dict 						= tmp_path_factory.mktemp("""data"""   ) / """dataset_nested.jsonl.zip"""
       with zipfile.ZipFile(UpperCamelCase__       ,    """w"""   ) as f:
              f.write(UpperCamelCase__       ,    arcname=os.path.join("""nested"""       ,    os.path.basename(UpperCamelCase__   )   )   )
       return path





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





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase       ,    UpperCamelCase   )   -> Tuple:
       lowerCamelCase__      :			Dict 						= tmp_path_factory.mktemp("""data"""   ) / """dataset.jsonl.tar"""
       with tarfile.TarFile(UpperCamelCase__       ,    """w"""   ) as f:
              f.add(UpperCamelCase__       ,    arcname=os.path.basename(UpperCamelCase__   )   )
              f.add(UpperCamelCase__       ,    arcname=os.path.basename(UpperCamelCase__   )   )
       return path





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





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> List[Any]:
       lowerCamelCase__      :			Dict 						= ["""0""", """1""", """2""", """3"""]
       lowerCamelCase__      :			int 						= str(tmp_path_factory.mktemp("""data"""   ) / """dataset.txt"""   )
       with open(UpperCamelCase__       ,    """w"""   ) as f:
              for item in data:
                     f.write(item + """\n"""   )
       return path





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





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> List[str]:
       lowerCamelCase__      :			Optional[int] 						= ["""0""", """1""", """2""", """3"""]
       lowerCamelCase__      :			Tuple 						= tmp_path_factory.mktemp("""data"""   ) / """dataset.abc"""
       with open(UpperCamelCase__       ,    """w"""   ) as f:
              for item in data:
                     f.write(item + """\n"""   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase       ,    UpperCamelCase   )   -> Dict:
       lowerCamelCase__      :			Optional[Any] 						= tmp_path_factory.mktemp("""data"""   ) / """dataset.text.zip"""
       with zipfile.ZipFile(UpperCamelCase__       ,    """w"""   ) as f:
              f.write(UpperCamelCase__       ,    arcname=os.path.basename(UpperCamelCase__   )   )
              f.write(UpperCamelCase__       ,    arcname=os.path.basename(UpperCamelCase__   )   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase       ,    UpperCamelCase   )   -> Union[str, Any]:
       lowerCamelCase__      :			Optional[Any] 						= tmp_path_factory.mktemp("""data"""   ) / """dataset_with_dir.text.zip"""
       with zipfile.ZipFile(UpperCamelCase__       ,    """w"""   ) as f:
              f.write(UpperCamelCase__       ,    arcname=os.path.join("""main_dir"""       ,    os.path.basename(UpperCamelCase__   )   )   )
              f.write(UpperCamelCase__       ,    arcname=os.path.join("""main_dir"""       ,    os.path.basename(UpperCamelCase__   )   )   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase       ,    UpperCamelCase   )   -> Union[str, Any]:
       lowerCamelCase__      :			Union[str, Any] 						= tmp_path_factory.mktemp("""data"""   ) / """dataset.ext.zip"""
       with zipfile.ZipFile(UpperCamelCase__       ,    """w"""   ) as f:
              f.write(UpperCamelCase__       ,    arcname=os.path.basename("""unsupported.ext"""   )   )
              f.write(UpperCamelCase__       ,    arcname=os.path.basename("""unsupported_2.ext"""   )   )
       return path





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





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





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ ()   -> str:
       return os.path.join("""tests"""       ,    """features"""       ,    """data"""       ,    """test_audio_44100.wav"""   )





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase       ,    UpperCamelCase   )   -> List[Any]:
       lowerCamelCase__      :			Dict 						= tmp_path_factory.mktemp("""data"""   ) / """dataset.img.zip"""
       with zipfile.ZipFile(UpperCamelCase__       ,    """w"""   ) as f:
              f.write(UpperCamelCase__       ,    arcname=os.path.basename(UpperCamelCase__   )   )
              f.write(UpperCamelCase__       ,    arcname=os.path.basename(UpperCamelCase__   ).replace(""".jpg"""       ,    """2.jpg"""   )   )
       return path





@pytest.fixture(scope="""session"""   )
def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> Tuple:
       lowerCamelCase__      :			Optional[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'''







# A Bipartite Graph is a graph whose vertices can be divided into two independent sets,
# U and V such that every edge (u, v) either connects a vertex from U to V or a vertex
# from V to U. In other words, for every edge (u, v), either u belongs to U and v to V,
# or u belongs to V and v to U. We can also say that there is no edge that connects
# vertices of same set.





def 				SCREAMING_SNAKE_CASE_ (UpperCamelCase   )   -> Optional[Any]:
							lowerCamelCase__      :			str 						= [False] * len(UpperCamelCase   )
							lowerCamelCase__      :			str 						= [-1] * len(UpperCamelCase   )

							def dfs(UpperCamelCase       ,    UpperCamelCase   ):
														lowerCamelCase__      :			Optional[int] 						= True
														lowerCamelCase__      :			Union[str, Any] 						= c
														for u in graph[v]:
																					if not visited[u]:
																												dfs(UpperCamelCase       ,    1 - c   )

							for i in range(len(UpperCamelCase   )   ):
														if not visited[i]:
																					dfs(UpperCamelCase       ,    0   )

							for i in range(len(UpperCamelCase   )   ):
														for j in graph[i]:
																					if color[i] == color[j]:
																												return False

							return True


# Adjacency list of graph
_A			:    int					  ={0: [1, 3], 1: [0, 2], 2: [1, 3], 3: [0, 2], 4: []}



print(check_bipartite_dfs(graph))

