Changeset 225

Show
Ignore:
Timestamp:
06/11/05 17:49:45 (3 years ago)
Author:
ged
Message:

- Cleaned up and simplified the class inheritance overview diagram.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/docs/FaerieMUD Design Diagrams.graffle

    r212 r225  
    44<dict> 
    55    <key>GraphDocumentVersion</key> 
    6     <integer>4</integer> 
     6    <integer>5</integer> 
    77    <key>GuidesLocked</key> 
    88    <string>NO</string> 
     
    1515    <key>MagnetsVisible</key> 
    1616    <string>NO</string> 
    17     <key>ModificationDate</key> 
    18     <string>2005-05-30 11:48:25 -0400</string> 
    19     <key>Modifier</key> 
    20     <string>Michael Granger</string> 
    21     <key>PageBreaks</key> 
    22     <string>YES</string> 
    23     <key>PageSetup</key> 
    24     <data> 
    25     BAt0eXBlZHN0cmVhbYED6IQBQISEhAtOU1ByaW50SW5mbwGEhAhOU09iamVjdACFkoSE 
    26     hBNOU011dGFibGVEaWN0aW9uYXJ5AISEDE5TRGljdGlvbmFyeQCUhAFpFJKEhIQITlNT 
    27     dHJpbmcBlIQBKxBOU0pvYkRpc3Bvc2l0aW9uhpKEmZkPTlNQcmludFNwb29sSm9ihpKE 
    28     mZkLTlNQYXBlclNpemWGkoSEhAdOU1ZhbHVlAJSEASqEhAx7X05TU2l6ZT1mZn2cgQMY 
    29     gQJkhpKEmZkUTlNWZXJ0aWNhbFBhZ2luYXRpb26GkoSEhAhOU051bWJlcgCdm4SXlwCG 
    30     koSZmQ5OU1BNUGFnZUZvcm1hdIaShISEDU5TTXV0YWJsZURhdGEAhIQGTlNEYXRhAJSX 
    31     gR/8hAdbODE4OGNdPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4K 
    32     PCFET0NUWVBFIHBsaXN0IFBVQkxJQyAiLS8vQXBwbGUgQ29tcHV0ZXIvL0RURCBQTElT 
    33     VCAxLjAvL0VOIiAiaHR0cDovL3d3dy5hcHBsZS5jb20vRFREcy9Qcm9wZXJ0eUxpc3Qt 
    34     MS4wLmR0ZCI+CjxwbGlzdCB2ZXJzaW9uPSIxLjAiPgo8ZGljdD4KCTxrZXk+Y29tLmFw 
    35     cGxlLnByaW50LlBhZ2VGb3JtYXQuRm9ybWF0dGluZ1ByaW50ZXI8L2tleT4KCTxkaWN0 
    36     PgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVhdG9yPC9rZXk+CgkJPHN0 
    37     cmluZz5jb20uYXBwbGUucHJpbnRpbmdtYW5hZ2VyPC9zdHJpbmc+CgkJPGtleT5jb20u 
    38     YXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5PgoJCTxhcnJheT4KCQkJPGRp 
    39     Y3Q+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9ybWF0LkZvcm1hdHRpbmdQ 
    40     cmludGVyPC9rZXk+CgkJCQk8c3RyaW5nPiA8L3N0cmluZz4KCQkJCTxrZXk+Y29tLmFw 
    41     cGxlLnByaW50LnRpY2tldC5jbGllbnQ8L2tleT4KCQkJCTxzdHJpbmc+Y29tLmFwcGxl 
    42     LnByaW50aW5nbWFuYWdlcjwvc3RyaW5nPgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQu 
    43     dGlja2V0Lm1vZERhdGU8L2tleT4KCQkJCTxkYXRlPjIwMDMtMDMtMjlUMDg6MTc6NTJa 
    44     PC9kYXRlPgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LnN0YXRlRmxhZzwv 
    45     a2V5PgoJCQkJPGludGVnZXI+MDwvaW50ZWdlcj4KCQkJPC9kaWN0PgoJCTwvYXJyYXk+ 
    46     Cgk8L2RpY3Q+Cgk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9ybWF0LlBNSG9yaXpv 
    47     bnRhbFJlczwva2V5PgoJPGRpY3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0 
    48     LmNyZWF0b3I8L2tleT4KCQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludGluZ21hbmFnZXI8 
    49     L3N0cmluZz4KCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuaXRlbUFycmF5PC9r 
    50     ZXk+CgkJPGFycmF5PgoJCQk8ZGljdD4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LlBh 
    51     Z2VGb3JtYXQuUE1Ib3Jpem9udGFsUmVzPC9rZXk+CgkJCQk8cmVhbD43MjwvcmVhbD4K 
    52     CQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jbGllbnQ8L2tleT4KCQkJCTxz 
    53     dHJpbmc+Y29tLmFwcGxlLnByaW50aW5nbWFuYWdlcjwvc3RyaW5nPgoJCQkJPGtleT5j 
    54     b20uYXBwbGUucHJpbnQudGlja2V0Lm1vZERhdGU8L2tleT4KCQkJCTxkYXRlPjIwMDMt 
    55     MDMtMjVUMTY6NDI6MzVaPC9kYXRlPgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlj 
    56     a2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJPGludGVnZXI+MDwvaW50ZWdlcj4KCQkJPC9k 
    57     aWN0PgoJCTwvYXJyYXk+Cgk8L2RpY3Q+Cgk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdl 
    58     Rm9ybWF0LlBNT3JpZW50YXRpb248L2tleT4KCTxkaWN0PgoJCTxrZXk+Y29tLmFwcGxl 
    59     LnByaW50LnRpY2tldC5jcmVhdG9yPC9rZXk+CgkJPHN0cmluZz5jb20uYXBwbGUucHJp 
    60     bnRpbmdtYW5hZ2VyPC9zdHJpbmc+CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0 
    61     Lml0ZW1BcnJheTwva2V5PgoJCTxhcnJheT4KCQkJPGRpY3Q+CgkJCQk8a2V5PmNvbS5h 
    62     cHBsZS5wcmludC5QYWdlRm9ybWF0LlBNT3JpZW50YXRpb248L2tleT4KCQkJCTxpbnRl 
    63     Z2VyPjI8L2ludGVnZXI+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuY2xp 
    64     ZW50PC9rZXk+CgkJCQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludGluZ21hbmFnZXI8L3N0 
    65     cmluZz4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5tb2REYXRlPC9rZXk+ 
    66     CgkJCQk8ZGF0ZT4yMDAzLTAzLTI5VDA4OjQ2OjQ5WjwvZGF0ZT4KCQkJCTxrZXk+Y29t 
    67     LmFwcGxlLnByaW50LnRpY2tldC5zdGF0ZUZsYWc8L2tleT4KCQkJCTxpbnRlZ2VyPjA8 
    68     L2ludGVnZXI+CgkJCTwvZGljdD4KCQk8L2FycmF5PgoJPC9kaWN0PgoJPGtleT5jb20u 
    69     YXBwbGUucHJpbnQuUGFnZUZvcm1hdC5QTVNjYWxpbmc8L2tleT4KCTxkaWN0PgoJCTxr 
    70     ZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVhdG9yPC9rZXk+CgkJPHN0cmluZz5j 
    71     b20uYXBwbGUucHJpbnRpbmdtYW5hZ2VyPC9zdHJpbmc+CgkJPGtleT5jb20uYXBwbGUu 
    72     cHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5PgoJCTxhcnJheT4KCQkJPGRpY3Q+CgkJ 
    73     CQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9ybWF0LlBNU2NhbGluZzwva2V5PgoJ 
    74     CQkJPHJlYWw+MTwvcmVhbD4KCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5j 
    75     bGllbnQ8L2tleT4KCQkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50aW5nbWFuYWdlcjwv 
    76     c3RyaW5nPgoJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lm1vZERhdGU8L2tl 
    77     eT4KCQkJCTxkYXRlPjIwMDMtMDMtMjlUMDg6MTc6NTJaPC9kYXRlPgoJCQkJPGtleT5j 
    78     b20uYXBwbGUucHJpbnQudGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJPGludGVnZXI+ 
    79     MDwvaW50ZWdlcj4KCQkJPC9kaWN0PgoJCTwvYXJyYXk+Cgk8L2RpY3Q+Cgk8a2V5PmNv 
    80     bS5hcHBsZS5wcmludC5QYWdlRm9ybWF0LlBNVmVydGljYWxSZXM8L2tleT4KCTxkaWN0 
    81     PgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVhdG9yPC9rZXk+CgkJPHN0 
    82     cmluZz5jb20uYXBwbGUucHJpbnRpbmdtYW5hZ2VyPC9zdHJpbmc+CgkJPGtleT5jb20u 
    83     YXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5PgoJCTxhcnJheT4KCQkJPGRp 
    84     Y3Q+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9ybWF0LlBNVmVydGljYWxS 
    85     ZXM8L2tleT4KCQkJCTxyZWFsPjcyPC9yZWFsPgoJCQkJPGtleT5jb20uYXBwbGUucHJp 
    86     bnQudGlja2V0LmNsaWVudDwva2V5PgoJCQkJPHN0cmluZz5jb20uYXBwbGUucHJpbnRp 
    87     bmdtYW5hZ2VyPC9zdHJpbmc+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQu 
    88     bW9kRGF0ZTwva2V5PgoJCQkJPGRhdGU+MjAwMy0wMy0yNVQxNjo0MjozNVo8L2RhdGU+ 
    89     CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJ 
    90     CQk8aW50ZWdlcj4wPC9pbnRlZ2VyPgoJCQk8L2RpY3Q+CgkJPC9hcnJheT4KCTwvZGlj 
    91     dD4KCTxrZXk+Y29tLmFwcGxlLnByaW50LlBhZ2VGb3JtYXQuUE1WZXJ0aWNhbFNjYWxp 
    92     bmc8L2tleT4KCTxkaWN0PgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVh 
    93     dG9yPC9rZXk+CgkJPHN0cmluZz5jb20uYXBwbGUucHJpbnRpbmdtYW5hZ2VyPC9zdHJp 
    94     bmc+CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5PgoJ 
    95     CTxhcnJheT4KCQkJPGRpY3Q+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9y 
    96     bWF0LlBNVmVydGljYWxTY2FsaW5nPC9rZXk+CgkJCQk8cmVhbD4xPC9yZWFsPgoJCQkJ 
    97     PGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNsaWVudDwva2V5PgoJCQkJPHN0cmlu 
    98     Zz5jb20uYXBwbGUucHJpbnRpbmdtYW5hZ2VyPC9zdHJpbmc+CgkJCQk8a2V5PmNvbS5h 
    99     cHBsZS5wcmludC50aWNrZXQubW9kRGF0ZTwva2V5PgoJCQkJPGRhdGU+MjAwMy0wMy0y 
    100     OVQwODoxNzo1Mlo8L2RhdGU+CgkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQu 
    101     c3RhdGVGbGFnPC9rZXk+CgkJCQk8aW50ZWdlcj4wPC9pbnRlZ2VyPgoJCQk8L2RpY3Q+ 
    102     CgkJPC9hcnJheT4KCTwvZGljdD4KCTxrZXk+Y29tLmFwcGxlLnByaW50LnN1YlRpY2tl 
    103     dC5wYXBlcl9pbmZvX3RpY2tldDwva2V5PgoJPGRpY3Q+CgkJPGtleT5jb20uYXBwbGUu 
    104     cHJpbnQuUGFnZUZvcm1hdC5QTUFkanVzdGVkUGFnZVJlY3Q8L2tleT4KCQk8ZGljdD4K 
    105     CQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4KCQkJPHN0 
    106     cmluZz5jb20uYXBwbGUucHJpbnRpbmdtYW5hZ2VyPC9zdHJpbmc+CgkJCTxrZXk+Y29t 
    107     LmFwcGxlLnByaW50LnRpY2tldC5pdGVtQXJyYXk8L2tleT4KCQkJPGFycmF5PgoJCQkJ 
    108     PGRpY3Q+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1hdC5QTUFkanVz 
    109     dGVkUGFnZVJlY3Q8L2tleT4KCQkJCQk8YXJyYXk+CgkJCQkJCTxyZWFsPjAuMDwvcmVh 
    110     bD4KCQkJCQkJPHJlYWw+MC4wPC9yZWFsPgoJCQkJCQk8cmVhbD41NzY8L3JlYWw+CgkJ 
    111     CQkJCTxyZWFsPjczNDwvcmVhbD4KCQkJCQk8L2FycmF5PgoJCQkJCTxrZXk+Y29tLmFw 
    112     cGxlLnByaW50LnRpY2tldC5jbGllbnQ8L2tleT4KCQkJCQk8c3RyaW5nPmNvbS5hcHBs 
    113     ZS5wcmludGluZ21hbmFnZXI8L3N0cmluZz4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmlu 
    114     dC50aWNrZXQubW9kRGF0ZTwva2V5PgoJCQkJCTxkYXRlPjIwMDUtMDUtMjhUMTg6NDI6 
    115     MDJaPC9kYXRlPgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5zdGF0ZUZs 
    116     YWc8L2tleT4KCQkJCQk8aW50ZWdlcj4wPC9pbnRlZ2VyPgoJCQkJPC9kaWN0PgoJCQk8 
    117     L2FycmF5PgoJCTwvZGljdD4KCQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYWdlRm9ybWF0 
    118     LlBNQWRqdXN0ZWRQYXBlclJlY3Q8L2tleT4KCQk8ZGljdD4KCQkJPGtleT5jb20uYXBw 
    119     bGUucHJpbnQudGlja2V0LmNyZWF0b3I8L2tleT4KCQkJPHN0cmluZz5jb20uYXBwbGUu 
    120     cHJpbnRpbmdtYW5hZ2VyPC9zdHJpbmc+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRp 
    121     Y2tldC5pdGVtQXJyYXk8L2tleT4KCQkJPGFycmF5PgoJCQkJPGRpY3Q+CgkJCQkJPGtl 
    122     eT5jb20uYXBwbGUucHJpbnQuUGFnZUZvcm1hdC5QTUFkanVzdGVkUGFwZXJSZWN0PC9r 
    123     ZXk+CgkJCQkJPGFycmF5PgoJCQkJCQk8cmVhbD4tMTg8L3JlYWw+CgkJCQkJCTxyZWFs 
    124     Pi0xODwvcmVhbD4KCQkJCQkJPHJlYWw+NTk0PC9yZWFsPgoJCQkJCQk8cmVhbD43NzQ8 
    125     L3JlYWw+CgkJCQkJPC9hcnJheT4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNr 
    126     ZXQuY2xpZW50PC9rZXk+CgkJCQkJPHN0cmluZz5jb20uYXBwbGUucHJpbnRpbmdtYW5h 
    127     Z2VyPC9zdHJpbmc+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lm1vZERh 
    128     dGU8L2tleT4KCQkJCQk8ZGF0ZT4yMDA1LTA1LTI4VDE4OjQyOjAyWjwvZGF0ZT4KCQkJ 
    129     CQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJCQkJ 
    130     PGludGVnZXI+MDwvaW50ZWdlcj4KCQkJCTwvZGljdD4KCQkJPC9hcnJheT4KCQk8L2Rp 
    131     Y3Q+CgkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvLlBNUGFwZXJOYW1lPC9r 
    132     ZXk+CgkJPGRpY3Q+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVhdG9y 
    133     PC9rZXk+CgkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50LnBtLlBvc3RTY3JpcHQ8L3N0 
    134     cmluZz4KCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5 
    135     PgoJCQk8YXJyYXk+CgkJCQk8ZGljdD4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC5Q 
    136     YXBlckluZm8uUE1QYXBlck5hbWU8L2tleT4KCQkJCQk8c3RyaW5nPm5hLWxldHRlcjwv 
    137     c3RyaW5nPgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jbGllbnQ8L2tl 
    138     eT4KCQkJCQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludC5wbS5Qb3N0U2NyaXB0PC9zdHJp 
    139     bmc+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lm1vZERhdGU8L2tleT4K 
    140     CQkJCQk8ZGF0ZT4yMDAwLTA3LTI4VDIyOjU3OjA0WjwvZGF0ZT4KCQkJCQk8a2V5PmNv 
    141     bS5hcHBsZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJCQkJPGludGVnZXI+ 
    142     MTwvaW50ZWdlcj4KCQkJCTwvZGljdD4KCQkJPC9hcnJheT4KCQk8L2RpY3Q+CgkJPGtl 
    143     eT5jb20uYXBwbGUucHJpbnQuUGFwZXJJbmZvLlBNVW5hZGp1c3RlZFBhZ2VSZWN0PC9r 
    144     ZXk+CgkJPGRpY3Q+CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVhdG9y 
    145     PC9rZXk+CgkJCTxzdHJpbmc+Y29tLmFwcGxlLnByaW50LnBtLlBvc3RTY3JpcHQ8L3N0 
    146     cmluZz4KCQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5 
    147     PgoJCQk8YXJyYXk+CgkJCQk8ZGljdD4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC5Q 
    148     YXBlckluZm8uUE1VbmFkanVzdGVkUGFnZVJlY3Q8L2tleT4KCQkJCQk8YXJyYXk+CgkJ 
    149     CQkJCTxyZWFsPjAuMDwvcmVhbD4KCQkJCQkJPHJlYWw+MC4wPC9yZWFsPgoJCQkJCQk8 
    150     cmVhbD43MzQ8L3JlYWw+CgkJCQkJCTxyZWFsPjU3NjwvcmVhbD4KCQkJCQk8L2FycmF5 
    151     PgoJCQkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jbGllbnQ8L2tleT4KCQkJ 
    152     CQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludC5wbS5Qb3N0U2NyaXB0PC9zdHJpbmc+CgkJ 
    153     CQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0Lm1vZERhdGU8L2tleT4KCQkJCQk8 
    154     ZGF0ZT4yMDAwLTA3LTI4VDIyOjU3OjA0WjwvZGF0ZT4KCQkJCQk8a2V5PmNvbS5hcHBs 
    155     ZS5wcmludC50aWNrZXQuc3RhdGVGbGFnPC9rZXk+CgkJCQkJPGludGVnZXI+MTwvaW50 
    156     ZWdlcj4KCQkJCTwvZGljdD4KCQkJPC9hcnJheT4KCQk8L2RpY3Q+CgkJPGtleT5jb20u 
    157     YXBwbGUucHJpbnQuUGFwZXJJbmZvLlBNVW5hZGp1c3RlZFBhcGVyUmVjdDwva2V5PgoJ 
    158     CTxkaWN0PgoJCQk8a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuY3JlYXRvcjwva2V5 
    159     PgoJCQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludC5wbS5Qb3N0U2NyaXB0PC9zdHJpbmc+ 
    160     CgkJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5pdGVtQXJyYXk8L2tleT4KCQkJ 
    161     PGFycmF5PgoJCQkJPGRpY3Q+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQuUGFwZXJJ 
    162     bmZvLlBNVW5hZGp1c3RlZFBhcGVyUmVjdDwva2V5PgoJCQkJCTxhcnJheT4KCQkJCQkJ 
    163     PHJlYWw+LTE4PC9yZWFsPgoJCQkJCQk8cmVhbD4tMTg8L3JlYWw+CgkJCQkJCTxyZWFs 
    164     Pjc3NDwvcmVhbD4KCQkJCQkJPHJlYWw+NTk0PC9yZWFsPgoJCQkJCTwvYXJyYXk+CgkJ 
    165     CQkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LmNsaWVudDwva2V5PgoJCQkJCTxz 
    166     dHJpbmc+Y29tLmFwcGxlLnByaW50LnBtLlBvc3RTY3JpcHQ8L3N0cmluZz4KCQkJCQk8 
    167     a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQubW9kRGF0ZTwva2V5PgoJCQkJCTxkYXRl 
    168     PjIwMDAtMDctMjhUMjI6NTc6MDRaPC9kYXRlPgoJCQkJCTxrZXk+Y29tLmFwcGxlLnBy 
    169     aW50LnRpY2tldC5zdGF0ZUZsYWc8L2tleT4KCQkJCQk8aW50ZWdlcj4xPC9pbnRlZ2Vy 
    170     PgoJCQkJPC9kaWN0PgoJCQk8L2FycmF5PgoJCTwvZGljdD4KCQk8a2V5PmNvbS5hcHBs 
    171     ZS5wcmludC5QYXBlckluZm8ucHBkLlBNUGFwZXJOYW1lPC9rZXk+CgkJPGRpY3Q+CgkJ 
    172     CTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5jcmVhdG9yPC9rZXk+CgkJCTxzdHJp 
    173     bmc+Y29tLmFwcGxlLnByaW50LnBtLlBvc3RTY3JpcHQ8L3N0cmluZz4KCQkJPGtleT5j 
    174     b20uYXBwbGUucHJpbnQudGlja2V0Lml0ZW1BcnJheTwva2V5PgoJCQk8YXJyYXk+CgkJ 
    175     CQk8ZGljdD4KCQkJCQk8a2V5PmNvbS5hcHBsZS5wcmludC5QYXBlckluZm8ucHBkLlBN 
    176     UGFwZXJOYW1lPC9rZXk+CgkJCQkJPHN0cmluZz5MZXR0ZXI8L3N0cmluZz4KCQkJCQk8 
    177     a2V5PmNvbS5hcHBsZS5wcmludC50aWNrZXQuY2xpZW50PC9rZXk+CgkJCQkJPHN0cmlu 
    178     Zz5jb20uYXBwbGUucHJpbnQucG0uUG9zdFNjcmlwdDwvc3RyaW5nPgoJCQkJCTxrZXk+ 
    179     Y29tLmFwcGxlLnByaW50LnRpY2tldC5tb2REYXRlPC9rZXk+CgkJCQkJPGRhdGU+MjAw 
    180     MC0wNy0yOFQyMjo1NzowNFo8L2RhdGU+CgkJCQkJPGtleT5jb20uYXBwbGUucHJpbnQu 
    181     dGlja2V0LnN0YXRlRmxhZzwva2V5PgoJCQkJCTxpbnRlZ2VyPjE8L2ludGVnZXI+CgkJ 
    182     CQk8L2RpY3Q+CgkJCTwvYXJyYXk+CgkJPC9kaWN0PgoJCTxrZXk+Y29tLmFwcGxlLnBy 
    183     aW50LnRpY2tldC5BUElWZXJzaW9uPC9rZXk+CgkJPHN0cmluZz4wMC4yMDwvc3RyaW5n 
    184     PgoJCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5wcml2YXRlTG9jazwva2V5PgoJ 
    185     CTxmYWxzZS8+CgkJPGtleT5jb20uYXBwbGUucHJpbnQudGlja2V0LnR5cGU8L2tleT4K 
    186     CQk8c3RyaW5nPmNvbS5hcHBsZS5wcmludC5QYXBlckluZm9UaWNrZXQ8L3N0cmluZz4K 
    187     CTwvZGljdD4KCTxrZXk+Y29tLmFwcGxlLnByaW50LnRpY2tldC5BUElWZXJzaW9uPC9r 
    188     ZXk+Cgk8c3RyaW5nPjAwLjIwPC9zdHJpbmc+Cgk8a2V5PmNvbS5hcHBsZS5wcmludC50 
    189     aWNrZXQucHJpdmF0ZUxvY2s8L2tleT4KCTxmYWxzZS8+Cgk8a2V5PmNvbS5hcHBsZS5w 
    190     cmludC50aWNrZXQudHlwZTwva2V5PgoJPHN0cmluZz5jb20uYXBwbGUucHJpbnQuUGFn 
    191     ZUZvcm1hdFRpY2tldDwvc3RyaW5nPgo8L2RpY3Q+CjwvcGxpc3Q+CoaShJmZFE5TVmVy 
    192     dGljYWxseUNlbnRlcmVkhpKEoZuilwGGkoSZmQ9OU1ByaW50QWxsUGFnZXOGkqCShJmZ 
    193     CE5TQ29waWVzhpKokoSZmQtOU1BhcGVyTmFtZYaShJmZBkxldHRlcoaShJmZD05TU2Nh 
    194     bGluZ0ZhY3RvcoaShKGbhIQBZqEBhpKEmZkJTlNQcmludGVyhpKEhIQJTlNQcmludGVy 
    195     AJSShJmZCUFkb2JlIFBERoaGkoSZmQ1OU1JpZ2h0TWFyZ2luhpKEoZuvoSSGkoSZmRVO 
    196     U0hvcml6b25hbFBhZ2luYXRpb26GkqCShJmZGU5TUHJpbnRSZXZlcnNlT3JpZW50YXRp 
    197     b26GkqCShJmZDk5TQm90dG9tTWFyZ2luhpKEoZuvoSSGkoSZmQxOU0xlZnRNYXJnaW6G 
    198     koShm6+hJIaShJmZC05TVG9wTWFyZ2luhpKEoZuvoSSGkoSZmQpOU0xhc3RQYWdlhpKE 
    199     oZuil4J/////hpKEmZkLTlNGaXJzdFBhZ2WGkqiShJmZFk5TSG9yaXpvbnRhbGx5Q2Vu 
    200     dGVyZWSGkqiShJmZDU5TT3JpZW50YXRpb26GkqiGhg== 
    201     </data> 
    202     <key>ReadOnly</key> 
    203     <string>NO</string> 
    204     <key>Sheets</key> 
     17    <key>MasterSheets</key> 
    20518    <array> 
    20619        <dict> 
     20            <key>ActiveLayerIndex</key> 
     21            <integer>0</integer> 
     22            <key>AutoAdjust</key> 
     23            <false/> 
    20724            <key>CanvasColor</key> 
    20825            <dict> 
     
    21027                <string>1</string> 
    21128            </dict> 
     29            <key>CanvasOrigin</key> 
     30            <string>{0, 0}</string> 
     31            <key>CanvasScale</key> 
     32            <real>1</real> 
    21233            <key>ColumnAlign</key> 
    21334            <integer>0</integer> 
    21435            <key>ColumnSpacing</key> 
    21536            <real>36</real> 
     37            <key>DisplayScale</key> 
     38            <string>1 pt = 1 pt</string> 
    21639            <key>GraphicsList</key> 
    217             <array> 
    218                 <dict> 
    219                     <key>Bounds</key> 
    220                     <string>{{918, 54}, {154, 22}}</string> 
    221                     <key>Class</key> 
    222                     <string>ShapedGraphic</string> 
    223                     <key>FitText</key> 
    224                     <string>YES</string> 
    225                     <key>Flow</key> 
    226                     <string>Resize</string> 
    227                     <key>ID</key> 
    228                     <integer>92</integer> 
    229                     <key>Shape</key> 
    230                     <string>Rectangle</string> 
    231                     <key>Style</key> 
    232                     <dict> 
    233                         <key>fill</key> 
    234                         <dict> 
    235                             <key>Draws</key> 
    236                             <string>NO</string> 
    237                         </dict> 
    238                         <key>shadow</key> 
    239                         <dict> 
    240                             <key>Draws</key> 
    241                             <string>NO</string> 
    242                         </dict> 
    243                         <key>stroke</key> 
    244                         <dict> 
    245                             <key>Draws</key> 
    246                             <string>NO</string> 
    247                         </dict> 
    248                     </dict> 
    249                     <key>Text</key> 
    250                     <dict> 
    251                         <key>Text</key> 
    252                         <string>{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf100 
    253 {\fonttbl\f0\fnil\fcharset77 TektonPro-BoldExt;} 
    254 {\colortbl;\red255\green255\blue255;} 
    255 \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc 
    256  
    257 \f0\b\fs36 \cf0 Class Overview}</string> 
    258                     </dict> 
    259                     <key>Wrap</key> 
    260                     <string>NO</string> 
    261                 </dict> 
    262                 <dict> 
    263                     <key>Class</key> 
    264                     <string>LineGraphic</string> 
    265                     <key>Head</key> 
    266                     <dict> 
    267                         <key>ID</key> 
    268                         <integer>47</integer> 
    269                         <key>Info</key> 
    270                         <integer>1</integer> 
    271                     </dict> 
    272                     <key>ID</key> 
    273                     <integer>91</integer> 
    274                     <key>OrthogonalBarAutomatic</key> 
    275                     <true/> 
    276                     <key>OrthogonalBarPosition</key> 
    277                     <real>27</real> 
    278                     <key>Points</key> 
    279                     <array> 
    280                         <string>{782.479, 189}</string> 
    281                         <string>{721.979, 104}</string> 
    282                     </array> 
    283                     <key>Style</key> 
    284                     <dict> 
    285                         <key>shadow</key> 
    286                         <dict> 
    287                             <key>Draws</key> 
    288                             <string>YES</string> 
    289                         </dict> 
    290                         <key>stroke</key> 
    291                         <dict> 
    292                             <key>Cap</key> 
    293                             <integer>0</integer> 
    294                             <key>HeadArrow</key> 
    295                             <string>UMLInheritance</string> 
    296                             <key>Join</key> 
    297                             <integer>0</integer> 
    298                             <key>LineType</key> 
    299                             <integer>2</integer> 
    300                             <key>TailArrow</key> 
    301                             <string>0</string> 
    302                         </dict> 
    303                     </dict> 
    304                     <key>Tail</key> 
    305                     <dict> 
    306                         <key>ID</key> 
    307                         <integer>85</integer> 
    308                     </dict> 
    309                 </dict> 
    310                 <dict> 
    311                     <key>Class</key> 
    312                     <string>LineGraphic</string> 
    313                     <key>Head</key> 
    314                     <dict> 
    315                         <key>ID</key> 
    316                         <integer>80</integer> 
    317                         <key>Info</key> 
    318                         <integer>1</integer> 
    319                     </dict> 
    320                     <key>ID</key> 
    321                     <integer>90</integer> 
    322                     <key>OrthogonalBarAutomatic</key> 
    323                     <true/> 
    324                     <key>OrthogonalBarPosition</key> 
    325                     <real>16</real> 
    326                     <key>Points</key> 
    327                     <array> 
    328                         <string>{351.76, 412.84}</string> 
    329                         <string>{499.198, 348.636}</string> 
    330                     </array> 
    331                     <key>Style</key> 
    332                     <dict> 
    333                         <key>shadow</key> 
    334                         <dict> 
    335                             <key>Draws</key> 
    336                             <string>YES</string> 
    337                         </dict> 
    338                         <key>stroke</key> 
    339                         <dict> 
    340                             <key>Cap</key> 
    341                             <integer>0</integer> 
    342                             <key>HeadArrow</key> 
    343                             <string>UMLInheritance</string> 
    344                             <key>Join</key> 
    345                             <integer>0</integer> 
    346                             <key>LineType</key> 
    347                             <integer>2</integer> 
    348                             <key>TailArrow</key> 
    349                             <string>0</string> 
    350                         </dict> 
    351                     </dict> 
    352                     <key>Tail</key> 
    353                     <dict> 
    354                         <key>ID</key> 
    355                         <integer>89</integer> 
    356                         <key>Info</key> 
    357                         <integer>2</integer> 
    358                     </dict> 
    359                 </dict> 
    360                 <dict> 
    361                     <key>Bounds</key> 
    362                     <string>{{299.26, 412.84}, {105, 55}}</string> 
    363                     <key>Class</key> 
    364                     <string>MultiTextGraphic</string> 
    365                     <key>FitText</key> 
    366                     <string>YES</string> 
    367                     <key>Flow</key> 
    368                     <string>Resize</string> 
    369                     <key>ID</key> 
    370                     <integer>89</integer> 
    371                     <key>ListOrientation</key> 
    372                     <string>Vertical</string> 
    373                     <key>Magnets</key> 
    374                     <array> 
    375                         <string>{0, 1}</string> 
    376                         <string>{0, -1}</string> 
    377                     </array> 
    378                     <key>Style</key> 
    379                     <dict> 
    380                         <key>fill</key> 
    381                         <dict> 
    382                             <key>GradientAngle</key> 
    383                             <real>69</real> 
    384                             <key>GradientCenter</key> 
    385                             <string>{-0.220588, -0.205882}</string> 
    386                             <key>GradientColor</key> 
    387                             <dict> 
    388                                 <key>w</key> 
    389                                 <string>0.666667</string> 
    390                             </dict> 
    391                         </dict> 
    392                     </dict> 
    393                     <key>TextList</key> 
    394                     <array> 
    395                         <dict> 
    396                             <key>Align</key> 
    397                             <integer>0</integer> 
    398                             <key>Text</key> 
    399                             <string>{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf100 
    400 {\fonttbl\f0\fnil\fcharset77 MyriadPro-BoldCondIt;} 
    401 {\colortbl;\red255\green255\blue255;} 
    402 \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc 
    403  
    404 \f0\i\b\fs18 \cf0 Ability}</string> 
    405                         </dict> 
    406                         <dict> 
    407                             <key>Align</key> 
    408                             <integer>0</integer> 
    409                             <key>Text</key> 
    410                             <string>{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf100 
    411 {\fonttbl\f0\fnil\fcharset77 MyriadPro-Cond;} 
    412 {\colortbl;\red255\green255\blue255;} 
    413 \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural 
    414  
    415 \f0\fs18 \cf0 +name: String\ 
    416 +verb: String\ 
    417 +synonyms: Array(String)}</string> 
    418                         </dict> 
    419                         <dict> 
    420                             <key>Align</key> 
    421                             <integer>0</integer> 
    422                             <key>Text</key> 
    423                             <string>{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf100 
    424 {\fonttbl\f0\fnil\fcharset77 MyriadPro-Cond;} 
    425 {\colortbl;\red255\green255\blue255;} 
    426 \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural 
    427  
    428 \f0\fs18 \cf0 +invoke(targets:Entity): TrueClass}</string> 
    429                         </dict> 
    430                     </array> 
    431                     <key>TextPlacement</key> 
    432                     <integer>0</integer> 
    433                     <key>Wrap</key> 
    434                     <string>NO</string> 
    435                 </dict> 
    436                 <dict> 
    437                     <key>Class</key> 
    438                     <string>LineGraphic</string> 
    439                     <key>Head</key> 
    440                     <dict> 
    441                         <key>ID</key> 
    442                         <integer>80</integer> 
    443                         <key>Info</key> 
    444                         <integer>1</integer> 
    445                     </dict> 
    446                     <key>ID</key> 
    447                     <integer>88</integer> 
    448                     <key>OrthogonalBarAutomatic</key> 
    449                     <true/> 
    450                     <key>OrthogonalBarPosition</key> 
    451                     <real>16</real> 
    452                     <key>Points</key> 
    453                     <array> 
    454                         <string>{603.707, 412.84}</string> 
    455                         <string>{499.198, 348.636}</string> 
    456                     </array> 
    457                     <key>Style</key> 
    458                     <dict> 
    459                         <key>shadow</key> 
    460                         <dict> 
    461                             <key>Draws</key> 
    462                             <string>YES</string> 
    463                         </dict> 
    464                         <key>stroke</key> 
    465                         <dict> 
    466                             <key>Cap</key> 
    467                             <integer>0</integer> 
    468                             <key>HeadArrow</key> 
    469                             <string>UMLInheritance</string> 
    470                             <key>Join</key> 
    471                             <integer>0</integer> 
    472                             <key>LineType</key> 
    473                             <integer>2</integer> 
    474                             <key>TailArrow</key> 
    475                             <string>0</string> 
    476                         </dict> 
    477                     </dict> 
    478                     <key>Tail</key> 
    479                     <dict> 
    480                         <key>ID</key> 
    481                         <integer>86</integer> 
    482                     </dict> 
    483                 </dict> 
    484                 <dict> 
    485                     <key>Class</key> 
    486                     <string>LineGraphic</string> 
    487                     <key>Head</key> 
    488                     <dict> 
    489                         <key>ID</key> 
    490                         <integer>80</integer> 
    491                         <key>Info</key> 
    492                         <integer>1</integer> 
    493                     </dict> 
    494                     <key>ID</key> 
    495                     <integer>87</integer> 
    496                     <key>OrthogonalBarAutomatic</key> 
    497                     <true/> 
    498                     <key>OrthogonalBarPosition</key> 
    499                     <real>16</real> 
    500                     <key>Points</key> 
    501                     <array> 
    502                         <string>{487.365, 412.84}</string> 
    503                         <string>{499.198, 348.636}</string> 
    504                     </array> 
    505                     <key>Style</key> 
    506                     <dict> 
    507                         <key>shadow</key> 
    508                         <dict> 
    509                             <key>Draws</key> 
    510                             <string>YES</string> 
    511                         </dict> 
    512                         <key>stroke</key> 
    513                         <dict> 
    514                             <key>Cap</key> 
    515                             <integer>0</integer> 
    516                             <key>HeadArrow</key> 
    517                             <string>UMLInheritance</string> 
    518                             <key>Join</key> 
    519                             <integer>0</integer> 
    520                             <key>LineType</key> 
    521                             <integer>2</integer> 
    522                             <key>TailArrow</key> 
    523                             <string>0</string> 
    524                         </dict> 
    525                     </dict> 
    526                     <key>Tail</key> 
    527                     <dict> 
    528                         <key>ID</key> 
    529                         <integer>84</integer> 
    530                         <key>Info</key> 
    531                         <integer>2</integer> 
    532                     </dict> 
    533                 </dict> 
    534                 <dict> 
    535                     <key>Bounds</key> 
    536                     <string>{{560.707, 412.84}, {86, 33}}</string> 
    537                     <key>Class</key> 
    538                     <string>MultiTextGraphic</string> 
    539                     <key>FitText</key> 
    540                     <string>Vertical</string> 
    541                     <key>Flow</key> 
    542                     <string>Resize</string> 
    543                     <key>ID</key> 
    544                     <integer>86</integer> 
    545                     <key>ListOrientation</key> 
    546                     <string>Vertical</string> 
    547                     <key>Magnets</key> 
    548                     <array> 
    549                         <string>{0, 1}</string> 
    550                         <string>{0, -1}</string> 
    551                     </array> 
    552                     <key>Style</key> 
    553                     <dict> 
    554                         <key>fill</key> 
    555                         <dict> 
    556                             <key>GradientAngle</key> 
    557                             <real>69</real> 
    558                             <key>GradientCenter</key> 
    559                             <string>{-0.220588, -0.205882}</string> 
    560                             <key>GradientColor</key> 
    561                             <dict> 
    562                                 <key>w</key> 
    563                                 <string>0.666667</string> 
    564                             </dict> 
    565                         </dict> 
    566                     </dict> 
    567                     <key>TextList</key> 
    568                     <array> 
    569                         <dict> 
    570                             <key>Align</key> 
    571                             <integer>0</integer> 
    572                             <key>Text</key> 
    573                             <string>{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf100 
    574 {\fonttbl\f0\fnil\fcharset77 MyriadPro-BoldCondIt;} 
    575 {\colortbl;\red255\green255\blue255;} 
    576 \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc 
    577  
    578 \f0\i\b\fs18 \cf0 Relationship}</string> 
    579                         </dict> 
    580                         <dict> 
    581                             <key>Align</key> 
    582                             <integer>0</integer> 
    583                         &