





import unittest
from dataclasses import dataclass
from typing import List, Union

import numpy as np
import PIL.Image

from diffusers.utils.outputs import BaseOutput

@dataclass
class      A_	(a_      ):
 UpperCAmelCase__ =      4_2

class      A_	(unittest.TestCase      ):
 def 					_lowercase    (   self		):






    '''simple docstring'''







    UpperCAmelCase       		=    CustomOutput(images=np.random.rand(1							, 3							, 4							, 4		)		)

    # check every way of getting the attribute
    assert isinstance(outputs.images							, np.ndarray		)
    assert outputs.images.shape == (1, 3, 4, 4)
    assert isinstance(outputs['''images''']							, np.ndarray		)
    assert outputs["images"].shape == (1, 3, 4, 4)
    assert isinstance(outputs[0]							, np.ndarray		)
    assert outputs[0].shape == (1, 3, 4, 4)

    # test with a non-tensor attribute
    UpperCAmelCase       		=    CustomOutput(images=[PIL.Image.new('''RGB'''							, (4, 4)		)]		)

    # check every way of getting the attribute
    assert isinstance(outputs.images							, _A		)
    assert isinstance(outputs.images[0]							, PIL.Image.Image		)
    assert isinstance(outputs['''images''']							, _A		)
    assert isinstance(outputs['''images'''][0]							, PIL.Image.Image		)
    assert isinstance(outputs[0]							, _A		)
    assert isinstance(outputs[0][0]							, PIL.Image.Image		)







 def 					_lowercase    (   self		):






    '''simple docstring'''







    UpperCAmelCase       		=    CustomOutput({'''images''': np.random.rand(1							, 3							, 4							, 4		)}		)

    # check every way of getting the attribute
    assert isinstance(outputs.images							, np.ndarray		)
    assert outputs.images.shape == (1, 3, 4, 4)
    assert isinstance(outputs['''images''']							, np.ndarray		)
    assert outputs["images"].shape == (1, 3, 4, 4)
    assert isinstance(outputs[0]							, np.ndarray		)
    assert outputs[0].shape == (1, 3, 4, 4)

    # test with a non-tensor attribute
    UpperCAmelCase       		=    CustomOutput({'''images''': [PIL.Image.new('''RGB'''							, (4, 4)		)]}		)

    # check every way of getting the attribute
    assert isinstance(outputs.images							, _A		)
    assert isinstance(outputs.images[0]							, PIL.Image.Image		)
    assert isinstance(outputs['''images''']							, _A		)
    assert isinstance(outputs['''images'''][0]							, PIL.Image.Image		)
    assert isinstance(outputs[0]							, _A		)
    assert isinstance(outputs[0][0]							, PIL.Image.Image		)










import math





def 						__SCREAMING_SNAKE_CASE  (    UpperCamelCase__			)  ->    bool:







			'''simple docstring'''

			if 1 < number < 4:
						# 2 and 3 are primes
						return True
			elif number < 2 or number % 2 == 0 or number % 3 == 0:
						# Negatives, 0, 1, all even numbers, all multiples of 3 are not primes
						return False

			# All primes number are in format of 6k +/- 1
			for i in range(5      ,      int(math.sqrt(UpperCamelCase__			) + 1			)      ,      6			):
						if number % i == 0 or number % (i + 2) == 0:
									return False
			return True





def 						__SCREAMING_SNAKE_CASE  (    UpperCamelCase__ = 6008_5147_5143			)  ->    int:







			'''simple docstring'''

			try:
						UpperCAmelCase       		=    int(UpperCamelCase__			)
			except (TypeError, ValueError):
						raise TypeError('''Parameter n must be int or castable to int.'''			)
			if n <= 0:
						raise ValueError('''Parameter n must be greater than or equal to one.'''			)
			UpperCAmelCase       		=    0
			if is_prime(UpperCamelCase__			):
						return n
			while n % 2 == 0:
						n //= 2
			if is_prime(UpperCamelCase__			):
						return n
			for i in range(3      ,      int(math.sqrt(UpperCamelCase__			)			) + 1      ,      2			):
						if n % i == 0:
									if is_prime(n // i			):
												UpperCAmelCase       		=    n // i
												break
									elif is_prime(UpperCamelCase__			):
												UpperCAmelCase       		=    i
			return max_number


if __name__ == "__main__":
				print(F'{solution() = }')



