'''simple docstring'''

def __a (	__lowerCamelCase			:						int = 600_851_475_143				)	->							int:
      '''simple docstring'''


      try:
            lowercase_     =      int(__lowerCamelCase				)
      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."				)
      lowercase_     =      1
      lowercase_     =      2
      while i * i <= n:
            while n % i == 0:
                  lowercase_     =      i
                  n //= i
            i += 1
      if n > 1:
            lowercase_     =      n
      return int(__lowerCamelCase				)


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







'''simple docstring'''

import json
import sys


def __a (	__lowerCamelCase			:						Optional[int] ,		__lowerCamelCase			:						Union[str, Any]				)	->							Optional[Any]:
      '''simple docstring'''


      with open(__lowerCamelCase ,		encoding="utf-8"				) as f:
            lowercase_     =      json.load(__lowerCamelCase				)

      lowercase_     =      ["<details>", "<summary>Show updated benchmarks!</summary>", " "]

      for benchmark_name in sorted(__lowerCamelCase				):
            lowercase_     =      results[benchmark_name]

            lowercase_     =      benchmark_name.split("/"				)[-1]
            output_md.append(f'### Benchmark: {benchmark_file_name}'				)

            lowercase_     =      "| metric |"
            lowercase_     =      "|--------|"
            lowercase_     =      "| new / old (diff) |"
            for metric_name in sorted(__lowerCamelCase				):
                  lowercase_     =      benchmark_res[metric_name]
                  lowercase_     =      metric_vals["new"]
                  lowercase_     =      metric_vals.get("old" ,		__lowerCamelCase				)
                  lowercase_     =      metric_vals.get("diff" ,		__lowerCamelCase				)

                  lowercase_     =      f' {new_val:f}' if isinstance(__lowerCamelCase ,		(int, float)				) else "None"

                  if old_val is not None:
                        val_str += f' / {old_val:f}' if isinstance(__lowerCamelCase ,		(int, float)				) else "None"
                  if dif_val is not None:
                        val_str += f' ({dif_val:f})' if isinstance(__lowerCamelCase ,		(int, float)				) else "None"

                  title += " " + metric_name + " |"
                  lines += "---|"
                  value += val_str + " |"

            output_md += [title, lines, value, " "]

      output_md.append("</details>"				)

      with open(__lowerCamelCase ,		"w" ,		encoding="utf-8"				) as f:
            f.writelines("\n".join(__lowerCamelCase				)				)


if __name__ == "__main__":
       lowerCAmelCase_ : List[Any]						  =      sys.argv[1]
       lowerCAmelCase_ : Any						  =      sys.argv[2]

       format_json_to_md(input_json_file, output_md_file)






