def shallow_repr(self, max_depth=<NUM_LIT:8>, explicit_length=False, details=LITE_REPR):
ast_queue = [(<NUM_LIT:0>, iter([self]))]<EOL>arg_queue = []<EOL>op_queue = []<EOL>while ast_queue:<EOL><INDENT>try:<EOL><INDENT>depth, args_iter = ast_queue[-<NUM_LIT:1>]<EOL>arg = next(args_iter)<EOL>if not isinstance(arg, Base):<EOL><INDENT>arg_queue.append(arg)<EOL>continue<EOL><DEDENT>if max_depth is not None:<EOL><INDENT>if depth >= max_depth:<EOL><INDENT>arg_queue.append('<STR_LIT>')<EOL>continue<EOL><DEDENT><DEDENT>if arg.op in operations.reversed_ops:<EOL><INDENT>op_queue.append((depth + <NUM_LIT:1>, operations.reversed_ops[arg.op], len(arg.args), arg.length))<EOL>ast_queue.append((depth + <NUM_LIT:1>, reversed(arg.args)))<EOL><DEDENT>else:<EOL><INDENT>op_queue.append((depth + <NUM_LIT:1>, arg.op, len(arg.args), arg.length))<EOL>ast_queue.append((depth + <NUM_LIT:1>, iter(arg.args)))<EOL><DEDENT><DEDENT>except StopIteration:<EOL><INDENT>ast_queue.pop()<EOL>if op_queue:<EOL><INDENT>depth, op, num_args, length = op_queue.pop()<EOL>args_repr = arg_queue[-num_args:]<EOL>del arg_queue[-num_args:]<EOL>length = length if explicit_length else None<EOL>inner_repr = self._op_repr(op, args_repr, depth > <NUM_LIT:1>, length, details)<EOL>arg_queue.append(inner_repr)<EOL><DEDENT><DEDENT><DEDENT>assert len(op_queue) == <NUM_LIT:0>, "<STR_LIT>"<EOL>assert len(ast_queue) == <NUM_LIT:0>, "<STR_LIT>"<EOL>assert len(arg_queue) == <NUM_LIT:1>, ("<STR_LIT>", len(arg_queue))<EOL>return "<STR_LIT>".format(self._type_name(), arg_queue.pop())<EOL>
Returns a string representation of this AST, but with a maximum depth to
prevent floods of text being printed.

:param max_depth:           The maximum depth to print.
:param explicit_length:     Print lengths of BVV arguments.
:param details:             An integer value specifying how detailed the output should be:
                                LITE_REPR - print short repr for both operations and BVs,
                                MID_REPR  - print full repr for operations and short for BVs,
                                FULL_REPR - print full repr of both operations and BVs.
:return:                    A string representing the AST