Deep inspection of Python objects.
WAT is a powerful inspection tool designed to help you explore unknown objects and examine them at runtime.
"Wat" is a variant of the English word "what" that is often used to express confusion or disgust
If you ever find yourself in a Python console, feeling lost and confused,
and wondering "WAT? What is this thing?",
that's where wat
inspector comes in handy.
Launch the Python Interpreter and execute wat / object
on any object
to investigate its
type, formatted value, variables, methods, parent types, signature,
documentation, and its source code.
This makes it particularly useful for debugging or understanding intricate data structures in Python,
providing a straightforward way to answer "what" exactly an object represents.
wat-demo.mp4
Alternatively, use wat(object)
syntax for the same in-depth inspection.
If you want to quickly debug something, you can use this inspector without installing anything, in the same session.
Load it on the fly by pasting this snippet to your Python interpreter:
import base64, zlib
code = b'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'
exec(zlib.decompress(base64.b64decode(code)).decode(), globals())
Now you can use wat
object.
Warning
Before executing Insta-Load snippet, it's recommended to verify what you're about to run. You can either:
- Verify what's inside the extracted code beforehand:
print(zlib.decompress(base64.b64decode(code)).decode())
- Paste the content of inspection.py into your interpreter. It has the same effect.
- Install package with pip and review the code.
Alternatively, install wat package and import inspection tool from wat module:
pip install wat
import wat
This package has no external dependencies.
wat
can quickly inspect things
by using the division operator (for faster typing without parentheses).
A short syntax wat / foo
is equivalent to wat(foo)
.
You can call wat.modifier / foo
with the following modifiers:
.short
or.s
to hide the attributes (variables and methods inside the object) and print only value, type, parent types, signature and documentation.dunder
to display dunder attributes (starting with double underscore).code
to reveal the source code of a function, method, or class.long
to show non-abbreviated values and docstrings.nodocs
to hide documentation for functions and classes.caller
to show how and where the inspection was called (works in files, not REPL).all
to include all available information.ret
to return the object back after the inspection.str
to return the output string instead of printing it.gray
to disable colorful output in the console.color
to enforce colorful outputs in the console
You can chain modifiers, e.g. wat.short.str.gray / 'foo'
.
Call wat.locals
or wat()
to inspect local variables.
Call wat.globals
to inspect global variables.
You can explore any object. In Python, an "object" refers to not only to data structures, but also to functions, classes, modules, built-in types, and more.
Type wat
in the interpreter to learn more about this object itself.
There are several alternative syntaxes that are equivalent. Choose the one that works best for you:
wat.short / 'foo' # fast typing
wat.short('foo')
wat('foo', short=True) # natural Python syntax
'foo' | wat.short # Unix piping
In a dynamic typing language like Python, it's often hard to determine the type of an object. WAT Inspector can help you with that by showing the name of the type with the module it comes from.
>>> wat.short / (1,)
value: (1,)
type: tuple
len: 1
>>> wat.short / {None}
value: {None}
type: set
len: 1
>>> wat.short / user
str: admin
repr: <User: admin>
type: django.contrib.auth.models.User
parents: django.contrib.auth.models.AbstractUser, django.contrib.auth.base_user.AbstractBaseUser, django.contrib.auth.models.PermissionsMixin, django.db.models.base.Model, django.db.models.utils.AltersData
Now that you've identified the actual type, you can put the type annotations in your code to reduce further confusion.
By listing out methods with their signatures and docstrings, you can easily grasp how to use the unknown object.
wat / ['foo']
Use wat.long
if you want to see full doscstrings.
See the docstrings and the signature of a function to learn how to use it.
wat / str.split
List the attribues and their types to see what's really inside the inspected object.
wat / re.match('(\d)_(.*)', '1_title')
Another use case is to explore modules. You can list the functions, classes and sub-modules of a selected module.
import pathlib
wat / pathlib
Then, you can navigate further, e.g. wat / pathlib.fnmatch
.
By default, WAT Inspector hides attributes starting with __
. Use wat.dunder
to see them.
wat.dunder / {}
Look up the source code of a function to see how it really works.
import colorsys
wat.code / colorsys.hsv_to_rgb
Nested dictionaries and lists get nicely formatted, indented output:
You can use Python's breakpoint()
keyword to launch an interactive debugger in your program.
Attach to the interpreter and inspect things on the spot.
(Pdb) import wat # or paste Insta-Load snippet
(Pdb) wat / foo # inspect local variables
...
(Pdb) c # continue execution
Use wat.locals
or wat.globals
to look up the local and global variables respectively.
With these snippets you can better understand Python internals.
reversed([]) == reversed([])
# False
wat.s / reversed([])
# value: <list_reverseiterator object at 0x76749d1cb400>
# type: list_reverseiterator
wat / type('ObjectCreator', (), {})
# value: <class '__main__.ObjectCreator'>
# type: type
# signature: class ObjectCreator()
wat / type
# value: <class 'type'>
# type: type
# signature: class type(โฆ)
# """
# type(object) -> the object's type
# type(name, bases, dict, **kwds) -> a new type
# """
#
# Public attributes:
# def mro(self, /) # Return a type's method resolution order.
from typing import List
wat.s / List[str]
# value: typing.List[str]
# type: typing._GenericAlias
# parents: typing._BaseGenericAlias, typing._Final
# signature: def List(*args, **kwargs)
wat(str | None)
# value: str | None
# type: types.UnionType
Explore Python built-ins:
wat / __builtins__
wat / ...
wat.dunder / wat
wat.code / wat.__truediv__
Fun Fact: You can load WAT from a single Unicode glyph.
import zlib
glyph = '๐๓
ธ๓ ๓ ๓
โทฝ๓
ฎ๓ ๓ ๓ ๏ปฟ๓ ฟ๓
๓
๓ ค๓
ฟ๓ ๓ ๓ ฉ๓ ๓ ค๓ ฎ๓ ๓ ๓ ฏ๓ ๓ ๓
๓
ผ๓ ๓ ๓ น๓ ธ๓
ฐ๓ ๓ ป๓ ๓ ถ๓
๓
๓ ข๓ ๓ ฆ๓ ๓ ข๓
๓ ๓ ๓ ญ๓ ๓ ๓ ฎ๓ กโทบ๓ ๓
ฝ๓ ฐ๓
ป๓ ๓ ๓ ๓
พ๓ ๓ ๓ ๓ ๓ ๓
ญ๓ ๓
๓ ข๓
ท๓
ท๓
พ๓ ป๓ ณ๓ ป๓ ป๓ ณโทป๓ ก๓
๓
๓ ฏ๓ ๓ ผ๓ ซ๓ ฒ๓
น๓ ๓ ต๓ ญ๓
จ๓ ๓
ข๓ น๓ ช๓ ๓ ๓ ๓ ฝ๓ ๓
๓
๓ ๓ ฎ๓ ๓ ผ๓
๓ ฏ๓ ต๓ ฎ๓
จ๓ ๓
บ๓
ช๓ ท๓ ญ๓ ฃ๓
๓ ข๓
ต๓ ๓
๓
๓
๓ ซ๓ จ๓ ฃ๓
ช๓ ณ๓ ๓
๓
๓
๓
๓
๓
๓ น๓ ๓ ๓ ท๓ ซโทฑ๓ จ๓ ๓ ๓ ๓ พ๓ ๓ ๓ ๏ปฟ๓ ฒ๓ ฎ๓ ๓
โทต๓ ๓ ฃ๓ โทพ๓ ๓ ๓ ๓ พ๓ ๓
ฆ๓
ต๓
๓ ๓
ป๓ พ๓ ฎ๓
ฒ๓ ๓
๓
๓
๓ ๓ โทณ๓ ๓ ช๓ จ๓ ซ๓ ช๓ ๓
บ๓ ๓ ๓ น๓ ฐ๓
๓ ณ๓ ฒ๓ โทด๓
ฃ๓ ๓ ๓
ท๓
๓
๓ ๓ ๓ ๓
๓ ๓ ช๓
ฌ๓ ๓ ๓
ญ๓ ๓ ๓ ๓ ๓ ฌ๓
๓ ๓ ซ๓ ๓
๓ ฏ๓ ๓ ฆ๓ ผ๓ ๓ ผ๓ ๓ ฟ๓ ๓ ๓
ข๓ ๓ ๓ ซ๓ ฆโทธ๓ ๓
ต๓
ถ๓ ๓ ถ๓ ธ๓ ฎ๓ ฒ๓
ฎ๓ ๓
๓ ๓ ๓ ๓
โทด๓
ท๓
โทดโทต๓ ๓ ฏ๓ ๓
๓
๓ ๓
๓ บ๓ จ๓ ๓
ฅ๓ ๓
โทต๓ ฌ๓ ๓
โทฐ๓
ค๓ ๓ ๓
๓ พ๓ ๓ ๓
๓
๓
ค๓ ๓ ช๓ ๓
๓ ฅ๓ ๓
๓
๓ ช๓ ๓ ๓ ค๓ ๓
๓
๓ ช๓ ๓
โทธ๓ ฑ๓ พ๓ ๓ ช๓ ๓ ฑ๓
๓ ๓ ๓ ๓ ธ๓
โทบ๓ ๓
ฝโทฒ๓
๓
๓ ท๓ ๓ กโทป๓ ฆ๓ ฏ๓ ๓ น๓
พ๓ จ๓ ๓ ๓ ๓
พ๓ ๓ ๓
ฆ๓ ๓ ฟ๓
ค๓
ฉ๓
๓
๓ ๓ ซ๓
ฎ๓ ต๓ ฎ๓ ๓ ฒ๓
จ๓ ป๓ จ๓ ๓ ๓ ข๓ ๓
๓ ฅ๓ ๓ ฒ๓ จ๓
๓ ๓ ๓
๓
๓
ฃ๓ ฆ๓ ฉ๓ ๓
จ๓ ๓ ๓ ถ๓ ๓ ๓
ธ๓
๓ ด๓
๓ ๓
ญ๓ ข๓ ฉ๓ ๓ ๓ ฃ๓
จ๓ ๓
๓ จ๓ ท๓ ฝ๓ ซโทฒ๓ ฎ๓ ฆ๓ ฉ๓ ๓ ฉ๓ ต๓ จ๓
๓
๓ ๓ ๏ปฟ๓ ๓
๓ ผ๓ ๓ ๓ ฅ๓
บ๓
๓ ต๓ ๓ ๓ ๓ ๓
๓ ง๓ ข๓ ฉ๓ ข๓ ง๓ โทฝ๓
ฎ๓
๓ ๓ ฉ๓ ๓ ฃ๓ ณ๓ ๓ ณ๓ โทผโทน๓ ๓ ฟ๓
๓ ๓ ๓ ๓ ๓ ช๓ ๓
๓ ๓ ๓ ๓ ๓ พ๓
๓ ถ๓
๓ ๓ ช๓ ๓ พ๓ ๓ ก๓ ๓
๓ ท๓
๓ ๓
๓
๓ กโทด๓ ๓ บ๓ จ๓ ข๓ ๓
๓ ๓ ๓
๓ โทด๓
๓
๓ ฒ๓ ๓
๓ ๓ ๓ ด๓ ฐ๓ ๓
โทฐ๓ ถ๓ ฎ๓ ๓ จ๓ ๓
๓ ฉ๓ ๓ ๓ ๓ ๓ โทน๓
ฝ๓ ช๓
ง๓ ๓ ๓ ๓ จ๓ ๓ โทถ๓ ฉ๓ ต๓ จ๓
๓ ๓ ฆ๓ ๓
ฒ๓ ฃ๓
๓
๓ ๓ โทณ๓ ๓ ถ๓ ๓ โทด๓
๓ ค๓ โทฒ๓ ๓
ท๓
๓ ฆ๓
ฑ๓ ๓ ฌ๓
๓ ๓
ซ๓ ฅ๓ ๓ ฃ๓ ฃ๓ ถ๓ ๓ ฃ๓
ฉ๓ ช๓ ๓ ค๓
๓
๓ ช๓
๓ ๓
ฑ๓
ซ๓
๓ จ๓ ช๓
๓ ฉ๓ ๓
๓ ๓
๓ บโทณ๓ ธ๓ ๓
ท๓ ธ๓
ฅ๓ ญ๓ ๓ ๓ ๓ ฟ๓ พ๓ โทฑ๓ ๓ ๓ ๓ ๓
ท๓ ๓
๓ ๓ ญ๓
๓ ข๓ ๓ ฐ๓ ๓ ๓ ๓ ๓ ๓ ธโทฝ๓ จ๓ โทฒ๓
ฎ๓ ๓
ก๓ ๓
๓
๓ ๓
๓ ญ๓ ถ๓
๓ ช๓ ๓ ฌ๓ ๓ ต๓ พ๓ ๏ปฟ๓
จ๓
ต๓ ข๓
๓
๓ ๓ จ๓ ๓ ๓ ๓
๓
๓ ค๓ ต๓ ๓ ๓ ฑ๓
๓ ๓ ฎ๓ ฒ๓
๓
๓
๓ ๓ ๓ ๓
๓ ๓
๓ ๓ ๓ ๓ ๓ ฉ๓
ก๓
ซ๓
ต๓ ข๓
๓
๓ ๓ ๓ ๓ ๓
ช๓ ฅ๓ ป๓ ๓
๓ ฒ๓
ฏ๓ ด๓ ฑ๓ ฉ๓
๓ ฃ๓ จ๓ ๓ ฆ๓
ฉ๓ ๓ ฆ๓ ๓ ฆ๓
ฉ๓ ฉ๓ ช๓ ด๓
๓ ฆ๓ ๓
ฒ๓ ญ๓ น๓ ๓
ฌ๓ ๓ ๓
จ๓ ๓
๓
ญ๓ บ๓
ต๓ ญ๓ ๓ ช๓
๓ ๓
ซ๓ ๓ โทฝ๓
๓ ฌ๓ บ๓
ฒ๓ ฌ๓ ง๓
๓
๓ ท๓
ฎ๓ ๓ ซ๓ ๓ ๓ พ๓ ฟ๓ ๓
ก๓ ๓
ก๓ ๓
๓
ผ๓ ๓ ฐ๓ ๓
ค๓ ๓
ฟโทพ๓ ฉ๓
๓ กโทฑ๓ ๓ บ๓ ๓ ค๓ ค๓
ช๓
๓ ๓ ชโทฒ๓ ๓ ฉ๓ ง๓ ๓ ๓
๓ ฃ๓ ถ๓ ง๓
๓ ๓ ๓
๓
๓ ค๓
๓ ๓ ๓ ๓ ๓ ๓ ๓ ๓ ๓ ๓ ก๓ ๓ ช๓ ๓ ช๓ ผ๓ ๓ ๓
๓ ๓
๓ ๓ ๓ ป๓ ฆโทฒ๓ ๓ ก๓ ๓ โทผ๓ ค๓ บ๓ ช๓ ขโทด๓
๓ ฑ๓ ๓ ๓ ง๓
ป๓ ๓ ง๓ ๓ ฉ๓ ๓
ท๓ ป๓ ๓ ๓ ๓
ฏ๓ ๓ ๓ พ๓
ญ๓ ๓ ฏ๓ ๓ ธ๓ ๓ โทฝ๓ ๓
๓ ๓ ๓ ด๓ ๓
๓ ๓ จ๓ ๓ ๓ ปโทฒ๓ ฝ๓ ๓
๓ ๓ ๓
๓
บ๓ ฝ๓ ๓ ๓ ๓ ๓
จ๓
๓ ข๓
๓
จ๓ ๓ ๓ ๓ ซ๓
ฆ๓ ฎ๓ ๓ ๓ ๓
๓ ๓ ๓ ๓ ก๓ ๓
ฐ๓
๓
ต๓ ๓ ฐ๓
๓
ฎ๓ ๓ ๓ ๓
คโทท๓ ฒ๓ ๓
ฒ๓ ฉ๓ ๓ ๓ ๓ ธ๓
ฐ๓
๓ ค๓ ๓ ณ๓ ๓ ญ๓ ด๓
๓ ๓ ๓ ข๓ ๓ ๓ ๓ ข๓
๓
ช๓ ๓ ๓
๓ พ๓ ๓
ฎ๓
๓ ฆ๓ ฉ๓ ณ๓ ฅ๓ ฌ๓ ๓ โทถ๓ ๓ พ๓ ง๓
จ๓
๓ ฝ๓ ๓ ข๓ ๓ โทณ๓ ณ๓ ๓
ธ๓
ญ๓ ๓ ๓ ฎ๓ ๓ ๓ ๓ ๓ บ๓
๓ ฆ๓
๓ ฒ๓ ฏ๓
ฏ๓
ฆ๓ ๓
ฃ๓ โทฐ๓ ๓ ก๓ ฉ๓ ฏ๓ ๓ ๓ ๓
คโทบ๓ โทต๓ ๓ ฌ๓ ณ๓ ฆ๓
ซ๓ ฏ๓ ๓ ฎ๓ ฆ๓ ๓ ฉ๓ ๓ ฒ๓ ก๓
ก๓
โทฐ๓
ฃ๓ ๓ ป๓ ๓ ๓
๓ ๓
ฏ๓ น๓
๓ ๓ ป๓ ๓ ๓
ต๓
๓
๓ ญ๓
๓ ฎ๓ ๓
น๓
๓ ฟ๓
ฏ๓ ๓ ต๓ ก๓
๓ จ๓
ฑ๓ ง๓ ๓ ฑ๓ ๓ โทธ๓ ๓ โทป๓ ๓ ฅ๓
๓ ๓ ๓ ๓
บ๓ ๓
ญ๓ ๓
๓ ๓ ๓ ก๓ ๓ ๓ โทถ๓ ๓ ๓ ถ๓
๓ ๓
ฆ๓ ๓ ก๓
๓ ๓ ๓ ๓ ๓ ๓ จ๓ ฌ๓ ๓ ๓
ฆ๓ ๓ น๓
๓ ณ๓ ๓ ถ๓ ๓ ๓ ๓ ฉ๓ ฅ๓ ค๓
โทฑโทน๓ ๓ ๓ ๓ ๓ ๓
๓ ๓ ซ๓
๓ ๓ ฏ๓ ๓ ๓ ง๓
๓
๓
ฑ๓
๓
๓ ๓ จ๓ ฉ๓ ๓ จ๓
๓ ผโทด๓
ฒ๓ ข๓ ๓
๓
พ๓
๓ ฌ๓ ญ๓ จ๓ งโทฒ๓ ๓ โทผ๓
๓ ๓ ฝ๓ จ๓
ก๓
น๓ ค๓ ๓ ๓
๓ ญ๓
๓ ๓
๓ ฅ๓ ด๓ ๓ ต๓ ๓ ธ๓
ฒ๓ ๓ ฃ๓ ฏ๓
๓ ๓ ๓ ๓ ๓ ๓
๓ ข๓
๓ ๓ ฐ๓ ๓
ฐ๓ ๓ ซ๓ น๓ พ๓ ค๓ ๓ ๓ ฌ๓ ณ๓ ๓ ๓ ข๓ พ๓ ๓
น๓ ๓ ข๓ ๓ ๓ ๓ ฌ๓
ฎ๓ ๓ ฉ๓ ๓ ด๓
ฎ๓ ฑ๓ ฎ๓
ธ๓ บ๓ ๓
๓
ค๓ ญ๓ ฆ๓ ๓ ๓ จ๓ ๓
๓ ๓ ๓ ๓
ฝ๓ ข๓ ฉ๓
๓ ๓ ฎ๓ ฆ๓ ๓ ๓ ช๓
ฆ๓ ซ๓ ข๓ ๓ ๓
ต๓ ๓
๓ ๓ ๓
๓ ๓ ๓
ฆ๓
ฌ๓ ถ๓
ฌ๓ ๓ ฏ๓ ช๓
๓ ป๓ ๓ ๓ พโทด๓ ฏ๓ ง๓
ฟ๏ปฟ๓ กโทด๓ ๓ ๓ ค๓
ฎ๓ ถ๓ ๓
๓ ฏ๓ ๓ ๓ ผ๓ น๓
พโทฑ๓ ฆ๓
ค๓ ท๓
๓ ๓
๓ ฉ๓ ป๓ ๓ ๓ พ๓ ฝ๓ พ๓
ฟ๓
ฟ๓ ๓
๓
โทป๓ ฆ๓ ง๓ ๓ ๓ กโทปโทต๓ ๓ ๓ ๓
ผ๓ จ๓ ๓ ๓ ๓ ๓
๓ ๓
๓
ถ๓
ฐโทบ๓ ๓ ท๓ ๓ ๓ ๓ ๓ ๓ ๓ ๓ ๓ ๓ ๓
ฆ๓ ก๓
น๓ ๓ ญ๓ ฅ๓ ข๓ ซ๓
๓ ๓ ๓
๓ ๓
๓ ๓ ๓ ๓ ช๓ ๓ ญ๓ ๓ ๓ ๓ ฏ๓ ๓
๓ ๓ ๓ ป๓
ก๓
โทฒ๓ ๓ ณ๓ ๓ ข๓
๓ ถ๓
ฑ๓ ๓ ฝ๓ ฌ๓ ๓
ฐโทถโทถ๓ ๓ ๓
๓
๓ ๓ ข๓ ฉ๓
ฅ๓ ๓ ๓ ณโทผ๓ โทบ๓
๓
ต๓ ๓
พ๓ ๓ ฅ๓ ๓
๓ ๓ ๓ ถ๓ ฎ๓ ฎ๓ ฃ๓ ณโทป๓ ฌ๓
จ๓ ๓ ฉ๓
๓
๓ ๓ ซ๓ ๓ ท๓ ฏ๓
๓ ๓ ๓
๓
ฒ๓
ฏ๓ ฑ๓
๓ ๓
ช๓ ๓ ฃ๓ ๓
๓
๓ ๓ ๓ ๓ ฒ๓
๓ จ๓ ๓ ๓ บ๓ ฆ๓ ๓ ซ๓
บ๓ ง๓
ท๓ ๓ ถ๓
ต๓ ๓
๓ ฑ๓
ซ๓ ๓ ๓
๓ ๓ ฟ๓ ฟ๓ พ๓
ป๓ ๓
ถ๓ ง๓ ๓ ช๓ ถ๓ ๓ ๓
๓ ง๓ ป๓ น๓
ฌ๓ ๓ ผ๓ ๓ ๓
๓ ซ๓
ป๓
๓ ๓ จ๓
ฑ๓ ๓ โทป๓
๓
๓ ๓ ข๓
ฉ๓
น๓
ฑ๓ ถ๓ ๓ ๓ โทด๓ ๓
ถ๓ ๓
๓
๓ ก๓ ๓ ฎ๓ ๓ ๓ ง๓ ๓
ฑ๓ ๓
๓
๓ ๓ ก๓ ๓ ๓ ฌ๓ ๓
๓ ๓ ๓ ๓ ธ๓ ๓ ๓ ๓ ๓ ๓ พ๓ ญ๓ ๓ ๓
ฎ๓
ฒ๓
ฑ๓ โทต๓
๓
ช๓ ๓
๓ ๓
๓ ๓
๓ ๓ ๓ ถ๓ ญ๓ ๓ ฐ๓
ด๓ ๓ ๓ ๓ ซ๓ ๓ ๓ ด๓
ค๓
ฒ๓ โทพ๓ ๓ ๓ ๓ ๓
๓ บ๓
ฎ๓ ๓ โทท๓ ค๓ ช๓
๓
๓ ช๓ ๓ ๓ ๓
๓
ปโทฝ๓ ๓ ท๓ ๓ ๓
น๓ ฆ๓
ฏ๓
ค๓ ต๓ ฆ๓ ฌ๓ ๓
๓
โทท๓ ๓ ๓
ก๓ ฒ๓ ง๓ ค๓ ฐ๓
๓ ๓ ฑ๓ ฏ๓ ซ๓ ฟ๓ ฃ๓
ถ๓ โทท๓ ๓
๓ ๓
ฒ๓ ฆ๓ ๓ ฝ๓
ฏ๓ ฐ๓ ๓ ๓ ๓ ๓
๓
๓ ๓ ผ๓ ต๓ ๓
๓ ด๓ ๓ จ๓ บ๓ ฌ๓ ๓ ซ๓ ฆ๓ ธ๓ ฉโทบ๓
๓ พ๓
๓
โทตโทผ๓
ฌ๓ ๓
ฎ๓ ฅ๓ ๓
๓ ฒโทบ๓
๓ โทฑ๓
๓
ผ๓ ๓ ต๓
จ๓ ฏโทพโทถโทด๓ ญ๓ ๓ ๓ ๓ ธ๓ ข๓ โทด๓ ๓ ญ๓ ธโทฝโทน๓ โทป๓ ๓ ๓ ถ๓ ๓ ฅ๓ ง๓
๓ ฌ๓
ฑ๓ ๓
ฏ๓ ๓ ๓ ผ๓ ป๓ ๓
๓ ฃ๓ ๓ ข๓ ฏ๓ ๓ ๏ปฟ๓ ๓ ฌ๓ ฏ๓ ๓ บ๓ ซ๓ ข๓ ๓
๓
จ๓ ก๓ ๓
ฟโทท๓ ข๓ ค๓
ฌ๓ ท๓ ๓
๓ น๓ ๓ ๓ ฆ๓
๓ ผ๓ ซ๓ ๓ ฉ๓ ๓ ๓ โทพ๓ จ๓ ช๓ ๓ ๓ โทน๓ ฌ๓ ๓ ๓ ๓ ญ๓ ฒ๓
ฑ๓
จ๓ ฌ๓
ฝ๓ ๓ ด๓ ๓ ๓ ๓ ๓ ๓
๓ พ๓ ณ๓ ช๓ ๓ ๓ ฉ๓
๓ ๓ ๓
ฏ๓ กโทบ๓ ๓ โทผ๓ ฆ๓
ฉ๓ ๓
ด๓ ฑ๓ ฎ๓
๓
บ๓ ๓ ๓ ฏ๓ ฃ๓ ฉ๓ โทธ๓
น๓ ธ๓
๓ ๓ ๓ ๓ ๓ ๓
ฑ๓
ฝ๓ ๓ โทฝ๓ บ๓ ฏ๓
จโทป๓ ๓ ๓
ซ๓ ๓
ฟ๓
๓ ๓ ณ๓ โทฑ๓ ฝ๓ ๓ ๓ กโทฐ๓ ๓ ๓ ๓ ๓
ฆ๓ ๓ ๓ โทด๓
๓ ๓ ๓
๓ ฅ๓
๓ ๓ ๓ โทถ๓ ผโทธ๓
ฒ๓ ๓ ญ๓ บ๓ ฆ๓
ถ๓
ฒ๓
ถ๓
ถ๓
บ๓
ถ๓ ๓ ๓ ฝ๓ ๓ ๓
๓ ฌ๓ ๓
๓
๓ ๓ ๓ ๓ น๓
ฏ๓ ช๓ จ๓ ๓ ๓ ๓
๓ ฏ๓
ป๓ ๓ ๓
ค๓ ๓
ฎ๓
ท๓ ๓ ฅ๓
ต๓
ข๓ ๓ ฆ๓ ธ๓
๓
ถ๓ ฝ๓ ๓ ญ๓ ๓ ฟ๓
๓ ฆ๓ ๓
โทธ๓ ญ๓
๓
๓ น๓
๓ ๓ ๓
๓ ทโทน๓ ๓ ๓ ฃโทธ๓ ๓
ก๓ ๓ ๓ ท๓ ๓ ๓ ข๓ จ๓ ๓
๓ ข๓ ฒโทธ๓ ๓ ๓
๓ ๓ ญ๓
๓
ฐ๓ ๓ ๓ ๓ ๓ ถ๓ ฌ๓ ๓
ซ๓ ๓ ด๓ ๓
๓ ๓ ป๓ ๓ ถ๓ โทธ๓
๓ ท๓ ๓ ฐ๓ ๓
๓ ๓
ฅ๓ ฐ๓
ณ๓ ช๓
ซ๓ ฏ๓
ฐ๓ ๓ ๓
ผ๓ ก๓ ฆ๓ ๓ คโทฑ๓ ง๓
ช๓ ๓ ฌ๓
ง๓ โทผ๓ ถโทฑ๓ ๓ ๓ ๓
ฎ๓ ๓
ญ๓ ๓ ฒ๓ ฌ๓ ๓
๓ ถ๓ ๓
ฟ๓ ๓ ฒ๓ ๓ กโทท๓ ๓ ๓
น๓
ฑ๓ ต๓
ค๓
๓ ฝโทฐ๓ ข๓ ฑ๓
๓ ๓ ๓
ข๓
๓ ท๓
ดโทฒ๓ ๓ ฐ๓ ๓ โทฝ๓ ๓
ฒโทต๓ ฟ๓
ฃ๓ ง๓ ๓ ๓ ท๓ ๓ ซ๓
๓ ซ๓ ๓ ป๓ ป๓ ฉ๓ ๓ ซ๓
ฅ๓ ๓ ฏ๓
๓
๓ ณ๓ ง๓ ๓ ด๓ ฅ๓ ๓ ด๓
๓ บ๓ ฆ๓
ท๓ ๓
ผ๓ ฑ๓ ๓ ๓ ฅ๓ ผ๓
ฉ๓ ๓ ๓ ด๓ ๓
๓
ญ๓ ๓
๓ ฎ๓
โทต๓
๓ ๓ ธ๓ ๓
๓ ๓ ๓ ๓ ๓ ผ๓ ๓ ๓ ๓ ช๓
ต๓
๓
ฏ๓ ๓ น๓ ต๓ ถ๓ ฏ๓ ๓ ๓
๓
๓ ๓ ๓
ฅ๓
๓ ป๓ ซ๓
๓ ๓ ฏ๓ ๓ ฅโทฝ๓ ค๓ ๓
ฅ๓ ญ๓ ๓ ๓ ๓ ฝ๓
๓ ญ๓ ๓
ด๓ ข๓ ๓
ฉ๓
๓ ก๓ ฉ๓ ท๓ ๓ ค๓ ง๓ ๓ ฝ๓ ฅ๓ ๓ จ๓ ซ๓ ๓ ฃ๓
๓
๓ ๓
๓ น๓ น๓ โทธ๓ ๓ ๓
๓ ๓ ฟ๓ โทถ๓
ฐ๓
๓
๓ ๓ ฉ๓ ญ๓ ๓ ก๓
๓ ๓ ๓ ง๓ ท๓ ธ๓ ฟ๓ ข๓
ช๓ ๓ ๓ ๓
ฏ๓
๓ ช๓ โทพ๓ ๓ ฃ๓ ฆ๓ ฝ๓
๓ ข๓ ฃ๓ ซ๓
ข๓ ๓
ซ๓ ผ๓
๓ ๓ ๓ ๓ ณ๓
๓ ฆ๓ ซ๓ ฆ๓ ๓
๓
๓
๓ ๓ ๓ ๓ ๓ ๓ จ๓ ๓ ง๓
ฑ๓
๓
ฑ๓ ๓ ธ๓
ฃ๓ ๓ ๓ ๓ ๓
๓
๓
จ๓ ฎ๓
๓ ๓ ๓ ๓ ๓
๓
ฐ๓
๓ ๓ ข๓ พ๓
ก๓
๓ ฃ๓
ฏ๓ ๓ ฅ๓ ๓ ๓ ณ๓ ๓ ค๓ ฑ๓ ณ๓ ฌ๓
ฝ๓ ๓ ๓ ข๓
พ๓
๓
๓ ค๓ ๓ ๓
๓
ฆ๓ ซ๓ ๓ ๓ ๓
๓ พ๓
ด๓ ๓ ๓ ๓
๓ ญ๓
ง๓
ฅ๓ ฑ๓ ๓ ๓ ญ๓
ธ๓
๓ ๓ ๓ ฑ๓
๓ ซ๓ ณ๓ ๓
บ๓ ๓ ณ๓ ๓ ๓
๓
ฆ๓ ๓ ๓ ฉ๓ ๓
๓ ป๓
๓
ญ๓
๓ โทฐ๓ ช๓ ๓ โทต๓ ฐ๓ ๓ ฎ๓
๓
ฑ๓
ง๓ ๓ โทผ๓ ๓ ๓ พ๓
๓ ฌ๓ ด๓ ฏโทฒ๓ พ๓
๓
ฎ๓ ๓ ฏ๓
๓
ผ๓ ๓ ๓
โทถ๓
ฑ๓ ค๓ ธ๓ ๓ ๓ ฑ๓ คโทถ๓
โทฐ๓ ๓ ๓ ๓ ฑ๓
บ๓ ๓
๓
บ๏ปฟ๓ ๓ ซ๓ ๓ ฝ๓ ฎ๓ ฃ๓
๓ ฝ๓ ฟ๓ ๓ ฑ๓
๓ ๓
๓
ฏ๓
บ๓ ๓ ๓
๓ ๓ ๓
๓
๓ ๓ ๓ ๓ ๓ ฌ๓ ช๓ ๓ ณ๓ ๓ ๓ ๓
ฅ๓ ๓ ๓
ค๓
๓ ๓ ๓ ถโทถ๓ ๓ ๓ ๓ ๓ ๓ ๓ ต๓ ฌ๓ ๓ ด๓ ซ๓ โทพ๓ ๓ ช๓
๓ ๓ ๓
โทต๓
ซโทตโทพ๓
ซ๓ จ๓ ๓ ๓ ๓ ด๓ ผ๓ ฆ๓ ๓
ก๓ ๓ ๓ ฆ๓
ผ๓ ฐ๓ ๓ ๓ ฃ๓ ๓ ๓ ๓ ๓ ฏ๓
๓ ญ๓ ป๓
ณ๓ ฅ๓
ท๓
๓
พ๓
๓ ซ๓ ฏ๓ คโทฐ๓ ๓ ๓
ฎโทตโทฝ๓ ซ๓ จ๓ ๓ ๓ ๓
๓
ณ๓
โทน๓ ๓ ๓ ๓ ฆ๓ ผ๓ ฌ๓
ฐ๓ ๓ ๓ ๓ ก๓ ผ๓ ๓ ซ๓ ฎ๓ ๓ โทด๓ ช๓
ข๓ ๓ ๓ ๓ ฆ๓ ฟ๓ ๓ ๓
๓
๓ ฆ๓
๓ ค๓ จ๓ ๓ ต๓ ฎ๓
๓ ซ๓
ฅ๓ ฆ๓ โทถ๓ ๓ ๓ ๓
๓ ฎ๓ ๓ พ๓ ง๓ ๓
ด๓ ๓
ฌ๓ ธ๓ ๓ ๓ ๓ ป๓ ฑ๓
๓ ฉ๓ น๓ โทด๓ ๓ ค๓ จ๓ ๓ ฎ๓ ๓ ๓
ฆโทฒ๓ ๓ ๓
ฏ๓ ฉ๓ ๓ ๓ ๓
ฐ๓ ๓ ๓ ข๓ ๓ ซ๓
๓ ๓
๓
ช๓ ๓ ฉ๓ ญ๓ ๓ ๓ ๓ ๓ ๓
ง๓
ฌ๓ ๓
๓ ๓
๓ ๓ ๓ ๓
ค๓
๓ ๓ ๓ ฏ๓ ๓ ๓ ๓ ค๓ ๓ ฒ๓ ฎ๓ ๓ ๓ ๓
ฌ๓ โทพ๓ ๓ ฝ๓
๓
ซ๓
ณ๓ ๓ ๓ ฐ๓ ๓
ช๓
ฎ๓ ๓ ด๓
๓ ๓ ขโทฐโทฒโทฒโทพ๓ ๓ ฌโทฒโทฒ๓ ขโทฒ๓ ฒ๏ปฟ๓ ฌโทบ๓ ๓ ฟ๓ ฃ๓ ฟ๓ ญ๓
ฑ๓ ญ๓ ๏ปฟ๓
๓ ฅ๓ ฏ๓ กโทฝ๓ ๓ โทผ๓ งโทฑ๓ ฃ๓ โทฒ๓ ฌ๓ ๓
๓
๓
จ๓
๓ ๓ ๓ ๓ ๓
ฝ๓ ถ๓ ๓ ๓ ผ๓ ซ๓ ช๓ ถ๓ ช๓ ฏ๓ ช๓ ๓ ๓ ถ๓ ๓ ๓
โทฒ๓
๓ ฐ๓ ๓
๓
ก๓
พ๓
๓ ท๓ ญ๓ ๓
ฐ๓ ๓
๓
๓ ก๓ ๓ ฌ๓ บ๓ ด๓ ๓
๓
๓ ฎ๓ ฆ๓ ๓ ๓ ง๓ ช๓ ๓ ๓ ญ๓
๓ ๓
๓ ๓ ณ๓ ๓ ๓
๓
๓ ท๓ บ๓
ฑ๓
๓ ฝ๓ ถโทฒ๓
ข๓ ๓
ถ๓ ท๓ ๓
๓
๓ ฉ๓ ช๓ ฉ๓ ฏ๓ ฑ๓ ฃ๓ ข๓ ๓
ฅ๓ ๓
๓
ด๓ ฟ๓
๓ น๓
ฒ๓ ๓ ๓ ญโทบ๓ ฎ๓ ซ๓ ๓
๓
๓
๓ ง๓ ๓ ๓
๓ ๓ ๓ ข๓
๓ ๓
ถ๓ ๓ จ๓
ฎ๓
๓
๓
๓ ๓ ธ๓ ๓ ๓ ซ๓
๓ ตโทผโทบ๓ ๓ ฃโทณ๓ ๓
จ๓ ๓ ตโทป๓ ๓ ข๓ ท๓ บโทฑ๓ ๓
ฐ๓ ๓ ๓
๓
ธ๓ ๓
ฌ๓ ๓ ๓ ๓
ค๓ ๓
พ๓ ซ๓ ๓
๓ ฎ๓ ๓ ๓
๓ ๓ ฉ๓ ฌ๓ ๓ ๓
๓ ก๓ ๓
ฟโทน๓ ๓
ก๓ ๓ ฅ๓ ๓ ๓ ต๓ น๓
ด๓
๓ ป๓ ฉ๓
ณ๓
ฏ๓ จ๓ ป๓
๓ ง๓
๓
๓
ฝ๓
ต๓
ด๓
๓
ฉ๓ ๓ ๓ ๓ ฏ๓ พ๓
๓ ๓ ง๓ ๓ ซ๓ ฌ๓ ฎ๓
ฏ๓ ๓ ๓ ๓ ฆ๓ ๓ ๓
๓ ค๓
ฌ๓
๓ โทฐ๓ ก๓ ๓ ๓
๓ ธ๓ ค๓ ป๓
ฝ๓
๓ ฏโทฑ๓
ผ๓ บ๓
๓ ๓
ป๓
๓ โทฑ๓
๓
๓
๓ บ๓ ๓ จ๓ ๓ ๓ ๓ ฌ๓ ๓ ฎ๓
ญ๓ ๓ คโทฒ๓ ก๓ ๓
ฃโทด๓ ๓ ช๓ บโทบ๓ ผ๓ ๓ ๓ โทฑ๓ ก๓ ๓ ๓ ๓ ณ๏ปฟ๓ ๓ ฑ๓ ฃ๓ ๓ ๓ ข๓
๓ ๓ โทน๓
๓
ผ๓ ผ๓ ๓ ซ๓ ๓ ก๓ ก๓ ๓ ง๓ ธ๓
ฃ๓
๓
น๓ ท๓ ถ๓ ง๓ จ๓
๓ ๓ ๓ ๓ ๓ ค๓ ฎ๓ ๓
ฟ๓ ค๓ บ๓ ป๓ ๓ ๓
โทน๓ ๓ ก๓ ๓ ๓ ฑ๓ ฏ๓ ฒ๓ ๓ ฏ๓
๓ ฆ๓ พ๓ ๓ ๓ บ๓ ๓ ณ๓ ฏ๓ ๓ ธ๓
ช๓ ฅ๓
ฎ๓ ฟ๓ ฐ๓
ณ๓ ๓ ๓ ๓ ๓ ๓ ข๓ ๓ ๓ ๓ ช๓ ๓ ด๓ ณ๓
ช๓
ฐ๓ ฝ๓
ซ๓ ช๓ ๓
ก๓ ฌ๓
น๓ ๓ ๓
๓ ต๓ ๓ ๓ ๓ ฌ๓ ๓
๓ ค๓ ก๓ ๓ ฒ๓ ๓ ฉ๓ บ๓ ๓ ถ๓ ๓
๓
๓ ด๓
ด๓ ๓ ๓ ๓ ฌ๓
ข๓
๓ ช๓
๓ ๓ ๓ ๓ ๓ ง๓ ญ๓
๓ ๓ ท๓ ข๓
จ๓
ญ๓ ก๓ ๓ ๓ ๓ ผ๓ ๓ โทถ๓
๓
๓ ข๓ โทผ๓ ฉ๓
๓ ๓ โทต๓
ถ๓
ผโทพ๓
โทฑ๓ ๓
ด๓ ฅ๓ ข๓ ๓
๓ ฝ๓ ๓ ฌ๓ ซ๓ ฒ๓ ๓
๓ ๓ ๓ ๓ ๓
๓ ๓ ก๓ ฏ๓ ก๓ ๓ ๓ ๓ ๓
๓
๓
ผ๓
๓ ฃ๓ ผโทฒ๓
ถ๓ ท๓ ๓ ฏโทต๓ ฃ๓ ๓
ฎ๓
๓ ฃ๓
๓ ๓ ฑ๓ ๓
๓ ฃ๓ ณ๓ ๓ ๓ ๓ พ๓ ๓ ๓
๓ ฐ๓ ๓ ๓ ๓ ๓ ๓ ๓
ธ๓ ๓
ฏโทณ๓
บ๓ ต๓ ๓ ด๓ ก๓
๓
๓ ๓ ๓ ข๓
ต๓ ฑ๓ ๓ ฏ๓ ๓
ฐ๓ ๓ ๓
๓ ญ๓ น๓
ฑ๓ ๓ ๓
โทน๓ ๓ ๓ ข๓ ๓ ๓ ข๓ ต๓ ฐ๓
๓ ๓
ธ๓ ๓
๓
พ๓
๓ ง๓ ๓
๓
คโทณ๓ ๓ ๓ ๓ ๓
ค๓
๓ ๓ ๓ โทป๓ ๓ ๓ ๓
๓ ฃ๓
ก๓ ฅ๓ ๓
๓
ฐ๓ ๓ ๓
จ๓ ๓ ณ๓ ๓
๓ พ๓ บ๓ ธ๓ ณ๓ ๓ ๓ ฟ๓
ฟ๓ ค๓ ฏ๓
โทป๓ ๓ ๓ ๓ ๓
๓
ฏ๓ จ๓ ฒ๓ ๓ ๓ ๓ ฉ๓ ๓ ๓
ฐ๓
ป๓ ๓
พ๓ ซ๓ ฒ๓ ๓ ค๓
๓ โทฑ๓ ๓
๓ ๓ ๓
ฒ๓ จโทป๓ ๓
ฅ๓
๓
ฅ๓
๓ ซ๓ ๓ ๓
๓ ฆ๓
ฐ๓ ๓ ซ๓ ๓ ก๓ ๓ ค๓
โทถ๓ โทด๓ ก๓
๓ ๓
ฏ๓
จ๓
ผ๓ โทป๓
๓ ๓ ผ๓
๓
๓
บโทบ๓ ๓
๓ ณ๓ ๓ ฅ๓ ๓ ก๓ ฉ๓ ผ๓ ฉ๓ ท๓
๓ ช๓
ฑ๓ ง๓ ฒ๓ ๓
๓ ๓ ข๓ ฒ๓
บ๓ ฒโทณ๓
ก๓ ๓ ๓ ญ๓
บ๓
ป๓ ๓ ช๓ ๓
๓ ๓ ๓ ๓ ๓
๓ ฏ๓
ด๓ โทธ๓
๓ ๓ ธ๓ โทต๓ ๓
ข๓ ธ๓ ก๓ ๓ ท๓ โทฝ๓ ฌ๓ ช๓
๓ ค๓
โทฑ๓ ๓ ๓
๓ ๓ ท๓
ค๓ ๓ พ๓ ๓
ฝ๓ ฒ๓ ฉ๓
บ๓ ๓ ฃโทถ๓ ช๓
ฏ๓
๓ ๓ ๓ ด๓ ๓
๓
๓ ๓
๓ ถ๓
๓ ๓
ซ๓ ฉ๓ ณ๓
๓ ฃ๓ ๓ ๓ ๓ ๓ ๓ ๓
๓
น๓ ๓ ฉ๓ ง๓ ๓ ๓
ง๓ ฏ๓ ๓
ผ๓ ๓ ง๓ ๓ ๓ โทฑ๓ ๓ พ๓ น๓ ๓ ๓ ฉ๓ ๓ ๓ ๓ ๓ บ๓
ถ๓ ฏ๓ น๓
๓ ๓ บ๓
ท๓ ง๓ ๓ ๓ ๓ ๓ โทฝ๓ ด๓ น๓ ๓ ๓ ๓ ๓
๓
ถ๓ ๓ ฏ๓ ฒ๓ ๓ ข๓
ญ๓
ญ๓ ๓ ๓ ๓ ขโทธ๓ ง๓ ช๓ ๓ ๓
ช๓ ฒ๓ ๓ ๓
๓ ๓ ๓
โทฒ๓
ง๓ ค๓
ก๓ ๓ ฝ๓ ๓ ซ๓
ถ๓ บ๓ ฃโทด๓ บ๓ ๓
โทป๓ ข๓ ฉ๓ ซ๓ ฎ๓ ๓
ฒ๓ ฎโทด๓ ฅ๓ ฉ๓ ๓ ๓ ณ๓
๓ ๓
๓ ๓
ฌ๓ ฏ๓
๓ ๓
๓ ๓ ๓
ต๓ ๓ ฃ๓ ซ๓
๓ ๓ ๓
ฎ๓ ฉ๓ ซ๓
ถ๓ ๓
๓ ๓
พ๓
๓
ฏ๓ ๓ ธ๓ ๓ ๓ ฟ๓ ๓ ถ๓
๓
โทท๓ จ๓ ๓ ง๓ ๓ ๓ ๓ ๓
๓ ๓ ๓ ๓ ๓ โทธ๓ ๓ ซ๓ ๓
๓
ทโทป๓ ฟ๓ ๓
โทถโทฝ๓ ๓ ๓ บ๓ โทน๓ น๓ ๓ ฏ๓ ๓
๓ ๓ ๓ ๓ ๓ ๓ ฝ๓ ผโทธ๓ ๓
ณ๓ ๓ ฟ๓
๓ ๓
จ๓ ช๓ จ๓
ฑ๓ ๓ ๓ ค๓ โทณ๓
๓ ๓ จ๓ ๓ ๓
ข๓ ๓
ฝ๓ ๓
โทณ๓ ซ๓
๓ ๓ ๓ งโทฒโทฐ๓ ฉ๓ ๓ ฅ๓ ง๓ ๓ ๓ ฏ๓ ง๓
ซ๓ ๓ ๓ ๓
ฎ๓ ฐ๓
๓ ฟ๓
ญ๓ ๓ ฎ๓
ง๓ ๓ ๓ ๓
๓
ซ๓
๓ ๓
๓
พ๓ ค๓ ๓ ๓ ๓ ๓ ๓ ๓ ๓ ค๓ ๓ ๓
ก๓ จโทณ๓ ณ๓ ฐ๓
ฒ๓ ๓ ๓ ผ๓
๓ ค๓
จ๓ ๓ โทผ๓ ฆ๓ ๓ ๓ ๓
๓
๓ ๓
โทฐโทฐ๓ ๓ ๓ น๓ ๓ ฎ๓ ซโทบ๓ ฃ๓ ๓ ญ๓ ๓ ณโทถ๓ ๓ ง๓
๓ ๓
ฒ๓
๓ โทพ๓
ฟ๓ ฅ๓ ฉ๓
ฝ๓ ฑ๓ ค๓
๓ ฅ๓ ๓ ๓ ๓ ค๓ ฎ๓ ๓ โทฒ๓ ๓ ค๓ ฑ๓
๓
๓ ๓
ฏ๓ ฝ๓ ฅ๓ ๓ จ๓ ฌ๓ ฐ๓
พ๓ ก๓ จ๓
๓
ฃ๓ ๓ ข๓ ข๓ ๓ ๓
๓
๓ ๓
จ๓ ง๓ ซ๓ ผ๓
ฃ๓ ๓ ๓
ฏ๓ ช๓ ฝ๓ ๓ ฅ๓ ๓ ๓ ผ๓ ธ๓ พ๓ โทท๓
ฝ๏ปฟ๓
ฌ๓
ถโทฑโทด๓ ซ๓ ฏ๓
ฟ๓ ท๓ ค๓ ฅ๓ ๓ ๓
๓ ๓ ข๓
ง๓ ฆ๓ โทท๓
ฑ๓
๓ ฉ๓ ๓
ฅ๓ ฉ๓ ฌ๓
ญ๓ ๓ ๓ ๓ ฒ๓ ๓
ฏ๓ ๓ โทฒ๓
ง๓ ชโทผโทด๓ ญ๓ ๓ ฉโทฝ๓ ฝ๓ ฎ๓ ฏโทฝ๓ ๓ ๓
๓ ๓
ด๓
น๓ ๓ ๓ ซ๓ ๓ ผ๓ ๓ จ๓
๓ ฟ๓ ฐ๓
๓ ๓ ๓ ๓
ฝ๓
๓ ๓ ๓ ซ๓ พ๓ พ๓ พ๓
ฟ๓ ๓
ง๓
๓ ญ๓ ฟ๓ ๓ ข๓ ฏ๓ ๓ ๓ ฌ๓ ๓
๓
ป๓
๓ ๓ ๓ โทด๓
ฎ๓ ๓ ๓
ฏ๓ ๓ ๓ ญ๓
๓ ช๓
๓
๓
ถ๓ ๓
๓ ๓
ฏ๓
ญ๓ ๓
๓ ๓
ฅ๓ ๓ ฏ๓
ค๓ ๓ ๓ ๓ ฐ๓ โทฒ๓
๓ ๓
ป๓ ๓ ๏ปฟ๓ บ๓ ๓
ฟ๓ ฅ๓ ๓ ๓ ช๓ ธ๓
๓
๓ ค๓ ก๓
ซ๓ ง๓ ญโทผ๓ ๓ โทฑ๓ ฐ๓ ๓ ฆ๓ ฏ๓ ฐ๓ ฅ๓ ๓
๓ ฆ๓ ๓ ด๓
ผ๓ ๓ ผ๓ ๓
๓
โทต๓ ซ๓ ๓
๓
๓ ๓ ๓
๓ ๓
ฆ๓ โทท๓ ช๓ ๓ บโทพ๓ ท๓ ๓ บ๓ ๓ '
exec(zlib.decompress(bytes(ord(c)&255 for c in glyph[1:])).decode(), globals())
WAT_COLOR="false"
to disable colorful output in the console.WAT_COLOR="true"
to enforce colorful outputs even in non-tty environment.
You can customize the color theme by setting the environment variable WAT_COLORS
.
Here's the default theme which you can modify with your own ANSI color codes:
export WAT_COLORS="BAR=0;34,TRAIT=1;34,HEAD=1;37,STR=0;32,NUMBER=0;31,NONE=0;35,TRUE=1;32,FALSE=1;31,DOCS=2;37,KEYWORD=0;34,CALLABLE=1;32,SIGNATURE=0;32,VARIABLE=1;33,CODE=0;33"
- Inspired by Rich Inspect