




"""simple docstring"""




import os
from pathlib import Path







def      __UpperCAmelCase     ( ):
			from torch.utils.cpp_extension import load

			__lowercase			:  List[Any]								=       Path(__UpperCamelCase	).resolve().parent.parent.parent / '''kernels''' / '''deformable_detr'''
			__lowercase			:  Union[str, Any]								=       [
			    root / filename
			    for filename in [
			        '''vision.cpp''',
			        os.path.join('''cpu'''	,				'''ms_deform_attn_cpu.cpp'''	),
			        os.path.join('''cuda'''	,				'''ms_deform_attn_cuda.cu'''	),
			    ]
			]

			load(
			    '''MultiScaleDeformableAttention'''	,				__UpperCamelCase	,				with_cuda=__UpperCamelCase	,				extra_include_paths=[str(__UpperCamelCase	)]	,				extra_cflags=['''-DWITH_CUDA=1''']	,				extra_cuda_cflags=[
			        '''-DCUDA_HAS_FP16=1''',
			        '''-D__CUDA_NO_HALF_OPERATORS__''',
			        '''-D__CUDA_NO_HALF_CONVERSIONS__''',
			        '''-D__CUDA_NO_HALF2_OPERATORS__''',
			    ]	,				)

			import MultiScaleDeformableAttention as MSDA

			return MSDA










def 						A_							(	_lowerCAmelCase = 1000	)		->					int:
 UpperCamelCase      :   Optional[int]			      =  -1
 UpperCamelCase      :   int			      =  0
 for a in range(1				,  n // 3	):
  # Solving the two equations a**2+b**2=c**2 and a+b+c=N eliminating c
  UpperCamelCase      :   Optional[Any]			      =  (n * n - 2 * a * n) // (2 * n - 2 * a)
  UpperCamelCase      :   List[str]			      =  n - a - b
  if c * c == (a * a + b * b):
   UpperCamelCase      :   Union[str, Any]			      =  a * b * c
   if candidate >= product:
    UpperCamelCase      :   Tuple			      =  candidate
 return product


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