




"""simple docstring"""


import operator as op


A_      			=					'''scaler.pt'''
A_      			=					'''pytorch_model'''
A_      			=					'''random_states'''
A_      			=					'''optimizer'''
A_      			=					'''scheduler'''
A_      			=					'''pytorch_model.bin'''
A_      			=					'''pytorch_model.bin.index.json'''
A_      			=					'''model.safetensors'''
A_      			=					'''model.safetensors.index.json'''
A_      			=					'''1.10.2'''
A_      			=					'''py38'''
A_      			=					'''4.17.0'''
A_      			=					['''ml.p3.16xlarge''', '''ml.p3dn.24xlarge''', '''ml.p4dn.24xlarge''']
A_      			=					['''FULL_SHARD''', '''SHARD_GRAD_OP''', '''NO_SHARD''', '''HYBRID_SHARD''', '''HYBRID_SHARD_ZERO2''']
A_      			=					['''TRANSFORMER_BASED_WRAP''', '''SIZE_BASED_WRAP''', '''NO_WRAP''']
A_      			=					['''BACKWARD_PRE''', '''BACKWARD_POST''', '''NO_PREFETCH''']
A_      			=					['''FULL_STATE_DICT''', '''LOCAL_STATE_DICT''', '''SHARDED_STATE_DICT''']
A_      			=					'''2.0.1'''
A_      			=					['''pdsh''', '''standard''', '''openmpi''', '''mvapich''']
A_      			=					['''default''', '''reduce-overhead''', '''max-autotune''']

A_      			=					{'''>''': op.gt, '''>=''': op.ge, '''==''': op.eq, '''!=''': op.ne, '''<=''': op.le, '''<''': op.lt}

# These are the args for `torch.distributed.launch` for pytorch < 1.9
A_      			=					[
    '''nnodes''',
    '''nproc_per_node''',
    '''rdzv_backend''',
    '''rdzv_endpoint''',
    '''rdzv_id''',
    '''rdzv_conf''',
    '''standalone''',
    '''max_restarts''',
    '''monitor_interval''',
    '''start_method''',
    '''role''',
    '''module''',
    '''m''',
    '''no_python''',
    '''run_path''',
    '''log_dir''',
    '''r''',
    '''redirects''',
    '''t''',
    '''tee''',
    '''node_rank''',
    '''master_addr''',
    '''master_port''',
]

A_      			=					['''DEEPSPEED''', '''MULTI_GPU''', '''FSDP''', '''MEGATRON_LM''']
A_      			=					['''DEEPSPEED''', '''MULTI_XPU''', '''FSDP''']








"""simple docstring"""


def       UpperCAmelCase__ (snake_case__							:      list[int]	,     snake_case__							:      str					):
  """simple docstring"""

  _snake_case							:	str			=						int(snake_case__					)

  # Initialize Result
  _snake_case							:	str			=						[]

  # Traverse through all denomination
  for denomination in reversed(snake_case__					):
    # Find denominations
    while int(snake_case__					) >= int(snake_case__					):
      total_value -= int(snake_case__					)
      answer.append(snake_case__					)  # Append the "answers" array

  return answer


# Driver Code
if __name__ == "__main__":
     A_      			=       []
     A_      			=       '''0'''

     if (
         input('''Do you want to enter your denominations ? (yY/n): ''').strip().lower()
         == "y"
     ):
          A_      			=       int(input('''Enter the number of denominations you want to add: ''').strip())

          for i in range(0, n):
               denominations.append(int(input(F'''Denomination {i}: ''').strip()))
          A_      			=       input('''Enter the change you want to make in Indian Currency: ''').strip()
     else:
          # All denominations of Indian Currency if user does not enter
          A_      			=       [1, 2, 5, 10, 20, 50, 1_00, 5_00, 20_00]
          A_      			=       input('''Enter the change you want to make: ''').strip()

     if int(value) == 0 or int(value) < 0:
          print('''The total value cannot be zero or negative.''')

     else:
          print(F'''Following is minimal change for {value}: ''')
          A_      			=       find_minimum_change(denominations, value)
          # Print result
          for i in range(len(answer)):
               print(answer[i], end=''' ''')


