






'''simple docstring'''





from functools import lru_cache
@lru_cache
def __UpperCAmelCase (			A			:	int						)  -> int:
			if not isinstance(A	,   A						):
						raise TypeError('''k must be an integer.'''						)
			if k < 0:
						raise ValueError('''k integer must be greater or equal to zero.'''						)
			if k == 0:
						return 0
			elif k == 1:
						return 1
			else:
						return fibonacci(k - 1						) + fibonacci(k - 2						)
def __UpperCAmelCase (			A			:	list	,   A			:	int						)  -> int:
			UpperCAmelCase_     :   Any       =   len(A						)
			# Find m such that F_m >= n where F_i is the i_th fibonacci number.
			UpperCAmelCase_     :   Any       =   0
			while True:
						if fibonacci(A						) >= len_list:
									UpperCAmelCase_     :   Tuple       =   i
									break
						i += 1
			UpperCAmelCase_     :   List[str]       =   0
			while fibb_k > 0:
						UpperCAmelCase_     :   Any       =   min(
						    offset + fibonacci(fibb_k - 1						)	,   len_list - 1						)  # Prevent out of range
						UpperCAmelCase_     :   Optional[Any]       =   arr[index_k]
						if item_k_1 == val:
									return index_k
						elif val < item_k_1:
									fibb_k -= 1
						elif val > item_k_1:
									offset += fibonacci(fibb_k - 1						)
									fibb_k -= 2
			else:
						return -1


if __name__ == "__main__":
						import doctest

						doctest.testmod()














'''simple docstring'''





import unittest

import torch

from diffusers import DDIMScheduler, TextToVideoZeroPipeline
from diffusers.utils import load_pt, require_torch_gpu, slow

from ..test_pipelines_common import assert_mean_pixel_difference


@slow
@require_torch_gpu
class 				snake_case__     (			unittest.TestCase):




					def 						A     (       self       :						Optional[Any]     )  ->    List[str]:
								UpperCAmelCase_     :   Optional[Any]       =   '''runwayml/stable-diffusion-v1-5'''
								UpperCAmelCase_     :   Optional[int]       =   TextToVideoZeroPipeline.from_pretrained(_A							,				torch_dtype=torch.floataa     ).to('''cuda'''     )
								UpperCAmelCase_     :   Tuple       =   DDIMScheduler.from_config(pipe.scheduler.config     )
								UpperCAmelCase_     :   Tuple       =   torch.Generator(device='''cuda'''     ).manual_seed(0     )

								UpperCAmelCase_     :   List[Any]       =   '''A bear is playing a guitar on Times Square'''
								UpperCAmelCase_     :   List[Any]       =   pipe(prompt=_A							,				generator=_A     ).images

								UpperCAmelCase_     :   Any       =   load_pt(
								    '''https://huggingface.co/datasets/hf-internal-testing/diffusers-images/resolve/main/text-to-video/A bear is playing a guitar on Times Square.pt'''     )

								assert_mean_pixel_difference(_A							,				_A     )


