human
I wrote the below code

    msg = 'invoke_before_training    has    been    removed    since    Chainer    v2.0.0.    Use    initializer=    instead.'
    argument.check_unexpected_kwargs(kwargs, invoke_before_training=msg)
    argument.assert_kwargs_empty(kwargs)
    if (trigger is None):
        trigger = Extension.trigger
    if (priority is None):
        priority = Extension.priority
    def decorator(ext):
        ext.trigger = trigger
        ext.default_name = (default_name or ext.__name__)
        ext.priority = priority
        ext.finalize = finalizer
        ext.initialize = initializer
        return ext
    return decorator

What's a good function header?
 ... Here's a good function header?
assistant
#Here's a good function header.

def make_extension(trigger=None, default_name=None, priority=None, finalizer=None, initializer=None, **kwargs):