def pop(self, key, *args):
if len(args) > <NUM_LIT:1>:<EOL><INDENT>raise TypeError("<STR_LIT>" % (<NUM_LIT:1> + len(args)))<EOL><DEDENT>try:<EOL><INDENT>value = self.get_value(key)<EOL>self.remove(key)<EOL>return value<EOL><DEDENT>except KeyError:<EOL><INDENT>if len(args) == <NUM_LIT:0>:<EOL><INDENT>raise<EOL><DEDENT>else:<EOL><INDENT>return args[<NUM_LIT:0>]<EOL><DEDENT><DEDENT>
T.pop(k[,d]) -> v, remove specified key and return the corresponding value.
        If key is not found, d is returned if given, otherwise KeyError is raised