



from __future__ import annotations

from fractions import Fraction



def       UpperCAmelCase       (     _snake_case						, _snake_case							):
							return (
							    num != den and num % 10 == den // 10 and (num // 10) / (den % 10) == num / den
							)



def       UpperCAmelCase       (     _snake_case							):
							lowerCAmelCase   =		[]
							lowerCAmelCase   =		11
							lowerCAmelCase   =		int('''1''' + '''0''' * digit_len							)
							for num in range(_snake_case						, _snake_case							):
														while den <= 99:
																					if (num != den) and (num % 10 == den // 10) and (den % 10 != 0):
																												if is_digit_cancelling(_snake_case						, _snake_case							):
																																			solutions.append(F"""{num}/{den}"""							)
																					den += 1
														num += 1
														lowerCAmelCase   =		10
							return solutions



def       UpperCAmelCase       (     _snake_case = 2							):
							lowerCAmelCase   =		1.0
							for fraction in fraction_list(_snake_case							):
														lowerCAmelCase   =		Fraction(_snake_case							)
														result *= frac.denominator / frac.numerator
							return int(_snake_case							)


if __name__ == "__main__":
		print(solution())









from typing import Optional

import pyspark

from .. import Features, NamedSplit
from ..download import DownloadMode
from ..packaged_modules.spark.spark import Spark
from .abc import AbstractDatasetReader


class 							__UpperCamelCase			( __UpperCAmelCase  ):





				'''simple docstring'''



				def __init__( self       , UpperCAmelCase_       , UpperCAmelCase_ = None       , UpperCAmelCase_ = None       , UpperCAmelCase_ = True       , UpperCAmelCase_ = None       , UpperCAmelCase_ = False       , UpperCAmelCase_ = None       , UpperCAmelCase_ = True       , UpperCAmelCase_ = "arrow"       , **UpperCAmelCase_       , ):
											super().__init__(
											    split=UpperCAmelCase_       , features=UpperCAmelCase_       , cache_dir=UpperCAmelCase_       , keep_in_memory=UpperCAmelCase_       , streaming=UpperCAmelCase_       , **UpperCAmelCase_       , )
											lowerCAmelCase   =		load_from_cache_file
											lowerCAmelCase   =		file_format
											lowerCAmelCase   =		Spark(
											    df=UpperCAmelCase_       , features=UpperCAmelCase_       , cache_dir=UpperCAmelCase_       , working_dir=UpperCAmelCase_       , **UpperCAmelCase_       , )






				def       __snake_case		( self						):
											if self.streaming:
																		return self.builder.as_streaming_dataset(split=self.split						)
											lowerCAmelCase   =		None if self._load_from_cache_file else DownloadMode.FORCE_REDOWNLOAD
											self.builder.download_and_prepare(
											    download_mode=UpperCAmelCase_       , file_format=self._file_format       , )
											return self.builder.as_dataset(split=self.split						)



