





import re






def 					SCREAMING_SNAKE_CASE__				(							UpperCamelCase__:				Optional[int]     ):
		return [char.split() for char in re.split(R"""[^ a-z A-Z 0-9 \s]"""       , str_     )]






def 					SCREAMING_SNAKE_CASE__				(							UpperCamelCase__:				List[str]     ):
		SCREAMING_SNAKE_CASE__								=   split_input(str_     )
		return "".join(
		    ["""""".join([char.capitalize() for char in sub_str]     ) for sub_str in string_split]     )






def 					SCREAMING_SNAKE_CASE__				(							UpperCamelCase__:				Tuple       , UpperCamelCase__:				Dict       , UpperCamelCase__:				List[str]     ):







		try:
				SCREAMING_SNAKE_CASE__								=   split_input(UpperCamelCase__     )
				if upper:
						SCREAMING_SNAKE_CASE__								=   """""".join(
						    [
						        separator.join([char.upper() for char in sub_str]     )
						        for sub_str in string_split
						    ]     )
				else:
						SCREAMING_SNAKE_CASE__								=   """""".join(
						    [
						        separator.join([char.lower() for char in sub_str]     )
						        for sub_str in string_split
						    ]     )
				return res_str
		except IndexError:
				return "not valid string"






def 					SCREAMING_SNAKE_CASE__				(							UpperCamelCase__:				Any     ):
		return to_simple_case(UpperCamelCase__     )






def 					SCREAMING_SNAKE_CASE__				(							UpperCamelCase__:				List[str]     ):







		try:
				SCREAMING_SNAKE_CASE__								=   to_simple_case(UpperCamelCase__     )
				return res_str[0].lower() + res_str[1:]
		except IndexError:
				return "not valid string"






def 					SCREAMING_SNAKE_CASE__				(							UpperCamelCase__:				Tuple       , UpperCamelCase__:				Tuple     ):
		return to_complex_case(UpperCamelCase__       , UpperCamelCase__       , """_"""     )






def 					SCREAMING_SNAKE_CASE__				(							UpperCamelCase__:				List[Any]       , UpperCamelCase__:				Optional[Any]     ):
		return to_complex_case(UpperCamelCase__       , UpperCamelCase__       , """-"""     )


if __name__ == "__main__":
	__import__('doctest').testmod()


# this script reports modified .py files under the desired list of top-level sub-dirs passed as a list of arguments, e.g.:
#   python ./utils/get_modified_files.py utils src tests examples
#
# it uses git to find the forking point and which files were modified - i.e. files not under git won't be considered
# since the output of this script is fed into Makefile commands it doesn't print a newline after the results

import re
import subprocess
import sys


__lowercase				      =						subprocess.check_output("""git merge-base main HEAD""".split()).decode("""utf-8""")
__lowercase				      =						(
    subprocess.check_output(f'git diff --diff-filter=d --name-only {fork_point_sha}'.split()).decode("""utf-8""").split()
)

__lowercase				      =						"""|""".join(sys.argv[1:])
__lowercase				      =						re.compile(rf'^({joined_dirs}).*?\.py$')

__lowercase				      =						[x for x in modified_files if regex.match(x)]
print(""" """.join(relevant_modified_files), end="""""")





