def copy(self, *args, **kwargs):
for slot in self.__slots__:<EOL><INDENT>attr = getattr(self, slot)<EOL>if slot[<NUM_LIT:0>] == '<STR_LIT:_>':  <EOL><INDENT>slot = slot[<NUM_LIT:1>:]<EOL><DEDENT>if slot not in kwargs:<EOL><INDENT>kwargs[slot] = attr<EOL><DEDENT><DEDENT>result = type(self)(*args, **kwargs)<EOL>return result<EOL>
Copy this model element and contained elements if they exist.