+
    4Ssig                     |    ^ RI t ^ RIHt ^ RIHt ^ RIHt ^ RIHtHtH	t	 ^ RI
Ht  ! R R] P                  4      tR# )	    N)datetime)Decimal)Enum)DnMessageElementResult)
descriptorc                   6   a a ] tR t^!t oRtV 3R ltRtVtV ;t# )JSONEncodera  Custom JSON encoder class to help out with some data types.

For example, the json module has no idea how to encode a Dn object to str.
Another common object that is handled is Decimal types.

In addition, any objects that have a __json__ method will get called.
c                2  < \        V\        \        \        \        34      '       d   \        V4      # \        V\        4      '       d   VP                  # \        V\        4      '       d   \        VP                  4      # \        V\        4      '       d   VP                  4       # \        V\        4      '       d   VP                  4       # \        VR R4      '       d,   \        VP                   4      '       d   VP!                  4       # \"        SV `I  V4      # )__json__N)
isinstancer   r   	Exceptionr   strr   msgsr   valuer   	isoformatr	   as_sddlgetattrcallabler   superdefault)selfobj	__class__s   &&7/usr/lib/python3/dist-packages/samba/netcmd/encoders.pyr   JSONEncoder.default*   s    cGRNCDDs8Oc6""88OT""syy>!X&&==?"Z((;;= S*d++0F0F<<>!ws##     )	__name__
__module____qualname____firstlineno____doc__r   __static_attributes____classdictcell____classcell__)r   __classdict__s   @@r   r   r   !   s     $ $r   r   )jsonr   decimalr   enumr   ldbr   r   r   samba.dcerpc.securityr	   r   r   r   r   <module>r.      s.   .     * * ,$$"" $r   