MINI MINI MANI MO
3
  \|                 @   sb  d Z ddddddddd	d
ddd
dgZddlZddlZddlZddlZddlZddlmZ ddl	Z	ddl
Z
ddlZddlZddl
mZ ddlmZ ejddedZe jej G dd deZG dd deZejdd ZG dd deZdd Zdd Zdd Zd d Z G d!d dZ!d"Z"ej#d#Z$dPd%d&Z%d'd( Z&ej#d)ej'Z(d*d+ Z)d,d- Z*d.d/ Z+G d0d1 d1Z,G d2d3 d3Z-G d4d5 d5e-Z.d6d7 Z/G d8d de0Z1d9d:d;d<d=Z2e3 Z4G d>d? d?Z5d@dA Z6e7e8e9eje:fZ;G dBdC dCe3Z<dDdE Z=e>ee/e,e.dFe?ee=e5e<dFiZ@ddGedHdIdZAddGedHdJd
ZBe>dGdKdLdMdZCe>dKdGdNdOdZDdS )Qa  plistlib.py -- a tool to generate and parse MacOSX .plist files.
The property list (.plist) file format is a simple XML pickle supporting
basic object types, like dictionaries, lists, numbers and strings.
Usually the top level object is a dictionary.
To write out a plist file, use the dump(value, file)
function. 'value' is the top level object, 'file' is
a (writable) file object.
To parse a plist from a file, use the load(file) function,
with a (readable) file object as the only argument. It
returns the top level object (again, usually a dictionary).
To work with plist data in bytes objects, you can use loads()
and dumps().
Values can be strings, integers, floats, booleans, tuples, lists,
dictionaries (but only with string keys), Data, bytes, bytearray, or
datetime.datetime objects.
Generate Plist example:
    pl = dict(
        aString = "Doodah",
        aList = ["A", "B", 12, 32.1, [1, 2, 3]],
        aFloat = 0.1,
        anInt = 728,
        aDict = dict(
            anotherString = "<hello & hi there!>",
            aUnicodeValue = "M\xe4ssig, Ma\xdf",
            aTrueValue = True,
            aFalseValue = False,
        ),
        someData = b"<binary gunk>",
        someMoreData = b"<lots of binary gunk>" * 10,
        aDate = datetime.datetime.fromtimestamp(time.mktime(time.gmtime())),
    )
    with open(fileName, 'wb') as fp:
        dump(pl, fp)
Parse Plist example:
    with open(fileName, 'rb') as fp:
        pl = load(fp)
    print(pl["aKey"])
	readPlist
writePlistreadPlistFromByteswritePlistToBytesPlistDataDictInvalidFileExceptionFMT_XML
FMT_BINARYloaddumploadsdumps    N)BytesIO)warn)ParserCreatePlistFormatzFMT_XML FMT_BINARY)modulec               @   s(   e Zd Zf Zdd Zdd Zdd ZdS )
_InternalDictc             C   s:   y| | }W n t k
r(   t|Y nX tdtd |S )NzLAttribute access from plist dicts is deprecated, use d[key] notation instead   )KeyErrorAttributeErrorr   DeprecationWarning)selfattrvalue r    /usr/lib64/python3.6/plistlib.py__getattr__V   s    z_InternalDict.__getattr__c             C   s   t dtd || |<