def register_arguments(func, args=None):
 if (args is None):
  args = func.args.args
  if func.args.vararg:
   func.set_local(func.args.vararg, func.args)
  if func.args.kwarg:
   func.set_local(func.args.kwarg, func.args)
 for arg in args:
  if isinstance(arg, Name):
   func.set_local(arg.name, arg)
  else:
   register_arguments(func, arg.elts)

def register_arguments ( func , args = None ) : if ( args is None ) : args = func . args . args if func . args . vararg : func . set_local ( func . args . vararg , func . args ) if func . args . kwarg : func . set_local ( func . args . kwarg , func . args ) for arg in args : if isinstance ( arg , Name ) : func . set_local ( arg . name , arg ) else : register_arguments ( func , arg . elts )
add given arguments to local args is a list that may contains nested lists (i .