def decipher_all(decipher, objid, genno, x):
if isinstance(x, str):<EOL><INDENT>return decipher(objid, genno, x)<EOL><DEDENT>if isinstance(x, list):<EOL><INDENT>x = [decipher_all(decipher, objid, genno, v) for v in x]<EOL><DEDENT>elif isinstance(x, dict):<EOL><INDENT>for (k, v) in x.iteritems():<EOL><INDENT>x[k] = decipher_all(decipher, objid, genno, v)<EOL><DEDENT><DEDENT>return x<EOL>
Recursively deciphers the given object.