def Dumper(obj, indent=<NUM_LIT:0>, increase=<NUM_LIT:4>, encoding='<STR_LIT:utf-8>'):
<EOL>def p(given):<EOL><INDENT>"""<STR_LIT>"""<EOL>if isinstance(given, str):  return given.encode(encoding)<EOL>else:                       return given<EOL><DEDENT>try:<EOL><INDENT>if isinstance(obj, dict):<EOL><INDENT>for k,v in obj.items():<EOL><INDENT>if hasattr(v, "<STR_LIT>"):<EOL><INDENT>print("<STR_LIT>"%("<STR_LIT:U+0020>"*(indent), p(k)))<EOL>Dumper(v, indent=indent+increase, increase=increase)<EOL><DEDENT>else: print("<STR_LIT>"%("<STR_LIT:U+0020>"*(indent), p(k), p(v)))<EOL><DEDENT><DEDENT>elif isinstance(obj, list):<EOL><INDENT>for o in obj:<EOL><INDENT>Dumper(o, indent=indent, increase=increase) <EOL><DEDENT><DEDENT>elif isinstance(obj, tuple):<EOL><INDENT>print("<STR_LIT>"%("<STR_LIT:U+0020>"*(indent), p(obj[<NUM_LIT:0>])))<EOL>next = list(obj)[<NUM_LIT:1>:]<EOL>if len(next) == <NUM_LIT:1>:  next = next[<NUM_LIT:0>]<EOL>else:               next = tuple(next)<EOL>Dumper(next, indent=indent+increase, increase=increase)<EOL><DEDENT>elif isinstance(obj, str):<EOL><INDENT>print("<STR_LIT>"%("<STR_LIT:U+0020>"*(indent), p(obj))) <EOL><DEDENT>elif obj!=None:<EOL><INDENT>print("<STR_LIT>"%("<STR_LIT:U+0020>"*(indent), p(obj)))<EOL><DEDENT><DEDENT>except Exception:<EOL><INDENT>print(type(obj), obj)<EOL><DEDENT>
appropriately view a given dict/list/tuple/object data structure