def init(self, *args, **kwargs):
    if ((len(kwargs) == 0) and (len(args) == 1) and (getattr(args[0], '__class__', None) == self.__class__)):
        orig_init(self, args[0])
        return
    kargs = kwargs.copy()
    for (i, arg) in enumerate(args):
        kargs[ordered_keys[i]] = arg
    orig_init(self, **kargs)
def init(self, *args, **kwargs):
    if ((len(kwargs) == 0) and (len(args) == 1) and (getattr(args[0], '__class__', None) == self.__class__)):
        orig_init(self, args[0])
        return
    kargs = kwargs.copy()
    for (i, arg) in enumerate(args):
        kargs[ordered_keys[i]] = arg
    orig_init(self, **kargs)