
def 							__SCREAMING_SNAKE_CASE       (		SCREAMING_SNAKE_CASE	:				int   ,							SCREAMING_SNAKE_CASE	:				Tuple      )					->						Union[str, Any]:
				__lowercase								= sorted(A_   ,							key=lambda SCREAMING_SNAKE_CASE      : value[2]   ,							reverse=A_      )

				# Create a list of size equal to the maximum deadline
				# and initialize it with -1
				__lowercase								= max(A_   ,							key=lambda SCREAMING_SNAKE_CASE      : value[1]      )[1]
				__lowercase								= [-1] * max_deadline

				# Finding the maximum profit and the count of jobs
				__lowercase								= 0
				__lowercase								= 0
				for job in jobs:
								# Find a free time slot for this job
								# (Note that we start from the last possible slot)
								for i in range(job[1] - 1   ,							-1   ,							-1      ):
												if time_slots[i] == -1:
																__lowercase								= job[0]
																count += 1
																max_profit += job[2]
																break
				return [count, max_profit]


if __name__ == "__main__":
							import doctest

							doctest.testmod()







from __future__ import annotations

from enum import Enum
class      A__       (						lowerCAmelCase__    ):
							lowerCAmelCase__		:						Dict         =							24
							lowerCAmelCase__		:						Dict         =							21
							lowerCAmelCase__		:						Union[str, Any]         =							18
							lowerCAmelCase__		:						Dict         =							15
							lowerCAmelCase__		:						Any         =							12
							lowerCAmelCase__		:						Union[str, Any]         =							9
							lowerCAmelCase__		:						Any         =							6
							lowerCAmelCase__		:						Optional[Any]         =							3
							lowerCAmelCase__		:						Union[str, Any]         =							2
							lowerCAmelCase__		:						List[Any]         =							1
							lowerCAmelCase__		:						Optional[Any]         =							-1
							lowerCAmelCase__		:						Tuple         =							-2
							lowerCAmelCase__		:						Dict         =							-3
							lowerCAmelCase__		:						Union[str, Any]         =							-6
							lowerCAmelCase__		:						Any         =							-9
							lowerCAmelCase__		:						Union[str, Any]         =							-12
							lowerCAmelCase__		:						str         =							-15
							lowerCAmelCase__		:						Optional[int]         =							-18
							lowerCAmelCase__		:						Any         =							-21
							lowerCAmelCase__		:						Any         =							-24






class      A__       (						lowerCAmelCase__    ):
							lowerCAmelCase__		:						Tuple         =							8
							lowerCAmelCase__		:						Union[str, Any]         =							7
							lowerCAmelCase__		:						Optional[Any]         =							6
							lowerCAmelCase__		:						Tuple         =							5
							lowerCAmelCase__		:						Optional[int]         =							4
							lowerCAmelCase__		:						Optional[int]         =							3
							lowerCAmelCase__		:						Optional[int]         =							2
							lowerCAmelCase__		:						Any         =							1






def 							__SCREAMING_SNAKE_CASE       (		SCREAMING_SNAKE_CASE	:				float   ,							SCREAMING_SNAKE_CASE	:				str | SIUnit   ,							SCREAMING_SNAKE_CASE	:				str | SIUnit   ,							)					->						float:
				if isinstance(SCREAMING_SNAKE_CASE   ,							SCREAMING_SNAKE_CASE      ):
								__lowercase								= SIUnit[known_prefix.lower()]
				if isinstance(SCREAMING_SNAKE_CASE   ,							SCREAMING_SNAKE_CASE      ):
								__lowercase								= SIUnit[unknown_prefix.lower()]
				__lowercase								= known_amount * (
				    10 ** (known_prefix.value - unknown_prefix.value)
				)
				return unknown_amount




def 							__SCREAMING_SNAKE_CASE       (		SCREAMING_SNAKE_CASE	:				float   ,							SCREAMING_SNAKE_CASE	:				str | BinaryUnit   ,							SCREAMING_SNAKE_CASE	:				str | BinaryUnit   ,							)					->						float:
				if isinstance(SCREAMING_SNAKE_CASE   ,							SCREAMING_SNAKE_CASE      ):
								__lowercase								= BinaryUnit[known_prefix.lower()]
				if isinstance(SCREAMING_SNAKE_CASE   ,							SCREAMING_SNAKE_CASE      ):
								__lowercase								= BinaryUnit[unknown_prefix.lower()]
				__lowercase								= known_amount * (
				    2 ** ((known_prefix.value - unknown_prefix.value) * 10)
				)
				return unknown_amount


if __name__ == "__main__":
							import doctest

							doctest.testmod()





