






from manim import *
class 						lowerCamelCase_				(      lowerCamelCase ):







				def 			A	(						self     ):
								"""simple docstring"""
								__magic_name__		:Union[str, Any]        =      Rectangle(height=0.5       ,					width=0.5     )
								__magic_name__		:Tuple        =      Rectangle(height=0.46       ,					width=0.46     ).set_stroke(width=0     )

								__magic_name__		:List[Any]        =      [mem.copy() for i in range(6     )]
								__magic_name__		:int        =      [mem.copy() for i in range(6     )]
								__magic_name__		:Optional[int]        =      VGroup(*__lowerCAmelCase     ).arrange(__lowerCAmelCase       ,					buff=0     )
								__magic_name__		:Optional[int]        =      VGroup(*__lowerCAmelCase     ).arrange(__lowerCAmelCase       ,					buff=0     )
								__magic_name__		:Optional[int]        =      VGroup(__lowerCAmelCase       ,					__lowerCAmelCase     ).arrange(__lowerCAmelCase       ,					buff=0     )
								__magic_name__		:Optional[Any]        =      Text('''CPU'''       ,					font_size=2_4     )
								__magic_name__		:List[str]        =      Group(__lowerCAmelCase       ,					__lowerCAmelCase     ).arrange(__lowerCAmelCase       ,					buff=0.5       ,					aligned_edge=__lowerCAmelCase     )
								cpu.move_to([-2.5, -0.5, 0]     )
								self.add(__lowerCAmelCase     )

								__magic_name__		:Dict        =      [mem.copy() for i in range(1     )]
								__magic_name__		:Optional[Any]        =      VGroup(*__lowerCAmelCase     ).arrange(__lowerCAmelCase       ,					buff=0     )
								__magic_name__		:Union[str, Any]        =      Text('''GPU'''       ,					font_size=2_4     )
								__magic_name__		:str        =      Group(__lowerCAmelCase       ,					__lowerCAmelCase     ).arrange(__lowerCAmelCase       ,					buff=0.5       ,					aligned_edge=__lowerCAmelCase     )
								gpu.align_to(__lowerCAmelCase       ,					__lowerCAmelCase     )
								gpu.set_x(gpu.get_x() - 1     )

								self.add(__lowerCAmelCase     )

								__magic_name__		:List[Any]        =      [mem.copy() for i in range(6     )]
								__magic_name__		:Union[str, Any]        =      VGroup(*__lowerCAmelCase     ).arrange(__lowerCAmelCase       ,					buff=0     )

								__magic_name__		:Union[str, Any]        =      Text('''Model'''       ,					font_size=2_4     )
								__magic_name__		:Optional[Any]        =      Group(__lowerCAmelCase       ,					__lowerCAmelCase     ).arrange(__lowerCAmelCase       ,					buff=0.5       ,					aligned_edge=__lowerCAmelCase     )
								model.move_to([3, -1.0, 0]     )

								self.play(
								    Create(__lowerCAmelCase       ,					run_time=1     )       ,					Create(__lowerCAmelCase       ,					run_time=1     )       ,					Create(__lowerCAmelCase       ,					run_time=1     )       ,					)

								__magic_name__		:List[Any]        =      MarkupText(
								    F'''First, an empty model skeleton is loaded\ninto <span fgcolor=\'{YELLOW}\'>memory</span> without using much RAM.'''       ,					font_size=2_4       ,					)

								__magic_name__		:Dict        =      Square(side_length=2.2     )
								key.move_to([-5, 2, 0]     )

								__magic_name__		:List[str]        =      MarkupText(
								    F'''<b>Key:</b>\n\n<span fgcolor=\'{YELLOW}\'>●</span> Empty Model'''       ,					font_size=1_8       ,					)

								key_text.move_to([-5, 2.4, 0]     )

								step_a.move_to([2, 2, 0]     )
								self.play(Write(__lowerCAmelCase       ,					run_time=2.5     )       ,					Write(__lowerCAmelCase     )       ,					Write(__lowerCAmelCase     )     )

								self.add(__lowerCAmelCase     )

								__magic_name__		:Any        =      []
								__magic_name__		:Tuple        =      []
								__magic_name__		:Any        =      []
								for i, rect in enumerate(__lowerCAmelCase     ):
												__magic_name__		:Optional[Any]        =      Rectangle(height=0.46       ,					width=0.46     ).set_stroke(width=0.0     ).set_fill(__lowerCAmelCase       ,					opacity=0.7     )
												cpu_target.move_to(__lowerCAmelCase     )
												cpu_target.generate_target()
												__magic_name__		:Dict        =      0.46 / 4
												__magic_name__		:Any        =      0.46 / 3

												if i == 0:
																cpu_target.target.next_to(cpu_left_col_base[0].get_corner(DOWN + LEFT     )       ,					buff=0.02       ,					direction=__lowerCAmelCase     )
																cpu_target.target.set_x(cpu_target.target.get_x() + 0.1     )
												elif i == 3:
																cpu_target.target.next_to(cpu_targs[0].target       ,					direction=__lowerCAmelCase       ,					buff=0.0     )
												else:
																cpu_target.target.next_to(cpu_targs[i - 1].target       ,					direction=__lowerCAmelCase       ,					buff=0.0     )
												cpu_targs.append(__lowerCAmelCase     )

												first_animations.append(rect.animate(run_time=0.5     ).set_stroke(__lowerCAmelCase     )     )
												second_animations.append(MoveToTarget(__lowerCAmelCase       ,					run_time=1.5     )     )

								self.play(*__lowerCAmelCase     )
								self.play(*__lowerCAmelCase     )

								self.wait()














from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tokenizers_available


SCREAMING_SNAKE_CASE__      :			Union[str, Any]							=		{"""tokenization_herbert""": ["""HerbertTokenizer"""]}

try:
					if not is_tokenizers_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					SCREAMING_SNAKE_CASE__      :			Optional[Any]							=		["""HerbertTokenizerFast"""]


if TYPE_CHECKING:
					from .tokenization_herbert import HerbertTokenizer

					try:
										if not is_tokenizers_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .tokenization_herbert_fast import HerbertTokenizerFast

else:
					import sys

					SCREAMING_SNAKE_CASE__      :			Union[str, Any]							=		_LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)






