X_eAov16P|k;CyE$ZIX?ddQ&wrAn5%m4p29?I_VTv5Wo1X1e
z@4L~>IUKp#(qf8&RJZ}J9G`eeNzC>>KHImp0T=V6);3F`%SsGoqy_9Jb1zMO89DGt
zmZyB3gS)bAv^GcwK@|4Y6~nAkXMdUFT00=+b_E|UpVi7a7*NG0uz;o;fGiozFcNEG
z21HQ|ugq!Wp=SFqIfGN=tDPZjju~$XP}2-K7_BcPi9s*F^gW^!<+f9)bR7fhS2NP$!%MC9c}^e~OTzT|QWV*IrPOepLy
zjgVo|y`8-URLs4lL>X7!Sps(T85dqko_8=RZsFD1VoiO%gmLn2CthmRO@9!>td}Sf
zia!uk__#}ABVR&tHtr19qW1Xlng=S1$Bol~x3|CW8Q&+U{0i4##2p%1Z9|${DaAed
zjAJr1^F44wr2}N$+nmxV1jsT*b?My?;>%?!h;a2%MzEbq=d8C^7_O*>IT{SCov_9*hHV##*
zKi986oL#V_lqNNj3Ag1^7*;ifC+*4%Oj$Mvb4N|MJ~AD@^@Va0&Vv#YY(aVxgPjke
z)N~bH7}gEduNU|}R*xXwNjc{+V%^fOn<%{zChod~50%0#g=kQiZK&!54xTCMO(FpC
z>+>7=Q$M;LiQ=#8xvGz>6SW|`nK&m$Au=C8Tv#|~aW#%`qJT(Ttgte0xX*dI2_trK
z&UcB@hUrWO$bS#%Xvgo^cBO{YXE$aKF>JXN*=3^mxz
z2pB`<9L}D7SNZ2&?)a+v#WyK88JKhsAa54}Q?
zlmq|hwnml!yp{>3L?%@n6w9l{6Zj;1&_@p}+MGbO6hw~1l}HC19b_1iFc8OEEZQMW
zN~yxEa+p>h%UjB1d2ngsG^^#iJ!5yv3x7~Dy__O5zDn$cUvf?&hAGx^TI<40NT(Q(
zNejGl9LKU@b1AXpBe5Eh$G|!!{A|0NW7ptQPGAwILdq#y8Eiw8^r}ZZ9q_JMl|t2#
z<_NSBtW+jPj7?p1lr_)NI5x%!Kd4ykxFL_aH`@J%0O1{dFv?!GQ*dU5zX&3`lxAu`
z{$*7}JqJ9p!86C=tvDESCcI}rLo0Tadmx#H#4O+!1dAgrvWv7Weg?1WY>8bPy7?zr
z-HilUN&tJwEOSZF<7Zw))ftuTs@4qtTC0$y9-mSC;KlF|3Olh7=jt&aBE9Zljkyqt
zTK!>+(?vZk2}(p=>0Q*(-}xAe$u#(wR49Py#Y@y6jf^|3B0B+owXLKMsxVtfU?ni5
zlq<%%eg?h{x~Tgsl^L}19g-|e+F_?lHD1Y0bp(+HWTj&mG+vx$Z8-Q%;!<5j9{>be
z=Qo7_cAV5kj{T}pF1VAKc9doKRj6>mp}2h>u`~$Rb89U*nR`Zj8)8-H6zD1E{Kbii
zk(6)=rffcUP?;@qQ_jG9y>8?>IG$Mk2XGJ%>=4^3Hs9S$Y1?DPgOl2Ia?#ET{>D4%rTGhl&@)fd2LAyx#B1U(4|V9&nCHQQTJtcHijzXu$eSgTd|+2=
zsyLT)#}nbcOcQ~uf7VO|MoU(!oUXV-8qN;8;7m4q$Rt&HxeSUGz!fa*(V!mtrzo!o
zuqlBjOuUl8!LatlGioJATFfIPRL%Pvrofy}LI+0W@RbQWNS)w>b}UOdTQkQw#X#sK
zA3TKadCFbWi7J7av^@BTmVQNNolH?JVGA^5=l9+1w7re5pX8xw5B4-~X2^|Y4e^0`
zSmcl$AZWmw^8L_fG#8`rI$lEKg#lq-HDy}Bj}1@lj7d_r7;{XNjj)fgFUawAb2X5~
zlzOr9Y?!{?$uqr2qyseW0U3LdJX-cUw^x%9STb8w8b=p7B{JBFLRQ}wIuybH2b0i&
zSi{|Lv&ugRT2(H>WT(wb3#Rnrj@5M7{w?$#WA+ER%DF_~HazyuRF4csI-JXKonCW-
zGsNhX=aLI#c`O=%F-?ybZwJVL&<}iz
zP6gCyYThPj0@?71sf@MADEo(TNj-ZQlgtJDA@Y^AQFJC8tA5}B`;|g!rN`;~Ftjzd
z-^s;Y%z5`%c&-;0M6
ziy1;3Sd!z>M1-B8N0KX*40Llq!78}?U`8v(Nip0-i+^%T=9k;^b4#ozR6TD@=5(;A
z(gUBM3`4bYd3%c}4dYE3{V*6k`i!$%NnnxJBLO2f?eUgXwKf6zms*{XVgPT4QO12*Vhhs>
ztr|HBcDX{JB=S1q52&%b)ap%hLLk!EwB9KkducFjTal6lI*c)h#38T>Pn0)&^9-9xQDI}Mamy*E1r+=yL9@6*
zOeF_WR%GV$EZ`^dd|RtlN>RvV!9pq-|OAvcwn-HD^y@xu|lSBzS)2FiCx7r?BiQXl_u5
z)c#n?y+0(ua{=iYkKCNwzcS6TIH-*S%cMYmxlOK+7rW1Hp68;^cA}9vemUc=%aD0M(%K{y
zTkqEC8H`#6)$Dorj#DMw-Xr3z0nmil851vxvYnVF3(}mwVl}@&B{(Hhu?kZN<6i^(
zA?i{Kl3@KSMIN?Kn`J`m;7UZ>Ol0S7^EW%IW?BKPBk}&i#FM)nDG?t)gostq_%N`h
z*{He4F9rUKE~s$$pIygDN7hqjqrC_?bZrxo`BT}E(|Ay-JAD~fL6ep|!Ka$YQiS$H
zqYiV4zRfhV=S<qV?yQ^Zdj*;F{k#QoGqkNo-)w*3CkB?>Hc2M;?-W?84ixHDkW|)k{B)yEZt80~v
zD;Z;+(a$65V+QEbn9&bBG3Zce`;%O6y26z2tXY=R>52o9M6~?+%s7EOoUuI(wCNIa
zXyGeho_6Hpe5!)NhXD8pj>W5ZUfI2zTGbNAp_>>3o!$t8$31Qn(aB5-VmuPJ7yz~@
zknPI5xB@gkU-q%{)S+|dY!g`#PFX!!V3MGxA=y-GN!$%M(WMiup^PU`670Nmgu7(s
z^YlGI2I!D*t)FT&^q+)CSnd#~(=pQlS6L%gSMWK+siBA2v@~3=jw==wZN$&FAZbTu
z@6?GJ⪼kPGfq6@FD>#DSIKfR+{B^T1lV%Kwy`$G}e`N!EE88aOL{FJmwWSDU}ZF
zJY;qbUQTHG299Y^lB|cE<9sO`T9Pox*Mjbiw$jN^Eie*esw0rPX>D
zc`|n)7YJ@MB~L4MoqcPcpY^FLyzsT~D0{{1V~?rjza=OQdTK~YzP%jRXyL9~BrFmD
zENs8YWCL+q-BRXprBlWi{z#5g8M;b|{UA>`Vo(0-l^jExr+bCG%v+GPjRW^H9*2%s
zf_ET}2O+(}|jlc`bh1
z<>2P@1go81pjE>m<*@d?(YKQS@g#a*12
zb1$$NE+?$}wU|ow(Q}Y&&p_RR2VA+qs(>4MhzE~JJAFLSfqbqta-S!b=zO_%KB3ij
zsew&+H+_otejVWa3j4XD3s$m}MgAD38nhzscP&OwX{K4l{hPwERxiCnl)ecrURo1P
znl|~8j%LB~EsW5qdog0iVuLh)Y>Gd5RfN|6o!ST*V4i}}B
zcQL!gKXA#jPBhZWQ-4LC9=(|DQ(aXL#@0VcydxOep>Y8$7Uze63+Co{Ehu@@#0GLP
zn=nb^7?*)uLpH;{dR#MAi!#>q-GbxtqE)PC0w?c_mGK)4IAZ4JqN6k06)NU0YNajc
zY4>SNaWYP#l@$7Qw74l^^4qkysa1ZQGW;kF&{`HqK$HdB25I&Xi5vIwDwOe2;HaL=
zSmq2cBN&W&TzIFnGz5@9vdfSGW}as$4Vc`snx61aAl0HqLU
zJz^}aBWtfwps-sgv#~rN@vGAYGNvM1@rZj}o~iJyp(MI9tpxITHmf%?3$P@;@f-@W
z=z@uSRahFKdBCPBf;GTx#fl?XJppYX?r7ZUdB`|hpxfGZlH+Ht322KydWrZjYA#WE
zWW(DoVklKmd`6TYTw$)E;9z2$bT^gYPTvEieBTcFO!A)J|doW8(dqM4NlYZQtf#NPGm>67mk?ZdiQ
zIkEWNZJ$>4xd%|8c&0T5^hQcCiq{G1Vk-RvG$OFlqBTKp%hpu??sRTYXK_&$Zuc)=
z_Y8wVqy#DVUr&O0-JF3?CJU|!8LtLHf6?g0UkJgUP6)CLv&HT(T
zC0QrtWPpkmu!XMw;$OT0u`9w
zQ#PJ7#p~ZJq&k@bYkDMyjH^GGFDM|Q;fWw%Qx6~+g?Mf0+XzbZRSC*}d!IgXfA1vu
z-lX~7g!|sK`refK-mI^C+0cImexHmE>LS*FSAiJ^OJyplfwtNCCF(2X7gRLHzHp;h
ziRgK|Y!%3-2@)%5ToUR6!i>&a{1NPYl)W-!`W9vCcnYb4Orgy%?*#$ad@^j4_w9Y!JPamV9@D#x(3kg&Q1z~;fD
z_r0-UP+>EJ1Nu}cMR%bV1yRwUxmLd*;uq|3!Q|Le28Ci&3|4?=N~8b#WG1C#acy<*
zgw~F-c$0CSUVDAzh4#FOgoNNP>}GQmh{5KUHC;!}>+NxZn-c^scGq<*J;1s;HNCxl
zp6v2kW<}CH1a3w%XWQ_<{;2!M38*j
z&Q`q5`Vhf(oj6*nqiU6hjRS4@M271=6&uhV+14XNI!r2~&mpg}CE`48h}`bTCP;6W
z2L8o}IqUgFzEkGcaxIP5+YOwJ-Y>)OJdHr%F7$c!h_(#`Nvj0-08vLIr8-2eKuQ%O
zslIGI7IK1_QWtj;_Q<_TXfKUbubU+|SX(Qt?oOS%4i&oK5$S<=ZwV@A9v$Ze#9@N&
zw@dF{;``CD+hXcrdbP`lY2R{HX<1bVt@n(a75hBDKjS{Gj0A25nX-gaKRh3fd46$Z
zEiKUIxU>%K&{XYPU)o7`+BBoCdV{`L47?kN?4-Ig?f-nDvzQFJe(BW|4omZYj~`Ka
zf=`r9FT!+G_l}75lik_<-GW`H9&cX7@m;mIDcbsibIPj|s4cogh^~6>N;Sk6%D2Ez
zX?WoE;OO-(PBeN|w#fq&kgEAi5|w$fcS%lWUt~VTi9f8K#Bg|n5)G`j6K`LA!scrH
z4!=IvbZV;`-dpkf
zifL7W^T$)yIx^m1z;r8Vcdy%s9Nop=P&yKS^MI8+)ZjPr!ZyQFy|a*4p16X>#CFxy
z>i|T%C1=3^XPgwuO)AGhuItlu2=8J&N|axu8)a`sBT#s4#)Tc(2JWxgn(+&l(S0wx
zQnyi)r{?s#sTi)KF+SCu6-hWP<&apg5o?P>;p|^_atLF=<}f>xmI7X3bcDl9SHWGe
zI(nUzu~B%-`l~byas^AzmnNsrs0*=jX8&~-ndQHrboh`-JK^$%*7tP8M~$vOFyBey`ivUq+r^J};Sei1Wk^%EuXPcm482KmKL=
zt!-`f=iQ3CS?LTUZJnjLD({Ka%UgK+;$5|kx&O-shwbD|-`nT)8jF!pGrBwGT%(
z-#6pS%`hT}v(G0^<9+ZOF+r20Q6~@`8x}HgMkCj^wyqQ1z)*X~C1nm#8|&
z`-QsVgZWh%pTC{6QJh0fNiM;>KR(nboqm@!dpCex4P7u;u;G>)7@--Vd48^hx$!2=B*z-H>JbKeD
z2;=?RsLR(o`;y1FZx?$jX4Pu5tcHKKo;sczz~CP{{`P!)e7q=ryjpO0W73E`x>V%w
zrmx(g5x+@CCbGnjvi2ovop!$s#l6PeXWVHDrYCr$hL={{ze1U%X_Ewe(}dchod=r{3ht_(Y#YJu^o+5OWNW$W7E!i
z)O)MOH|KD>q`~*6WGjCh+K{
zhpm2R4t&ZsFkOftrKH{VIIj{NzZRc#MZH)TjM4MDIe$ndHD!?<0liq0P2JbzUhex5
z(sk;N_cxlq)+>bVbM0oHmy}1Lolo7@;rdpnExXTIa`%Pz^st%Y)t}Dk9+zMKqPd*4
z1hz?IdC@sG)|P<>BxRQ=s+*=mFU;j1w+gL3<7z6G;wphIsBiCG`{vA$YQoab3f1?5
zM`1mUfG423PBp4ZnB&R2(<4l(SB~aVb4MsxT_ZmhMW=
zcGkW&_B6!w-ccM6!S*K_?cQ*u0W6IXHnkS*8yK9gcyrj^Jgjn_z)PISk_$a4ME
zAnw5_}JTUAMVtvv+wZ3Lt&&{`w;Ln}JfPYjk8_0RoDx_#00I20;h?k0~fZ
zAh>@gv;{5&|33VG1KLpk8_@or%Krz?{zq_@>K~K~{pJ1z<$r{=q5e0l{a>9u0dDpS%7eEywXsu5A$i4cGq<^!R@}{>T0M=LDmn{sqT>hv!t(|KkMzCi4EV{`~(m
msDuBG#ec@<{m-%e&F3jdga37vfd1_d3bg+!M;!0pzy1ey!7D%j
diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Preferences/Symbol List: Method.tmPreferences b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Preferences/Symbol List: Method.tmPreferences
new file mode 100644
index 000000000..d8722d73d
--- /dev/null
+++ b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Preferences/Symbol List: Method.tmPreferences
@@ -0,0 +1,23 @@
+
+
+
+
+ name
+ Symbol List: Method
+ scope
+ meta.function.js.objj
+ settings
+
+ showInSymbolList
+ 1
+ symbolTransformation
+
+ s/^([-+])\s*\(.*?\)\s*/ $1 /; # strip result type
+ s/:\s*\(.*?\)\s*\w+\s*/:/g; # strip argument variables
+ s/\s*;?$//g; # strip terminating ws + semi-colon
+
+
+ uuid
+ 85A46AFC-5552-4CE5-BDA0-ED34F0398399
+
+
diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Accessors.tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Accessors.tmSnippet
new file mode 100644
index 000000000..428214f6b
--- /dev/null
+++ b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Accessors.tmSnippet
@@ -0,0 +1,24 @@
+
+
+
+
+ content
+ - (${1:id})${2:thing}
+{
+ return $2;
+}
+
+- (void)set${2/./\u$0/}:($1)aValue
+{
+ $2 = aValue;
+}
+ name
+ Accessors
+ scope
+ source.js.objj
+ tabTrigger
+ acc
+ uuid
+ AA41BEF8-5F81-4A5A-85DE-2E81A112778B
+
+
diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Class.tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Class.tmSnippet
new file mode 100644
index 000000000..d2adc60a5
--- /dev/null
+++ b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Class.tmSnippet
@@ -0,0 +1,29 @@
+
+
+
+
+ content
+ @implementation ${1:class} : ${2:CPObject}
+{
+}
+
+- (id)init
+{
+ if(self = [super init])
+ {$0
+ }
+ return self;
+}
+
+@end
+
+ name
+ Class
+ scope
+ source.js.objj
+ tabTrigger
+ cla
+ uuid
+ 96C39647-4346-4750-9F96-58070F24EDE6
+
+
diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/_Accessors.tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/_Accessors.tmSnippet
new file mode 100644
index 000000000..55665bd64
--- /dev/null
+++ b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/_Accessors.tmSnippet
@@ -0,0 +1,24 @@
+
+
+
+
+ content
+ - (${1:id})${2:thing}
+{
+ return _$2;
+}
+
+- (void)set${2/./\u$0/}:($1)aValue
+{
+ _$2 = aValue;
+}
+ name
+ _Accessors
+ scope
+ source.js.objj
+ tabTrigger
+ _acc
+ uuid
+ 85B0746B-AE1C-47B3-8B9A-2B9A95F4C71E
+
+
diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Syntaxes/Objective-J.tmLanguage b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Syntaxes/Objective-J.tmLanguage
new file mode 100644
index 000000000..a1ced269f
--- /dev/null
+++ b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Syntaxes/Objective-J.tmLanguage
@@ -0,0 +1,642 @@
+
+
+
+
+ fileTypes
+
+ j
+ J
+
+ foldingStartMarker
+ (?x)
+ /\*\*(?!\*)
+ |^(?![^{]*?//|[^{]*?/\*(?!.*?\*/.*?\{)).*?\{\s*($|//|/\*(?!.*?\*/.*\S))
+ |^@(interface|protocol|implementation)\b
+
+ foldingStopMarker
+ (?<!\*)\*\*/|^\s*\}|^@end\b
+ name
+ Objective-J
+ patterns
+
+
+ begin
+ ((@)(interface|protocol))(?!.+;)\s+([A-Za-z][A-Za-z0-9]*)\s*((:)(?:\s*)([A-Za-z][A-Za-z0-9]*))?(\s|\n)?
+ captures
+
+ 1
+
+ name
+ storage.type.js.objj
+
+ 2
+
+ name
+ punctuation.definition.storage.type.js.objj
+
+ 4
+
+ name
+ entity.name.type.js.objj
+
+ 6
+
+ name
+ punctuation.definition.entity.other.inherited-class.js.objj
+
+ 7
+
+ name
+ entity.other.inherited-class.js.objj
+
+ 8
+
+ name
+ meta.divider.js.objj
+
+ 9
+
+ name
+ meta.inherited-class.js.objj
+
+
+ contentName
+ meta.scope.interface.js.objj
+ end
+ ((@)end)\b
+ name
+ meta.interface-or-protocol.js.objj
+ patterns
+
+
+ include
+ #protocol_list
+
+
+ include
+ #method
+
+
+ include
+ $base
+
+
+
+
+ begin
+ ((@)(implementation))\s+([A-Za-z][A-Za-z0-9]*)\s*(?::\s*([A-Za-z][A-Za-z0-9]*))?
+ captures
+
+ 1
+
+ name
+ storage.type.js.objj
+
+ 2
+
+ name
+ punctuation.definition.storage.type.js.objj
+
+ 4
+
+ name
+ entity.name.type.js.objj
+
+ 5
+
+ name
+ entity.other.inherited-class.js.objj
+
+
+ contentName
+ meta.scope.implementation.js.objj
+ end
+ ((@)end)\b
+ name
+ meta.implementation.js.objj
+ patterns
+
+
+ include
+ #special_variables
+
+
+ include
+ #method
+
+
+ include
+ $base
+
+
+
+
+ begin
+ @"
+ beginCaptures
+
+ 0
+
+ name
+ punctuation.definition.string.begin.js.objj
+
+
+ end
+ "
+ endCaptures
+
+ 0
+
+ name
+ punctuation.definition.string.end.js.objj
+
+
+ name
+ string.quoted.double.js.objj
+ patterns
+
+
+ match
+ \\(\\|[abefnrtv'"?]|[0-3]\d{,2}|[4-7]\d?|x[a-zA-Z0-9]+)
+ name
+ constant.character.escape.js.objj
+
+
+ match
+ \\.
+ name
+ invalid.illegal.unknown-escape.js.objj
+
+
+
+
+ begin
+ \b(id)\s*(?=<)
+ beginCaptures
+
+ 1
+
+ name
+ storage.type.js.objj
+
+
+ end
+ (?<=>)
+ name
+ meta.id-with-protocol.js.objj
+ patterns
+
+
+ include
+ #protocol_list
+
+
+
+
+ match
+ \b(CP_DURING|CP_HANDLER|CP_ENDHANDLER)\b
+ name
+ keyword.control.macro.js.objj
+
+
+ captures
+
+ 1
+
+ name
+ punctuation.definition.keyword.js.objj
+
+
+ match
+ (@)(try|catch|finally|throw)\b
+ name
+ keyword.control.exception.js.objj
+
+
+ captures
+
+ 1
+
+ name
+ punctuation.definition.keyword.js.objj
+
+
+ match
+ (@)(synchronized)\b
+ name
+ keyword.control.synchronize.js.objj
+
+
+ captures
+
+ 1
+
+ name
+ punctuation.definition.keyword.js.objj
+
+
+ match
+ (@)(defs|encode)\b
+ name
+ keyword.other.js.objj
+
+
+ captures
+
+ 2
+
+ name
+ meta.id-type.js.objj
+
+
+ match
+ \b(IBOutlet|IBAction|BOOL|SEL|id(?!\s?<)|unichar|IMP|Class)\b
+ name
+ storage.type.js.objj
+
+
+ captures
+
+ 1
+
+ name
+ punctuation.definition.storage.type.js.objj
+
+
+ match
+ (@)(class|selector|protocol)\b
+ name
+ storage.type.js.objj
+
+
+ captures
+
+ 1
+
+ name
+ punctuation.definition.storage.modifier.js.objj
+
+
+ match
+ (@)(synchronized|public|private|protected)\b
+ name
+ storage.modifier.js.objj
+
+
+ match
+ \b(YES|NO|Nil|nil)\b
+ name
+ constant.language.js.objj
+
+
+ match
+ \bCPApp\b
+ name
+ support.variable.cappuccino.foundation
+
+
+ match
+ \bCP(R(ound(DownToMultipleOfPageSize|UpToMultipleOfPageSize)|un(CriticalAlertPanel(RelativeToWindow)?|InformationalAlertPanel(RelativeToWindow)?|AlertPanel(RelativeToWindow)?)|e(set(MapTable|HashTable)|c(ycleZone|t(Clip(List)?|F(ill(UsingOperation|List(UsingOperation|With(Grays|Colors(UsingOperation)?))?)?|romString))|ordAllocationEvent)|turnAddress|leaseAlertPanel|a(dPixel|l(MemoryAvailable|locateCollectable))|gisterServicesProvider)|angeFromString)|Get(SizeAndAlignment|CriticalAlertPanel|InformationalAlertPanel|UncaughtExceptionHandler|FileType(s)?|WindowServerMemory|AlertPanel)|M(i(n(X|Y)|d(X|Y))|ouseInRect|a(p(Remove|Get|Member|Insert(IfAbsent|KnownAbsent)?)|ke(R(ect|ange)|Size|Point)|x(Range|X|Y)))|B(itsPer(SampleFromDepth|PixelFromDepth)|e(stDepth|ep|gin(CriticalAlertSheet|InformationalAlertSheet|AlertSheet)))|S(ho(uldRetainWithZone|w(sServicesMenuItem|AnimationEffect))|tringFrom(R(ect|ange)|MapTable|S(ize|elector)|HashTable|Class|Point)|izeFromString|e(t(ShowsServicesMenuItem|ZoneName|UncaughtExceptionHandler|FocusRingStyle)|lectorFromString|archPathForDirectoriesInDomains)|wap(Big(ShortToHost|IntToHost|DoubleToHost|FloatToHost|Long(ToHost|LongToHost))|Short|Host(ShortTo(Big|Little)|IntTo(Big|Little)|DoubleTo(Big|Little)|FloatTo(Big|Little)|Long(To(Big|Little)|LongTo(Big|Little)))|Int|Double|Float|L(ittle(ShortToHost|IntToHost|DoubleToHost|FloatToHost|Long(ToHost|LongToHost))|ong(Long)?)))|H(ighlightRect|o(stByteOrder|meDirectory(ForUser)?)|eight|ash(Remove|Get|Insert(IfAbsent|KnownAbsent)?)|FSType(CodeFromFileType|OfFile))|N(umberOfColorComponents|ext(MapEnumeratorPair|HashEnumeratorItem))|C(o(n(tainsRect|vert(GlyphsToPackedGlyphs|Swapped(DoubleToHost|FloatToHost)|Host(DoubleToSwapped|FloatToSwapped)))|unt(MapTable|HashTable|Frames|Windows(ForContext)?)|py(M(emoryPages|apTableWithZone)|Bits|HashTableWithZone|Object)|lorSpaceFromDepth|mpare(MapTables|HashTables))|lassFromString|reate(MapTable(WithZone)?|HashTable(WithZone)?|Zone|File(namePboardType|ContentsPboardType)))|TemporaryDirectory|I(s(ControllerMarker|EmptyRect|FreedObject)|n(setRect|crementExtraRefCount|te(r(sect(sRect|ionR(ect|ange))|faceStyleForKey)|gralRect)))|Zone(Realloc|Malloc|Name|Calloc|Fr(omPointer|ee))|O(penStepRootDirectory|ffsetRect)|D(i(sableScreenUpdates|videRect)|ottedFrameRect|e(c(imal(Round|Multiply|S(tring|ubtract)|Normalize|Co(py|mpa(ct|re))|IsNotANumber|Divide|Power|Add)|rementExtraRefCountWasZero)|faultMallocZone|allocate(MemoryPages|Object))|raw(Gr(oove|ayBezel)|B(itmap|utton)|ColorTiledRects|TiledRects|DarkBezel|W(hiteBezel|indowBackground)|LightBezel))|U(serName|n(ionR(ect|ange)|registerServicesProvider)|pdateDynamicServices)|Java(Bundle(Setup|Cleanup)|Setup(VirtualMachine)?|Needs(ToLoadClasses|VirtualMachine)|ClassesF(orBundle|romPath)|ObjectNamedInPath|ProvidesClasses)|P(oint(InRect|FromString)|erformService|lanarFromDepth|ageSize)|E(n(d(MapTableEnumeration|HashTableEnumeration)|umerate(MapTable|HashTable)|ableScreenUpdates)|qual(R(ects|anges)|Sizes|Points)|raseRect|xtraRefCount)|F(ileTypeForHFSTypeCode|ullUserName|r(ee(MapTable|HashTable)|ame(Rect(WithWidth(UsingOperation)?)?|Address)))|Wi(ndowList(ForContext)?|dth)|Lo(cationInRange|g(v|PageSize)?)|A(ccessibility(R(oleDescription(ForUIElement)?|aiseBadArgumentException)|Unignored(Children(ForOnlyChild)?|Descendant|Ancestor)|PostNotification|ActionDescription)|pplication(Main|Load)|vailableWindowDepths|ll(MapTable(Values|Keys)|HashTableObjects|ocate(MemoryPages|Collectable|Object))))\b
+ name
+ support.function.cappuccino
+
+
+ match
+ \bCP(R(u(nLoop|ler(Marker|View))|e(sponder|cursiveLock|lativeSpecifier)|an(domSpecifier|geSpecifier))|G(etCommand|lyph(Generator|Storage|Info)|raphicsContext)|XML(Node|D(ocument|TD(Node)?)|Parser|Element)|M(iddleSpecifier|ov(ie(View)?|eCommand)|utable(S(tring|et)|C(haracterSet|opying)|IndexSet|D(ictionary|ata)|URLRequest|ParagraphStyle|A(ttributedString|rray))|e(ssagePort(NameServer)?|nu(Item(Cell)?|View)?|t(hodSignature|adata(Item|Query(ResultGroup|AttributeValueTuple)?)))|a(ch(BootstrapServer|Port)|trix))|B(itmapImageRep|ox|u(ndle|tton(Cell)?)|ezierPath|rowser(Cell)?)|S(hadow|c(anner|r(ipt(SuiteRegistry|C(o(ercionHandler|mmand(Description)?)|lassDescription)|ObjectSpecifier|ExecutionContext|WhoseTest)|oll(er|View)|een))|t(epper(Cell)?|atus(Bar|Item)|r(ing|eam))|imple(HorizontalTypesetter|CString)|o(cketPort(NameServer)?|und|rtDescriptor)|p(e(cifierTest|ech(Recognizer|Synthesizer)|ll(Server|Checker))|litView)|e(cureTextField(Cell)?|t(Command)?|archField(Cell)?|rializer|gmentedC(ontrol|ell))|lider(Cell)?|avePanel)|H(ost|TTP(Cookie(Storage)?|URLResponse)|elpManager)|N(ib(Con(nector|trolConnector)|OutletConnector)?|otification(Center|Queue)?|u(ll|mber(Formatter)?)|etService(Browser)?|ameSpecifier)|C(ha(ngeSpelling|racterSet)|o(n(stantString|nection|trol(ler)?|ditionLock)|d(ing|er)|unt(Command|edSet)|pying|lor(Space|P(ick(ing(Custom|Default)|er)|anel)|Well|List)?|m(p(oundPredicate|arisonPredicate)|boBox(Cell)?))|u(stomImageRep|rsor)|IImageRep|ell|l(ipView|o(seCommand|neCommand)|assDescription)|a(ched(ImageRep|URLResponse)|lendar(Date)?)|reateCommand)|T(hread|ypesetter|ime(Zone|r)|o(olbar(Item(Validations)?)?|kenField(Cell)?)|ext(Block|Storage|Container|Tab(le(Block)?)?|Input|View|Field(Cell)?|List|Attachment(Cell)?)?|a(sk|b(le(Header(Cell|View)|Column|View)|View(Item)?))|reeController)|I(n(dex(S(pecifier|et)|Path)|put(Manager|S(tream|erv(iceProvider|er(MouseTracker)?)))|vocation)|gnoreMisspelledWords|mage(Rep|Cell|View)?)|O(ut(putStream|lineView)|pen(GL(Context|Pixel(Buffer|Format)|View)|Panel)|bj(CTypeSerializationCallBack|ect(Controller)?))|D(i(st(antObject(Request)?|ributed(NotificationCenter|Lock))|ctionary|rectoryEnumerator)|ocument(Controller)?|e(serializer|cimalNumber(Behaviors|Handler)?|leteCommand)|at(e(Components|Picker(Cell)?|Formatter)?|a)|ra(wer|ggingInfo))|U(ser(InterfaceValidations|Defaults(Controller)?)|RL(Re(sponse|quest)|Handle(Client)?|C(onnection|ache|redential(Storage)?)|Download(Delegate)?|Prot(ocol(Client)?|ectionSpace)|AuthenticationChallenge(Sender)?)?|n(iqueIDSpecifier|doManager|archiver))|P(ipe|o(sitionalSpecifier|pUpButton(Cell)?|rt(Message|NameServer|Coder)?)|ICTImageRep|ersistentDocument|DFImageRep|a(steboard|nel|ragraphStyle|geLayout)|r(int(Info|er|Operation|Panel)|o(cessInfo|tocolChecker|perty(Specifier|ListSerialization)|gressIndicator|xy)|edicate))|E(numerator|vent|PSImageRep|rror|x(ception|istsCommand|pression))|V(iew(Animation)?|al(idated(ToobarItem|UserInterfaceItem)|ue(Transformer)?))|Keyed(Unarchiver|Archiver)|Qui(ckDrawView|tCommand)|F(ile(Manager|Handle|Wrapper)|o(nt(Manager|Descriptor|Panel)?|rm(Cell|atter)))|W(hoseSpecifier|indow(Controller)?|orkspace)|L(o(c(k(ing)?|ale)|gicalTest)|evelIndicator(Cell)?|ayoutManager)|A(ssertionHandler|nimation|ctionCell|ttributedString|utoreleasePool|TSTypesetter|ppl(ication|e(Script|Event(Manager|Descriptor)))|ffineTransform|lert|r(chiver|ray(Controller)?)))\b
+ name
+ support.class.cappuccino
+
+
+ match
+ \bCP(R(ect(Edge)?|ange)|G(lyph(Relation|LayoutMode)?|radientType)|M(odalSession|a(trixMode|p(Table|Enumerator)))|B(itmapImageFileType|orderType|uttonType|ezelStyle|ackingStoreType|rowserColumnResizingType)|S(cr(oll(er(Part|Arrow)|ArrowPosition)|eenAuxiliaryOpaque)|tringEncoding|ize|ocketNativeHandle|election(Granularity|Direction|Affinity)|wapped(Double|Float)|aveOperationType)|Ha(sh(Table|Enumerator)|ndler(2)?)|C(o(ntrol(Size|Tint)|mp(ositingOperation|arisonResult))|ell(State|Type|ImagePosition|Attribute))|T(hreadPrivate|ypesetterGlyphInfo|i(ckMarkPosition|tlePosition|meInterval)|o(ol(TipTag|bar(SizeMode|DisplayMode))|kenStyle)|IFFCompression|ext(TabType|Alignment)|ab(State|leViewDropOperation|ViewType)|rackingRectTag)|ImageInterpolation|Zone|OpenGL(ContextAuxiliary|PixelFormatAuxiliary)|D(ocumentChangeType|atePickerElementFlags|ra(werState|gOperation))|UsableScrollerParts|P(oint|r(intingPageOrder|ogressIndicator(Style|Th(ickness|readInfo))))|EventType|KeyValueObservingOptions|Fo(nt(SymbolicTraits|TraitMask|Action)|cusRingType)|W(indow(OrderingMode|Depth)|orkspace(IconCreationOptions|LaunchOptions)|ritingDirection)|L(ineBreakMode|ayout(Status|Direction))|A(nimation(Progress|Effect)|ppl(ication(TerminateReply|DelegateReply|PrintReply)|eEventManagerSuspensionID)|ffineTransformStruct|lertStyle))\b
+ name
+ support.type.cappuccino
+
+
+ match
+ \bCP(NotFound|Ordered(Ascending|Descending|Same))\b
+ name
+ support.constant.cappuccino
+
+
+ match
+ \bCP(Menu(Did(RemoveItem|SendAction|ChangeItem|EndTracking|AddItem)|WillSendAction)|S(ystemColorsDidChange|plitView(DidResizeSubviews|WillResizeSubviews))|C(o(nt(extHelpModeDid(Deactivate|Activate)|rolT(intDidChange|extDid(BeginEditing|Change|EndEditing)))|lor(PanelColorDidChange|ListDidChange)|mboBox(Selection(IsChanging|DidChange)|Will(Dismiss|PopUp)))|lassDescriptionNeededForClass)|T(oolbar(DidRemoveItem|WillAddItem)|ext(Storage(DidProcessEditing|WillProcessEditing)|Did(BeginEditing|Change|EndEditing)|View(DidChange(Selection|TypingAttributes)|WillChangeNotifyingTextView))|ableView(Selection(IsChanging|DidChange)|ColumnDid(Resize|Move)))|ImageRepRegistryDidChange|OutlineView(Selection(IsChanging|DidChange)|ColumnDid(Resize|Move)|Item(Did(Collapse|Expand)|Will(Collapse|Expand)))|Drawer(Did(Close|Open)|Will(Close|Open))|PopUpButton(CellWillPopUp|WillPopUp)|View(GlobalFrameDidChange|BoundsDidChange|F(ocusDidChange|rameDidChange))|FontSetChanged|W(indow(Did(Resi(ze|gn(Main|Key))|M(iniaturize|ove)|Become(Main|Key)|ChangeScreen(|Profile)|Deminiaturize|Update|E(ndSheet|xpose))|Will(M(iniaturize|ove)|BeginSheet|Close))|orkspace(SessionDid(ResignActive|BecomeActive)|Did(Mount|TerminateApplication|Unmount|PerformFileOperation|Wake|LaunchApplication)|Will(Sleep|Unmount|PowerOff|LaunchApplication)))|A(ntialiasThresholdChanged|ppl(ication(Did(ResignActive|BecomeActive|Hide|ChangeScreenParameters|U(nhide|pdate)|FinishLaunching)|Will(ResignActive|BecomeActive|Hide|Terminate|U(nhide|pdate)|FinishLaunching))|eEventManagerWillProcessFirstEvent)))Notification\b
+ name
+ support.constant.notification.cappuccino
+
+
+ match
+ \bCP(R(GB(ModeColorPanel|ColorSpaceModel)|ight(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|T(ext(Movement|Alignment)|ab(sBezelBorder|StopType))|ArrowFunctionKey)|ound(RectBezelStyle|Bankers|ed(BezelStyle|TokenStyle|DisclosureBezelStyle)|Down|Up|Plain|Line(CapStyle|JoinStyle))|un(StoppedResponse|ContinuesResponse|AbortedResponse)|e(s(izableWindowMask|et(CursorRectsRunLoopOrdering|FunctionKey))|ce(ssedBezelStyle|iver(sCantHandleCommandScriptError|EvaluationScriptError))|turnTextMovement|doFunctionKey|quiredArgumentsMissingScriptError|l(evancyLevelIndicatorStyle|ative(Before|After))|gular(SquareBezelStyle|ControlSize)|moveTraitFontAction)|a(n(domSubelement|geDateMode)|tingLevelIndicatorStyle|dio(ModeMatrix|Button)))|G(IFFileType|lyph(Below|Inscribe(B(elow|ase)|Over(strike|Below)|Above)|Layout(WithPrevious|A(tAPoint|gainstAPoint))|A(ttribute(BidiLevel|Soft|Inscribe|Elastic)|bove))|r(ooveBorder|eaterThan(Comparison|OrEqualTo(Comparison|PredicateOperatorType)|PredicateOperatorType)|a(y(ModeColorPanel|ColorSpaceModel)|dient(None|Con(cave(Strong|Weak)|vex(Strong|Weak)))|phiteControlTint)))|XML(N(o(tationDeclarationKind|de(CompactEmptyElement|IsCDATA|OptionsNone|Use(SingleQuotes|DoubleQuotes)|Pre(serve(NamespaceOrder|C(haracterReferences|DATA)|DTD|Prefixes|E(ntities|mptyElements)|Quotes|Whitespace|A(ttributeOrder|ll))|ttyPrint)|ExpandEmptyElement))|amespaceKind)|CommentKind|TextKind|InvalidKind|D(ocument(X(MLKind|HTMLKind|Include)|HTMLKind|T(idy(XML|HTML)|extKind)|IncludeContentTypeDeclaration|Validate|Kind)|TDKind)|P(arser(GTRequiredError|XMLDeclNot(StartedError|FinishedError)|Mi(splaced(XMLDeclarationError|CDATAEndStringError)|xedContentDeclNot(StartedError|FinishedError))|S(t(andaloneValueError|ringNot(StartedError|ClosedError))|paceRequiredError|eparatorRequiredError)|N(MTOKENRequiredError|o(t(ationNot(StartedError|FinishedError)|WellBalancedError)|DTDError)|amespaceDeclarationError|AMERequiredError)|C(haracterRef(In(DTDError|PrologError|EpilogError)|AtEOFError)|o(nditionalSectionNot(StartedError|FinishedError)|mment(NotFinishedError|ContainsDoubleHyphenError))|DATANotFinishedError)|TagNameMismatchError|In(ternalError|valid(HexCharacterRefError|C(haracter(RefError|InEntityError|Error)|onditionalSectionError)|DecimalCharacterRefError|URIError|Encoding(NameError|Error)))|OutOfMemoryError|D(ocumentStartError|elegateAbortedParseError|OCTYPEDeclNotFinishedError)|U(RI(RequiredError|FragmentError)|n(declaredEntityError|parsedEntityError|knownEncodingError|finishedTagError))|P(CDATARequiredError|ublicIdentifierRequiredError|arsedEntityRef(MissingSemiError|NoNameError|In(Internal(SubsetError|Error)|PrologError|EpilogError)|AtEOFError)|r(ocessingInstructionNot(StartedError|FinishedError)|ematureDocumentEndError))|E(n(codingNotSupportedError|tity(Ref(In(DTDError|PrologError|EpilogError)|erence(MissingSemiError|WithoutNameError)|LoopError|AtEOFError)|BoundaryError|Not(StartedError|FinishedError)|Is(ParameterError|ExternalError)|ValueRequiredError))|qualExpectedError|lementContentDeclNot(StartedError|FinishedError)|xt(ernalS(tandaloneEntityError|ubsetNotFinishedError)|raContentError)|mptyDocumentError)|L(iteralNot(StartedError|FinishedError)|T(RequiredError|SlashRequiredError)|essThanSymbolInAttributeError)|Attribute(RedefinedError|HasNoValueError|Not(StartedError|FinishedError)|ListNot(StartedError|FinishedError)))|rocessingInstructionKind)|E(ntity(GeneralKind|DeclarationKind|UnparsedKind|P(ar(sedKind|ameterKind)|redefined))|lement(Declaration(MixedKind|UndefinedKind|E(lementKind|mptyKind)|Kind|AnyKind)|Kind))|Attribute(N(MToken(sKind|Kind)|otationKind)|CDATAKind|ID(Ref(sKind|Kind)|Kind)|DeclarationKind|En(tit(yKind|iesKind)|umerationKind)|Kind))|M(i(n(XEdge|iaturizableWindowMask|YEdge|uteCalendarUnit)|terLineJoinStyle|ddleSubelement|xedState)|o(nthCalendarUnit|deSwitchFunctionKey|use(Moved(Mask)?|E(ntered(Mask)?|ventSubtype|xited(Mask)?))|veToBezierPathElement|mentary(ChangeButton|Push(Button|InButton)|Light(Button)?))|enuFunctionKey|a(c(intoshInterfaceStyle|OSRomanStringEncoding)|tchesPredicateOperatorType|ppedRead|x(XEdge|YEdge))|ACHOperatingSystem)|B(MPFileType|o(ttomTabsBezelBorder|ldFontMask|rderlessWindowMask|x(Se(condary|parator)|OldStyle|Primary))|uttLineCapStyle|e(zelBorder|velLineJoinStyle|low(Bottom|Top)|gin(sWith(Comparison|PredicateOperatorType)|FunctionKey))|lueControlTint|ack(spaceCharacter|tabTextMovement|ingStore(Retained|Buffered|Nonretained)|TabCharacter|wardsSearch|groundTab)|r(owser(NoColumnResizing|UserColumnResizing|AutoColumnResizing)|eakFunctionKey))|S(h(ift(JISStringEncoding|KeyMask)|ow(ControlGlyphs|InvisibleGlyphs)|adowlessSquareBezelStyle)|y(s(ReqFunctionKey|tem(D(omainMask|efined(Mask)?)|FunctionKey))|mbolStringEncoding)|c(a(nnedOption|le(None|ToFit|Proportionally))|r(oll(er(NoPart|Increment(Page|Line|Arrow)|Decrement(Page|Line|Arrow)|Knob(Slot)?|Arrows(M(inEnd|axEnd)|None|DefaultSetting))|Wheel(Mask)?|LockFunctionKey)|eenChangedEventType))|t(opFunctionKey|r(ingDrawing(OneShot|DisableScreenFontSubstitution|Uses(DeviceMetrics|FontLeading|LineFragmentOrigin))|eam(Status(Reading|NotOpen|Closed|Open(ing)?|Error|Writing|AtEnd)|Event(Has(BytesAvailable|SpaceAvailable)|None|OpenCompleted|E(ndEncountered|rrorOccurred)))))|i(ngle(DateMode|UnderlineStyle)|ze(DownFontAction|UpFontAction))|olarisOperatingSystem|unOSOperatingSystem|pecialPageOrder|e(condCalendarUnit|lect(By(Character|Paragraph|Word)|i(ng(Next|Previous)|onAffinity(Downstream|Upstream))|edTab|FunctionKey)|gmentSwitchTracking(Momentary|Select(One|Any)))|quareLineCapStyle|witchButton|ave(ToOperation|Op(tions(Yes|No|Ask)|eration)|AsOperation)|mall(SquareBezelStyle|C(ontrolSize|apsFontMask)|IconButtonBezelStyle))|H(ighlightModeMatrix|SBModeColorPanel|o(ur(Minute(SecondDatePickerElementFlag|DatePickerElementFlag)|CalendarUnit)|rizontalRuler|meFunctionKey)|TTPCookieAcceptPolicy(Never|OnlyFromMainDocumentDomain|Always)|e(lp(ButtonBezelStyle|KeyMask|FunctionKey)|avierFontAction)|PUXOperatingSystem)|Year(MonthDa(yDatePickerElementFlag|tePickerElementFlag)|CalendarUnit)|N(o(n(StandardCharacterSetFontMask|ZeroWindingRule|activatingPanelMask|LossyASCIIStringEncoding)|Border|t(ification(SuspensionBehavior(Hold|Coalesce|D(eliverImmediately|rop))|NoCoalescing|CoalescingOn(Sender|Name)|DeliverImmediately|PostToAllSessions)|PredicateType|EqualToPredicateOperatorType)|S(cr(iptError|ollerParts)|ubelement|pecifierError)|CellMask|T(itle|opLevelContainersSpecifierError|abs(BezelBorder|NoBorder|LineBorder))|I(nterfaceStyle|mage)|UnderlineStyle|FontChangeAction)|u(ll(Glyph|CellType)|m(eric(Search|PadKeyMask)|berFormatter(Round(Half(Down|Up|Even)|Ceiling|Down|Up|Floor)|Behavior(10|Default)|S(cientificStyle|pellOutStyle)|NoStyle|CurrencyStyle|DecimalStyle|P(ercentStyle|ad(Before(Suffix|Prefix)|After(Suffix|Prefix))))))|e(t(Services(BadArgumentError|NotFoundError|C(ollisionError|ancelledError)|TimeoutError|InvalidError|UnknownError|ActivityInProgress)|workDomainMask)|wlineCharacter|xt(StepInterfaceStyle|FunctionKey))|EXTSTEPStringEncoding|a(t(iveShortGlyphPacking|uralTextAlignment)|rrowFontMask))|C(hange(ReadOtherContents|GrayCell(Mask)?|BackgroundCell(Mask)?|Cleared|Done|Undone|Autosaved)|MYK(ModeColorPanel|ColorSpaceModel)|ircular(BezelStyle|Slider)|o(n(stantValueExpressionType|t(inuousCapacityLevelIndicatorStyle|entsCellMask|ain(sComparison|erSpecifierError)|rol(Glyph|KeyMask))|densedFontMask)|lor(Panel(RGBModeMask|GrayModeMask|HSBModeMask|C(MYKModeMask|olorListModeMask|ustomPaletteModeMask|rayonModeMask)|WheelModeMask|AllModesMask)|ListModeColorPanel)|reServiceDirectory|m(p(osite(XOR|Source(In|O(ut|ver)|Atop)|Highlight|C(opy|lear)|Destination(In|O(ut|ver)|Atop)|Plus(Darker|Lighter))|ressedFontMask)|mandKeyMask))|u(stom(SelectorPredicateOperatorType|PaletteModeColorPanel)|r(sor(Update(Mask)?|PointingDevice)|veToBezierPathElement))|e(nterT(extAlignment|abStopType)|ll(State|H(ighlighted|as(Image(Horizontal|OnLeftOrBottom)|OverlappingImage))|ChangesContents|Is(Bordered|InsetButton)|Disabled|Editable|LightsBy(Gray|Background|Contents)|AllowsMixedState))|l(ipPagination|o(s(ePathBezierPathElement|ableWindowMask)|ckAndCalendarDatePickerStyle)|ear(ControlTint|DisplayFunctionKey|LineFunctionKey))|a(seInsensitive(Search|PredicateOption)|n(notCreateScriptCommandError|cel(Button|TextMovement))|chesDirectory|lculation(NoError|Overflow|DivideByZero|Underflow|LossOfPrecision)|rriageReturnCharacter)|r(itical(Request|AlertStyle)|ayonModeColorPanel))|T(hick(SquareBezelStyle|erSquareBezelStyle)|ypesetter(Behavior|HorizontalTabAction|ContainerBreakAction|ZeroAdvancementAction|OriginalBehavior|ParagraphBreakAction|WhitespaceAction|L(ineBreakAction|atestBehavior))|i(ckMark(Right|Below|Left|Above)|tledWindowMask|meZoneDatePickerElementFlag)|o(olbarItemVisibilityPriority(Standard|High|User|Low)|pTabsBezelBorder|ggleButton)|IFF(Compression(N(one|EXT)|CCITTFAX(3|4)|OldJPEG|JPEG|PackBits|LZW)|FileType)|e(rminate(Now|Cancel|Later)|xt(Read(InapplicableDocumentTypeError|WriteErrorM(inimum|aximum))|Block(M(i(nimum(Height|Width)|ddleAlignment)|a(rgin|ximum(Height|Width)))|B(o(ttomAlignment|rder)|aselineAlignment)|Height|TopAlignment|P(ercentageValueType|adding)|Width|AbsoluteValueType)|StorageEdited(Characters|Attributes)|CellType|ured(RoundedBezelStyle|BackgroundWindowMask|SquareBezelStyle)|Table(FixedLayoutAlgorithm|AutomaticLayoutAlgorithm)|Field(RoundedBezel|SquareBezel|AndStepperDatePickerStyle)|WriteInapplicableDocumentTypeError|ListPrependEnclosingMarker))|woByteGlyphPacking|ab(Character|TextMovement|le(tP(oint(Mask|EventSubtype)?|roximity(Mask|EventSubtype)?)|Column(NoResizing|UserResizingMask|AutoresizingMask)|View(ReverseSequentialColumnAutoresizingStyle|GridNone|S(olid(HorizontalGridLineMask|VerticalGridLineMask)|equentialColumnAutoresizingStyle)|NoColumnAutoresizing|UniformColumnAutoresizingStyle|FirstColumnOnlyAutoresizingStyle|LastColumnOnlyAutoresizingStyle)))|rackModeMatrix)|I(n(sert(CharFunctionKey|FunctionKey|LineFunctionKey)|t(Type|ernalS(criptError|pecifierError))|dexSubelement|validIndexSpecifierError|formational(Request|AlertStyle)|PredicateOperatorType)|talicFontMask|SO(2022JPStringEncoding|Latin(1StringEncoding|2StringEncoding))|dentityMappingCharacterCollection|llegalTextMovement|mage(R(ight|ep(MatchesDevice|LoadStatus(ReadingHeader|Completed|InvalidData|Un(expectedEOF|knownType)|WillNeedAllData)))|Below|C(ellType|ache(BySize|Never|Default|Always))|Interpolation(High|None|Default|Low)|O(nly|verlaps)|Frame(Gr(oove|ayBezel)|Button|None|Photo)|L(oadStatus(ReadError|C(ompleted|ancelled)|InvalidData|UnexpectedEOF)|eft)|A(lign(Right|Bottom(Right|Left)?|Center|Top(Right|Left)?|Left)|bove)))|O(n(State|eByteGlyphPacking|OffButton|lyScrollerArrows)|ther(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|TextMovement)|SF1OperatingSystem|pe(n(GL(GO(Re(setLibrary|tainRenderers)|ClearFormatCache|FormatCacheSize)|PFA(R(obust|endererID)|M(inimumPolicy|ulti(sample|Screen)|PSafe|aximumPolicy)|BackingStore|S(creenMask|te(ncilSize|reo)|ingleRenderer|upersample|ample(s|Buffers|Alpha))|NoRecovery|C(o(lor(Size|Float)|mpliant)|losestPolicy)|OffScreen|D(oubleBuffer|epthSize)|PixelBuffer|VirtualScreenCount|FullScreen|Window|A(cc(umSize|elerated)|ux(Buffers|DepthStencil)|l(phaSize|lRenderers))))|StepUnicodeReservedBase)|rationNotSupportedForKeyS(criptError|pecifierError))|ffState|KButton|rPredicateType|bjC(B(itfield|oolType)|S(hortType|tr(ingType|uctType)|electorType)|NoType|CharType|ObjectType|DoubleType|UnionType|PointerType|VoidType|FloatType|Long(Type|longType)|ArrayType))|D(i(s(c(losureBezelStyle|reteCapacityLevelIndicatorStyle)|playWindowRunLoopOrdering)|acriticInsensitivePredicateOption|rect(Selection|PredicateModifier))|o(c(ModalWindowMask|ument(Directory|ationDirectory))|ubleType|wn(TextMovement|ArrowFunctionKey))|e(s(cendingPageOrder|ktopDirectory)|cimalTabStopType|v(ice(NColorSpaceModel|IndependentModifierFlagsMask)|eloper(Directory|ApplicationDirectory))|fault(ControlTint|TokenStyle)|lete(Char(acter|FunctionKey)|FunctionKey|LineFunctionKey)|moApplicationDirectory)|a(yCalendarUnit|teFormatter(MediumStyle|Behavior(10|Default)|ShortStyle|NoStyle|FullStyle|LongStyle))|ra(wer(Clos(ingState|edState)|Open(ingState|State))|gOperation(Generic|Move|None|Copy|Delete|Private|Every|Link|All)))|U(ser(CancelledError|D(irectory|omainMask)|FunctionKey)|RL(Handle(NotLoaded|Load(Succeeded|InProgress|Failed))|CredentialPersistence(None|Permanent|ForSession))|n(scaledWindowMask|cachedRead|i(codeStringEncoding|talicFontMask|fiedTitleAndToolbarWindowMask)|d(o(CloseGroupingRunLoopOrdering|FunctionKey)|e(finedDateComponent|rline(Style(Single|None|Thick|Double)|Pattern(Solid|D(ot|ash(Dot(Dot)?)?)))))|known(ColorSpaceModel|P(ointingDevice|ageOrder)|KeyS(criptError|pecifierError))|boldFontMask)|tilityWindowMask|TF8StringEncoding|p(dateWindowsRunLoopOrdering|TextMovement|ArrowFunctionKey))|J(ustifiedTextAlignment|PEG(2000FileType|FileType)|apaneseEUC(GlyphPacking|StringEncoding))|P(o(s(t(Now|erFontMask|WhenIdle|ASAP)|iti(on(Replace|Be(fore|ginning)|End|After)|ve(IntType|DoubleType|FloatType)))|pUp(NoArrow|ArrowAt(Bottom|Center))|werOffEventType|rtraitOrientation)|NGFileType|ush(InCell(Mask)?|OnPushOffButton)|e(n(TipMask|UpperSideMask|PointingDevice|LowerSideMask)|riodic(Mask)?)|P(S(caleField|tatus(Title|Field)|aveButton)|N(ote(Title|Field)|ame(Title|Field))|CopiesField|TitleField|ImageButton|OptionsButton|P(a(perFeedButton|ge(Range(To|From)|ChoiceMatrix))|reviewButton)|LayoutButton)|lainTextTokenStyle|a(useFunctionKey|ragraphSeparatorCharacter|ge(DownFunctionKey|UpFunctionKey))|r(int(ing(ReplyLater|Success|Cancelled|Failure)|ScreenFunctionKey|erTable(NotFound|OK|Error)|FunctionKey)|o(p(ertyList(XMLFormat|MutableContainers(AndLeaves)?|BinaryFormat|Immutable|OpenStepFormat)|rietaryStringEncoding)|gressIndicator(BarStyle|SpinningStyle|Preferred(SmallThickness|Thickness|LargeThickness|AquaThickness)))|e(ssedTab|vFunctionKey))|L(HeightForm|CancelButton|TitleField|ImageButton|O(KButton|rientationMatrix)|UnitsButton|PaperNameButton|WidthForm))|E(n(terCharacter|d(sWith(Comparison|PredicateOperatorType)|FunctionKey))|v(e(nOddWindingRule|rySubelement)|aluatedObjectExpressionType)|qualTo(Comparison|PredicateOperatorType)|ra(serPointingDevice|CalendarUnit|DatePickerElementFlag)|x(clude(10|QuickDrawElementsIconCreationOption)|pandedFontMask|ecuteFunctionKey))|V(i(ew(M(in(XMargin|YMargin)|ax(XMargin|YMargin))|HeightSizable|NotSizable|WidthSizable)|aPanelFontAction)|erticalRuler|a(lidationErrorM(inimum|aximum)|riableExpressionType))|Key(SpecifierEvaluationScriptError|Down(Mask)?|Up(Mask)?|PathExpressionType|Value(MinusSetMutation|SetSetMutation|Change(Re(placement|moval)|Setting|Insertion)|IntersectSetMutation|ObservingOption(New|Old)|UnionSetMutation|ValidationError))|QTMovie(NormalPlayback|Looping(BackAndForthPlayback|Playback))|F(1(1FunctionKey|7FunctionKey|2FunctionKey|8FunctionKey|3FunctionKey|9FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey|6FunctionKey)|7FunctionKey|i(nd(PanelAction(Replace(A(ndFind|ll(InSelection)?))?|S(howFindPanel|e(tFindString|lectAll(InSelection)?))|Next|Previous)|FunctionKey)|tPagination|le(Read(No(SuchFileError|PermissionError)|CorruptFileError|In(validFileNameError|applicableStringEncodingError)|Un(supportedSchemeError|knownError))|HandlingPanel(CancelButton|OKButton)|NoSuchFileError|ErrorM(inimum|aximum)|Write(NoPermissionError|In(validFileNameError|applicableStringEncodingError)|OutOfSpaceError|Un(supportedSchemeError|knownError))|LockingError)|xedPitchFontMask)|2(1FunctionKey|7FunctionKey|2FunctionKey|8FunctionKey|3FunctionKey|9FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey|6FunctionKey)|o(nt(Mo(noSpaceTrait|dernSerifsClass)|BoldTrait|S(ymbolicClass|criptsClass|labSerifsClass|ansSerifClass)|C(o(ndensedTrait|llectionApplicationOnlyMask)|larendonSerifsClass)|TransitionalSerifsClass|I(ntegerAdvancementsRenderingMode|talicTrait)|O(ldStyleSerifsClass|rnamentalsClass)|DefaultRenderingMode|U(nknownClass|IOptimizedTrait)|Panel(S(hadowEffectModeMask|t(andardModesMask|rikethroughEffectModeMask)|izeModeMask)|CollectionModeMask|TextColorEffectModeMask|DocumentColorEffectModeMask|UnderlineEffectModeMask|FaceModeMask|All(ModesMask|EffectsModeMask))|ExpandedTrait|VerticalTrait|F(amilyClassMask|reeformSerifsClass)|Antialiased(RenderingMode|IntegerAdvancementsRenderingMode))|cusRing(Below|Type(None|Default|Exterior)|Only|Above)|urByteGlyphPacking|rm(attingError(M(inimum|aximum))?|FeedCharacter))|8FunctionKey|unction(ExpressionType|KeyMask)|3(1FunctionKey|2FunctionKey|3FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey)|9FunctionKey|4FunctionKey|P(RevertButton|S(ize(Title|Field)|etButton)|CurrentField|Preview(Button|Field))|l(oat(ingPointSamplesBitmapFormat|Type)|agsChanged(Mask)?)|axButton|5FunctionKey|6FunctionKey)|W(heelModeColorPanel|indow(s(NTOperatingSystem|CP125(1StringEncoding|2StringEncoding|3StringEncoding|4StringEncoding|0StringEncoding)|95(InterfaceStyle|OperatingSystem))|M(iniaturizeButton|ovedEventType)|Below|CloseButton|ToolbarButton|ZoomButton|Out|DocumentIconButton|ExposedEventType|Above)|orkspaceLaunch(NewInstance|InhibitingBackgroundOnly|Default|PreferringClassic|WithoutA(ctivation|ddingToRecents)|A(sync|nd(Hide(Others)?|Print)|llowingClassicStartup))|eek(day(CalendarUnit|OrdinalCalendarUnit)|CalendarUnit)|a(ntsBidiLevels|rningAlertStyle)|r(itingDirection(RightToLeft|Natural|LeftToRight)|apCalendarComponents))|L(i(stModeMatrix|ne(Moves(Right|Down|Up|Left)|B(order|reakBy(C(harWrapping|lipping)|Truncating(Middle|Head|Tail)|WordWrapping))|S(eparatorCharacter|weep(Right|Down|Up|Left))|ToBezierPathElement|DoesntMove|arSlider)|teralSearch|kePredicateOperatorType|ghterFontAction|braryDirectory)|ocalDomainMask|e(ssThan(Comparison|OrEqualTo(Comparison|PredicateOperatorType)|PredicateOperatorType)|ft(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|T(ext(Movement|Alignment)|ab(sBezelBorder|StopType))|ArrowFunctionKey))|a(yout(RightToLeft|NotDone|CantFit|OutOfGlyphs|Done|LeftToRight)|ndscapeOrientation)|ABColorSpaceModel)|A(sc(iiWithDoubleByteEUCGlyphPacking|endingPageOrder)|n(y(Type|PredicateModifier|EventMask)|choredSearch|imation(Blocking|Nonblocking(Threaded)?|E(ffect(DisappearingItemDefault|Poof)|ase(In(Out)?|Out))|Linear)|dPredicateType)|t(Bottom|tachmentCharacter|omicWrite|Top)|SCIIStringEncoding|d(obe(GB1CharacterCollection|CCP1CharacterCollection|Japan(1CharacterCollection|2CharacterCollection)|Korea1CharacterCollection)|dTraitFontAction|minApplicationDirectory)|uto(saveOperation|Pagination)|pp(lication(SupportDirectory|D(irectory|e(fined(Mask)?|legateReply(Success|Cancel|Failure)|activatedEventType))|ActivatedEventType)|KitDefined(Mask)?)|l(ternateKeyMask|pha(ShiftKeyMask|NonpremultipliedBitmapFormat|FirstBitmapFormat)|ert(SecondButtonReturn|ThirdButtonReturn|OtherReturn|DefaultReturn|ErrorReturn|FirstButtonReturn|AlternateReturn)|l(ScrollerParts|DomainsMask|PredicateModifier|LibrariesDirectory|ApplicationsDirectory))|rgument(sWrongScriptError|EvaluationScriptError)|bove(Bottom|Top)|WTEventType))\b
+ name
+ support.constant.cappuccino
+
+
+ include
+ #bracketed_content
+
+
+ include
+ source.js
+
+
+ repository
+
+ bracketed_content
+
+ begin
+ \[
+ captures
+
+ 0
+
+ name
+ punctuation.section.scope.js.objj
+
+
+ end
+ \]
+ name
+ meta.bracketed.js.objj
+ patterns
+
+
+ begin
+ (?=\w)(?<=[\w\])"] )(\w+(?:(:)|(?=\])))
+ beginCaptures
+
+ 1
+
+ name
+ support.function.any-method.js.objj
+
+ 2
+
+ name
+ punctuation.separator.arguments.js.objj
+
+
+ end
+ (?=\])
+ name
+ meta.function-call.js.objj
+ patterns
+
+
+ captures
+
+ 1
+
+ name
+ punctuation.separator.arguments.js.objj
+
+
+ match
+ \b\w+(:)
+ name
+ support.function.any-method.name-of-parameter.js.objj
+
+
+ include
+ #special_variables
+
+
+ include
+ $base
+
+
+
+
+ include
+ #special_variables
+
+
+ include
+ $base
+
+
+
+ comment
+
+ patterns
+
+
+ begin
+ /\*
+ captures
+
+ 0
+
+ name
+ punctuation.definition.comment.js.objj
+
+
+ end
+ \*/
+ name
+ comment.block.js.objj
+
+
+ begin
+ //
+ beginCaptures
+
+ 0
+
+ name
+ punctuation.definition.comment.js.objj
+
+
+ end
+ $\n?
+ name
+ comment.line.double-slash.js.objj
+ patterns
+
+
+ match
+ (?>\\\s*\n)
+ name
+ punctuation.separator.continuation.js.objj
+
+
+
+
+
+ method
+
+ begin
+ ^(-|\+)\s*
+ end
+ (?=\{)|;
+ name
+ meta.function.js.objj
+ patterns
+
+
+ begin
+ (\()
+ captures
+
+ 1
+
+ name
+ punctuation.definition.type.js.objj
+
+ 2
+
+ name
+ entity.name.function.js.objj
+
+
+ end
+ (\))\s*(\w+\b)
+ name
+ meta.return-type.js.objj
+ patterns
+
+
+ include
+ #protocol_list
+
+
+ include
+ #protocol_type_qualifier
+
+
+ include
+ $base
+
+
+
+
+ match
+ \b\w+(?=:)
+ name
+ entity.name.function.name-of-parameter.js.objj
+
+
+ begin
+ ((:))\s*(\()
+ beginCaptures
+
+ 1
+
+ name
+ entity.name.function.name-of-parameter.js.objj
+
+ 2
+
+ name
+ punctuation.separator.arguments.js.objj
+
+ 3
+
+ name
+ punctuation.definition.type.js.objj
+
+
+ end
+ (\))\s*(\w+\b)?
+ endCaptures
+
+ 1
+
+ name
+ punctuation.definition.type.js.objj
+
+ 2
+
+ name
+ variable.parameter.function.js.objj
+
+
+ name
+ meta.argument-type.js.objj
+ patterns
+
+
+ include
+ #protocol_list
+
+
+ include
+ #protocol_type_qualifier
+
+
+ include
+ $base
+
+
+
+
+ include
+ #comment
+
+
+
+ protocol_list
+
+ begin
+ (<)
+ beginCaptures
+
+ 1
+
+ name
+ punctuation.section.scope.begin.js.objj
+
+
+ end
+ (>)
+ endCaptures
+
+ 1
+
+ name
+ punctuation.section.scope.end.js.objj
+
+
+ name
+ meta.protocol-list.js.objj
+ patterns
+
+
+ match
+ \bCP(GlyphStorage|M(utableCopying|enuItem)|C(hangeSpelling|o(ding|pying|lorPicking(Custom|Default)))|T(oolbarItemValidations|ext(Input|AttachmentCell))|I(nputServ(iceProvider|erMouseTracker)|gnoreMisspelledWords)|Obj(CTypeSerializationCallBack|ect)|D(ecimalNumberBehaviors|raggingInfo)|U(serInterfaceValidations|RL(HandleClient|DownloadDelegate|ProtocolClient|AuthenticationChallengeSender))|Validated(ToobarItem|UserInterfaceItem)|Locking)\b
+ name
+ support.other.protocol.js.objj
+
+
+
+ protocol_type_qualifier
+
+ match
+ \b(in|out|inout|oneway|bycopy|byref)\b
+ name
+ storage.modifier.protocol.js.objj
+
+ special_variables
+
+ patterns
+
+
+ match
+ \b_cmd\b
+ name
+ variable.other.selector.js.objj
+
+
+ match
+ \b(self|super)\b
+ name
+ variable.language.js.objj
+
+
+
+
+ scopeName
+ source.js.objj
+ uuid
+ 58D4B98A-2110-423E-9C80-CC9E202816E7
+
+
diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/info.plist b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/info.plist
new file mode 100644
index 000000000..f5f1b9036
--- /dev/null
+++ b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/info.plist
@@ -0,0 +1,23 @@
+
+
+
+
+ contactEmailRot13
+ gbz@280abegu.pbz
+ contactName
+ Tom Robinson
+ description
+ <a href="http://cappuccino.org/">Cappuccino</a> is an open source framework that makes it easy to build desktop-caliber applications that run in a web browser.
+ name
+ JavaScript Objective-J
+ ordering
+
+ 58D4B98A-2110-423E-9C80-CC9E202816E7
+ 96C39647-4346-4750-9F96-58070F24EDE6
+ AA41BEF8-5F81-4A5A-85DE-2E81A112778B
+ 85B0746B-AE1C-47B3-8B9A-2B9A95F4C71E
+
+ uuid
+ 1FB3D538-84E1-4002-AA46-5705529A27E1
+
+
From 761e32a84792f6109ee3130c40871f687ff1d9ce Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sun, 5 Jul 2009 21:04:08 -0700
Subject: [PATCH 069/244] Fix for updating window background color to match
crushed png.
Reviewed by me.
---
AppKit/CPWindow/_CPStandardWindowView.j | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/AppKit/CPWindow/_CPStandardWindowView.j b/AppKit/CPWindow/_CPStandardWindowView.j
index 38c44f353..c88da796b 100644
--- a/AppKit/CPWindow/_CPStandardWindowView.j
+++ b/AppKit/CPWindow/_CPStandardWindowView.j
@@ -56,7 +56,7 @@ var _CPTexturedWindowHeadGradientColor = nil,
+ (CPColor)solidColor
{
if (!_CPTexturedWindowHeadSolidColor)
- _CPTexturedWindowHeadSolidColor = [CPColor colorWithCalibratedRed:182.0 / 255.0 green:182.0 / 255.0 blue:182.0 / 255.0 alpha:1.0];
+ _CPTexturedWindowHeadSolidColor = [CPColor colorWithCalibratedRed:195.0 / 255.0 green:195.0 / 255.0 blue:195.0 / 255.0 alpha:1.0];
return _CPTexturedWindowHeadSolidColor;
}
From a5b468bbeb1cd58112464682903a78485b41d1df Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Mon, 6 Jul 2009 14:39:33 -0700
Subject: [PATCH 070/244] Fix for adding support for NSMutableString and
NSMutableDictionary in nib2cib. Also, added support for inline strings.
Reviewed by me.
---
Foundation/CPKeyedUnarchiver.j | 2 +-
Tools/nib2cib/NSFoundation.j | 3 +++
Tools/nib2cib/NSMutableDictionary.j | 35 +++++++++++++++++++++++++++++
Tools/nib2cib/NSMutableString.j | 35 +++++++++++++++++++++++++++++
4 files changed, 74 insertions(+), 1 deletion(-)
create mode 100644 Tools/nib2cib/NSMutableDictionary.j
create mode 100644 Tools/nib2cib/NSMutableString.j
diff --git a/Foundation/CPKeyedUnarchiver.j b/Foundation/CPKeyedUnarchiver.j
index b646db995..6f5d45258 100644
--- a/Foundation/CPKeyedUnarchiver.j
+++ b/Foundation/CPKeyedUnarchiver.j
@@ -309,7 +309,7 @@ var _CPKeyedUnarchiverArrayClass = Ni
if ([object isKindOfClass:_CPKeyedUnarchiverDictionaryClass])
return _CPKeyedUnarchiverDecodeObjectAtIndex(self, [object objectForKey:_CPKeyedArchiverUIDKey]);
- else if ([object isKindOfClass:_CPKeyedUnarchiverNumberClass] || [object isKindOfClass:_CPKeyedUnarchiverDataClass])
+ else if ([object isKindOfClass:_CPKeyedUnarchiverNumberClass] || [object isKindOfClass:_CPKeyedUnarchiverDataClass] || [object isKindOfClass:_CPKeyedUnarchiverStringClass])
return object;
else if ([object isKindOfClass:_CPKeyedUnarchiverArrayClass])
diff --git a/Tools/nib2cib/NSFoundation.j b/Tools/nib2cib/NSFoundation.j
index 5a5155272..f933cf17e 100644
--- a/Tools/nib2cib/NSFoundation.j
+++ b/Tools/nib2cib/NSFoundation.j
@@ -21,3 +21,6 @@
*/
@import "NSArray.j"
+@import "NSMutableDictionary.j"
+@import "NSMutableString.j"
+@import "NSSet.j"
diff --git a/Tools/nib2cib/NSMutableDictionary.j b/Tools/nib2cib/NSMutableDictionary.j
new file mode 100644
index 000000000..c99a3ee83
--- /dev/null
+++ b/Tools/nib2cib/NSMutableDictionary.j
@@ -0,0 +1,35 @@
+/*
+ * NSMutableDictionary.j
+ * nib2cib
+ *
+ * Portions based on NSCell.m (09/09/2008) in Cocotron (http://www.cocotron.org/)
+ * Copyright (c) 2006-2007 Christopher J. W. Lloyd
+ *
+ * Created by Francisco Tolmasky.
+ * Copyright 2008, 280 North, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+@implementation NSMutableDictionary : CPObject
+{
+}
+
+- (id)initWithCoder:(CPCoder)aCoder
+{
+ return [CPDictionary dictionaryWithObjects:[aCoder decodeObjectForKey:@"NS.objects"] forKeys:[aCoder decodeObjectForKey:@"NS.keys"]];
+}
+
+@end
diff --git a/Tools/nib2cib/NSMutableString.j b/Tools/nib2cib/NSMutableString.j
new file mode 100644
index 000000000..641b27b5d
--- /dev/null
+++ b/Tools/nib2cib/NSMutableString.j
@@ -0,0 +1,35 @@
+/*
+ * NSMutableString.j
+ * nib2cib
+ *
+ * Portions based on NSCell.m (09/09/2008) in Cocotron (http://www.cocotron.org/)
+ * Copyright (c) 2006-2007 Christopher J. W. Lloyd
+ *
+ * Created by Francisco Tolmasky.
+ * Copyright 2008, 280 North, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+@implementation NSMutableString : CPObject
+{
+}
+
+- (id)initWithCoder:(CPCoder)aCoder
+{
+ return [aCoder decodeObjectForKey:@"NS.string"];
+}
+
+@end
From b9208c2f593977ed68849a425a00aa7f20dbceb7 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Mon, 6 Jul 2009 22:43:43 -0700
Subject: [PATCH 071/244] Fixed bug in Scroll View where disabled scrollable
scroller would appear. Also added tests for CPScrollView.
Reviewed by me.
---
AppKit/CPScrollView.j | 152 +++++++++++++--------------
Tests/AppKit/CPScrollViewTest.j | 177 ++++++++++++++++++++++++++++++++
2 files changed, 248 insertions(+), 81 deletions(-)
create mode 100644 Tests/AppKit/CPScrollViewTest.j
diff --git a/AppKit/CPScrollView.j b/AppKit/CPScrollView.j
index 04d4e0e87..77938bcfa 100644
--- a/AppKit/CPScrollView.j
+++ b/AppKit/CPScrollView.j
@@ -67,11 +67,11 @@
_horizontalLineScroll = 10.0;
_horizontalPageScroll = 10.0;
- _contentView = [[CPClipView alloc] initWithFrame:[self clipViewFrame]];
+ _contentView = [[CPClipView alloc] initWithFrame:[self bounds]];
[self addSubview:_contentView];
- _headerClipView = [[CPClipView alloc] initWithFrame:[self headerClipViewFrame]];
+ _headerClipView = [[CPClipView alloc] init];
[self addSubview:_headerClipView];
@@ -107,22 +107,21 @@
{
if (!aContentView)
return;
-
+
var documentView = [aContentView documentView];
-
+
if (documentView)
[documentView removeFromSuperview];
-
+
[_contentView removeFromSuperview];
-
- var size = [self contentSize];
-
+
_contentView = aContentView;
-
- [_contentView setFrame:[self clipViewFrame]];
+
[_contentView setDocumentView:documentView];
[self addSubview:_contentView];
+
+ [self reflectScrolledClipView:_contentView];
}
/*!
@@ -142,16 +141,10 @@
[_contentView setDocumentView:aView];
[_headerClipView setDocumentView:[self _headerView]];
- [_contentView setFrame:[self clipViewFrame]];
- [_headerClipView setFrame:[self headerClipViewFrame]];
-
var cornerView = [self _cornerView];
if (cornerView)
- {
- [cornerView setFrame:[self cornerViewFrame]];
[self addSubview:cornerView];
- }
[self reflectScrolledClipView:_contentView];
}
@@ -185,77 +178,91 @@
// [_horizontalScroller setEnabled:NO];
}
- [_contentView setFrame:[self clipViewFrame]];
- [_headerClipView setFrame:[self headerClipViewFrame]];
+ [_contentView setFrame:[self bounds]];
+ [_headerClipView setFrame:_CGRectMakeZero()];
--_recursionCount;
return;
}
- var documentFrame = [documentView frame], // the size of the whole document
- clipViewFrame = [self clipViewFrame], // the size of the visible document, within the scrollbars
- headerViewFrame = [self headerClipViewFrame],
- headerViewHeight = _CGRectGetHeight(headerViewFrame),
- cornerViewFrame = [self cornerViewFrame],
- cornerViewHeight = _CGRectGetHeight(cornerViewFrame),
- scrollPoint = [_contentView bounds].origin,
- difference = _CGSizeMake(CPRectGetWidth(documentFrame) - CPRectGetWidth(clipViewFrame), CPRectGetHeight(documentFrame) - CPRectGetHeight(clipViewFrame)),
- shouldShowVerticalScroller = (!_autohidesScrollers || difference.height > 0.0) && _hasVerticalScroller,
- shouldShowHorizontalScroller = (!_autohidesScrollers || difference.width > 0.0) && _hasHorizontalScroller,
- wasShowingVerticalScroller = ![_verticalScroller isHidden],
- wasShowingHorizontalScroller = ![_horizontalScroller isHidden],
- verticalScrollerWidth = _CGRectGetWidth([_verticalScroller frame]);
- horizontalScrollerHeight = _CGRectGetHeight([_horizontalScroller frame]);
+ var documentFrame = [documentView frame], // the size of the whole document
+ contentFrame = [self bounds], // assume it takes up the entire size of the scrollview (no scrollers)
+ headerClipViewFrame = [self headerClipViewFrame],
+ headerClipViewHeight = _CGRectGetHeight(headerClipViewFrame);
- if (_autohidesScrollers)
+ contentFrame.origin.y += headerClipViewHeight;
+ contentFrame.size.height -= headerClipViewHeight;
+
+ var difference = _CGSizeMake(_CGRectGetWidth(documentFrame) - _CGRectGetWidth(contentFrame), _CGRectGetHeight(documentFrame) - _CGRectGetHeight(contentFrame)),
+ verticalScrollerWidth = _CGRectGetWidth([_verticalScroller frame]),
+ horizontalScrollerHeight = _CGRectGetHeight([_horizontalScroller frame]),
+ hasVerticalScroll = difference.height > 0.0,
+ hasHorizontalScroll = difference.width > 0.0,
+ shouldShowVerticalScroller = _hasVerticalScroller && (!_autohidesScrollers || hasVerticalScroll),
+ shouldShowHorizontalScroller = _hasHorizontalScroller && (!_autohidesScrollers || hasHorizontalScroll);
+
+ // Now we have to account for the shown scrollers affecting the deltas.
+ if (shouldShowVerticalScroller)
{
- // Check to see if either affected the other!
- if (shouldShowVerticalScroller)
- shouldShowHorizontalScroller = (!_autohidesScrollers || difference.width > -verticalScrollerWidth) && _hasHorizontalScroller;
-
- if (shouldShowHorizontalScroller)
- shouldShowVerticalScroller = (!_autohidesScrollers || difference.height > -horizontalScrollerHeight) && _hasVerticalScroller;
+ difference.width += verticalScrollerWidth;
+ hasHorizontalScroll = difference.width > 0.0;
+ shouldShowHorizontalScroller = _hasHorizontalScroller && (!_autohidesScrollers || hasHorizontalScroll);
}
+ if (shouldShowHorizontalScroller)
+ {
+ difference.height += horizontalScrollerHeight;
+ hasVerticalScroll = difference.height > 0.0;
+ shouldShowVerticalScroller = _hasVerticalScroller && (!_autohidesScrollers || hasVerticalScroll);
+ }
+
+ // We now definitively know which scrollers are shown or not, as well as whether they are showing scroll values.
[_verticalScroller setHidden:!shouldShowVerticalScroller];
- [_verticalScroller setEnabled:difference.height > 0.0];
+ [_verticalScroller setEnabled:hasVerticalScroll];
[_horizontalScroller setHidden:!shouldShowHorizontalScroller];
- [_horizontalScroller setEnabled:difference.width > 0.0];
+ [_horizontalScroller setEnabled:hasHorizontalScroll];
+
+ // We can thus appropriately account for them changing the content size.
+ if (shouldShowVerticalScroller)
+ contentFrame.size.width -= verticalScrollerWidth;
+
+ if (shouldShowHorizontalScroller)
+ contentFrame.size.height -= horizontalScrollerHeight;
+
+ var scrollPoint = [_contentView bounds].origin,
+ wasShowingVerticalScroller = ![_verticalScroller isHidden],
+ wasShowingHorizontalScroller = ![_horizontalScroller isHidden];
if (shouldShowVerticalScroller)
{
- var verticalScrollerHeight = CPRectGetHeight([self bounds]) - (cornerViewHeight ? cornerViewHeight : headerViewHeight);
-
+ var verticalScrollerY = MAX(_CGRectGetHeight([self cornerViewFrame]), headerClipViewHeight),
+ verticalScrollerHeight = _CGRectGetHeight([self bounds]) - verticalScrollerY;
+
if (shouldShowHorizontalScroller)
verticalScrollerHeight -= horizontalScrollerHeight;
-
- difference.width += verticalScrollerWidth;
- clipViewFrame.size.width -= verticalScrollerWidth;
-
+
[_verticalScroller setFloatValue:(difference.height <= 0.0) ? 0.0 : scrollPoint.y / difference.height
- knobProportion:CPRectGetHeight(clipViewFrame) / CPRectGetHeight(documentFrame)];
- [_verticalScroller setFrame:CPRectMake(CPRectGetMaxX(clipViewFrame), (cornerViewHeight ? cornerViewHeight : headerViewHeight), verticalScrollerWidth, verticalScrollerHeight)];
+ knobProportion:_CGRectGetHeight(contentFrame) / _CGRectGetHeight(documentFrame)];
+ [_verticalScroller setFrame:_CGRectMake(_CGRectGetMaxX(contentFrame), verticalScrollerY, verticalScrollerWidth, verticalScrollerHeight)];
}
else if (wasShowingVerticalScroller)
[_verticalScroller setFloatValue:0.0 knobProportion:1.0];
if (shouldShowHorizontalScroller)
{
- difference.height += horizontalScrollerHeight;
- clipViewFrame.size.height -= horizontalScrollerHeight;
-
[_horizontalScroller setFloatValue:(difference.width <= 0.0) ? 0.0 : scrollPoint.x / difference.width
- knobProportion:CPRectGetWidth(clipViewFrame) / CPRectGetWidth(documentFrame)];
- [_horizontalScroller setFrame:CPRectMake(0.0, CPRectGetMaxY(clipViewFrame), CPRectGetWidth(clipViewFrame), horizontalScrollerHeight)];
+ knobProportion:_CGRectGetWidth(contentFrame) / _CGRectGetWidth(documentFrame)];
+ [_horizontalScroller setFrame:_CGRectMake(0.0, _CGRectGetMaxY(contentFrame), _CGRectGetWidth(contentFrame), horizontalScrollerHeight)];
}
else if (wasShowingHorizontalScroller)
[_horizontalScroller setFloatValue:0.0 knobProportion:1.0];
-
- [_contentView setFrame:clipViewFrame];
- [_headerClipView setFrame:headerViewFrame];
-
+
+ [_contentView setFrame:contentFrame];
+ [_headerClipView setFrame:headerClipViewFrame];
+ [[self _cornerView] setFrame:[self cornerViewFrame]];
+
--_recursionCount;
}
@@ -304,7 +311,7 @@
_hasHorizontalScroller = shouldHaveHorizontalScroller;
if (_hasHorizontalScroller && !_horizontalScroller)
- [self setHorizontalScroller:[[CPScroller alloc] initWithFrame:CGRectMake(0.0, 0.0, CPRectGetWidth([self bounds]), [CPScroller scrollerWidth])]];
+ [self setHorizontalScroller:[[CPScroller alloc] initWithFrame:CGRectMake(0.0, 0.0, _CGRectGetWidth([self bounds]), [CPScroller scrollerWidth])]];
else if (!_hasHorizontalScroller && _horizontalScroller)
{
@@ -367,7 +374,7 @@
_hasVerticalScroller = shouldHaveVerticalScroller;
if (_hasVerticalScroller && !_verticalScroller)
- [self setVerticalScroller:[[CPScroller alloc] initWithFrame:CPRectMake(0.0, 0.0, [CPScroller scrollerWidth], CPRectGetHeight([self bounds]))]];
+ [self setVerticalScroller:[[CPScroller alloc] initWithFrame:_CGRectMake(0.0, 0.0, [CPScroller scrollerWidth], _CGRectGetHeight([self bounds]))]];
else if (!_hasVerticalScroller && _verticalScroller)
{
@@ -409,12 +416,6 @@
return _autohidesScrollers;
}
-
-- (CGRect)insetBounds
-{
- return [self bounds];
-}
-
- (CPView)_headerView
{
var documentView = [self documentView];
@@ -437,10 +438,10 @@
{
var cornerView = [self _cornerView],
cornerBounds = [cornerView bounds],
- bounds = [self insetBounds];
+ bounds = [self bounds];
if (!cornerView)
- return CGRectMakeZero();
+ return _CGRectMakeZero();
cornerBounds.origin.x = CGRectGetMaxX(bounds) - CGRectGetWidth(cornerBounds);
cornerBounds.origin.y = 0;
@@ -452,10 +453,10 @@
{
var headerView = [self _headerView],
cornerView = [self _cornerView],
- bounds = [self insetBounds];
+ bounds = [self bounds];
if (!headerView)
- return CGRectMakeZero();
+ return _CGRectMakeZero();
bounds.size.height = [headerView bounds].size.height;
@@ -465,17 +466,6 @@
return bounds;
}
-- (CGRect)clipViewFrame
-{
- var bounds = [self insetBounds],
- headerViewFrame = [self headerClipViewFrame];
-
- bounds.origin.y += headerViewFrame.size.height;
- bounds.size.height -= headerViewFrame.size.height;
-
- return bounds;
-}
-
/* @ignore */
- (void)_verticalScrollerDidScroll:(CPScroller)aScroller
{
diff --git a/Tests/AppKit/CPScrollViewTest.j b/Tests/AppKit/CPScrollViewTest.j
new file mode 100644
index 000000000..428268c09
--- /dev/null
+++ b/Tests/AppKit/CPScrollViewTest.j
@@ -0,0 +1,177 @@
+@import
+
+@implementation CPScrollViewTest : OJTestCase
+{
+}
+
+- (void)testBothScrollersVisible
+{
+ var scrollView = [[CPScrollView alloc] initWithFrame:CGRectMake(0.0, 0.0, 100.0, 100.0)];
+
+ [scrollView setAutohidesScrollers:NO];
+ [scrollView setHasHorizontalScroller:YES];
+ [scrollView setHasVerticalScroller:YES];
+
+ var documentView = [[CPView alloc] init];
+
+ [scrollView setDocumentView:documentView];
+
+ // Test document view size smaller than scroll view size.
+ [documentView setFrameSize:CGSizeMake(50.0, 50.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:NO];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:NO];
+
+ // Test document view size much larger than scroll view size.
+ [documentView setFrameSize:CGSizeMake(1000.0, 1000.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:YES];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:YES];
+
+ // Test document view size much taller than scroll view size.
+ [documentView setFrameSize:CGSizeMake(50.0, 1000.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:NO];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:YES];
+
+ // Test document view size much wider than scroll view size.
+ [documentView setFrameSize:CGSizeMake(1000.0, 50.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:YES];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:NO];
+
+ // Test document view size equal to scroll view size.
+ [documentView setFrameSize:CGSizeMake(100.0, 100.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:YES];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:YES];
+
+ // Test document view size taller than scroll view size only because of scrollers.
+ [documentView setFrameSize:CGSizeMake(50.0, 100.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:NO];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:YES];
+
+ // Test document view size wider than scroll view size only because of scrollers.
+ [documentView setFrameSize:CGSizeMake(100.0, 50.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:YES];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:NO];
+
+ // Test document view size exactly the right size relative to the scroll view size.
+ [documentView setFrameSize:CGSizeMake(100.0 - 17.0, 100.0 - 17.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:NO];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:NO];
+}
+
+- (void)testAutoHidesScrollers
+{
+ var scrollView = [[CPScrollView alloc] initWithFrame:CGRectMake(0.0, 0.0, 100.0, 100.0)];
+
+ [scrollView setAutohidesScrollers:YES];
+ [scrollView setHasHorizontalScroller:YES];
+ [scrollView setHasVerticalScroller:YES];
+
+ var documentView = [[CPView alloc] init];
+
+ [scrollView setDocumentView:documentView];
+
+ // Test document view size smaller than scroll view size.
+ [documentView setFrameSize:CGSizeMake(50.0, 50.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:YES];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:NO];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:YES];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:NO];
+
+ // Test document view size much larger than scroll view size.
+ [documentView setFrameSize:CGSizeMake(1000.0, 1000.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:YES];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:YES];
+
+ // Test document view size much taller than scroll view size.
+ [documentView setFrameSize:CGSizeMake(50.0, 1000.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:YES];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:NO];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:YES];
+
+ // Test document view size much wider than scroll view size.
+ [documentView setFrameSize:CGSizeMake(1000.0, 50.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:NO];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:YES];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:YES];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:NO];
+
+ // Test document view size equal to scroll view size.
+ [documentView setFrameSize:CGSizeMake(100.0, 100.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:YES];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:NO];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:YES];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:NO];
+
+ // Test document view size taller than scroll view size only because of scrollers.
+ [documentView setFrameSize:CGSizeMake(50.0, 100.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:YES];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:NO];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:YES];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:NO];
+
+ // Test document view size wider than scroll view size only because of scrollers.
+ [documentView setFrameSize:CGSizeMake(100.0, 50.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:YES];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:NO];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:YES];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:NO];
+
+ // Test document view size exactly the right size relative to the scroll view size.
+ [documentView setFrameSize:CGSizeMake(100.0 - 17.0, 100.0 - 17.0)];
+
+ [self assert:[[scrollView horizontalScroller] isHidden] equals:YES];
+ [self assert:[[scrollView horizontalScroller] isEnabled] equals:NO];
+
+ [self assert:[[scrollView verticalScroller] isHidden] equals:YES];
+ [self assert:[[scrollView verticalScroller] isEnabled] equals:NO];
+}
+
+@end
\ No newline at end of file
From 4086d37dac309f5210b2c03ed17fb27c06024ac0 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Tue, 7 Jul 2009 10:26:03 -0700
Subject: [PATCH 072/244] Slight fixes for resizing tableviews.
Reviewed by me.
---
AppKit/CPTableColumn.j | 13 +++++++------
AppKit/CPTableView.j | 9 +++++++++
2 files changed, 16 insertions(+), 6 deletions(-)
diff --git a/AppKit/CPTableColumn.j b/AppKit/CPTableColumn.j
index ed3372bfc..e8edcff9c 100644
--- a/AppKit/CPTableColumn.j
+++ b/AppKit/CPTableColumn.j
@@ -325,6 +325,10 @@ var CPTableColumnIdentifierKey = @"CPTableColumnIdentifierKey",
{
_dataViewData = { };
+ _width = [aCoder decodeFloatForKey:CPTableColumnWidthKey];
+ _minWidth = [aCoder decodeFloatForKey:CPTableColumnMinWidthKey];
+ _maxWidth = [aCoder decodeFloatForKey:CPTableColumnMaxWidthKey];
+
[self setIdentifier:[aCoder decodeObjectForKey:CPTableColumnIdentifierKey]];
// [self setHeaderView:[aCoder decodeObjectForKey:CPTableColumnHeaderViewKey]];
// [self setDataView:[aCoder decodeObjectForKey:CPTableColumnDataViewKey]];
@@ -332,9 +336,6 @@ var CPTableColumnIdentifierKey = @"CPTableColumnIdentifierKey",
[self setHeaderView:[CPTextField new]];
[self setDataView:[CPTextField new]];
- _width = [aCoder decodeFloatForKey:CPTableColumnWidthKey];
- _minWidth = [aCoder decodeFloatForKey:CPTableColumnMinWidthKey];
- _maxWidth = [aCoder decodeFloatForKey:CPTableColumnMaxWidthKey];
// _resizingMask = [aCoder decodeBoolForKey:CPTableColumnResizingMaskKey];
}
@@ -346,13 +347,13 @@ var CPTableColumnIdentifierKey = @"CPTableColumnIdentifierKey",
{
[aCoder encodeObject:_identifier forKey:CPTableColumnIdentifierKey];
-// [aCoder encodeObject:_headerView forKey:CPTableColumnHeaderViewKey];
-// [aCoder encodeObject:_dataView forKey:CPTableColumnDataViewKey];
-
[aCoder encodeObject:_width forKey:CPTableColumnWidthKey];
[aCoder encodeObject:_minWidth forKey:CPTableColumnMinWidthKey];
[aCoder encodeObject:_maxWidth forKey:CPTableColumnMaxWidthKey];
+// [aCoder encodeObject:_headerView forKey:CPTableColumnHeaderViewKey];
+// [aCoder encodeObject:_dataView forKey:CPTableColumnDataViewKey];
+
// [aCoder encodeObject:_resizingMask forKey:CPTableColumnResizingMaskKey];
}
diff --git a/AppKit/CPTableView.j b/AppKit/CPTableView.j
index 5d87543ee..bfa234f0e 100644
--- a/AppKit/CPTableView.j
+++ b/AppKit/CPTableView.j
@@ -6,6 +6,12 @@
@import "_CPCornerView.j"
@import "CPScroller.j"
+
+CPTableViewColumnDidMoveNotification = @"CPTableViewColumnDidMoveNotification";
+CPTableViewColumnDidResizeNotification = @"CPTableViewColumnDidResizeNotification";
+CPTableViewSelectionDidChangeNotification = @"CPTableViewSelectionDidChangeNotification";
+CPTableViewSelectionIsChangingNotification = @"CPTableViewSelectionIsChangingNotification";
+
#include "CoreGraphics/CGGeometry.h"
var CPTableViewDataSource_tableView_setObjectValue_forTableColumn_row_ = 1 << 2,
@@ -1268,6 +1274,7 @@ _cachedDataViews[dataView.identifier].push(dataView);
- (void)superviewFrameChanged:(CPNotification)aNotification
{
+ [self _sizeToParent];
}
//
@@ -1433,6 +1440,8 @@ var CPTableViewDataSourceKey = @"CPTableViewDataSourceKey",
[_tableColumns makeObjectsPerformSelector:@selector(setTableView:) withObject:self];
_dirtyTableColumnRangeIndex = 0;
+
+ [self viewWillMoveToSuperview:[self superview]];
}
return self;
From ddbc1e0e94734ef36e31d9670986a9fdc4835cb5 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Tue, 7 Jul 2009 11:33:19 -0700
Subject: [PATCH 073/244] Changes to tableview nib.
Reviewed by me.
---
TableCibTest/Resources/MainMenu.cib | 2 +-
TableCibTest/Resources/MainMenu.xib | 55 ++++++++++++++++++++++++++---
2 files changed, 52 insertions(+), 5 deletions(-)
diff --git a/TableCibTest/Resources/MainMenu.cib b/TableCibTest/Resources/MainMenu.cib
index 5a70d0b85..d3aac2d00 100644
--- a/TableCibTest/Resources/MainMenu.cib
+++ b/TableCibTest/Resources/MainMenu.cib
@@ -1 +1 @@
-280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;4E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;7E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;9E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;2;10E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;2;11E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;2;12E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;2;13E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;2;14E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;16E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;18E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;195E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;205E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;225E;D;K;6;CP$UIDd;3;226E;D;K;6;CP$UIDd;3;227E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;3;229E;D;K;6;CP$UIDd;3;230E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;232E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;234E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;236E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;241E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;243E;D;K;6;CP$UIDd;3;244E;D;K;6;CP$UIDd;3;245E;D;K;6;CP$UIDd;3;246E;D;K;6;CP$UIDd;3;247E;D;K;6;CP$UIDd;3;248E;D;K;6;CP$UIDd;3;249E;D;K;6;CP$UIDd;3;250E;D;K;6;CP$UIDd;3;251E;D;K;6;CP$UIDd;3;252E;D;K;6;CP$UIDd;3;253E;D;K;6;CP$UIDd;3;254E;D;K;6;CP$UIDd;3;255E;D;K;6;CP$UIDd;3;256E;D;K;6;CP$UIDd;3;257E;D;K;6;CP$UIDd;3;258E;D;K;6;CP$UIDd;3;259E;D;K;6;CP$UIDd;3;260E;D;K;6;CP$UIDd;3;261E;D;K;6;CP$UIDd;3;262E;D;K;6;CP$UIDd;3;263E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;266E;D;K;6;CP$UIDd;3;267E;D;K;6;CP$UIDd;3;268E;D;K;6;CP$UIDd;3;269E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;271E;D;K;6;CP$UIDd;3;272E;D;K;6;CP$UIDd;3;273E;D;K;6;CP$UIDd;3;274E;D;K;6;CP$UIDd;3;275E;D;K;6;CP$UIDd;3;276E;D;K;6;CP$UIDd;3;277E;D;K;6;CP$UIDd;3;278E;D;K;6;CP$UIDd;3;279E;D;K;6;CP$UIDd;3;280E;D;K;6;CP$UIDd;3;281E;D;K;6;CP$UIDd;3;282E;D;K;6;CP$UIDd;3;283E;D;K;6;CP$UIDd;3;284E;D;K;6;CP$UIDd;3;285E;D;K;6;CP$UIDd;3;286E;D;K;6;CP$UIDd;3;287E;D;K;6;CP$UIDd;3;288E;D;K;6;CP$UIDd;3;289E;D;K;6;CP$UIDd;3;290E;D;K;6;CP$UIDd;3;291E;D;K;6;CP$UIDd;3;292E;D;K;6;CP$UIDd;3;293E;D;K;6;CP$UIDd;3;294E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;296E;D;K;6;CP$UIDd;3;297E;D;K;6;CP$UIDd;3;298E;D;K;6;CP$UIDd;3;299E;D;K;6;CP$UIDd;3;300E;D;K;6;CP$UIDd;3;301E;D;K;6;CP$UIDd;3;302E;D;K;6;CP$UIDd;3;303E;D;K;6;CP$UIDd;3;304E;D;K;6;CP$UIDd;3;305E;D;K;6;CP$UIDd;3;306E;D;K;6;CP$UIDd;3;307E;D;K;6;CP$UIDd;3;308E;D;K;6;CP$UIDd;3;309E;D;K;6;CP$UIDd;3;310E;D;K;6;CP$UIDd;3;311E;D;K;6;CP$UIDd;3;312E;D;K;6;CP$UIDd;3;313E;D;K;6;CP$UIDd;3;314E;D;K;6;CP$UIDd;3;315E;D;K;6;CP$UIDd;3;316E;D;K;6;CP$UIDd;3;317E;D;K;6;CP$UIDd;3;318E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;320E;D;K;6;CP$UIDd;3;321E;D;K;6;CP$UIDd;3;322E;D;K;6;CP$UIDd;3;323E;D;K;6;CP$UIDd;3;324E;D;K;6;CP$UIDd;3;325E;D;K;6;CP$UIDd;3;326E;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;3;328E;D;K;6;CP$UIDd;3;329E;D;K;6;CP$UIDd;3;330E;D;K;6;CP$UIDd;3;331E;D;K;6;CP$UIDd;3;332E;D;K;6;CP$UIDd;3;333E;D;K;6;CP$UIDd;3;334E;D;K;6;CP$UIDd;3;335E;D;K;6;CP$UIDd;3;336E;D;K;6;CP$UIDd;3;337E;D;K;6;CP$UIDd;3;338E;D;K;6;CP$UIDd;3;339E;D;K;6;CP$UIDd;3;340E;D;K;6;CP$UIDd;3;341E;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;3;343E;D;K;6;CP$UIDd;3;344E;D;K;6;CP$UIDd;3;345E;D;K;6;CP$UIDd;3;347E;D;K;6;CP$UIDd;3;348E;D;K;6;CP$UIDd;3;349E;D;K;6;CP$UIDd;3;350E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;352E;D;K;6;CP$UIDd;3;353E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;3;356E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;358E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;360E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;362E;D;K;6;CP$UIDd;3;363E;D;K;6;CP$UIDd;3;364E;D;K;6;CP$UIDd;3;365E;D;K;6;CP$UIDd;3;366E;D;K;6;CP$UIDd;3;367E;D;K;6;CP$UIDd;3;368E;D;K;6;CP$UIDd;3;369E;D;K;6;CP$UIDd;3;370E;D;K;6;CP$UIDd;3;371E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;373E;D;K;6;CP$UIDd;3;374E;D;K;6;CP$UIDd;3;375E;D;K;6;CP$UIDd;3;376E;D;K;6;CP$UIDd;3;377E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;3;379E;D;K;6;CP$UIDd;3;380E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;383E;D;K;6;CP$UIDd;3;384E;E;E;S;16;IBCocoaFrameworkd;3;490D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;91E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;341E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;3;322E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;343E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;3;339E;D;K;6;CP$UIDd;3;345E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;3;366E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;3;324E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;3;369E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;338E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;365E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;3;350E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;352E;D;K;6;CP$UIDd;3;325E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;374E;D;K;6;CP$UIDd;3;336E;D;K;6;CP$UIDd;3;349E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;356E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;334E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;362E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;383E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;323E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;380E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;3;368E;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;3;328E;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;3;376E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;330E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;379E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;3;329E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;353E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;3;321E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;3;360E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;344E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;3;320E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;3;326E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;335E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;367E;D;K;6;CP$UIDd;3;333E;D;K;6;CP$UIDd;3;373E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;348E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;340E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;371E;D;K;6;CP$UIDd;3;363E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;337E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;331E;D;K;6;CP$UIDd;3;377E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;370E;D;K;6;CP$UIDd;3;384E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;375E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;347E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;332E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;364E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;358E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;385E;D;K;6;CP$UIDd;3;386E;D;K;6;CP$UIDd;3;387E;D;K;6;CP$UIDd;3;388E;D;K;6;CP$UIDd;3;389E;D;K;6;CP$UIDd;3;390E;D;K;6;CP$UIDd;3;391E;D;K;6;CP$UIDd;3;392E;D;K;6;CP$UIDd;3;393E;D;K;6;CP$UIDd;3;394E;D;K;6;CP$UIDd;3;395E;D;K;6;CP$UIDd;3;396E;D;K;6;CP$UIDd;3;397E;D;K;6;CP$UIDd;3;398E;D;K;6;CP$UIDd;3;399E;D;K;6;CP$UIDd;3;400E;D;K;6;CP$UIDd;3;401E;D;K;6;CP$UIDd;3;402E;D;K;6;CP$UIDd;3;403E;D;K;6;CP$UIDd;3;404E;D;K;6;CP$UIDd;3;405E;D;K;6;CP$UIDd;3;406E;D;K;6;CP$UIDd;3;407E;D;K;6;CP$UIDd;3;408E;D;K;6;CP$UIDd;3;409E;D;K;6;CP$UIDd;3;410E;D;K;6;CP$UIDd;3;411E;D;K;6;CP$UIDd;3;412E;D;K;6;CP$UIDd;3;413E;D;K;6;CP$UIDd;3;414E;D;K;6;CP$UIDd;3;415E;D;K;6;CP$UIDd;3;416E;D;K;6;CP$UIDd;3;417E;D;K;6;CP$UIDd;3;418E;D;K;6;CP$UIDd;3;419E;D;K;6;CP$UIDd;3;420E;D;K;6;CP$UIDd;3;421E;D;K;6;CP$UIDd;3;422E;D;K;6;CP$UIDd;3;423E;D;K;6;CP$UIDd;3;424E;D;K;6;CP$UIDd;3;425E;D;K;6;CP$UIDd;3;426E;D;K;6;CP$UIDd;3;427E;D;K;6;CP$UIDd;3;428E;D;K;6;CP$UIDd;3;429E;D;K;6;CP$UIDd;3;430E;D;K;6;CP$UIDd;3;431E;D;K;6;CP$UIDd;3;432E;D;K;6;CP$UIDd;3;433E;D;K;6;CP$UIDd;3;434E;D;K;6;CP$UIDd;3;435E;D;K;6;CP$UIDd;3;436E;D;K;6;CP$UIDd;3;437E;D;K;6;CP$UIDd;3;438E;D;K;6;CP$UIDd;3;439E;D;K;6;CP$UIDd;3;440E;D;K;6;CP$UIDd;3;441E;D;K;6;CP$UIDd;3;442E;D;K;6;CP$UIDd;3;443E;D;K;6;CP$UIDd;3;444E;D;K;6;CP$UIDd;3;445E;D;K;6;CP$UIDd;3;446E;D;K;6;CP$UIDd;3;447E;D;K;6;CP$UIDd;3;448E;D;K;6;CP$UIDd;3;449E;D;K;6;CP$UIDd;3;450E;D;K;6;CP$UIDd;3;451E;D;K;6;CP$UIDd;3;452E;D;K;6;CP$UIDd;3;453E;D;K;6;CP$UIDd;3;454E;D;K;6;CP$UIDd;3;455E;D;K;6;CP$UIDd;3;456E;D;K;6;CP$UIDd;3;457E;D;K;6;CP$UIDd;3;458E;D;K;6;CP$UIDd;3;459E;D;K;6;CP$UIDd;3;460E;D;K;6;CP$UIDd;3;461E;D;K;6;CP$UIDd;3;462E;D;K;6;CP$UIDd;3;463E;D;K;6;CP$UIDd;3;464E;D;K;6;CP$UIDd;3;465E;D;K;6;CP$UIDd;3;466E;D;K;6;CP$UIDd;3;467E;D;K;6;CP$UIDd;3;468E;D;K;6;CP$UIDd;3;469E;D;K;6;CP$UIDd;3;470E;D;K;6;CP$UIDd;3;471E;D;K;6;CP$UIDd;3;472E;D;K;6;CP$UIDd;3;473E;D;K;6;CP$UIDd;3;474E;D;K;6;CP$UIDd;3;475E;D;K;6;CP$UIDd;3;476E;D;K;6;CP$UIDd;3;477E;D;K;6;CP$UIDd;3;478E;D;K;6;CP$UIDd;3;479E;D;K;6;CP$UIDd;3;480E;D;K;6;CP$UIDd;3;481E;D;K;6;CP$UIDd;3;482E;D;K;6;CP$UIDd;3;483E;D;K;6;CP$UIDd;3;484E;D;K;6;CP$UIDd;3;485E;D;K;6;CP$UIDd;3;486E;D;K;6;CP$UIDd;3;487E;D;K;6;CP$UIDd;3;488E;D;K;6;CP$UIDd;3;489E;D;K;6;CP$UIDd;3;490E;D;K;6;CP$UIDd;3;491E;D;K;6;CP$UIDd;3;492E;D;K;6;CP$UIDd;3;493E;D;K;6;CP$UIDd;3;494E;D;K;6;CP$UIDd;3;495E;D;K;6;CP$UIDd;3;496E;D;K;6;CP$UIDd;3;497E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;499E;D;K;6;CP$UIDd;3;500E;D;K;6;CP$UIDd;3;501E;D;K;6;CP$UIDd;3;502E;D;K;6;CP$UIDd;3;503E;D;K;6;CP$UIDd;3;504E;D;K;6;CP$UIDd;3;505E;D;K;6;CP$UIDd;3;506E;D;K;6;CP$UIDd;3;507E;D;K;6;CP$UIDd;3;508E;D;K;6;CP$UIDd;3;509E;D;K;6;CP$UIDd;3;510E;D;K;6;CP$UIDd;3;511E;D;K;6;CP$UIDd;3;512E;D;K;6;CP$UIDd;3;513E;D;K;6;CP$UIDd;3;514E;D;K;6;CP$UIDd;3;515E;D;K;6;CP$UIDd;3;516E;D;K;6;CP$UIDd;3;517E;D;K;6;CP$UIDd;3;518E;D;K;6;CP$UIDd;3;519E;D;K;6;CP$UIDd;3;520E;D;K;6;CP$UIDd;3;521E;D;K;6;CP$UIDd;3;522E;D;K;6;CP$UIDd;3;523E;D;K;6;CP$UIDd;3;524E;D;K;6;CP$UIDd;3;525E;D;K;6;CP$UIDd;3;526E;D;K;6;CP$UIDd;3;527E;D;K;6;CP$UIDd;3;528E;D;K;6;CP$UIDd;3;529E;D;K;6;CP$UIDd;3;530E;D;K;6;CP$UIDd;3;531E;D;K;6;CP$UIDd;3;532E;D;K;6;CP$UIDd;3;533E;D;K;6;CP$UIDd;3;534E;D;K;6;CP$UIDd;3;535E;D;K;6;CP$UIDd;3;536E;D;K;6;CP$UIDd;3;537E;D;K;6;CP$UIDd;3;538E;D;K;6;CP$UIDd;3;539E;D;K;6;CP$UIDd;3;540E;D;K;6;CP$UIDd;3;541E;D;K;6;CP$UIDd;3;542E;D;K;6;CP$UIDd;3;543E;D;K;6;CP$UIDd;3;544E;D;K;6;CP$UIDd;3;545E;D;K;6;CP$UIDd;3;546E;D;K;6;CP$UIDd;3;547E;D;K;6;CP$UIDd;3;548E;D;K;6;CP$UIDd;3;549E;D;K;6;CP$UIDd;3;550E;D;K;6;CP$UIDd;3;551E;D;K;6;CP$UIDd;3;552E;D;K;6;CP$UIDd;3;553E;D;K;6;CP$UIDd;3;554E;D;K;6;CP$UIDd;3;555E;D;K;6;CP$UIDd;3;556E;D;K;6;CP$UIDd;3;557E;D;K;6;CP$UIDd;3;558E;D;K;6;CP$UIDd;3;559E;D;K;6;CP$UIDd;3;560E;D;K;6;CP$UIDd;3;561E;D;K;6;CP$UIDd;3;562E;D;K;6;CP$UIDd;3;563E;D;K;6;CP$UIDd;3;564E;D;K;6;CP$UIDd;3;565E;D;K;6;CP$UIDd;3;566E;D;K;6;CP$UIDd;3;567E;D;K;6;CP$UIDd;3;568E;D;K;6;CP$UIDd;3;569E;D;K;6;CP$UIDd;3;570E;D;K;6;CP$UIDd;3;571E;D;K;6;CP$UIDd;3;572E;D;K;6;CP$UIDd;3;573E;D;K;6;CP$UIDd;3;574E;D;K;6;CP$UIDd;3;575E;D;K;6;CP$UIDd;3;576E;D;K;6;CP$UIDd;3;577E;D;K;6;CP$UIDd;3;578E;D;K;6;CP$UIDd;3;579E;D;K;6;CP$UIDd;3;580E;D;K;6;CP$UIDd;3;581E;D;K;6;CP$UIDd;3;582E;D;K;6;CP$UIDd;3;583E;D;K;6;CP$UIDd;3;584E;D;K;6;CP$UIDd;3;585E;D;K;6;CP$UIDd;3;586E;D;K;6;CP$UIDd;3;587E;D;K;6;CP$UIDd;3;588E;D;K;6;CP$UIDd;3;589E;D;K;6;CP$UIDd;3;590E;D;K;6;CP$UIDd;3;591E;D;K;6;CP$UIDd;3;592E;D;K;6;CP$UIDd;3;593E;D;K;6;CP$UIDd;3;594E;D;K;6;CP$UIDd;3;595E;D;K;6;CP$UIDd;3;596E;D;K;6;CP$UIDd;3;597E;D;K;6;CP$UIDd;3;598E;D;K;6;CP$UIDd;3;599E;D;K;6;CP$UIDd;3;600E;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;601E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;602E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;71E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;603E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;604E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;71E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;605E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;606E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;607E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;71E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;608E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;609E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;607E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;610E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;611E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;612E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;616E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;53E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;618E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;619E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;620E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;86E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;621E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;111E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;31E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;622E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;623E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;624E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;31E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;625E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;626E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;627E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;628E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;629E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;630E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;122E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;631E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;632E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;633E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;631E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;632E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;633E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;634E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;31E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;635E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;31E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;636E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;47E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;637E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;636E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;639E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;98E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;640E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;631E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;632E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;633E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;641E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;616E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;642E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;643E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;31E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;644E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;601E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;645E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;647E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;118E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;648E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;95E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;649E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;47E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;650E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;118E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;651E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;31E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;652E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;34E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;653E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;53E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;652E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;654E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;152E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;655E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;95E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;70E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;130E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;656E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;657E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;658E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;130E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;659E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;606E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;661E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;3;101E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;20E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;632E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;632E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;632E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;632E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;613E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;613E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;615E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;662E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;47E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;663E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;632E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;632E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;633E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;664E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;665E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;666E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;667E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;86E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;668E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;669E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;34E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;670E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;137E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;671E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;672E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;110E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;673E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;631E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;632E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;633E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;674E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;675E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;676E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;31E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;667E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;677E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;87E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;678E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;679E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;680E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;681E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;682E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;3;130E;K;41;_CPCibWindowTemplateWindowIsFullBridgeKeyD;K;6;CP$UIDd;3;615E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;683E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;31E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;682E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;684E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;685E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;686E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;631E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;632E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;633E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;31E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;687E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;648E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;688E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;689E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;690E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;691E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;639E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;692E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;693E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;71E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;694E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;695E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;71E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;605E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;696E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;607E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;71E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;608E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;609E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;607E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;697E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;631E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;632E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;633E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;698E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;53E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;699E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;700E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;701E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;702E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;703E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;118E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;652E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;118E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;672E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;704E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;621E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;705E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;690E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;97E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;706E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;631E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;632E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;633E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;707E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;665E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;666E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;708E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;650E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;709E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;710E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;711E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;34E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;712E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;630E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;713E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;714E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;53E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;622E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;31E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;E;D;K;10;$classnameS;11;CPTableViewK;8;$classesA;S;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;125E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;661E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;715E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;715E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;661E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;605E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;606E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;609E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;716E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;717E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;615E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;613E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;718E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;719E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;720E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;129E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;721E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;721E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;722E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;605E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;606E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;723E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;724E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;725E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;682E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;90E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;726E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;34E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;685E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;91E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;670E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;727E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;728E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;31E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;1;0E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;631E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;632E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;633E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;22E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;729E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;626E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;617E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;34E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;730E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;731E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;732E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;733E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;734E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;647E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;735E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;654E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;736E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;737E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;738E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;739E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;740E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;34E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;741E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;742E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;743E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;683E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;744E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;745E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;31E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;746E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;97E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;747E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;23E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;613E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;S;19;Horizontal ScrollerS;13;Menu (Format)S;11;Separator-8S;25;Menu Item (Substitutions)S;22;Menu Item (Align Left)S;1;5S;31;Menu Item (NewApplication Help)S;16;Menu Item (File)S;9;SeparatorS;21;Menu (NewApplication)S;23;Menu Item (Hide Others)S;18;Menu Item (Delete)S;15;Menu (Baseline)S;17;Menu Item (Find…)S;1;3S;12;File's OwnerS;18;Menu Item (Speech)S;12;Table ColumnS;14;Table Column-1S;31;Menu Item (Hide NewApplication)S;30;Menu Item (Bring All to Front)S;11;Separator-1S;3;2-1S;16;Menu Item (View)S;23;Menu Item (Paste Style)S;29;Text Field Cell (Text Cell)-7S;11;Menu (View)S;16;Menu Item (Kern)S;18;Menu Item (Italic)S;11;Separator-9S;14;Table Column-2S;25;Menu Item (Stop Speaking)S;20;Menu (Substitutions)S;4;1111S;16;Menu Item (Undo)S;11;ApplicationS;19;Menu Item (Justify)S;2;10S;29;Text Field Cell (Text Cell)-8S;22;Menu Item (Use None)-1S;16;Menu Item (Text)S;24;Menu Item (Show Toolbar)S;29;Text Field Cell (Text Cell)-4S;20;Menu Item (Ligature)S;29;Text Field Cell (Text Cell)-5S;19;Menu Item (Tighten)S;11;Separator-2S;25;Menu Item (Use Default)-2S;23;Menu Item (Smart Links)S;23;Menu Item (Use Default)S;16;Menu Item (Font)S;18;Menu Item (Center)S;33;Bordered Scroll View (Table View)S;30;Menu Item (Customize Toolbar…)S;17;Menu Item (Open…)S;14;Table Column-4S;14;Table Column-3S;1;1S;15;Menu Item (Cut)S;17;Menu Item (Lower)S;16;Menu Item (Find)S;16;Menu Item (Copy)S;32;Menu Item (Spelling and Grammar)S;1;9S;14;Table Column-5S;8;MainMenuS;32;Menu Item (About NewApplication)S;1;2S;15;Window (Window)S;20;Menu Item (Services)S;13;Menu (Window)S;11;Menu (Edit)S;14;Table Column-6S;11;Separator-3S;26;Menu Item (Start Speaking)S;11;Menu (Text)S;29;Text Field Cell (Text Cell)-1S;1;8S;18;Menu (Open Recent)S;11;Menu (Kern)S;11;Separator-5S;20;Menu Item (Minimize)S;17;Vertical ScrollerS;14;Table Column-7S;28;Menu Item (Smart Copy/Paste)S;18;Menu Item (Bigger)S;22;Menu Item (Show Ruler)S;29;Text Field Cell (Text Cell)-9S;18;Menu Item (Loosen)S;22;Menu Item (Select All)S;19;Menu Item (Use All)S;25;Menu Item (Use Default)-1S;27;Menu (Spelling and Grammar)S;29;Text Field Cell (Text Cell)-2S;11;Menu (File)S;23;Menu Item (Open Recent)S;19;Menu Item (Smaller)S;11;Separator-4S;14;Table Column-8S;14;Table Column-9S;34;Menu Item (Use Selection for Find)S;15;Menu (Ligature)S;29;Text Field Cell (Text Cell)-3S;14;App ControllerS;23;Menu Item (Superscript)S;16;Menu Item (Redo)S;30;Text Field Cell (Text Cell)-10S;13;Menu (Speech)S;24;Menu Item (Smart Quotes)S;26;Menu Item (NewApplication)S;10;Table ViewS;16;Menu Item (Zoom)S;22;Menu Item (Copy Style)S;12;Content ViewS;26;Menu Item (Show Spelling…)S;23;Menu Item (Align Right)S;21;Menu Item (Underline)S;18;Menu Item (Window)S;17;Menu Item (Raise)S;16;Menu Item (Edit)S;11;Menu (Find)S;20;Menu Item (Show All)S;1;7S;15;Table Column-10S;18;Menu Item (Format)S;29;Menu Item (Jump to Selection)S;20;Menu Item (Baseline)S;39;Menu Item (Check Spelling While Typing)S;39;Menu Item (Check Grammar With Spelling)S;26;Menu Item (Check Spelling)S;3;1-1S;29;Text Field Cell (Text Cell)-6S;12;Separator-10S;21;Menu Item (Find Next)S;20;Menu Item (Use None)S;22;Menu Item (Copy Ruler)S;11;Menu (Font)S;22;Menu Item (Show Fonts)S;25;Menu Item (Find Previous)S;16;Menu Item (Bold)S;11;Separator-7S;27;Text Field Cell (Text Cell)S;21;Menu Item (Subscript)S;23;Menu Item (Show Colors)S;23;Menu Item (Paste Ruler)S;1;6S;12;Separator-11S;15;Menu (Services)S;3;121S;22;Menu Item (Clear Menu)S;17;Menu Item (Paste)S;11;Separator-6D;K;10;$classnameS;22;_CPCibControlConnectorK;8;$classesA;S;22;_CPCibControlConnectorS;15;_CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;55E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;748E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;142E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;749E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;103E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;750E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;32E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;751E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;52E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;752E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;96E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;753E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;35E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;754E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;131E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;755E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;42E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;756E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;63E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;757E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;120E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;758E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;147E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;759E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;67E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;760E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;80E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;761E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;158E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;762E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;107E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;763E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;78E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;764E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;144E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;765E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;33E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;766E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;59E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;767E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;128E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;768E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;138E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;769E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;27E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;770E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;145E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;771E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;127E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;772E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;146E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;773E;E;D;K;10;$classnameS;21;_CPCibOutletConnectorK;8;$classesA;S;21;_CPCibOutletConnectorS;15;_CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;346E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;119E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;774E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;66E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;775E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;41E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;776E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;61E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;777E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;133E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;778E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;69E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;779E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;165E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;780E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;781E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;150E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;782E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;783E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;123E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;784E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;106E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;785E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;109E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;786E;E;D;K;6;$classD;K;6;CP$UIDd;3;346E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;126E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;119E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;787E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;65E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;788E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;73E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;789E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;46E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;790E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;121E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;791E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;58E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;792E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;36E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;793E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;135E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;794E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;795E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;164E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;796E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;72E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;797E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;28E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;798E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;159E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;799E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;26E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;800E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;54E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;56E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;801E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;94E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;802E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;132E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;803E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;100E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;804E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;85E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;16E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;805E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;82E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;806E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;157E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;807E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;108E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;808E;E;D;K;6;$classD;K;6;CP$UIDd;3;346E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;119E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;88E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;809E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;151E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;810E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;105E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;811E;E;d;3;370d;3;439d;3;396d;3;348d;3;145d;3;202d;3;405d;3;489d;3;211d;3;483d;3;479d;3;355d;3;443d;3;347d;3;391d;3;393d;3;475d;3;349d;3;356d;3;382d;2;-3d;3;440d;3;225d;3;112d;3;478d;3;486d;3;297d;3;418d;3;472d;3;142d;3;362d;3;354d;3;227d;3;377d;3;381d;3;460d;3;298d;2;72d;3;485d;3;218d;3;197d;3;471d;3;127d;2;29d;3;131d;2;58d;3;371d;2;24d;3;205d;3;235d;3;480d;3;379d;3;364d;2;80d;3;125d;3;366d;3;214d;3;350d;3;461d;3;467d;3;419d;3;198d;3;445d;3;363d;3;476d;3;395d;3;477d;3;466d;3;221d;3;411d;3;468d;3;407d;3;450d;3;470d;3;212d;3;449d;3;427d;3;367d;3;239d;3;228d;3;403d;3;204d;3;372d;3;383d;3;392d;2;19d;3;217d;3;437d;3;210d;3;375d;3;433d;3;346d;3;201d;3;474d;3;208d;3;388d;3;389d;3;213d;3;401d;3;374d;3;448d;3;444d;2;78d;3;400d;3;368d;3;126d;3;429d;3;462d;3;376d;3;380d;2;77d;3;111d;3;144d;2;83d;2;57d;3;209d;2;75d;2;86d;3;441d;2;39d;2;87d;3;134d;1;5d;3;149d;3;447d;2;74d;3;295d;3;404d;3;482d;3;430d;3;296d;3;397d;3;195d;3;373d;3;136d;3;207d;3;431d;3;413d;3;378d;3;398d;3;226d;3;143d;3;245d;3;406d;3;416d;3;410d;3;465d;3;103d;3;199d;3;488d;3;216d;3;240d;2;82d;3;106d;3;223d;3;473d;3;236d;3;196d;3;241d;3;415d;2;23d;3;481d;3;394d;3;232d;3;385d;3;426d;3;224d;3;442d;3;434d;3;414d;3;412d;3;200d;3;357d;2;81d;3;124d;3;428d;2;92d;3;360d;3;436d;3;215d;3;222d;3;351d;2;56d;3;463d;3;193d;2;37d;3;409d;3;432d;3;220d;3;459d;3;230d;3;150d;2;79d;3;399d;3;469d;3;219d;3;365d;3;446d;2;73d;3;402d;3;233d;3;417d;3;386d;3;484d;3;390d;3;451d;3;408d;3;384d;3;387d;3;438d;3;130d;3;231d;3;129d;3;435d;3;203d;3;206S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;88E;E;E;S;19;{{1, 1}, {476, 17}}S;19;{{0, 0}, {476, 17}}d;1;8S;6;normald;1;0S;29;_horizontalScrollerDidScroll:d;1;4f;18;0.6888567209243774S;6;FormatD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;60E;E;E;T;S;0;F;S;13;SubstitutionsS;14;submenuAction:S;10;Align LeftS;13;Page Setup...S;19;NewApplication HelpS;4;FileS;14;NewApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;54E;E;E;S;11;Hide OthersS;6;DeleteS;8;BaselineD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;78E;E;E;S;5;Find…S;4;SaveS;6;Speechd;2;64d;2;10d;22;3.4028230607370965e+38S;19;Hide NewApplicationS;18;Bring All to FrontS;4;ViewS;11;Paste StyleD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;72E;E;E;S;4;KernS;6;ItalicS;13;Stop SpeakingD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;2;66E;E;E;S;19;Quit NewApplicationS;4;UndoS;7;JustifyS;15;Revert to SavedS;8;Use NoneS;4;TextS;12;Show ToolbarS;8;LigatureS;7;TightenS;11;Use DefaultS;11;Smart LinksS;4;FontS;6;CenterS;22;{{-1, -1}, {493, 365}}S;20;{{0, 0}, {493, 365}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;661E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;20E;E;E;d;2;18D;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;660E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;71E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;812E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;813E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;814E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;71E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;605E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;816E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;606E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;3;126E;E;S;18;Customize Toolbar…S;5;Open…d;2;69d;2;40d;4;1000S;4;HelpS;3;CutS;5;LowerS;4;FindS;4;CopyS;20;Spelling and GrammarS;3;NewS;9;AMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;2;76E;E;E;S;20;About NewApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;28E;E;E;S;26;{3.40282e+38, 3.40282e+38}S;8;CPWindowS;24;{{335, 128}, {491, 363}}d;1;7S;6;WindowS;8;ServicesD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;2;42E;E;E;S;4;EditD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;37E;E;E;S;14;Start SpeakingD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;159E;E;E;S;8;Save As…S;11;Open RecentD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;164E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;3;106E;E;E;S;8;MinimizeS;22;{{477, 347}, {15, 17}}S;18;{{0, 0}, {15, 17}}S;17;disabled+verticalf;18;0.9971429109573364S;16;Smart Copy/PasteS;6;BiggerS;10;Show RulerS;6;LoosenS;10;Select AllS;7;Use AllD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;3;160E;E;E;S;7;Smallerd;2;67S;22;Use Selection for FindD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;3;108E;E;E;S;13;AppControllerS;11;SuperscriptS;4;RedoD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;52E;E;E;S;12;Smart QuotesS;20;{{0, 0}, {691, 348}}d;2;17S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;74E;E;E;S;4;ZoomS;10;Copy StyleS;20;{{0, 0}, {491, 363}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;71E;E;E;S;14;Show Spelling…S;11;Align RightS;9;UnderlineS;5;RaiseD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;142E;E;E;S;8;Show AllS;17;Jump to SelectionS;27;Check Spelling While TypingS;27;Check Grammar With SpellingS;14;Check SpellingS;5;CloseS;9;Find NextS;10;Copy RulerD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;2;46E;E;E;S;10;Show FontsS;13;Find PreviousS;4;BoldS;9;SubscriptS;11;Show ColorsS;11;Paste RulerS;6;Print…D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;S;12;Preferences…S;10;Clear MenuS;5;PasteS;5;undo:S;29;centerSelectionInVisibleArea:S;24;toggleSmartInsertDelete:S;22;hideOtherApplications:S;13;stopSpeaking:S;15;saveDocumentAs:S;23;performFindPanelAction:S;15;showGuessPanel:S;15;arrangeInFront:S;15;tightenKerning:S;12;superscript:S;13;performClose:S;19;useStandardKerning:S;5;copy:S;21;orderFrontColorPanel:S;10;selectAll:S;14;lowerBaseline:S;30;toggleContinuousSpellChecking:S;7;delete:S;17;turnOffLigatures:S;9;copyFont:S;22;unhideAllApplications:S;14;runPageLayout:S;22;toggleGrammarChecking:S;12;performZoom:S;14;checkSpelling:S;8;delegateS;29;toggleAutomaticLinkDetection:S;5;hide:S;19;toggleToolbarShown:S;10;underline:S;12;alignCenter:S;6;paste:S;15;alignJustified:S;15;turnOffKerning:S;4;cut:S;33;toggleAutomaticQuoteSubstitution:S;14;loosenKerning:S;21;useStandardLigatures:S;10;dataSourceS;9;unscript:S;13;openDocument:S;10;pasteFont:S;5;redo:S;22;revertDocumentToSaved:S;13;saveDocument:S;14;raiseBaseline:S;6;print:S;21;clearRecentDocuments:S;31;runToolbarCustomizationPalette:S;9;showHelp:S;11;pasteRuler:S;10;alignLeft:S;10;terminate:S;14;startSpeaking:S;11;alignRight:S;19;performMiniaturize:S;29;orderFrontStandardAboutPanel:S;12;newDocument:S;10;subscript:S;16;useAllLigatures:S;9;theWindowS;10;copyRuler:S;12;toggleRuler:S;21;{{1, 16}, {476, 348}}S;20;{{0, 0}, {476, 348}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;126E;E;E;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;815E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;817E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;818E;D;K;6;CP$UIDd;3;818E;D;K;6;CP$UIDd;3;818E;D;K;6;CP$UIDd;3;819E;E;E;f;10;0.66666669d;1;1E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E;
\ No newline at end of file
+280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;4E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;7E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;9E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;2;10E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;2;11E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;2;12E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;2;13E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;2;14E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;16E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;18E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;195E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;205E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;225E;D;K;6;CP$UIDd;3;226E;D;K;6;CP$UIDd;3;227E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;3;229E;D;K;6;CP$UIDd;3;230E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;232E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;234E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;236E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;241E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;243E;D;K;6;CP$UIDd;3;244E;D;K;6;CP$UIDd;3;245E;D;K;6;CP$UIDd;3;246E;D;K;6;CP$UIDd;3;247E;D;K;6;CP$UIDd;3;248E;D;K;6;CP$UIDd;3;249E;D;K;6;CP$UIDd;3;250E;D;K;6;CP$UIDd;3;251E;D;K;6;CP$UIDd;3;252E;D;K;6;CP$UIDd;3;253E;D;K;6;CP$UIDd;3;254E;D;K;6;CP$UIDd;3;255E;D;K;6;CP$UIDd;3;256E;D;K;6;CP$UIDd;3;257E;D;K;6;CP$UIDd;3;258E;D;K;6;CP$UIDd;3;259E;D;K;6;CP$UIDd;3;260E;D;K;6;CP$UIDd;3;261E;D;K;6;CP$UIDd;3;262E;D;K;6;CP$UIDd;3;263E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;266E;D;K;6;CP$UIDd;3;267E;D;K;6;CP$UIDd;3;268E;D;K;6;CP$UIDd;3;269E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;271E;D;K;6;CP$UIDd;3;272E;D;K;6;CP$UIDd;3;273E;D;K;6;CP$UIDd;3;274E;D;K;6;CP$UIDd;3;275E;D;K;6;CP$UIDd;3;276E;D;K;6;CP$UIDd;3;277E;D;K;6;CP$UIDd;3;278E;D;K;6;CP$UIDd;3;279E;D;K;6;CP$UIDd;3;280E;D;K;6;CP$UIDd;3;281E;D;K;6;CP$UIDd;3;282E;D;K;6;CP$UIDd;3;283E;D;K;6;CP$UIDd;3;284E;D;K;6;CP$UIDd;3;285E;D;K;6;CP$UIDd;3;286E;D;K;6;CP$UIDd;3;287E;D;K;6;CP$UIDd;3;288E;D;K;6;CP$UIDd;3;289E;D;K;6;CP$UIDd;3;290E;D;K;6;CP$UIDd;3;291E;D;K;6;CP$UIDd;3;292E;D;K;6;CP$UIDd;3;293E;D;K;6;CP$UIDd;3;294E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;296E;D;K;6;CP$UIDd;3;297E;D;K;6;CP$UIDd;3;298E;D;K;6;CP$UIDd;3;299E;D;K;6;CP$UIDd;3;300E;D;K;6;CP$UIDd;3;301E;D;K;6;CP$UIDd;3;302E;D;K;6;CP$UIDd;3;303E;D;K;6;CP$UIDd;3;304E;D;K;6;CP$UIDd;3;305E;D;K;6;CP$UIDd;3;306E;D;K;6;CP$UIDd;3;307E;D;K;6;CP$UIDd;3;308E;D;K;6;CP$UIDd;3;309E;D;K;6;CP$UIDd;3;310E;D;K;6;CP$UIDd;3;311E;D;K;6;CP$UIDd;3;312E;D;K;6;CP$UIDd;3;313E;D;K;6;CP$UIDd;3;314E;D;K;6;CP$UIDd;3;315E;D;K;6;CP$UIDd;3;316E;D;K;6;CP$UIDd;3;317E;D;K;6;CP$UIDd;3;318E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;320E;D;K;6;CP$UIDd;3;321E;D;K;6;CP$UIDd;3;322E;D;K;6;CP$UIDd;3;323E;D;K;6;CP$UIDd;3;324E;D;K;6;CP$UIDd;3;325E;D;K;6;CP$UIDd;3;326E;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;3;328E;D;K;6;CP$UIDd;3;329E;D;K;6;CP$UIDd;3;330E;D;K;6;CP$UIDd;3;331E;D;K;6;CP$UIDd;3;332E;D;K;6;CP$UIDd;3;333E;D;K;6;CP$UIDd;3;334E;D;K;6;CP$UIDd;3;336E;D;K;6;CP$UIDd;3;337E;D;K;6;CP$UIDd;3;338E;D;K;6;CP$UIDd;3;339E;D;K;6;CP$UIDd;3;340E;D;K;6;CP$UIDd;3;341E;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;3;343E;D;K;6;CP$UIDd;3;344E;D;K;6;CP$UIDd;3;345E;D;K;6;CP$UIDd;3;346E;D;K;6;CP$UIDd;3;347E;D;K;6;CP$UIDd;3;348E;D;K;6;CP$UIDd;3;349E;D;K;6;CP$UIDd;3;350E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;352E;D;K;6;CP$UIDd;3;353E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;3;356E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;358E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;360E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;362E;D;K;6;CP$UIDd;3;363E;D;K;6;CP$UIDd;3;364E;D;K;6;CP$UIDd;3;365E;D;K;6;CP$UIDd;3;366E;D;K;6;CP$UIDd;3;367E;D;K;6;CP$UIDd;3;368E;D;K;6;CP$UIDd;3;369E;D;K;6;CP$UIDd;3;370E;D;K;6;CP$UIDd;3;371E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;373E;D;K;6;CP$UIDd;3;374E;D;K;6;CP$UIDd;3;375E;D;K;6;CP$UIDd;3;376E;D;K;6;CP$UIDd;3;377E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;3;379E;D;K;6;CP$UIDd;3;380E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;383E;D;K;6;CP$UIDd;3;384E;E;E;S;16;IBCocoaFrameworkd;3;490D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;3;111E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;3;362E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;3;332E;D;K;6;CP$UIDd;3;373E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;3;363E;D;K;6;CP$UIDd;3;364E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;322E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;324E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;328E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;3;336E;D;K;6;CP$UIDd;3;338E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;371E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;3;343E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;326E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;380E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;339E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;325E;D;K;6;CP$UIDd;3;323E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;347E;D;K;6;CP$UIDd;3;367E;D;K;6;CP$UIDd;3;375E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;340E;D;K;6;CP$UIDd;3;346E;D;K;6;CP$UIDd;3;353E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;366E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;344E;D;K;6;CP$UIDd;3;337E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;365E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;3;368E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;330E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;3;376E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;383E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;3;341E;D;K;6;CP$UIDd;3;356E;D;K;6;CP$UIDd;3;377E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;3;334E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;3;345E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;3;352E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;3;320E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;348E;D;K;6;CP$UIDd;3;349E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;358E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;374E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;370E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;321E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;329E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;384E;D;K;6;CP$UIDd;3;369E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;360E;D;K;6;CP$UIDd;3;331E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;350E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;333E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;379E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;385E;D;K;6;CP$UIDd;3;386E;D;K;6;CP$UIDd;3;387E;D;K;6;CP$UIDd;3;388E;D;K;6;CP$UIDd;3;389E;D;K;6;CP$UIDd;3;390E;D;K;6;CP$UIDd;3;391E;D;K;6;CP$UIDd;3;392E;D;K;6;CP$UIDd;3;393E;D;K;6;CP$UIDd;3;394E;D;K;6;CP$UIDd;3;395E;D;K;6;CP$UIDd;3;396E;D;K;6;CP$UIDd;3;397E;D;K;6;CP$UIDd;3;398E;D;K;6;CP$UIDd;3;399E;D;K;6;CP$UIDd;3;400E;D;K;6;CP$UIDd;3;401E;D;K;6;CP$UIDd;3;402E;D;K;6;CP$UIDd;3;403E;D;K;6;CP$UIDd;3;404E;D;K;6;CP$UIDd;3;405E;D;K;6;CP$UIDd;3;406E;D;K;6;CP$UIDd;3;407E;D;K;6;CP$UIDd;3;408E;D;K;6;CP$UIDd;3;409E;D;K;6;CP$UIDd;3;410E;D;K;6;CP$UIDd;3;411E;D;K;6;CP$UIDd;3;412E;D;K;6;CP$UIDd;3;413E;D;K;6;CP$UIDd;3;414E;D;K;6;CP$UIDd;3;415E;D;K;6;CP$UIDd;3;416E;D;K;6;CP$UIDd;3;417E;D;K;6;CP$UIDd;3;418E;D;K;6;CP$UIDd;3;419E;D;K;6;CP$UIDd;3;420E;D;K;6;CP$UIDd;3;421E;D;K;6;CP$UIDd;3;422E;D;K;6;CP$UIDd;3;423E;D;K;6;CP$UIDd;3;424E;D;K;6;CP$UIDd;3;425E;D;K;6;CP$UIDd;3;426E;D;K;6;CP$UIDd;3;427E;D;K;6;CP$UIDd;3;428E;D;K;6;CP$UIDd;3;429E;D;K;6;CP$UIDd;3;430E;D;K;6;CP$UIDd;3;431E;D;K;6;CP$UIDd;3;432E;D;K;6;CP$UIDd;3;433E;D;K;6;CP$UIDd;3;434E;D;K;6;CP$UIDd;3;435E;D;K;6;CP$UIDd;3;436E;D;K;6;CP$UIDd;3;437E;D;K;6;CP$UIDd;3;438E;D;K;6;CP$UIDd;3;439E;D;K;6;CP$UIDd;3;440E;D;K;6;CP$UIDd;3;441E;D;K;6;CP$UIDd;3;442E;D;K;6;CP$UIDd;3;443E;D;K;6;CP$UIDd;3;444E;D;K;6;CP$UIDd;3;445E;D;K;6;CP$UIDd;3;446E;D;K;6;CP$UIDd;3;447E;D;K;6;CP$UIDd;3;448E;D;K;6;CP$UIDd;3;449E;D;K;6;CP$UIDd;3;450E;D;K;6;CP$UIDd;3;451E;D;K;6;CP$UIDd;3;452E;D;K;6;CP$UIDd;3;453E;D;K;6;CP$UIDd;3;454E;D;K;6;CP$UIDd;3;455E;D;K;6;CP$UIDd;3;456E;D;K;6;CP$UIDd;3;457E;D;K;6;CP$UIDd;3;458E;D;K;6;CP$UIDd;3;459E;D;K;6;CP$UIDd;3;460E;D;K;6;CP$UIDd;3;461E;D;K;6;CP$UIDd;3;462E;D;K;6;CP$UIDd;3;463E;D;K;6;CP$UIDd;3;464E;D;K;6;CP$UIDd;3;465E;D;K;6;CP$UIDd;3;466E;D;K;6;CP$UIDd;3;467E;D;K;6;CP$UIDd;3;468E;D;K;6;CP$UIDd;3;469E;D;K;6;CP$UIDd;3;470E;D;K;6;CP$UIDd;3;471E;D;K;6;CP$UIDd;3;472E;D;K;6;CP$UIDd;3;473E;D;K;6;CP$UIDd;3;474E;D;K;6;CP$UIDd;3;475E;D;K;6;CP$UIDd;3;476E;D;K;6;CP$UIDd;3;477E;D;K;6;CP$UIDd;3;478E;D;K;6;CP$UIDd;3;479E;D;K;6;CP$UIDd;3;480E;D;K;6;CP$UIDd;3;481E;D;K;6;CP$UIDd;3;482E;D;K;6;CP$UIDd;3;483E;D;K;6;CP$UIDd;3;484E;D;K;6;CP$UIDd;3;485E;D;K;6;CP$UIDd;3;486E;D;K;6;CP$UIDd;3;487E;D;K;6;CP$UIDd;3;488E;D;K;6;CP$UIDd;3;489E;D;K;6;CP$UIDd;3;490E;D;K;6;CP$UIDd;3;491E;D;K;6;CP$UIDd;3;492E;D;K;6;CP$UIDd;3;493E;D;K;6;CP$UIDd;3;494E;D;K;6;CP$UIDd;3;495E;D;K;6;CP$UIDd;3;496E;D;K;6;CP$UIDd;3;497E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;499E;D;K;6;CP$UIDd;3;500E;D;K;6;CP$UIDd;3;501E;D;K;6;CP$UIDd;3;502E;D;K;6;CP$UIDd;3;503E;D;K;6;CP$UIDd;3;504E;D;K;6;CP$UIDd;3;505E;D;K;6;CP$UIDd;3;506E;D;K;6;CP$UIDd;3;507E;D;K;6;CP$UIDd;3;508E;D;K;6;CP$UIDd;3;509E;D;K;6;CP$UIDd;3;510E;D;K;6;CP$UIDd;3;511E;D;K;6;CP$UIDd;3;512E;D;K;6;CP$UIDd;3;513E;D;K;6;CP$UIDd;3;514E;D;K;6;CP$UIDd;3;515E;D;K;6;CP$UIDd;3;516E;D;K;6;CP$UIDd;3;517E;D;K;6;CP$UIDd;3;518E;D;K;6;CP$UIDd;3;519E;D;K;6;CP$UIDd;3;520E;D;K;6;CP$UIDd;3;521E;D;K;6;CP$UIDd;3;522E;D;K;6;CP$UIDd;3;523E;D;K;6;CP$UIDd;3;524E;D;K;6;CP$UIDd;3;525E;D;K;6;CP$UIDd;3;526E;D;K;6;CP$UIDd;3;527E;D;K;6;CP$UIDd;3;528E;D;K;6;CP$UIDd;3;529E;D;K;6;CP$UIDd;3;530E;D;K;6;CP$UIDd;3;531E;D;K;6;CP$UIDd;3;532E;D;K;6;CP$UIDd;3;533E;D;K;6;CP$UIDd;3;534E;D;K;6;CP$UIDd;3;535E;D;K;6;CP$UIDd;3;536E;D;K;6;CP$UIDd;3;537E;D;K;6;CP$UIDd;3;538E;D;K;6;CP$UIDd;3;539E;D;K;6;CP$UIDd;3;540E;D;K;6;CP$UIDd;3;541E;D;K;6;CP$UIDd;3;542E;D;K;6;CP$UIDd;3;543E;D;K;6;CP$UIDd;3;544E;D;K;6;CP$UIDd;3;545E;D;K;6;CP$UIDd;3;546E;D;K;6;CP$UIDd;3;547E;D;K;6;CP$UIDd;3;548E;D;K;6;CP$UIDd;3;549E;D;K;6;CP$UIDd;3;550E;D;K;6;CP$UIDd;3;551E;D;K;6;CP$UIDd;3;552E;D;K;6;CP$UIDd;3;553E;D;K;6;CP$UIDd;3;554E;D;K;6;CP$UIDd;3;555E;D;K;6;CP$UIDd;3;556E;D;K;6;CP$UIDd;3;557E;D;K;6;CP$UIDd;3;558E;D;K;6;CP$UIDd;3;559E;D;K;6;CP$UIDd;3;560E;D;K;6;CP$UIDd;3;561E;D;K;6;CP$UIDd;3;562E;D;K;6;CP$UIDd;3;563E;D;K;6;CP$UIDd;3;564E;D;K;6;CP$UIDd;3;565E;D;K;6;CP$UIDd;3;566E;D;K;6;CP$UIDd;3;567E;D;K;6;CP$UIDd;3;568E;D;K;6;CP$UIDd;3;569E;D;K;6;CP$UIDd;3;570E;D;K;6;CP$UIDd;3;571E;D;K;6;CP$UIDd;3;572E;D;K;6;CP$UIDd;3;573E;D;K;6;CP$UIDd;3;574E;D;K;6;CP$UIDd;3;575E;D;K;6;CP$UIDd;3;576E;D;K;6;CP$UIDd;3;577E;D;K;6;CP$UIDd;3;578E;D;K;6;CP$UIDd;3;579E;D;K;6;CP$UIDd;3;580E;D;K;6;CP$UIDd;3;581E;D;K;6;CP$UIDd;3;582E;D;K;6;CP$UIDd;3;583E;D;K;6;CP$UIDd;3;584E;D;K;6;CP$UIDd;3;585E;D;K;6;CP$UIDd;3;586E;D;K;6;CP$UIDd;3;587E;D;K;6;CP$UIDd;3;588E;D;K;6;CP$UIDd;3;589E;D;K;6;CP$UIDd;3;590E;D;K;6;CP$UIDd;3;591E;D;K;6;CP$UIDd;3;592E;D;K;6;CP$UIDd;3;593E;D;K;6;CP$UIDd;3;594E;D;K;6;CP$UIDd;3;595E;D;K;6;CP$UIDd;3;596E;D;K;6;CP$UIDd;3;597E;D;K;6;CP$UIDd;3;598E;D;K;6;CP$UIDd;3;599E;D;K;6;CP$UIDd;3;600E;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;601E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;602E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;603E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;35E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;605E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;606E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;607E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;608E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;609E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;610E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;612E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;46E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;3;165E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;613E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;613E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;613E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;613E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;614E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;614E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;615E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;616E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;617E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;618E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;619E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;38E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;620E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;621E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;621E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;622E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;623E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;610E;E;D;K;10;$classnameS;11;CPTableViewK;8;$classesA;S;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;31E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;612E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;624E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;624E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;612E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;623E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;610E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;625E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;626E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;627E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;615E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;614E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;628E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;629E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;56E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;630E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;72E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;603E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;631E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;632E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;633E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;634E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;619E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;635E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;636E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;637E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;216E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;639E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;640E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;641E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;23E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;642E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;643E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;23E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;623E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;644E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;645E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;23E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;646E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;625E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;645E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;647E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;648E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;133E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;56E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;649E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;87E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;650E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;197E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;652E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;151E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;653E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;654E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;171E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;655E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;151E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;629E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;656E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;657E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;311E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;658E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;659E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;660E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;661E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;662E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;663E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;664E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;665E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;151E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;666E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;667E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;668E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;26E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;186E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;669E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;670E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;671E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;630E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;672E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;673E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;140E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;674E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;675E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;101E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;676E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;677E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;678E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;209E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;679E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;680E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;632E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;36E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;681E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;682E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;151E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;683E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;649E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;685E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;223E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;686E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;687E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;688E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;689E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;690E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;691E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;30E;K;41;_CPCibWindowTemplateWindowIsFullBridgeKeyD;K;6;CP$UIDd;3;615E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;692E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;693E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;693E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;99E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;694E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;695E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;636E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;39E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;696E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;697E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;691E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;698E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;699E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;36E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;700E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;701E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;36E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;702E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;601E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;703E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;135E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;56E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;704E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;705E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;140E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;706E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;707E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;708E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;709E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;710E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;711E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;712E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;661E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;62E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;713E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;714E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;150E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;706E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;111E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;715E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;101E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;716E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;101E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;717E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;99E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;718E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;696E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;99E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;717E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;719E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;101E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;717E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;720E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;721E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;154E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;648E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;722E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;723E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;703E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;724E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;725E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;140E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;617E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;26E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;726E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;705E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;727E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;728E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;150E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;729E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;730E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;287E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;731E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;710E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;711E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;732E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;150E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;733E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;151E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;734E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;714E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;735E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;652E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;736E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;691E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;101E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;721E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;737E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;738E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;36E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;739E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;282E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;740E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;99E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;741E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;742E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;743E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;744E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;99E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;745E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;23E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;746E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;747E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;23E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;623E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;610E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;645E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;23E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;646E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;625E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;645E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;748E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;749E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;S;20;Menu Item (Services)S;3;121S;33;Bordered Scroll View (Table View)S;20;Menu Item (Show All)S;1;2S;16;Menu Item (File)S;22;Menu Item (Select All)S;12;Content ViewS;10;Table ViewS;30;Text Field Cell (Text Cell)-10S;18;Menu Item (Format)S;23;Menu Item (Open Recent)S;15;Menu (Services)S;20;Menu (Substitutions)S;17;Menu Item (Find…)S;11;Menu (File)S;21;Menu (NewApplication)S;17;Table Column (10)S;16;Menu Item (Bold)S;1;9S;3;1-1S;29;Text Field Cell (Text Cell)-7S;29;Text Field Cell (Text Cell)-9S;27;Text Field Cell (Text Cell)S;17;Vertical ScrollerS;16;Menu Item (Text)S;20;Menu Item (Baseline)S;15;Menu Item (Cut)S;16;Table Column (5)S;32;Menu Item (Spelling and Grammar)S;1;5S;23;Menu Item (Paste Style)S;16;Table Column (2)S;26;Menu Item (Check Spelling)S;13;Menu (Format)S;23;Menu Item (Hide Others)S;16;Table Column (8)S;32;Menu Item (About NewApplication)S;22;Menu Item (Show Ruler)S;23;Menu Item (Paste Ruler)S;15;Menu (Ligature)S;17;Menu Item (Lower)S;1;6S;26;Menu Item (Show Spelling…)S;29;Text Field Cell (Text Cell)-2S;8;MainMenuS;31;Menu Item (NewApplication Help)S;16;Table Column (9)S;22;Menu Item (Clear Menu)S;2;10S;17;Menu Item (Paste)S;18;Menu (Open Recent)S;26;Menu Item (Start Speaking)S;21;Menu Item (Subscript)S;16;Menu Item (Zoom)S;16;Menu Item (Undo)S;1;3S;16;Table Column (4)S;16;Table Column (6)S;19;Menu Item (Justify)S;22;Menu Item (Align Left)S;25;Menu Item (Substitutions)S;23;Menu Item (Align Right)S;39;Menu Item (Check Spelling While Typing)S;34;Menu Item (Use Selection for Find)S;9;SeparatorS;12;File's OwnerS;29;Text Field Cell (Text Cell)-1S;15;Menu (Baseline)S;16;Table Column (3)S;22;Menu Item (Copy Style)S;15;Window (Window)S;18;Menu Item (Center)S;20;Menu Item (Use None)S;22;Menu Item (Use None)-1S;11;Separator-8S;18;Menu Item (Bigger)S;21;Menu Item (Underline)S;26;Menu Item (NewApplication)S;11;Menu (Kern)S;3;2-1S;13;Menu (Window)S;23;Menu Item (Smart Links)S;21;Menu Item (Find Next)S;11;Separator-4S;28;Menu Item (Smart Copy/Paste)S;17;Menu Item (Open…)S;11;ApplicationS;16;Menu Item (Font)S;4;1111S;18;Menu Item (Speech)S;11;Menu (Find)S;16;Table Column (0)S;23;Menu Item (Superscript)S;11;Separator-1S;20;Menu Item (Ligature)S;14;App ControllerS;16;Menu Item (View)S;29;Text Field Cell (Text Cell)-4S;16;Menu Item (Find)S;29;Text Field Cell (Text Cell)-6S;20;Menu Item (Minimize)S;17;Menu Item (Raise)S;11;Separator-6S;25;Menu Item (Use Default)-2S;25;Menu Item (Find Previous)S;16;Menu Item (Kern)S;25;Menu Item (Use Default)-1S;30;Menu Item (Bring All to Front)S;11;Separator-5S;23;Menu Item (Use Default)S;18;Menu Item (Delete)S;11;Separator-2S;16;Menu Item (Edit)S;29;Text Field Cell (Text Cell)-5S;1;7S;11;Menu (Text)S;16;Menu Item (Copy)S;11;Menu (Font)S;25;Menu Item (Stop Speaking)S;1;1S;22;Menu Item (Copy Ruler)S;11;Separator-7S;13;Menu (Speech)S;24;Menu Item (Show Toolbar)S;11;Separator-9S;16;Menu Item (Redo)S;12;Separator-10S;23;Menu Item (Show Colors)S;16;Table Column (1)S;30;Menu Item (Customize Toolbar…)S;39;Menu Item (Check Grammar With Spelling)S;19;Menu Item (Use All)S;11;Menu (View)S;27;Menu (Spelling and Grammar)S;12;Separator-11S;18;Menu Item (Window)S;11;Menu (Edit)S;24;Menu Item (Smart Quotes)S;18;Menu Item (Italic)S;16;Table Column (7)S;29;Text Field Cell (Text Cell)-8S;29;Text Field Cell (Text Cell)-3S;18;Menu Item (Loosen)S;1;8S;22;Menu Item (Show Fonts)S;19;Menu Item (Smaller)S;19;Menu Item (Tighten)S;31;Menu Item (Hide NewApplication)S;11;Separator-3S;19;Horizontal ScrollerS;29;Menu Item (Jump to Selection)D;K;10;$classnameS;22;_CPCibControlConnectorK;8;$classesA;S;22;_CPCibControlConnectorS;15;_CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;158E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;750E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;113E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;751E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;63E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;752E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;753E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;166E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;754E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;122E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;755E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;105E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;756E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;119E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;757E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;61E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;758E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;44E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;759E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;74E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;760E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;120E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;761E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;65E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;762E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;102E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;763E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;60E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;764E;E;D;K;10;$classnameS;21;_CPCibOutletConnectorK;8;$classesA;S;21;_CPCibOutletConnectorS;15;_CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;335E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;116E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;765E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;141E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;766E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;163E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;767E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;64E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;768E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;769E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;53E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;770E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;37E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;771E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;128E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;772E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;145E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;773E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;138E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;774E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;71E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;775E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;776E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;129E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;777E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;59E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;16E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;778E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;147E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;779E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;73E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;780E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;155E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;781E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;106E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;782E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;97E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;783E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;67E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;784E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;94E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;785E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;24E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;786E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;52E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;787E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;143E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;788E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;83E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;789E;E;D;K;6;$classD;K;6;CP$UIDd;3;335E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;116E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;91E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;790E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;148E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;791E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;109E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;107E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;792E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;149E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;793E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;81E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;794E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;69E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;795E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;796E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;159E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;797E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;126E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;798E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;70E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;799E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;134E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;800E;E;D;K;6;$classD;K;6;CP$UIDd;3;335E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;32E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;116E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;801E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;92E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;802E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;162E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;803E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;43E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;804E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;93E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;805E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;80E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;806E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;125E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;807E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;28E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;808E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;136E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;809E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;89E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;810E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;55E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;811E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;76E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;812E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;49E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;813E;E;d;3;129d;3;460d;3;347d;3;150d;3;230d;3;445d;2;83d;3;372d;3;449d;3;434d;3;480d;3;241d;3;209d;3;349d;2;81d;3;427d;3;485d;3;245d;2;82d;2;73d;3;472d;3;488d;3;448d;3;378d;3;404d;3;469d;3;451d;3;367d;3;376d;3;360d;3;410d;2;58d;2;78d;3;111d;3;224d;3;126d;3;408d;3;203d;3;196d;3;125d;3;239d;3;382d;2;75d;3;477d;3;437d;3;219d;3;348d;3;383d;3;144d;3;489d;3;476d;3;371d;3;393d;3;415d;3;392d;2;74d;2;24d;3;354d;3;206d;2;72d;2;-3d;3;220d;3;407d;3;370d;3;409d;3;295d;3;478d;3;450d;3;355d;2;23d;3;416d;3;227d;3;213d;3;412d;2;86d;3;236d;3;217d;3;438d;3;362d;3;379d;3;197d;3;368d;3;240d;3;373d;3;103d;3;396d;3;386d;3;212d;3;346d;3;401d;3;222d;3;226d;3;374d;3;466d;3;298d;3;127d;3;414d;3;200d;3;296d;3;402d;3;205d;3;459d;3;351d;3;391d;3;479d;3;433d;3;366d;3;482d;2;80d;3;389d;3;418d;3;149d;3;462d;3;428d;3;131d;3;106d;2;37d;3;231d;3;442d;3;198d;3;463d;3;375d;3;124d;3;130d;3;363d;2;57d;3;429d;3;390d;3;440d;3;467d;3;486d;3;223d;3;461d;3;399d;3;439d;3;199d;3;475d;3;216d;2;77d;3;201d;3;436d;3;441d;3;443d;3;145d;3;411d;3;385d;3;387d;3;481d;3;446d;3;204d;3;470d;2;29d;3;444d;3;483d;3;356d;3;112d;3;207d;3;473d;3;417d;3;380d;3;432d;3;221d;3;405d;3;435d;3;413d;3;471d;3;403d;3;381d;3;394d;2;56d;3;208d;3;235d;3;142d;3;350d;3;377d;3;136d;3;465d;3;211d;3;143d;3;398d;2;87d;3;484d;3;431d;3;218d;3;364d;2;92d;3;397d;3;430d;1;5d;3;193d;3;214d;3;228d;2;39d;3;406d;3;202d;3;474d;3;447d;3;426d;3;195d;2;79d;3;388d;3;365d;3;384d;3;297d;3;400d;3;215d;3;233d;2;19d;3;468d;3;225d;3;419d;3;395d;3;134d;3;357d;3;210d;3;232S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;91E;E;E;S;8;ServicesS;14;submenuAction:S;12;Preferences…S;22;{{-1, -1}, {493, 365}}S;20;{{0, 0}, {493, 365}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;612E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;3;165E;E;E;d;2;18S;6;normalD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;611E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;23E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;814E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;815E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;816E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;23E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;623E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;818E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;610E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;32E;E;d;2;10T;F;S;8;Show AllS;4;HelpD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;67E;E;E;S;4;FileS;10;Select AllS;20;{{0, 0}, {491, 363}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;23E;E;E;d;1;8S;20;{{0, 0}, {691, 348}}d;1;4d;2;17S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;41E;E;E;S;6;FormatS;11;Open RecentD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;S;13;SubstitutionsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;102E;E;E;S;5;Find…D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;64E;E;E;S;14;NewApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;109E;E;E;d;22;3.4028230607370965e+38S;4;BoldS;3;NewS;5;CloseS;22;{{477, 347}, {15, 17}}S;18;{{0, 0}, {15, 17}}S;17;disabled+verticald;1;0S;29;_horizontalScrollerDidScroll:f;18;0.9971429109573364S;4;TextS;8;BaselineS;3;Cutd;2;64S;20;Spelling and GrammarS;13;Page Setup...S;11;Paste StyleS;14;Check SpellingD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;2;47E;E;E;S;11;Hide OthersS;20;About NewApplicationS;10;Show RulerS;11;Paste RulerS;8;LigatureD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;149E;E;E;S;5;LowerS;6;Print…S;14;Show Spelling…S;9;AMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;137E;E;E;S;19;NewApplication HelpS;10;Clear MenuS;15;Revert to SavedS;5;PasteD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;69E;E;E;S;14;Start SpeakingS;9;SubscriptS;4;ZoomS;4;UndoS;4;SaveS;1;4S;7;JustifyS;10;Align LeftS;11;Align RightS;27;Check Spelling While TypingS;22;Use Selection for FindS;0;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;2;63E;E;E;S;10;Copy StyleS;26;{3.40282e+38, 3.40282e+38}S;8;CPWindowS;24;{{335, 128}, {491, 363}}d;1;7S;6;WindowS;6;CenterS;8;Use NoneS;6;BiggerS;9;UnderlineS;4;KernD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;158E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;126E;E;E;S;11;Smart LinksS;9;Find NextS;16;Smart Copy/PasteS;5;Open…S;4;FontS;19;Quit NewApplicationS;6;SpeechS;4;FindD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;3;166E;E;E;S;1;0d;2;69d;2;40d;4;1000S;11;SuperscriptS;13;AppControllerS;4;ViewS;8;MinimizeS;5;RaiseS;11;Use DefaultS;13;Find PreviousS;18;Bring All to FrontS;6;DeleteS;4;EditD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;2;61E;E;E;S;4;CopyD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;53E;E;E;S;13;Stop SpeakingS;10;Copy RulerD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;3;136E;E;E;S;12;Show ToolbarS;4;RedoS;11;Show Colorsd;2;67S;18;Customize Toolbar…S;27;Check Grammar With SpellingS;7;Use AllD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;147E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;148E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;3;110E;E;E;S;12;Smart QuotesS;6;ItalicS;6;LoosenS;8;Save As…S;10;Show FontsS;7;SmallerS;7;TightenS;19;Hide NewApplicationS;20;{{1, -1}, {476, 17}}S;19;{{0, 0}, {476, 17}}f;18;0.6888567209243774S;17;Jump to SelectionS;14;loosenKerning:S;12;superscript:S;14;lowerBaseline:S;13;saveDocument:S;29;centerSelectionInVisibleArea:S;19;useStandardKerning:S;24;toggleSmartInsertDelete:S;19;performMiniaturize:S;11;pasteRuler:S;13;performClose:S;10;subscript:S;14;raiseBaseline:S;15;showGuessPanel:S;29;toggleAutomaticLinkDetection:S;12;toggleRuler:S;8;delegateS;19;toggleToolbarShown:S;5;hide:S;6;print:S;30;toggleContinuousSpellChecking:S;10;pasteFont:S;23;performFindPanelAction:S;9;unscript:S;21;orderFrontColorPanel:S;10;copyRuler:S;6;paste:S;22;hideOtherApplications:S;7;delete:S;29;orderFrontStandardAboutPanel:S;31;runToolbarCustomizationPalette:S;14;startSpeaking:S;33;toggleAutomaticQuoteSubstitution:S;13;openDocument:S;10;underline:S;9;showHelp:S;15;turnOffKerning:S;22;unhideAllApplications:S;14;runPageLayout:S;5;redo:S;11;alignRight:S;9;theWindowS;22;toggleGrammarChecking:S;10;terminate:S;16;useAllLigatures:S;10;alignLeft:S;21;clearRecentDocuments:S;12;performZoom:S;15;saveDocumentAs:S;15;arrangeInFront:S;22;revertDocumentToSaved:S;5;copy:S;10;dataSourceS;12;alignCenter:S;15;tightenKerning:S;12;newDocument:S;17;turnOffLigatures:S;15;alignJustified:S;21;useStandardLigatures:S;10;selectAll:S;13;stopSpeaking:S;9;copyFont:S;14;checkSpelling:S;5;undo:S;4;cut:S;21;{{1, 16}, {476, 348}}S;20;{{0, 0}, {476, 348}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;32E;E;E;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;817E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;819E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;820E;D;K;6;CP$UIDd;3;820E;D;K;6;CP$UIDd;3;820E;D;K;6;CP$UIDd;3;821E;E;E;f;10;0.66666669d;1;1E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E;
\ No newline at end of file
diff --git a/TableCibTest/Resources/MainMenu.xib b/TableCibTest/Resources/MainMenu.xib
index 671d22a13..69234c332 100644
--- a/TableCibTest/Resources/MainMenu.xib
+++ b/TableCibTest/Resources/MainMenu.xib
@@ -8,7 +8,7 @@
353.00
YES
-
+
YES
@@ -1137,7 +1137,7 @@
256
- {691, 349}
+ {691, 348}
YES
@@ -1148,6 +1148,7 @@
YES
+ 0
6.900000e+01
4.000000e+01
1.000000e+03
@@ -1206,6 +1207,7 @@
+ 1
6.700000e+01
4.000000e+01
1.000000e+03
@@ -1232,6 +1234,7 @@
+ 2
6.400000e+01
1.000000e+01
3.402823e+38
@@ -1266,6 +1269,7 @@
+ 3
6.400000e+01
1.000000e+01
3.402823e+38
@@ -1292,6 +1296,7 @@
+ 4
6.400000e+01
1.000000e+01
3.402823e+38
@@ -1318,6 +1323,7 @@
+ 5
6.400000e+01
1.000000e+01
3.402823e+38
@@ -1344,6 +1350,7 @@
+ 6
6.400000e+01
1.000000e+01
3.402823e+38
@@ -1370,6 +1377,7 @@
+ 7
6.400000e+01
1.000000e+01
3.402823e+38
@@ -1396,6 +1404,7 @@
+ 8
6.400000e+01
1.000000e+01
3.402823e+38
@@ -1422,6 +1431,7 @@
+ 9
6.400000e+01
1.000000e+01
3.402823e+38
@@ -1448,6 +1458,7 @@
+ 10
1.000000e+01
1.000000e+01
3.402823e+38
@@ -1494,7 +1505,7 @@
YES
- {{1, 0}, {476, 349}}
+ {{1, 1}, {476, 348}}
@@ -1504,7 +1515,7 @@
256
- {{477, 0}, {15, 349}}
+ {{477, 1}, {15, 348}}
_doScroller:
@@ -3351,6 +3362,24 @@
466.IBPluginDependency
467.IBPluginDependency
468.IBPluginDependency
+ 469.IBPluginDependency
+ 470.IBPluginDependency
+ 471.IBPluginDependency
+ 472.IBPluginDependency
+ 473.IBPluginDependency
+ 474.IBPluginDependency
+ 475.IBPluginDependency
+ 476.IBPluginDependency
+ 477.IBPluginDependency
+ 478.IBPluginDependency
+ 479.IBPluginDependency
+ 480.IBPluginDependency
+ 481.IBPluginDependency
+ 482.IBPluginDependency
+ 483.IBPluginDependency
+ 484.IBPluginDependency
+ 485.IBPluginDependency
+ 486.IBPluginDependency
5.IBPluginDependency
5.ImportedFromIB2
56.IBPluginDependency
@@ -3584,6 +3613,24 @@
com.apple.InterfaceBuilder.CocoaPlugin
com.apple.InterfaceBuilder.CocoaPlugin
com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
com.apple.InterfaceBuilder.CocoaPlugin
From b2f35b61d39ba9233998deae0c16a44c6b23fb34 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Tue, 7 Jul 2009 11:33:58 -0700
Subject: [PATCH 074/244] Fix for making scrolling smoother.
Reviewed by me.
---
AppKit/CPScrollView.j | 4 +---
AppKit/Platform/DOM/CPDOMWindowBridge.j | 6 +++---
2 files changed, 4 insertions(+), 6 deletions(-)
diff --git a/AppKit/CPScrollView.j b/AppKit/CPScrollView.j
index 9b92c6032..e8ff5f873 100644
--- a/AppKit/CPScrollView.j
+++ b/AppKit/CPScrollView.j
@@ -580,8 +580,7 @@
*/
- (void)scrollWheel:(CPEvent)anEvent
{
- var value = [_verticalScroller floatValue],
- documentFrame = [[self documentView] frame],
+ var documentFrame = [[self documentView] frame],
contentBounds = [_contentView bounds];
contentBounds.origin.x += [anEvent deltaX] * _horizontalLineScroll;
@@ -593,7 +592,6 @@
- (void)keyDown:(CPEvent)anEvent
{
var keyCode = [anEvent keyCode],
- value = [_verticalScroller floatValue],
documentFrame = [[self documentView] frame],
contentBounds = [_contentView bounds];
diff --git a/AppKit/Platform/DOM/CPDOMWindowBridge.j b/AppKit/Platform/DOM/CPDOMWindowBridge.j
index 17d7da992..6b6c57d29 100644
--- a/AppKit/Platform/DOM/CPDOMWindowBridge.j
+++ b/AppKit/Platform/DOM/CPDOMWindowBridge.j
@@ -785,7 +785,7 @@ var CTRL_KEY_CODE = 17;
location.x -= CGRectGetMinX(windowFrame);
location.y -= CGRectGetMinY(windowFrame);
-
+
if(typeof aDOMEvent.wheelDeltaX != "undefined")
{
deltaX = aDOMEvent.wheelDeltaX / 120.0;
@@ -811,8 +811,8 @@ var CTRL_KEY_CODE = 17;
timestamp:timestamp windowNumber:windowNumber context:nil eventNumber:-1 clickCount:1 pressure:0 ];
event._DOMEvent = aDOMEvent;
- event._deltaX = ROUND(deltaX * 1.5);
- event._deltaY = ROUND(deltaY * 1.5);
+ event._deltaX = deltaX;
+ event._deltaY = deltaY;
[CPApp sendEvent:event];
From cb81eeed1596d48f44c3d2e0e1e196e58532a941 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Tue, 7 Jul 2009 18:42:44 -0700
Subject: [PATCH 075/244] Fix for selection in tableview.
Reviewed by me.
---
AppKit/CPColor.j | 10 ++++++++++
AppKit/CPTableView.j | 15 ++++++++++-----
TableTest/AppController.j | 4 ++--
3 files changed, 22 insertions(+), 7 deletions(-)
diff --git a/AppKit/CPColor.j b/AppKit/CPColor.j
index 464ddecb3..53342b37a 100644
--- a/AppKit/CPColor.j
+++ b/AppKit/CPColor.j
@@ -375,6 +375,16 @@ var cachedBlackColor,
return cachedClearColor;
}
++ (CPColor)alternateSelectedControlColor
+{
+ return [[CPColor alloc] _initWithRGBA:[0.22, 0.46, 0.84, 1.0]];
+}
+
++ (CPColor)secondarySelectedControlColor
+{
+ return [[CPColor alloc] _initWithRGBA:[0.83, 0.83, 0.83, 1.0]];
+}
+
/*!
Creates a color using a tile pattern with anImage
@param the image to tile
diff --git a/AppKit/CPTableView.j b/AppKit/CPTableView.j
index bfa234f0e..eff694654 100644
--- a/AppKit/CPTableView.j
+++ b/AppKit/CPTableView.j
@@ -120,7 +120,7 @@ CPTableViewSelectionHighlightStyleSourceList = 1;
CPIndexSet _selectedColumnIndexes;
CPIndexSet _selectedRowIndexes;
- CPInteger _selectionStartRow;
+ CPInteger _selectionAnchorRow;
_CPTableDrawView _tableDrawView;
}
@@ -1201,7 +1201,7 @@ _cachedDataViews[dataView.identifier].push(dataView);
- (void)highlightSelectionInClipRect:(CGRect)aRect
{
- [[CPColor greenColor] set];
+ [[CPColor alternateSelectedControlColor] set];
var context = [[CPGraphicsContext currentContext] graphicsPort];
@@ -1286,15 +1286,20 @@ _cachedDataViews[dataView.identifier].push(dataView);
*/
+- (BOOL)tracksMouseOutsideOfFrame
+{
+ return YES;
+}
+
- (BOOL)startTrackingAt:(CGPoint)aPoint
{
var row = [self rowAtPoint:aPoint];
if ([self mouseDownFlags] & CPShiftKeyMask)
- _selectionAnchor = (ABS([_selectedRowIndexes firstIndex] - row) < ABS([_selectedRowIndexes lastIndex] - row)) ?
+ _selectionAnchorRow = (ABS([_selectedRowIndexes firstIndex] - row) < ABS([_selectedRowIndexes lastIndex] - row)) ?
[_selectedRowIndexes firstIndex] : [_selectedRowIndexes lastIndex];
else
- _selectionAnchor = row;
+ _selectionAnchorRow = row;
[self _updateSelectionWithMouseAtRow:row];
@@ -1355,7 +1360,7 @@ _cachedDataViews[dataView.identifier].push(dataView);
}
else if (_allowsMultipleSelection)
- newSelection = [CPIndexSet indexSetWithIndexesInRange:CPMakeRange(MIN(aRow, _selectionStartRow), ABS(aRow - _selectionStartRow) + 1)];
+ newSelection = [CPIndexSet indexSetWithIndexesInRange:CPMakeRange(MIN(aRow, _selectionAnchorRow), ABS(aRow - _selectionAnchorRow) + 1)];
else if (aRow >= 0 && aRow < _numberOfRows)
newSelection = [CPIndexSet indexSetWithIndex:aRow];
diff --git a/TableTest/AppController.j b/TableTest/AppController.j
index 1030e9403..152034025 100644
--- a/TableTest/AppController.j
+++ b/TableTest/AppController.j
@@ -105,8 +105,8 @@ CPLogRegister(CPLogConsole);
{
//CPLog.debug(@"shouldSelectRow %d", rowIndex);
for (var i = 2, sqrt = SQRT(rowIndex+1); i <= sqrt; i++)
- if ((rowIndex+1) % i === 0){console.log("NO for " + rowIndex);
- return false;}
+ if ((rowIndex+1) % i === 0)
+ return false;
return true;
}
From 8660c72015757f6824db47f1ce86fc84ee4c2e36 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Wed, 8 Jul 2009 11:15:15 -0700
Subject: [PATCH 076/244] Fix for scrollers and nib2cib, as well as resizing.
Closes #217.
Closes #218.
Reviewed by me.
---
AppKit/CPScrollView.j | 18 +++++---
AppKit/CPScroller.j | 61 +++++++++++++------------
AppKit/Themes/Aristo/ThemeDescriptors.j | 10 ++--
Tools/nib2cib/NSScroller.j | 2 +
4 files changed, 51 insertions(+), 40 deletions(-)
diff --git a/AppKit/CPScrollView.j b/AppKit/CPScrollView.j
index b89aa3401..ec93beb28 100644
--- a/AppKit/CPScrollView.j
+++ b/AppKit/CPScrollView.j
@@ -243,21 +243,27 @@
if (shouldShowHorizontalScroller)
verticalScrollerHeight -= horizontalScrollerHeight;
- [_verticalScroller setFloatValue:(difference.height <= 0.0) ? 0.0 : scrollPoint.y / difference.height
- knobProportion:_CGRectGetHeight(contentFrame) / _CGRectGetHeight(documentFrame)];
+ [_verticalScroller setFloatValue:(difference.height <= 0.0) ? 0.0 : scrollPoint.y / difference.height];
+ [_verticalScroller setKnobProportion:_CGRectGetHeight(contentFrame) / _CGRectGetHeight(documentFrame)];
[_verticalScroller setFrame:_CGRectMake(_CGRectGetMaxX(contentFrame), verticalScrollerY, verticalScrollerWidth, verticalScrollerHeight)];
}
else if (wasShowingVerticalScroller)
- [_verticalScroller setFloatValue:0.0 knobProportion:1.0];
+ {
+ [_verticalScroller setFloatValue:0.0];
+ [_verticalScroller setKnobProportion:1.0];
+ }
if (shouldShowHorizontalScroller)
{
- [_horizontalScroller setFloatValue:(difference.width <= 0.0) ? 0.0 : scrollPoint.x / difference.width
- knobProportion:_CGRectGetWidth(contentFrame) / _CGRectGetWidth(documentFrame)];
+ [_horizontalScroller setFloatValue:(difference.width <= 0.0) ? 0.0 : scrollPoint.x / difference.width];
+ [_horizontalScroller setKnobProportion:_CGRectGetWidth(contentFrame) / _CGRectGetWidth(documentFrame)];
[_horizontalScroller setFrame:_CGRectMake(0.0, _CGRectGetMaxY(contentFrame), _CGRectGetWidth(contentFrame), horizontalScrollerHeight)];
}
else if (wasShowingHorizontalScroller)
- [_horizontalScroller setFloatValue:0.0 knobProportion:1.0];
+ {
+ [_horizontalScroller setFloatValue:0.0];
+ [_horizontalScroller setKnobProportion:1.0];
+ }
[_contentView setFrame:contentFrame];
[_headerClipView setFrame:headerClipViewFrame];
diff --git a/AppKit/CPScroller.j b/AppKit/CPScroller.j
index d922603d7..af566614e 100644
--- a/AppKit/CPScroller.j
+++ b/AppKit/CPScroller.j
@@ -64,9 +64,9 @@ NAMES_FOR_PARTS[CPScrollerKnob] = @"knob";
BOOL _isVertical @accessors(readonly, getter=isVertical);
float _knobProportion;
-
+
CPScrollerPart _hitPart;
-
+
CPScrollerPart _trackingPart;
float _trackingFloatValue;
CGPoint _trackingStartPoint;
@@ -104,11 +104,12 @@ NAMES_FOR_PARTS[CPScrollerKnob] = @"knob";
_controlSize = CPRegularControlSize;
_partRects = [];
- [self setFloatValue:0.0 knobProportion:1.0];
+ [self setFloatValue:0.0];
+ [self setKnobProportion:1.0];
_hitPart = CPScrollerNoPart;
- [self _recalculateIsVertical];
+ [self _calculateIsVertical];
}
return self;
@@ -155,28 +156,17 @@ NAMES_FOR_PARTS[CPScrollerKnob] = @"knob";
return _controlSize;
}
-// Setting the Knob Position
-/*!
- Sets the scroller's knob position (ranges from 0.0 to 1.0).
- @param aValue the knob position (ranges from 0.0 to 1.0)
-*/
-- (void)setFloatValue:(float)aValue
+- (void)setObjectValue:(id)aValue
{
- [super setFloatValue:MIN(1.0, MAX(0.0, aValue))];
-
- [self setNeedsLayout];
+ [super setObjectValue:MIN(1.0, MAX(0.0, +aValue))];
}
-/*!
- Sets the position and proportion of the knob.
- @param aValue the knob position (ranges from 0.0 to 1.0)
- @param aProportion the knob's proportion (ranges from 0.0 to 1.0)
-*/
-- (void)setFloatValue:(float)aValue knobProportion:(float)aProportion
+- (void)setKnobProportion:(float)aProportion
{
_knobProportion = MIN(1.0, MAX(0.0001, aProportion));
- [self setFloatValue:aValue];
+ [self setNeedsDisplay:YES];
+ [self setNeedsLayout];
}
/*!
@@ -533,15 +523,15 @@ NAMES_FOR_PARTS[CPScrollerKnob] = @"knob";
}
-- (void)_recalculateIsVertical
+- (void)_calculateIsVertical
{
// Recalculate isVertical.
var bounds = [self bounds],
width = _CGRectGetWidth(bounds),
height = _CGRectGetHeight(bounds);
-
+
_isVertical = width < height ? 1 : (width > height ? 0 : -1);
-
+
if (_isVertical === 1)
[self setThemeState:CPThemeStateVertical];
else if (_isVertical === 0)
@@ -552,8 +542,6 @@ NAMES_FOR_PARTS[CPScrollerKnob] = @"knob";
{
[super setFrameSize:aSize];
- [self _recalculateIsVertical];
-
[self checkSpaceForParts];
[self setNeedsLayout];
}
@@ -590,18 +578,16 @@ var CPScrollerControlSizeKey = "CPScrollerControlSize",
_controlSize = CPRegularControlSize;
if ([aCoder containsValueForKey:CPScrollerControlSizeKey])
_controlSize = [aCoder decodeIntForKey:CPScrollerControlSizeKey];
-
+
_knobProportion = 1.0;
if ([aCoder containsValueForKey:CPScrollerKnobProportionKey])
_knobProportion = [aCoder decodeFloatForKey:CPScrollerKnobProportionKey];
-
+
_partRects = [];
_hitPart = CPScrollerNoPart;
- [self _recalculateIsVertical];
-// [self checkSpaceForParts];
-// [self setNeedsLayout];
+ [self _calculateIsVertical];
}
return self;
@@ -616,3 +602,18 @@ var CPScrollerControlSizeKey = "CPScrollerControlSize",
}
@end
+
+@implementation CPScroller (Deprecated)
+
+/*!
+ Sets the position and proportion of the knob.
+ @param aValue the knob position (ranges from 0.0 to 1.0)
+ @param aProportion the knob's proportion (ranges from 0.0 to 1.0)
+*/
+- (void)setFloatValue:(float)aValue knobProportion:(float)aProportion
+{
+ [self setFloatValue:aValue];
+ [self setKnobProportion:aProportion];
+}
+
+@end
diff --git a/AppKit/Themes/Aristo/ThemeDescriptors.j b/AppKit/Themes/Aristo/ThemeDescriptors.j
index 72efe57a9..57e7033a9 100644
--- a/AppKit/Themes/Aristo/ThemeDescriptors.j
+++ b/AppKit/Themes/Aristo/ThemeDescriptors.j
@@ -191,7 +191,8 @@
[scroller setValue:knobColor forThemeAttribute:@"knob-color" inState:CPThemeStateVertical];
- [scroller setFloatValue:0.1 knobProportion:0.5];
+ [scroller setFloatValue:0.1];
+ [scroller setKnobProportion:0.5];
return scroller;
}
@@ -234,10 +235,11 @@
[_CPCibCustomResource imageResourceWithName:"scroller-horizontal-knob-right.png" size:CGSizeMake(9.0, 15.0)]
]
isVertical:NO]);
-
+
[scroller setValue:knobColor forThemeAttribute:@"knob-color"];
-
- [scroller setFloatValue:0.1 knobProportion:0.5];
+
+ [scroller setFloatValue:0.1];
+ [scroller setKnobProportion:0.5];
return scroller;
}
diff --git a/Tools/nib2cib/NSScroller.j b/Tools/nib2cib/NSScroller.j
index 1c39d70bd..5909d8d93 100644
--- a/Tools/nib2cib/NSScroller.j
+++ b/Tools/nib2cib/NSScroller.j
@@ -45,6 +45,8 @@
if ([aCoder containsValueForKey:"NSCurValue"])
_value = [aCoder decodeFloatForKey:"NSCurValue"];
+ [self _calculateIsVertical];
+
var isVertical = [self isVertical];
if (CPStringFromSelector([self action]) === @"_doScroller:")
From c281d01974ff5881ba524f0ded07c302e39c6f11 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Wed, 8 Jul 2009 11:17:31 -0700
Subject: [PATCH 077/244] Updated cib for test project.
Reviewed by me.
---
TableCibTest/Resources/MainMenu.cib | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/TableCibTest/Resources/MainMenu.cib b/TableCibTest/Resources/MainMenu.cib
index d3aac2d00..e873817a6 100644
--- a/TableCibTest/Resources/MainMenu.cib
+++ b/TableCibTest/Resources/MainMenu.cib
@@ -1 +1 @@
-280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;4E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;7E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;9E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;2;10E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;2;11E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;2;12E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;2;13E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;2;14E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;16E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;18E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;195E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;205E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;225E;D;K;6;CP$UIDd;3;226E;D;K;6;CP$UIDd;3;227E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;3;229E;D;K;6;CP$UIDd;3;230E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;232E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;234E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;236E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;241E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;243E;D;K;6;CP$UIDd;3;244E;D;K;6;CP$UIDd;3;245E;D;K;6;CP$UIDd;3;246E;D;K;6;CP$UIDd;3;247E;D;K;6;CP$UIDd;3;248E;D;K;6;CP$UIDd;3;249E;D;K;6;CP$UIDd;3;250E;D;K;6;CP$UIDd;3;251E;D;K;6;CP$UIDd;3;252E;D;K;6;CP$UIDd;3;253E;D;K;6;CP$UIDd;3;254E;D;K;6;CP$UIDd;3;255E;D;K;6;CP$UIDd;3;256E;D;K;6;CP$UIDd;3;257E;D;K;6;CP$UIDd;3;258E;D;K;6;CP$UIDd;3;259E;D;K;6;CP$UIDd;3;260E;D;K;6;CP$UIDd;3;261E;D;K;6;CP$UIDd;3;262E;D;K;6;CP$UIDd;3;263E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;266E;D;K;6;CP$UIDd;3;267E;D;K;6;CP$UIDd;3;268E;D;K;6;CP$UIDd;3;269E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;271E;D;K;6;CP$UIDd;3;272E;D;K;6;CP$UIDd;3;273E;D;K;6;CP$UIDd;3;274E;D;K;6;CP$UIDd;3;275E;D;K;6;CP$UIDd;3;276E;D;K;6;CP$UIDd;3;277E;D;K;6;CP$UIDd;3;278E;D;K;6;CP$UIDd;3;279E;D;K;6;CP$UIDd;3;280E;D;K;6;CP$UIDd;3;281E;D;K;6;CP$UIDd;3;282E;D;K;6;CP$UIDd;3;283E;D;K;6;CP$UIDd;3;284E;D;K;6;CP$UIDd;3;285E;D;K;6;CP$UIDd;3;286E;D;K;6;CP$UIDd;3;287E;D;K;6;CP$UIDd;3;288E;D;K;6;CP$UIDd;3;289E;D;K;6;CP$UIDd;3;290E;D;K;6;CP$UIDd;3;291E;D;K;6;CP$UIDd;3;292E;D;K;6;CP$UIDd;3;293E;D;K;6;CP$UIDd;3;294E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;296E;D;K;6;CP$UIDd;3;297E;D;K;6;CP$UIDd;3;298E;D;K;6;CP$UIDd;3;299E;D;K;6;CP$UIDd;3;300E;D;K;6;CP$UIDd;3;301E;D;K;6;CP$UIDd;3;302E;D;K;6;CP$UIDd;3;303E;D;K;6;CP$UIDd;3;304E;D;K;6;CP$UIDd;3;305E;D;K;6;CP$UIDd;3;306E;D;K;6;CP$UIDd;3;307E;D;K;6;CP$UIDd;3;308E;D;K;6;CP$UIDd;3;309E;D;K;6;CP$UIDd;3;310E;D;K;6;CP$UIDd;3;311E;D;K;6;CP$UIDd;3;312E;D;K;6;CP$UIDd;3;313E;D;K;6;CP$UIDd;3;314E;D;K;6;CP$UIDd;3;315E;D;K;6;CP$UIDd;3;316E;D;K;6;CP$UIDd;3;317E;D;K;6;CP$UIDd;3;318E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;320E;D;K;6;CP$UIDd;3;321E;D;K;6;CP$UIDd;3;322E;D;K;6;CP$UIDd;3;323E;D;K;6;CP$UIDd;3;324E;D;K;6;CP$UIDd;3;325E;D;K;6;CP$UIDd;3;326E;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;3;328E;D;K;6;CP$UIDd;3;329E;D;K;6;CP$UIDd;3;330E;D;K;6;CP$UIDd;3;331E;D;K;6;CP$UIDd;3;332E;D;K;6;CP$UIDd;3;333E;D;K;6;CP$UIDd;3;334E;D;K;6;CP$UIDd;3;336E;D;K;6;CP$UIDd;3;337E;D;K;6;CP$UIDd;3;338E;D;K;6;CP$UIDd;3;339E;D;K;6;CP$UIDd;3;340E;D;K;6;CP$UIDd;3;341E;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;3;343E;D;K;6;CP$UIDd;3;344E;D;K;6;CP$UIDd;3;345E;D;K;6;CP$UIDd;3;346E;D;K;6;CP$UIDd;3;347E;D;K;6;CP$UIDd;3;348E;D;K;6;CP$UIDd;3;349E;D;K;6;CP$UIDd;3;350E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;352E;D;K;6;CP$UIDd;3;353E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;3;356E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;358E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;360E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;362E;D;K;6;CP$UIDd;3;363E;D;K;6;CP$UIDd;3;364E;D;K;6;CP$UIDd;3;365E;D;K;6;CP$UIDd;3;366E;D;K;6;CP$UIDd;3;367E;D;K;6;CP$UIDd;3;368E;D;K;6;CP$UIDd;3;369E;D;K;6;CP$UIDd;3;370E;D;K;6;CP$UIDd;3;371E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;373E;D;K;6;CP$UIDd;3;374E;D;K;6;CP$UIDd;3;375E;D;K;6;CP$UIDd;3;376E;D;K;6;CP$UIDd;3;377E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;3;379E;D;K;6;CP$UIDd;3;380E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;383E;D;K;6;CP$UIDd;3;384E;E;E;S;16;IBCocoaFrameworkd;3;490D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;3;111E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;3;362E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;3;332E;D;K;6;CP$UIDd;3;373E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;3;363E;D;K;6;CP$UIDd;3;364E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;322E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;324E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;328E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;3;336E;D;K;6;CP$UIDd;3;338E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;371E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;3;343E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;326E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;380E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;339E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;325E;D;K;6;CP$UIDd;3;323E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;347E;D;K;6;CP$UIDd;3;367E;D;K;6;CP$UIDd;3;375E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;340E;D;K;6;CP$UIDd;3;346E;D;K;6;CP$UIDd;3;353E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;366E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;344E;D;K;6;CP$UIDd;3;337E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;365E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;3;368E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;330E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;3;376E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;383E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;3;341E;D;K;6;CP$UIDd;3;356E;D;K;6;CP$UIDd;3;377E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;3;334E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;3;345E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;3;352E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;3;320E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;348E;D;K;6;CP$UIDd;3;349E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;358E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;374E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;370E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;321E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;329E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;384E;D;K;6;CP$UIDd;3;369E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;360E;D;K;6;CP$UIDd;3;331E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;350E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;333E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;379E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;385E;D;K;6;CP$UIDd;3;386E;D;K;6;CP$UIDd;3;387E;D;K;6;CP$UIDd;3;388E;D;K;6;CP$UIDd;3;389E;D;K;6;CP$UIDd;3;390E;D;K;6;CP$UIDd;3;391E;D;K;6;CP$UIDd;3;392E;D;K;6;CP$UIDd;3;393E;D;K;6;CP$UIDd;3;394E;D;K;6;CP$UIDd;3;395E;D;K;6;CP$UIDd;3;396E;D;K;6;CP$UIDd;3;397E;D;K;6;CP$UIDd;3;398E;D;K;6;CP$UIDd;3;399E;D;K;6;CP$UIDd;3;400E;D;K;6;CP$UIDd;3;401E;D;K;6;CP$UIDd;3;402E;D;K;6;CP$UIDd;3;403E;D;K;6;CP$UIDd;3;404E;D;K;6;CP$UIDd;3;405E;D;K;6;CP$UIDd;3;406E;D;K;6;CP$UIDd;3;407E;D;K;6;CP$UIDd;3;408E;D;K;6;CP$UIDd;3;409E;D;K;6;CP$UIDd;3;410E;D;K;6;CP$UIDd;3;411E;D;K;6;CP$UIDd;3;412E;D;K;6;CP$UIDd;3;413E;D;K;6;CP$UIDd;3;414E;D;K;6;CP$UIDd;3;415E;D;K;6;CP$UIDd;3;416E;D;K;6;CP$UIDd;3;417E;D;K;6;CP$UIDd;3;418E;D;K;6;CP$UIDd;3;419E;D;K;6;CP$UIDd;3;420E;D;K;6;CP$UIDd;3;421E;D;K;6;CP$UIDd;3;422E;D;K;6;CP$UIDd;3;423E;D;K;6;CP$UIDd;3;424E;D;K;6;CP$UIDd;3;425E;D;K;6;CP$UIDd;3;426E;D;K;6;CP$UIDd;3;427E;D;K;6;CP$UIDd;3;428E;D;K;6;CP$UIDd;3;429E;D;K;6;CP$UIDd;3;430E;D;K;6;CP$UIDd;3;431E;D;K;6;CP$UIDd;3;432E;D;K;6;CP$UIDd;3;433E;D;K;6;CP$UIDd;3;434E;D;K;6;CP$UIDd;3;435E;D;K;6;CP$UIDd;3;436E;D;K;6;CP$UIDd;3;437E;D;K;6;CP$UIDd;3;438E;D;K;6;CP$UIDd;3;439E;D;K;6;CP$UIDd;3;440E;D;K;6;CP$UIDd;3;441E;D;K;6;CP$UIDd;3;442E;D;K;6;CP$UIDd;3;443E;D;K;6;CP$UIDd;3;444E;D;K;6;CP$UIDd;3;445E;D;K;6;CP$UIDd;3;446E;D;K;6;CP$UIDd;3;447E;D;K;6;CP$UIDd;3;448E;D;K;6;CP$UIDd;3;449E;D;K;6;CP$UIDd;3;450E;D;K;6;CP$UIDd;3;451E;D;K;6;CP$UIDd;3;452E;D;K;6;CP$UIDd;3;453E;D;K;6;CP$UIDd;3;454E;D;K;6;CP$UIDd;3;455E;D;K;6;CP$UIDd;3;456E;D;K;6;CP$UIDd;3;457E;D;K;6;CP$UIDd;3;458E;D;K;6;CP$UIDd;3;459E;D;K;6;CP$UIDd;3;460E;D;K;6;CP$UIDd;3;461E;D;K;6;CP$UIDd;3;462E;D;K;6;CP$UIDd;3;463E;D;K;6;CP$UIDd;3;464E;D;K;6;CP$UIDd;3;465E;D;K;6;CP$UIDd;3;466E;D;K;6;CP$UIDd;3;467E;D;K;6;CP$UIDd;3;468E;D;K;6;CP$UIDd;3;469E;D;K;6;CP$UIDd;3;470E;D;K;6;CP$UIDd;3;471E;D;K;6;CP$UIDd;3;472E;D;K;6;CP$UIDd;3;473E;D;K;6;CP$UIDd;3;474E;D;K;6;CP$UIDd;3;475E;D;K;6;CP$UIDd;3;476E;D;K;6;CP$UIDd;3;477E;D;K;6;CP$UIDd;3;478E;D;K;6;CP$UIDd;3;479E;D;K;6;CP$UIDd;3;480E;D;K;6;CP$UIDd;3;481E;D;K;6;CP$UIDd;3;482E;D;K;6;CP$UIDd;3;483E;D;K;6;CP$UIDd;3;484E;D;K;6;CP$UIDd;3;485E;D;K;6;CP$UIDd;3;486E;D;K;6;CP$UIDd;3;487E;D;K;6;CP$UIDd;3;488E;D;K;6;CP$UIDd;3;489E;D;K;6;CP$UIDd;3;490E;D;K;6;CP$UIDd;3;491E;D;K;6;CP$UIDd;3;492E;D;K;6;CP$UIDd;3;493E;D;K;6;CP$UIDd;3;494E;D;K;6;CP$UIDd;3;495E;D;K;6;CP$UIDd;3;496E;D;K;6;CP$UIDd;3;497E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;499E;D;K;6;CP$UIDd;3;500E;D;K;6;CP$UIDd;3;501E;D;K;6;CP$UIDd;3;502E;D;K;6;CP$UIDd;3;503E;D;K;6;CP$UIDd;3;504E;D;K;6;CP$UIDd;3;505E;D;K;6;CP$UIDd;3;506E;D;K;6;CP$UIDd;3;507E;D;K;6;CP$UIDd;3;508E;D;K;6;CP$UIDd;3;509E;D;K;6;CP$UIDd;3;510E;D;K;6;CP$UIDd;3;511E;D;K;6;CP$UIDd;3;512E;D;K;6;CP$UIDd;3;513E;D;K;6;CP$UIDd;3;514E;D;K;6;CP$UIDd;3;515E;D;K;6;CP$UIDd;3;516E;D;K;6;CP$UIDd;3;517E;D;K;6;CP$UIDd;3;518E;D;K;6;CP$UIDd;3;519E;D;K;6;CP$UIDd;3;520E;D;K;6;CP$UIDd;3;521E;D;K;6;CP$UIDd;3;522E;D;K;6;CP$UIDd;3;523E;D;K;6;CP$UIDd;3;524E;D;K;6;CP$UIDd;3;525E;D;K;6;CP$UIDd;3;526E;D;K;6;CP$UIDd;3;527E;D;K;6;CP$UIDd;3;528E;D;K;6;CP$UIDd;3;529E;D;K;6;CP$UIDd;3;530E;D;K;6;CP$UIDd;3;531E;D;K;6;CP$UIDd;3;532E;D;K;6;CP$UIDd;3;533E;D;K;6;CP$UIDd;3;534E;D;K;6;CP$UIDd;3;535E;D;K;6;CP$UIDd;3;536E;D;K;6;CP$UIDd;3;537E;D;K;6;CP$UIDd;3;538E;D;K;6;CP$UIDd;3;539E;D;K;6;CP$UIDd;3;540E;D;K;6;CP$UIDd;3;541E;D;K;6;CP$UIDd;3;542E;D;K;6;CP$UIDd;3;543E;D;K;6;CP$UIDd;3;544E;D;K;6;CP$UIDd;3;545E;D;K;6;CP$UIDd;3;546E;D;K;6;CP$UIDd;3;547E;D;K;6;CP$UIDd;3;548E;D;K;6;CP$UIDd;3;549E;D;K;6;CP$UIDd;3;550E;D;K;6;CP$UIDd;3;551E;D;K;6;CP$UIDd;3;552E;D;K;6;CP$UIDd;3;553E;D;K;6;CP$UIDd;3;554E;D;K;6;CP$UIDd;3;555E;D;K;6;CP$UIDd;3;556E;D;K;6;CP$UIDd;3;557E;D;K;6;CP$UIDd;3;558E;D;K;6;CP$UIDd;3;559E;D;K;6;CP$UIDd;3;560E;D;K;6;CP$UIDd;3;561E;D;K;6;CP$UIDd;3;562E;D;K;6;CP$UIDd;3;563E;D;K;6;CP$UIDd;3;564E;D;K;6;CP$UIDd;3;565E;D;K;6;CP$UIDd;3;566E;D;K;6;CP$UIDd;3;567E;D;K;6;CP$UIDd;3;568E;D;K;6;CP$UIDd;3;569E;D;K;6;CP$UIDd;3;570E;D;K;6;CP$UIDd;3;571E;D;K;6;CP$UIDd;3;572E;D;K;6;CP$UIDd;3;573E;D;K;6;CP$UIDd;3;574E;D;K;6;CP$UIDd;3;575E;D;K;6;CP$UIDd;3;576E;D;K;6;CP$UIDd;3;577E;D;K;6;CP$UIDd;3;578E;D;K;6;CP$UIDd;3;579E;D;K;6;CP$UIDd;3;580E;D;K;6;CP$UIDd;3;581E;D;K;6;CP$UIDd;3;582E;D;K;6;CP$UIDd;3;583E;D;K;6;CP$UIDd;3;584E;D;K;6;CP$UIDd;3;585E;D;K;6;CP$UIDd;3;586E;D;K;6;CP$UIDd;3;587E;D;K;6;CP$UIDd;3;588E;D;K;6;CP$UIDd;3;589E;D;K;6;CP$UIDd;3;590E;D;K;6;CP$UIDd;3;591E;D;K;6;CP$UIDd;3;592E;D;K;6;CP$UIDd;3;593E;D;K;6;CP$UIDd;3;594E;D;K;6;CP$UIDd;3;595E;D;K;6;CP$UIDd;3;596E;D;K;6;CP$UIDd;3;597E;D;K;6;CP$UIDd;3;598E;D;K;6;CP$UIDd;3;599E;D;K;6;CP$UIDd;3;600E;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;601E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;602E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;603E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;35E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;605E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;30E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;606E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;607E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;608E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;30E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;609E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;610E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;612E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;46E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;3;165E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;613E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;613E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;613E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;613E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;614E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;614E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;615E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;616E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;617E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;618E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;619E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;38E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;620E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;29E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;621E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;621E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;622E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;623E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;610E;E;D;K;10;$classnameS;11;CPTableViewK;8;$classesA;S;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;31E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;612E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;624E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;624E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;612E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;623E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;610E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;625E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;626E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;627E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;615E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;614E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;628E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;629E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;56E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;630E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;72E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;603E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;631E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;632E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;633E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;634E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;619E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;635E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;636E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;637E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;216E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;639E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;640E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;641E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;23E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;642E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;643E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;23E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;623E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;644E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;645E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;23E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;646E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;625E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;645E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;647E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;648E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;133E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;56E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;649E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;87E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;650E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;197E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;652E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;151E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;653E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;654E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;171E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;655E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;151E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;629E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;656E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;657E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;311E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;658E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;659E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;660E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;661E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;662E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;663E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;664E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;665E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;151E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;666E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;667E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;668E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;26E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;186E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;669E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;670E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;671E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;630E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;672E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;673E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;140E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;674E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;675E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;101E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;676E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;677E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;678E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;209E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;679E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;680E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;632E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;36E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;681E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;682E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;151E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;683E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;649E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;685E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;223E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;686E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;90E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;687E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;688E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;689E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;690E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;691E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;30E;K;41;_CPCibWindowTemplateWindowIsFullBridgeKeyD;K;6;CP$UIDd;3;615E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;692E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;693E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;693E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;99E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;694E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;695E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;636E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;39E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;696E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;697E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;691E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;698E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;699E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;36E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;700E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;701E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;36E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;702E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;601E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;703E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;135E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;56E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;704E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;705E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;140E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;706E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;707E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;708E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;709E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;710E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;711E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;712E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;661E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;62E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;713E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;714E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;150E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;706E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;111E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;715E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;101E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;716E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;101E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;717E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;99E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;718E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;696E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;99E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;717E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;719E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;101E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;717E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;720E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;721E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;154E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;648E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;722E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;723E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;703E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;724E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;725E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;140E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;617E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;26E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;726E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;705E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;727E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;728E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;150E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;729E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;730E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;287E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;731E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;710E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;711E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;732E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;150E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;733E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;151E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;734E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;714E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;735E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;652E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;736E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;691E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;604E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;101E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;66E;E;D;K;6;$classD;K;6;CP$UIDd;2;25E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;721E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;737E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;738E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;36E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;739E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;282E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;651E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;613E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;740E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;99E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;741E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;38E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;742E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;743E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;744E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;99E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;745E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;614E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;615E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;39E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;23E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;746E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;747E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;23E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;623E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;610E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;645E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;23E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;646E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;625E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;645E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;748E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;749E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;111E;E;S;20;Menu Item (Services)S;3;121S;33;Bordered Scroll View (Table View)S;20;Menu Item (Show All)S;1;2S;16;Menu Item (File)S;22;Menu Item (Select All)S;12;Content ViewS;10;Table ViewS;30;Text Field Cell (Text Cell)-10S;18;Menu Item (Format)S;23;Menu Item (Open Recent)S;15;Menu (Services)S;20;Menu (Substitutions)S;17;Menu Item (Find…)S;11;Menu (File)S;21;Menu (NewApplication)S;17;Table Column (10)S;16;Menu Item (Bold)S;1;9S;3;1-1S;29;Text Field Cell (Text Cell)-7S;29;Text Field Cell (Text Cell)-9S;27;Text Field Cell (Text Cell)S;17;Vertical ScrollerS;16;Menu Item (Text)S;20;Menu Item (Baseline)S;15;Menu Item (Cut)S;16;Table Column (5)S;32;Menu Item (Spelling and Grammar)S;1;5S;23;Menu Item (Paste Style)S;16;Table Column (2)S;26;Menu Item (Check Spelling)S;13;Menu (Format)S;23;Menu Item (Hide Others)S;16;Table Column (8)S;32;Menu Item (About NewApplication)S;22;Menu Item (Show Ruler)S;23;Menu Item (Paste Ruler)S;15;Menu (Ligature)S;17;Menu Item (Lower)S;1;6S;26;Menu Item (Show Spelling…)S;29;Text Field Cell (Text Cell)-2S;8;MainMenuS;31;Menu Item (NewApplication Help)S;16;Table Column (9)S;22;Menu Item (Clear Menu)S;2;10S;17;Menu Item (Paste)S;18;Menu (Open Recent)S;26;Menu Item (Start Speaking)S;21;Menu Item (Subscript)S;16;Menu Item (Zoom)S;16;Menu Item (Undo)S;1;3S;16;Table Column (4)S;16;Table Column (6)S;19;Menu Item (Justify)S;22;Menu Item (Align Left)S;25;Menu Item (Substitutions)S;23;Menu Item (Align Right)S;39;Menu Item (Check Spelling While Typing)S;34;Menu Item (Use Selection for Find)S;9;SeparatorS;12;File's OwnerS;29;Text Field Cell (Text Cell)-1S;15;Menu (Baseline)S;16;Table Column (3)S;22;Menu Item (Copy Style)S;15;Window (Window)S;18;Menu Item (Center)S;20;Menu Item (Use None)S;22;Menu Item (Use None)-1S;11;Separator-8S;18;Menu Item (Bigger)S;21;Menu Item (Underline)S;26;Menu Item (NewApplication)S;11;Menu (Kern)S;3;2-1S;13;Menu (Window)S;23;Menu Item (Smart Links)S;21;Menu Item (Find Next)S;11;Separator-4S;28;Menu Item (Smart Copy/Paste)S;17;Menu Item (Open…)S;11;ApplicationS;16;Menu Item (Font)S;4;1111S;18;Menu Item (Speech)S;11;Menu (Find)S;16;Table Column (0)S;23;Menu Item (Superscript)S;11;Separator-1S;20;Menu Item (Ligature)S;14;App ControllerS;16;Menu Item (View)S;29;Text Field Cell (Text Cell)-4S;16;Menu Item (Find)S;29;Text Field Cell (Text Cell)-6S;20;Menu Item (Minimize)S;17;Menu Item (Raise)S;11;Separator-6S;25;Menu Item (Use Default)-2S;25;Menu Item (Find Previous)S;16;Menu Item (Kern)S;25;Menu Item (Use Default)-1S;30;Menu Item (Bring All to Front)S;11;Separator-5S;23;Menu Item (Use Default)S;18;Menu Item (Delete)S;11;Separator-2S;16;Menu Item (Edit)S;29;Text Field Cell (Text Cell)-5S;1;7S;11;Menu (Text)S;16;Menu Item (Copy)S;11;Menu (Font)S;25;Menu Item (Stop Speaking)S;1;1S;22;Menu Item (Copy Ruler)S;11;Separator-7S;13;Menu (Speech)S;24;Menu Item (Show Toolbar)S;11;Separator-9S;16;Menu Item (Redo)S;12;Separator-10S;23;Menu Item (Show Colors)S;16;Table Column (1)S;30;Menu Item (Customize Toolbar…)S;39;Menu Item (Check Grammar With Spelling)S;19;Menu Item (Use All)S;11;Menu (View)S;27;Menu (Spelling and Grammar)S;12;Separator-11S;18;Menu Item (Window)S;11;Menu (Edit)S;24;Menu Item (Smart Quotes)S;18;Menu Item (Italic)S;16;Table Column (7)S;29;Text Field Cell (Text Cell)-8S;29;Text Field Cell (Text Cell)-3S;18;Menu Item (Loosen)S;1;8S;22;Menu Item (Show Fonts)S;19;Menu Item (Smaller)S;19;Menu Item (Tighten)S;31;Menu Item (Hide NewApplication)S;11;Separator-3S;19;Horizontal ScrollerS;29;Menu Item (Jump to Selection)D;K;10;$classnameS;22;_CPCibControlConnectorK;8;$classesA;S;22;_CPCibControlConnectorS;15;_CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;158E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;750E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;113E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;751E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;63E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;752E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;753E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;166E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;754E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;122E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;755E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;105E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;756E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;119E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;757E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;61E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;758E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;44E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;759E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;74E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;760E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;120E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;761E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;65E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;762E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;102E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;763E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;60E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;764E;E;D;K;10;$classnameS;21;_CPCibOutletConnectorK;8;$classesA;S;21;_CPCibOutletConnectorS;15;_CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;335E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;116E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;765E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;141E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;766E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;163E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;767E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;64E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;768E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;769E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;53E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;770E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;37E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;771E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;128E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;772E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;145E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;773E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;138E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;774E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;71E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;775E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;776E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;129E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;777E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;59E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;16E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;778E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;147E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;779E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;73E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;780E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;155E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;781E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;106E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;782E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;97E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;783E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;67E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;784E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;94E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;785E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;24E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;786E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;52E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;787E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;143E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;788E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;83E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;789E;E;D;K;6;$classD;K;6;CP$UIDd;3;335E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;116E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;91E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;790E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;148E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;791E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;109E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;107E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;792E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;149E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;793E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;81E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;794E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;69E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;795E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;796E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;159E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;797E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;126E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;798E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;70E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;799E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;134E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;800E;E;D;K;6;$classD;K;6;CP$UIDd;3;335E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;32E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;116E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;801E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;92E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;802E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;162E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;803E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;43E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;804E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;93E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;805E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;80E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;806E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;125E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;807E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;28E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;808E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;136E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;809E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;89E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;810E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;55E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;811E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;76E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;812E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;49E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;813E;E;d;3;129d;3;460d;3;347d;3;150d;3;230d;3;445d;2;83d;3;372d;3;449d;3;434d;3;480d;3;241d;3;209d;3;349d;2;81d;3;427d;3;485d;3;245d;2;82d;2;73d;3;472d;3;488d;3;448d;3;378d;3;404d;3;469d;3;451d;3;367d;3;376d;3;360d;3;410d;2;58d;2;78d;3;111d;3;224d;3;126d;3;408d;3;203d;3;196d;3;125d;3;239d;3;382d;2;75d;3;477d;3;437d;3;219d;3;348d;3;383d;3;144d;3;489d;3;476d;3;371d;3;393d;3;415d;3;392d;2;74d;2;24d;3;354d;3;206d;2;72d;2;-3d;3;220d;3;407d;3;370d;3;409d;3;295d;3;478d;3;450d;3;355d;2;23d;3;416d;3;227d;3;213d;3;412d;2;86d;3;236d;3;217d;3;438d;3;362d;3;379d;3;197d;3;368d;3;240d;3;373d;3;103d;3;396d;3;386d;3;212d;3;346d;3;401d;3;222d;3;226d;3;374d;3;466d;3;298d;3;127d;3;414d;3;200d;3;296d;3;402d;3;205d;3;459d;3;351d;3;391d;3;479d;3;433d;3;366d;3;482d;2;80d;3;389d;3;418d;3;149d;3;462d;3;428d;3;131d;3;106d;2;37d;3;231d;3;442d;3;198d;3;463d;3;375d;3;124d;3;130d;3;363d;2;57d;3;429d;3;390d;3;440d;3;467d;3;486d;3;223d;3;461d;3;399d;3;439d;3;199d;3;475d;3;216d;2;77d;3;201d;3;436d;3;441d;3;443d;3;145d;3;411d;3;385d;3;387d;3;481d;3;446d;3;204d;3;470d;2;29d;3;444d;3;483d;3;356d;3;112d;3;207d;3;473d;3;417d;3;380d;3;432d;3;221d;3;405d;3;435d;3;413d;3;471d;3;403d;3;381d;3;394d;2;56d;3;208d;3;235d;3;142d;3;350d;3;377d;3;136d;3;465d;3;211d;3;143d;3;398d;2;87d;3;484d;3;431d;3;218d;3;364d;2;92d;3;397d;3;430d;1;5d;3;193d;3;214d;3;228d;2;39d;3;406d;3;202d;3;474d;3;447d;3;426d;3;195d;2;79d;3;388d;3;365d;3;384d;3;297d;3;400d;3;215d;3;233d;2;19d;3;468d;3;225d;3;419d;3;395d;3;134d;3;357d;3;210d;3;232S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;91E;E;E;S;8;ServicesS;14;submenuAction:S;12;Preferences…S;22;{{-1, -1}, {493, 365}}S;20;{{0, 0}, {493, 365}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;612E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;3;165E;E;E;d;2;18S;6;normalD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;611E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;23E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;814E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;815E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;816E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;23E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;623E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;818E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;610E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;32E;E;d;2;10T;F;S;8;Show AllS;4;HelpD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;67E;E;E;S;4;FileS;10;Select AllS;20;{{0, 0}, {491, 363}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;23E;E;E;d;1;8S;20;{{0, 0}, {691, 348}}d;1;4d;2;17S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;41E;E;E;S;6;FormatS;11;Open RecentD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;S;13;SubstitutionsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;102E;E;E;S;5;Find…D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;64E;E;E;S;14;NewApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;109E;E;E;d;22;3.4028230607370965e+38S;4;BoldS;3;NewS;5;CloseS;22;{{477, 347}, {15, 17}}S;18;{{0, 0}, {15, 17}}S;17;disabled+verticald;1;0S;29;_horizontalScrollerDidScroll:f;18;0.9971429109573364S;4;TextS;8;BaselineS;3;Cutd;2;64S;20;Spelling and GrammarS;13;Page Setup...S;11;Paste StyleS;14;Check SpellingD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;2;47E;E;E;S;11;Hide OthersS;20;About NewApplicationS;10;Show RulerS;11;Paste RulerS;8;LigatureD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;149E;E;E;S;5;LowerS;6;Print…S;14;Show Spelling…S;9;AMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;137E;E;E;S;19;NewApplication HelpS;10;Clear MenuS;15;Revert to SavedS;5;PasteD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;69E;E;E;S;14;Start SpeakingS;9;SubscriptS;4;ZoomS;4;UndoS;4;SaveS;1;4S;7;JustifyS;10;Align LeftS;11;Align RightS;27;Check Spelling While TypingS;22;Use Selection for FindS;0;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;2;63E;E;E;S;10;Copy StyleS;26;{3.40282e+38, 3.40282e+38}S;8;CPWindowS;24;{{335, 128}, {491, 363}}d;1;7S;6;WindowS;6;CenterS;8;Use NoneS;6;BiggerS;9;UnderlineS;4;KernD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;158E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;126E;E;E;S;11;Smart LinksS;9;Find NextS;16;Smart Copy/PasteS;5;Open…S;4;FontS;19;Quit NewApplicationS;6;SpeechS;4;FindD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;3;166E;E;E;S;1;0d;2;69d;2;40d;4;1000S;11;SuperscriptS;13;AppControllerS;4;ViewS;8;MinimizeS;5;RaiseS;11;Use DefaultS;13;Find PreviousS;18;Bring All to FrontS;6;DeleteS;4;EditD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;2;61E;E;E;S;4;CopyD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;53E;E;E;S;13;Stop SpeakingS;10;Copy RulerD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;3;136E;E;E;S;12;Show ToolbarS;4;RedoS;11;Show Colorsd;2;67S;18;Customize Toolbar…S;27;Check Grammar With SpellingS;7;Use AllD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;147E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;148E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;3;110E;E;E;S;12;Smart QuotesS;6;ItalicS;6;LoosenS;8;Save As…S;10;Show FontsS;7;SmallerS;7;TightenS;19;Hide NewApplicationS;20;{{1, -1}, {476, 17}}S;19;{{0, 0}, {476, 17}}f;18;0.6888567209243774S;17;Jump to SelectionS;14;loosenKerning:S;12;superscript:S;14;lowerBaseline:S;13;saveDocument:S;29;centerSelectionInVisibleArea:S;19;useStandardKerning:S;24;toggleSmartInsertDelete:S;19;performMiniaturize:S;11;pasteRuler:S;13;performClose:S;10;subscript:S;14;raiseBaseline:S;15;showGuessPanel:S;29;toggleAutomaticLinkDetection:S;12;toggleRuler:S;8;delegateS;19;toggleToolbarShown:S;5;hide:S;6;print:S;30;toggleContinuousSpellChecking:S;10;pasteFont:S;23;performFindPanelAction:S;9;unscript:S;21;orderFrontColorPanel:S;10;copyRuler:S;6;paste:S;22;hideOtherApplications:S;7;delete:S;29;orderFrontStandardAboutPanel:S;31;runToolbarCustomizationPalette:S;14;startSpeaking:S;33;toggleAutomaticQuoteSubstitution:S;13;openDocument:S;10;underline:S;9;showHelp:S;15;turnOffKerning:S;22;unhideAllApplications:S;14;runPageLayout:S;5;redo:S;11;alignRight:S;9;theWindowS;22;toggleGrammarChecking:S;10;terminate:S;16;useAllLigatures:S;10;alignLeft:S;21;clearRecentDocuments:S;12;performZoom:S;15;saveDocumentAs:S;15;arrangeInFront:S;22;revertDocumentToSaved:S;5;copy:S;10;dataSourceS;12;alignCenter:S;15;tightenKerning:S;12;newDocument:S;17;turnOffLigatures:S;15;alignJustified:S;21;useStandardLigatures:S;10;selectAll:S;13;stopSpeaking:S;9;copyFont:S;14;checkSpelling:S;5;undo:S;4;cut:S;21;{{1, 16}, {476, 348}}S;20;{{0, 0}, {476, 348}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;32E;E;E;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;817E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;819E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;820E;D;K;6;CP$UIDd;3;820E;D;K;6;CP$UIDd;3;820E;D;K;6;CP$UIDd;3;821E;E;E;f;10;0.66666669d;1;1E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E;
\ No newline at end of file
+280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;4E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;7E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;9E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;2;10E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;2;11E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;2;12E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;2;13E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;2;14E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;16E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;18E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;195E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;205E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;225E;D;K;6;CP$UIDd;3;226E;D;K;6;CP$UIDd;3;227E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;3;229E;D;K;6;CP$UIDd;3;230E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;232E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;234E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;236E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;241E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;243E;D;K;6;CP$UIDd;3;244E;D;K;6;CP$UIDd;3;245E;D;K;6;CP$UIDd;3;246E;D;K;6;CP$UIDd;3;247E;D;K;6;CP$UIDd;3;248E;D;K;6;CP$UIDd;3;249E;D;K;6;CP$UIDd;3;250E;D;K;6;CP$UIDd;3;251E;D;K;6;CP$UIDd;3;252E;D;K;6;CP$UIDd;3;253E;D;K;6;CP$UIDd;3;254E;D;K;6;CP$UIDd;3;255E;D;K;6;CP$UIDd;3;256E;D;K;6;CP$UIDd;3;257E;D;K;6;CP$UIDd;3;258E;D;K;6;CP$UIDd;3;259E;D;K;6;CP$UIDd;3;260E;D;K;6;CP$UIDd;3;261E;D;K;6;CP$UIDd;3;262E;D;K;6;CP$UIDd;3;263E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;266E;D;K;6;CP$UIDd;3;267E;D;K;6;CP$UIDd;3;268E;D;K;6;CP$UIDd;3;269E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;271E;D;K;6;CP$UIDd;3;272E;D;K;6;CP$UIDd;3;273E;D;K;6;CP$UIDd;3;274E;D;K;6;CP$UIDd;3;275E;D;K;6;CP$UIDd;3;276E;D;K;6;CP$UIDd;3;277E;D;K;6;CP$UIDd;3;278E;D;K;6;CP$UIDd;3;279E;D;K;6;CP$UIDd;3;280E;D;K;6;CP$UIDd;3;281E;D;K;6;CP$UIDd;3;282E;D;K;6;CP$UIDd;3;283E;D;K;6;CP$UIDd;3;284E;D;K;6;CP$UIDd;3;285E;D;K;6;CP$UIDd;3;286E;D;K;6;CP$UIDd;3;287E;D;K;6;CP$UIDd;3;288E;D;K;6;CP$UIDd;3;289E;D;K;6;CP$UIDd;3;290E;D;K;6;CP$UIDd;3;291E;D;K;6;CP$UIDd;3;292E;D;K;6;CP$UIDd;3;293E;D;K;6;CP$UIDd;3;294E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;296E;D;K;6;CP$UIDd;3;297E;D;K;6;CP$UIDd;3;298E;D;K;6;CP$UIDd;3;299E;D;K;6;CP$UIDd;3;300E;D;K;6;CP$UIDd;3;301E;D;K;6;CP$UIDd;3;302E;D;K;6;CP$UIDd;3;303E;D;K;6;CP$UIDd;3;304E;D;K;6;CP$UIDd;3;305E;D;K;6;CP$UIDd;3;306E;D;K;6;CP$UIDd;3;307E;D;K;6;CP$UIDd;3;308E;D;K;6;CP$UIDd;3;309E;D;K;6;CP$UIDd;3;310E;D;K;6;CP$UIDd;3;311E;D;K;6;CP$UIDd;3;312E;D;K;6;CP$UIDd;3;313E;D;K;6;CP$UIDd;3;314E;D;K;6;CP$UIDd;3;315E;D;K;6;CP$UIDd;3;316E;D;K;6;CP$UIDd;3;317E;D;K;6;CP$UIDd;3;318E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;320E;D;K;6;CP$UIDd;3;321E;D;K;6;CP$UIDd;3;322E;D;K;6;CP$UIDd;3;323E;D;K;6;CP$UIDd;3;324E;D;K;6;CP$UIDd;3;325E;D;K;6;CP$UIDd;3;326E;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;3;328E;D;K;6;CP$UIDd;3;329E;D;K;6;CP$UIDd;3;330E;D;K;6;CP$UIDd;3;331E;D;K;6;CP$UIDd;3;332E;D;K;6;CP$UIDd;3;333E;D;K;6;CP$UIDd;3;334E;D;K;6;CP$UIDd;3;336E;D;K;6;CP$UIDd;3;337E;D;K;6;CP$UIDd;3;338E;D;K;6;CP$UIDd;3;339E;D;K;6;CP$UIDd;3;340E;D;K;6;CP$UIDd;3;341E;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;3;343E;D;K;6;CP$UIDd;3;344E;D;K;6;CP$UIDd;3;345E;D;K;6;CP$UIDd;3;346E;D;K;6;CP$UIDd;3;347E;D;K;6;CP$UIDd;3;348E;D;K;6;CP$UIDd;3;349E;D;K;6;CP$UIDd;3;350E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;352E;D;K;6;CP$UIDd;3;353E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;3;356E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;358E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;360E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;362E;D;K;6;CP$UIDd;3;363E;D;K;6;CP$UIDd;3;364E;D;K;6;CP$UIDd;3;365E;D;K;6;CP$UIDd;3;366E;D;K;6;CP$UIDd;3;367E;D;K;6;CP$UIDd;3;368E;D;K;6;CP$UIDd;3;369E;D;K;6;CP$UIDd;3;370E;D;K;6;CP$UIDd;3;371E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;373E;D;K;6;CP$UIDd;3;374E;D;K;6;CP$UIDd;3;375E;D;K;6;CP$UIDd;3;376E;D;K;6;CP$UIDd;3;377E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;3;379E;D;K;6;CP$UIDd;3;380E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;383E;D;K;6;CP$UIDd;3;384E;E;E;S;16;IBCocoaFrameworkd;3;490D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;165E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;28E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;380E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;356E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;376E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;3;364E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;3;332E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;3;365E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;347E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;3;323E;D;K;6;CP$UIDd;3;374E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;346E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;349E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;3;371E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;373E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;360E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;383E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;322E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;367E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;366E;D;K;6;CP$UIDd;3;328E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;340E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;377E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;339E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;337E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;3;379E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;320E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;3;352E;D;K;6;CP$UIDd;3;330E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;370E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;321E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;3;344E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;3;336E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;324E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;338E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;3;369E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;341E;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;350E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;362E;D;K;6;CP$UIDd;3;326E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;345E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;331E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;334E;D;K;6;CP$UIDd;3;375E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;353E;D;K;6;CP$UIDd;3;358E;D;K;6;CP$UIDd;3;343E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;333E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;368E;D;K;6;CP$UIDd;3;384E;D;K;6;CP$UIDd;3;325E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;329E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;363E;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;348E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;385E;D;K;6;CP$UIDd;3;386E;D;K;6;CP$UIDd;3;387E;D;K;6;CP$UIDd;3;388E;D;K;6;CP$UIDd;3;389E;D;K;6;CP$UIDd;3;390E;D;K;6;CP$UIDd;3;391E;D;K;6;CP$UIDd;3;392E;D;K;6;CP$UIDd;3;393E;D;K;6;CP$UIDd;3;394E;D;K;6;CP$UIDd;3;395E;D;K;6;CP$UIDd;3;396E;D;K;6;CP$UIDd;3;397E;D;K;6;CP$UIDd;3;398E;D;K;6;CP$UIDd;3;399E;D;K;6;CP$UIDd;3;400E;D;K;6;CP$UIDd;3;401E;D;K;6;CP$UIDd;3;402E;D;K;6;CP$UIDd;3;403E;D;K;6;CP$UIDd;3;404E;D;K;6;CP$UIDd;3;405E;D;K;6;CP$UIDd;3;406E;D;K;6;CP$UIDd;3;407E;D;K;6;CP$UIDd;3;408E;D;K;6;CP$UIDd;3;409E;D;K;6;CP$UIDd;3;410E;D;K;6;CP$UIDd;3;411E;D;K;6;CP$UIDd;3;412E;D;K;6;CP$UIDd;3;413E;D;K;6;CP$UIDd;3;414E;D;K;6;CP$UIDd;3;415E;D;K;6;CP$UIDd;3;416E;D;K;6;CP$UIDd;3;417E;D;K;6;CP$UIDd;3;418E;D;K;6;CP$UIDd;3;419E;D;K;6;CP$UIDd;3;420E;D;K;6;CP$UIDd;3;421E;D;K;6;CP$UIDd;3;422E;D;K;6;CP$UIDd;3;423E;D;K;6;CP$UIDd;3;424E;D;K;6;CP$UIDd;3;425E;D;K;6;CP$UIDd;3;426E;D;K;6;CP$UIDd;3;427E;D;K;6;CP$UIDd;3;428E;D;K;6;CP$UIDd;3;429E;D;K;6;CP$UIDd;3;430E;D;K;6;CP$UIDd;3;431E;D;K;6;CP$UIDd;3;432E;D;K;6;CP$UIDd;3;433E;D;K;6;CP$UIDd;3;434E;D;K;6;CP$UIDd;3;435E;D;K;6;CP$UIDd;3;436E;D;K;6;CP$UIDd;3;437E;D;K;6;CP$UIDd;3;438E;D;K;6;CP$UIDd;3;439E;D;K;6;CP$UIDd;3;440E;D;K;6;CP$UIDd;3;441E;D;K;6;CP$UIDd;3;442E;D;K;6;CP$UIDd;3;443E;D;K;6;CP$UIDd;3;444E;D;K;6;CP$UIDd;3;445E;D;K;6;CP$UIDd;3;446E;D;K;6;CP$UIDd;3;447E;D;K;6;CP$UIDd;3;448E;D;K;6;CP$UIDd;3;449E;D;K;6;CP$UIDd;3;450E;D;K;6;CP$UIDd;3;451E;D;K;6;CP$UIDd;3;452E;D;K;6;CP$UIDd;3;453E;D;K;6;CP$UIDd;3;454E;D;K;6;CP$UIDd;3;455E;D;K;6;CP$UIDd;3;456E;D;K;6;CP$UIDd;3;457E;D;K;6;CP$UIDd;3;458E;D;K;6;CP$UIDd;3;459E;D;K;6;CP$UIDd;3;460E;D;K;6;CP$UIDd;3;461E;D;K;6;CP$UIDd;3;462E;D;K;6;CP$UIDd;3;463E;D;K;6;CP$UIDd;3;464E;D;K;6;CP$UIDd;3;465E;D;K;6;CP$UIDd;3;466E;D;K;6;CP$UIDd;3;467E;D;K;6;CP$UIDd;3;468E;D;K;6;CP$UIDd;3;469E;D;K;6;CP$UIDd;3;470E;D;K;6;CP$UIDd;3;471E;D;K;6;CP$UIDd;3;472E;D;K;6;CP$UIDd;3;473E;D;K;6;CP$UIDd;3;474E;D;K;6;CP$UIDd;3;475E;D;K;6;CP$UIDd;3;476E;D;K;6;CP$UIDd;3;477E;D;K;6;CP$UIDd;3;478E;D;K;6;CP$UIDd;3;479E;D;K;6;CP$UIDd;3;480E;D;K;6;CP$UIDd;3;481E;D;K;6;CP$UIDd;3;482E;D;K;6;CP$UIDd;3;483E;D;K;6;CP$UIDd;3;484E;D;K;6;CP$UIDd;3;485E;D;K;6;CP$UIDd;3;486E;D;K;6;CP$UIDd;3;487E;D;K;6;CP$UIDd;3;488E;D;K;6;CP$UIDd;3;489E;D;K;6;CP$UIDd;3;490E;D;K;6;CP$UIDd;3;491E;D;K;6;CP$UIDd;3;492E;D;K;6;CP$UIDd;3;493E;D;K;6;CP$UIDd;3;494E;D;K;6;CP$UIDd;3;495E;D;K;6;CP$UIDd;3;496E;D;K;6;CP$UIDd;3;497E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;499E;D;K;6;CP$UIDd;3;500E;D;K;6;CP$UIDd;3;501E;D;K;6;CP$UIDd;3;502E;D;K;6;CP$UIDd;3;503E;D;K;6;CP$UIDd;3;504E;D;K;6;CP$UIDd;3;505E;D;K;6;CP$UIDd;3;506E;D;K;6;CP$UIDd;3;507E;D;K;6;CP$UIDd;3;508E;D;K;6;CP$UIDd;3;509E;D;K;6;CP$UIDd;3;510E;D;K;6;CP$UIDd;3;511E;D;K;6;CP$UIDd;3;512E;D;K;6;CP$UIDd;3;513E;D;K;6;CP$UIDd;3;514E;D;K;6;CP$UIDd;3;515E;D;K;6;CP$UIDd;3;516E;D;K;6;CP$UIDd;3;517E;D;K;6;CP$UIDd;3;518E;D;K;6;CP$UIDd;3;519E;D;K;6;CP$UIDd;3;520E;D;K;6;CP$UIDd;3;521E;D;K;6;CP$UIDd;3;522E;D;K;6;CP$UIDd;3;523E;D;K;6;CP$UIDd;3;524E;D;K;6;CP$UIDd;3;525E;D;K;6;CP$UIDd;3;526E;D;K;6;CP$UIDd;3;527E;D;K;6;CP$UIDd;3;528E;D;K;6;CP$UIDd;3;529E;D;K;6;CP$UIDd;3;530E;D;K;6;CP$UIDd;3;531E;D;K;6;CP$UIDd;3;532E;D;K;6;CP$UIDd;3;533E;D;K;6;CP$UIDd;3;534E;D;K;6;CP$UIDd;3;535E;D;K;6;CP$UIDd;3;536E;D;K;6;CP$UIDd;3;537E;D;K;6;CP$UIDd;3;538E;D;K;6;CP$UIDd;3;539E;D;K;6;CP$UIDd;3;540E;D;K;6;CP$UIDd;3;541E;D;K;6;CP$UIDd;3;542E;D;K;6;CP$UIDd;3;543E;D;K;6;CP$UIDd;3;544E;D;K;6;CP$UIDd;3;545E;D;K;6;CP$UIDd;3;546E;D;K;6;CP$UIDd;3;547E;D;K;6;CP$UIDd;3;548E;D;K;6;CP$UIDd;3;549E;D;K;6;CP$UIDd;3;550E;D;K;6;CP$UIDd;3;551E;D;K;6;CP$UIDd;3;552E;D;K;6;CP$UIDd;3;553E;D;K;6;CP$UIDd;3;554E;D;K;6;CP$UIDd;3;555E;D;K;6;CP$UIDd;3;556E;D;K;6;CP$UIDd;3;557E;D;K;6;CP$UIDd;3;558E;D;K;6;CP$UIDd;3;559E;D;K;6;CP$UIDd;3;560E;D;K;6;CP$UIDd;3;561E;D;K;6;CP$UIDd;3;562E;D;K;6;CP$UIDd;3;563E;D;K;6;CP$UIDd;3;564E;D;K;6;CP$UIDd;3;565E;D;K;6;CP$UIDd;3;566E;D;K;6;CP$UIDd;3;567E;D;K;6;CP$UIDd;3;568E;D;K;6;CP$UIDd;3;569E;D;K;6;CP$UIDd;3;570E;D;K;6;CP$UIDd;3;571E;D;K;6;CP$UIDd;3;572E;D;K;6;CP$UIDd;3;573E;D;K;6;CP$UIDd;3;574E;D;K;6;CP$UIDd;3;575E;D;K;6;CP$UIDd;3;576E;D;K;6;CP$UIDd;3;577E;D;K;6;CP$UIDd;3;578E;D;K;6;CP$UIDd;3;579E;D;K;6;CP$UIDd;3;580E;D;K;6;CP$UIDd;3;581E;D;K;6;CP$UIDd;3;582E;D;K;6;CP$UIDd;3;583E;D;K;6;CP$UIDd;3;584E;D;K;6;CP$UIDd;3;585E;D;K;6;CP$UIDd;3;586E;D;K;6;CP$UIDd;3;587E;D;K;6;CP$UIDd;3;588E;D;K;6;CP$UIDd;3;589E;D;K;6;CP$UIDd;3;590E;D;K;6;CP$UIDd;3;591E;D;K;6;CP$UIDd;3;592E;D;K;6;CP$UIDd;3;593E;D;K;6;CP$UIDd;3;594E;D;K;6;CP$UIDd;3;595E;D;K;6;CP$UIDd;3;596E;D;K;6;CP$UIDd;3;597E;D;K;6;CP$UIDd;3;598E;D;K;6;CP$UIDd;3;599E;D;K;6;CP$UIDd;3;600E;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;601E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;602E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;603E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;604E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;605E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;606E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;601E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;607E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;608E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;40E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;609E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;610E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;611E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;40E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;612E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;613E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;615E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;3;165E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;3;121E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;616E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;616E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;616E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;616E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;617E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;617E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;618E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;619E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;620E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;621E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;622E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;623E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;624E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;625E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;151E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;627E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;628E;E;D;K;10;$classnameS;11;CPTableViewK;8;$classesA;S;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;37E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;615E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;629E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;629E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;615E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;630E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;613E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;631E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;632E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;633E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;618E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;617E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;634E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;39E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;635E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;635E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;636E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;630E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;613E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;637E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;639E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;158E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;640E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;90E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;641E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;299E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;198E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;644E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;645E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;647E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;122E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;648E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;649E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;650E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;158E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;651E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;652E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;141E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;653E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;177E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;654E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;127E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;655E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;656E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;657E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;658E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;656E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;62E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;659E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;660E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;661E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;645E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;662E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;663E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;664E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;665E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;666E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;667E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;668E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;158E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;669E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;670E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;123E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;671E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;672E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;248E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;673E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;674E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;675E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;133E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;676E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;677E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;678E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;158E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;679E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;123E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;680E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;681E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;682E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;640E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;683E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;685E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;686E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;687E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;688E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;689E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;40E;K;41;_CPCibWindowTemplateWindowIsFullBridgeKeyD;K;6;CP$UIDd;3;618E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;690E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;691E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;692E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;693E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;694E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;695E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;696E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;697E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;698E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;36E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;699E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;127E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;700E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;645E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;696E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;102E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;701E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;637E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;41E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;702E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;703E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;604E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;22E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;704E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;137E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;660E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;67E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;705E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;127E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;706E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;127E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;707E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;666E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;70E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;708E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;120E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;709E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;710E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;630E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;613E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;711E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;28E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;712E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;631E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;711E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;713E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;647E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;714E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;679E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;715E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;716E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;717E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;718E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;719E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;689E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;158E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;627E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;36E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;720E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;721E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;266E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;722E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;664E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;665E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;675E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;723E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;718E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;127E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;724E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;70E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;725E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;704E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;726E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;727E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;648E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;52E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;652E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;728E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;206E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;729E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;730E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;731E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;732E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;731E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;145E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;733E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;734E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;735E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;736E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;625E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;737E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;738E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;36E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;739E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;240E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;740E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;741E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;689E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;742E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;214E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;743E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;227E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;744E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;E;D;K;6;$classD;K;6;CP$UIDd;3;120E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;745E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;746E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;630E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;747E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;711E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;28E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;748E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;631E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;711E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;749E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;750E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;S;17;Menu Item (Open…)S;15;Menu (Ligature)S;29;Menu Item (Jump to Selection)S;11;ApplicationS;24;Menu Item (Show Toolbar)S;17;Menu Item (Raise)S;33;Bordered Scroll View (Table View)S;22;Menu Item (Show Fonts)S;22;Menu Item (Copy Style)S;28;Menu Item (Smart Copy/Paste)S;2;10S;20;Menu Item (Show All)S;21;Menu Item (Subscript)S;20;Menu Item (Services)S;13;Menu (Speech)S;10;Table ViewS;12;Content ViewS;21;Menu (NewApplication)S;30;Menu Item (Bring All to Front)S;16;Menu Item (Find)S;17;Menu Item (Paste)S;16;Table Column (6)S;16;Table Column (8)S;18;Menu Item (Bigger)S;25;Menu Item (Use Default)-2S;11;Separator-4S;29;Text Field Cell (Text Cell)-4S;16;Menu Item (Font)S;11;Menu (File)S;30;Menu Item (Customize Toolbar…)S;11;Separator-6S;1;8S;11;Separator-7S;16;Menu Item (Text)S;23;Menu Item (Smart Links)S;17;Table Column (10)S;26;Menu Item (Show Spelling…)S;16;Table Column (4)S;15;Menu (Baseline)S;1;5S;11;Separator-5S;20;Menu Item (Baseline)S;16;Menu Item (Copy)S;11;Menu (Edit)S;27;Text Field Cell (Text Cell)S;25;Menu Item (Use Default)-1S;16;Table Column (0)S;1;2S;20;Menu Item (Minimize)S;22;Menu Item (Align Left)S;22;Menu Item (Clear Menu)S;9;SeparatorS;11;Separator-8S;23;Menu Item (Paste Style)S;22;Menu Item (Show Ruler)S;11;Separator-1S;29;Text Field Cell (Text Cell)-8S;16;Table Column (9)S;23;Menu Item (Show Colors)S;12;File's OwnerS;1;3S;18;Menu Item (Format)S;18;Menu Item (Italic)S;23;Menu Item (Hide Others)S;29;Text Field Cell (Text Cell)-6S;16;Menu Item (Zoom)S;23;Menu Item (Open Recent)S;4;1111S;16;Menu Item (Redo)S;22;Menu Item (Select All)S;11;Menu (Find)S;20;Menu Item (Use None)S;15;Window (Window)S;1;7S;34;Menu Item (Use Selection for Find)S;21;Menu Item (Find Next)S;14;App ControllerS;12;Separator-11S;17;Menu Item (Find…)S;17;Menu Item (Lower)S;30;Text Field Cell (Text Cell)-10S;1;9S;20;Menu (Substitutions)S;25;Menu Item (Stop Speaking)S;26;Menu Item (Check Spelling)S;29;Text Field Cell (Text Cell)-5S;16;Menu Item (Bold)S;23;Menu Item (Use Default)S;25;Menu Item (Substitutions)S;19;Menu Item (Tighten)S;26;Menu Item (NewApplication)S;8;MainMenuS;20;Menu Item (Ligature)S;16;Menu Item (View)S;16;Menu Item (Edit)S;39;Menu Item (Check Grammar With Spelling)S;3;2-1S;39;Menu Item (Check Spelling While Typing)S;15;Menu Item (Cut)S;1;1S;31;Menu Item (Hide NewApplication)S;19;Horizontal ScrollerS;11;Menu (Font)S;18;Menu (Open Recent)S;11;Separator-9S;19;Menu Item (Use All)S;22;Menu Item (Copy Ruler)S;27;Menu (Spelling and Grammar)S;29;Text Field Cell (Text Cell)-1S;18;Menu Item (Window)S;29;Text Field Cell (Text Cell)-7S;18;Menu Item (Speech)S;23;Menu Item (Paste Ruler)S;24;Menu Item (Smart Quotes)S;16;Table Column (1)S;29;Text Field Cell (Text Cell)-2S;13;Menu (Format)S;32;Menu Item (Spelling and Grammar)S;31;Menu Item (NewApplication Help)S;29;Text Field Cell (Text Cell)-3S;19;Menu Item (Smaller)S;11;Menu (View)S;12;Separator-10S;23;Menu Item (Superscript)S;16;Menu Item (File)S;11;Menu (Text)S;16;Table Column (5)S;19;Menu Item (Justify)S;21;Menu Item (Underline)S;11;Menu (Kern)S;16;Menu Item (Kern)S;32;Menu Item (About NewApplication)S;1;6S;23;Menu Item (Align Right)S;18;Menu Item (Delete)S;15;Menu (Services)S;26;Menu Item (Start Speaking)S;3;121S;16;Table Column (7)S;25;Menu Item (Find Previous)S;11;Separator-2S;3;1-1S;13;Menu (Window)S;16;Table Column (2)S;16;Menu Item (Undo)S;16;Table Column (3)S;18;Menu Item (Loosen)S;29;Text Field Cell (Text Cell)-9S;11;Separator-3S;22;Menu Item (Use None)-1S;17;Vertical ScrollerS;18;Menu Item (Center)D;K;10;$classnameS;22;_CPCibControlConnectorK;8;$classesA;S;22;_CPCibControlConnectorS;15;_CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;72E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;751E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;20E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;752E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;89E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;753E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;33E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;754E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;131E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;755E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;60E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;756E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;757E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;104E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;758E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;101E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;759E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;100E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;760E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;73E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;761E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;762E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;114E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;763E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;103E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;764E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;81E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;765E;E;D;K;10;$classnameS;21;_CPCibOutletConnectorK;8;$classesA;S;21;_CPCibOutletConnectorS;15;_CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;335E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;38E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;97E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;766E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;139E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;767E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;23E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;768E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;32E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;769E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;164E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;770E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;88E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;771E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;44E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;772E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;149E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;773E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;166E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;774E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;147E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;16E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;775E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;116E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;776E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;143E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;777E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;99E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;778E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;130E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;779E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;144E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;780E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;106E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;781E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;135E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;782E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;80E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;783E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;148E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;784E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;76E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;785E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;66E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;786E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;152E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;787E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;788E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;53E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;789E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;85E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;790E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;63E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;791E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;162E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;792E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;31E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;793E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;30E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;794E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;119E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;795E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;68E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;796E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;108E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;797E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;87E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;24E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;798E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;42E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;799E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;125E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;800E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;26E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;801E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;157E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;802E;E;D;K;6;$classD;K;6;CP$UIDd;3;335E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;97E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;93E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;803E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;34E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;804E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;49E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;805E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;91E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;806E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;25E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;807E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;117E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;808E;E;D;K;6;$classD;K;6;CP$UIDd;3;335E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;97E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;809E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;126E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;810E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;55E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;811E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;71E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;812E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;58E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;813E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;150E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;814E;E;d;3;444d;3;363d;3;224d;3;193d;3;440d;3;210d;2;-3d;3;428d;3;297d;3;347d;3;389d;3;403d;3;460d;3;350d;3;367d;3;131d;3;212d;3;372d;2;57d;3;218d;3;203d;3;477d;3;214d;3;377d;2;81d;3;298d;2;92d;3;354d;3;204d;3;405d;3;206d;3;399d;3;197d;3;478d;3;443d;3;126d;3;402d;3;144d;3;401d;3;375d;3;239d;3;136d;3;215d;3;370d;3;429d;3;198d;3;413d;3;222d;3;371d;3;221d;3;448d;3;208d;3;384d;3;450d;3;426d;3;418d;3;348d;3;459d;2;29d;3;398d;3;346d;3;217d;2;74d;3;199d;3;240d;3;462d;3;414d;3;125d;3;357d;3;228d;3;386d;2;19d;3;476d;3;232d;3;351d;3;387d;3;466d;3;111d;3;216d;3;376d;3;431d;3;395d;3;400d;3;439d;3;373d;2;83d;3;415d;3;397d;2;58d;2;78d;3;441d;3;383d;3;366d;3;130d;3;202d;3;364d;3;129d;3;479d;2;73d;2;24d;3;430d;3;207d;3;471d;3;470d;3;149d;3;417d;2;72d;3;411d;3;451d;3;365d;3;442d;3;409d;3;360d;3;127d;3;112d;3;434d;3;150d;3;408d;3;463d;1;5d;3;416d;3;394d;3;481d;3;468d;3;374d;2;80d;3;396d;3;378d;3;445d;3;485d;3;473d;2;77d;3;205d;3;412d;3;465d;3;488d;2;23d;3;106d;3;380d;3;236d;3;404d;3;385d;3;480d;3;483d;3;225d;3;489d;2;75d;3;356d;3;391d;3;145d;3;467d;3;245d;3;124d;2;39d;3;220d;2;79d;3;209d;3;410d;3;472d;2;82d;3;349d;3;195d;3;201d;3;406d;3;390d;3;484d;2;56d;3;295d;3;231d;3;226d;3;219d;3;432d;3;103d;3;134d;3;388d;3;393d;2;87d;3;200d;3;482d;3;211d;3;486d;3;435d;3;223d;3;474d;3;142d;3;296d;3;407d;3;368d;3;379d;3;362d;3;438d;3;475d;3;233d;3;382d;3;392d;3;433d;3;446d;3;447d;3;196d;3;227d;3;213d;3;143d;3;469d;3;449d;3;235d;3;230d;3;437d;2;37d;2;86d;3;427d;3;419d;3;355d;3;436d;3;381d;3;461d;3;241S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;93E;E;E;S;5;Open…S;8;LigatureD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;125E;E;E;S;17;Jump to SelectionS;12;Show ToolbarS;5;RaiseS;22;{{-1, -1}, {493, 365}}S;20;{{0, 0}, {493, 365}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;615E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;121E;E;E;d;2;18S;6;normalD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;614E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;815E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;816E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;817E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;630E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;819E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;613E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;38E;E;d;2;10T;F;S;10;Show FontsS;10;Copy StyleS;16;Smart Copy/PasteS;15;Revert to SavedS;8;Show AllS;9;SubscriptS;8;ServicesS;14;submenuAction:S;6;SpeechD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;103E;E;E;S;20;{{0, 0}, {691, 348}}d;1;8d;1;4d;2;17S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;59E;E;E;S;20;{{0, 0}, {491, 363}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;28E;E;E;S;14;NewApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;2;87E;E;E;S;18;Bring All to FrontS;4;FindS;5;Pasted;2;64d;22;3.4028230607370965e+38S;6;BiggerS;11;Use DefaultS;0;S;4;FontS;4;FileD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;3;148E;E;E;S;18;Customize Toolbar…S;8;Save As…S;4;TextS;11;Smart LinksS;14;Show Spelling…S;1;4S;8;BaselineD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;3;100E;E;E;S;13;Page Setup...S;4;CopyS;4;EditD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;129E;E;E;S;1;0d;2;69d;2;40d;4;1000S;4;HelpD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;135E;E;E;S;8;MinimizeS;10;Align LeftS;10;Clear MenuS;11;Paste StyleS;10;Show RulerS;11;Show ColorsS;4;SaveS;6;FormatS;6;ItalicS;11;Hide OthersS;4;ZoomS;11;Open RecentS;19;Quit NewApplicationS;4;RedoS;10;Select AllD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;23E;E;E;S;8;Use NoneS;26;{3.40282e+38, 3.40282e+38}S;8;CPWindowS;24;{{335, 128}, {491, 363}}d;1;7S;6;WindowS;22;Use Selection for FindS;9;Find NextS;13;AppControllerS;5;Find…S;5;LowerS;3;NewS;13;SubstitutionsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;2;58E;E;E;S;13;Stop SpeakingS;14;Check SpellingS;4;BoldS;7;TightenS;9;AMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;118E;E;E;S;4;ViewS;27;Check Grammar With SpellingS;27;Check Spelling While TypingS;3;CutS;19;Hide NewApplicationS;20;{{1, -1}, {476, 17}}S;19;{{0, 0}, {476, 17}}d;1;0S;29;_horizontalScrollerDidScroll:f;18;0.6888567209243774D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;76E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;73E;E;E;S;7;Use AllS;10;Copy RulerS;20;Spelling and GrammarD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;114E;E;E;S;11;Paste RulerS;12;Smart Quotesd;2;67D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;57E;E;E;S;19;NewApplication HelpS;7;SmallerD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;53E;E;E;S;11;SuperscriptD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;130E;E;E;S;7;JustifyS;9;UnderlineS;4;KernD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;162E;E;E;S;20;About NewApplicationS;6;Print…S;11;Align RightS;6;DeleteD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;S;14;Start SpeakingS;12;Preferences…S;13;Find PreviousS;5;CloseD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;42E;E;E;S;4;UndoS;6;LoosenS;22;{{477, 16}, {17, 348}}S;19;{{0, 0}, {17, 348}}S;17;disabled+verticalS;27;_verticalScrollerDidScroll:f;18;0.9971429109573364S;6;CenterS;10;alignLeft:S;13;openDocument:S;10;selectAll:S;22;unhideAllApplications:S;33;toggleAutomaticQuoteSubstitution:S;15;showGuessPanel:S;5;undo:S;14;checkSpelling:S;12;newDocument:S;14;lowerBaseline:S;21;clearRecentDocuments:S;22;hideOtherApplications:S;22;toggleGrammarChecking:S;13;stopSpeaking:S;13;saveDocument:S;10;dataSourceS;12;superscript:S;29;centerSelectionInVisibleArea:S;22;revertDocumentToSaved:S;15;turnOffKerning:S;5;redo:S;6;paste:S;11;alignRight:S;12;alignCenter:S;29;orderFrontStandardAboutPanel:S;30;toggleContinuousSpellChecking:S;15;alignJustified:S;23;performFindPanelAction:S;11;pasteRuler:S;10;underline:S;9;unscript:S;9;showHelp:S;21;orderFrontColorPanel:S;6;print:S;10;pasteFont:S;5;copy:S;14;startSpeaking:S;12;toggleRuler:S;31;runToolbarCustomizationPalette:S;12;performZoom:S;14;runPageLayout:S;14;loosenKerning:S;24;toggleSmartInsertDelete:S;9;copyFont:S;5;hide:S;21;useStandardLigatures:S;15;tightenKerning:S;10;terminate:S;15;arrangeInFront:S;16;useAllLigatures:S;14;raiseBaseline:S;13;performClose:S;9;theWindowS;10;subscript:S;19;useStandardKerning:S;17;turnOffLigatures:S;19;toggleToolbarShown:S;4;cut:S;8;delegateS;10;copyRuler:S;15;saveDocumentAs:S;19;performMiniaturize:S;29;toggleAutomaticLinkDetection:S;7;delete:S;21;{{1, 16}, {476, 348}}S;20;{{0, 0}, {476, 348}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;38E;E;E;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;818E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;820E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;821E;D;K;6;CP$UIDd;3;821E;D;K;6;CP$UIDd;3;821E;D;K;6;CP$UIDd;3;822E;E;E;f;10;0.66666669d;1;1E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E;
\ No newline at end of file
From a5a43de26ecda590234341db18f8bb29937eb7fb Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Wed, 8 Jul 2009 11:52:47 -0700
Subject: [PATCH 078/244] Fix for objectAtIndex: throwing out of range
exceptions.
Closes #105.
Reviewed by me.
---
Foundation/CPArray.j | 4 ++++
Tests/Foundation/CPArrayTest.j | 40 ++++++++++++++++++++++++++++++++++
2 files changed, 44 insertions(+)
diff --git a/Foundation/CPArray.j b/Foundation/CPArray.j
index 29139a5f5..efe2e8196 100755
--- a/Foundation/CPArray.j
+++ b/Foundation/CPArray.j
@@ -26,6 +26,7 @@
@import "CPSortDescriptor.j"
@import "CPException.j"
+
/* @ignore */
@implementation _CPArrayEnumerator : CPEnumerator
{
@@ -520,6 +521,9 @@
*/
- (id)objectAtIndex:(int)anIndex
{
+ if (anIndex >= length)
+ [CPException raise:CPRangeException reason:@"index (" + anIndex + @") beyond bounds (" + length + @")"];
+
return self[anIndex];
}
diff --git a/Tests/Foundation/CPArrayTest.j b/Tests/Foundation/CPArrayTest.j
index eba367e5c..04ea56486 100644
--- a/Tests/Foundation/CPArrayTest.j
+++ b/Tests/Foundation/CPArrayTest.j
@@ -115,6 +115,46 @@
equals:2];
}
+- (void)testIndexOutOfBounds
+{
+ try
+ {
+ [[] objectAtIndex:0];
+ [self assert:false];
+ }
+ catch (anException)
+ {
+ [self assert:[anException name] equals:CPRangeException];
+ [self assert:[anException reason] equals:@"index (0) beyond bounds (0)"];
+ }
+
+ [[0, 1, 2] objectAtIndex:0];
+ [[0, 1, 2] objectAtIndex:1];
+ [[0, 1, 2] objectAtIndex:2];
+
+ try
+ {
+ [[0, 1, 2] objectAtIndex:3];
+ [self assert:false];
+ }
+ catch (anException)
+ {
+ [self assert:[anException name] equals:CPRangeException];
+ [self assert:[anException reason] equals:@"index (3) beyond bounds (3)"];
+ }
+
+ try
+ {
+ [[0, 1, 2] objectAtIndex:4];
+ [self assert:false];
+ }
+ catch (anException)
+ {
+ [self assert:[anException name] equals:CPRangeException];
+ [self assert:[anException reason] equals:@"index (4) beyond bounds (3)"];
+ }
+}
+
@end
@implementation CPArray (reverse)
From 3761fb8037387a0b0618ad9895810ffd915587a3 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Thu, 9 Jul 2009 10:55:38 -0700
Subject: [PATCH 079/244] Removed some commented code.
Reviewed by me.
---
Tools/nib2cib/NSIBObjectData.j | 14 --------------
1 file changed, 14 deletions(-)
diff --git a/Tools/nib2cib/NSIBObjectData.j b/Tools/nib2cib/NSIBObjectData.j
index 9031edd02..a30a7ba8c 100644
--- a/Tools/nib2cib/NSIBObjectData.j
+++ b/Tools/nib2cib/NSIBObjectData.j
@@ -20,20 +20,6 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
-/*#import "NSIBObjectData.h"
-#import
-#import
-#import
-#import
-#import
-#import "NSNibKeyedUnarchiver.h"
-#import "NSCustomObject.h"
-#import
-#import
-#import */
-
-@import
-
@import
From afba1909bb4dac215ebf53ad0b61d0cf40c95ab1 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sat, 11 Jul 2009 18:12:20 -0700
Subject: [PATCH 080/244] Improved TableView nib support as well as including
several nib2cib improvements.
Reviewed by me.
---
Foundation/CPKeyedUnarchiver.j | 2 +-
Tools/nib2cib/Converter+Mac.j | 85 ++++++++++++
Tools/nib2cib/Converter.j | 160 +++++++++++++++++++++++
Tools/nib2cib/NSClipView.j | 5 +
Tools/nib2cib/NSCustomResource.j | 8 +-
Tools/nib2cib/NSView.j | 38 +-----
Tools/nib2cib/Nib2CibKeyedUnarchiver.j | 70 ++++++----
Tools/nib2cib/main.j | 172 ++++++-------------------
8 files changed, 346 insertions(+), 194 deletions(-)
create mode 100644 Tools/nib2cib/Converter+Mac.j
create mode 100644 Tools/nib2cib/Converter.j
diff --git a/Foundation/CPKeyedUnarchiver.j b/Foundation/CPKeyedUnarchiver.j
index 6f5d45258..37b5c20e9 100644
--- a/Foundation/CPKeyedUnarchiver.j
+++ b/Foundation/CPKeyedUnarchiver.j
@@ -108,7 +108,7 @@ var _CPKeyedUnarchiverArrayClass = Ni
CPDictionary _replacementClasses;
- CPDictionary _objects;
+ CPArray _objects;
CPDictionary _archive;
CPDictionary _plistObject;
diff --git a/Tools/nib2cib/Converter+Mac.j b/Tools/nib2cib/Converter+Mac.j
new file mode 100644
index 000000000..982f10801
--- /dev/null
+++ b/Tools/nib2cib/Converter+Mac.j
@@ -0,0 +1,85 @@
+/*
+ * Converter+Mac.j
+ * nib2cib
+ *
+ * Created by Francisco Tolmasky.
+ * Copyright 2008, 280 North, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+
+@import "Converter.j"
+
+
+@implementation Converter (Mac)
+
+- (void)convertedDataFromMacData:(CPData)data resourcesPath:(CPString)aResourcesPath
+{
+ // Unarchive the NS data
+ var unarchiver = [[Nib2CibKeyedUnarchiver alloc] initForReadingWithData:data resourcesPath:aResourcesPath],
+ objectData = [unarchiver decodeObjectForKey:@"IB.objectdata"];
+
+ // Perform a bit of post-processing on views since all CP views are flipped.
+ // It's better to do this here (instead of say, in NSView::initWithCoder:),
+ // because at this point all the objects an mappings are stabilized.
+ var objects = [unarchiver allObjects],
+ count = [objects count];
+
+ while (count--)
+ {
+ var object = objects[count];
+
+ if (![object isKindOfClass:[CPView class]])
+ continue;
+
+ var superview = [object superview];
+
+ if (!superview || [superview NS_isFlipped])
+ continue;
+
+ var superviewHeight = CGRectGetHeight([superview bounds]),
+ frame = [object frame];
+
+ [object setFrameOrigin:CGPointMake(CGRectGetMinX(frame), superviewHeight - CGRectGetMaxY(frame))];
+
+ var NS_autoresizingMask = [object autoresizingMask];
+
+ autoresizingMask = NS_autoresizingMask & ~(CPViewMaxYMargin | CPViewMinYMargin);
+
+ if (!(NS_autoresizingMask & (CPViewMaxYMargin | CPViewMinYMargin | CPViewHeightSizable)))
+ autoresizingMask |= CPViewMinYMargin;
+ else
+ {
+ if (NS_autoresizingMask & CPViewMaxYMargin)
+ autoresizingMask |= CPViewMinYMargin;
+ if (NS_autoresizingMask & CPViewMinYMargin)
+ autoresizingMask |= CPViewMaxYMargin;
+ }
+
+ [object setAutoresizingMask:autoresizingMask];
+ }
+
+ // Re-archive the CP data.
+ var convertedData = [CPData data],
+ archiver = [[CPKeyedArchiver alloc] initForWritingWithMutableData:convertedData];
+
+ [archiver encodeObject:objectData forKey:@"CPCibObjectDataKey"];
+ [archiver finishEncoding];
+
+ return convertedData;
+}
+
+@end
diff --git a/Tools/nib2cib/Converter.j b/Tools/nib2cib/Converter.j
new file mode 100644
index 000000000..e4f261571
--- /dev/null
+++ b/Tools/nib2cib/Converter.j
@@ -0,0 +1,160 @@
+/*
+ * Converter.j
+ * nib2cib
+ *
+ * Created by Francisco Tolmasky.
+ * Copyright 2008, 280 North, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+@import
+@import
+
+var File = require("file"),
+ popen = require("os").popen;
+
+
+NibFormatUndetermined = 0,
+NibFormatMac = 1,
+NibFormatIPhone = 2;
+
+ConverterConversionException = @"ConverterConversionException";
+
+@implementation Converter : CPObject
+{
+ NibFormat format @accessors;
+ CPString inputPath @accessors;
+ CPString outputPath @accessors;
+ CPString resourcesPath @accessors;
+}
+
+- (id)init
+{
+ self = [super init];
+
+ if (self)
+ [self setFormat:NibFormatUndetermined];
+
+ return self;
+}
+
+- (void)convert
+{
+ try
+ {
+ if ([resourcesPath length] && !File.isReadable(resourcesPath))
+ [CPException raise:ConverterConversionException reason:@"Could not read Resources at path \"" + resourcesPath + "\""];
+
+ var stringContents = File.read(inputPath, { charset:"UTF-8" }),
+ inferredFormat = format;
+
+ if (inferredFormat === NibFormatUndetermined)
+ {
+ // Assume its a Mac file.
+ inferredFormat = NibFormatMac;
+
+ // Some .xibs are iPhone nibs, check the actual contents in this case.
+ if (File.extname(inputPath) !== ".nib" &&
+ stringContents.indexOf("\s*CF\$UID\s*\<\/key\>/g, "CP$UID ");
+ plistContents = String(java.lang.String(plistContents).replaceAll("\\\\s*CF\\$UID\\s*\\<\/key\\>", "CP\\$UID "));
+
+ return [CPData dataWithString:plistContents];
+}
+
+@end
+
+File.createTempFile = function(aName, anExtension, shouldDeleteOnExit)
+{
+ var tempFile = Packages.java.io.File.createTempFile(aName, anExtension),
+ tempFilePath = String(tempFile.getAbsolutePath());
+
+ if (shouldDeleteOnExit)
+ tempFile.deleteOnExit();
+
+ return String(tempFilePath);
+}
+
+function cibExtension(aPath)
+{
+ var start = aPath.length - 1;
+
+ while (aPath.charAt(start) === '/')
+ start--;
+
+ aPath = aPath.substr(0, start + 1);
+
+ var dotIndex = aPath.lastIndexOf('.');
+
+ if (dotIndex == -1)
+ return aPath + ".cib";
+
+ var slashIndex = aPath.lastIndexOf('/');
+
+ if (slashIndex > dotIndex)
+ return aPath + ".cib";
+
+ return aPath.substr(0, dotIndex) + ".cib";
+}
+
+@import "Converter+Mac.j"
diff --git a/Tools/nib2cib/NSClipView.j b/Tools/nib2cib/NSClipView.j
index 7ed55cfa5..7c0d9621c 100644
--- a/Tools/nib2cib/NSClipView.j
+++ b/Tools/nib2cib/NSClipView.j
@@ -40,6 +40,11 @@
return self;
}
+- (BOOL)NS_isFlipped
+{
+ return YES;
+}
+
@end
@implementation NSClipView : CPClipView
diff --git a/Tools/nib2cib/NSCustomResource.j b/Tools/nib2cib/NSCustomResource.j
index ccad4210e..e700fbe9c 100644
--- a/Tools/nib2cib/NSCustomResource.j
+++ b/Tools/nib2cib/NSCustomResource.j
@@ -49,13 +49,13 @@ importClass(javax.imageio.ImageIO);
}
else
{
- var resourceFile = [aCoder resourceFileForName:_resourceName];
-
- if (!resourceFile)
+ var resourcePath = [aCoder resourcePathForName:_resourceName];
+
+ if (!resourcePath)
CPLog.warn("***WARNING: Resource named " + _resourceName + " not found in supplied resources path.");
else
{
- var imageStream = ImageIO.createImageInputStream(resourceFile),
+ var imageStream = ImageIO.createImageInputStream(new Packages.java.io.File(resourcePath).getCanonicalFile()),
readers = ImageIO.getImageReaders(imageStream),
reader = null;
diff --git a/Tools/nib2cib/NSView.j b/Tools/nib2cib/NSView.j
index 0025bb7ef..8e0c8c219 100644
--- a/Tools/nib2cib/NSView.j
+++ b/Tools/nib2cib/NSView.j
@@ -56,42 +56,13 @@
_subviews = [];
var vFlags = [aCoder decodeIntForKey:@"NSvFlags"];
-
- var autoresizingMaskNS = vFlags & 0x3F;
-
- // swap Y coordinate flags:
- _autoresizingMask = autoresizingMaskNS & ~(CPViewMaxYMargin | CPViewMinYMargin)
- if (!(autoresizingMaskNS & (CPViewMaxYMargin | CPViewMinYMargin | CPViewHeightSizable)))
- {
- _autoresizingMask |= CPViewMinYMargin;
- }
- else
- {
- if (autoresizingMaskNS & CPViewMaxYMargin)
- _autoresizingMask |= CPViewMinYMargin;
- if (autoresizingMaskNS & CPViewMinYMargin)
- _autoresizingMask |= CPViewMaxYMargin;
- }
-
+
+ _autoresizingMask = vFlags & 0x3F;
_autoresizesSubviews = vFlags & (1 << 8);
_hitTests = YES;
_isHidden = NO;//[aCoder decodeObjectForKey:CPViewIsHiddenKey];
_opacity = 1.0;//[aCoder decodeIntForKey:CPViewOpacityKey];
-
- if (YES/*[_superview isFlipped]*/)
- {
- var height = CGRectGetHeight([self bounds]),
- count = [_subviews count];
-
- while (count--)
- {
- var subview = _subviews[count],
- frame = [subview frame];
-
- [subview setFrameOrigin:CGPointMake(CGRectGetMinX(frame), height - CGRectGetMaxY(frame))];
- }
- }
_themeAttributes = {};
_themeState = CPThemeStateNormal;
@@ -101,6 +72,11 @@
return self;
}
+- (BOOL)NS_isFlipped
+{
+ return NO;
+}
+
@end
@implementation NSView : CPView
diff --git a/Tools/nib2cib/Nib2CibKeyedUnarchiver.j b/Tools/nib2cib/Nib2CibKeyedUnarchiver.j
index 03f5415b7..c91d619ae 100644
--- a/Tools/nib2cib/Nib2CibKeyedUnarchiver.j
+++ b/Tools/nib2cib/Nib2CibKeyedUnarchiver.j
@@ -1,51 +1,75 @@
+/*
+ * NSKeyedArchiver.j
+ * nib2cib
+ *
+ * Created by Francisco Tolmasky.
+ * Copyright 2008, 280 North, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
@import
+var File = require("file");
+
@implementation Nib2CibKeyedUnarchiver : CPKeyedUnarchiver
{
- File resourcesFile;
+ CPString resourcesPath;
}
-- (id)initForReadingWithData:(CPData)data resourcesFile:(File)aResourcesFile
+- (id)initForReadingWithData:(CPData)data resourcesPath:(CPString)aResourcesPath
{
self = [super initForReadingWithData:data];
-
+
if (self)
- resourcesFile = aResourcesFile;
-
+ resourcesPath = aResourcesPath;
+
return self;
}
-- (File)resourcesFile
+- (CPArray)allObjects
{
- return resourcesFile;
+ return _objects;
}
-- (File)resourceFileForName:(CPString)aName
+- (CPString)resourcePathForName:(CPString)aName
{
- var moreFiles = [resourcesFile.listFiles()];
+ if (!resourcesPath)
+ return NULL;
- do
+ var pathGroups = [File.list(resourcesPath)];
+
+ while (pathGroups.length > 0)
{
- var files = moreFiles.shift(),
+ var paths = pathGroups.shift(),
index = 0,
- count = files.length;
-
+ count = paths.length;
+
for (; index < count; ++index)
{
- var file = files[index].getCanonicalFile(),
- name = String(file.getName());
-
- if (name === aName)
- return file;
-
- if (file.isDirectory())
- moreFiles.push(file.listFiles());
+ var path = files[index];
+
+ if (File.basename(path) === aName)
+ return path;
+
+ if (File.isDirectory(path))
+ pathGroups.push(File.list(path));
}
}
- while (moreFiles.length > 0)
-
+
return NULL;
}
diff --git a/Tools/nib2cib/main.j b/Tools/nib2cib/main.j
index 9654facc7..b0f0ed8c3 100644
--- a/Tools/nib2cib/main.j
+++ b/Tools/nib2cib/main.j
@@ -20,14 +20,15 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
-
@import
@import
@import "NSFoundation.j"
@import "NSAppKit.j"
+
@import "Nib2CibKeyedUnarchiver.j"
+@import "Converter.j"
var File = require("file");
@@ -35,118 +36,15 @@ importPackage(java.io);
CPLogRegister(CPLogPrint);
-function exec(command)
-{
- var p = Packages.java.lang.Runtime.getRuntime().exec(command);
- var result = p.waitFor();
-
- var reader = new Packages.java.io.BufferedReader(new Packages.java.io.InputStreamReader(p.getInputStream()));
- while (s = reader.readLine())
- print(s);
-
- var reader = new Packages.java.io.BufferedReader(new Packages.java.io.InputStreamReader(p.getErrorStream()));
- while (s = reader.readLine())
- print(s);
-
- return result;
-}
-
function printUsage()
{
- java.lang.System.out.println("usage: nib2cib INPUT_FILE [OUTPUT_FILE] [-F /path/to/required/framework]");
+ print("usage: nib2cib INPUT_FILE [OUTPUT_FILE] [-F /path/to/required/framework] [-R path/to/resources]");
java.lang.System.exit(1);
}
-function cibExtension(aPath)
-{
- var start = aPath.length - 1;
-
- while (aPath.charAt(start) === '/')
- start--;
-
- aPath = aPath.substr(0, start + 1);
-
- var dotIndex = aPath.lastIndexOf('.');
-
- if (dotIndex == -1)
- return aPath + ".cib";
-
- var slashIndex = aPath.lastIndexOf('/');
-
- if (slashIndex > dotIndex)
- return aPath + ".cib";
-
- return aPath.substr(0, dotIndex) + ".cib";
-}
-
-function convert(inputFileName, outputFileName, resourcesPath)
-{
- var resourcesFile = nil;
-
- if (resourcesPath)
- {
- resourcesFile = new java.io.File(resourcesPath).getCanonicalFile();
-
- if (!resourcesFile.canRead())
- {
- print("Could not find Resources at " + resourcesFile);
- return;
- }
- }
-
- // Make sure we can read the file
- if (!(new Packages.java.io.File(inputFileName)).canRead())
- {
- print("Could not read file at " + inputFileName);
- return;
- }
-
- // Compile xib or nib to make sure we have a non-new format nib.
- var temporaryNibFile = java.io.File.createTempFile("temp", ".nib"),
- temporaryNibFilePath = temporaryNibFile.getAbsolutePath();
-
- temporaryNibFile.deleteOnExit();
-
- if (exec(["/usr/bin/ibtool", inputFileName, "--compile", temporaryNibFilePath]))
- {
- print("Could not compile file at " + inputFileName);
- return;
- }
-
- // Convert from binary plist to XML plist
- var temporaryPlistFile = java.io.File.createTempFile("temp", ".plist"),
- temporaryPlistFilePath = String(temporaryPlistFile.getAbsolutePath());
-
- temporaryPlistFile.deleteOnExit();
-
- if (exec(["/usr/bin/plutil", "-convert", "xml1", temporaryNibFilePath, "-o", temporaryPlistFilePath]))
- {
- print("Could not convert to xml plist for file at " + inputFileName);
- return;
- }
-
- var data = [CPData dataWithString:File.read(String(temporaryPlistFilePath), { charset:"UTF-8" })];
-
- // Minor NSKeyedArchive to CPKeyedArchive conversion.
- [data setString:[data string].replace(/\\s*CF\$UID\s*\<\/key\>/g, "CP$UID ")];
-
- // Unarchive the NS data
- var unarchiver = [[Nib2CibKeyedUnarchiver alloc] initForReadingWithData:data resourcesFile:resourcesFile],
- objectData = [unarchiver decodeObjectForKey:@"IB.objectdata"],
-
- data = [CPData data],
- archiver = [[CPKeyedArchiver alloc] initForWritingWithMutableData:data];
-
- // Re-archive the CP data.
- [archiver encodeObject:objectData forKey:@"CPCibObjectDataKey"];
- [archiver finishEncoding];
-
- File.write(outputFileName, [data string], { charset:"UTF-8" });
-}
-
function loadFrameworks(frameworkPaths, aCallback)
{
- if (frameworkPaths.length === 0)
+ if (!frameworkPaths || frameworkPaths.length === 0)
return aCallback();
var frameworkPath = frameworkPaths.shift(),
@@ -167,6 +65,8 @@ function loadFrameworks(frameworkPaths, aCallback)
java.lang.System.exit(1);
}
+ print("Loading " + [infoDictionary objectForKey:@"CPBundleName"]);
+
var files = [infoDictionary objectForKey:@"CPBundleReplacedFiles"],
count = files.length;
@@ -175,14 +75,18 @@ function loadFrameworks(frameworkPaths, aCallback)
var context = new objj_context();
context.didCompleteCallback = function() { loadFrameworks(frameworkPaths, aCallback) };
-
+print("2he");
while (count--)
+ {
+ print(frameworkPath + '/' + files[count]);
context.pushFragment(fragment_create_file(frameworkPath + '/' + files[count], new objj_bundle(""), YES, NULL));
-
- context.evaluate();
+ }
+print("hmmm");
+ context.evaluate();print("wha???");
}
else
loadFrameworks(frameworkPaths, aCallback);
+print("so far so good...");
}
function main()
@@ -190,41 +94,39 @@ function main()
var count = arguments.length;
if (count < 1)
- printUsage();
+ return printUsage();
var index = 0,
-
- inputFileName = nil,
- outputFileName = nil,
- resourcesPath = nil,
- frameworkPaths = [];
+
+ frameworkPaths = [],
+ converter = [[Converter alloc] init];
for (; index < count; ++index)
{
switch(arguments[index])
{
case "-help":
- case "--help": printUsage();
-
- case "-F": frameworkPaths.push(arguments[++index]);
- break;
-
- case "-R": resourcesPath = arguments[++index];
- break;
-
- default: if (inputFileName && inputFileName.length > 0)
- outputFileName = arguments[index];
- else
- inputFileName = arguments[index];
+ case "--help": printUsage();
+ break;
+
+ case "--mac": [converter setFormat:NibFormatMac];
+ break;
+
+ case "-F": frameworkPaths.push(arguments[++index]);
+ break;
+
+ case "-R": [converter setResourcesPath:arguments[++index]];
+ break;
+
+ default: if ([converter inputPath])
+ [converter setOutputPath:arguments[index]];
+ else
+ [converter setInputPath:arguments[index]];
}
}
- if (!outputFileName || outputFileName.length < 1)
- outputFileName = cibExtension(inputFileName);
-
- if (frameworkPaths.length)
- loadFrameworks(frameworkPaths, function() { convert(inputFileName, outputFileName, resourcesPath); });
-
- else
- convert(inputFileName, outputFileName, resourcesPath);
+ loadFrameworks(frameworkPaths, function()
+ {
+ [converter convert];
+ });
}
From d0599aef8f37f6dffcfa999e2626785de1603e47 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sat, 11 Jul 2009 20:31:12 -0700
Subject: [PATCH 081/244] More java call removal from nib2cib.
Reviewed by me.
---
Tools/nib2cib/main.j | 21 ++++++++++-----------
1 file changed, 10 insertions(+), 11 deletions(-)
diff --git a/Tools/nib2cib/main.j b/Tools/nib2cib/main.j
index b0f0ed8c3..294748070 100644
--- a/Tools/nib2cib/main.j
+++ b/Tools/nib2cib/main.j
@@ -46,30 +46,29 @@ function loadFrameworks(frameworkPaths, aCallback)
{
if (!frameworkPaths || frameworkPaths.length === 0)
return aCallback();
-
+
var frameworkPath = frameworkPaths.shift(),
-
- infoPlist = new java.io.File(frameworkPath + "/Info.plist");
-
- if (!infoPlist.exists())
+ infoPlistPath = frameworkPath + "/Info.plist";
+
+ if (!File.isReadable(infoPlistPath))
{
- java.lang.System.out.println("'" + frameworkPath + "' is not a framework or could not be found.");
+ print("'" + frameworkPath + "' is not a framework or could not be found.");
java.lang.System.exit(1);
}
-
- var infoDictionary = CPPropertyListCreateFromData([CPData dataWithString:File.read(frameworkPath + "/Info.plist", { charset:"UTF-8" })]);
+
+ var infoDictionary = CPPropertyListCreateFromData([CPData dataWithString:File.read(infoPlistPath, { charset:"UTF-8" })]);
if ([infoDictionary objectForKey:@"CPBundlePackageType"] !== "FMWK")
{
- java.lang.System.out.println("'" + frameworkPath + "' is not a framework.");
+ print("'" + frameworkPath + "' is not a framework.");
java.lang.System.exit(1);
}
print("Loading " + [infoDictionary objectForKey:@"CPBundleName"]);
-
+
var files = [infoDictionary objectForKey:@"CPBundleReplacedFiles"],
count = files.length;
-
+
if (count)
{
var context = new objj_context();
From 308bbb2f8c0c386d85bff5fb48483fbdd28abf64 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sat, 11 Jul 2009 21:01:07 -0700
Subject: [PATCH 082/244] Updated tableview nib.
Reviewed by me.
---
TableCibTest/Resources/MainMenu.cib | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/TableCibTest/Resources/MainMenu.cib b/TableCibTest/Resources/MainMenu.cib
index e873817a6..cc4ca88e9 100644
--- a/TableCibTest/Resources/MainMenu.cib
+++ b/TableCibTest/Resources/MainMenu.cib
@@ -1 +1 @@
-280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;4E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;7E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;9E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;2;10E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;2;11E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;2;12E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;2;13E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;2;14E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;16E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;18E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;195E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;205E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;225E;D;K;6;CP$UIDd;3;226E;D;K;6;CP$UIDd;3;227E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;3;229E;D;K;6;CP$UIDd;3;230E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;232E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;234E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;236E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;241E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;243E;D;K;6;CP$UIDd;3;244E;D;K;6;CP$UIDd;3;245E;D;K;6;CP$UIDd;3;246E;D;K;6;CP$UIDd;3;247E;D;K;6;CP$UIDd;3;248E;D;K;6;CP$UIDd;3;249E;D;K;6;CP$UIDd;3;250E;D;K;6;CP$UIDd;3;251E;D;K;6;CP$UIDd;3;252E;D;K;6;CP$UIDd;3;253E;D;K;6;CP$UIDd;3;254E;D;K;6;CP$UIDd;3;255E;D;K;6;CP$UIDd;3;256E;D;K;6;CP$UIDd;3;257E;D;K;6;CP$UIDd;3;258E;D;K;6;CP$UIDd;3;259E;D;K;6;CP$UIDd;3;260E;D;K;6;CP$UIDd;3;261E;D;K;6;CP$UIDd;3;262E;D;K;6;CP$UIDd;3;263E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;266E;D;K;6;CP$UIDd;3;267E;D;K;6;CP$UIDd;3;268E;D;K;6;CP$UIDd;3;269E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;271E;D;K;6;CP$UIDd;3;272E;D;K;6;CP$UIDd;3;273E;D;K;6;CP$UIDd;3;274E;D;K;6;CP$UIDd;3;275E;D;K;6;CP$UIDd;3;276E;D;K;6;CP$UIDd;3;277E;D;K;6;CP$UIDd;3;278E;D;K;6;CP$UIDd;3;279E;D;K;6;CP$UIDd;3;280E;D;K;6;CP$UIDd;3;281E;D;K;6;CP$UIDd;3;282E;D;K;6;CP$UIDd;3;283E;D;K;6;CP$UIDd;3;284E;D;K;6;CP$UIDd;3;285E;D;K;6;CP$UIDd;3;286E;D;K;6;CP$UIDd;3;287E;D;K;6;CP$UIDd;3;288E;D;K;6;CP$UIDd;3;289E;D;K;6;CP$UIDd;3;290E;D;K;6;CP$UIDd;3;291E;D;K;6;CP$UIDd;3;292E;D;K;6;CP$UIDd;3;293E;D;K;6;CP$UIDd;3;294E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;296E;D;K;6;CP$UIDd;3;297E;D;K;6;CP$UIDd;3;298E;D;K;6;CP$UIDd;3;299E;D;K;6;CP$UIDd;3;300E;D;K;6;CP$UIDd;3;301E;D;K;6;CP$UIDd;3;302E;D;K;6;CP$UIDd;3;303E;D;K;6;CP$UIDd;3;304E;D;K;6;CP$UIDd;3;305E;D;K;6;CP$UIDd;3;306E;D;K;6;CP$UIDd;3;307E;D;K;6;CP$UIDd;3;308E;D;K;6;CP$UIDd;3;309E;D;K;6;CP$UIDd;3;310E;D;K;6;CP$UIDd;3;311E;D;K;6;CP$UIDd;3;312E;D;K;6;CP$UIDd;3;313E;D;K;6;CP$UIDd;3;314E;D;K;6;CP$UIDd;3;315E;D;K;6;CP$UIDd;3;316E;D;K;6;CP$UIDd;3;317E;D;K;6;CP$UIDd;3;318E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;320E;D;K;6;CP$UIDd;3;321E;D;K;6;CP$UIDd;3;322E;D;K;6;CP$UIDd;3;323E;D;K;6;CP$UIDd;3;324E;D;K;6;CP$UIDd;3;325E;D;K;6;CP$UIDd;3;326E;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;3;328E;D;K;6;CP$UIDd;3;329E;D;K;6;CP$UIDd;3;330E;D;K;6;CP$UIDd;3;331E;D;K;6;CP$UIDd;3;332E;D;K;6;CP$UIDd;3;333E;D;K;6;CP$UIDd;3;334E;D;K;6;CP$UIDd;3;336E;D;K;6;CP$UIDd;3;337E;D;K;6;CP$UIDd;3;338E;D;K;6;CP$UIDd;3;339E;D;K;6;CP$UIDd;3;340E;D;K;6;CP$UIDd;3;341E;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;3;343E;D;K;6;CP$UIDd;3;344E;D;K;6;CP$UIDd;3;345E;D;K;6;CP$UIDd;3;346E;D;K;6;CP$UIDd;3;347E;D;K;6;CP$UIDd;3;348E;D;K;6;CP$UIDd;3;349E;D;K;6;CP$UIDd;3;350E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;352E;D;K;6;CP$UIDd;3;353E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;3;356E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;358E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;360E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;362E;D;K;6;CP$UIDd;3;363E;D;K;6;CP$UIDd;3;364E;D;K;6;CP$UIDd;3;365E;D;K;6;CP$UIDd;3;366E;D;K;6;CP$UIDd;3;367E;D;K;6;CP$UIDd;3;368E;D;K;6;CP$UIDd;3;369E;D;K;6;CP$UIDd;3;370E;D;K;6;CP$UIDd;3;371E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;373E;D;K;6;CP$UIDd;3;374E;D;K;6;CP$UIDd;3;375E;D;K;6;CP$UIDd;3;376E;D;K;6;CP$UIDd;3;377E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;3;379E;D;K;6;CP$UIDd;3;380E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;383E;D;K;6;CP$UIDd;3;384E;E;E;S;16;IBCocoaFrameworkd;3;490D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;165E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;28E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;380E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;356E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;376E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;3;364E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;3;332E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;3;365E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;347E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;3;323E;D;K;6;CP$UIDd;3;374E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;346E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;349E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;3;371E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;373E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;360E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;125E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;383E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;322E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;367E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;366E;D;K;6;CP$UIDd;3;328E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;340E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;377E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;339E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;337E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;3;379E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;320E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;3;352E;D;K;6;CP$UIDd;3;330E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;370E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;321E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;3;344E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;3;336E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;324E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;338E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;3;369E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;341E;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;350E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;362E;D;K;6;CP$UIDd;3;326E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;345E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;331E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;334E;D;K;6;CP$UIDd;3;375E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;353E;D;K;6;CP$UIDd;3;358E;D;K;6;CP$UIDd;3;343E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;333E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;368E;D;K;6;CP$UIDd;3;384E;D;K;6;CP$UIDd;3;325E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;329E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;363E;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;348E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;385E;D;K;6;CP$UIDd;3;386E;D;K;6;CP$UIDd;3;387E;D;K;6;CP$UIDd;3;388E;D;K;6;CP$UIDd;3;389E;D;K;6;CP$UIDd;3;390E;D;K;6;CP$UIDd;3;391E;D;K;6;CP$UIDd;3;392E;D;K;6;CP$UIDd;3;393E;D;K;6;CP$UIDd;3;394E;D;K;6;CP$UIDd;3;395E;D;K;6;CP$UIDd;3;396E;D;K;6;CP$UIDd;3;397E;D;K;6;CP$UIDd;3;398E;D;K;6;CP$UIDd;3;399E;D;K;6;CP$UIDd;3;400E;D;K;6;CP$UIDd;3;401E;D;K;6;CP$UIDd;3;402E;D;K;6;CP$UIDd;3;403E;D;K;6;CP$UIDd;3;404E;D;K;6;CP$UIDd;3;405E;D;K;6;CP$UIDd;3;406E;D;K;6;CP$UIDd;3;407E;D;K;6;CP$UIDd;3;408E;D;K;6;CP$UIDd;3;409E;D;K;6;CP$UIDd;3;410E;D;K;6;CP$UIDd;3;411E;D;K;6;CP$UIDd;3;412E;D;K;6;CP$UIDd;3;413E;D;K;6;CP$UIDd;3;414E;D;K;6;CP$UIDd;3;415E;D;K;6;CP$UIDd;3;416E;D;K;6;CP$UIDd;3;417E;D;K;6;CP$UIDd;3;418E;D;K;6;CP$UIDd;3;419E;D;K;6;CP$UIDd;3;420E;D;K;6;CP$UIDd;3;421E;D;K;6;CP$UIDd;3;422E;D;K;6;CP$UIDd;3;423E;D;K;6;CP$UIDd;3;424E;D;K;6;CP$UIDd;3;425E;D;K;6;CP$UIDd;3;426E;D;K;6;CP$UIDd;3;427E;D;K;6;CP$UIDd;3;428E;D;K;6;CP$UIDd;3;429E;D;K;6;CP$UIDd;3;430E;D;K;6;CP$UIDd;3;431E;D;K;6;CP$UIDd;3;432E;D;K;6;CP$UIDd;3;433E;D;K;6;CP$UIDd;3;434E;D;K;6;CP$UIDd;3;435E;D;K;6;CP$UIDd;3;436E;D;K;6;CP$UIDd;3;437E;D;K;6;CP$UIDd;3;438E;D;K;6;CP$UIDd;3;439E;D;K;6;CP$UIDd;3;440E;D;K;6;CP$UIDd;3;441E;D;K;6;CP$UIDd;3;442E;D;K;6;CP$UIDd;3;443E;D;K;6;CP$UIDd;3;444E;D;K;6;CP$UIDd;3;445E;D;K;6;CP$UIDd;3;446E;D;K;6;CP$UIDd;3;447E;D;K;6;CP$UIDd;3;448E;D;K;6;CP$UIDd;3;449E;D;K;6;CP$UIDd;3;450E;D;K;6;CP$UIDd;3;451E;D;K;6;CP$UIDd;3;452E;D;K;6;CP$UIDd;3;453E;D;K;6;CP$UIDd;3;454E;D;K;6;CP$UIDd;3;455E;D;K;6;CP$UIDd;3;456E;D;K;6;CP$UIDd;3;457E;D;K;6;CP$UIDd;3;458E;D;K;6;CP$UIDd;3;459E;D;K;6;CP$UIDd;3;460E;D;K;6;CP$UIDd;3;461E;D;K;6;CP$UIDd;3;462E;D;K;6;CP$UIDd;3;463E;D;K;6;CP$UIDd;3;464E;D;K;6;CP$UIDd;3;465E;D;K;6;CP$UIDd;3;466E;D;K;6;CP$UIDd;3;467E;D;K;6;CP$UIDd;3;468E;D;K;6;CP$UIDd;3;469E;D;K;6;CP$UIDd;3;470E;D;K;6;CP$UIDd;3;471E;D;K;6;CP$UIDd;3;472E;D;K;6;CP$UIDd;3;473E;D;K;6;CP$UIDd;3;474E;D;K;6;CP$UIDd;3;475E;D;K;6;CP$UIDd;3;476E;D;K;6;CP$UIDd;3;477E;D;K;6;CP$UIDd;3;478E;D;K;6;CP$UIDd;3;479E;D;K;6;CP$UIDd;3;480E;D;K;6;CP$UIDd;3;481E;D;K;6;CP$UIDd;3;482E;D;K;6;CP$UIDd;3;483E;D;K;6;CP$UIDd;3;484E;D;K;6;CP$UIDd;3;485E;D;K;6;CP$UIDd;3;486E;D;K;6;CP$UIDd;3;487E;D;K;6;CP$UIDd;3;488E;D;K;6;CP$UIDd;3;489E;D;K;6;CP$UIDd;3;490E;D;K;6;CP$UIDd;3;491E;D;K;6;CP$UIDd;3;492E;D;K;6;CP$UIDd;3;493E;D;K;6;CP$UIDd;3;494E;D;K;6;CP$UIDd;3;495E;D;K;6;CP$UIDd;3;496E;D;K;6;CP$UIDd;3;497E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;499E;D;K;6;CP$UIDd;3;500E;D;K;6;CP$UIDd;3;501E;D;K;6;CP$UIDd;3;502E;D;K;6;CP$UIDd;3;503E;D;K;6;CP$UIDd;3;504E;D;K;6;CP$UIDd;3;505E;D;K;6;CP$UIDd;3;506E;D;K;6;CP$UIDd;3;507E;D;K;6;CP$UIDd;3;508E;D;K;6;CP$UIDd;3;509E;D;K;6;CP$UIDd;3;510E;D;K;6;CP$UIDd;3;511E;D;K;6;CP$UIDd;3;512E;D;K;6;CP$UIDd;3;513E;D;K;6;CP$UIDd;3;514E;D;K;6;CP$UIDd;3;515E;D;K;6;CP$UIDd;3;516E;D;K;6;CP$UIDd;3;517E;D;K;6;CP$UIDd;3;518E;D;K;6;CP$UIDd;3;519E;D;K;6;CP$UIDd;3;520E;D;K;6;CP$UIDd;3;521E;D;K;6;CP$UIDd;3;522E;D;K;6;CP$UIDd;3;523E;D;K;6;CP$UIDd;3;524E;D;K;6;CP$UIDd;3;525E;D;K;6;CP$UIDd;3;526E;D;K;6;CP$UIDd;3;527E;D;K;6;CP$UIDd;3;528E;D;K;6;CP$UIDd;3;529E;D;K;6;CP$UIDd;3;530E;D;K;6;CP$UIDd;3;531E;D;K;6;CP$UIDd;3;532E;D;K;6;CP$UIDd;3;533E;D;K;6;CP$UIDd;3;534E;D;K;6;CP$UIDd;3;535E;D;K;6;CP$UIDd;3;536E;D;K;6;CP$UIDd;3;537E;D;K;6;CP$UIDd;3;538E;D;K;6;CP$UIDd;3;539E;D;K;6;CP$UIDd;3;540E;D;K;6;CP$UIDd;3;541E;D;K;6;CP$UIDd;3;542E;D;K;6;CP$UIDd;3;543E;D;K;6;CP$UIDd;3;544E;D;K;6;CP$UIDd;3;545E;D;K;6;CP$UIDd;3;546E;D;K;6;CP$UIDd;3;547E;D;K;6;CP$UIDd;3;548E;D;K;6;CP$UIDd;3;549E;D;K;6;CP$UIDd;3;550E;D;K;6;CP$UIDd;3;551E;D;K;6;CP$UIDd;3;552E;D;K;6;CP$UIDd;3;553E;D;K;6;CP$UIDd;3;554E;D;K;6;CP$UIDd;3;555E;D;K;6;CP$UIDd;3;556E;D;K;6;CP$UIDd;3;557E;D;K;6;CP$UIDd;3;558E;D;K;6;CP$UIDd;3;559E;D;K;6;CP$UIDd;3;560E;D;K;6;CP$UIDd;3;561E;D;K;6;CP$UIDd;3;562E;D;K;6;CP$UIDd;3;563E;D;K;6;CP$UIDd;3;564E;D;K;6;CP$UIDd;3;565E;D;K;6;CP$UIDd;3;566E;D;K;6;CP$UIDd;3;567E;D;K;6;CP$UIDd;3;568E;D;K;6;CP$UIDd;3;569E;D;K;6;CP$UIDd;3;570E;D;K;6;CP$UIDd;3;571E;D;K;6;CP$UIDd;3;572E;D;K;6;CP$UIDd;3;573E;D;K;6;CP$UIDd;3;574E;D;K;6;CP$UIDd;3;575E;D;K;6;CP$UIDd;3;576E;D;K;6;CP$UIDd;3;577E;D;K;6;CP$UIDd;3;578E;D;K;6;CP$UIDd;3;579E;D;K;6;CP$UIDd;3;580E;D;K;6;CP$UIDd;3;581E;D;K;6;CP$UIDd;3;582E;D;K;6;CP$UIDd;3;583E;D;K;6;CP$UIDd;3;584E;D;K;6;CP$UIDd;3;585E;D;K;6;CP$UIDd;3;586E;D;K;6;CP$UIDd;3;587E;D;K;6;CP$UIDd;3;588E;D;K;6;CP$UIDd;3;589E;D;K;6;CP$UIDd;3;590E;D;K;6;CP$UIDd;3;591E;D;K;6;CP$UIDd;3;592E;D;K;6;CP$UIDd;3;593E;D;K;6;CP$UIDd;3;594E;D;K;6;CP$UIDd;3;595E;D;K;6;CP$UIDd;3;596E;D;K;6;CP$UIDd;3;597E;D;K;6;CP$UIDd;3;598E;D;K;6;CP$UIDd;3;599E;D;K;6;CP$UIDd;3;600E;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;601E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;602E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;603E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;604E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;605E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;606E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;601E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;607E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;608E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;27E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;40E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;609E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;610E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;611E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;40E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;612E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;613E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;615E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;3;165E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;3;121E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;616E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;616E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;616E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;616E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;617E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;617E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;618E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;619E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;620E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;621E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;622E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;623E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;624E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;625E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;151E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;627E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;628E;E;D;K;10;$classnameS;11;CPTableViewK;8;$classesA;S;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;37E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;615E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;629E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;629E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;615E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;630E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;613E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;631E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;632E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;633E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;618E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;617E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;634E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;39E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;635E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;635E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;636E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;630E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;613E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;637E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;638E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;639E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;158E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;640E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;90E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;641E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;299E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;198E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;644E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;645E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;647E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;122E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;648E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;649E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;650E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;158E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;651E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;652E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;141E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;653E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;177E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;654E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;127E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;655E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;656E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;657E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;658E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;656E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;62E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;659E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;660E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;661E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;645E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;662E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;663E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;664E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;665E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;666E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;667E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;668E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;158E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;669E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;670E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;123E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;671E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;672E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;248E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;673E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;674E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;675E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;133E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;676E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;677E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;678E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;158E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;679E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;123E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;680E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;681E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;682E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;640E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;683E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;92E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;685E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;686E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;687E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;688E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;689E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;2;40E;K;41;_CPCibWindowTemplateWindowIsFullBridgeKeyD;K;6;CP$UIDd;3;618E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;690E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;691E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;692E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;693E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;694E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;695E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;696E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;697E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;698E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;36E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;699E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;127E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;700E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;645E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;696E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;102E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;701E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;637E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;41E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;702E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;703E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;604E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;22E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;704E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;137E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;660E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;67E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;705E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;127E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;706E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;127E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;707E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;666E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;70E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;708E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;120E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;709E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;710E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;630E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;613E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;711E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;28E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;712E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;631E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;711E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;713E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;647E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;714E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;679E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;715E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;716E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;22E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;717E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;718E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;719E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;689E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;158E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;627E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;36E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;720E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;721E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;266E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;722E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;664E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;665E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;675E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;723E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;718E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;127E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;724E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;70E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;725E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;704E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;726E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;727E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;62E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;648E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;52E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;652E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;728E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;206E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;729E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;730E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;731E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;732E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;731E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;626E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;145E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;733E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;734E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;735E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;736E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;625E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;737E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;738E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;36E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;739E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;240E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;740E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;90E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;741E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;E;D;K;6;$classD;K;6;CP$UIDd;2;21E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;689E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;742E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;214E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;743E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;67E;E;D;K;6;$classD;K;6;CP$UIDd;2;45E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;227E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;642E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;616E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;744E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;617E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;646E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;618E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;41E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;E;D;K;6;$classD;K;6;CP$UIDd;3;120E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;745E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;746E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;630E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;747E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;711E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;28E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;748E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;631E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;711E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;749E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;750E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;141E;E;S;17;Menu Item (Open…)S;15;Menu (Ligature)S;29;Menu Item (Jump to Selection)S;11;ApplicationS;24;Menu Item (Show Toolbar)S;17;Menu Item (Raise)S;33;Bordered Scroll View (Table View)S;22;Menu Item (Show Fonts)S;22;Menu Item (Copy Style)S;28;Menu Item (Smart Copy/Paste)S;2;10S;20;Menu Item (Show All)S;21;Menu Item (Subscript)S;20;Menu Item (Services)S;13;Menu (Speech)S;10;Table ViewS;12;Content ViewS;21;Menu (NewApplication)S;30;Menu Item (Bring All to Front)S;16;Menu Item (Find)S;17;Menu Item (Paste)S;16;Table Column (6)S;16;Table Column (8)S;18;Menu Item (Bigger)S;25;Menu Item (Use Default)-2S;11;Separator-4S;29;Text Field Cell (Text Cell)-4S;16;Menu Item (Font)S;11;Menu (File)S;30;Menu Item (Customize Toolbar…)S;11;Separator-6S;1;8S;11;Separator-7S;16;Menu Item (Text)S;23;Menu Item (Smart Links)S;17;Table Column (10)S;26;Menu Item (Show Spelling…)S;16;Table Column (4)S;15;Menu (Baseline)S;1;5S;11;Separator-5S;20;Menu Item (Baseline)S;16;Menu Item (Copy)S;11;Menu (Edit)S;27;Text Field Cell (Text Cell)S;25;Menu Item (Use Default)-1S;16;Table Column (0)S;1;2S;20;Menu Item (Minimize)S;22;Menu Item (Align Left)S;22;Menu Item (Clear Menu)S;9;SeparatorS;11;Separator-8S;23;Menu Item (Paste Style)S;22;Menu Item (Show Ruler)S;11;Separator-1S;29;Text Field Cell (Text Cell)-8S;16;Table Column (9)S;23;Menu Item (Show Colors)S;12;File's OwnerS;1;3S;18;Menu Item (Format)S;18;Menu Item (Italic)S;23;Menu Item (Hide Others)S;29;Text Field Cell (Text Cell)-6S;16;Menu Item (Zoom)S;23;Menu Item (Open Recent)S;4;1111S;16;Menu Item (Redo)S;22;Menu Item (Select All)S;11;Menu (Find)S;20;Menu Item (Use None)S;15;Window (Window)S;1;7S;34;Menu Item (Use Selection for Find)S;21;Menu Item (Find Next)S;14;App ControllerS;12;Separator-11S;17;Menu Item (Find…)S;17;Menu Item (Lower)S;30;Text Field Cell (Text Cell)-10S;1;9S;20;Menu (Substitutions)S;25;Menu Item (Stop Speaking)S;26;Menu Item (Check Spelling)S;29;Text Field Cell (Text Cell)-5S;16;Menu Item (Bold)S;23;Menu Item (Use Default)S;25;Menu Item (Substitutions)S;19;Menu Item (Tighten)S;26;Menu Item (NewApplication)S;8;MainMenuS;20;Menu Item (Ligature)S;16;Menu Item (View)S;16;Menu Item (Edit)S;39;Menu Item (Check Grammar With Spelling)S;3;2-1S;39;Menu Item (Check Spelling While Typing)S;15;Menu Item (Cut)S;1;1S;31;Menu Item (Hide NewApplication)S;19;Horizontal ScrollerS;11;Menu (Font)S;18;Menu (Open Recent)S;11;Separator-9S;19;Menu Item (Use All)S;22;Menu Item (Copy Ruler)S;27;Menu (Spelling and Grammar)S;29;Text Field Cell (Text Cell)-1S;18;Menu Item (Window)S;29;Text Field Cell (Text Cell)-7S;18;Menu Item (Speech)S;23;Menu Item (Paste Ruler)S;24;Menu Item (Smart Quotes)S;16;Table Column (1)S;29;Text Field Cell (Text Cell)-2S;13;Menu (Format)S;32;Menu Item (Spelling and Grammar)S;31;Menu Item (NewApplication Help)S;29;Text Field Cell (Text Cell)-3S;19;Menu Item (Smaller)S;11;Menu (View)S;12;Separator-10S;23;Menu Item (Superscript)S;16;Menu Item (File)S;11;Menu (Text)S;16;Table Column (5)S;19;Menu Item (Justify)S;21;Menu Item (Underline)S;11;Menu (Kern)S;16;Menu Item (Kern)S;32;Menu Item (About NewApplication)S;1;6S;23;Menu Item (Align Right)S;18;Menu Item (Delete)S;15;Menu (Services)S;26;Menu Item (Start Speaking)S;3;121S;16;Table Column (7)S;25;Menu Item (Find Previous)S;11;Separator-2S;3;1-1S;13;Menu (Window)S;16;Table Column (2)S;16;Menu Item (Undo)S;16;Table Column (3)S;18;Menu Item (Loosen)S;29;Text Field Cell (Text Cell)-9S;11;Separator-3S;22;Menu Item (Use None)-1S;17;Vertical ScrollerS;18;Menu Item (Center)D;K;10;$classnameS;22;_CPCibControlConnectorK;8;$classesA;S;22;_CPCibControlConnectorS;15;_CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;72E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;751E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;20E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;752E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;89E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;753E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;33E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;754E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;131E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;755E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;60E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;756E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;757E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;104E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;758E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;101E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;759E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;100E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;760E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;73E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;761E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;762E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;114E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;763E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;103E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;764E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;81E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;765E;E;D;K;10;$classnameS;21;_CPCibOutletConnectorK;8;$classesA;S;21;_CPCibOutletConnectorS;15;_CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;335E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;38E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;97E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;766E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;139E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;767E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;23E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;768E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;32E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;769E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;164E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;770E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;88E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;771E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;44E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;772E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;149E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;773E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;166E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;774E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;147E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;16E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;775E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;116E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;776E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;143E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;777E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;99E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;778E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;130E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;779E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;144E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;780E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;106E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;781E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;135E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;782E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;80E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;783E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;148E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;784E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;76E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;785E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;66E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;786E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;152E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;787E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;788E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;53E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;789E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;85E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;790E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;63E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;791E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;162E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;792E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;31E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;793E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;30E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;794E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;119E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;795E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;68E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;796E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;108E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;797E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;87E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;24E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;798E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;42E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;799E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;125E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;800E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;26E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;801E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;157E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;802E;E;D;K;6;$classD;K;6;CP$UIDd;3;335E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;97E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;93E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;803E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;34E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;804E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;49E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;805E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;91E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;806E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;25E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;807E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;117E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;808E;E;D;K;6;$classD;K;6;CP$UIDd;3;335E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;97E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;809E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;126E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;810E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;55E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;811E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;71E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;812E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;58E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;813E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;150E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;814E;E;d;3;444d;3;363d;3;224d;3;193d;3;440d;3;210d;2;-3d;3;428d;3;297d;3;347d;3;389d;3;403d;3;460d;3;350d;3;367d;3;131d;3;212d;3;372d;2;57d;3;218d;3;203d;3;477d;3;214d;3;377d;2;81d;3;298d;2;92d;3;354d;3;204d;3;405d;3;206d;3;399d;3;197d;3;478d;3;443d;3;126d;3;402d;3;144d;3;401d;3;375d;3;239d;3;136d;3;215d;3;370d;3;429d;3;198d;3;413d;3;222d;3;371d;3;221d;3;448d;3;208d;3;384d;3;450d;3;426d;3;418d;3;348d;3;459d;2;29d;3;398d;3;346d;3;217d;2;74d;3;199d;3;240d;3;462d;3;414d;3;125d;3;357d;3;228d;3;386d;2;19d;3;476d;3;232d;3;351d;3;387d;3;466d;3;111d;3;216d;3;376d;3;431d;3;395d;3;400d;3;439d;3;373d;2;83d;3;415d;3;397d;2;58d;2;78d;3;441d;3;383d;3;366d;3;130d;3;202d;3;364d;3;129d;3;479d;2;73d;2;24d;3;430d;3;207d;3;471d;3;470d;3;149d;3;417d;2;72d;3;411d;3;451d;3;365d;3;442d;3;409d;3;360d;3;127d;3;112d;3;434d;3;150d;3;408d;3;463d;1;5d;3;416d;3;394d;3;481d;3;468d;3;374d;2;80d;3;396d;3;378d;3;445d;3;485d;3;473d;2;77d;3;205d;3;412d;3;465d;3;488d;2;23d;3;106d;3;380d;3;236d;3;404d;3;385d;3;480d;3;483d;3;225d;3;489d;2;75d;3;356d;3;391d;3;145d;3;467d;3;245d;3;124d;2;39d;3;220d;2;79d;3;209d;3;410d;3;472d;2;82d;3;349d;3;195d;3;201d;3;406d;3;390d;3;484d;2;56d;3;295d;3;231d;3;226d;3;219d;3;432d;3;103d;3;134d;3;388d;3;393d;2;87d;3;200d;3;482d;3;211d;3;486d;3;435d;3;223d;3;474d;3;142d;3;296d;3;407d;3;368d;3;379d;3;362d;3;438d;3;475d;3;233d;3;382d;3;392d;3;433d;3;446d;3;447d;3;196d;3;227d;3;213d;3;143d;3;469d;3;449d;3;235d;3;230d;3;437d;2;37d;2;86d;3;427d;3;419d;3;355d;3;436d;3;381d;3;461d;3;241S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;93E;E;E;S;5;Open…S;8;LigatureD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;3;125E;E;E;S;17;Jump to SelectionS;12;Show ToolbarS;5;RaiseS;22;{{-1, -1}, {493, 365}}S;20;{{0, 0}, {493, 365}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;615E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;121E;E;E;d;2;18S;6;normalD;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;614E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;28E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;815E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;816E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;817E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;28E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;630E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;819E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;613E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;38E;E;d;2;10T;F;S;10;Show FontsS;10;Copy StyleS;16;Smart Copy/PasteS;15;Revert to SavedS;8;Show AllS;9;SubscriptS;8;ServicesS;14;submenuAction:S;6;SpeechD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;103E;E;E;S;20;{{0, 0}, {691, 348}}d;1;8d;1;4d;2;17S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;59E;E;E;S;20;{{0, 0}, {491, 363}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;28E;E;E;S;14;NewApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;2;87E;E;E;S;18;Bring All to FrontS;4;FindS;5;Pasted;2;64d;22;3.4028230607370965e+38S;6;BiggerS;11;Use DefaultS;0;S;4;FontS;4;FileD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;3;148E;E;E;S;18;Customize Toolbar…S;8;Save As…S;4;TextS;11;Smart LinksS;14;Show Spelling…S;1;4S;8;BaselineD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;3;100E;E;E;S;13;Page Setup...S;4;CopyS;4;EditD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;129E;E;E;S;1;0d;2;69d;2;40d;4;1000S;4;HelpD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;135E;E;E;S;8;MinimizeS;10;Align LeftS;10;Clear MenuS;11;Paste StyleS;10;Show RulerS;11;Show ColorsS;4;SaveS;6;FormatS;6;ItalicS;11;Hide OthersS;4;ZoomS;11;Open RecentS;19;Quit NewApplicationS;4;RedoS;10;Select AllD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;23E;E;E;S;8;Use NoneS;26;{3.40282e+38, 3.40282e+38}S;8;CPWindowS;24;{{335, 128}, {491, 363}}d;1;7S;6;WindowS;22;Use Selection for FindS;9;Find NextS;13;AppControllerS;5;Find…S;5;LowerS;3;NewS;13;SubstitutionsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;2;58E;E;E;S;13;Stop SpeakingS;14;Check SpellingS;4;BoldS;7;TightenS;9;AMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;118E;E;E;S;4;ViewS;27;Check Grammar With SpellingS;27;Check Spelling While TypingS;3;CutS;19;Hide NewApplicationS;20;{{1, -1}, {476, 17}}S;19;{{0, 0}, {476, 17}}d;1;0S;29;_horizontalScrollerDidScroll:f;18;0.6888567209243774D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;76E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;73E;E;E;S;7;Use AllS;10;Copy RulerS;20;Spelling and GrammarD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;114E;E;E;S;11;Paste RulerS;12;Smart Quotesd;2;67D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;57E;E;E;S;19;NewApplication HelpS;7;SmallerD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;53E;E;E;S;11;SuperscriptD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;130E;E;E;S;7;JustifyS;9;UnderlineS;4;KernD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;162E;E;E;S;20;About NewApplicationS;6;Print…S;11;Align RightS;6;DeleteD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;S;14;Start SpeakingS;12;Preferences…S;13;Find PreviousS;5;CloseD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;42E;E;E;S;4;UndoS;6;LoosenS;22;{{477, 16}, {17, 348}}S;19;{{0, 0}, {17, 348}}S;17;disabled+verticalS;27;_verticalScrollerDidScroll:f;18;0.9971429109573364S;6;CenterS;10;alignLeft:S;13;openDocument:S;10;selectAll:S;22;unhideAllApplications:S;33;toggleAutomaticQuoteSubstitution:S;15;showGuessPanel:S;5;undo:S;14;checkSpelling:S;12;newDocument:S;14;lowerBaseline:S;21;clearRecentDocuments:S;22;hideOtherApplications:S;22;toggleGrammarChecking:S;13;stopSpeaking:S;13;saveDocument:S;10;dataSourceS;12;superscript:S;29;centerSelectionInVisibleArea:S;22;revertDocumentToSaved:S;15;turnOffKerning:S;5;redo:S;6;paste:S;11;alignRight:S;12;alignCenter:S;29;orderFrontStandardAboutPanel:S;30;toggleContinuousSpellChecking:S;15;alignJustified:S;23;performFindPanelAction:S;11;pasteRuler:S;10;underline:S;9;unscript:S;9;showHelp:S;21;orderFrontColorPanel:S;6;print:S;10;pasteFont:S;5;copy:S;14;startSpeaking:S;12;toggleRuler:S;31;runToolbarCustomizationPalette:S;12;performZoom:S;14;runPageLayout:S;14;loosenKerning:S;24;toggleSmartInsertDelete:S;9;copyFont:S;5;hide:S;21;useStandardLigatures:S;15;tightenKerning:S;10;terminate:S;15;arrangeInFront:S;16;useAllLigatures:S;14;raiseBaseline:S;13;performClose:S;9;theWindowS;10;subscript:S;19;useStandardKerning:S;17;turnOffLigatures:S;19;toggleToolbarShown:S;4;cut:S;8;delegateS;10;copyRuler:S;15;saveDocumentAs:S;19;performMiniaturize:S;29;toggleAutomaticLinkDetection:S;7;delete:S;21;{{1, 16}, {476, 348}}S;20;{{0, 0}, {476, 348}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;38E;E;E;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;818E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;820E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;821E;D;K;6;CP$UIDd;3;821E;D;K;6;CP$UIDd;3;821E;D;K;6;CP$UIDd;3;822E;E;E;f;10;0.66666669d;1;1E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E;
\ No newline at end of file
+280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;4E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;7E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;9E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;2;10E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;2;11E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;2;12E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;2;13E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;2;14E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;16E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;18E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;166E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;167E;D;K;6;CP$UIDd;3;168E;D;K;6;CP$UIDd;3;169E;D;K;6;CP$UIDd;3;170E;D;K;6;CP$UIDd;3;171E;D;K;6;CP$UIDd;3;172E;D;K;6;CP$UIDd;3;173E;D;K;6;CP$UIDd;3;174E;D;K;6;CP$UIDd;3;175E;D;K;6;CP$UIDd;3;176E;D;K;6;CP$UIDd;3;177E;D;K;6;CP$UIDd;3;178E;D;K;6;CP$UIDd;3;179E;D;K;6;CP$UIDd;3;180E;D;K;6;CP$UIDd;3;181E;D;K;6;CP$UIDd;3;182E;D;K;6;CP$UIDd;3;183E;D;K;6;CP$UIDd;3;184E;D;K;6;CP$UIDd;3;185E;D;K;6;CP$UIDd;3;186E;D;K;6;CP$UIDd;3;187E;D;K;6;CP$UIDd;3;188E;D;K;6;CP$UIDd;3;189E;D;K;6;CP$UIDd;3;190E;D;K;6;CP$UIDd;3;191E;D;K;6;CP$UIDd;3;192E;D;K;6;CP$UIDd;3;193E;D;K;6;CP$UIDd;3;194E;D;K;6;CP$UIDd;3;195E;D;K;6;CP$UIDd;3;196E;D;K;6;CP$UIDd;3;197E;D;K;6;CP$UIDd;3;198E;D;K;6;CP$UIDd;3;199E;D;K;6;CP$UIDd;3;200E;D;K;6;CP$UIDd;3;201E;D;K;6;CP$UIDd;3;202E;D;K;6;CP$UIDd;3;203E;D;K;6;CP$UIDd;3;204E;D;K;6;CP$UIDd;3;205E;D;K;6;CP$UIDd;3;206E;D;K;6;CP$UIDd;3;207E;D;K;6;CP$UIDd;3;208E;D;K;6;CP$UIDd;3;209E;D;K;6;CP$UIDd;3;210E;D;K;6;CP$UIDd;3;211E;D;K;6;CP$UIDd;3;212E;D;K;6;CP$UIDd;3;213E;D;K;6;CP$UIDd;3;214E;D;K;6;CP$UIDd;3;215E;D;K;6;CP$UIDd;3;216E;D;K;6;CP$UIDd;3;217E;D;K;6;CP$UIDd;3;218E;D;K;6;CP$UIDd;3;219E;D;K;6;CP$UIDd;3;220E;D;K;6;CP$UIDd;3;221E;D;K;6;CP$UIDd;3;222E;D;K;6;CP$UIDd;3;223E;D;K;6;CP$UIDd;3;224E;D;K;6;CP$UIDd;3;225E;D;K;6;CP$UIDd;3;226E;D;K;6;CP$UIDd;3;227E;D;K;6;CP$UIDd;3;228E;D;K;6;CP$UIDd;3;229E;D;K;6;CP$UIDd;3;230E;D;K;6;CP$UIDd;3;231E;D;K;6;CP$UIDd;3;232E;D;K;6;CP$UIDd;3;233E;D;K;6;CP$UIDd;3;234E;D;K;6;CP$UIDd;3;235E;D;K;6;CP$UIDd;3;236E;D;K;6;CP$UIDd;3;237E;D;K;6;CP$UIDd;3;238E;D;K;6;CP$UIDd;3;239E;D;K;6;CP$UIDd;3;240E;D;K;6;CP$UIDd;3;241E;D;K;6;CP$UIDd;3;242E;D;K;6;CP$UIDd;3;243E;D;K;6;CP$UIDd;3;244E;D;K;6;CP$UIDd;3;245E;D;K;6;CP$UIDd;3;246E;D;K;6;CP$UIDd;3;247E;D;K;6;CP$UIDd;3;248E;D;K;6;CP$UIDd;3;249E;D;K;6;CP$UIDd;3;250E;D;K;6;CP$UIDd;3;251E;D;K;6;CP$UIDd;3;252E;D;K;6;CP$UIDd;3;253E;D;K;6;CP$UIDd;3;254E;D;K;6;CP$UIDd;3;255E;D;K;6;CP$UIDd;3;256E;D;K;6;CP$UIDd;3;257E;D;K;6;CP$UIDd;3;258E;D;K;6;CP$UIDd;3;259E;D;K;6;CP$UIDd;3;260E;D;K;6;CP$UIDd;3;261E;D;K;6;CP$UIDd;3;262E;D;K;6;CP$UIDd;3;263E;D;K;6;CP$UIDd;3;264E;D;K;6;CP$UIDd;3;265E;D;K;6;CP$UIDd;3;266E;D;K;6;CP$UIDd;3;267E;D;K;6;CP$UIDd;3;268E;D;K;6;CP$UIDd;3;269E;D;K;6;CP$UIDd;3;270E;D;K;6;CP$UIDd;3;271E;D;K;6;CP$UIDd;3;272E;D;K;6;CP$UIDd;3;273E;D;K;6;CP$UIDd;3;274E;D;K;6;CP$UIDd;3;275E;D;K;6;CP$UIDd;3;276E;D;K;6;CP$UIDd;3;277E;D;K;6;CP$UIDd;3;278E;D;K;6;CP$UIDd;3;279E;D;K;6;CP$UIDd;3;280E;D;K;6;CP$UIDd;3;281E;D;K;6;CP$UIDd;3;282E;D;K;6;CP$UIDd;3;283E;D;K;6;CP$UIDd;3;284E;D;K;6;CP$UIDd;3;285E;D;K;6;CP$UIDd;3;286E;D;K;6;CP$UIDd;3;287E;D;K;6;CP$UIDd;3;288E;D;K;6;CP$UIDd;3;289E;D;K;6;CP$UIDd;3;290E;D;K;6;CP$UIDd;3;291E;D;K;6;CP$UIDd;3;292E;D;K;6;CP$UIDd;3;293E;D;K;6;CP$UIDd;3;294E;D;K;6;CP$UIDd;3;295E;D;K;6;CP$UIDd;3;296E;D;K;6;CP$UIDd;3;297E;D;K;6;CP$UIDd;3;298E;D;K;6;CP$UIDd;3;299E;D;K;6;CP$UIDd;3;300E;D;K;6;CP$UIDd;3;301E;D;K;6;CP$UIDd;3;302E;D;K;6;CP$UIDd;3;303E;D;K;6;CP$UIDd;3;304E;D;K;6;CP$UIDd;3;305E;D;K;6;CP$UIDd;3;306E;D;K;6;CP$UIDd;3;307E;D;K;6;CP$UIDd;3;308E;D;K;6;CP$UIDd;3;309E;D;K;6;CP$UIDd;3;310E;D;K;6;CP$UIDd;3;311E;D;K;6;CP$UIDd;3;312E;D;K;6;CP$UIDd;3;313E;D;K;6;CP$UIDd;3;314E;D;K;6;CP$UIDd;3;315E;D;K;6;CP$UIDd;3;316E;D;K;6;CP$UIDd;3;317E;D;K;6;CP$UIDd;3;318E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;320E;D;K;6;CP$UIDd;3;321E;D;K;6;CP$UIDd;3;322E;D;K;6;CP$UIDd;3;323E;D;K;6;CP$UIDd;3;324E;D;K;6;CP$UIDd;3;325E;D;K;6;CP$UIDd;3;326E;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;3;328E;D;K;6;CP$UIDd;3;329E;D;K;6;CP$UIDd;3;330E;D;K;6;CP$UIDd;3;331E;D;K;6;CP$UIDd;3;332E;D;K;6;CP$UIDd;3;333E;D;K;6;CP$UIDd;3;334E;D;K;6;CP$UIDd;3;335E;D;K;6;CP$UIDd;3;336E;D;K;6;CP$UIDd;3;337E;D;K;6;CP$UIDd;3;338E;D;K;6;CP$UIDd;3;339E;D;K;6;CP$UIDd;3;340E;D;K;6;CP$UIDd;3;341E;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;3;343E;D;K;6;CP$UIDd;3;344E;D;K;6;CP$UIDd;3;345E;D;K;6;CP$UIDd;3;346E;D;K;6;CP$UIDd;3;347E;D;K;6;CP$UIDd;3;348E;D;K;6;CP$UIDd;3;349E;D;K;6;CP$UIDd;3;350E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;352E;D;K;6;CP$UIDd;3;353E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;3;356E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;358E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;360E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;362E;D;K;6;CP$UIDd;3;363E;D;K;6;CP$UIDd;3;364E;D;K;6;CP$UIDd;3;365E;D;K;6;CP$UIDd;3;366E;D;K;6;CP$UIDd;3;367E;D;K;6;CP$UIDd;3;368E;D;K;6;CP$UIDd;3;369E;D;K;6;CP$UIDd;3;370E;D;K;6;CP$UIDd;3;371E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;373E;D;K;6;CP$UIDd;3;375E;D;K;6;CP$UIDd;3;376E;D;K;6;CP$UIDd;3;377E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;3;379E;D;K;6;CP$UIDd;3;380E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;3;383E;D;K;6;CP$UIDd;3;384E;E;E;S;16;IBCocoaFrameworkd;3;490D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;165E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;124E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;325E;D;K;6;CP$UIDd;3;380E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;3;336E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;3;339E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;375E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;373E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;3;364E;D;K;6;CP$UIDd;3;328E;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;3;366E;D;K;6;CP$UIDd;3;370E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;3;354E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;3;332E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;327E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;3;323E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;3;368E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;3;363E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;352E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;322E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;362E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;381E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;361E;D;K;6;CP$UIDd;3;337E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;365E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;341E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;321E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;347E;D;K;6;CP$UIDd;3;351E;D;K;6;CP$UIDd;3;358E;D;K;6;CP$UIDd;3;359E;D;K;6;CP$UIDd;3;340E;D;K;6;CP$UIDd;3;326E;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;3;129E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;132E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;3;369E;D;K;6;CP$UIDd;3;141E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;376E;D;K;6;CP$UIDd;3;371E;D;K;6;CP$UIDd;3;145E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;3;153E;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;3;383E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;161E;D;K;6;CP$UIDd;3;367E;D;K;6;CP$UIDd;3;330E;D;K;6;CP$UIDd;3;320E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;3;324E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;3;333E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;3;342E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;3;384E;D;K;6;CP$UIDd;3;353E;D;K;6;CP$UIDd;3;382E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;3;360E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;16E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;331E;D;K;6;CP$UIDd;3;355E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;3;345E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;3;346E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;3;356E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;3;338E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;3;344E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;3;335E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;348E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;329E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;377E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;357E;D;K;6;CP$UIDd;3;378E;D;K;6;CP$UIDd;3;343E;D;K;6;CP$UIDd;3;121E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;3;124E;D;K;6;CP$UIDd;3;126E;D;K;6;CP$UIDd;3;131E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;136E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;142E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;3;350E;D;K;6;CP$UIDd;3;372E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;3;349E;D;K;6;CP$UIDd;3;334E;D;K;6;CP$UIDd;3;156E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;158E;D;K;6;CP$UIDd;3;379E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;166E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;385E;D;K;6;CP$UIDd;3;386E;D;K;6;CP$UIDd;3;387E;D;K;6;CP$UIDd;3;388E;D;K;6;CP$UIDd;3;389E;D;K;6;CP$UIDd;3;390E;D;K;6;CP$UIDd;3;391E;D;K;6;CP$UIDd;3;392E;D;K;6;CP$UIDd;3;393E;D;K;6;CP$UIDd;3;394E;D;K;6;CP$UIDd;3;395E;D;K;6;CP$UIDd;3;396E;D;K;6;CP$UIDd;3;397E;D;K;6;CP$UIDd;3;398E;D;K;6;CP$UIDd;3;399E;D;K;6;CP$UIDd;3;400E;D;K;6;CP$UIDd;3;401E;D;K;6;CP$UIDd;3;402E;D;K;6;CP$UIDd;3;403E;D;K;6;CP$UIDd;3;404E;D;K;6;CP$UIDd;3;405E;D;K;6;CP$UIDd;3;406E;D;K;6;CP$UIDd;3;407E;D;K;6;CP$UIDd;3;408E;D;K;6;CP$UIDd;3;409E;D;K;6;CP$UIDd;3;410E;D;K;6;CP$UIDd;3;411E;D;K;6;CP$UIDd;3;412E;D;K;6;CP$UIDd;3;413E;D;K;6;CP$UIDd;3;414E;D;K;6;CP$UIDd;3;415E;D;K;6;CP$UIDd;3;416E;D;K;6;CP$UIDd;3;417E;D;K;6;CP$UIDd;3;418E;D;K;6;CP$UIDd;3;419E;D;K;6;CP$UIDd;3;420E;D;K;6;CP$UIDd;3;421E;D;K;6;CP$UIDd;3;422E;D;K;6;CP$UIDd;3;423E;D;K;6;CP$UIDd;3;424E;D;K;6;CP$UIDd;3;425E;D;K;6;CP$UIDd;3;426E;D;K;6;CP$UIDd;3;427E;D;K;6;CP$UIDd;3;428E;D;K;6;CP$UIDd;3;429E;D;K;6;CP$UIDd;3;430E;D;K;6;CP$UIDd;3;431E;D;K;6;CP$UIDd;3;432E;D;K;6;CP$UIDd;3;433E;D;K;6;CP$UIDd;3;434E;D;K;6;CP$UIDd;3;435E;D;K;6;CP$UIDd;3;436E;D;K;6;CP$UIDd;3;437E;D;K;6;CP$UIDd;3;438E;D;K;6;CP$UIDd;3;439E;D;K;6;CP$UIDd;3;440E;D;K;6;CP$UIDd;3;441E;D;K;6;CP$UIDd;3;442E;D;K;6;CP$UIDd;3;443E;D;K;6;CP$UIDd;3;444E;D;K;6;CP$UIDd;3;445E;D;K;6;CP$UIDd;3;446E;D;K;6;CP$UIDd;3;447E;D;K;6;CP$UIDd;3;448E;D;K;6;CP$UIDd;3;449E;D;K;6;CP$UIDd;3;450E;D;K;6;CP$UIDd;3;451E;D;K;6;CP$UIDd;3;452E;D;K;6;CP$UIDd;3;453E;D;K;6;CP$UIDd;3;454E;D;K;6;CP$UIDd;3;455E;D;K;6;CP$UIDd;3;456E;D;K;6;CP$UIDd;3;457E;D;K;6;CP$UIDd;3;458E;D;K;6;CP$UIDd;3;459E;D;K;6;CP$UIDd;3;460E;D;K;6;CP$UIDd;3;461E;D;K;6;CP$UIDd;3;462E;D;K;6;CP$UIDd;3;463E;D;K;6;CP$UIDd;3;464E;D;K;6;CP$UIDd;3;465E;D;K;6;CP$UIDd;3;466E;D;K;6;CP$UIDd;3;467E;D;K;6;CP$UIDd;3;468E;D;K;6;CP$UIDd;3;469E;D;K;6;CP$UIDd;3;470E;D;K;6;CP$UIDd;3;471E;D;K;6;CP$UIDd;3;472E;D;K;6;CP$UIDd;3;473E;D;K;6;CP$UIDd;3;474E;D;K;6;CP$UIDd;3;475E;D;K;6;CP$UIDd;3;476E;D;K;6;CP$UIDd;3;477E;D;K;6;CP$UIDd;3;478E;D;K;6;CP$UIDd;3;479E;D;K;6;CP$UIDd;3;480E;D;K;6;CP$UIDd;3;481E;D;K;6;CP$UIDd;3;482E;D;K;6;CP$UIDd;3;483E;D;K;6;CP$UIDd;3;484E;D;K;6;CP$UIDd;3;485E;D;K;6;CP$UIDd;3;486E;D;K;6;CP$UIDd;3;487E;D;K;6;CP$UIDd;3;488E;D;K;6;CP$UIDd;3;489E;D;K;6;CP$UIDd;3;490E;D;K;6;CP$UIDd;3;491E;D;K;6;CP$UIDd;3;492E;D;K;6;CP$UIDd;3;493E;D;K;6;CP$UIDd;3;494E;D;K;6;CP$UIDd;3;495E;D;K;6;CP$UIDd;3;496E;D;K;6;CP$UIDd;3;497E;D;K;6;CP$UIDd;3;498E;D;K;6;CP$UIDd;3;499E;D;K;6;CP$UIDd;3;500E;D;K;6;CP$UIDd;3;501E;D;K;6;CP$UIDd;3;502E;D;K;6;CP$UIDd;3;503E;D;K;6;CP$UIDd;3;504E;D;K;6;CP$UIDd;3;505E;D;K;6;CP$UIDd;3;506E;D;K;6;CP$UIDd;3;507E;D;K;6;CP$UIDd;3;508E;D;K;6;CP$UIDd;3;509E;D;K;6;CP$UIDd;3;510E;D;K;6;CP$UIDd;3;511E;D;K;6;CP$UIDd;3;512E;D;K;6;CP$UIDd;3;513E;D;K;6;CP$UIDd;3;514E;D;K;6;CP$UIDd;3;515E;D;K;6;CP$UIDd;3;516E;D;K;6;CP$UIDd;3;517E;D;K;6;CP$UIDd;3;518E;D;K;6;CP$UIDd;3;519E;D;K;6;CP$UIDd;3;520E;D;K;6;CP$UIDd;3;521E;D;K;6;CP$UIDd;3;522E;D;K;6;CP$UIDd;3;523E;D;K;6;CP$UIDd;3;524E;D;K;6;CP$UIDd;3;525E;D;K;6;CP$UIDd;3;526E;D;K;6;CP$UIDd;3;527E;D;K;6;CP$UIDd;3;528E;D;K;6;CP$UIDd;3;529E;D;K;6;CP$UIDd;3;530E;D;K;6;CP$UIDd;3;531E;D;K;6;CP$UIDd;3;532E;D;K;6;CP$UIDd;3;533E;D;K;6;CP$UIDd;3;534E;D;K;6;CP$UIDd;3;535E;D;K;6;CP$UIDd;3;536E;D;K;6;CP$UIDd;3;537E;D;K;6;CP$UIDd;3;538E;D;K;6;CP$UIDd;3;539E;D;K;6;CP$UIDd;3;540E;D;K;6;CP$UIDd;3;541E;D;K;6;CP$UIDd;3;542E;D;K;6;CP$UIDd;3;543E;D;K;6;CP$UIDd;3;544E;D;K;6;CP$UIDd;3;545E;D;K;6;CP$UIDd;3;546E;D;K;6;CP$UIDd;3;547E;D;K;6;CP$UIDd;3;548E;D;K;6;CP$UIDd;3;549E;D;K;6;CP$UIDd;3;550E;D;K;6;CP$UIDd;3;551E;D;K;6;CP$UIDd;3;552E;D;K;6;CP$UIDd;3;553E;D;K;6;CP$UIDd;3;554E;D;K;6;CP$UIDd;3;555E;D;K;6;CP$UIDd;3;556E;D;K;6;CP$UIDd;3;557E;D;K;6;CP$UIDd;3;558E;D;K;6;CP$UIDd;3;559E;D;K;6;CP$UIDd;3;560E;D;K;6;CP$UIDd;3;561E;D;K;6;CP$UIDd;3;562E;D;K;6;CP$UIDd;3;563E;D;K;6;CP$UIDd;3;564E;D;K;6;CP$UIDd;3;565E;D;K;6;CP$UIDd;3;566E;D;K;6;CP$UIDd;3;567E;D;K;6;CP$UIDd;3;568E;D;K;6;CP$UIDd;3;569E;D;K;6;CP$UIDd;3;570E;D;K;6;CP$UIDd;3;571E;D;K;6;CP$UIDd;3;572E;D;K;6;CP$UIDd;3;573E;D;K;6;CP$UIDd;3;574E;D;K;6;CP$UIDd;3;575E;D;K;6;CP$UIDd;3;576E;D;K;6;CP$UIDd;3;577E;D;K;6;CP$UIDd;3;578E;D;K;6;CP$UIDd;3;579E;D;K;6;CP$UIDd;3;580E;D;K;6;CP$UIDd;3;581E;D;K;6;CP$UIDd;3;582E;D;K;6;CP$UIDd;3;583E;D;K;6;CP$UIDd;3;584E;D;K;6;CP$UIDd;3;585E;D;K;6;CP$UIDd;3;586E;D;K;6;CP$UIDd;3;587E;D;K;6;CP$UIDd;3;588E;D;K;6;CP$UIDd;3;589E;D;K;6;CP$UIDd;3;590E;D;K;6;CP$UIDd;3;591E;D;K;6;CP$UIDd;3;592E;D;K;6;CP$UIDd;3;593E;D;K;6;CP$UIDd;3;594E;D;K;6;CP$UIDd;3;595E;D;K;6;CP$UIDd;3;596E;D;K;6;CP$UIDd;3;597E;D;K;6;CP$UIDd;3;598E;D;K;6;CP$UIDd;3;599E;D;K;6;CP$UIDd;3;600E;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;601E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;17E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;602E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;603E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;604E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;605E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;606E;E;D;K;10;$classnameS;13;CPTableColumnK;8;$classesA;S;13;CPTableColumnS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;24E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;197E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;607E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;608E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;609E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;153E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;613E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;32E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;614E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;132E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;615E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;98E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;44E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;617E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;93E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;153E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;618E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;619E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;620E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;32E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;621E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;32E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;622E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;121E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;623E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;624E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;136E;E;D;K;10;$classnameS;11;CPTableViewK;8;$classesA;S;11;CPTableViewS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;38E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;625E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;626E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;626E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;625E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;627E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;628E;K;24;CPTableViewDataSourceKeyD;K;6;CP$UIDd;1;0E;K;22;CPTableViewDelegateKeyD;K;6;CP$UIDd;1;0E;K;23;CPTableViewRowHeightKeyD;K;6;CP$UIDd;3;629E;K;30;CPTableViewIntercellSpacingKeyD;K;6;CP$UIDd;3;630E;K;31;CPTableViewMultipleSelectionKeyD;K;6;CP$UIDd;3;612E;K;28;CPTableViewEmptySelectionKeyD;K;6;CP$UIDd;3;610E;K;26;CPTableViewTableColumnsKeyD;K;6;CP$UIDd;3;631E;E;D;K;6;$classD;K;6;CP$UIDd;2;24E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;632E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;633E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;634E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;635E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;636E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;45E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;637E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;105E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;638E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;639E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;640E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;641E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;642E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;643E;E;D;K;6;$classD;K;6;CP$UIDd;2;24E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;202E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;633E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;634E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;635E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;644E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;132E;E;D;K;6;$classD;K;6;CP$UIDd;2;24E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;645E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;646E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;608E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;609E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;647E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;638E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;43E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;44E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;648E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;649E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;142E;E;D;K;10;$classnameS;20;_CPCibWindowTemplateK;8;$classesA;S;20;_CPCibWindowTemplateS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;30;_CPCibWindowTemplateMaxSizeKeyD;K;6;CP$UIDd;3;650E;K;32;_CPCibWindowTemplateViewClassKeyD;K;6;CP$UIDd;1;0E;K;34;_CPCibWindowTemplateWindowClassKeyD;K;6;CP$UIDd;3;651E;K;33;_CPCibWindowTemplateWindowRectKeyD;K;6;CP$UIDd;3;652E;K;30;_CPCibWindowTempatStyleMaskKeyD;K;6;CP$UIDd;3;653E;K;34;_CPCibWindowTemplateWindowTitleKeyD;K;6;CP$UIDd;3;654E;K;33;_CPCibWindowTemplateWindowViewKeyD;K;6;CP$UIDd;3;126E;K;41;_CPCibWindowTemplateWindowIsFullBridgeKeyD;K;6;CP$UIDd;3;612E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;655E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;656E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;657E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;131E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;658E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;659E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;660E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;661E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;10;$classnameS;10;CPScrollerK;8;$classesA;S;10;CPScrollerS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;62E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;86E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;662E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;663E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;86E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;664E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;665E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;666E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;86E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;667E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;628E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;666E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;668E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;153E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;15E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;601E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;669E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;670E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;32E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;671E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;153E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;672E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;132E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;605E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;23E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;673E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;674E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;618E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;32E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;675E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;45E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;676E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;45E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;677E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;132E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;E;D;K;6;$classD;K;6;CP$UIDd;2;62E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;86E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;678E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;679E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;86E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;664E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;627E;K;17;CPControlValueKeyD;K;6;CP$UIDd;3;666E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;2;86E;K;18;CPControlActionKeyD;K;6;CP$UIDd;3;680E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;3;628E;K;21;CPScrollerControlSizeD;K;6;CP$UIDd;3;666E;K;24;CPScrollerKnobProportionD;K;6;CP$UIDd;3;681E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;682E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;136E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;683E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;153E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;44E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;669E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;E;D;K;6;$classD;K;6;CP$UIDd;2;24E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;261E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;633E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;634E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;635E;E;D;K;6;$classD;K;6;CP$UIDd;2;24E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;278E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;633E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;634E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;635E;E;D;K;10;$classnameS;12;CPScrollViewK;8;$classesA;S;12;CPScrollViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;85E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;3;126E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;685E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;686E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;687E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;3;126E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;688E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;627E;K;23;CPScrollViewContentViewD;K;6;CP$UIDd;3;625E;K;21;CPScrollViewVScrollerD;K;6;CP$UIDd;2;63E;K;21;CPScrollViewHScrollerD;K;6;CP$UIDd;2;78E;K;23;CPScrollViewVLineScrollD;K;6;CP$UIDd;3;634E;K;23;CPScrollViewVPageScrollD;K;6;CP$UIDd;3;634E;K;23;CPScrollViewHLineScrollD;K;6;CP$UIDd;3;634E;K;23;CPScrollViewHPageScrollD;K;6;CP$UIDd;3;634E;K;24;CPScrollViewHasVScrollerD;K;6;CP$UIDd;3;610E;K;24;CPScrollViewHasHScrollerD;K;6;CP$UIDd;3;610E;K;29;CPScrollViewAutohidesScrollerD;K;6;CP$UIDd;3;612E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;690E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;153E;E;D;K;6;$classD;K;6;CP$UIDd;2;24E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;210E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;633E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;634E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;635E;E;D;K;6;$classD;K;6;CP$UIDd;2;24E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;312E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;633E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;634E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;635E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;691E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;692E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;693E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;142E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;617E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;694E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;695E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;132E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;696E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;697E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;698E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;131E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;615E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;699E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;700E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;105E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;44E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;701E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;702E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;703E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;704E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;153E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;700E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;705E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;706E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;654E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;707E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;708E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;124E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;44E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;709E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;105E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;710E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;711E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;45E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;712E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;132E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;713E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;714E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;684E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;153E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;715E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;153E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;716E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;23E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;622E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;717E;E;D;K;6;$classD;K;6;CP$UIDd;2;24E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;190E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;633E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;634E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;635E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;718E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;132E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;708E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;719E;E;D;K;10;$classnameS;6;CPViewK;8;$classesA;S;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;125E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;720E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;720E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;721E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;627E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;722E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;723E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;153E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;724E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;153E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;725E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;726E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;727E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;677E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;728E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;696E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;95E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;691E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;91E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;44E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;729E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;682E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;730E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;731E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;131E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;732E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;145E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;108E;E;D;K;6;$classD;K;6;CP$UIDd;2;24E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;309E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;634E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;634E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;635E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;693E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;733E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;726E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;131E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;734E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;732E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;735E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;736E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;737E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;654E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;108E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;44E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;738E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;132E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;739E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;95E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;740E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;22E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;683E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;741E;E;D;K;6;$classD;K;6;CP$UIDd;2;24E;K;26;CPTableColumnIdentifierKeyD;K;6;CP$UIDd;3;301E;K;21;CPTableColumnWidthKeyD;K;6;CP$UIDd;3;633E;K;24;CPTableColumnMinWidthKeyD;K;6;CP$UIDd;3;634E;K;24;CPTableColumnMaxWidthKeyD;K;6;CP$UIDd;3;635E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;742E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;142E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;743E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;145E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;744E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;745E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;121E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;746E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;747E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;43E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;748E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;132E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;749E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;32E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;642E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;616E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;45E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;98E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;750E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;19E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;610E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;611E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;612E;K;21;CPMenuItemIsHiddenKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;1;0E;K;18;CPMenuItemStateKeyD;K;6;CP$UIDd;1;0E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;153E;E;S;18;Menu Item (Loosen)S;19;Menu Item (Smaller)S;18;Menu (Open Recent)S;16;Table Column (1)S;9;SeparatorS;11;Separator-2S;25;Menu Item (Find Previous)S;18;Menu Item (Center)S;16;Menu Item (Edit)S;20;Menu Item (Services)S;11;Menu (Find)S;29;Menu Item (Jump to Selection)S;17;Menu Item (Find…)S;16;Menu Item (Font)S;14;App ControllerS;17;Menu Item (Raise)S;29;Text Field Cell (Text Cell)-9S;10;Table ViewS;12;File's OwnerS;16;Table Column (4)S;39;Menu Item (Check Spelling While Typing)S;29;Text Field Cell (Text Cell)-1S;24;Menu Item (Show Toolbar)S;1;2S;8;MainMenuS;27;Menu (Spelling and Grammar)S;16;Table Column (6)S;22;Menu Item (Copy Ruler)S;16;Table Column (0)S;22;Menu Item (Copy Style)S;1;1S;16;Menu Item (Zoom)S;25;Menu Item (Stop Speaking)S;15;Window (Window)S;22;Menu Item (Show Fonts)S;1;6S;23;Menu Item (Smart Links)S;16;Menu Item (Bold)S;16;Menu Item (Copy)S;18;Menu Item (Italic)S;23;Menu Item (Show Colors)S;17;Vertical ScrollerS;11;Separator-3S;1;7S;11;ApplicationS;22;Menu Item (Use None)-1S;34;Menu Item (Use Selection for Find)S;23;Menu Item (Hide Others)S;22;Menu Item (Align Left)S;23;Menu Item (Open Recent)S;30;Menu Item (Bring All to Front)S;16;Menu Item (Redo)S;16;Menu Item (Find)S;26;Menu Item (Check Spelling)S;26;Menu Item (Show Spelling…)S;16;Menu Item (Text)S;19;Horizontal ScrollerS;20;Menu Item (Baseline)S;26;Menu Item (NewApplication)S;20;Menu Item (Use None)S;25;Menu Item (Use Default)-2S;16;Table Column (5)S;16;Table Column (3)S;33;Bordered Scroll View (Table View)S;11;Separator-7S;32;Menu Item (About NewApplication)S;16;Table Column (7)S;16;Table Column (9)S;13;Menu (Format)S;18;Menu Item (Speech)S;15;Menu (Services)S;29;Text Field Cell (Text Cell)-4S;29;Text Field Cell (Text Cell)-6S;23;Menu Item (Align Right)S;11;Menu (Kern)S;23;Menu Item (Use Default)S;28;Menu Item (Smart Copy/Paste)S;11;Menu (Edit)S;16;Menu Item (View)S;3;2-1S;29;Text Field Cell (Text Cell)-2S;18;Menu Item (Delete)S;23;Menu Item (Superscript)S;20;Menu Item (Minimize)S;31;Menu Item (Hide NewApplication)S;11;Menu (View)S;11;Separator-8S;23;Menu Item (Paste Style)S;13;Menu (Window)S;16;Menu Item (File)S;30;Menu Item (Customize Toolbar…)S;3;1-1S;39;Menu Item (Check Grammar With Spelling)S;23;Menu Item (Paste Ruler)S;1;5S;21;Menu Item (Subscript)S;25;Menu Item (Use Default)-1S;11;Separator-4S;30;Text Field Cell (Text Cell)-10S;20;Menu Item (Show All)S;11;Separator-1S;22;Menu Item (Clear Menu)S;27;Text Field Cell (Text Cell)S;11;Menu (Font)S;16;Table Column (2)S;19;Menu Item (Justify)S;11;Menu (File)S;12;Content ViewS;16;Menu Item (Undo)S;3;121S;4;1111S;1;3S;20;Menu (Substitutions)S;11;Menu (Text)S;16;Menu Item (Kern)S;29;Text Field Cell (Text Cell)-3S;29;Text Field Cell (Text Cell)-7S;18;Menu Item (Format)S;22;Menu Item (Select All)S;15;Menu (Baseline)S;24;Menu Item (Smart Quotes)S;29;Text Field Cell (Text Cell)-5S;20;Menu Item (Ligature)S;11;Separator-9S;11;Separator-6S;17;Table Column (10)S;13;Menu (Speech)S;25;Menu Item (Substitutions)S;21;Menu Item (Underline)S;29;Text Field Cell (Text Cell)-8S;15;Menu (Ligature)S;15;Menu Item (Cut)S;17;Menu Item (Paste)S;18;Menu Item (Window)S;1;8S;12;Separator-11S;19;Menu Item (Tighten)S;18;Menu Item (Bigger)S;21;Menu (NewApplication)S;16;Table Column (8)S;26;Menu Item (Start Speaking)S;19;Menu Item (Use All)S;2;10S;17;Menu Item (Lower)S;12;Separator-10S;1;9S;31;Menu Item (NewApplication Help)S;22;Menu Item (Show Ruler)S;21;Menu Item (Find Next)S;32;Menu Item (Spelling and Grammar)S;17;Menu Item (Open…)S;11;Separator-5D;K;10;$classnameS;22;_CPCibControlConnectorK;8;$classesA;S;22;_CPCibControlConnectorS;15;_CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;42E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;751E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;33E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;752E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;52E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;753E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;112E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;754E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;69E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;755E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;116E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;756E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;20E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;757E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;130E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;758E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;76E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;759E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;110E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;760E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;127E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;761E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;146E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;762E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;101E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;763E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;157E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;764E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;49E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;765E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;151E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;766E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;61E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;767E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;144E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;768E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;29E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;769E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;161E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;770E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;88E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;16E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;771E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;51E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;772E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;149E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;773E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;158E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;774E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;118E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;775E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;81E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;776E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;107E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;777E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;102E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;778E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;129E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;66E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;779E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;156E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;780E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;137E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;781E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;147E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;782E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;41E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;783E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;96E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;784E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;56E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;785E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;82E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;786E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;103E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;787E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;120E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;788E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;789E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;115E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;790E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;135E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;791E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;113E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;792E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;793E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;70E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;794E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;59E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;795E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;104E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;796E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;72E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;797E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;34E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;798E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;162E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;799E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;165E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;800E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;73E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;801E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;155E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;802E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;97E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;803E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;160E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;804E;E;D;K;10;$classnameS;21;_CPCibOutletConnectorK;8;$classesA;S;21;_CPCibOutletConnectorS;15;_CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;374E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;16E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;36E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;805E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;114E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;806E;E;D;K;6;$classD;K;6;CP$UIDd;3;374E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;36E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;54E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;807E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;67E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;808E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;37E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;809E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;94E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;810E;E;D;K;6;$classD;K;6;CP$UIDd;3;374E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;39E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;36E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;811E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;111E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;812E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;47E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;813E;E;D;K;6;$classD;K;6;CP$UIDd;3;319E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;123E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;814E;E;d;3;438d;3;447d;3;395d;3;125d;3;433d;3;206d;3;360d;3;381d;3;220d;3;209d;3;210d;3;409d;3;486d;3;451d;3;474d;3;373d;3;297d;2;29d;3;200d;3;477d;3;465d;3;224d;3;230d;3;103d;3;371d;2;39d;3;231d;3;354d;3;390d;3;391d;2;86d;3;461d;3;236d;3;235d;3;413d;3;362d;3;380d;1;5d;3;218d;3;201d;3;378d;3;347d;3;412d;3;460d;3;446d;3;396d;3;479d;3;406d;3;442d;3;476d;3;205d;3;295d;3;478d;2;23d;3;222d;2;24d;3;298d;3;227d;2;73d;3;225d;3;346d;3;488d;3;387d;3;448d;3;432d;2;77d;3;416d;3;149d;3;367d;3;482d;3;240d;3;150d;3;214d;3;126d;3;245d;3;467d;3;430d;3;226d;3;357d;3;429d;3;142d;3;435d;3;207d;3;136d;3;484d;3;379d;3;468d;3;351d;3;398d;3;400d;3;374d;3;485d;3;470d;2;87d;3;233d;3;411d;3;203d;2;19d;3;394d;2;57d;3;196d;3;481d;3;444d;3;393d;2;82d;3;111d;3;241d;3;223d;3;366d;2;72d;3;368d;3;419d;3;364d;3;466d;3;363d;3;143d;3;213d;3;443d;3;437d;3;193d;3;217d;3;131d;3;377d;3;450d;3;232d;3;463d;3;489d;3;473d;3;219d;3;228d;3;439d;3;106d;3;386d;3;403d;3;239d;3;441d;3;195d;3;389d;3;436d;2;78d;2;37d;3;197d;3;401d;2;79d;2;-3d;3;221d;3;145d;3;124d;3;215d;3;445d;3;204d;3;399d;3;370d;3;417d;3;462d;2;56d;3;431d;3;475d;3;471d;2;58d;3;483d;3;130d;3;211d;3;376d;3;480d;3;449d;3;383d;3;415d;3;350d;3;407d;2;74d;3;202d;3;134d;3;296d;3;402d;3;404d;3;365d;2;83d;3;459d;3;408d;3;127d;3;440d;3;427d;3;388d;3;469d;3;382d;2;81d;3;372d;3;349d;3;129d;2;75d;3;397d;3;405d;3;375d;3;198d;3;472d;2;92d;3;392d;3;212d;3;348d;3;356d;3;355d;3;199d;2;80d;3;384d;3;418d;3;434d;3;428d;3;414d;3;112d;3;410d;3;426d;3;385d;3;208d;3;216d;3;144S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;54E;E;E;S;6;LoosenS;7;SmallerS;11;Open RecentD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;120E;E;E;d;2;67d;2;40d;4;1000T;S;0;F;S;13;Find PreviousS;6;CenterS;4;EditS;14;submenuAction:S;8;ServicesS;4;FindD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;3;163E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;33E;E;E;S;17;Jump to SelectionS;5;Find…S;4;FontS;13;AppControllerS;5;RaiseD;K;6;$classD;K;6;CP$UIDd;3;689E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;86E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;3;815E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;3;816E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;3;817E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;86E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;3;664E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;3;819E;K;19;CPViewThemeStateKeyD;K;6;CP$UIDd;3;627E;K;24;CPScrollViewDocumentViewD;K;6;CP$UIDd;2;39E;E;S;20;{{0, 0}, {691, 348}}S;6;normald;1;4d;2;17S;6;{3, 2}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;3;122E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;3;154E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;3;141E;E;E;S;1;4d;2;64d;2;10d;22;3.4028230607370965e+38S;27;Check Spelling While TypingS;12;Show ToolbarS;4;HelpD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;161E;E;E;S;9;AMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;3;134E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;148E;D;K;6;CP$UIDd;2;50E;E;E;S;20;Spelling and GrammarD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;3;112E;E;E;S;10;Copy RulerS;1;0d;2;69S;10;Copy StyleS;4;ZoomS;13;Stop SpeakingS;26;{3.40282e+38, 3.40282e+38}S;8;CPWindowS;24;{{335, 128}, {491, 363}}d;1;7S;6;WindowS;10;Show FontsS;6;Print…S;11;Smart LinksS;4;BoldS;4;CopyS;6;ItalicS;11;Show ColorsS;22;{{477, 16}, {17, 348}}S;19;{{0, 0}, {17, 348}}d;1;8S;17;disabled+verticald;1;0S;27;_verticalScrollerDidScroll:f;18;0.9971429109573364S;8;Use NoneS;22;Use Selection for FindS;11;Hide OthersS;10;Align LeftS;18;Bring All to FrontS;4;RedoS;14;Check SpellingS;14;Show Spelling…S;4;TextS;20;{{1, -1}, {476, 17}}S;19;{{0, 0}, {476, 17}}S;29;_horizontalScrollerDidScroll:f;18;0.6888567209243774S;8;BaselineS;14;NewApplicationS;11;Use DefaultS;22;{{-1, -1}, {493, 365}}S;20;{{0, 0}, {493, 365}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;625E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;78E;E;E;d;2;18D;K;10;$classnameS;10;CPClipViewK;8;$classesA;S;10;CPClipViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;S;20;About NewApplicationS;6;FormatD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;77E;E;E;S;6;SpeechD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;S;11;Align RightS;4;KernD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;3;151E;D;K;6;CP$UIDd;2;20E;E;E;S;16;Smart Copy/PasteD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;127E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;3;146E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;3;147E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;135E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;3;164E;D;K;6;CP$UIDd;3;143E;D;K;6;CP$UIDd;2;92E;E;E;S;4;ViewS;6;DeleteS;11;SuperscriptS;8;MinimizeS;19;Hide NewApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;3;110E;E;E;S;11;Paste StyleD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;3;140E;D;K;6;CP$UIDd;2;72E;E;E;S;4;FileS;18;Customize Toolbar…S;5;CloseS;27;Check Grammar With SpellingS;11;Paste RulerS;13;Page Setup...S;9;SubscriptS;8;Show AllS;10;Clear MenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;3;144E;D;K;6;CP$UIDd;3;159E;D;K;6;CP$UIDd;3;152E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;3;133E;D;K;6;CP$UIDd;3;138E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;3;139E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;3;107E;E;E;S;7;JustifyD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;160E;D;K;6;CP$UIDd;3;165E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;130E;D;K;6;CP$UIDd;3;149E;D;K;6;CP$UIDd;3;157E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;2;56E;E;E;S;20;{{0, 0}, {491, 363}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;86E;E;E;S;4;UndoS;12;Preferences…S;19;Quit NewApplicationS;4;SaveS;13;SubstitutionsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;3;137E;D;K;6;CP$UIDd;2;57E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;3;123E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;3;150E;D;K;6;CP$UIDd;3;162E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;3;113E;E;E;S;10;Select AllD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;3;158E;E;E;S;12;Smart QuotesS;8;LigatureD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;155E;D;K;6;CP$UIDd;2;52E;E;E;S;9;UnderlineD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;3;156E;E;E;S;3;CutS;5;PasteS;8;Save As…S;7;TightenS;6;BiggerD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;3;128E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;3;166E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;129E;E;E;S;14;Start SpeakingS;7;Use AllS;15;Revert to SavedS;5;LowerS;3;NewS;19;NewApplication HelpS;10;Show RulerS;9;Find NextS;5;Open…S;19;toggleToolbarShown:S;29;centerSelectionInVisibleArea:S;13;stopSpeaking:S;22;toggleGrammarChecking:S;22;hideOtherApplications:S;19;useStandardKerning:S;14;loosenKerning:S;13;saveDocument:S;15;showGuessPanel:S;31;runToolbarCustomizationPalette:S;5;undo:S;4;cut:S;7;delete:S;22;revertDocumentToSaved:S;9;copyFont:S;15;tightenKerning:S;21;orderFrontColorPanel:S;10;underline:S;12;alignCenter:S;9;showHelp:S;29;orderFrontStandardAboutPanel:S;12;performZoom:S;15;saveDocumentAs:S;14;lowerBaseline:S;22;unhideAllApplications:S;15;turnOffKerning:S;10;pasteFont:S;12;superscript:S;10;terminate:S;16;useAllLigatures:S;33;toggleAutomaticQuoteSubstitution:S;6;paste:S;30;toggleContinuousSpellChecking:S;9;unscript:S;6;print:S;21;useStandardLigatures:S;19;performMiniaturize:S;21;clearRecentDocuments:S;29;toggleAutomaticLinkDetection:S;10;subscript:S;10;selectAll:S;11;pasteRuler:S;14;checkSpelling:S;10;alignLeft:S;5;copy:S;5;hide:S;15;arrangeInFront:S;23;performFindPanelAction:S;12;toggleRuler:S;13;openDocument:S;5;redo:S;14;startSpeaking:S;24;toggleSmartInsertDelete:S;12;newDocument:S;8;delegateS;14;runPageLayout:S;9;theWindowS;17;turnOffLigatures:S;14;raiseBaseline:S;11;alignRight:S;10;dataSourceS;13;performClose:S;10;copyRuler:S;15;alignJustified:S;21;{{1, 16}, {476, 348}}S;20;{{0, 0}, {476, 348}}D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;39E;E;E;D;K;10;$classnameS;7;CPColorK;8;$classesA;S;7;CPColorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;818E;K;20;CPColorComponentsKeyD;K;6;CP$UIDd;3;820E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;821E;D;K;6;CP$UIDd;3;821E;D;K;6;CP$UIDd;3;821E;D;K;6;CP$UIDd;3;822E;E;E;f;10;0.66666669d;1;1E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E;
\ No newline at end of file
From 0356c6e62207c5cae69a7bbbcc7d913aaa6de30d Mon Sep 17 00:00:00 2001
From: Marc Nijdam
Date: Tue, 7 Jul 2009 10:34:34 -0700
Subject: [PATCH 083/244] Reordered a bit and added separator
---
.../JavaScript Objective-J.tmbundle/info.plist | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/info.plist b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/info.plist
index f5f1b9036..b7c519f74 100644
--- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/info.plist
+++ b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/info.plist
@@ -8,14 +8,31 @@
Tom Robinson
description
<a href="http://cappuccino.org/">Cappuccino</a> is an open source framework that makes it easy to build desktop-caliber applications that run in a web browser.
+ mainMenu
+
+ items
+
+ 96C39647-4346-4750-9F96-58070F24EDE6
+ AA41BEF8-5F81-4A5A-85DE-2E81A112778B
+ 85B0746B-AE1C-47B3-8B9A-2B9A95F4C71E
+ ------------------------------------
+ 36FD3695-1051-401E-8536-89FB9CEEEAB4
+ 033BC36A-97DA-4F48-9ACB-B58C80D1A689
+
+ submenus
+
+
name
JavaScript Objective-J
ordering
58D4B98A-2110-423E-9C80-CC9E202816E7
+ 85A46AFC-5552-4CE5-BDA0-ED34F0398399
96C39647-4346-4750-9F96-58070F24EDE6
AA41BEF8-5F81-4A5A-85DE-2E81A112778B
85B0746B-AE1C-47B3-8B9A-2B9A95F4C71E
+ 36FD3695-1051-401E-8536-89FB9CEEEAB4
+ 033BC36A-97DA-4F48-9ACB-B58C80D1A689
uuid
1FB3D538-84E1-4002-AA46-5705529A27E1
From cc90f2e5f07f29f50d6b331528a4f30c9ed501fc Mon Sep 17 00:00:00 2001
From: Marc Nijdam
Date: Mon, 6 Jul 2009 15:02:19 -0700
Subject: [PATCH 084/244] Added run in browser/refresh browser commands for
project level view of run application
---
...n Document in Running Browser(s).tmCommand | 65 +++++++++++++++++++
.../Refresh Running Browser(s).tmCommand | 51 +++++++++++++++
2 files changed, 116 insertions(+)
create mode 100644 Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Open Document in Running Browser(s).tmCommand
create mode 100644 Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Refresh Running Browser(s).tmCommand
diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Open Document in Running Browser(s).tmCommand b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Open Document in Running Browser(s).tmCommand
new file mode 100644
index 000000000..a85993ae3
--- /dev/null
+++ b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Open Document in Running Browser(s).tmCommand
@@ -0,0 +1,65 @@
+
+
+
+
+ beforeRunningCommand
+ nop
+ command
+ #!/usr/bin/env ruby -wKU
+#
+# Open Document in Running Browser(s)
+# v3 - November 22, 2007
+#
+# Now supports multiple running versions of a single browser along
+# with a range of new/old browsers. Bring back support for Firefox.
+#
+# Options: Set TM_PROJECT_SITEURL in your TM Project Window Info Button
+# in the following form: "http://example.com/"
+
+require "#{ENV['TM_SUPPORT_PATH']}/lib/escape.rb"
+
+if ENV['TM_PROJECT_SITEURL']
+ url = "#{ENV['TM_PROJECT_SITEURL']}" + ENV['TM_FILEPATH'].sub(/^#{Regexp.escape(ENV['TM_PROJECT_DIRECTORY'])}\//, '')
+else
+ url = "file://#{ENV['TM_PROJECT_DIRECTORY']}/index.html"
+end
+
+proclist = `ps -x -o command`
+active = []
+os = `defaults read /System/Library/CoreServices/SystemVersion ProductVersion`
+
+browsers = %w[ Safari OmniWeb Camino Shiira firefox-bin Xyle\ scope Opera Internet\ Explorer flock-bin iCab Sunrise seamonkey-bin navigator-bin ].join('|')
+
+# Build paths to each active browser
+#
+# Notes:
+# - 'WebKit' look ahead is to rule it out so we can use the working
+# rule below.
+# - 'LaunchCFMApp' portion is so iCab works.
+active = proclist.scan(%r{^(?:/.*LaunchCFMApp )?(/.*\.app)(?=/Contents/MacOS/(?:#{browsers})\b(?!\s-WebKit))})
+
+# Special check for WebKit as it appears as Safari
+# Note: Only supports one running instance of WebKit, picked at random.
+if proclist =~ %r{/Contents/MacOS/Safari.*-WebKit(DeveloperExtras|ScriptDebuggerEnabled)}
+ active << "WebKit"
+end
+
+# TODO: Change when Leopard Only
+# On Leopard use the -g option to open in background.
+if os =~ /^10\.(5|6)/
+ active.each {|p| `open -g -a #{e_sh(p)} #{e_sh(url)}` }
+else
+ active.each {|p| `open -a #{e_sh(p)} #{e_sh(url)}` }
+end
+ input
+ none
+ name
+ Open Document in Running Browser(s)
+ output
+ discard
+ scope
+ source.js.objj
+ uuid
+ 36FD3695-1051-401E-8536-89FB9CEEEAB4
+
+
diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Refresh Running Browser(s).tmCommand b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Refresh Running Browser(s).tmCommand
new file mode 100644
index 000000000..9b85e3197
--- /dev/null
+++ b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Refresh Running Browser(s).tmCommand
@@ -0,0 +1,51 @@
+
+
+
+
+ beforeRunningCommand
+ nop
+ command
+ ### Refresh All Active Browsers - OmniWeb, Safari, Firefox & IE
+### v1.0. 2005-03-29
+###
+
+# Check if Internet Explorer is running, if so refresh
+ps -xc|grep -sq "Internet Explorer" && osascript -e 'tell app "Internet Explorer"' -e 'activate' -e 'OpenURL "JavaScript:window.location.reload();" toWindow -1' -e 'end tell'
+
+# Check if OmniWeb is running, if so refresh
+ps -xc|grep -sq OmniWeb && osascript -e 'tell app "OmniWeb"' -e 'activate' -e 'reload first browser' -e 'end tell'
+
+# Check if Firefox is running, if so refresh
+ps -xc|grep -sqi firefox && osascript <<'APPLESCRIPT'
+ tell app "Firefox" to activate
+ tell app "System Events"
+ if UI elements enabled then
+ keystroke "r" using command down
+ -- Fails if System Preferences > Universal access > "Enable access for assistive devices" is not on
+ else
+ tell app "Firefox" to Get URL "JavaScript:window.location.reload();" inside window 1
+ -- Fails if Firefox is set to open URLs from external apps in new tabs.
+ end if
+ end tell
+APPLESCRIPT
+
+# Check if Safari is running, if so refresh
+ps -xc|grep -sq Safari && osascript -e 'tell app "Safari"' -e 'activate' -e 'do JavaScript "window.location.reload();" in first document' -e 'end tell'
+
+# Check if Camino is running, if so refresh
+ps -xc|grep -sq Camino && osascript -e 'tell app "Camino"' -e 'activate' -e 'tell app "System Events" to keystroke "r" using {command down}' -e 'end tell'
+
+ input
+ none
+ keyEquivalent
+ @r
+ name
+ Refresh Running Browser(s)
+ output
+ discard
+ scope
+ source.js.objj
+ uuid
+ 033BC36A-97DA-4F48-9ACB-B58C80D1A689
+
+
From 8e3ac66a2d018f2e99acff007ad4c70f6cf3e481 Mon Sep 17 00:00:00 2001
From: Marc Nijdam
Date: Mon, 6 Jul 2009 14:34:10 -0700
Subject: [PATCH 085/244] Added '_' as allowed characted in implementation,
protocol and interface names
---
.../Syntaxes/Objective-J.tmLanguage | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Syntaxes/Objective-J.tmLanguage b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Syntaxes/Objective-J.tmLanguage
index a1ced269f..b750cb206 100644
--- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Syntaxes/Objective-J.tmLanguage
+++ b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Syntaxes/Objective-J.tmLanguage
@@ -21,7 +21,7 @@
begin
- ((@)(interface|protocol))(?!.+;)\s+([A-Za-z][A-Za-z0-9]*)\s*((:)(?:\s*)([A-Za-z][A-Za-z0-9]*))?(\s|\n)?
+ ((@)(interface|protocol))(?!.+;)\s+([_A-Za-z][_A-Za-z0-9]*)\s*((:)(?:\s*)([_A-Za-z][_A-Za-z0-9]*))?(\s|\n)?
captures
1
@@ -84,7 +84,7 @@
begin
- ((@)(implementation))\s+([A-Za-z][A-Za-z0-9]*)\s*(?::\s*([A-Za-z][A-Za-z0-9]*))?
+ ((@)(implementation))\s+([_A-Za-z][_A-Za-z0-9]*)\s*(?::\s*([_A-Za-z][_A-Za-z0-9]*))?
captures
1
From 215619e6e294889ab8b73f9326a50ac76f1874da Mon Sep 17 00:00:00 2001
From: Marc Nijdam
Date: Fri, 10 Jul 2009 02:49:25 +0800
Subject: [PATCH 086/244] Initial nib2cib work on collectionview
Signed-off-by: Francisco Ryan Tolmasky I
---
AppKit/CPCollectionView.j | 15 ++++--
Tools/nib2cib/NSAppKit.j | 1 +
Tools/nib2cib/NSCollectionView.j | 84 ++++++++++++++++++++++++++++++++
3 files changed, 95 insertions(+), 5 deletions(-)
create mode 100644 Tools/nib2cib/NSCollectionView.j
diff --git a/AppKit/CPCollectionView.j b/AppKit/CPCollectionView.j
index 325175309..88afdc80a 100644
--- a/AppKit/CPCollectionView.j
+++ b/AppKit/CPCollectionView.j
@@ -735,10 +735,11 @@ var CPCollectionViewMinItemSizeKey = @"CPCollectionViewMinItemSizeKey",
_cachedItems = [];
_itemSize = CGSizeMakeZero();
+
_minItemSize = [aCoder decodeSizeForKey:CPCollectionViewMinItemSizeKey];
_maxItemSize = [aCoder decodeSizeForKey:CPCollectionViewMaxItemSizeKey];
-
- _verticalMargin = [aCoder decodeSizeForKey:CPCollectionViewVerticalMarginKey];
+ _verticalMargin = [aCoder decodeFloatForKey:CPCollectionViewVerticalMarginKey];
+
_tileWidth = -1.0;
_selectionIndexes = [CPIndexSet indexSet];
@@ -751,10 +752,14 @@ var CPCollectionViewMinItemSizeKey = @"CPCollectionViewMinItemSizeKey",
{
[super encodeWithCoder:aCoder];
- [aCoder encodeSize:_minItemSize forKey:CPCollectionViewMinItemSizeKey];
- [aCoder encodeSize:_maxItemSize forKey:CPCollectionViewMaxItemSizeKey];
+ if (_minItemSize != nil)
+ [aCoder encodeSize:_minItemSize forKey:CPCollectionViewMinItemSizeKey];
+
+ if (_maxItemSize != nil)
+ [aCoder encodeSize:_maxItemSize forKey:CPCollectionViewMaxItemSizeKey];
- [aCoder encodeSize:_verticalMargin forKey:CPCollectionViewVerticalMarginKey];
+ if (_verticalMargin != nil)
+ [aCoder encodeFloat:_verticalMargin forKey:CPCollectionViewVerticalMarginKey];
}
@end
diff --git a/Tools/nib2cib/NSAppKit.j b/Tools/nib2cib/NSAppKit.j
index 5e13cb706..5fc83b30f 100644
--- a/Tools/nib2cib/NSAppKit.j
+++ b/Tools/nib2cib/NSAppKit.j
@@ -26,6 +26,7 @@
@import "NSClipView.j"
@import "NSColor.j"
@import "NSColorWell.j"
+@import "NSCollectionView.j"
@import "NSControl.j"
@import "NSCustomObject.j"
@import "NSCustomResource.j"
diff --git a/Tools/nib2cib/NSCollectionView.j b/Tools/nib2cib/NSCollectionView.j
new file mode 100644
index 000000000..153edee4e
--- /dev/null
+++ b/Tools/nib2cib/NSCollectionView.j
@@ -0,0 +1,84 @@
+/*
+ * NSCollectionView.j
+ * nib2cib
+ *
+ * Created by Marc Nijdam.
+ * Copyright 2009, imadjine, LLC.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+@import
+
+@implementation CPCollectionView (NSCoding)
+
+- (id)NS_initWithCoder:(CPCoder)aCoder
+{
+ if (self = [super NS_initWithCoder:aCoder])
+ {
+ _maxNumberOfRows = [aCoder decodeIntForKey:@"NSMaxNumberOfGridRows"];
+ _maxNumberOfColumns = [aCoder decodeIntForKey:@"NSMaxNumberOfGridColumns"];
+
+ _isSelectable = [aCoder decodeBoolForKey:@"NSSelectable"];
+ _allowsMultipleSelection = [aCoder decodeBoolForKey:@"NSAllowsMultipleSelection"];
+
+ }
+
+ return self;
+}
+
+@end
+
+@implementation NSCollectionView : CPCollectionView
+{
+}
+
+- (id)initWithCoder:(CPCoder)aCoder
+{
+ return [self NS_initWithCoder:aCoder];
+}
+
+- (Class)classForKeyedArchiver
+{
+ return [CPCollectionView class];
+}
+
+@end
+
+
+@implementation CPCollectionViewItem (NSCoding)
+
+- (id)NS_initWithCoder:(CPCoder)aCoder
+{
+ return [super init];
+}
+
+@end
+
+@implementation NSCollectionViewItem : CPCollectionViewItem
+{
+}
+
+- (id)initWithCoder:(CPCoder)aCoder
+{
+ return [self NS_initWithCoder:aCoder];
+}
+
+- (Class)classForKeyedArchiver
+{
+ return [CPCollectionViewItem class];
+}
+
+@end
\ No newline at end of file
From 9c226ae5743a7e6039fcaf1ccb1ea36a3f7bd98d Mon Sep 17 00:00:00 2001
From: Marc Nijdam
Date: Thu, 16 Jul 2009 08:35:29 +0800
Subject: [PATCH 087/244] Ensuring all instance variables initialized to same
values as initWithFrame: on coder init
Signed-off-by: Francisco Ryan Tolmasky I
---
AppKit/CPCollectionView.j | 14 ++++++++------
Tools/nib2cib/NSCollectionView.j | 16 +++++++++++++++-
2 files changed, 23 insertions(+), 7 deletions(-)
diff --git a/AppKit/CPCollectionView.j b/AppKit/CPCollectionView.j
index 88afdc80a..e5c72c8eb 100644
--- a/AppKit/CPCollectionView.j
+++ b/AppKit/CPCollectionView.j
@@ -736,13 +736,16 @@ var CPCollectionViewMinItemSizeKey = @"CPCollectionViewMinItemSizeKey",
_itemSize = CGSizeMakeZero();
- _minItemSize = [aCoder decodeSizeForKey:CPCollectionViewMinItemSizeKey];
- _maxItemSize = [aCoder decodeSizeForKey:CPCollectionViewMaxItemSizeKey];
+ _minItemSize = [aCoder decodeSizeForKey:CPCollectionViewMinItemSizeKey] || CGSizeMakeZero();
+ _maxItemSize = [aCoder decodeSizeForKey:CPCollectionViewMaxItemSizeKey] || CGSizeMakeZero();
_verticalMargin = [aCoder decodeFloatForKey:CPCollectionViewVerticalMarginKey];
_tileWidth = -1.0;
_selectionIndexes = [CPIndexSet indexSet];
+
+ _allowsEmptySelection = YES;
+ _isSelectable = YES;
}
return self;
@@ -752,14 +755,13 @@ var CPCollectionViewMinItemSizeKey = @"CPCollectionViewMinItemSizeKey",
{
[super encodeWithCoder:aCoder];
- if (_minItemSize != nil)
+ if (!CGSizeEqualToSize(_minItemSize, CGSizeMakeZero()))
[aCoder encodeSize:_minItemSize forKey:CPCollectionViewMinItemSizeKey];
- if (_maxItemSize != nil)
+ if (!CGSizeEqualToSize(_maxItemSize, CGSizeMakeZero()))
[aCoder encodeSize:_maxItemSize forKey:CPCollectionViewMaxItemSizeKey];
- if (_verticalMargin != nil)
- [aCoder encodeFloat:_verticalMargin forKey:CPCollectionViewVerticalMarginKey];
+ [aCoder encodeFloat:_verticalMargin forKey:CPCollectionViewVerticalMarginKey];
}
@end
diff --git a/Tools/nib2cib/NSCollectionView.j b/Tools/nib2cib/NSCollectionView.j
index 153edee4e..bb0ef9091 100644
--- a/Tools/nib2cib/NSCollectionView.j
+++ b/Tools/nib2cib/NSCollectionView.j
@@ -26,6 +26,21 @@
- (id)NS_initWithCoder:(CPCoder)aCoder
{
+ _items = [];
+ _content = [];
+
+ _cachedItems = [];
+
+ _itemSize = CGSizeMakeZero();
+ _minItemSize = CGSizeMakeZero();
+ _maxItemSize = CGSizeMakeZero();
+
+ _verticalMargin = 5.0;
+ _tileWidth = -1.0;
+
+ _selectionIndexes = [CPIndexSet indexSet];
+ _allowsEmptySelection = YES;
+
if (self = [super NS_initWithCoder:aCoder])
{
_maxNumberOfRows = [aCoder decodeIntForKey:@"NSMaxNumberOfGridRows"];
@@ -33,7 +48,6 @@
_isSelectable = [aCoder decodeBoolForKey:@"NSSelectable"];
_allowsMultipleSelection = [aCoder decodeBoolForKey:@"NSAllowsMultipleSelection"];
-
}
return self;
From 9b99457871fecc86bd500e83b54d7fa82d56e025 Mon Sep 17 00:00:00 2001
From: tlrobinson
Date: Mon, 20 Jul 2009 18:16:17 -0700
Subject: [PATCH 088/244] Preliminary typechecking version of objj_msgSend, and
preprocessor support.
---
Objective-J/preprocess.js | 23 +++++++++--
Objective-J/runtime.js | 81 +++++++++++++++++++++++++++++++++++++++
2 files changed, 100 insertions(+), 4 deletions(-)
diff --git a/Objective-J/preprocess.js b/Objective-J/preprocess.js
index 0032ed203..f09af79f1 100644
--- a/Objective-J/preprocess.js
+++ b/Objective-J/preprocess.js
@@ -578,12 +578,15 @@ objj_preprocessor.prototype.method = function(tokens)
var buffer = new objj_stringBuffer(),
token,
selector = "",
- parameters = [];
+ parameters = [],
+ types = [null];
while((token = tokens.skip_whitespace()) && token != TOKEN_OPEN_BRACE)
{
if (token == TOKEN_COLON)
{
+ var type = "";
+
// Colons are part of the selector name
selector += token;
@@ -592,18 +595,30 @@ objj_preprocessor.prototype.method = function(tokens)
if (token == TOKEN_OPEN_PARENTHESIS)
{
// Swallow parameter/return type. Perhaps later we can use this for debugging?
- while((token = tokens.skip_whitespace()) && token != TOKEN_CLOSE_PARENTHESIS) ;
+ while((token = tokens.skip_whitespace()) && token != TOKEN_CLOSE_PARENTHESIS)
+ type += token;
token = tokens.skip_whitespace();
}
+ // Add the type. If it's empty, add null instead.
+ types[parameters.length+1] = type || null;
+
// Since this follows a colon, this must be the parameter name.
parameters[parameters.length] = token;
}
else if (token == TOKEN_OPEN_PARENTHESIS)
+ {
+ var type = "";
+
// Since :( is handled above, this must be the return type, just swallow it.
- while((token = tokens.skip_whitespace()) && token != TOKEN_CLOSE_PARENTHESIS) ;
+ while((token = tokens.skip_whitespace()) && token != TOKEN_CLOSE_PARENTHESIS)
+ type += token;
+
+ // types[0] is the return argument
+ types[0] = type || null;
+ }
// Argument list ", ..."
else if (token == TOKEN_COMMA)
@@ -640,7 +655,7 @@ objj_preprocessor.prototype.method = function(tokens)
CONCAT(buffer, ")\n{ with(self)\n{");
CONCAT(buffer, this.preprocess(tokens, NULL, TOKEN_CLOSE_BRACE, TOKEN_OPEN_BRACE));
- CONCAT(buffer, "}\n})");
+ CONCAT(buffer, "}\n},"+types.toSource()+")");
return buffer;
}
diff --git a/Objective-J/runtime.js b/Objective-J/runtime.js
index 365ab725a..fa6fb2273 100644
--- a/Objective-J/runtime.js
+++ b/Objective-J/runtime.js
@@ -542,3 +542,84 @@ function sel_registerName(aName)
{
return aName;
}
+
+
+// Type checking version of objj_msgSend:
+
+function objj_msgSendTypeCheck(/*id*/ aReceiver, /*SEL*/ aSelector)
+{
+ if (aReceiver == nil)
+ return nil;
+
+ CLASS_GET_METHOD_IMPLEMENTATION(var implementation, aReceiver.isa, aSelector);
+
+ var types = method.types;
+
+ for (var i = 2; i < arguments.length; i++)
+ {
+ try
+ {
+ runtimeTypeCheck(types[i-1], arguments[i]);
+ }
+ catch (e)
+ {
+ objj_fprintf(warning_stream, "Type check failure: "+
+ "aReceiver="+String(aReceiver).substring(0,100)+", "+
+ "aSelector="+String(aSelector).substring(0,100)+", "+
+ "argument #"+(i-2)+": " + e);
+ }
+ }
+
+ var result = implementation.apply(aReceiver, arguments);
+
+ try
+ {
+ runtimeTypeCheck(types[0], result);
+ }
+ catch (e)
+ {
+ objj_fprintf(warning_stream, "Type check failure: "+
+ "aReceiver="+String(aReceiver).substring(0,100)+", "+
+ "aSelector="+String(aSelector).substring(0,100)+", "+
+ "return value: " + e);
+ }
+
+ return result;
+}
+
+function runtimeTypeCheck(typeName, actual)
+{
+ var objjClass;
+
+ if (!typeName)
+ {
+ return;
+ }
+ if (typeName === "id")
+ {
+ return;
+ }
+ else if (typeName === "void")
+ {
+ if (actual === undefined)
+ return;
+ }
+ else if (objjClass = objj_getClass(typeName))
+ {
+ if (actual && actual.isa)
+ {
+ var theClass = actual.isa;
+ for(; theClass; theClass = theClass.super_class)
+ if (theClass === objjClass)
+ return;
+ }
+ }
+ else
+ {
+ return;
+ }
+
+ throw("Expected " + typeName + ", was [" + actual +"]");
+}
+
+objj_msgSend = objj_msgSendTypeCheck;
From d7b679dc786f6942bec01d8420876b1d90172715 Mon Sep 17 00:00:00 2001
From: tlrobinson
Date: Mon, 20 Jul 2009 18:39:37 -0700
Subject: [PATCH 089/244] * Move type checking to debug.js. * Use
JSON.stringify for serializing types array. * Print Objective-J objects'
names instead of descriptions to prevent inf recursion.
---
Objective-J/debug.js | 81 +++++++++++++++++++++++++++++++++++++++
Objective-J/preprocess.js | 2 +-
Objective-J/runtime.js | 81 ---------------------------------------
3 files changed, 82 insertions(+), 82 deletions(-)
diff --git a/Objective-J/debug.js b/Objective-J/debug.js
index cbc5fd447..dfaa573b2 100644
--- a/Objective-J/debug.js
+++ b/Objective-J/debug.js
@@ -171,3 +171,84 @@ function objj_profileEnd()
return objj_profile_cleanup();
}
+
+
+// Type checking version of objj_msgSend:
+
+function objj_msgSendTypeCheck(/*id*/ aReceiver, /*SEL*/ aSelector)
+{
+ if (aReceiver == nil)
+ return nil;
+
+ CLASS_GET_METHOD_IMPLEMENTATION(var implementation, aReceiver.isa, aSelector);
+
+ var types = method.types;
+
+ for (var i = 2; i < arguments.length; i++)
+ {
+ try
+ {
+ runtimeTypeCheck(types[i-1], arguments[i]);
+ }
+ catch (e)
+ {
+ objj_fprintf(warning_stream, "Type check failure: "+
+ "aReceiver="+(aReceiver.isa ? "<"+aReceiver.isa.name+">" : String(aReceiver).substring(0,100))+", "+
+ "aSelector="+String(aSelector).substring(0,100)+", "+
+ "argument #"+(i-2)+": " + e);
+ }
+ }
+
+ var result = implementation.apply(aReceiver, arguments);
+
+ try
+ {
+ runtimeTypeCheck(types[0], result);
+ }
+ catch (e)
+ {
+ objj_fprintf(warning_stream, "Type check failure: "+
+ "aReceiver="+(aReceiver.isa ? "<"+aReceiver.isa.name+">" : String(aReceiver).substring(0,100))+", "+
+ "aSelector="+String(aSelector).substring(0,100)+", "+
+ "return value: " + e);
+ }
+
+ return result;
+}
+
+function runtimeTypeCheck(typeName, actual)
+{
+ var objjClass;
+
+ if (!typeName)
+ {
+ return;
+ }
+ if (typeName === "id")
+ {
+ return;
+ }
+ else if (typeName === "void")
+ {
+ if (actual === undefined)
+ return;
+ }
+ else if (objjClass = objj_getClass(typeName))
+ {
+ if (actual && actual.isa)
+ {
+ var theClass = actual.isa;
+ for(; theClass; theClass = theClass.super_class)
+ if (theClass === objjClass)
+ return;
+ }
+ }
+ else
+ {
+ return;
+ }
+
+ throw("Expected " + typeName + ", was [" + ((actual && actual.isa) ? "<"+actual.isa.name+">" : actual) +"]");
+}
+
+objj_msgSend = objj_msgSendTypeCheck;
diff --git a/Objective-J/preprocess.js b/Objective-J/preprocess.js
index f09af79f1..473c70f4b 100644
--- a/Objective-J/preprocess.js
+++ b/Objective-J/preprocess.js
@@ -655,7 +655,7 @@ objj_preprocessor.prototype.method = function(tokens)
CONCAT(buffer, ")\n{ with(self)\n{");
CONCAT(buffer, this.preprocess(tokens, NULL, TOKEN_CLOSE_BRACE, TOKEN_OPEN_BRACE));
- CONCAT(buffer, "}\n},"+types.toSource()+")");
+ CONCAT(buffer, "}\n},"+JSON.stringify(types)+")");
return buffer;
}
diff --git a/Objective-J/runtime.js b/Objective-J/runtime.js
index fa6fb2273..365ab725a 100644
--- a/Objective-J/runtime.js
+++ b/Objective-J/runtime.js
@@ -542,84 +542,3 @@ function sel_registerName(aName)
{
return aName;
}
-
-
-// Type checking version of objj_msgSend:
-
-function objj_msgSendTypeCheck(/*id*/ aReceiver, /*SEL*/ aSelector)
-{
- if (aReceiver == nil)
- return nil;
-
- CLASS_GET_METHOD_IMPLEMENTATION(var implementation, aReceiver.isa, aSelector);
-
- var types = method.types;
-
- for (var i = 2; i < arguments.length; i++)
- {
- try
- {
- runtimeTypeCheck(types[i-1], arguments[i]);
- }
- catch (e)
- {
- objj_fprintf(warning_stream, "Type check failure: "+
- "aReceiver="+String(aReceiver).substring(0,100)+", "+
- "aSelector="+String(aSelector).substring(0,100)+", "+
- "argument #"+(i-2)+": " + e);
- }
- }
-
- var result = implementation.apply(aReceiver, arguments);
-
- try
- {
- runtimeTypeCheck(types[0], result);
- }
- catch (e)
- {
- objj_fprintf(warning_stream, "Type check failure: "+
- "aReceiver="+String(aReceiver).substring(0,100)+", "+
- "aSelector="+String(aSelector).substring(0,100)+", "+
- "return value: " + e);
- }
-
- return result;
-}
-
-function runtimeTypeCheck(typeName, actual)
-{
- var objjClass;
-
- if (!typeName)
- {
- return;
- }
- if (typeName === "id")
- {
- return;
- }
- else if (typeName === "void")
- {
- if (actual === undefined)
- return;
- }
- else if (objjClass = objj_getClass(typeName))
- {
- if (actual && actual.isa)
- {
- var theClass = actual.isa;
- for(; theClass; theClass = theClass.super_class)
- if (theClass === objjClass)
- return;
- }
- }
- else
- {
- return;
- }
-
- throw("Expected " + typeName + ", was [" + actual +"]");
-}
-
-objj_msgSend = objj_msgSendTypeCheck;
From 745e24d2f5a9368da0c1b64227fa626c78577d45 Mon Sep 17 00:00:00 2001
From: tlrobinson
Date: Mon, 20 Jul 2009 18:42:54 -0700
Subject: [PATCH 090/244] Rename objj_msgSendTypeCheck to
objj_msgSend_TypeCheck to match others
---
Objective-J/debug.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Objective-J/debug.js b/Objective-J/debug.js
index dfaa573b2..59563e4fa 100644
--- a/Objective-J/debug.js
+++ b/Objective-J/debug.js
@@ -175,7 +175,7 @@ function objj_profileEnd()
// Type checking version of objj_msgSend:
-function objj_msgSendTypeCheck(/*id*/ aReceiver, /*SEL*/ aSelector)
+function objj_msgSend_TypeCheck(/*id*/ aReceiver, /*SEL*/ aSelector)
{
if (aReceiver == nil)
return nil;
@@ -251,4 +251,4 @@ function runtimeTypeCheck(typeName, actual)
throw("Expected " + typeName + ", was [" + ((actual && actual.isa) ? "<"+actual.isa.name+">" : actual) +"]");
}
-objj_msgSend = objj_msgSendTypeCheck;
+objj_msgSend = objj_msgSend_TypeCheck;
From 4865d6b20f47f490002c7b684d6f24a73b18531b Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Mon, 20 Jul 2009 20:37:19 -0700
Subject: [PATCH 091/244] Fixed an issue with dependent keys in KVO only
working for composed properties, and also made the "frame" key on views
dependent on a view's frame origin and frame size.
Reviewed by me.
---
AppKit/CPView.j | 15 +++++++++++++
Foundation/CPKeyValueObserving.j | 33 +++++++++++++---------------
Tests/Foundation/CPKVOTest.j | 37 ++++++++++++++++++++++++++++++--
3 files changed, 65 insertions(+), 20 deletions(-)
diff --git a/AppKit/CPView.j b/AppKit/CPView.j
index 7862fea77..0121e9f6b 100644
--- a/AppKit/CPView.j
+++ b/AppKit/CPView.j
@@ -209,6 +209,11 @@ var DOMElementPrototype = nil,
CachedNotificationCenter = [CPNotificationCenter defaultCenter];
}
++ (CPSet)keyPathsForValuesAffectingFrame
+{
+ return [CPSet setWithObjects:@"frameOrigin", @"frameSize"];
+}
+
- (id)init
{
return [self initWithFrame:CGRectMakeZero()];
@@ -623,6 +628,16 @@ var DOMElementPrototype = nil,
return _CGRectMakeCopy(_frame);
}
+- (CGPoint)frameOrigin
+{
+ return _CGPointMakeCopy(_frame.origin);
+}
+
+- (CGSize)frameSize
+{
+ return _CGSizeMakeCopy(_frame.size);
+}
+
/*!
Moves the center of the receiver's frame to the provided point. The point is defined in the superview's coordinate system.
The method posts a CPViewFrameDidChangeNotification to the default notification center if the receiver
diff --git a/Foundation/CPKeyValueObserving.j b/Foundation/CPKeyValueObserving.j
index 189bf803a..7a1d575ae 100644
--- a/Foundation/CPKeyValueObserving.j
+++ b/Foundation/CPKeyValueObserving.j
@@ -68,8 +68,8 @@
+ (CPSet)keyPathsForValuesAffectingValueForKey:(CPString)aKey
{
- var capitalizedKey = aKey.charAt(0).toUpperCase()+aKey.substring(1);
- selector = "keyPathsForValuesAffectingValueFor"+capitalizedKey;
+ var capitalizedKey = aKey.charAt(0).toUpperCase() + aKey.substring(1);
+ selector = "keyPathsForValuesAffecting" + capitalizedKey;
if ([[self class] respondsToSelector:selector])
return objj_msgSend([self class], selector);
@@ -202,17 +202,12 @@ var KVOProxyMap = [CPDictionary dictionary],
var theMethod = class_getInstanceMethod(_nativeClass, theSelector);
class_addMethod(_targetObject.isa, theSelector, theReplacementMethod(aKey, theMethod), "");
-
- found = true;
}
}
- if (found)
- return;
+ var affectingKeys = [[_nativeClass keyPathsForValuesAffectingValueForKey:aKey] allObjects];
- var composedOfKeys = [[_nativeClass keyPathsForValuesAffectingValueForKey:aKey] allObjects];
-
- if (!composedOfKeys)
+ if (![affectingKeys count])
return;
var dependentKeysForClass = [DependentKeysMap objectForKey:[_nativeClass UID]];
@@ -223,19 +218,21 @@ var KVOProxyMap = [CPDictionary dictionary],
[DependentKeysMap setObject:dependentKeysForClass forKey:[_nativeClass UID]];
}
- for (var i=0, count=composedOfKeys.length; i
Date: Mon, 20 Jul 2009 20:41:15 -0700
Subject: [PATCH 092/244] Fixed an issue with CPTextField not allowing select
all from API, and also made editing field editor take on the alignment
properties of the host textfield.
Reviewed by me.
---
AppKit/CPTextField.j | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/AppKit/CPTextField.j b/AppKit/CPTextField.j
index 9c44c1f69..24ee21442 100644
--- a/AppKit/CPTextField.j
+++ b/AppKit/CPTextField.j
@@ -570,6 +570,15 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder");
element.style.font = [[self currentValueForThemeAttribute:@"font"] cssString];
element.style.zIndex = 1000;
+ switch ([self alignment])
+ {
+ case CPCenterTextAlignment: element.style.textAlign = "center";
+ break;
+ case CPRightTextAlignment: element.style.textAlign = "right";
+ break;
+ default: element.style.textAlign = "left";
+ }
+
var contentRect = [self contentRectForBounds:[self bounds]];
element.style.top = _CGRectGetMinY(contentRect) + "px";
@@ -763,8 +772,8 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder");
#if PLATFORM(DOM)
var element = [self _inputElement];
- if (element.parentNode == _DOMElement && ([self isEditable] || [self isSelectable]))
- element.select();
+ if (element.parentNode === _DOMElement && ([self isEditable] || [self isSelectable]))
+ window.setTimeout(function() { element.select(); }, 0);
#endif
}
From 48f0aa0b780317ba17412ca3402c773b88fe18ef Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Wed, 22 Jul 2009 10:43:59 -0700
Subject: [PATCH 093/244] Fix for menuDidClose: sometimes not being sent, and
other times being sent after the menu item action (it should be sent before).
Reviewed by me.
---
AppKit/CPMenu.j | 29 ++++++++++++-----------------
1 file changed, 12 insertions(+), 17 deletions(-)
diff --git a/AppKit/CPMenu.j b/AppKit/CPMenu.j
index 4940bcd96..79ca0e9d2 100644
--- a/AppKit/CPMenu.j
+++ b/AppKit/CPMenu.j
@@ -684,11 +684,6 @@ var _CPMenuBarVisible = NO,
[_CPMenuWindow poolMenuWindow:aMenuWindow];
- var delegate = [menu delegate];
-
- if ([delegate respondsToSelector:@selector(menuDidClose:)])
- [delegate menuDidClose:menu];
-
if([aMenuItem isEnabled])
[CPApp sendAction:[aMenuItem action] to:[aMenuItem target] from:aMenuItem];
}
@@ -1259,23 +1254,23 @@ var STICKY_TIME_INTERVAL = 500,
[menu _highlightItemAtIndex:CPNotFound];
- // Clear these now so its faster next time around.
- [_menuView setMenu:nil];
-
[self orderOut:self];
-
- if (_sessionDelegate && _didEndSelector)
- objj_msgSend(_sessionDelegate, _didEndSelector, self, highlightedItem);
-
- [[CPNotificationCenter defaultCenter]
- postNotificationName:CPMenuDidEndTrackingNotification
- object:menu];
-
+
var delegate = [menu delegate];
if ([delegate respondsToSelector:@selector(menuDidClose:)])
[delegate menuDidClose:menu];
-
+
+ if (_sessionDelegate && _didEndSelector)
+ objj_msgSend(_sessionDelegate, _didEndSelector, self, highlightedItem);
+
+ [[CPNotificationCenter defaultCenter]
+ postNotificationName:CPMenuDidEndTrackingNotification
+ object:menu];
+
+ // Clear these now so its faster next time around.
+ [_menuView setMenu:nil];
+
return;
}
From 12d03a51288e8b9ab6fcfaed15c68fac087de880 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Wed, 22 Jul 2009 19:34:44 -0700
Subject: [PATCH 094/244] Fix for custom objects.
Reviewed by me.
---
AppKit/Cib/_CPCibCustomObject.j | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/AppKit/Cib/_CPCibCustomObject.j b/AppKit/Cib/_CPCibCustomObject.j
index 631efbc3d..1422aa96d 100644
--- a/AppKit/Cib/_CPCibCustomObject.j
+++ b/AppKit/Cib/_CPCibCustomObject.j
@@ -47,10 +47,21 @@ var _CPCibCustomObjectClassName = @"_CPCibCustomObjectClassName";
{
var theClass = CPClassFromString(_className);
-#if DEBUG
+ // Hey this is us!
+ if (theClass === [self class])
+ {
+ _className = @"CPObject";
+
+ return self;
+ }
+
if (!theClass)
+ {
+#if DEBUG
CPLog("Unknown class \"" + _className + "\" in cib file");
#endif
+ theClass = [CPObject class];
+ }
if (theClass === [CPApplication class])
return [CPApplication sharedApplication];
From 3ff945663f1033b31914da29d87a3ee7af4894dc Mon Sep 17 00:00:00 2001
From: Tom Robinson
Date: Thu, 23 Jul 2009 13:24:33 -0700
Subject: [PATCH 095/244] Refactored objj_msgSend debug hooks
---
Objective-J/debug.js | 344 +++++++++++++++++++++++--------------------
1 file changed, 185 insertions(+), 159 deletions(-)
diff --git a/Objective-J/debug.js b/Objective-J/debug.js
index 59563e4fa..e01fbcb7a 100644
--- a/Objective-J/debug.js
+++ b/Objective-J/debug.js
@@ -1,103 +1,207 @@
-function objj_backtrace_format(aReceiver, aSelector)
+// formatting helpers
+
+function objj_debug_object_format(aReceiver)
{
- return "[<" + GETMETA(aReceiver).name + " " + (typeof sprintf == "function" ? sprintf("%#08x", aReceiver.__address) : aReceiver.__address.toString(16)) + "> " + aSelector + "]";
+ return (aReceiver && aReceiver.isa) ? sprintf("<%s %#08x>", GETMETA(aReceiver).name, aReceiver.__address) : String(aReceiver);
}
-function objj_msgSend_Backtrace(/*id*/ aReceiver, /*SEL*/ aSelector)
+function objj_debug_message_format(aReceiver, aSelector)
{
- if (aReceiver == nil)
- return nil;
+ return sprintf("[%s %s]", objj_debug_object_format(aReceiver), aSelector);
+}
- objj_debug_backtrace.push(objj_backtrace_format(aReceiver, aSelector));
- try
+// save the original msgSend implementations so we can restore them later
+var objj_msgSend_original = objj_msgSend,
+ objj_msgSendSuper_original = objj_msgSendSuper;
+
+
+// decorator management functions
+
+// reset to default objj_msgSend* implementations
+function objj_msgSend_reset()
+{
+ objj_msgSend = objj_msgSend_original;
+ objj_msgSendSuper = objj_msgSendSuper_original;
+}
+
+// decorate both objj_msgSend and objj_msgSendSuper
+function objj_msgSend_decorate()
+{
+ for (var i = 0; i < arguments.length; i++)
{
- var result = class_getMethodImplementation(aReceiver.isa, aSelector).apply(aReceiver, arguments);
+ objj_msgSend = arguments[i](objj_msgSend);
+ objj_msgSendSuper = arguments[i](objj_msgSendSuper);
}
- catch (anException)
- {
- CPLog.error("Exception " + anException + " in " + objj_backtrace_format(aReceiver, aSelector));
- objj_debug_print_backtrace();
- }
-
- objj_debug_backtrace.pop();
-
- return result;
}
-function objj_msgSendSuper_Backtrace(/*id*/ aSuper, /*SEL*/ aSelector)
+// reset then decorate both objj_msgSend and objj_msgSendSuper
+function objj_msgSend_set_decorators()
{
- objj_debug_backtrace.push(objj_backtrace_format(aSuper.receiver, aSelector));
- var super_class = aSuper.super_class;
-
- arguments[0] = aSuper.receiver;
-
- try
- {
- var result = class_getMethodImplementation(super_class, aSelector).apply(aSuper.receiver, arguments);
- }
- catch (anException)
- {
- CPLog.error("Exception " + anException + " in " + objj_backtrace_format(aSuper.receiver, aSelector));
- objj_debug_print_backtrace();
- }
-
- objj_debug_backtrace.pop();
-
- return result;
+ objj_msgSend_reset();
+ objj_msgSend_decorate.apply(null, arguments);
}
-function objj_msgSend_Profile(/*id*/ aReceiver, /*SEL*/ aSelector)
+
+// backtrace decorator
+
+var objj_backtrace = [];
+function objj_backtrace_decorator(msgSend)
{
- if (aReceiver == nil)
- return nil;
-
- // profiling book keeping
- var profileRecord = {
- parent : objj_debug_profile,
- receiver : GETMETA(aReceiver).name,
- selector : aSelector,
- calls : []
+ return function(aReceiverOrSuper, aSelector)
+ {
+ var aReceiver = aReceiverOrSuper && (aReceiverOrSuper.receiver || aReceiverOrSuper);
+
+ // push the receiver and selector onto the backtrace stack
+ objj_backtrace.push({ receiver: aReceiver, selector : aSelector });
+ try
+ {
+ return msgSend.apply(null, arguments);
+ }
+ catch (anException)
+ {
+ // print the exception and backtrace
+ objj_fprintf(warning_stream, "Exception " + anException + " in " + objj_debug_message_format(aReceiver, aSelector));
+ for (var i = 0; i < objj_backtrace.length; i++)
+ objj_fprintf(warning_stream, objj_debug_message_format(objj_backtrace[i].receiver, objj_backtrace[i].selector));
+ }
+ finally
+ {
+ // make sure to always pop
+ objj_backtrace.pop();
+ }
}
- objj_debug_profile.calls.push(profileRecord);
- objj_debug_profile = profileRecord;
- profileRecord.start = new Date();
-
- var result = class_getMethodImplementation(aReceiver.isa, aSelector).apply(aReceiver, arguments);
-
- profileRecord.end = new Date();
- objj_debug_profile = profileRecord.parent;
-
- return result;
}
-function objj_msgSendSuper_Profile(/*id*/ aSuper, /*SEL*/ aSelector)
+// type checking decorator
+
+var objj_typechecks_reported = {};
+function objj_typecheck_decorator(msgSend)
{
- // profiling book keeping
- var profileRecord = {
- parent : objj_debug_profile,
- receiver : GETMETA(aReceiver).name,
- selector : aSelector,
- calls : []
+ return function(aReceiverOrSuper, aSelector)
+ {
+ var aReceiver = aReceiverOrSuper && (aReceiverOrSuper.receiver || aReceiverOrSuper);
+
+ if (!aReceiver)
+ return msgSend.apply(null, arguments);
+
+ var types = aReceiver.isa.method_dtable[aSelector].types;
+ for (var i = 2; i < arguments.length; i++)
+ {
+ try
+ {
+ objj_debug_typecheck(types[i-1], arguments[i]);
+ }
+ catch (e)
+ {
+ var key = [GETMETA(aReceiver).name, aSelector, i, e].join(";");
+ if (!objj_typechecks_reported[key]) {
+ objj_typechecks_reported[key] = true;
+ objj_fprintf(warning_stream, "Type check failed on argument " + (i-2) + " of " + objj_debug_message_format(aReceiver, aSelector) + ": " + e);
+ }
+ }
+ }
+
+ var result = msgSend.apply(null, arguments);
+
+ try
+ {
+ objj_debug_typecheck(types[0], result);
+ }
+ catch (e)
+ {
+ var key = [GETMETA(aReceiver).name, aSelector, "ret", e].join(";");
+ if (!objj_typechecks_reported[key]) {
+ objj_typechecks_reported[key] = true;
+ objj_fprintf(warning_stream, "Type check failed on return val of " + objj_debug_message_format(aReceiver, aSelector) + ": " + e);
+ }
+ }
+
+ return result;
}
- objj_debug_profile.calls.push(profileRecord);
- objj_debug_profile = profileRecord;
- profileRecord.start = new Date();
-
- var super_class = aSuper.super_class;
-
- arguments[0] = aSuper.receiver;
-
- var result = class_getMethodImplementation(super_class, aSelector).apply(aSuper.receiver, arguments);
-
- profileRecord.end = new Date();
- objj_debug_profile = profileRecord.parent;
-
- return result;
}
-var objj_msgSend_Standard = objj_msgSend,
- objj_msgSendSuper_Standard = objj_msgSendSuper;
+// type checking logic:
+function objj_debug_typecheck(expectedType, object)
+{
+ var objjClass;
+
+ if (!expectedType)
+ {
+ return;
+ }
+ else if (expectedType === "id")
+ {
+ if (object !== undefined)
+ return;
+ }
+ else if (expectedType === "void")
+ {
+ if (object === undefined)
+ return;
+ }
+ else if (objjClass = objj_getClass(expectedType))
+ {
+ if (object === nil)
+ {
+ return;
+ }
+ else if (object.isa)
+ {
+ var theClass = object.isa;
+ for (; theClass; theClass = theClass.super_class)
+ if (theClass === objjClass)
+ return;
+ }
+ }
+ else
+ {
+ return;
+ }
+
+ var actualType;
+ if (object === null)
+ actualType = "null";
+ else if (object === undefined)
+ actualType = "void";
+ else if (object.isa)
+ actualType = GETMETA(object).name;
+ else
+ actualType = typeof object;
+
+ throw ("expected=" + expectedType + ", actual=" + actualType);
+}
+
+// profile decorator
+/*
+function objj_debug_profile(msgSend)
+{
+ return function(aReceiverOrSuper, aSelector)
+ {
+ var aReceiver = aReceiverOrSuper && (aReceiverOrSuper.receiver || aReceiverOrSuper);
+
+ // profiling book keeping
+ var profileRecord = {
+ parent : objj_debug_profile,
+ receiver : aReceiver && GETMETA(aReceiver).name,
+ selector : aSelector,
+ calls : []
+ }
+ objj_debug_profile.calls.push(profileRecord);
+ objj_debug_profile = profileRecord;
+ profileRecord.start = new Date();
+
+ try
+ {
+ return msgSend.apply(null, arguments);
+ }
+ finally
+ {
+ profileRecord.end = new Date();
+ objj_debug_profile = profileRecord.parent;
+ }
+ }
+}
// FIXME: This could be much better.
var objj_debug_backtrace;
@@ -171,84 +275,6 @@ function objj_profileEnd()
return objj_profile_cleanup();
}
+*/
-
-// Type checking version of objj_msgSend:
-
-function objj_msgSend_TypeCheck(/*id*/ aReceiver, /*SEL*/ aSelector)
-{
- if (aReceiver == nil)
- return nil;
-
- CLASS_GET_METHOD_IMPLEMENTATION(var implementation, aReceiver.isa, aSelector);
-
- var types = method.types;
-
- for (var i = 2; i < arguments.length; i++)
- {
- try
- {
- runtimeTypeCheck(types[i-1], arguments[i]);
- }
- catch (e)
- {
- objj_fprintf(warning_stream, "Type check failure: "+
- "aReceiver="+(aReceiver.isa ? "<"+aReceiver.isa.name+">" : String(aReceiver).substring(0,100))+", "+
- "aSelector="+String(aSelector).substring(0,100)+", "+
- "argument #"+(i-2)+": " + e);
- }
- }
-
- var result = implementation.apply(aReceiver, arguments);
-
- try
- {
- runtimeTypeCheck(types[0], result);
- }
- catch (e)
- {
- objj_fprintf(warning_stream, "Type check failure: "+
- "aReceiver="+(aReceiver.isa ? "<"+aReceiver.isa.name+">" : String(aReceiver).substring(0,100))+", "+
- "aSelector="+String(aSelector).substring(0,100)+", "+
- "return value: " + e);
- }
-
- return result;
-}
-
-function runtimeTypeCheck(typeName, actual)
-{
- var objjClass;
-
- if (!typeName)
- {
- return;
- }
- if (typeName === "id")
- {
- return;
- }
- else if (typeName === "void")
- {
- if (actual === undefined)
- return;
- }
- else if (objjClass = objj_getClass(typeName))
- {
- if (actual && actual.isa)
- {
- var theClass = actual.isa;
- for(; theClass; theClass = theClass.super_class)
- if (theClass === objjClass)
- return;
- }
- }
- else
- {
- return;
- }
-
- throw("Expected " + typeName + ", was [" + ((actual && actual.isa) ? "<"+actual.isa.name+">" : actual) +"]");
-}
-
-objj_msgSend = objj_msgSend_TypeCheck;
+objj_msgSend_set_decorators(objj_typecheck_decorator, objj_backtrace_decorator);
From 88be473da432591e4b95cf4dde52713e6d874915 Mon Sep 17 00:00:00 2001
From: Tom Robinson
Date: Thu, 23 Jul 2009 14:14:34 -0700
Subject: [PATCH 096/244] Fixed bug in type check logic, added ability to print
stack traces on type check errors
---
Objective-J/debug.js | 19 +++++++++++++++----
1 file changed, 15 insertions(+), 4 deletions(-)
diff --git a/Objective-J/debug.js b/Objective-J/debug.js
index e01fbcb7a..fddd7fed7 100644
--- a/Objective-J/debug.js
+++ b/Objective-J/debug.js
@@ -46,6 +46,12 @@ function objj_msgSend_set_decorators()
// backtrace decorator
var objj_backtrace = [];
+
+function objj_backtrace_print(stream) {
+ for (var i = 0; i < objj_backtrace.length; i++)
+ objj_fprintf(stream, objj_debug_message_format(objj_backtrace[i].receiver, objj_backtrace[i].selector));
+}
+
function objj_backtrace_decorator(msgSend)
{
return function(aReceiverOrSuper, aSelector)
@@ -62,8 +68,7 @@ function objj_backtrace_decorator(msgSend)
{
// print the exception and backtrace
objj_fprintf(warning_stream, "Exception " + anException + " in " + objj_debug_message_format(aReceiver, aSelector));
- for (var i = 0; i < objj_backtrace.length; i++)
- objj_fprintf(warning_stream, objj_debug_message_format(objj_backtrace[i].receiver, objj_backtrace[i].selector));
+ objj_backtrace_print(warning_stream);
}
finally
{
@@ -75,7 +80,9 @@ function objj_backtrace_decorator(msgSend)
// type checking decorator
-var objj_typechecks_reported = {};
+var objj_typechecks_reported = {},
+ objj_typecheck_prints_backtrace = false;
+
function objj_typecheck_decorator(msgSend)
{
return function(aReceiverOrSuper, aSelector)
@@ -98,6 +105,8 @@ function objj_typecheck_decorator(msgSend)
if (!objj_typechecks_reported[key]) {
objj_typechecks_reported[key] = true;
objj_fprintf(warning_stream, "Type check failed on argument " + (i-2) + " of " + objj_debug_message_format(aReceiver, aSelector) + ": " + e);
+ if (objj_typecheck_prints_backtrace)
+ objj_backtrace_fprint(warning_stream);
}
}
}
@@ -114,6 +123,8 @@ function objj_typecheck_decorator(msgSend)
if (!objj_typechecks_reported[key]) {
objj_typechecks_reported[key] = true;
objj_fprintf(warning_stream, "Type check failed on return val of " + objj_debug_message_format(aReceiver, aSelector) + ": " + e);
+ if (objj_typecheck_prints_backtrace)
+ objj_backtrace_fprint(warning_stream);
}
}
@@ -146,7 +157,7 @@ function objj_debug_typecheck(expectedType, object)
{
return;
}
- else if (object.isa)
+ else if (object && object.isa)
{
var theClass = object.isa;
for (; theClass; theClass = theClass.super_class)
From 4824f22e3ce0880d526338751e6a1ec0c7402baa Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Fri, 24 Jul 2009 11:22:32 -0700
Subject: [PATCH 097/244] Fix for super not working for class methods.
Closes #227.
Reviewed by me.
---
Objective-J/preprocess.js | 22 ++++++++++++++++++----
1 file changed, 18 insertions(+), 4 deletions(-)
diff --git a/Objective-J/preprocess.js b/Objective-J/preprocess.js
index 0032ed203..47218a9ca 100644
--- a/Objective-J/preprocess.js
+++ b/Objective-J/preprocess.js
@@ -170,6 +170,7 @@ var objj_preprocessor = function(aString, aSourceFile, aBundle, flags)
{
this._currentClass = "";
this._currentSuperClass = "";
+ this._currentSuperMetaClass = "";
this._file = aSourceFile;
this._fragments = [];
@@ -177,6 +178,7 @@ var objj_preprocessor = function(aString, aSourceFile, aBundle, flags)
this._tokens = new objj_lexer(aString);
this._flags = flags;
this._bundle = aBundle;
+ this._classMethod = false;
this.preprocess(this._tokens, this._preprocessed);
//alert(this._preprocessed + "");
@@ -262,8 +264,7 @@ objj_preprocessor.prototype.brackets = function(/*objj_lexer*/ tokens, /*objj_st
if (tuples[0][0].atoms[0] == TOKEN_SUPER)
{
CONCAT(aStringBuffer, "objj_msgSendSuper(");
- CONCAT(aStringBuffer, "{ receiver:self, super_class:" + this._currentSuperClass + " }");
-
+ CONCAT(aStringBuffer, "{ receiver:self, super_class:" + (this._classMethod ? this._currentSuperMetaClass : this._currentSuperClass ) + " }");
}
else
{
@@ -350,7 +351,7 @@ objj_preprocessor.prototype.implementation = function(tokens, /*objj_stringBuffe
category = NO,
class_name = tokens.skip_whitespace(),
superclass_name = "Nil",
-
+
instance_methods = new objj_stringBuffer(),
class_methods = new objj_stringBuffer();
@@ -358,6 +359,7 @@ objj_preprocessor.prototype.implementation = function(tokens, /*objj_stringBuffe
objj_exception_throw(new objj_exception(OBJJParseException, "*** Expected class name, found \"" + class_name + "\"."));
this._currentSuperClass = NULL;
+ this._currentSuperMetaClass = NULL;
this._currentClass = class_name;
// If we reach an open parenthesis, we are declaring a category.
@@ -376,12 +378,18 @@ objj_preprocessor.prototype.implementation = function(tokens, /*objj_stringBuffe
CONCAT(buffer, "var meta_class = the_class.isa;");
var superclass_name = dictionary_getValue(SUPER_CLASSES, class_name);
-
+
// FIXME: We should have a better solution for this case, although it's actually not much slower than the real case.
if (!superclass_name)
+ {
this._currentSuperClass = "objj_getClass(\"" + class_name + "\").super_class";
+ this._currentSuperMetaClass = "objj_getMetaClass(\"" + class_name + "\").super_class";
+ }
else
+ {
this._currentSuperClass = "objj_getClass(\"" + superclass_name + "\")";
+ this._currentSuperMetaClass = "objj_getMeraClass(\"" + superclass_name + "\")";
+ }
}
else
{
@@ -394,7 +402,9 @@ objj_preprocessor.prototype.implementation = function(tokens, /*objj_stringBuffe
objj_exception_throw(new objj_exception(OBJJParseException, "*** Expected class name, found \"" + token + "\"."));
superclass_name = token;
+
this._currentSuperClass = "objj_getClass(\"" + superclass_name + "\")";
+ this._currentSuperMetaClass = "objj_getMetaClass(\"" + superclass_name + "\")";
dictionary_setValue(SUPER_CLASSES, class_name, superclass_name);
@@ -503,6 +513,8 @@ objj_preprocessor.prototype.implementation = function(tokens, /*objj_stringBuffe
{
if (token == TOKEN_PLUS)
{
+ this._classMethod = true;
+
if (IS_NOT_EMPTY(class_methods))
CONCAT(class_methods, ", ");
@@ -511,6 +523,8 @@ objj_preprocessor.prototype.implementation = function(tokens, /*objj_stringBuffe
else if (token == TOKEN_MINUS)
{
+ this._classMethod = false;
+
if (IS_NOT_EMPTY(instance_methods))
CONCAT(instance_methods, ", ");
From 57ee7bcfce4a4a46116c3859671426c93e38503d Mon Sep 17 00:00:00 2001
From: cacaodev
Date: Thu, 16 Jul 2009 01:53:04 +0800
Subject: [PATCH 098/244] Fixed bug reported by Paul Tomlin
http://groups.google.com/group/objectivej/browse_thread/thread/e4bc41026a8f100f/6b14f3b74189df18
Signed-off-by: Francisco Ryan Tolmasky I
---
AppKit/CPSearchField.j | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/AppKit/CPSearchField.j b/AppKit/CPSearchField.j
index 8adc431aa..d4c575197 100644
--- a/AppKit/CPSearchField.j
+++ b/AppKit/CPSearchField.j
@@ -143,8 +143,7 @@ var CPSearchFieldSearchImage = nil,
// Managing Buttons
/*!
Sets the button used to display the search-button image
- @param button
- @param The search button.
+ @param button The search button.
*/
- (void)setSearchButton:(CPButton)button
{
@@ -567,7 +566,7 @@ var CPSearchFieldSearchImage = nil,
- (void)_showMenu:(id)sender
{
- if(_searchMenu == nil)
+ if(_searchMenu == nil || ![self isEnabled])
return;
[super selectText:nil];
@@ -690,13 +689,15 @@ var CPSearchButtonKey = @"CPSearchButtonKey",
self = [super initWithCoder:coder];
_searchButton = [coder decodeObjectForKey:CPSearchButtonKey];
- _searchButton = [coder decodeObjectForKey:CPCancelButtonKey];
+ _cancelButton = [coder decodeObjectForKey:CPCancelButtonKey];
_recentsAutosaveName = [coder decodeObjectForKey:CPRecentsAutosaveNameKey];
_sendsWholeSearchString = [coder decodeBoolForKey:CPSendsWholeSearchStringKey];
_sendsSearchStringImmediately = [coder decodeBoolForKey:CPSendsSearchStringImmediatelyKey];
_maximumRecents = [coder decodeIntForKey:CPMaximumRecentsKey];
[self setSearchMenuTemplate:[coder decodeObjectForKey:CPSearchMenuTemplateKey]];
-
+ [self resetCancelButton];
+ [self setDelegate:self];
+
return self;
}
From 5829c8b6820113264fde7b3cb15e61ceb3a12afd Mon Sep 17 00:00:00 2001
From: Ross Boucher
Date: Fri, 24 Jul 2009 22:49:18 -0700
Subject: [PATCH 099/244] Fix an issue where removing all items from a
CPPopUpButton caused an exception.
---
AppKit/CPPopUpButton.j | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/AppKit/CPPopUpButton.j b/AppKit/CPPopUpButton.j
index acaecb870..47d7e2176 100644
--- a/AppKit/CPPopUpButton.j
+++ b/AppKit/CPPopUpButton.j
@@ -204,7 +204,7 @@ CPPopUpButtonStatePullsDown = CPThemeState("pulls-down");
*/
- (CPMenuItem)selectedItem
{
- if (_selectedIndex < 0)
+ if (_selectedIndex < 0 || _selectedIndex > [self numberOfItems] - 1)
return nil;
return [_menu itemAtIndex:_selectedIndex];
@@ -550,7 +550,7 @@ CPPopUpButtonStatePullsDown = CPThemeState("pulls-down");
- (void)synchronizeTitleAndSelectedItem
{
var item = nil;
-
+debugger;
if ([self pullsDown])
{
var items = [_menu itemArray];
@@ -628,13 +628,15 @@ CPPopUpButtonStatePullsDown = CPThemeState("pulls-down");
{
var numberOfItems = [self numberOfItems];
- if (numberOfItems <= _selectedIndex)
+ if (numberOfItems <= _selectedIndex && numberOfItems > 0)
[self selectItemAtIndex:numberOfItems - 1];
+ else
+ [self synchronizeTitleAndSelectedItem];
}
- (void)mouseDown:(CPEvent)anEvent
{
- if (![self isEnabled])
+ if (![self isEnabled] || ![self numberOfItems])
return;
[self highlight:YES];
From 82cfc5f994ed2ee645a6068fabdc487e377121a3 Mon Sep 17 00:00:00 2001
From: Geoffrey Grosenbach
Date: Sun, 5 Jul 2009 22:26:41 -0700
Subject: [PATCH 100/244] Created initial test for CPSegmentedControl
---
Tests/AppKit/CPSegmentedControlTest.j | 33 +++++++++++++++++++++++++++
1 file changed, 33 insertions(+)
create mode 100644 Tests/AppKit/CPSegmentedControlTest.j
diff --git a/Tests/AppKit/CPSegmentedControlTest.j b/Tests/AppKit/CPSegmentedControlTest.j
new file mode 100644
index 000000000..ffd794113
--- /dev/null
+++ b/Tests/AppKit/CPSegmentedControlTest.j
@@ -0,0 +1,33 @@
+@import
+
+// TODO: Maybe create one test file for each tracking mode so they can be tested separately without confusion.
+@implementation CPSegmentedControlTest : OJTestCase
+{
+ CPSegmentedControlTest _segmentedControl;
+}
+
+- (void)setUp
+{
+ _segmentedControl = [[CPSegmentedControl alloc] initWithFrame:CGRectMakeZero()];
+ [_segmentedControl setSegmentCount:3];
+}
+
+- (void)testMakeCPSegmentedControlInstance
+{
+ [self assertNotNull:_segmentedControl];
+}
+
+- (void)testDefaultsToSelectOneTrackingMode
+{
+ [self assert:[_segmentedControl trackingMode] equals:CPSegmentSwitchTrackingSelectOne];
+}
+
+- (void)testSelectsOneSegmentStartingAtBlankState
+{
+ [self assert:[_segmentedControl selectedSegment] equals:-1];
+ [_segmentedControl setSelectedSegment:1];
+ [self assert:[_segmentedControl selectedSegment] equals:1];
+}
+
+@end
+
From 8382bb1ae85dc9a1e0828f2169231b7c98d411c8 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sat, 25 Jul 2009 16:47:30 -0700
Subject: [PATCH 101/244] Beginnings of Platform reorg.
Reviewed by me.
---
AppKit/CPApplication.j | 9 +-
AppKit/CPMenu.j | 2 +-
AppKit/CPStringDrawing.j | 76 +-
AppKit/CPWindow/CPWindow.j | 1 +
AppKit/Platform/CPPlatform.j | 27 +
AppKit/Platform/CPPlatformString.j | 104 +++
AppKit/Platform/CPPlatformWindow.j | 101 +++
AppKit/Platform/DOM/CPDOMWindowBridge.j | 965 +-------------------
AppKit/Platform/DOM/_CPBrowserWindow.j | 10 +
AppKit/Platform/DOM/_CPDOMWindow.j | 1063 +++++++++++++++++++++++
10 files changed, 1335 insertions(+), 1023 deletions(-)
create mode 100644 AppKit/Platform/CPPlatform.j
create mode 100644 AppKit/Platform/CPPlatformString.j
create mode 100644 AppKit/Platform/CPPlatformWindow.j
create mode 100644 AppKit/Platform/DOM/_CPBrowserWindow.j
create mode 100644 AppKit/Platform/DOM/_CPDOMWindow.j
diff --git a/AppKit/CPApplication.j b/AppKit/CPApplication.j
index f150bb026..f7c9962b8 100644
--- a/AppKit/CPApplication.j
+++ b/AppKit/CPApplication.j
@@ -29,6 +29,8 @@
@import "CPDocumentController.j"
@import "CPThemeBlend.j"
@import "CPCibLoading.j"
+@import "CPPlatform.j"
+
var CPMainCibFile = @"CPMainCibFile",
CPMainCibFileHumanFriendly = @"Main cib file base name";
@@ -805,7 +807,7 @@ var _CPAppBootstrapperActions = nil;
+ (void)actions
{
- return [@selector(loadDefaultTheme), @selector(loadMainCibFile)];
+ return [@selector(bootstrapPlatform), @selector(loadDefaultTheme), @selector(loadMainCibFile)];
}
+ (void)performActions
@@ -824,6 +826,11 @@ var _CPAppBootstrapperActions = nil;
[CPApp run];
}
++ (BOOL)bootstrapPlatform
+{
+ return [CPPlatform bootstrap];
+}
+
+ (BOOL)loadDefaultTheme
{
var blend = [[CPThemeBlend alloc] initWithContentsOfURL:[[CPBundle bundleForClass:[CPApplication class]] pathForResource:@"Aristo.blend"]];
diff --git a/AppKit/CPMenu.j b/AppKit/CPMenu.j
index 79ca0e9d2..46e415468 100644
--- a/AppKit/CPMenu.j
+++ b/AppKit/CPMenu.j
@@ -119,7 +119,7 @@ var _CPMenuBarVisible = NO,
// FIXME: There must be a better way to do this.
#if PLATFORM(DOM)
- [[CPDOMWindowBridge sharedDOMWindowBridge] _bridgeResizeEvent:nil];
+ [window.platformWindow resizeEvent:nil];
#endif
}
diff --git a/AppKit/CPStringDrawing.j b/AppKit/CPStringDrawing.j
index 61b4fda70..dec7bde1c 100644
--- a/AppKit/CPStringDrawing.j
+++ b/AppKit/CPStringDrawing.j
@@ -22,13 +22,9 @@
@import
-#include "CoreGraphics/CGGeometry.h"
-#include "Platform/Platform.h"
+@import "CPPlatformString.j"
-var CPStringReferenceElement = nil,
- CPStringDefaultFont = nil;
-
@implementation CPString (CPStringDrawing)
/*!
@@ -46,75 +42,7 @@ var CPStringReferenceElement = nil,
- (CGSize)sizeWithFont:(CPFont)aFont inWidth:(float)aWidth
{
-#if PLATFORM(DOM)
- if (!CPStringReferenceElement)
- {
- CPStringReferenceElement = document.createElement("span");
-
- var style = CPStringReferenceElement.style;
-
- style.position = "absolute";
- style.whiteSpace = "pre";
- style.visibility = "visible";
- style.padding = "0px";
- style.margin = "0px";
-
- style.left = "-100000px";
- style.top = "-100000px";
- style.zIndex = "10000";
- style.background = "red";
-
- document.getElementsByTagName("body")[0].appendChild(CPStringReferenceElement);
- }
-
- if (!aFont)
- {
- if (!CPStringDefaultFont)
- CPStringDefaultFont = [CPFont systemFontOfSize:12.0];
-
- aFont = CPStringDefaultFont;
- }
-
- var style = CPStringReferenceElement.style;
-
- if (aWidth === NULL)
- {
- style.width = "";
- style.whiteSpace = "pre";
- }
-
- else
- {
- style.width = ROUND(aWidth) + "px";
-
- if (document.attachEvent)
- style.wordWrap = "break-word";
-
- else
- {
- style.whiteSpace = "-o-pre-wrap";
- style.whiteSpace = "-pre-wrap";
- style.whiteSpace = "-moz-pre-wrap";
- style.whiteSpace = "pre-wrap";
- }
- }
-
- style.font = [aFont cssString];
-
- if (CPFeatureIsCompatible(CPJavascriptInnerTextFeature))
- CPStringReferenceElement.innerText = self;
-
- else if (CPFeatureIsCompatible(CPJavascriptTextContentFeature))
- CPStringReferenceElement.textContent = self;
-
- return _CGSizeMake(CPStringReferenceElement.clientWidth, CPStringReferenceElement.clientHeight);
-#endif
- return _CGSizeMakeZero();
-}
-
-+ (void)_resetSize
-{
- CPStringReferenceElement = nil;
+ return [CPPlatformString sizeOfString:self withFont:aFont forWidth:aWidth];
}
@end
diff --git a/AppKit/CPWindow/CPWindow.j b/AppKit/CPWindow/CPWindow.j
index 48a9968c6..b3499c575 100644
--- a/AppKit/CPWindow/CPWindow.j
+++ b/AppKit/CPWindow/CPWindow.j
@@ -27,6 +27,7 @@
@import "CGGeometry.j"
@import "CPAnimation.j"
@import "CPResponder.j"
+@import "CPPlatformWindow.j"
#include "../Platform/Platform.h"
#include "../Platform/DOM/CPDOMDisplayServer.h"
diff --git a/AppKit/Platform/CPPlatform.j b/AppKit/Platform/CPPlatform.j
new file mode 100644
index 000000000..e7db6ddb1
--- /dev/null
+++ b/AppKit/Platform/CPPlatform.j
@@ -0,0 +1,27 @@
+
+@import
+
+#include "Platform.h"
+
+
+@implementation CPPlatform : CPObject
+{
+}
+
++ (void)bootstrap
+{
+#if PLATFORM(DOM)
+ var body = document.getElementsByTagName("body")[0];
+
+ body.innerHTML = ""; // Get rid of anything that might be lingering in the body element.
+ body.style.overflow = "hidden";
+
+ if (document.documentElement)
+ document.documentElement.style.overflow = "hidden";
+#endif
+
+ [CPPlatformString bootstrap];
+ window.firstWindow = [[CPPlatformWindow alloc] _init];
+}
+
+@end
diff --git a/AppKit/Platform/CPPlatformString.j b/AppKit/Platform/CPPlatformString.j
new file mode 100644
index 000000000..24e91d152
--- /dev/null
+++ b/AppKit/Platform/CPPlatformString.j
@@ -0,0 +1,104 @@
+
+
+@import
+
+#include "../CoreGraphics/CGGeometry.h"
+#include "Platform.h"
+
+
+#if PLATFORM(DOM)
+var DOMIFrameElement = nil,
+ DOMSpanElement = nil,
+ DefaultFont = nil;
+#endif
+
+@implementation CPPlatformString : CPObject
+{
+}
+
++ (void)bootstrap
+{
+#if PLATFORM(DOM)
+ DOMIFrameElement = document.createElement("iframe");
+
+ DOMIFrameElement.name = name = "iframe_" + FLOOR(RAND() * 10000);
+ DOMIFrameElement.style.position = "absolute";
+ DOMIFrameElement.style.left = "-100px";
+ DOMIFrameElement.style.top = "-100px";
+ DOMIFrameElement.style.width = "1px";
+ DOMIFrameElement.style.height = "1px";
+ DOMIFrameElement.style.borderWidth = "0px";
+ DOMIFrameElement.style.background = "blue";
+ DOMIFrameElement.style.overflow = "hidden";
+ DOMIFrameElement.style.zIndex = 100000000000;
+
+ document.getElementsByTagName("body")[0].appendChild(DOMIFrameElement);
+
+ var DOMIFrameDocument = (DOMIFrameElement.contentDocument || DOMIFrameElement.contentWindow.document);
+
+ DOMIFrameDocument.write("");
+ DOMIFrameDocument.close();
+
+ DOMSpanElement = DOMIFrameDocument.createElement("span");
+
+ DOMSpanElement.style.position = "absolute";
+ DOMSpanElement.style.whiteSpace = "pre";
+ DOMSpanElement.style.visibility = "visible";
+ DOMSpanElement.style.padding = "0px";
+ DOMSpanElement.style.margin = "0px";
+ DOMSpanElement.style.background = "red";
+
+ DOMIFrameDocument.getElementsByTagName("body")[0].appendChild(DOMSpanElement);
+#endif
+}
+
++ (CGSize)sizeOfString:(CPString)aString withFont:(CPFont)aFont forWidth:(float)aWidth
+{
+#if PLATFORM(DOM)
+ if (!aFont)
+ {
+ if (!DefaultFont)
+ DefaultFont = [CPFont systemFontOfSize:12.0];
+
+ aFont = DefaultFont;
+ }
+
+ var style = DOMSpanElement.style;
+
+ if (aWidth === NULL)
+ {
+ style.width = "";
+ style.whiteSpace = "pre";
+ }
+
+ else
+ {
+ style.width = ROUND(aWidth) + "px";
+
+ if (document.attachEvent)
+ style.wordWrap = "break-word";
+
+ else
+ {
+ style.whiteSpace = "-o-pre-wrap";
+ style.whiteSpace = "-pre-wrap";
+ style.whiteSpace = "-moz-pre-wrap";
+ style.whiteSpace = "pre-wrap";
+ }
+ }
+
+ style.font = [aFont cssString];
+
+ if (CPFeatureIsCompatible(CPJavascriptInnerTextFeature))
+ DOMSpanElement.innerText = aString;
+
+ else if (CPFeatureIsCompatible(CPJavascriptTextContentFeature))
+ DOMSpanElement.textContent = aString;
+
+ return _CGSizeMake(DOMSpanElement.clientWidth, DOMSpanElement.clientHeight);
+#else
+ return _CGSizeMakeZero();
+#endif
+}
+
+@end
diff --git a/AppKit/Platform/CPPlatformWindow.j b/AppKit/Platform/CPPlatformWindow.j
new file mode 100644
index 000000000..04e35b808
--- /dev/null
+++ b/AppKit/Platform/CPPlatformWindow.j
@@ -0,0 +1,101 @@
+
+@import
+
+#import "Platform.h"
+#import "../CoreGraphics/CGGeometry.h"
+
+
+var PlatformWindowClass = NULL;
+
+@implementation CPPlatformWindow : CPObject
+{
+ CGRect _contentRect;
+}
+
++ (void)_setPlatformWindowClass:(Class)aClass
+{
+ PlatformWindowClass = aClass;
+}
+
++ (Class)_platformWindowClass
+{
+ return PlatformWindowClass;
+}
+
++ (id)alloc
+{
+ if (self === [CPPlatformWindow class])
+ return [PlatformWindowClass alloc];
+
+ return [super alloc];
+}
+
+- (id)initWithContentRect:(CGRect)aRect
+{
+ self = [super init];
+
+ if (self)
+ _contentRect = _CGRectMakeCopy(aRect);
+
+ return self;
+}
+
+- (id)init
+{
+ return [self initWithContentRect:_CGRectMake(0.0, 0.0, 400.0, 500.0)];
+}
+
+- (CGRect)contentRect
+{
+ return _CGRectMakeCopy(_contentRect);
+}
+
+- (void)setContentRect:(CGRect)aRect
+{
+ if (!aRect || _CGRectEqualToRect(_contentRect, aRect))
+ return;
+
+ [self setContentOrigin:aRect.origin];
+ [self setContentSize:aRect.size];
+}
+
+- (void)setContentOrigin:(CGPoint)aPoint
+{
+ var origin = _contentRect.origin;
+
+ if (!aPoint || _CGPointEqualToPoint(origin, aPoint))
+ return;
+
+ origin.x = aPoint.x;
+ origin.y = aPoint.y;
+
+ [self updateNativeContentOrigin];
+}
+
+- (void)setContentSize:(CGSize)aSize
+{
+ var size = _contentRect.size;
+
+ if (!aSize || _CGSizeEqualToSize(size, aSize))
+ return;
+
+ var delta = _CGSizeMake(aSize.width - size.width, aSize.height - size.height);
+
+ size.width = aSize.width;
+ size.height = aSize.height;
+
+ [self updateNativeContentSize];
+}
+
+- (void)updateFromNativeContentRect
+{
+ [self setContentRect:[self nativeContentRect]];
+}
+
+@end
+
+#if PLATFORM(BROWSER)
+@import "_CPBrowserWindow.j"
+#else
+[CPPlatformWindow _setPlatformWindowClass:[CPPlatformWindow class]];
+#endif
diff --git a/AppKit/Platform/DOM/CPDOMWindowBridge.j b/AppKit/Platform/DOM/CPDOMWindowBridge.j
index 6b6c57d29..78f6fe640 100644
--- a/AppKit/Platform/DOM/CPDOMWindowBridge.j
+++ b/AppKit/Platform/DOM/CPDOMWindowBridge.j
@@ -26,7 +26,6 @@
@import "CPEvent.j"
@import "CPCompatibility.j"
-@import "CPDOMWindowLayer.j"
#import "../../CoreGraphics/CGGeometry.h"
@@ -42,168 +41,26 @@ var CPDOMWindowGetFrame,
@implementation CPDOMWindowBridge : CPObject
{
- CPArray _orderedWindows;
- CPWindow _mouseDownWindow;
-
- DOMWindow _DOMWindow;
- DOMElement _DOMBodyElement;
- DOMElement _DOMFocusElement;
-
- CPArray _windowLevels;
- CPDictionary _windowLayers;
-
- CPRect _frame;
- CPRect _contentBounds;
-
- BOOL _mouseIsDown;
- CPTimeInterval _lastMouseUp;
- CPTimeInterval _lastMouseDown;
-
- JSObject _charCodes;
- unsigned _keyCode;
-
- BOOL _DOMEventMode;
-
- // Native Pasteboard Support
- DOMElement _DOMPasteboardElement;
- CPEvent _pasteboardKeyDownEvent;
-
- CPString _overriddenEventType;
}
/*!
- Returns the shared DOMWindowBridge.
+ Returns the shared DOMWindowBridge.
*/
+ (id)sharedDOMWindowBridge
{
if (!CPSharedDOMWindowBridge)
- CPSharedDOMWindowBridge = [[CPDOMWindowBridge alloc] _initWithDOMWindow:window];
-
+ CPSharedDOMWindowBridge = [[CPDOMWindowBridge alloc] _init];
+
return CPSharedDOMWindowBridge;
}
-- (id)initWithFrame:(CPRect)aFrame
-{
- alert("unimplemented");
-}
-
/* @ignore */
-- (id)_initWithDOMWindow:(DOMWindow)aDOMWindow
+- (id)_init//_initWithDOMWindow:(DOMWindow)aDOMWindow
{
self = [super init];
-
+
if (self)
{
- _DOMWindow = aDOMWindow;
-
- _windowLevels = [];
- _windowLayers = [CPDictionary dictionary];
-
- // Do this before getting the frame of the window, because if not it will be wrong in IE.
- _DOMBodyElement = document.getElementsByTagName("body")[0];
- _DOMBodyElement.innerHTML = ""; // Get rid of anything that might be lingering in the body element.
- _DOMBodyElement.style.overflow = "hidden";
- _DOMBodyElement.style.webkitTouchCallout = "none";
-
- [CPString _resetSize];
-
- if (document.documentElement)
- document.documentElement.style.overflow = "hidden";
-
- _frame = CPDOMWindowGetFrame(_DOMWindow);
- _contentBounds = CGRectMake(0.0, 0.0, CPRectGetWidth(_frame), CPRectGetHeight(_frame));
-
- _DOMFocusElement = document.createElement("input");
- _DOMFocusElement.style.position = "absolute";
- _DOMFocusElement.style.zIndex = "-1000";
- _DOMFocusElement.style.opacity = "0";
- _DOMFocusElement.style.filter = "alpha(opacity=0)";
- _DOMBodyElement.appendChild(_DOMFocusElement);
-
- // Create Native Pasteboard handler.
- _DOMPasteboardElement = document.createElement("input");
- _DOMPasteboardElement.style.position = "absolute";
- _DOMPasteboardElement.style.top = "-10000px";
- _DOMPasteboardElement.style.zIndex = "99";
-
- _DOMBodyElement.appendChild(_DOMPasteboardElement);
-
- // Make sure the pastboard element is blurred.
- _DOMPasteboardElement.blur();
-
- _charCodes = {};
-
- //
- var theClass = [self class],
-
- keyEventSelector = @selector(_bridgeKeyEvent:),
- keyEventImplementation = class_getMethodImplementation(theClass, keyEventSelector),
- keyEventCallback = function (anEvent) { keyEventImplementation(self, nil, anEvent); },
-
- mouseEventSelector = @selector(_bridgeMouseEvent:),
- mouseEventImplementation = class_getMethodImplementation(theClass, mouseEventSelector),
- mouseEventCallback = function (anEvent) { mouseEventImplementation(self, nil, anEvent); },
-
- scrollEventSelector = @selector(_bridgeScrollEvent:),
- scrollEventImplementation = class_getMethodImplementation(theClass, scrollEventSelector),
- scrollEventCallback = function (anEvent) { scrollEventImplementation(self, nil, anEvent); },
-
- resizeEventSelector = @selector(_bridgeResizeEvent:),
- resizeEventImplementation = class_getMethodImplementation(theClass, resizeEventSelector),
- resizeEventCallback = function (anEvent) { resizeEventImplementation(self, nil, anEvent); },
-
- touchEventSelector = @selector(_bridgeTouchEvent:),
- touchEventImplementation = class_getMethodImplementation(theClass, touchEventSelector),
- touchEventCallback = function (anEvent) { touchEventImplementation(self, nil, anEvent); },
-
- theDocument = _DOMWindow.document;
-
- if (document.addEventListener)
- {
- _DOMWindow.addEventListener("resize", resizeEventCallback, NO);
-
- theDocument.addEventListener(CPDOMEventMouseUp, mouseEventCallback, NO);
- theDocument.addEventListener(CPDOMEventMouseDown, mouseEventCallback, NO);
- theDocument.addEventListener(CPDOMEventMouseMoved, mouseEventCallback, NO);
-
- theDocument.addEventListener(CPDOMEventKeyUp, keyEventCallback, NO);
- theDocument.addEventListener(CPDOMEventKeyDown, keyEventCallback, NO);
- theDocument.addEventListener(CPDOMEventKeyPress, keyEventCallback, NO);
-
-
- theDocument.addEventListener(CPDOMEventTouchStart, touchEventCallback, NO);
- theDocument.addEventListener(CPDOMEventTouchEnd, touchEventCallback, NO);
- theDocument.addEventListener(CPDOMEventTouchMove, touchEventCallback, NO);
- theDocument.addEventListener(CPDOMEventTouchCancel, touchEventCallback, NO);
-
- //FIXME: does firefox really need a different value?
- _DOMWindow.addEventListener("DOMMouseScroll", scrollEventCallback, NO);
- _DOMWindow.addEventListener(CPDOMEventScrollWheel, scrollEventCallback, NO);
- }
- else if(document.attachEvent)
- {
- _DOMWindow.attachEvent("onresize", resizeEventCallback);
-
- theDocument.attachEvent("on" + CPDOMEventMouseUp, mouseEventCallback);
- theDocument.attachEvent("on" + CPDOMEventMouseDown, mouseEventCallback);
- theDocument.attachEvent("on" + CPDOMEventMouseMoved, mouseEventCallback);
- theDocument.attachEvent("on" + CPDOMEventDoubleClick, mouseEventCallback);
-
- theDocument.attachEvent("on" + CPDOMEventKeyUp, keyEventCallback);
- theDocument.attachEvent("on" + CPDOMEventKeyDown, keyEventCallback);
- theDocument.attachEvent("on" + CPDOMEventKeyPress, keyEventCallback);
-
- _DOMWindow.onmousewheel = scrollEventCallback;
- theDocument.onmousewheel = scrollEventCallback;
-
- theDocument.body.ondrag = function () { return NO; };
- theDocument.body.onselectstart = function () { return window.event.srcElement == _DOMPasteboardElement; };
- }
-
- ExcludedDOMElements["INPUT"] = YES;
- ExcludedDOMElements["SELECT"] = YES;
- ExcludedDOMElements["TEXTAREA"] = YES;
- ExcludedDOMElements["OPTION"] = YES;
}
return self;
@@ -211,13 +68,13 @@ var CPDOMWindowGetFrame,
- (CPRect)frame
{
- return CGRectMakeCopy(_frame);
+ return [self contentRect];
}
- (CGRect)visibleFrame
{
- var frame = [self frame];
-
+ var frame = [self contentBounds];
+
frame.origin = CGPointMakeZero();
if ([CPMenu menuBarVisible])
@@ -233,828 +90,42 @@ var CPDOMWindowGetFrame,
- (CPRect)contentBounds
{
- return CPRectCreateCopy(_contentBounds);
+ var contentBounds = [window.firstWindow contentRect];
+ contentBounds.origin = CGPointMake(0,0);
+
+ return contentBounds;
}
- (CPArray)orderedWindowsAtLevel:(int)aLevel
{
- var layer = [self layerAtLevel:aLevel create:NO];
-
- if (!layer)
- return [];
-
- return [layer orderedWindows];
+ return [window.firstWindow orderedWindowsAtLevel:aLevel];
}
- (CPDOMWindowLayer)layerAtLevel:(int)aLevel create:(BOOL)aFlag
{
- var layer = [_windowLayers objectForKey:aLevel];
-
- // If the layer doesn't currently exist, and the create flag is true,
- // create the layer.
- if (!layer && aFlag)
- {
- layer = [[CPDOMWindowLayer alloc] initWithLevel:aLevel];
-
- [_windowLayers setObject:layer forKey:aLevel];
-
- // Find the nearest layer. This is similar to a binary search,
- // only we know we won't find the value.
- var low = 0,
- high = _windowLevels.length - 1,
- middle;
-
- while (low <= high)
- {
- middle = FLOOR((low + high) / 2);
-
- if (_windowLevels[middle] > aLevel)
- high = middle - 1;
- else
- low = middle + 1;
- }
-
- [_windowLevels insertObject:aLevel atIndex:_windowLevels[middle] > aLevel ? middle : middle + 1];
- layer._DOMElement.style.zIndex = aLevel;
- _DOMBodyElement.appendChild(layer._DOMElement);
- }
-
- return layer;
+ return [window.firstWindow layerAtLevel:aLevel create:aFlag];
}
- (void)order:(CPWindowOrderingMode)aPlace window:(CPWindow)aWindow relativeTo:(CPWindow)otherWindow
{
- // Grab the appropriate level for the layer, and create it if
- // necessary (if we are not simply removing the window).
- var layer = [self layerAtLevel:[aWindow level] create:aPlace != CPWindowOut];
-
- // Ignore otherWindow, simply remove this window from it's level.
- // If layer is nil, this will be a no-op.
- if (aPlace == CPWindowOut)
- return [layer removeWindow:aWindow];
-
- // Place the window at the appropriate index.
- [layer insertWindow:aWindow atIndex:(otherWindow ? (aPlace == CPWindowAbove ? otherWindow._index + 1 : otherWindow._index) : CPNotFound)];
+ return [window.firstWindow order:aPlace window:aWindow relativeTo:otherWindow];
}
/* @ignore */
- (id)_dragHitTest:(CPPoint)aPoint pasteboard:(CPPasteboard)aPasteboard
{
- var levels = _windowLevels,
- layers = _windowLayers,
- levelCount = levels.length;
-
- while (levelCount--)
- {
- // Skip any windows above or at the dragging level.
- if (levels[levelCount] >= CPDraggingWindowLevel)
- continue;
-
- var windows = [layers objectForKey:levels[levelCount]]._windows,
- windowCount = windows.length;
-
- while (windowCount--)
- {
- var theWindow = windows[windowCount];
-
- if ([theWindow containsPoint:aPoint])
- return [theWindow _dragHitTest:aPoint pasteboard:aPasteboard];
- }
- }
-
- return nil;
+ return [window.firstWindow _dragHitTest:aPoint pasteboard:aPasteboard];
}
/* @ignore */
- (void)_propagateCurrentDOMEvent:(BOOL)aFlag
{
- StopDOMEventPropagation = !aFlag;
+ return [window.firstWindow _propagateCurrentDOMEvent:aFlag];
}
- (CPWindow)hitTest:(CPPoint)location
{
- var levels = _windowLevels,
- layers = _windowLayers,
- levelCount = levels.length,
- theWindow = nil;
-
- while (levelCount-- && !theWindow)
- {
- var windows = [layers objectForKey:levels[levelCount]]._windows,
- windowCount = windows.length;
-
- while (windowCount-- && !theWindow)
- {
- var candidateWindow = windows[windowCount];
-
- if (!candidateWindow._ignoresMouseEvents && [candidateWindow containsPoint:location])
- theWindow = candidateWindow;
- }
- }
-
- return theWindow;
+ return [window.firstWindow hitTest:location];
}
@end
-
-var CPDOMWindowGetFrame = function(_DOMWindow)
-{
- var frame = nil;//CGRectMakeZero();
-
- // We will rarely be able to get all this information, but we do the best we can:
- if (_DOMWindow.outerWidth)
- frame = CGRectMake(0, 0, _DOMWindow.outerWidth, _DOMWindow.outerHeight);
-
- else /*if(self.outerWidth)*/
- frame = CGRectMake(0, 0, -1, -1);
-
- if (window.screenTop)
- frame.origin = CGPointMake(_DOMWindow.screenLeft, _DOMWindow.screenTop, 0);
-
- else if (window.screenX)
- frame.origin = CGPointMake(_DOMWindow.screenX, _DOMWindow.screenY, 0);
-
- // Safari, Mozilla, Firefox, and Opera
- if (_DOMWindow.innerWidth)
- frame.size = CGSizeMake(_DOMWindow.innerWidth, _DOMWindow.innerHeight);
-
- // Internet Explorer 6 in Strict Mode
- else if (document.documentElement && document.documentElement.clientWidth)
- frame.size = CGSizeMake(_DOMWindow.document.documentElement.clientWidth, _DOMWindow.document.documentElement.clientHeight);
-
- // Internet Explorer X
- else
- frame.size = CGSizeMake(_DOMWindow.document.body.clientWidth, _DOMWindow.document.body.clientHeight);
-
- return frame;
-}
-
-//right now we hard code q, w, r and t as keys to propogate
-//these aren't normal keycodes, they are with modifier key codes
-//might be mac only, we should investigate futher later.
-var KeyCodesToPrevent = {},
- CharacterKeysToPrevent = {},
- KeyCodesWithoutKeyPressEvents = { '8':1, '9':1, '16':1, '37':1, '38':1, '39':1, '40':1, '46':1, '33':1, '34':1 };
-
-var CTRL_KEY_CODE = 17;
-
-@implementation CPDOMWindowBridge (Events)
-
-/*!
- When using command (mac) or control (windows), keys are propagated to the browser by default.
- To prevent a character key from propagating (to prevent its default action, and instead use it
- in your own application), use these methods. These methods are additive -- the list builds until you clear it.
-
- @param characters a list of characters to stop propagating keypresses to the browser.
-*/
-- (void)preventCharacterKeysFromPropagating:(CPArray)characters
-{
- for(var i=characters.length; i>0; i--)
- CharacterKeysToPrevent[""+characters[i-1].toLowerCase()] = YES;
-}
-
-/*!
- @param character a character to stop propagating keypresses to the browser.
-*/
-- (void)preventCharacterKeyFromPropagating:(CPString)character
-{
- CharacterKeysToPrevent[character.toLowerCase()] = YES;
-}
-
-/*!
- Clear the list of characters for which we are not sending keypresses to the browser.
-*/
-- (void)clearCharacterKeysToPreventFromPropagating
-{
- CharacterKeysToPrevent = {};
-}
-
-/*!
- Prevent these keyCodes from sending their keypresses to the browser.
- @param keyCodes an array of keycodes to prevent propagation.
-*/
-- (void)preventKeyCodesFromPropagating:(CPArray)keyCodes
-{
- for(var i=keyCodes.length; i>0; i--)
- KeyCodesToPrevent[keyCodes[i-1]] = YES;
-}
-
-/*!
- Prevent this keyCode from sending its key events to the browser.
- @param keyCode a keycode to prevent propagation.
-*/
-- (void)preventKeyCodeFromPropagating:(CPString)keyCode
-{
- KeyCodesToPrevent[keyCode] = YES;
-}
-
-/*!
- Clear the list of keyCodes for which we are not sending keypresses to the browser.
-*/
-- (void)clearKeyCodesToPreventFromPropagating
-{
- KeyCodesToPrevent = {};
-}
-
-/* @ignore */
-- (void)_bridgeMouseEvent:(DOMEvent)aDOMEvent
-{
- var theType = _overriddenEventType || aDOMEvent.type;
-
- // IE's event order is down, up, up, dblclick, so we have create these events artificially.
- if (theType === CPDOMEventDoubleClick)
- {
- _overriddenEventType = CPDOMEventMouseDown;
- [self _bridgeMouseEvent:aDOMEvent];
-
- _overriddenEventType = CPDOMEventMouseUp;
- [self _bridgeMouseEvent:aDOMEvent];
-
- _overriddenEventType = nil;
-
- return;
- }
-
-#ifndef DEBUG
- try
- {
-#endif
- var event,
- location = _CGPointMake(aDOMEvent.clientX, aDOMEvent.clientY),
- timestamp = aDOMEvent.timeStamp ? aDOMEvent.timeStamp : new Date(),
- sourceElement = (aDOMEvent.target || aDOMEvent.srcElement),
- windowNumber = 0,
- modifierFlags = (aDOMEvent.shiftKey ? CPShiftKeyMask : 0) |
- (aDOMEvent.ctrlKey ? CPControlKeyMask : 0) |
- (aDOMEvent.altKey ? CPAlternateKeyMask : 0) |
- (aDOMEvent.metaKey ? CPCommandKeyMask : 0);
-
- StopDOMEventPropagation = YES;
-
- if (_mouseDownWindow)
- windowNumber = [_mouseDownWindow windowNumber];
- else
- {
- var theWindow = [self hitTest:location];
-
- if ((aDOMEvent.type === CPDOMEventMouseDown) && theWindow)
- _mouseDownWindow = theWindow;
-
- windowNumber = [theWindow windowNumber];
- }
-
- if (windowNumber)
- {
- var windowFrame = CPApp._windows[windowNumber]._frame;
-
- location.x -= _CGRectGetMinX(windowFrame);
- location.y -= _CGRectGetMinY(windowFrame);
- }
-
- switch (theType)
- {
- case CPDOMEventMouseUp: if(_mouseIsDown)
- {
- event = _CPEventFromNativeMouseEvent(aDOMEvent, CPLeftMouseUp, location, modifierFlags, timestamp, windowNumber, nil, -1, CPDOMEventGetClickCount(_lastMouseUp, timestamp, location), 0);
-
- _mouseIsDown = NO;
- _lastMouseUp = event;
- _mouseDownWindow = nil;
- }
-
- if(_DOMEventMode)
- {
- _DOMEventMode = NO;
- return;
- }
-
- break;
-
- case CPDOMEventMouseDown: if (ExcludedDOMElements[sourceElement.tagName] && sourceElement != _DOMFocusElement)
- {
- _DOMEventMode = YES;
- _mouseIsDown = YES;
-
- //fake a down and up event so that event tracking mode will work correctly
- [CPApp sendEvent:[CPEvent mouseEventWithType:CPLeftMouseDown location:location modifierFlags:modifierFlags
- timestamp:timestamp windowNumber:windowNumber context:nil eventNumber:-1
- clickCount:CPDOMEventGetClickCount(_lastMouseDown, timestamp, location) pressure:0]];
-
- [CPApp sendEvent:[CPEvent mouseEventWithType:CPLeftMouseUp location:location modifierFlags:modifierFlags
- timestamp:timestamp windowNumber:windowNumber context:nil eventNumber:-1
- clickCount:CPDOMEventGetClickCount(_lastMouseDown, timestamp, location) pressure:0]];
-
- return;
- }
-
- event = _CPEventFromNativeMouseEvent(aDOMEvent, CPLeftMouseDown, location, modifierFlags, timestamp, windowNumber, nil, -1, CPDOMEventGetClickCount(_lastMouseDown, timestamp, location), 0);
-
- _mouseIsDown = YES;
- _lastMouseDown = event;
-
- break;
-
- case CPDOMEventMouseMoved: if (_DOMEventMode)
- return;
-
- event = _CPEventFromNativeMouseEvent(aDOMEvent, _mouseIsDown ? CPLeftMouseDragged : CPMouseMoved, location, modifierFlags, timestamp, windowNumber, nil, -1, 1, 0);
-
- break;
- }
-
- if (event)
- {
- event._DOMEvent = aDOMEvent;
-
- [CPApp sendEvent:event];
- }
-
- if (StopDOMEventPropagation)
- CPDOMEventStop(aDOMEvent);
-
- [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode];
-#ifndef DEBUG
- }
- catch (anException)
- {
- objj_exception_report(anException, {path:@"CPDOMWindowBridge.j"});
- }
-#endif
-}
-
-/* @ignore */
-- (void)_bridgeKeyEvent:(DOMEvent)aDOMEvent
-{
-#ifndef DEBUG
- try
- {
-#endif
- var event,
- timestamp = aDOMEvent.timeStamp ? aDOMEvent.timeStamp : new Date(),
- sourceElement = (aDOMEvent.target || aDOMEvent.srcElement),
- windowNumber = [[CPApp keyWindow] windowNumber],
- modifierFlags = (aDOMEvent.shiftKey ? CPShiftKeyMask : 0) |
- (aDOMEvent.ctrlKey ? CPControlKeyMask : 0) |
- (aDOMEvent.altKey ? CPAlternateKeyMask : 0) |
- (aDOMEvent.metaKey ? CPCommandKeyMask : 0);
-
- if (ExcludedDOMElements[sourceElement.tagName] && sourceElement != _DOMFocusElement && sourceElement != _DOMPasteboardElement)
- return;
-
- //We want to stop propagation if this is a command key AND this character or keycode has been added to our blacklist
- StopDOMEventPropagation = !(modifierFlags & (CPControlKeyMask | CPCommandKeyMask)) ||
- CharacterKeysToPrevent[String.fromCharCode(aDOMEvent.keyCode || aDOMEvent.charCode).toLowerCase()] ||
- KeyCodesToPrevent[aDOMEvent.keyCode];
-
- var isNativePasteEvent = NO,
- isNativeCopyOrCutEvent = NO;
-
- switch (aDOMEvent.type)
- {
- case CPDOMEventKeyDown: // Grab and store the keycode now since it is correct and consistent at this point.
- _keyCode = aDOMEvent.keyCode;
-
- var characters = String.fromCharCode(_keyCode).toLowerCase();
-
- // If this could be a native PASTE event, then we need to further examine it before
- // sending a CPEvent. Select our element to see if anything gets pasted in it.
- if (characters == "v" && (modifierFlags & CPPlatformActionKeyMask))
- {
- _DOMPasteboardElement.select();
- _DOMPasteboardElement.value = "";
-
- isNativePasteEvent = YES;
- }
-
- // Normally we return now because we let keypress send the actual CPEvent keyDown event, since we don't have
- // a complete set of information yet.
-
- // However, of this could be a native COPY event, we need to let the normal event-process take place so it
- // can capture our internal Cappuccino pasteboard.
- else if ((characters == "c" || characters == "x") && (modifierFlags & CPPlatformActionKeyMask))
- isNativeCopyOrCutEvent = YES;
-
- // Also, certain browsers (IE and Safari), have broken keyboard supportwhere they don't send keypresses for certain events.
- // So, allow the keypress event to handle the event if we are not a browser with broken (remedial) key support...
- else if (!CPFeatureIsCompatible(CPJavascriptRemedialKeySupport))
- return;
-
- // Or, if this is not one of those special keycodes, and also not a ctrl+event
- else if (!KeyCodesWithoutKeyPressEvents[_keyCode] && (_keyCode == CTRL_KEY_CODE || !(modifierFlags & CPControlKeyMask)))
- return;
-
- // If this is in fact our broke state, continue to keypress and send the keydown.
- case CPDOMEventKeyPress:
- // If the source of this event is our pasteboard element, then simply let it continue
- // as normal, so that the paste event can successfully complete.
- if ((aDOMEvent.target || aDOMEvent.srcElement) == _DOMPasteboardElement)
- return;
-
- var keyCode = _keyCode,
- charCode = aDOMEvent.keyCode || aDOMEvent.charCode,
- isARepeat = (_charCodes[keyCode] != nil);
-
- _charCodes[keyCode] = charCode;
-
- var characters = String.fromCharCode(charCode),
- charactersIgnoringModifiers = characters.toLowerCase();
-
- event = [CPEvent keyEventWithType:CPKeyDown location:location modifierFlags:modifierFlags
- timestamp:timestamp windowNumber:windowNumber context:nil
- characters:characters charactersIgnoringModifiers:charactersIgnoringModifiers isARepeat:isARepeat keyCode:keyCode];
-
- if (isNativePasteEvent)
- {
- _pasteboardKeyDownEvent = event;
-
- window.setNativeTimeout(function () { [self _checkPasteboardElement] }, 0);
-
- return;
- }
-
- break;
-
- case CPDOMEventKeyUp: var keyCode = aDOMEvent.keyCode,
- charCode = _charCodes[keyCode];
-
- _charCodes[keyCode] = nil;
-
- var characters = String.fromCharCode(charCode),
- charactersIgnoringModifiers = characters.toLowerCase();
-
- if (!(modifierFlags & CPShiftKeyMask))
- characters = charactersIgnoringModifiers;
-
- event = [CPEvent keyEventWithType:CPKeyUp location:location modifierFlags:modifierFlags
- timestamp: timestamp windowNumber:windowNumber context:nil
- characters:characters charactersIgnoringModifiers:charactersIgnoringModifiers isARepeat:NO keyCode:keyCode];
- break;
- }
-
- if (event)
- {
- event._DOMEvent = aDOMEvent;
-
- [CPApp sendEvent:event];
-
- if (isNativeCopyOrCutEvent)
- {
- var pasteboard = [CPPasteboard generalPasteboard],
- types = [pasteboard types];
-
- // If this is a native copy event, then check if the pasteboard has anything in it.
- if (types.length)
- {
- if ([types indexOfObjectIdenticalTo:CPStringPboardType] != CPNotFound)
- _DOMPasteboardElement.value = [pasteboard stringForType:CPStringPboardType];
- else
- _DOMPasteboardElement.value = [pasteboard _generateStateUID];
-
- _DOMPasteboardElement.select();
-
- window.setNativeTimeout(function() { [self _clearPasteboardElement]; }, 0);
- }
-
- return;
- }
- }
-
- if (StopDOMEventPropagation)
- CPDOMEventStop(aDOMEvent);
-
- [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode];
-#ifndef DEBUG
- }
- catch (anException)
- {
- objj_exception_report(anException, {path:@"CPDOMWindowBridge.j"});
- }
-#endif
-}
-
-/* @ignore */
-- (void)_bridgeScrollEvent:(DOMEvent)aDOMEvent
-{
- if(!aDOMEvent)
- aDOMEvent = window.event;
-
-#ifndef DEBUG
- try
- {
-#endif
- if (CPFeatureIsCompatible(CPJavaScriptMouseWheelValues_8_15))
- {
- var x = 0.0,
- y = 0.0,
- element = aDOMEvent.target;
-
- while (element.nodeType !== 1)
- element = element.parentNode;
-
- if (element.offsetParent)
- {
- do
- {
- x += element.offsetLeft;
- y += element.offsetTop;
-
- } while (element = element.offsetParent);
- }
-
- var location = _CGPointMake((x + ((aDOMEvent.clientX - 8) / 15)), (y + ((aDOMEvent.clientY - 8) / 15)));}
- else
- var location = _CGPointMake(aDOMEvent.clientX, aDOMEvent.clientY);
-
- var deltaX = 0.0,
- deltaY = 0.0,
- windowNumber = 0,
- timestamp = aDOMEvent.timeStamp ? aDOMEvent.timeStamp : new Date(),
- modifierFlags = (aDOMEvent.shiftKey ? CPShiftKeyMask : 0) |
- (aDOMEvent.ctrlKey ? CPControlKeyMask : 0) |
- (aDOMEvent.altKey ? CPAlternateKeyMask : 0) |
- (aDOMEvent.metaKey ? CPCommandKeyMask : 0);
-
- StopDOMEventPropagation = YES;
-
- windowNumber = [[self hitTest:location] windowNumber];
-
- if (!windowNumber)
- return;
-
- var windowFrame = CPApp._windows[windowNumber]._frame;
-
- location.x -= CGRectGetMinX(windowFrame);
- location.y -= CGRectGetMinY(windowFrame);
-
- if(typeof aDOMEvent.wheelDeltaX != "undefined")
- {
- deltaX = aDOMEvent.wheelDeltaX / 120.0;
- deltaY = aDOMEvent.wheelDeltaY / 120.0;
- }
-
- else if (aDOMEvent.wheelDelta)
- deltaY = aDOMEvent.wheelDelta / 120.0;
-
- else if (aDOMEvent.detail)
- deltaY = -aDOMEvent.detail / 3.0;
-
- else
- return;
-
- if(!CPFeatureIsCompatible(CPJavaScriptNegativeMouseWheelValues))
- {
- deltaX = -deltaX;
- deltaY = -deltaY;
- }
-
- var event = [CPEvent mouseEventWithType:CPScrollWheel location:location modifierFlags:modifierFlags
- timestamp:timestamp windowNumber:windowNumber context:nil eventNumber:-1 clickCount:1 pressure:0 ];
-
- event._DOMEvent = aDOMEvent;
- event._deltaX = deltaX;
- event._deltaY = deltaY;
-
- [CPApp sendEvent:event];
-
- if (StopDOMEventPropagation)
- CPDOMEventStop(aDOMEvent);
-
- [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode];
-#ifndef DEBUG
- }
- catch (anException)
- {
- objj_exception_report(anException, {path:@"CPDOMWindowBridge.j"});
- }
-#endif
-}
-
-/* @ignore */
-- (void)_bridgeResizeEvent:(DOMEvent)aDOMEvent
-{
-#ifndef DEBUG
- try
- {
-#endif
- // FIXME: This is not the right way to do this.
- // We should pay attention to mouse down and mouse up in conjunction with this.
- //window.liveResize = YES;
-
- var oldSize = _frame.size;
-
- // window.liveResize = YES?
- _frame = CPDOMWindowGetFrame(_DOMWindow);
- _contentBounds.size = CGSizeCreateCopy(_frame.size);
-
- var levels = _windowLevels,
- layers = _windowLayers,
- levelCount = levels.length;
-
- while (levelCount--)
- {
- var windows = [layers objectForKey:levels[levelCount]]._windows,
- windowCount = windows.length;
-
- while (windowCount--)
- [windows[windowCount] resizeWithOldBridgeSize:oldSize];
- }
-
- //window.liveResize = NO;
-
- [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode];
-#ifndef DEBUG
- }
- catch (anException)
- {
- objj_exception_report(anException, {path:@"CPDOMWindowBridge.j"});
- }
-#endif
-}
-
-// DOM event properties used in mouse bridge code
-
-// type
-// clientX
-// clientY
-// timestamp
-// target/srcElement
-// shiftKey,ctrlKey,altKey,metaKey
-
-/* @ignore */
-- (void)_bridgeTouchEvent:(DOMEvent)aDOMEvent
-{
-#ifndef DEBUG
- try
- {
-#endif
- if (aDOMEvent.touches && (aDOMEvent.touches.length == 1 || (aDOMEvent.touches.length == 0 && aDOMEvent.changedTouches.length == 1)))
- {
- var newEvent = {};
-
- switch(aDOMEvent.type)
- {
- case CPDOMEventTouchStart: newEvent.type = CPDOMEventMouseDown;
- break;
- case CPDOMEventTouchEnd: newEvent.type = CPDOMEventMouseUp;
- break;
- case CPDOMEventTouchMove: newEvent.type = CPDOMEventMouseMoved;
- break;
- case CPDOMEventTouchCancel: newEvent.type = CPDOMEventMouseUp;
- break;
- }
-
- var touch = aDOMEvent.touches.length ? aDOMEvent.touches[0] : aDOMEvent.changedTouches[0];
-
- newEvent.clientX = touch.clientX;
- newEvent.clientY = touch.clientY;
-
- newEvent.timestamp = aDOMEvent.timestamp;
- newEvent.target = aDOMEvent.target;
-
- newEvent.shiftKey = newEvent.ctrlKey = newEvent.altKey = newEvent.metaKey = false;
-
- newEvent.preventDefault = function(){if(aDOMEvent.preventDefault) aDOMEvent.preventDefault()};
- newEvent.stopPropagation = function(){if(aDOMEvent.stopPropagation) aDOMEvent.stopPropagation()};
-
- [self _bridgeMouseEvent:newEvent];
-
- return;
- }
- else
- {
- if (aDOMEvent.preventDefault)
- aDOMEvent.preventDefault();
-
- if (aDOMEvent.stopPropagation)
- aDOMEvent.stopPropagation();
- }
-#ifndef DEBUG
- }
- catch (anException)
- {
- objj_exception_report(anException, {path:@"CPDOMWindowBridge.j"});
- }
-#endif
- // handle touch cases specifically
-}
-
-/* @ignore */
-- (void)_checkPasteboardElement
-{
-#ifndef DEBUG
- try
- {
-#endif
- var value = _DOMPasteboardElement.value;
-
- if ([value length])
- {
- var pasteboard = [CPPasteboard generalPasteboard];
-
- if ([pasteboard _stateUID] != value)
- {
- [pasteboard declareTypes:[CPStringPboardType] owner:self];
-
- [pasteboard setString:value forType:CPStringPboardType];
- }
- }
-
- [self _clearPasteboardElement];
-
- [CPApp sendEvent:_pasteboardKeyDownEvent];
-
- _pasteboardKeyDownEvent = nil;
-
- [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode];
-#ifndef DEBUG
- }
- catch (anException)
- {
- objj_exception_report(anException, {path:@"CPDOMWindowBridge.j"});
- }
-#endif
-}
-
-/* @ignore */
-- (void)_clearPasteboardElement
-{
- _DOMPasteboardElement.value = "";
- _DOMPasteboardElement.blur();
-}
-
-@end
-
-var CLICK_SPACE_DELTA = 5.0,
- CLICK_TIME_DELTA = (typeof document != "undefined" && document.addEventListener) ? 350.0 : 1000.0;
-
-var CPDOMEventGetClickCount = function(aComparisonEvent, aTimestamp, aLocation)
-{
- if (!aComparisonEvent)
- return 1;
-
- var comparisonLocation = [aComparisonEvent locationInWindow];
-
- return (aTimestamp - [aComparisonEvent timestamp] < CLICK_TIME_DELTA &&
- ABS(comparisonLocation.x - aLocation.x) < CLICK_SPACE_DELTA &&
- ABS(comparisonLocation.y - aLocation.y) < CLICK_SPACE_DELTA) ? [aComparisonEvent clickCount] + 1 : 1;
-}
-
-var CPDOMEventStop = function(aDOMEvent)
-{
- // IE Model
- aDOMEvent.cancelBubble = true;
- aDOMEvent.returnValue = false;
-
- // W3C Model
- if (aDOMEvent.preventDefault)
- aDOMEvent.preventDefault();
-
- if (aDOMEvent.stopPropagation)
- aDOMEvent.stopPropagation();
-
- if (aDOMEvent.type === CPDOMEventMouseDown)
- {
- CPSharedDOMWindowBridge._DOMFocusElement.focus();
- CPSharedDOMWindowBridge._DOMFocusElement.blur();
- }
-}
-
-function CPWindowObjectList()
-{
- var bridge = [CPDOMWindowBridge sharedDOMWindowBridge],
- levels = bridge._windowLevels,
- layers = bridge._windowLayers,
- levelCount = levels.length,
- windowObjects = [];
-
- while (levelCount--)
- {
- var windows = [layers objectForKey:levels[levelCount]]._windows,
- windowCount = windows.length;
-
- while (windowCount--)
- windowObjects.push(windows[windowCount]);
- }
-
- return windowObjects;
-}
-
-function CPWindowList()
-{
- var bridge = [CPDOMWindowBridge sharedDOMWindowBridge],
- levels = bridge._windowLevels,
- layers = bridge._windowLayers,
- levelCount = levels.length,
- windowNumbers = [];
-
- while (levelCount--)
- {
- var windows = [layers objectForKey:levels[levelCount]]._windows,
- windowCount = windows.length;
-
- while (windowCount--)
- windowNumbers.push([windows[windowCount] windowNumber]);
- }
-
- return windowNumbers;
-}
diff --git a/AppKit/Platform/DOM/_CPBrowserWindow.j b/AppKit/Platform/DOM/_CPBrowserWindow.j
new file mode 100644
index 000000000..57a97de1c
--- /dev/null
+++ b/AppKit/Platform/DOM/_CPBrowserWindow.j
@@ -0,0 +1,10 @@
+
+@import "_CPDOMWindow.j"
+
+
+@implementation _CPBrowserWindow : _CPDOMWindow
+{
+}
+@end
+
+[CPPlatformWindow _setPlatformWindowClass:[_CPBrowserWindow class]];
diff --git a/AppKit/Platform/DOM/_CPDOMWindow.j b/AppKit/Platform/DOM/_CPDOMWindow.j
new file mode 100644
index 000000000..d8a3b2c0b
--- /dev/null
+++ b/AppKit/Platform/DOM/_CPDOMWindow.j
@@ -0,0 +1,1063 @@
+/*
+ * _CPDOMWindow.j
+ * AppKit
+ *
+ * Created by Francisco Tolmasky.
+ * Copyright 2008, 280 North, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+@import
+@import
+
+@import "CPEvent.j"
+@import "CPCompatibility.j"
+
+@import "CPDOMWindowLayer.j"
+
+@import "CPPlatformWindow.j"
+
+#import "../../CoreGraphics/CGGeometry.h"
+
+
+var DoubleClick = "dblclick",
+ MouseDown = "mousedown",
+ MouseUp = "mouseup",
+ MouseMove = "mousemove",
+ MouseDrag = "mousedrag",
+ KeyUp = "keyup",
+ KeyDown = "keydown",
+ KeyPress = "keypress",
+ Copy = "copy",
+ Paste = "paste",
+ Resize = "resize",
+ ScrollWheel = "mousewheel",
+ TouchStart = "touchstart",
+ TouchMove = "touchmove",
+ TouchEnd = "touchend",
+ TouchCancel = "touchcancel";
+
+var ExcludedDOMElements = [];
+
+ExcludedDOMElements["INPUT"] = YES;
+ExcludedDOMElements["SELECT"] = YES;
+ExcludedDOMElements["TEXTAREA"] = YES;
+ExcludedDOMElements["OPTION"] = YES;
+
+// Define up here so compressor knows about em.
+var CPDOMEventGetClickCount,
+ CPDOMEventStop;
+
+//right now we hard code q, w, r and t as keys to propogate
+//these aren't normal keycodes, they are with modifier key codes
+//might be mac only, we should investigate futher later.
+var KeyCodesToPrevent = {},
+ CharacterKeysToPrevent = {},
+ KeyCodesWithoutKeyPressEvents = { '8':1, '9':1, '16':1, '37':1, '38':1, '39':1, '40':1, '46':1, '33':1, '34':1 };
+
+var CTRL_KEY_CODE = 17;
+
+@implementation _CPDOMWindow : CPPlatformWindow
+{
+ DOMWindow _DOMWindow;
+
+ DOMElement _DOMBodyElement;
+ DOMElement _DOMFocusElement;
+
+ CPArray _windowLevels;
+ CPDictionary _windowLayers;
+
+ BOOL _mouseIsDown;
+ CPWindow _mouseDownWindow;
+ CPTimeInterval _lastMouseUp;
+ CPTimeInterval _lastMouseDown;
+
+ JSObject _charCodes;
+ unsigned _keyCode;
+
+ BOOL _DOMEventMode;
+
+ // Native Pasteboard Support
+ DOMElement _DOMPasteboardElement;
+ CPEvent _pasteboardKeyDownEvent;
+
+ CPString _overriddenEventType;
+}
+
+- (id)_init
+{
+ self = [super init];
+
+ if (self)
+ {
+ _DOMWindow = window;
+
+ [self registerDOMWindow];
+ [self updateFromNativeContentRect];
+
+ _charCodes = {};
+
+ _windowLevels = [];
+ _windowLayers = [CPDictionary dictionary];
+ }
+
+ return self;
+}
+
+- (id)initWithContentRect:(CGRect)aRect
+{
+ self = [super initWithContentRect:aRect];
+
+ if (self)
+ {
+ _windowLevels = [];
+ _windowLayers = [CPDictionary dictionary];
+
+ _charCodes = {};
+ }
+
+ return self;
+}
+
+- (CGRect)nativeContentRect
+{
+ if (!_DOMWindow)
+ return [self contentRect];
+
+ var contentRect = _CGRectMakeZero();
+
+ if (window.screenTop)
+ contentRect.origin = _CGPointMake(_DOMWindow.screenLeft, _DOMWindow.screenTop);
+
+ else if (window.screenX)
+ contentRect.origin = _CGPointMake(_DOMWindow.screenX, _DOMWindow.screenY);
+
+ // Safari, Mozilla, Firefox, and Opera
+ if (_DOMWindow.innerWidth)
+ contentRect.size = _CGSizeMake(_DOMWindow.innerWidth, _DOMWindow.innerHeight);
+
+ // Internet Explorer 6 in Strict Mode
+ else if (document.documentElement && document.documentElement.clientWidth)
+ contentRect.size = _CGSizeMake(_DOMWindow.document.documentElement.clientWidth, _DOMWindow.document.documentElement.clientHeight);
+
+ // Internet Explorer X
+ else
+ contentRect.size = _CGSizeMake(_DOMWindow.document.body.clientWidth, _DOMWindow.document.body.clientHeight);
+
+ return contentRect;
+}
+
+- (void)updateNativeContentOrigin
+{
+ if (!_DOMWindow)
+ return;
+
+ var origin = [self contentRect].origin,
+ nativeOrigin = [self nativeContentRect].origin;
+
+ _DOMWindow.moveBy(origin.x - nativeOrigin.x, origin.y - nativeOrigin.y);
+}
+
+- (void)updateNativeContentSize
+{
+ if (!_DOMWindow)
+ return;
+
+ var size = [self contentRect].size,
+ nativeSize = [self nativeContentRect].size;
+
+ _DOMWindow.resizeBy(size.width - nativeSize.width, size.height - nativeSize.height);
+}
+
+- (void)orderBack:(id)aSender
+{
+ if (_DOMWindow)
+ _DOMWindow.blur();
+}
+
+- (void)registerDOMWindow
+{
+ var theDocument = _DOMWindow.document;
+
+ _DOMBodyElement = theDocument.getElementsByTagName("body")[0];
+
+ _DOMBodyElement.webkitTouchCallout = "none";
+
+ _DOMFocusElement = theDocument.createElement("input");
+
+ _DOMFocusElement.style.position = "absolute";
+ _DOMFocusElement.style.zIndex = "-1000";
+ _DOMFocusElement.style.opacity = "0";
+ _DOMFocusElement.style.filter = "alpha(opacity=0)";
+
+ _DOMBodyElement.appendChild(_DOMFocusElement);
+
+ // Create Native Pasteboard handler.
+ _DOMPasteboardElement = theDocument.createElement("input");
+
+ _DOMPasteboardElement.style.position = "absolute";
+ _DOMPasteboardElement.style.top = "-10000px";
+ _DOMPasteboardElement.style.zIndex = "99";
+
+ _DOMBodyElement.appendChild(_DOMPasteboardElement);
+
+ // Make sure the pastboard element is blurred.
+ _DOMPasteboardElement.blur();
+
+ var theClass = [self class],
+
+ resizeEventSelector = @selector(resizeEvent:),
+ resizeEventImplementation = class_getMethodImplementation(theClass, resizeEventSelector),
+ resizeEventCallback = function (anEvent) { resizeEventImplementation(self, nil, anEvent); },
+
+ keyEventSelector = @selector(keyEvent:),
+ keyEventImplementation = class_getMethodImplementation(theClass, keyEventSelector),
+ keyEventCallback = function (anEvent) { keyEventImplementation(self, nil, anEvent); },
+
+ mouseEventSelector = @selector(mouseEvent:),
+ mouseEventImplementation = class_getMethodImplementation(theClass, mouseEventSelector),
+ mouseEventCallback = function (anEvent) { mouseEventImplementation(self, nil, anEvent); },
+
+ scrollEventSelector = @selector(scrollEvent:),
+ scrollEventImplementation = class_getMethodImplementation(theClass, scrollEventSelector),
+ scrollEventCallback = function (anEvent) { scrollEventImplementation(self, nil, anEvent); },
+
+ touchEventSelector = @selector(touchEvent:),
+ touchEventImplementation = class_getMethodImplementation(theClass, touchEventSelector),
+ touchEventCallback = function (anEvent) { touchEventImplementation(self, nil, anEvent); };
+
+ if (theDocument.addEventListener)
+ {
+ theDocument.addEventListener("mouseup", mouseEventCallback, NO);
+ theDocument.addEventListener("mousedown", mouseEventCallback, NO);
+ theDocument.addEventListener("mousemove", mouseEventCallback, NO);
+
+ theDocument.addEventListener("keyup", keyEventCallback, NO);
+ theDocument.addEventListener("keydown", keyEventCallback, NO);
+ theDocument.addEventListener("keypress", keyEventCallback, NO);
+
+ theDocument.addEventListener("touchstart", touchEventCallback, NO);
+ theDocument.addEventListener("touchend", touchEventCallback, NO);
+ theDocument.addEventListener("touchmove", touchEventCallback, NO);
+ theDocument.addEventListener("touchcancel", touchEventCallback, NO);
+
+ _DOMWindow.addEventListener("resize", resizeEventCallback, NO);
+
+ _DOMWindow.addEventListener("beforeunload", function()
+ {
+ [self updateFromNativeContentRect];
+
+ theDocument.removeEventListener("mouseup", mouseEventCallback, NO);
+ theDocument.removeEventListener("mousedown", mouseEventCallback, NO);
+ theDocument.removeEventListener("mousemove", mouseEventCallback, NO);
+
+ theDocument.removeEventListener("keyup", keyEventCallback, NO);
+ theDocument.removeEventListener("keydown", keyEventCallback, NO);
+ theDocument.removeEventListener("keypress", keyEventCallback, NO);
+
+ theDocument.removeEventListener("touchstart", touchEventCallback, NO);
+ theDocument.removeEventListener("touchend", touchEventCallback, NO);
+ theDocument.removeEventListener("touchmove", touchEventCallback, NO);
+
+ _DOMWindow.removeEventListener("resize", resizeEventCallback, NO);
+
+ //FIXME: does firefox really need a different value?
+ _DOMWindow.removeEventListener("DOMMouseScroll", scrollEventCallback, NO);
+ _DOMWindow.removeEventListener("mousewheel", scrollEventCallback, NO);
+
+ //_DOMWindow.removeEventListener("beforeunload", this, NO);
+
+ self._DOMWindow = nil;
+ }, NO);
+ }
+ else
+ {
+ theDocument.attachEvent("onmouseup", mouseEventCallback);
+ theDocument.attachEvent("onmousedown", mouseEventCallback);
+ theDocument.attachEvent("onmousemove", mouseEventCallback);
+ theDocument.attachEvent("ondblclick", mouseEventCallback);
+
+ theDocument.attachEvent("onkeyup", keyEventCallback);
+ theDocument.attachEvent("onkeydown", keyEventCallback);
+ theDocument.attachEvent("onkeypress", keyEventCallback);
+
+ _DOMWindow.attachEvent("onresize", resizeEventCallback);
+
+ _DOMWindow.onmousewheel = scrollEventCallback;
+ theDocument.onmousewheel = scrollEventCallback;
+
+ theDocument.body.ondrag = function () { return NO; };
+ theDocument.body.onselectstart = function () { return _DOMWindow.event.srcElement === _DOMPasteboardElement; };
+
+ _DOMWindow.attachEvent("onbeforeunload", function()
+ {
+ [self updateFromNativeContentRect];
+
+ theDocument.removeEvent("onmouseup", mouseEventCallback);
+ theDocument.removeEvent("onmousedown", mouseEventCallback);
+ theDocument.removeEvent("onmousemove", mouseEventCallback);
+ theDocument.removeEvent("ondblclick", mouseEventCallback);
+
+ theDocument.removeEvent("onkeyup", keyEventCallback);
+ theDocument.removeEvent("onkeydown", keyEventCallback);
+ theDocument.removeEvent("onkeypress", keyEventCallback);
+
+ _DOMWindow.removeEvent("onresize", resizeEventCallback);
+
+ _DOMWindow.onmousewheel = NULL;
+ theDocument.onmousewheel = NULL;
+
+ theDocument.body.ondrag = NULL;
+ theDocument.body.onselectstart = NULL;
+
+ //_DOMWindow.removeEvent("beforeunload", this);
+
+ self._DOMWindow = nil;
+ }, NO);
+ }
+}
+
+- (void)orderFront:(id)aSender
+{
+ if (_DOMWindow)
+ return _DOMWindow.focus();
+
+ _DOMWindow = window.open("", "", "menubar=no,location=no,resizable=yes,scrollbars=no,status=no,left=" + _CGRectGetMinX(_contentRect) + ",top=" + _CGRectGetMinY(_contentRect) + ",width=" + _CGRectGetWidth(_contentRect) + ",height=" + _CGRectGetHeight(_contentRect));
+
+ [self registerDOMWindow];
+}
+
+- (void)orderOut:(id)aSender
+{
+ _DOMWindow.close();
+}
+
+- (void)keyEvent:(DOMEvent)aDOMEvent
+{
+ var event,
+ timestamp = aDOMEvent.timeStamp ? aDOMEvent.timeStamp : new Date(),
+ sourceElement = (aDOMEvent.target || aDOMEvent.srcElement),
+ windowNumber = [[CPApp keyWindow] windowNumber],
+ modifierFlags = (aDOMEvent.shiftKey ? CPShiftKeyMask : 0) |
+ (aDOMEvent.ctrlKey ? CPControlKeyMask : 0) |
+ (aDOMEvent.altKey ? CPAlternateKeyMask : 0) |
+ (aDOMEvent.metaKey ? CPCommandKeyMask : 0);
+
+ if (ExcludedDOMElements[sourceElement.tagName] && sourceElement != _DOMFocusElement && sourceElement != _DOMPasteboardElement)
+ return;
+
+ //We want to stop propagation if this is a command key AND this character or keycode has been added to our blacklist
+ StopDOMEventPropagation = !(modifierFlags & (CPControlKeyMask | CPCommandKeyMask)) ||
+ CharacterKeysToPrevent[String.fromCharCode(aDOMEvent.keyCode || aDOMEvent.charCode).toLowerCase()] ||
+ KeyCodesToPrevent[aDOMEvent.keyCode];
+
+ var isNativePasteEvent = NO,
+ isNativeCopyOrCutEvent = NO;
+
+ switch (aDOMEvent.type)
+ {
+ case "keydown": // Grab and store the keycode now since it is correct and consistent at this point.
+ _keyCode = aDOMEvent.keyCode;
+
+ var characters = String.fromCharCode(_keyCode).toLowerCase();
+
+ // If this could be a native PASTE event, then we need to further examine it before
+ // sending a CPEvent. Select our element to see if anything gets pasted in it.
+ if (characters == "v" && (modifierFlags & CPPlatformActionKeyMask))
+ {
+ _DOMPasteboardElement.select();
+ _DOMPasteboardElement.value = "";
+
+ isNativePasteEvent = YES;
+ }
+
+ // Normally we return now because we let keypress send the actual CPEvent keyDown event, since we don't have
+ // a complete set of information yet.
+
+ // However, of this could be a native COPY event, we need to let the normal event-process take place so it
+ // can capture our internal Cappuccino pasteboard.
+ else if ((characters == "c" || characters == "x") && (modifierFlags & CPPlatformActionKeyMask))
+ isNativeCopyOrCutEvent = YES;
+
+ // Also, certain browsers (IE and Safari), have broken keyboard supportwhere they don't send keypresses for certain events.
+ // So, allow the keypress event to handle the event if we are not a browser with broken (remedial) key support...
+ else if (!CPFeatureIsCompatible(CPJavascriptRemedialKeySupport))
+ return;
+
+ // Or, if this is not one of those special keycodes, and also not a ctrl+event
+ else if (!KeyCodesWithoutKeyPressEvents[_keyCode] && (_keyCode == CTRL_KEY_CODE || !(modifierFlags & CPControlKeyMask)))
+ return;
+
+ // If this is in fact our broke state, continue to keypress and send the keydown.
+ case "keypress": // If the source of this event is our pasteboard element, then simply let it continue
+ // as normal, so that the paste event can successfully complete.
+ if ((aDOMEvent.target || aDOMEvent.srcElement) == _DOMPasteboardElement)
+ return;
+
+ var keyCode = _keyCode,
+ charCode = aDOMEvent.keyCode || aDOMEvent.charCode,
+ isARepeat = (_charCodes[keyCode] != nil);
+
+ _charCodes[keyCode] = charCode;
+
+ var characters = String.fromCharCode(charCode),
+ charactersIgnoringModifiers = characters.toLowerCase();
+
+ event = [CPEvent keyEventWithType:CPKeyDown location:location modifierFlags:modifierFlags
+ timestamp:timestamp windowNumber:windowNumber context:nil
+ characters:characters charactersIgnoringModifiers:charactersIgnoringModifiers isARepeat:isARepeat keyCode:keyCode];
+
+ if (isNativePasteEvent)
+ {
+ _pasteboardKeyDownEvent = event;
+
+ window.setNativeTimeout(function () { [self _checkPasteboardElement] }, 0);
+
+ return;
+ }
+
+ break;
+
+ case "keyup": var keyCode = aDOMEvent.keyCode,
+ charCode = _charCodes[keyCode];
+
+ _charCodes[keyCode] = nil;
+
+ var characters = String.fromCharCode(charCode),
+ charactersIgnoringModifiers = characters.toLowerCase();
+
+ if (!(modifierFlags & CPShiftKeyMask))
+ characters = charactersIgnoringModifiers;
+
+ event = [CPEvent keyEventWithType:CPKeyUp location:location modifierFlags:modifierFlags
+ timestamp: timestamp windowNumber:windowNumber context:nil
+ characters:characters charactersIgnoringModifiers:charactersIgnoringModifiers isARepeat:NO keyCode:keyCode];
+ break;
+ }
+
+ if (event)
+ {
+ event._DOMEvent = aDOMEvent;
+
+ [CPApp sendEvent:event];
+
+ if (isNativeCopyOrCutEvent)
+ {
+ var pasteboard = [CPPasteboard generalPasteboard],
+ types = [pasteboard types];
+
+ // If this is a native copy event, then check if the pasteboard has anything in it.
+ if (types.length)
+ {
+ if ([types indexOfObjectIdenticalTo:CPStringPboardType] != CPNotFound)
+ _DOMPasteboardElement.value = [pasteboard stringForType:CPStringPboardType];
+ else
+ _DOMPasteboardElement.value = [pasteboard _generateStateUID];
+
+ _DOMPasteboardElement.select();
+
+ window.setNativeTimeout(function() { [self _clearPasteboardElement]; }, 0);
+ }
+
+ return;
+ }
+ }
+
+ if (StopDOMEventPropagation)
+ CPDOMEventStop(aDOMEvent);
+
+ [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode];
+
+}
+
+- (void)scrollEvent:(DOMEvent)aDOMEvent
+{
+ if(!aDOMEvent)
+ aDOMEvent = window.event;
+
+ if (CPFeatureIsCompatible(CPJavaScriptMouseWheelValues_8_15))
+ {
+ var x = 0.0,
+ y = 0.0,
+ element = aDOMEvent.target;
+
+ while (element.nodeType !== 1)
+ element = element.parentNode;
+
+ if (element.offsetParent)
+ {
+ do
+ {
+ x += element.offsetLeft;
+ y += element.offsetTop;
+
+ } while (element = element.offsetParent);
+ }
+
+ var location = _CGPointMake((x + ((aDOMEvent.clientX - 8) / 15)), (y + ((aDOMEvent.clientY - 8) / 15)));
+ }
+ else
+ var location = _CGPointMake(aDOMEvent.clientX, aDOMEvent.clientY);
+
+ var deltaX = 0.0,
+ deltaY = 0.0,
+ windowNumber = 0,
+ timestamp = aDOMEvent.timeStamp ? aDOMEvent.timeStamp : new Date(),
+ modifierFlags = (aDOMEvent.shiftKey ? CPShiftKeyMask : 0) |
+ (aDOMEvent.ctrlKey ? CPControlKeyMask : 0) |
+ (aDOMEvent.altKey ? CPAlternateKeyMask : 0) |
+ (aDOMEvent.metaKey ? CPCommandKeyMask : 0);
+
+ StopDOMEventPropagation = YES;
+
+ windowNumber = [[self hitTest:location] windowNumber];
+
+ if (!windowNumber)
+ return;
+
+ var windowFrame = CPApp._windows[windowNumber]._frame;
+
+ location.x -= CGRectGetMinX(windowFrame);
+ location.y -= CGRectGetMinY(windowFrame);
+
+ if(typeof aDOMEvent.wheelDeltaX != "undefined")
+ {
+ deltaX = aDOMEvent.wheelDeltaX / 120.0;
+ deltaY = aDOMEvent.wheelDeltaY / 120.0;
+ }
+
+ else if (aDOMEvent.wheelDelta)
+ deltaY = aDOMEvent.wheelDelta / 120.0;
+
+ else if (aDOMEvent.detail)
+ deltaY = -aDOMEvent.detail / 3.0;
+
+ else
+ return;
+
+ if(!CPFeatureIsCompatible(CPJavaScriptNegativeMouseWheelValues))
+ {
+ deltaX = -deltaX;
+ deltaY = -deltaY;
+ }
+
+ var event = [CPEvent mouseEventWithType:CPScrollWheel location:location modifierFlags:modifierFlags
+ timestamp:timestamp windowNumber:windowNumber context:nil eventNumber:-1 clickCount:1 pressure:0 ];
+
+ event._DOMEvent = aDOMEvent;
+ event._deltaX = deltaX;
+ event._deltaY = deltaY;
+
+ [CPApp sendEvent:event];
+
+ if (StopDOMEventPropagation)
+ CPDOMEventStop(aDOMEvent);
+
+ [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode];
+}
+
+- (void)resizeEvent:(DOMEvent)aDOMEvent
+{
+ // FIXME: This is not the right way to do this.
+ // We should pay attention to mouse down and mouse up in conjunction with this.
+ //window.liveResize = YES;
+
+ var oldSize = [self contentRect].size;
+
+ [self updateFromNativeContentRect];
+
+ var levels = _windowLevels,
+ layers = _windowLayers,
+ levelCount = levels.length;
+
+ while (levelCount--)
+ {
+ var windows = [layers objectForKey:levels[levelCount]]._windows,
+ windowCount = windows.length;
+
+ while (windowCount--)
+ [windows[windowCount] resizeWithOldBridgeSize:oldSize];
+ }
+
+ //window.liveResize = NO;
+
+ [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode];
+}
+
+- (void)touchEvent:(DOMEvent)aDOMEvent
+{
+ if (aDOMEvent.touches && (aDOMEvent.touches.length == 1 || (aDOMEvent.touches.length == 0 && aDOMEvent.changedTouches.length == 1)))
+ {
+ var newEvent = {};
+
+ switch(aDOMEvent.type)
+ {
+ case CPDOMEventTouchStart: newEvent.type = CPDOMEventMouseDown;
+ break;
+ case CPDOMEventTouchEnd: newEvent.type = CPDOMEventMouseUp;
+ break;
+ case CPDOMEventTouchMove: newEvent.type = CPDOMEventMouseMoved;
+ break;
+ case CPDOMEventTouchCancel: newEvent.type = CPDOMEventMouseUp;
+ break;
+ }
+
+ var touch = aDOMEvent.touches.length ? aDOMEvent.touches[0] : aDOMEvent.changedTouches[0];
+
+ newEvent.clientX = touch.clientX;
+ newEvent.clientY = touch.clientY;
+
+ newEvent.timestamp = aDOMEvent.timestamp;
+ newEvent.target = aDOMEvent.target;
+
+ newEvent.shiftKey = newEvent.ctrlKey = newEvent.altKey = newEvent.metaKey = false;
+
+ newEvent.preventDefault = function(){if(aDOMEvent.preventDefault) aDOMEvent.preventDefault()};
+ newEvent.stopPropagation = function(){if(aDOMEvent.stopPropagation) aDOMEvent.stopPropagation()};
+
+ [self _bridgeMouseEvent:newEvent];
+
+ return;
+ }
+ else
+ {
+ if (aDOMEvent.preventDefault)
+ aDOMEvent.preventDefault();
+
+ if (aDOMEvent.stopPropagation)
+ aDOMEvent.stopPropagation();
+ }
+ // handle touch cases specifically
+}
+
+- (void)mouseEvent:(DOMEvent)aDOMEvent
+{
+ var type = _overriddenEventType || aDOMEvent.type;
+
+ // IE's event order is down, up, up, dblclick, so we have create these events artificially.
+ if (type === CPDOMEventDoubleClick)
+ {
+ _overriddenEventType = CPDOMEventMouseDown;
+ [self _bridgeMouseEvent:aDOMEvent];
+
+ _overriddenEventType = CPDOMEventMouseUp;
+ [self _bridgeMouseEvent:aDOMEvent];
+
+ _overriddenEventType = nil;
+
+ return;
+ }
+
+ var event,
+ location = _CGPointMake(aDOMEvent.clientX, aDOMEvent.clientY),
+ timestamp = aDOMEvent.timeStamp ? aDOMEvent.timeStamp : new Date(),
+ sourceElement = (aDOMEvent.target || aDOMEvent.srcElement),
+ windowNumber = 0,
+ modifierFlags = (aDOMEvent.shiftKey ? CPShiftKeyMask : 0) |
+ (aDOMEvent.ctrlKey ? CPControlKeyMask : 0) |
+ (aDOMEvent.altKey ? CPAlternateKeyMask : 0) |
+ (aDOMEvent.metaKey ? CPCommandKeyMask : 0);
+
+ StopDOMEventPropagation = YES;
+
+ if (_mouseDownWindow)
+ windowNumber = [_mouseDownWindow windowNumber];
+
+ else
+ {
+ var theWindow = [self hitTest:location];
+
+ if ((aDOMEvent.type === CPDOMEventMouseDown) && theWindow)
+ _mouseDownWindow = theWindow;
+
+ windowNumber = [theWindow windowNumber];
+ }
+
+ if (windowNumber)
+ {
+ var windowFrame = CPApp._windows[windowNumber]._frame;
+
+ location.x -= _CGRectGetMinX(windowFrame);
+ location.y -= _CGRectGetMinY(windowFrame);
+ }
+
+ if (type === "mouseup")
+ {
+ if(_mouseIsDown)
+ {
+ event = _CPEventFromNativeMouseEvent(aDOMEvent, CPLeftMouseUp, location, modifierFlags, timestamp, windowNumber, nil, -1, CPDOMEventGetClickCount(_lastMouseUp, timestamp, location), 0);
+
+ _mouseIsDown = NO;
+ _lastMouseUp = event;
+ _mouseDownWindow = nil;
+ }
+
+ if(_DOMEventMode)
+ {
+ _DOMEventMode = NO;
+ return;
+ }
+ }
+
+ else if (type === "mousedown")
+ {
+ if (ExcludedDOMElements[sourceElement.tagName] && sourceElement != _DOMFocusElement)
+ {
+ _DOMEventMode = YES;
+ _mouseIsDown = YES;
+
+ //fake a down and up event so that event tracking mode will work correctly
+ [CPApp sendEvent:[CPEvent mouseEventWithType:CPLeftMouseDown location:location modifierFlags:modifierFlags
+ timestamp:timestamp windowNumber:windowNumber context:nil eventNumber:-1
+ clickCount:CPDOMEventGetClickCount(_lastMouseDown, timestamp, location) pressure:0]];
+
+ [CPApp sendEvent:[CPEvent mouseEventWithType:CPLeftMouseUp location:location modifierFlags:modifierFlags
+ timestamp:timestamp windowNumber:windowNumber context:nil eventNumber:-1
+ clickCount:CPDOMEventGetClickCount(_lastMouseDown, timestamp, location) pressure:0]];
+
+ return;
+ }
+
+ event = _CPEventFromNativeMouseEvent(aDOMEvent, CPLeftMouseDown, location, modifierFlags, timestamp, windowNumber, nil, -1, CPDOMEventGetClickCount(_lastMouseDown, timestamp, location), 0);
+
+ _mouseIsDown = YES;
+ _lastMouseDown = event;
+ }
+
+ else // if (type === "mousemove")
+ {
+ if (_DOMEventMode)
+ return;
+
+ event = _CPEventFromNativeMouseEvent(aDOMEvent, _mouseIsDown ? CPLeftMouseDragged : CPMouseMoved, location, modifierFlags, timestamp, windowNumber, nil, -1, 1, 0);
+ }
+
+ if (event)
+ {
+ event._DOMEvent = aDOMEvent;
+
+ [CPApp sendEvent:event];
+ }
+
+ if (StopDOMEventPropagation)
+ CPDOMEventStop(aDOMEvent);
+
+ [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode];
+}
+
+ (CPArray)orderedWindowsAtLevel:(int)aLevel
+{
+ var layer = [self layerAtLevel:aLevel create:NO];
+
+ if (!layer)
+ return [];
+
+ return [layer orderedWindows];
+}
+
+- (CPDOMWindowLayer)layerAtLevel:(int)aLevel create:(BOOL)aFlag
+{
+ var layer = [_windowLayers objectForKey:aLevel];
+
+ // If the layer doesn't currently exist, and the create flag is true,
+ // create the layer.
+ if (!layer && aFlag)
+ {
+ layer = [[CPDOMWindowLayer alloc] initWithLevel:aLevel];
+
+ [_windowLayers setObject:layer forKey:aLevel];
+
+ // Find the nearest layer. This is similar to a binary search,
+ // only we know we won't find the value.
+ var low = 0,
+ high = _windowLevels.length - 1,
+ middle;
+
+ while (low <= high)
+ {
+ middle = FLOOR((low + high) / 2);
+
+ if (_windowLevels[middle] > aLevel)
+ high = middle - 1;
+ else
+ low = middle + 1;
+ }
+
+ [_windowLevels insertObject:aLevel atIndex:_windowLevels[middle] > aLevel ? middle : middle + 1];
+ layer._DOMElement.style.zIndex = aLevel;
+ _DOMBodyElement.appendChild(layer._DOMElement);
+ }
+
+ return layer;
+}
+
+- (void)order:(CPWindowOrderingMode)aPlace window:(CPWindow)aWindow relativeTo:(CPWindow)otherWindow
+{
+ // Grab the appropriate level for the layer, and create it if
+ // necessary (if we are not simply removing the window).
+ var layer = [self layerAtLevel:[aWindow level] create:aPlace != CPWindowOut];
+
+ // Ignore otherWindow, simply remove this window from it's level.
+ // If layer is nil, this will be a no-op.
+ if (aPlace == CPWindowOut)
+ return [layer removeWindow:aWindow];
+
+ // Place the window at the appropriate index.
+ [layer insertWindow:aWindow atIndex:(otherWindow ? (aPlace == CPWindowAbove ? otherWindow._index + 1 : otherWindow._index) : CPNotFound)];
+}
+
+/* @ignore */
+- (id)_dragHitTest:(CPPoint)aPoint pasteboard:(CPPasteboard)aPasteboard
+{
+ var levels = _windowLevels,
+ layers = _windowLayers,
+ levelCount = levels.length;
+
+ while (levelCount--)
+ {
+ // Skip any windows above or at the dragging level.
+ if (levels[levelCount] >= CPDraggingWindowLevel)
+ continue;
+
+ var windows = [layers objectForKey:levels[levelCount]]._windows,
+ windowCount = windows.length;
+
+ while (windowCount--)
+ {
+ var theWindow = windows[windowCount];
+
+ if ([theWindow containsPoint:aPoint])
+ return [theWindow _dragHitTest:aPoint pasteboard:aPasteboard];
+ }
+ }
+
+ return nil;
+}
+
+/* @ignore */
+- (void)_propagateCurrentDOMEvent:(BOOL)aFlag
+{
+ StopDOMEventPropagation = !aFlag;
+}
+
+- (CPWindow)hitTest:(CPPoint)location
+{
+ var levels = _windowLevels,
+ layers = _windowLayers,
+ levelCount = levels.length,
+ theWindow = nil;
+
+ while (levelCount-- && !theWindow)
+ {
+ var windows = [layers objectForKey:levels[levelCount]]._windows,
+ windowCount = windows.length;
+
+ while (windowCount-- && !theWindow)
+ {
+ var candidateWindow = windows[windowCount];
+
+ if (!candidateWindow._ignoresMouseEvents && [candidateWindow containsPoint:location])
+ theWindow = candidateWindow;
+ }
+ }
+
+ return theWindow;
+}
+
+- (void)_checkPasteboardElement
+{
+ var value = _DOMPasteboardElement.value;
+
+ if ([value length])
+ {
+ var pasteboard = [CPPasteboard generalPasteboard];
+
+ if ([pasteboard _stateUID] != value)
+ {
+ [pasteboard declareTypes:[CPStringPboardType] owner:self];
+
+ [pasteboard setString:value forType:CPStringPboardType];
+ }
+ }
+
+ [self _clearPasteboardElement];
+
+ [CPApp sendEvent:_pasteboardKeyDownEvent];
+
+ _pasteboardKeyDownEvent = nil;
+
+ [[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode];
+}
+
+- (void)_clearPasteboardElement
+{
+ _DOMPasteboardElement.value = "";
+ _DOMPasteboardElement.blur();
+}
+
+/*!
+ When using command (mac) or control (windows), keys are propagated to the browser by default.
+ To prevent a character key from propagating (to prevent its default action, and instead use it
+ in your own application), use these methods. These methods are additive -- the list builds until you clear it.
+
+ @param characters a list of characters to stop propagating keypresses to the browser.
+*/
+- (void)preventCharacterKeysFromPropagating:(CPArray)characters
+{
+ for(var i=characters.length; i>0; i--)
+ CharacterKeysToPrevent[""+characters[i-1].toLowerCase()] = YES;
+}
+
+/*!
+ @param character a character to stop propagating keypresses to the browser.
+*/
+- (void)preventCharacterKeyFromPropagating:(CPString)character
+{
+ CharacterKeysToPrevent[character.toLowerCase()] = YES;
+}
+
+/*!
+ Clear the list of characters for which we are not sending keypresses to the browser.
+*/
+- (void)clearCharacterKeysToPreventFromPropagating
+{
+ CharacterKeysToPrevent = {};
+}
+
+/*!
+ Prevent these keyCodes from sending their keypresses to the browser.
+ @param keyCodes an array of keycodes to prevent propagation.
+*/
+- (void)preventKeyCodesFromPropagating:(CPArray)keyCodes
+{
+ for(var i=keyCodes.length; i>0; i--)
+ KeyCodesToPrevent[keyCodes[i-1]] = YES;
+}
+
+/*!
+ Prevent this keyCode from sending its key events to the browser.
+ @param keyCode a keycode to prevent propagation.
+*/
+- (void)preventKeyCodeFromPropagating:(CPString)keyCode
+{
+ KeyCodesToPrevent[keyCode] = YES;
+}
+
+/*!
+ Clear the list of keyCodes for which we are not sending keypresses to the browser.
+*/
+- (void)clearKeyCodesToPreventFromPropagating
+{
+ KeyCodesToPrevent = {};
+}
+
+
+@end
+
+var CPEventClass = [CPEvent class];
+
+var _CPEventFromNativeMouseEvent = function(aNativeEvent, anEventType, aPoint, modifierFlags, aTimestamp, aWindowNumber, aGraphicsContext, anEventNumber, aClickCount, aPressure)
+{
+ aNativeEvent.isa = CPEventClass;
+
+ aNativeEvent._type = anEventType;
+ aNativeEvent._location = aPoint;
+ aNativeEvent._modifierFlags = modifierFlags;
+ aNativeEvent._timestamp = aTimestamp;
+ aNativeEvent._windowNumber = aWindowNumber;
+ aNativeEvent._window = nil;
+ aNativeEvent._context = aGraphicsContext;
+ aNativeEvent._eventNumber = anEventNumber;
+ aNativeEvent._clickCount = aClickCount;
+ aNativeEvent._pressure = aPressure;
+
+ return aNativeEvent;
+}
+
+var CLICK_SPACE_DELTA = 5.0,
+ CLICK_TIME_DELTA = (typeof document != "undefined" && document.addEventListener) ? 350.0 : 1000.0;
+
+var CPDOMEventGetClickCount = function(aComparisonEvent, aTimestamp, aLocation)
+{
+ if (!aComparisonEvent)
+ return 1;
+
+ var comparisonLocation = [aComparisonEvent locationInWindow];
+
+ return (aTimestamp - [aComparisonEvent timestamp] < CLICK_TIME_DELTA &&
+ ABS(comparisonLocation.x - aLocation.x) < CLICK_SPACE_DELTA &&
+ ABS(comparisonLocation.y - aLocation.y) < CLICK_SPACE_DELTA) ? [aComparisonEvent clickCount] + 1 : 1;
+}
+
+var CPDOMEventStop = function(aDOMEvent)
+{
+ // IE Model
+ aDOMEvent.cancelBubble = true;
+ aDOMEvent.returnValue = false;
+
+ // W3C Model
+ if (aDOMEvent.preventDefault)
+ aDOMEvent.preventDefault();
+
+ if (aDOMEvent.stopPropagation)
+ aDOMEvent.stopPropagation();
+
+ if (aDOMEvent.type === CPDOMEventMouseDown)
+ {
+ CPSharedDOMWindowBridge._DOMFocusElement.focus();
+ CPSharedDOMWindowBridge._DOMFocusElement.blur();
+ }
+}
+
+function CPWindowObjectList()
+{
+ var bridge = [CPDOMWindowBridge sharedDOMWindowBridge],
+ levels = bridge._windowLevels,
+ layers = bridge._windowLayers,
+ levelCount = levels.length,
+ windowObjects = [];
+
+ while (levelCount--)
+ {
+ var windows = [layers objectForKey:levels[levelCount]]._windows,
+ windowCount = windows.length;
+
+ while (windowCount--)
+ windowObjects.push(windows[windowCount]);
+ }
+
+ return windowObjects;
+}
+
+function CPWindowList()
+{
+ var bridge = [CPDOMWindowBridge sharedDOMWindowBridge],
+ levels = bridge._windowLevels,
+ layers = bridge._windowLayers,
+ levelCount = levels.length,
+ windowNumbers = [];
+
+ while (levelCount--)
+ {
+ var windows = [layers objectForKey:levels[levelCount]]._windows,
+ windowCount = windows.length;
+
+ while (windowCount--)
+ windowNumbers.push([windows[windowCount] windowNumber]);
+ }
+
+ return windowNumbers;
+}
From e69d770583c3d0db987717fb110e9fad84f58bd7 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sat, 25 Jul 2009 17:10:48 -0700
Subject: [PATCH 102/244] Further deprecation of CPDOMWindowBridge.
Reviewed by me.
---
AppKit/CPWindow/CPWindow.j | 77 +++++--------------------
AppKit/Platform/CPPlatformWindow.j | 26 +++++++++
AppKit/Platform/DOM/CPDOMWindowBridge.j | 14 +----
AppKit/Platform/DOM/_CPDOMWindow.j | 12 ++--
4 files changed, 49 insertions(+), 80 deletions(-)
diff --git a/AppKit/CPWindow/CPWindow.j b/AppKit/CPWindow/CPWindow.j
index b3499c575..3c0134cb5 100644
--- a/AppKit/CPWindow/CPWindow.j
+++ b/AppKit/CPWindow/CPWindow.j
@@ -236,6 +236,8 @@ var CPWindowSaveImage = nil,
*/
@implementation CPWindow : CPResponder
{
+ CPPlatformWindow _platformWindow;
+
int _windowNumber;
unsigned _styleMask;
CGRect _frame;
@@ -290,7 +292,7 @@ var CPWindowSaveImage = nil,
#if PLATFORM(DOM)
DOMElement _DOMElement;
#endif
- CPDOMWindowBridge _bridge;
+
unsigned _autoresizingMask;
BOOL _delegateRespondsToWindowWillReturnUndoManagerSelector;
@@ -329,37 +331,13 @@ CPTexturedBackgroundWindowMask
@return the initialized window
*/
- (id)initWithContentRect:(CGRect)aContentRect styleMask:(unsigned int)aStyleMask
-{
-#if PLATFORM(DOM)
- return [self initWithContentRect:aContentRect styleMask:aStyleMask bridge:[CPDOMWindowBridge sharedDOMWindowBridge]];
-#else
- return [self initWithContentRect:aContentRect styleMask:aStyleMask bridge:nil];
-#endif
-}
-
-/*!
- Initializes the window. The method also takes a style bit mask made up
- of any of the following values:
-
-CPBorderlessWindowMask
-CPTitledWindowMask
-CPClosableWindowMask
-CPMiniaturizableWindowMask
-CPResizableWindowMask
-CPTexturedBackgroundWindowMask
-
- @param aContentRect the size and location of the window in screen space
- @param aStyleMask a style mask
- @param aBridge a DOM-Window bridge object
- @return the initialized window
- @ignore
-*/
-- (id)initWithContentRect:(CGRect)aContentRect styleMask:(unsigned int)aStyleMask bridge:(CPDOMWindowBridge)aBridge
{
self = [super init];
if (self)
{
+ _platformWindow = window.firstWindow;
+
_isFullBridge = NO;
_registeredDraggedTypes = [CPSet set];
_registeredDraggedTypesArray = [];
@@ -403,8 +381,6 @@ CPTexturedBackgroundWindowMask
CPDOMDisplayServerAppendChild(_DOMElement, _windowView._DOMElement);
#endif
- [self setBridge:aBridge];
-
[self setNextResponder:CPApp];
[self setHasShadow:aStyleMask !== CPBorderlessWindowMask];
@@ -504,7 +480,7 @@ CPTexturedBackgroundWindowMask
[self setLevel:CPBackgroundWindowLevel];
[self setHasShadow:NO];
[self setAutoresizingMask:CPWindowWidthSizable | CPWindowHeightSizable];
- [self setFrame:[_bridge visibleFrame]];
+ [self setFrame:[_platformWindow usableContentFrame]];
}
else
{
@@ -650,7 +626,7 @@ CPTexturedBackgroundWindowMask
*/
- (void)orderFront:(id)aSender
{
- [_bridge order:CPWindowAbove window:self relativeTo:nil];
+ [_platformWindow order:CPWindowAbove window:self relativeTo:nil];
}
/*
@@ -660,7 +636,7 @@ CPTexturedBackgroundWindowMask
*/
- (void)orderBack:(id)aSender
{
- //[_bridge order:CPWindowBelow
+ //[_platformWindow order:CPWindowBelow
}
/*!
@@ -672,7 +648,7 @@ CPTexturedBackgroundWindowMask
if ([_delegate respondsToSelector:@selector(windowWillClose:)])
[_delegate windowWillClose:self];
- [_bridge order:CPWindowOut window:self relativeTo:nil];
+ [_platformWindow order:CPWindowOut window:self relativeTo:nil];
if ([CPApp keyWindow] == self)
{
@@ -689,7 +665,7 @@ CPTexturedBackgroundWindowMask
*/
- (void)orderWindow:(CPWindowOrderingMode)aPlace relativeTo:(int)otherWindowNumber
{
- [_bridge order:aPlace window:self relativeTo:CPApp._windows[otherWindowNumber]];
+ [_platformWindow order:aPlace window:self relativeTo:CPApp._windows[otherWindowNumber]];
}
/*!
@@ -1154,9 +1130,9 @@ CPTexturedBackgroundWindowMask
- (void)center
{
var size = [self frame].size,
- bridgeSize = [_bridge contentBounds].size;
+ containerSize = [_platformWindow contentBounds].size;
- [self setFrameOrigin:CGPointMake((bridgeSize.width - size.width) / 2.0, (bridgeSize.height - size.height) / 2.0)];
+ [self setFrameOrigin:CGPointMake((containerSize.width - size.width) / 2.0, (containerSize.height - size.height) / 2.0)];
}
/*!
@@ -1641,7 +1617,7 @@ CPTexturedBackgroundWindowMask
[_windowView noteToolbarChanged];
if (_isFullBridge)
- newFrame = [_bridge visibleFrame];
+ newFrame = [_platformWindow usableContentFrame];
else
{
newFrame = CGRectMakeCopy([self frame]);
@@ -1708,7 +1684,7 @@ CPTexturedBackgroundWindowMask
[self _setAttachedSheetFrameOrigin];
// Place this window above ourselves.
- [_bridge order:CPWindowAbove window:aSheet relativeTo:self];
+ [_platformWindow order:CPWindowAbove window:aSheet relativeTo:self];
}
/*!
@@ -1929,39 +1905,18 @@ var keyViewComparator = function(a, b, context)
@implementation CPWindow (BridgeSupport)
-/*
- Sets the DOM-Window bridge for this window.
- @ignore
-*/
-- (void)setBridge:(CPDOMWindowBridge)aBridge
-{
- if (_bridge == aBridge)
- return;
-
- if (_bridge)
- {
- [self orderOut:self];
- // FIXME: If the bridge changes, then we have to recreate all of our subviews' DOM Elements.
- }
-
- _bridge = aBridge;
-
- if ([self isFullBridge])
- [self setFrame:[aBridge contentBounds]];
-}
-
/*
@ignore
*/
- (void)resizeWithOldBridgeSize:(CGSize)aSize
{
if ([self isFullBridge])
- return [self setFrame:[_bridge visibleFrame]];
+ return [self setFrame:[_platformWindow usableContentFrame]];
if (_autoresizingMask == CPWindowNotSizable)
return;
- var frame = [_bridge contentBounds],
+ var frame = [_platformWindow contentBounds],
newFrame = CGRectMakeCopy(_frame),
dX = (CGRectGetWidth(frame) - aSize.width) /
(((_autoresizingMask & CPWindowMinXMargin) ? 1 : 0) + (_autoresizingMask & CPWindowWidthSizable ? 1 : 0) + (_autoresizingMask & CPWindowMaxXMargin ? 1 : 0)),
diff --git a/AppKit/Platform/CPPlatformWindow.j b/AppKit/Platform/CPPlatformWindow.j
index 04e35b808..74fecdb4d 100644
--- a/AppKit/Platform/CPPlatformWindow.j
+++ b/AppKit/Platform/CPPlatformWindow.j
@@ -50,6 +50,32 @@ var PlatformWindowClass = NULL;
return _CGRectMakeCopy(_contentRect);
}
+- (CGRect)contentBounds
+{
+ var contentBounds = [self contentRect];
+
+ contentBounds.origin = _CGPointMakeZero();
+
+ return contentBounds;
+}
+
+- (void)usableContentFrame
+{
+ var frame = [self contentBounds];
+
+ frame.origin = CGPointMakeZero();
+
+ if ([CPMenu menuBarVisible])
+ {
+ var menuBarHeight = [[CPApp mainMenu] menuBarHeight];
+
+ frame.origin.y += menuBarHeight;
+ frame.size.height -= menuBarHeight;
+ }
+
+ return frame;
+}
+
- (void)setContentRect:(CGRect)aRect
{
if (!aRect || _CGRectEqualToRect(_contentRect, aRect))
diff --git a/AppKit/Platform/DOM/CPDOMWindowBridge.j b/AppKit/Platform/DOM/CPDOMWindowBridge.j
index 78f6fe640..f6afe1168 100644
--- a/AppKit/Platform/DOM/CPDOMWindowBridge.j
+++ b/AppKit/Platform/DOM/CPDOMWindowBridge.j
@@ -73,19 +73,7 @@ var CPDOMWindowGetFrame,
- (CGRect)visibleFrame
{
- var frame = [self contentBounds];
-
- frame.origin = CGPointMakeZero();
-
- if ([CPMenu menuBarVisible])
- {
- var menuBarHeight = [[CPApp mainMenu] menuBarHeight];
-
- frame.origin.y += menuBarHeight;
- frame.size.height -= menuBarHeight;
- }
-
- return frame;
+ return [window.firstWindow usableContentFrame];
}
- (CPRect)contentBounds
diff --git a/AppKit/Platform/DOM/_CPDOMWindow.j b/AppKit/Platform/DOM/_CPDOMWindow.j
index d8a3b2c0b..38b18faa2 100644
--- a/AppKit/Platform/DOM/_CPDOMWindow.j
+++ b/AppKit/Platform/DOM/_CPDOMWindow.j
@@ -477,7 +477,7 @@ var CTRL_KEY_CODE = 17;
}
if (StopDOMEventPropagation)
- CPDOMEventStop(aDOMEvent);
+ CPDOMEventStop(aDOMEvent, self);
[[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode];
@@ -564,7 +564,7 @@ var CTRL_KEY_CODE = 17;
[CPApp sendEvent:event];
if (StopDOMEventPropagation)
- CPDOMEventStop(aDOMEvent);
+ CPDOMEventStop(aDOMEvent, self);
[[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode];
}
@@ -753,7 +753,7 @@ var CTRL_KEY_CODE = 17;
}
if (StopDOMEventPropagation)
- CPDOMEventStop(aDOMEvent);
+ CPDOMEventStop(aDOMEvent, self);
[[CPRunLoop currentRunLoop] limitDateForMode:CPDefaultRunLoopMode];
}
@@ -1002,7 +1002,7 @@ var CPDOMEventGetClickCount = function(aComparisonEvent, aTimestamp, aLocation)
ABS(comparisonLocation.y - aLocation.y) < CLICK_SPACE_DELTA) ? [aComparisonEvent clickCount] + 1 : 1;
}
-var CPDOMEventStop = function(aDOMEvent)
+var CPDOMEventStop = function(aDOMEvent, aPlatformWindow)
{
// IE Model
aDOMEvent.cancelBubble = true;
@@ -1017,8 +1017,8 @@ var CPDOMEventStop = function(aDOMEvent)
if (aDOMEvent.type === CPDOMEventMouseDown)
{
- CPSharedDOMWindowBridge._DOMFocusElement.focus();
- CPSharedDOMWindowBridge._DOMFocusElement.blur();
+ aPlatformWindow._DOMFocusElement.focus();
+ aPlatformWindow._DOMFocusElement.blur();
}
}
From ae7fbad2b977607082b65fa15c15a159049a36a0 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sun, 26 Jul 2009 01:34:16 -0700
Subject: [PATCH 103/244] Fix for dom layer.
Reviewed by me.
---
AppKit/Platform/DOM/CPDOMWindowLayer.j | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/AppKit/Platform/DOM/CPDOMWindowLayer.j b/AppKit/Platform/DOM/CPDOMWindowLayer.j
index bb5c5c882..3d6f3dede 100644
--- a/AppKit/Platform/DOM/CPDOMWindowLayer.j
+++ b/AppKit/Platform/DOM/CPDOMWindowLayer.j
@@ -115,7 +115,7 @@
aWindow._isVisible = YES;
if ([aWindow isFullBridge])
- [aWindow setFrame:[aWindow._bridge visibleFrame]];
+ [aWindow setFrame:[aWindow._platformWindow usableContentFrame]];
}
}
From d53207efd511b7994c08f669d5a97ccebf6942ce Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sun, 26 Jul 2009 12:52:24 -0700
Subject: [PATCH 104/244] Furhter platform window support.
Reviewed by me.
---
AppKit/CPWindow/CPWindow.j | 3 +++
AppKit/Platform/CPPlatformWindow.j | 8 ++++++++
2 files changed, 11 insertions(+)
diff --git a/AppKit/CPWindow/CPWindow.j b/AppKit/CPWindow/CPWindow.j
index 3c0134cb5..b83b7446e 100644
--- a/AppKit/CPWindow/CPWindow.j
+++ b/AppKit/CPWindow/CPWindow.j
@@ -626,6 +626,9 @@ CPTexturedBackgroundWindowMask
*/
- (void)orderFront:(id)aSender
{
+ if (![_platformWindow isVisible])
+ [_platformWindow orderFront:self];
+
[_platformWindow order:CPWindowAbove window:self relativeTo:nil];
}
diff --git a/AppKit/Platform/CPPlatformWindow.j b/AppKit/Platform/CPPlatformWindow.j
index 74fecdb4d..d9beb54e6 100644
--- a/AppKit/Platform/CPPlatformWindow.j
+++ b/AppKit/Platform/CPPlatformWindow.j
@@ -118,6 +118,14 @@ var PlatformWindowClass = NULL;
[self setContentRect:[self nativeContentRect]];
}
+- (BOOL)isVisible
+{
+#if PLATFORM(DOM)
+ return _DOMWindow !== NULL;
+#endif
+ return NO;
+}
+
@end
#if PLATFORM(BROWSER)
From 4f4a488762705769be6a608ffb4830567dfa6795 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sun, 26 Jul 2009 15:28:41 -0700
Subject: [PATCH 105/244] Remove debugger command in CPPopUpButton that breaks
Release builds.
Reviewed by me.
---
AppKit/CPPopUpButton.j | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/AppKit/CPPopUpButton.j b/AppKit/CPPopUpButton.j
index 47d7e2176..526a1cb4d 100644
--- a/AppKit/CPPopUpButton.j
+++ b/AppKit/CPPopUpButton.j
@@ -550,7 +550,7 @@ CPPopUpButtonStatePullsDown = CPThemeState("pulls-down");
- (void)synchronizeTitleAndSelectedItem
{
var item = nil;
-debugger;
+
if ([self pullsDown])
{
var items = [_menu itemArray];
From 5ce96b45bb8ca28f3424bf8ddfb06d8745e08af1 Mon Sep 17 00:00:00 2001
From: Ross Boucher
Date: Sun, 26 Jul 2009 22:46:22 -0700
Subject: [PATCH 106/244] Slight performance improvement and memory improvement
by moving the storage of KVO proxy objects.
---
Foundation/CPKeyValueObserving.j | 32 ++++++++++++++------------------
1 file changed, 14 insertions(+), 18 deletions(-)
diff --git a/Foundation/CPKeyValueObserving.j b/Foundation/CPKeyValueObserving.j
index 7a1d575ae..5c57449a2 100644
--- a/Foundation/CPKeyValueObserving.j
+++ b/Foundation/CPKeyValueObserving.j
@@ -58,7 +58,7 @@
if (!anObserver || !aPath)
return;
- [[KVOProxyMap objectForKey:[self UID]] _removeObserver:anObserver forKeyPath:aPath];
+ [self[KVOProxyKey] _removeObserver:anObserver forKeyPath:aPath];
}
+ (BOOL)automaticallyNotifiesObserversForKey:(CPString)aKey
@@ -98,12 +98,9 @@ CPKeyValueChangeInsertion = 2;
CPKeyValueChangeRemoval = 3;
CPKeyValueChangeReplacement = 4;
-//convenience
-var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld;
-
-// Map of real objects to their KVO proxy
-var KVOProxyMap = [CPDictionary dictionary],
- DependentKeysMap = [CPDictionary dictionary];
+var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
+ DependentKeysMap = [CPDictionary dictionary],
+ KVOProxyKey = "$KVOPROXY";
//rule of thumb: _ methods are called on the real proxy object, others are called on the "fake" proxy object (aka the real object)
@@ -119,7 +116,7 @@ var KVOProxyMap = [CPDictionary dictionary],
+ (id)proxyForObject:(CPObject)anObject
{
- var proxy = [KVOProxyMap objectForKey:[anObject UID]];
+ var proxy = anObject[KVOProxyKey];
if (proxy)
return proxy;
@@ -128,7 +125,7 @@ var KVOProxyMap = [CPDictionary dictionary],
[proxy _replaceClass];
- [KVOProxyMap setObject:proxy forKey:[anObject UID]];
+ anObject[KVOProxyKey] = proxy;
return proxy;
}
@@ -205,9 +202,10 @@ var KVOProxyMap = [CPDictionary dictionary],
}
}
- var affectingKeys = [[_nativeClass keyPathsForValuesAffectingValueForKey:aKey] allObjects];
+ var affectingKeys = [[_nativeClass keyPathsForValuesAffectingValueForKey:aKey] allObjects],
+ affectingKeysCount = affectingKeys ? affectingKeys.length : 0;
- if (![affectingKeys count])
+ if (!affectingKeysCount)
return;
var dependentKeysForClass = [DependentKeysMap objectForKey:[_nativeClass UID]];
@@ -218,11 +216,9 @@ var KVOProxyMap = [CPDictionary dictionary],
[DependentKeysMap setObject:dependentKeysForClass forKey:[_nativeClass UID]];
}
- var count = [affectingKeys count];
-
- while (count--)
+ while (affectingKeysCount--)
{
- var affectingKey = affectingKeys[count],
+ var affectingKey = affectingKeys[affectingKeysCount],
affectedKeys = [dependentKeysForClass objectForKey:affectingKey];
if (!affectedKeys)
@@ -288,7 +284,7 @@ var KVOProxyMap = [CPDictionary dictionary],
if (![_observersForKey count])
{
_targetObject.isa = _nativeClass; //restore the original class
- [KVOProxyMap removeObjectForKey:[_targetObject UID]];
+ delete _targetObject[KVOProxyKey];
}
}
@@ -360,7 +356,7 @@ var KVOProxyMap = [CPDictionary dictionary],
}
var observers = [[_observersForKey objectForKey:aKey] allValues],
- count = [observers count];
+ count = observers ? observers.length : 0;
while (count--)
{
@@ -425,7 +421,7 @@ var KVOProxyMap = [CPDictionary dictionary],
- (Class)class
{
- return [KVOProxyMap objectForKey:[self UID]]._nativeClass;
+ return self[KVOProxyKey]._nativeClass;
}
- (Class)superclass
From 43706041658e36ef8338c0c0bf515bad1c7d0bba Mon Sep 17 00:00:00 2001
From: Ross Boucher
Date: Sun, 26 Jul 2009 23:40:52 -0700
Subject: [PATCH 107/244] Remove several CPDictionaries in favor of Objects,
about a 15% performance gain.
---
Foundation/CPKeyValueObserving.j | 47 ++++++++++++++++++++------------
1 file changed, 29 insertions(+), 18 deletions(-)
diff --git a/Foundation/CPKeyValueObserving.j b/Foundation/CPKeyValueObserving.j
index 5c57449a2..897702537 100644
--- a/Foundation/CPKeyValueObserving.j
+++ b/Foundation/CPKeyValueObserving.j
@@ -99,7 +99,7 @@ CPKeyValueChangeRemoval = 3;
CPKeyValueChangeReplacement = 4;
var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
- DependentKeysMap = [CPDictionary dictionary],
+ DependentKeysMap = {},
KVOProxyKey = "$KVOPROXY";
//rule of thumb: _ methods are called on the real proxy object, others are called on the "fake" proxy object (aka the real object)
@@ -110,7 +110,8 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
id _targetObject;
Class _nativeClass;
CPDictionary _changesForKey;
- CPDictionary _observersForKey;
+ Object _observersForKey;
+ int _observersForKeyLength;
CPSet _replacedKeys;
}
@@ -136,9 +137,10 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
_targetObject = aTarget;
_nativeClass = [aTarget class];
- _observersForKey = [CPDictionary dictionary];
- _changesForKey = [CPDictionary dictionary];
_replacedKeys = [CPSet set];
+ _observersForKey = {};
+ _changesForKey = {};
+ _observersForKeyLength = 0;
return self;
}
@@ -208,23 +210,23 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
if (!affectingKeysCount)
return;
- var dependentKeysForClass = [DependentKeysMap objectForKey:[_nativeClass UID]];
+ var dependentKeysForClass = DependentKeysMap[[_nativeClass UID]];
if (!dependentKeysForClass)
{
- dependentKeysForClass = [CPDictionary new];
- [DependentKeysMap setObject:dependentKeysForClass forKey:[_nativeClass UID]];
+ dependentKeysForClass = {};
+ DependentKeysMap[[_nativeClass UID]] = dependentKeysForClass;
}
while (affectingKeysCount--)
{
var affectingKey = affectingKeys[affectingKeysCount],
- affectedKeys = [dependentKeysForClass objectForKey:affectingKey];
+ affectedKeys = dependentKeysForClass[affectingKey];
if (!affectedKeys)
{
affectedKeys = [CPSet new];
- [dependentKeysForClass setObject:affectedKeys forKey:affectingKey];
+ dependentKeysForClass[affectingKey] = affectedKeys;
}
[affectedKeys addObject:aKey];
@@ -244,12 +246,13 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
else
[self _replaceSetterForKey:aPath];
- var observers = [_observersForKey objectForKey:aPath];
+ var observers = _observersForKey[aPath];
if (!observers)
{
observers = [CPDictionary dictionary];
- [_observersForKey setObject:observers forKey:aPath];
+ _observersForKey[aPath] = observers;
+ _observersForKeyLength++;
}
[observers setObject:_CPKVOInfoMake(anObserver, options, aContext, forwarder) forKey:[anObserver UID]];
@@ -268,7 +271,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
- (void)_removeObserver:(id)anObserver forKeyPath:(CPString)aPath
{
- var observers = [_observersForKey objectForKey:aPath];
+ var observers = _observersForKey[aPath];
if (aPath.indexOf('.') != CPNotFound)
{
@@ -279,9 +282,12 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
[observers removeObjectForKey:[anObserver UID]];
if (![observers count])
- [_observersForKey removeObjectForKey:aPath];
+ {
+ _observersForKeyLength--;
+ delete _observersForKey[aPath];
+ }
- if (![_observersForKey count])
+ if (!_observersForKeyLength)
{
_targetObject.isa = _nativeClass; //restore the original class
delete _targetObject[KVOProxyKey];
@@ -292,7 +298,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
- (void)_sendNotificationsForKey:(CPString)aKey changeOptions:(CPDictionary)changeOptions isBefore:(BOOL)isBefore
{
- var changes = [_changesForKey objectForKey:aKey];
+ var changes = _changesForKey[aKey];
if (isBefore)
{
@@ -324,7 +330,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
[changes setObject:1 forKey:CPKeyValueChangeNotificationIsPriorKey];
- [_changesForKey setObject:changes forKey:aKey];
+ _changesForKey[aKey] = changes;
}
else
{
@@ -355,7 +361,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
}
}
- var observers = [[_observersForKey objectForKey:aKey] allValues],
+ var observers = [_observersForKey[aKey] allValues],
count = observers ? observers.length : 0;
while (count--)
@@ -368,7 +374,12 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
[observerInfo.observer observeValueForKeyPath:aKey ofObject:_targetObject change:changes context:observerInfo.context];
}
- var keysComposedOfKey = [[[DependentKeysMap objectForKey:[_nativeClass UID]] objectForKey:aKey] allObjects];
+ var dependentKeysMap = DependentKeysMap[[_nativeClass UID]];
+
+ if (!dependentKeysMap)
+ return;
+
+ var keysComposedOfKey = [dependentKeysMap[aKey] allObjects];
if (!keysComposedOfKey)
return;
From 0ef4e9bca5901602b9edc7519c54b48eccea3049 Mon Sep 17 00:00:00 2001
From: Ross Boucher
Date: Sun, 26 Jul 2009 23:56:18 -0700
Subject: [PATCH 108/244] store dependent keys on the class object itself,
rather than in a global map.
---
Foundation/CPKeyValueObserving.j | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/Foundation/CPKeyValueObserving.j b/Foundation/CPKeyValueObserving.j
index 897702537..a2c3fc2d5 100644
--- a/Foundation/CPKeyValueObserving.j
+++ b/Foundation/CPKeyValueObserving.j
@@ -99,7 +99,7 @@ CPKeyValueChangeRemoval = 3;
CPKeyValueChangeReplacement = 4;
var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
- DependentKeysMap = {},
+ DependentKeysKey = "$KVODEPENDENT",
KVOProxyKey = "$KVOPROXY";
//rule of thumb: _ methods are called on the real proxy object, others are called on the "fake" proxy object (aka the real object)
@@ -210,12 +210,12 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
if (!affectingKeysCount)
return;
- var dependentKeysForClass = DependentKeysMap[[_nativeClass UID]];
+ var dependentKeysForClass = _nativeClass[DependentKeysKey];
if (!dependentKeysForClass)
{
dependentKeysForClass = {};
- DependentKeysMap[[_nativeClass UID]] = dependentKeysForClass;
+ _nativeClass[DependentKeysKey] = dependentKeysForClass;
}
while (affectingKeysCount--)
@@ -374,7 +374,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
[observerInfo.observer observeValueForKeyPath:aKey ofObject:_targetObject change:changes context:observerInfo.context];
}
- var dependentKeysMap = DependentKeysMap[[_nativeClass UID]];
+ var dependentKeysMap = _nativeClass[DependentKeysKey];
if (!dependentKeysMap)
return;
From 756885fd534ad66720678bd37c6b0bb2a452449f Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sun, 26 Jul 2009 15:28:41 -0700
Subject: [PATCH 109/244] Remove debugger command in CPPopUpButton that breaks
Release builds.
Reviewed by me.
---
AppKit/CPPopUpButton.j | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/AppKit/CPPopUpButton.j b/AppKit/CPPopUpButton.j
index 47d7e2176..526a1cb4d 100644
--- a/AppKit/CPPopUpButton.j
+++ b/AppKit/CPPopUpButton.j
@@ -550,7 +550,7 @@ CPPopUpButtonStatePullsDown = CPThemeState("pulls-down");
- (void)synchronizeTitleAndSelectedItem
{
var item = nil;
-debugger;
+
if ([self pullsDown])
{
var items = [_menu itemArray];
From d2b1df88e8a28ea1fc53109609d7427fa96898c7 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sun, 26 Jul 2009 15:50:37 -0700
Subject: [PATCH 110/244] FIx for drag and drop without CPDOMWindowBridge.
Reviewed by me.
---
AppKit/CPDragServer.j | 11 +++++++++--
AppKit/CPWindow/CPWindow.j | 15 ++++++++++++---
AppKit/Platform/DOM/_CPDOMWindow.j | 3 +++
3 files changed, 24 insertions(+), 5 deletions(-)
diff --git a/AppKit/CPDragServer.j b/AppKit/CPDragServer.j
index f39524a61..39c4900fb 100644
--- a/AppKit/CPDragServer.j
+++ b/AppKit/CPDragServer.j
@@ -26,6 +26,7 @@
@import
#import "CoreGraphics/CGGeometry.h"
+#import "Platform/Platform.h"
#define DRAGGING_WINDOW(anObject) ([anObject isKindOfClass:[CPWindow class]] ? anObject : [anObject window])
@@ -241,14 +242,20 @@ var CPDragServerUpdateDragging = function(anEvent)
- (void)dragView:(CPView)aView fromWindow:(CPWindow)aWindow at:(CGPoint)viewLocation offset:(CGSize)mouseOffset event:(CPEvent)anEvent pasteboard:(CPPasteboard)aPasteboard source:(id)aSourceObject slideBack:(BOOL)slideBack
{
var eventLocation = [anEvent locationInWindow];
-
+
CPDragServerView = aView;
CPDragServerSource = aSourceObject;
CPDragServerWindow = aWindow;
CPDragServerOffset = CPPointMake(eventLocation.x - viewLocation.x, eventLocation.y - viewLocation.y);
CPDragServerPasteboard = [CPPasteboard pasteboardWithName:CPDragPboard];//aPasteboard;
- [_dragWindow setFrameSize:CGSizeMakeCopy([[CPDOMWindowBridge sharedDOMWindowBridge] frame].size)];
+#if PLATFORM(BROWSER)
+ var platformWindow = [aWindow platformWindow];
+
+ [_dragWindow setPlatformWindow:platformWindow];
+ [_dragWindow setFrameSize:[platformWindow contentBounds]];
+#endif
+
[_dragWindow orderFront:self];
[aView setFrameOrigin:viewLocation];
diff --git a/AppKit/CPWindow/CPWindow.j b/AppKit/CPWindow/CPWindow.j
index b83b7446e..dcc7fc2c9 100644
--- a/AppKit/CPWindow/CPWindow.j
+++ b/AppKit/CPWindow/CPWindow.j
@@ -395,6 +395,17 @@ CPTexturedBackgroundWindowMask
return self;
}
+- (CPPlatformWindow)platformWindow
+{
+ return _platformWindow;
+}
+
+- (void)setPlatformWindow:(CPPlatformWindow)aPlatformWindow
+{
+ // FIXME: already visible.
+ _platformWindow = aPlatformWindow;
+}
+
/*!
@ignore
*/
@@ -626,9 +637,7 @@ CPTexturedBackgroundWindowMask
*/
- (void)orderFront:(id)aSender
{
- if (![_platformWindow isVisible])
- [_platformWindow orderFront:self];
-
+ [_platformWindow orderFront:self];
[_platformWindow order:CPWindowAbove window:self relativeTo:nil];
}
diff --git a/AppKit/Platform/DOM/_CPDOMWindow.j b/AppKit/Platform/DOM/_CPDOMWindow.j
index 38b18faa2..1605ef941 100644
--- a/AppKit/Platform/DOM/_CPDOMWindow.j
+++ b/AppKit/Platform/DOM/_CPDOMWindow.j
@@ -254,6 +254,9 @@ var CTRL_KEY_CODE = 17;
theDocument.addEventListener("touchmove", touchEventCallback, NO);
theDocument.addEventListener("touchcancel", touchEventCallback, NO);
+ _DOMWindow.addEventListener("DOMMouseScroll", scrollEventCallback, NO);
+ _DOMWindow.addEventListener("mousewheel", scrollEventCallback, NO);
+
_DOMWindow.addEventListener("resize", resizeEventCallback, NO);
_DOMWindow.addEventListener("beforeunload", function()
From 4d179b1db70661cf589727016901c444b0a617b5 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sun, 26 Jul 2009 16:19:09 -0700
Subject: [PATCH 111/244] Remove global references to first window.
Reviewed by me.
---
AppKit/CPWindow/CPWindow.j | 2 +-
AppKit/Platform/CPPlatform.j | 2 +-
AppKit/Platform/CPPlatformWindow.j | 22 +++++++++++++++++++++-
AppKit/Platform/DOM/CPDOMWindowBridge.j | 16 ++++++++--------
4 files changed, 31 insertions(+), 11 deletions(-)
diff --git a/AppKit/CPWindow/CPWindow.j b/AppKit/CPWindow/CPWindow.j
index dcc7fc2c9..417f2fc9e 100644
--- a/AppKit/CPWindow/CPWindow.j
+++ b/AppKit/CPWindow/CPWindow.j
@@ -336,7 +336,7 @@ CPTexturedBackgroundWindowMask
if (self)
{
- _platformWindow = window.firstWindow;
+ [self setPlatformWindow:[CPPlatformWindow primaryPlatformWindow]];
_isFullBridge = NO;
_registeredDraggedTypes = [CPSet set];
diff --git a/AppKit/Platform/CPPlatform.j b/AppKit/Platform/CPPlatform.j
index e7db6ddb1..8a75b53ab 100644
--- a/AppKit/Platform/CPPlatform.j
+++ b/AppKit/Platform/CPPlatform.j
@@ -21,7 +21,7 @@
#endif
[CPPlatformString bootstrap];
- window.firstWindow = [[CPPlatformWindow alloc] _init];
+ [CPPlatformWindow setPrimaryPlatformWindow:[[CPPlatformWindow alloc] _init]];
}
@end
diff --git a/AppKit/Platform/CPPlatformWindow.j b/AppKit/Platform/CPPlatformWindow.j
index d9beb54e6..e0abdf130 100644
--- a/AppKit/Platform/CPPlatformWindow.j
+++ b/AppKit/Platform/CPPlatformWindow.j
@@ -5,13 +5,33 @@
#import "../CoreGraphics/CGGeometry.h"
-var PlatformWindowClass = NULL;
+var PlatformWindowClass = NULL,
+ PrimaryPlatformWindow = NULL;
@implementation CPPlatformWindow : CPObject
{
CGRect _contentRect;
}
++ (CPPlatformWindow)primaryPlatformWindow
+{
+ return PrimaryPlatformWindow;
+}
+
++ (void)setPrimaryPlatformWindow:(CPPlatformWindow)aPlatformWindow
+{
+ PrimaryPlatformWindow = aPlatformWindow;
+}
+/*
++ (BOOL)supportsMultipleWindows
+{
+#if PLATFORM(BROWSER)
+ return YES;
+#else
+ return NO;
+#endif
+}
+*/
+ (void)_setPlatformWindowClass:(Class)aClass
{
PlatformWindowClass = aClass;
diff --git a/AppKit/Platform/DOM/CPDOMWindowBridge.j b/AppKit/Platform/DOM/CPDOMWindowBridge.j
index f6afe1168..ac3352666 100644
--- a/AppKit/Platform/DOM/CPDOMWindowBridge.j
+++ b/AppKit/Platform/DOM/CPDOMWindowBridge.j
@@ -73,12 +73,12 @@ var CPDOMWindowGetFrame,
- (CGRect)visibleFrame
{
- return [window.firstWindow usableContentFrame];
+ return [[CPPlatformWindow primaryPlatformWindow] usableContentFrame];
}
- (CPRect)contentBounds
{
- var contentBounds = [window.firstWindow contentRect];
+ var contentBounds = [[CPPlatformWindow primaryPlatformWindow] contentRect];
contentBounds.origin = CGPointMake(0,0);
return contentBounds;
@@ -86,34 +86,34 @@ var CPDOMWindowGetFrame,
- (CPArray)orderedWindowsAtLevel:(int)aLevel
{
- return [window.firstWindow orderedWindowsAtLevel:aLevel];
+ return [[CPPlatformWindow primaryPlatformWindow] orderedWindowsAtLevel:aLevel];
}
- (CPDOMWindowLayer)layerAtLevel:(int)aLevel create:(BOOL)aFlag
{
- return [window.firstWindow layerAtLevel:aLevel create:aFlag];
+ return [[CPPlatformWindow primaryPlatformWindow] layerAtLevel:aLevel create:aFlag];
}
- (void)order:(CPWindowOrderingMode)aPlace window:(CPWindow)aWindow relativeTo:(CPWindow)otherWindow
{
- return [window.firstWindow order:aPlace window:aWindow relativeTo:otherWindow];
+ return [[CPPlatformWindow primaryPlatformWindow] order:aPlace window:aWindow relativeTo:otherWindow];
}
/* @ignore */
- (id)_dragHitTest:(CPPoint)aPoint pasteboard:(CPPasteboard)aPasteboard
{
- return [window.firstWindow _dragHitTest:aPoint pasteboard:aPasteboard];
+ return [[CPPlatformWindow primaryPlatformWindow] _dragHitTest:aPoint pasteboard:aPasteboard];
}
/* @ignore */
- (void)_propagateCurrentDOMEvent:(BOOL)aFlag
{
- return [window.firstWindow _propagateCurrentDOMEvent:aFlag];
+ return [[CPPlatformWindow primaryPlatformWindow] _propagateCurrentDOMEvent:aFlag];
}
- (CPWindow)hitTest:(CPPoint)location
{
- return [window.firstWindow hitTest:location];
+ return [[CPPlatformWindow primaryPlatformWindow] hitTest:location];
}
@end
From fa5352ad40a8352e28c2f376133d801556ebe378 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sun, 26 Jul 2009 17:56:25 -0700
Subject: [PATCH 112/244] Fix for drag and drop with platform windows.
Reviewed by me.
---
AppKit/CPDragServer.j | 3 +-
AppKit/CPFlashView.j | 8 +-
AppKit/Platform/CPPlatformWindow.j | 85 +++++++++++--------
...{_CPDOMWindow.j => CPPlatformWindow+DOM.j} | 61 +++----------
AppKit/Platform/DOM/_CPBrowserWindow.j | 10 ---
5 files changed, 68 insertions(+), 99 deletions(-)
rename AppKit/Platform/DOM/{_CPDOMWindow.j => CPPlatformWindow+DOM.j} (96%)
delete mode 100644 AppKit/Platform/DOM/_CPBrowserWindow.j
diff --git a/AppKit/CPDragServer.j b/AppKit/CPDragServer.j
index 39c4900fb..337c13a99 100644
--- a/AppKit/CPDragServer.j
+++ b/AppKit/CPDragServer.j
@@ -252,8 +252,9 @@ var CPDragServerUpdateDragging = function(anEvent)
#if PLATFORM(BROWSER)
var platformWindow = [aWindow platformWindow];
+ // FIXME: We should just have the window be the size of the view and move the window around.
[_dragWindow setPlatformWindow:platformWindow];
- [_dragWindow setFrameSize:[platformWindow contentBounds]];
+ [_dragWindow setFrameSize:[platformWindow contentBounds].size];
#endif
[_dragWindow orderFront:self];
diff --git a/AppKit/CPFlashView.j b/AppKit/CPFlashView.j
index 874614b7a..5d3f983a4 100644
--- a/AppKit/CPFlashView.j
+++ b/AppKit/CPFlashView.j
@@ -20,10 +20,10 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
-@import "CPDOMWindowBridge.j"
@import "CPFlashMovie.j"
@import "CPView.j"
+
/*!
@ingroup appkit
*/
@@ -96,17 +96,17 @@
- (void)mouseDragged:(CPEvent)anEvent
{
- [[CPDOMWindowBridge sharedDOMWindowBridge] _propagateCurrentDOMEvent:YES];
+ [[[self window] platformWindow] _propagateCurrentDOMEvent:YES];
}
- (void)mouseDown:(CPEvent)anEvent
{
- [[CPDOMWindowBridge sharedDOMWindowBridge] _propagateCurrentDOMEvent:YES];
+ [[[self window] platformWindow] _propagateCurrentDOMEvent:YES];
}
- (void)mouseUp:(CPEvent)anEvent
{
- [[CPDOMWindowBridge sharedDOMWindowBridge] _propagateCurrentDOMEvent:YES];
+ [[[self window] platformWindow] _propagateCurrentDOMEvent:YES];
}
@end
diff --git a/AppKit/Platform/CPPlatformWindow.j b/AppKit/Platform/CPPlatformWindow.j
index e0abdf130..abc76e29b 100644
--- a/AppKit/Platform/CPPlatformWindow.j
+++ b/AppKit/Platform/CPPlatformWindow.j
@@ -5,12 +5,37 @@
#import "../CoreGraphics/CGGeometry.h"
-var PlatformWindowClass = NULL,
- PrimaryPlatformWindow = NULL;
+var PrimaryPlatformWindow = NULL;
@implementation CPPlatformWindow : CPObject
{
CGRect _contentRect;
+
+#if PLATFORM(DOM)
+ DOMWindow _DOMWindow;
+
+ DOMElement _DOMBodyElement;
+ DOMElement _DOMFocusElement;
+
+ CPArray _windowLevels;
+ CPDictionary _windowLayers;
+
+ BOOL _mouseIsDown;
+ CPWindow _mouseDownWindow;
+ CPTimeInterval _lastMouseUp;
+ CPTimeInterval _lastMouseDown;
+
+ Object _charCodes;
+ unsigned _keyCode;
+
+ BOOL _DOMEventMode;
+
+ // Native Pasteboard Support
+ DOMElement _DOMPasteboardElement;
+ CPEvent _pasteboardKeyDownEvent;
+
+ CPString _overriddenEventType;
+#endif
}
+ (CPPlatformWindow)primaryPlatformWindow
@@ -22,41 +47,23 @@ var PlatformWindowClass = NULL,
{
PrimaryPlatformWindow = aPlatformWindow;
}
-/*
-+ (BOOL)supportsMultipleWindows
-{
-#if PLATFORM(BROWSER)
- return YES;
-#else
- return NO;
-#endif
-}
-*/
-+ (void)_setPlatformWindowClass:(Class)aClass
-{
- PlatformWindowClass = aClass;
-}
-
-+ (Class)_platformWindowClass
-{
- return PlatformWindowClass;
-}
-
-+ (id)alloc
-{
- if (self === [CPPlatformWindow class])
- return [PlatformWindowClass alloc];
-
- return [super alloc];
-}
- (id)initWithContentRect:(CGRect)aRect
{
self = [super init];
if (self)
+ {
_contentRect = _CGRectMakeCopy(aRect);
+#if PLATFORM(DOM)
+ _windowLevels = [];
+ _windowLayers = [CPDictionary dictionary];
+
+ _charCodes = {};
+#endif
+ }
+
return self;
}
@@ -137,19 +144,25 @@ var PlatformWindowClass = NULL,
{
[self setContentRect:[self nativeContentRect]];
}
-
+/*
- (BOOL)isVisible
{
-#if PLATFORM(DOM)
- return _DOMWindow !== NULL;
-#endif
return NO;
}
+/*
++ (BOOL)supportsMultipleWindows
+{
+#if PLATFORM(BROWSER)
+ return YES;
+#else
+ return NO;
+#endif
+}
+*/
+
@end
#if PLATFORM(BROWSER)
-@import "_CPBrowserWindow.j"
-#else
-[CPPlatformWindow _setPlatformWindowClass:[CPPlatformWindow class]];
+@import "CPPlatformWindow+DOM.j"
#endif
diff --git a/AppKit/Platform/DOM/_CPDOMWindow.j b/AppKit/Platform/DOM/CPPlatformWindow+DOM.j
similarity index 96%
rename from AppKit/Platform/DOM/_CPDOMWindow.j
rename to AppKit/Platform/DOM/CPPlatformWindow+DOM.j
index 1605ef941..cd948e004 100644
--- a/AppKit/Platform/DOM/_CPDOMWindow.j
+++ b/AppKit/Platform/DOM/CPPlatformWindow+DOM.j
@@ -70,32 +70,7 @@ var KeyCodesToPrevent = {},
var CTRL_KEY_CODE = 17;
-@implementation _CPDOMWindow : CPPlatformWindow
-{
- DOMWindow _DOMWindow;
-
- DOMElement _DOMBodyElement;
- DOMElement _DOMFocusElement;
-
- CPArray _windowLevels;
- CPDictionary _windowLayers;
-
- BOOL _mouseIsDown;
- CPWindow _mouseDownWindow;
- CPTimeInterval _lastMouseUp;
- CPTimeInterval _lastMouseDown;
-
- JSObject _charCodes;
- unsigned _keyCode;
-
- BOOL _DOMEventMode;
-
- // Native Pasteboard Support
- DOMElement _DOMPasteboardElement;
- CPEvent _pasteboardKeyDownEvent;
-
- CPString _overriddenEventType;
-}
+@implementation CPPlatformWindow (DOM)
- (id)_init
{
@@ -104,6 +79,7 @@ var CTRL_KEY_CODE = 17;
if (self)
{
_DOMWindow = window;
+ _contentRect = _CGRectMakeZero();
[self registerDOMWindow];
[self updateFromNativeContentRect];
@@ -117,21 +93,6 @@ var CTRL_KEY_CODE = 17;
return self;
}
-- (id)initWithContentRect:(CGRect)aRect
-{
- self = [super initWithContentRect:aRect];
-
- if (self)
- {
- _windowLevels = [];
- _windowLayers = [CPDictionary dictionary];
-
- _charCodes = {};
- }
-
- return self;
-}
-
- (CGRect)nativeContentRect
{
if (!_DOMWindow)
@@ -333,6 +294,11 @@ var CTRL_KEY_CODE = 17;
}
}
+- (BOOL)isVisible
+{
+ return _DOMWindow !== NULL;
+}
+
- (void)orderFront:(id)aSender
{
if (_DOMWindow)
@@ -918,7 +884,7 @@ var CTRL_KEY_CODE = 17;
@param characters a list of characters to stop propagating keypresses to the browser.
*/
-- (void)preventCharacterKeysFromPropagating:(CPArray)characters
++ (void)preventCharacterKeysFromPropagating:(CPArray)characters
{
for(var i=characters.length; i>0; i--)
CharacterKeysToPrevent[""+characters[i-1].toLowerCase()] = YES;
@@ -927,7 +893,7 @@ var CTRL_KEY_CODE = 17;
/*!
@param character a character to stop propagating keypresses to the browser.
*/
-- (void)preventCharacterKeyFromPropagating:(CPString)character
++ (void)preventCharacterKeyFromPropagating:(CPString)character
{
CharacterKeysToPrevent[character.toLowerCase()] = YES;
}
@@ -935,7 +901,7 @@ var CTRL_KEY_CODE = 17;
/*!
Clear the list of characters for which we are not sending keypresses to the browser.
*/
-- (void)clearCharacterKeysToPreventFromPropagating
++ (void)clearCharacterKeysToPreventFromPropagating
{
CharacterKeysToPrevent = {};
}
@@ -944,7 +910,7 @@ var CTRL_KEY_CODE = 17;
Prevent these keyCodes from sending their keypresses to the browser.
@param keyCodes an array of keycodes to prevent propagation.
*/
-- (void)preventKeyCodesFromPropagating:(CPArray)keyCodes
++ (void)preventKeyCodesFromPropagating:(CPArray)keyCodes
{
for(var i=keyCodes.length; i>0; i--)
KeyCodesToPrevent[keyCodes[i-1]] = YES;
@@ -954,7 +920,7 @@ var CTRL_KEY_CODE = 17;
Prevent this keyCode from sending its key events to the browser.
@param keyCode a keycode to prevent propagation.
*/
-- (void)preventKeyCodeFromPropagating:(CPString)keyCode
++ (void)preventKeyCodeFromPropagating:(CPString)keyCode
{
KeyCodesToPrevent[keyCode] = YES;
}
@@ -962,12 +928,11 @@ var CTRL_KEY_CODE = 17;
/*!
Clear the list of keyCodes for which we are not sending keypresses to the browser.
*/
-- (void)clearKeyCodesToPreventFromPropagating
++ (void)clearKeyCodesToPreventFromPropagating
{
KeyCodesToPrevent = {};
}
-
@end
var CPEventClass = [CPEvent class];
diff --git a/AppKit/Platform/DOM/_CPBrowserWindow.j b/AppKit/Platform/DOM/_CPBrowserWindow.j
deleted file mode 100644
index 57a97de1c..000000000
--- a/AppKit/Platform/DOM/_CPBrowserWindow.j
+++ /dev/null
@@ -1,10 +0,0 @@
-
-@import "_CPDOMWindow.j"
-
-
-@implementation _CPBrowserWindow : _CPDOMWindow
-{
-}
-@end
-
-[CPPlatformWindow _setPlatformWindowClass:[_CPBrowserWindow class]];
From a34e23fa1cf880677f514f18a1f734d4ccc6c0ab Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sun, 26 Jul 2009 18:12:50 -0700
Subject: [PATCH 113/244] Removed CPDOMWindowBridge dependency in CPTextField.
Reviewed by me.
---
AppKit/CPTextField.j | 2 +-
AppKit/Platform/CPPlatformWindow.j | 12 ++++++------
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/AppKit/CPTextField.j b/AppKit/CPTextField.j
index 24ee21442..c80b975b1 100644
--- a/AppKit/CPTextField.j
+++ b/AppKit/CPTextField.j
@@ -597,7 +597,7 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder");
//post CPControlTextDidBeginEditingNotification
[self textDidBeginEditing:[CPNotification notificationWithName:CPControlTextDidBeginEditingNotification object:self userInfo:nil]];
- [[CPDOMWindowBridge sharedDOMWindowBridge] _propagateCurrentDOMEvent:YES];
+ [[[self window] platformWindow] _propagateCurrentDOMEvent:YES];
CPTextFieldInputIsActive = YES;
diff --git a/AppKit/Platform/CPPlatformWindow.j b/AppKit/Platform/CPPlatformWindow.j
index abc76e29b..1aec29a90 100644
--- a/AppKit/Platform/CPPlatformWindow.j
+++ b/AppKit/Platform/CPPlatformWindow.j
@@ -16,24 +16,24 @@ var PrimaryPlatformWindow = NULL;
DOMElement _DOMBodyElement;
DOMElement _DOMFocusElement;
-
+
CPArray _windowLevels;
CPDictionary _windowLayers;
-
+
BOOL _mouseIsDown;
CPWindow _mouseDownWindow;
CPTimeInterval _lastMouseUp;
CPTimeInterval _lastMouseDown;
-
+
Object _charCodes;
unsigned _keyCode;
-
+
BOOL _DOMEventMode;
-
+
// Native Pasteboard Support
DOMElement _DOMPasteboardElement;
CPEvent _pasteboardKeyDownEvent;
-
+
CPString _overriddenEventType;
#endif
}
From 92594a7ef990e6bba55e2079e9d5536b512c4142 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sun, 26 Jul 2009 18:26:47 -0700
Subject: [PATCH 114/244] Removed references from CPWindow and CPPlatformWindow
to CPDOMWindowBridge.
Reviewed by me.
---
AppKit/CPWindow/CPWindow.j | 1 -
AppKit/Platform/DOM/CPPlatformWindow+DOM.j | 12 ++++++------
2 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/AppKit/CPWindow/CPWindow.j b/AppKit/CPWindow/CPWindow.j
index 417f2fc9e..86a9f5dff 100644
--- a/AppKit/CPWindow/CPWindow.j
+++ b/AppKit/CPWindow/CPWindow.j
@@ -2086,5 +2086,4 @@ function _CPWindowFullBridgeSessionMake(aWindowView, aContentRect, hasShadow, aL
@import "_CPBorderlessWindowView.j"
@import "_CPBorderlessBridgeWindowView.j"
@import "CPDragServer.j"
-@import "CPDOMWindowBridge.j"
@import "CPView.j"
diff --git a/AppKit/Platform/DOM/CPPlatformWindow+DOM.j b/AppKit/Platform/DOM/CPPlatformWindow+DOM.j
index cd948e004..4630ae210 100644
--- a/AppKit/Platform/DOM/CPPlatformWindow+DOM.j
+++ b/AppKit/Platform/DOM/CPPlatformWindow+DOM.j
@@ -992,9 +992,9 @@ var CPDOMEventStop = function(aDOMEvent, aPlatformWindow)
function CPWindowObjectList()
{
- var bridge = [CPDOMWindowBridge sharedDOMWindowBridge],
- levels = bridge._windowLevels,
- layers = bridge._windowLayers,
+ var platformWindow = [CPPlatformWindow primaryPlatformWindow],
+ levels = platformWindow._windowLevels,
+ layers = platformWindow._windowLayers,
levelCount = levels.length,
windowObjects = [];
@@ -1012,9 +1012,9 @@ function CPWindowObjectList()
function CPWindowList()
{
- var bridge = [CPDOMWindowBridge sharedDOMWindowBridge],
- levels = bridge._windowLevels,
- layers = bridge._windowLayers,
+ var platformWindow = [CPPlatformWindow primaryPlatformWindow],
+ levels = platformWindow._windowLevels,
+ layers = platformWindow._windowLayers,
levelCount = levels.length,
windowNumbers = [];
From 2e37945b4f9680d30c4a3fbba094191a39c9e22a Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Sun, 26 Jul 2009 18:49:41 -0700
Subject: [PATCH 115/244] Removed remaining references to CPDOMWindowBridge.
Reviewed by me.
---
AppKit/CPDragServer.j | 4 ++--
AppKit/CPMenu.j | 10 +++++-----
AppKit/CPView.j | 2 +-
AppKit/CPWindow/_CPWindowView.j | 4 ++--
4 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/AppKit/CPDragServer.j b/AppKit/CPDragServer.j
index 337c13a99..60a23f06e 100644
--- a/AppKit/CPDragServer.j
+++ b/AppKit/CPDragServer.j
@@ -112,7 +112,7 @@ var CPDragServerUpdateDragging = function(anEvent)
bridgeLocation = [[anEvent window] convertBaseToBridge:location];
// We have to convert base to bridge since the drag event comes from the source window, not the drag window.
- var draggingDestination = [[CPDOMWindowBridge sharedDOMWindowBridge] _dragHitTest:bridgeLocation pasteboard:CPDragServerPasteboard];
+ var draggingDestination = [[CPPlatformWindow primaryPlatformWindow] _dragHitTest:bridgeLocation pasteboard:CPDragServerPasteboard];
CPDragServerLocation = [DRAGGING_WINDOW(draggingDestination) convertBridgeToBase:bridgeLocation];
@@ -326,7 +326,7 @@ var CPDragServerUpdateDragging = function(anEvent)
return nil;
// We don't need to do this because the only place this gets called
-// -_dragHitTest: in CPDOMWindowBridge does this already. Perhaps to
+// -_dragHitTest: in CPPlatformWindow does this already. Perhaps to
// be safe?
// if (![self containsPoint:aPoint])
// return nil;
diff --git a/AppKit/CPMenu.j b/AppKit/CPMenu.j
index 46e415468..8e7ab43e1 100644
--- a/AppKit/CPMenu.j
+++ b/AppKit/CPMenu.j
@@ -119,7 +119,7 @@ var _CPMenuBarVisible = NO,
// FIXME: There must be a better way to do this.
#if PLATFORM(DOM)
- [window.platformWindow resizeEvent:nil];
+ [[CPPlatformWindow primaryPlatformWindow] resizeEvent:nil];
#endif
}
@@ -1078,7 +1078,7 @@ var STICKY_TIME_INTERVAL = 500,
{
_unconstrainedFrame = CGRectMakeCopy([self frame]);
- var screenBounds = CGRectInset([[CPDOMWindowBridge sharedDOMWindowBridge] contentBounds], 5.0, 5.0),
+ var screenBounds = CGRectInset([[self platformWindow] contentBounds], 5.0, 5.0),
constrainedFrame = CGRectIntersection(_unconstrainedFrame, screenBounds),
menuViewOrigin = [self convertBaseToBridge:CGPointMake(LEFT_MARGIN, TOP_MARGIN)];
@@ -1158,7 +1158,7 @@ var STICKY_TIME_INTERVAL = 500,
if (type == CPPeriodic)
{
- var constrainedBounds = CGRectInset([[CPDOMWindowBridge sharedDOMWindowBridge] contentBounds], 5.0, 5.0);
+ var constrainedBounds = CGRectInset([[self platformWindow] contentBounds], 5.0, 5.0);
if (_scrollingState == _CPMenuWindowScrollingStateUp)
{
@@ -1447,9 +1447,9 @@ var _CPMenuBarWindowBackgroundColor = nil,
- (id)init
{
- var bridgeWidth = CGRectGetWidth([[CPDOMWindowBridge sharedDOMWindowBridge] contentBounds]);
+ var platformWindowWidth = CGRectGetWidth([[CPPlatformWindow primaryPlatformWindow] contentBounds]);
- self = [super initWithContentRect:CGRectMake(0.0, 0.0, bridgeWidth, MENUBAR_HEIGHT) styleMask:CPBorderlessWindowMask];
+ self = [super initWithContentRect:CGRectMake(0.0, 0.0, platformWindowWidth, MENUBAR_HEIGHT) styleMask:CPBorderlessWindowMask];
if (self)
{
diff --git a/AppKit/CPView.j b/AppKit/CPView.j
index 0121e9f6b..289e69fe3 100644
--- a/AppKit/CPView.j
+++ b/AppKit/CPView.j
@@ -970,7 +970,7 @@ var DOMElementPrototype = nil,
{
_fullScreenModeState = _CPViewFullScreenModeStateMake(self);
- var fullScreenWindow = [[CPWindow alloc] initWithContentRect:[[CPDOMWindowBridge sharedDOMWindowBridge] contentBounds] styleMask:CPBorderlessWindowMask];
+ var fullScreenWindow = [[CPWindow alloc] initWithContentRect:[[CPPlatformWindow primaryPlatformWindow] contentBounds] styleMask:CPBorderlessWindowMask];
[fullScreenWindow setLevel:CPScreenSaverWindowLevel];
[fullScreenWindow setAutoresizingMask:CPViewWidthSizable | CPViewHeightSizable];
diff --git a/AppKit/CPWindow/_CPWindowView.j b/AppKit/CPWindow/_CPWindowView.j
index 7bbfaf22b..fe2d1ca4d 100644
--- a/AppKit/CPWindow/_CPWindowView.j
+++ b/AppKit/CPWindow/_CPWindowView.j
@@ -145,7 +145,7 @@ var _CPWindowViewResizeIndicatorImage = nil;
var visibleFrame = _cachedScreenFrame;
if (!visibleFrame)
- visibleFrame = [[CPDOMWindowBridge sharedDOMWindowBridge] visibleFrame];
+ visibleFrame = [[CPPlatformWindow primaryPlatformWindow] usableContentFrame];
var restrictedPoint = CGPointMake(0, 0);
@@ -167,7 +167,7 @@ var _CPWindowViewResizeIndicatorImage = nil;
else if (type === CPLeftMouseDown)
{
_mouseDraggedPoint = [[self window] convertBaseToBridge:[anEvent locationInWindow]];
- _cachedScreenFrame = [[CPDOMWindowBridge sharedDOMWindowBridge] visibleFrame];
+ _cachedScreenFrame = [[CPPlatformWindow primaryPlatformWindow] usableContentFrame];
}
else if (type === CPLeftMouseDragged)
{
From 865a2b513f4220f1a983b4955c28d6271c745eac Mon Sep 17 00:00:00 2001
From: Ross Boucher
Date: Sun, 26 Jul 2009 22:46:22 -0700
Subject: [PATCH 116/244] Slight performance improvement and memory improvement
by moving the storage of KVO proxy objects.
---
Foundation/CPKeyValueObserving.j | 32 ++++++++++++++------------------
1 file changed, 14 insertions(+), 18 deletions(-)
diff --git a/Foundation/CPKeyValueObserving.j b/Foundation/CPKeyValueObserving.j
index 7a1d575ae..5c57449a2 100644
--- a/Foundation/CPKeyValueObserving.j
+++ b/Foundation/CPKeyValueObserving.j
@@ -58,7 +58,7 @@
if (!anObserver || !aPath)
return;
- [[KVOProxyMap objectForKey:[self UID]] _removeObserver:anObserver forKeyPath:aPath];
+ [self[KVOProxyKey] _removeObserver:anObserver forKeyPath:aPath];
}
+ (BOOL)automaticallyNotifiesObserversForKey:(CPString)aKey
@@ -98,12 +98,9 @@ CPKeyValueChangeInsertion = 2;
CPKeyValueChangeRemoval = 3;
CPKeyValueChangeReplacement = 4;
-//convenience
-var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld;
-
-// Map of real objects to their KVO proxy
-var KVOProxyMap = [CPDictionary dictionary],
- DependentKeysMap = [CPDictionary dictionary];
+var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
+ DependentKeysMap = [CPDictionary dictionary],
+ KVOProxyKey = "$KVOPROXY";
//rule of thumb: _ methods are called on the real proxy object, others are called on the "fake" proxy object (aka the real object)
@@ -119,7 +116,7 @@ var KVOProxyMap = [CPDictionary dictionary],
+ (id)proxyForObject:(CPObject)anObject
{
- var proxy = [KVOProxyMap objectForKey:[anObject UID]];
+ var proxy = anObject[KVOProxyKey];
if (proxy)
return proxy;
@@ -128,7 +125,7 @@ var KVOProxyMap = [CPDictionary dictionary],
[proxy _replaceClass];
- [KVOProxyMap setObject:proxy forKey:[anObject UID]];
+ anObject[KVOProxyKey] = proxy;
return proxy;
}
@@ -205,9 +202,10 @@ var KVOProxyMap = [CPDictionary dictionary],
}
}
- var affectingKeys = [[_nativeClass keyPathsForValuesAffectingValueForKey:aKey] allObjects];
+ var affectingKeys = [[_nativeClass keyPathsForValuesAffectingValueForKey:aKey] allObjects],
+ affectingKeysCount = affectingKeys ? affectingKeys.length : 0;
- if (![affectingKeys count])
+ if (!affectingKeysCount)
return;
var dependentKeysForClass = [DependentKeysMap objectForKey:[_nativeClass UID]];
@@ -218,11 +216,9 @@ var KVOProxyMap = [CPDictionary dictionary],
[DependentKeysMap setObject:dependentKeysForClass forKey:[_nativeClass UID]];
}
- var count = [affectingKeys count];
-
- while (count--)
+ while (affectingKeysCount--)
{
- var affectingKey = affectingKeys[count],
+ var affectingKey = affectingKeys[affectingKeysCount],
affectedKeys = [dependentKeysForClass objectForKey:affectingKey];
if (!affectedKeys)
@@ -288,7 +284,7 @@ var KVOProxyMap = [CPDictionary dictionary],
if (![_observersForKey count])
{
_targetObject.isa = _nativeClass; //restore the original class
- [KVOProxyMap removeObjectForKey:[_targetObject UID]];
+ delete _targetObject[KVOProxyKey];
}
}
@@ -360,7 +356,7 @@ var KVOProxyMap = [CPDictionary dictionary],
}
var observers = [[_observersForKey objectForKey:aKey] allValues],
- count = [observers count];
+ count = observers ? observers.length : 0;
while (count--)
{
@@ -425,7 +421,7 @@ var KVOProxyMap = [CPDictionary dictionary],
- (Class)class
{
- return [KVOProxyMap objectForKey:[self UID]]._nativeClass;
+ return self[KVOProxyKey]._nativeClass;
}
- (Class)superclass
From 64b81cfcdb932b9768a9ddb5496a3e90d0af1624 Mon Sep 17 00:00:00 2001
From: Ross Boucher
Date: Sun, 26 Jul 2009 23:40:52 -0700
Subject: [PATCH 117/244] Remove several CPDictionaries in favor of Objects,
about a 15% performance gain.
---
Foundation/CPKeyValueObserving.j | 47 ++++++++++++++++++++------------
1 file changed, 29 insertions(+), 18 deletions(-)
diff --git a/Foundation/CPKeyValueObserving.j b/Foundation/CPKeyValueObserving.j
index 5c57449a2..897702537 100644
--- a/Foundation/CPKeyValueObserving.j
+++ b/Foundation/CPKeyValueObserving.j
@@ -99,7 +99,7 @@ CPKeyValueChangeRemoval = 3;
CPKeyValueChangeReplacement = 4;
var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
- DependentKeysMap = [CPDictionary dictionary],
+ DependentKeysMap = {},
KVOProxyKey = "$KVOPROXY";
//rule of thumb: _ methods are called on the real proxy object, others are called on the "fake" proxy object (aka the real object)
@@ -110,7 +110,8 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
id _targetObject;
Class _nativeClass;
CPDictionary _changesForKey;
- CPDictionary _observersForKey;
+ Object _observersForKey;
+ int _observersForKeyLength;
CPSet _replacedKeys;
}
@@ -136,9 +137,10 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
_targetObject = aTarget;
_nativeClass = [aTarget class];
- _observersForKey = [CPDictionary dictionary];
- _changesForKey = [CPDictionary dictionary];
_replacedKeys = [CPSet set];
+ _observersForKey = {};
+ _changesForKey = {};
+ _observersForKeyLength = 0;
return self;
}
@@ -208,23 +210,23 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
if (!affectingKeysCount)
return;
- var dependentKeysForClass = [DependentKeysMap objectForKey:[_nativeClass UID]];
+ var dependentKeysForClass = DependentKeysMap[[_nativeClass UID]];
if (!dependentKeysForClass)
{
- dependentKeysForClass = [CPDictionary new];
- [DependentKeysMap setObject:dependentKeysForClass forKey:[_nativeClass UID]];
+ dependentKeysForClass = {};
+ DependentKeysMap[[_nativeClass UID]] = dependentKeysForClass;
}
while (affectingKeysCount--)
{
var affectingKey = affectingKeys[affectingKeysCount],
- affectedKeys = [dependentKeysForClass objectForKey:affectingKey];
+ affectedKeys = dependentKeysForClass[affectingKey];
if (!affectedKeys)
{
affectedKeys = [CPSet new];
- [dependentKeysForClass setObject:affectedKeys forKey:affectingKey];
+ dependentKeysForClass[affectingKey] = affectedKeys;
}
[affectedKeys addObject:aKey];
@@ -244,12 +246,13 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
else
[self _replaceSetterForKey:aPath];
- var observers = [_observersForKey objectForKey:aPath];
+ var observers = _observersForKey[aPath];
if (!observers)
{
observers = [CPDictionary dictionary];
- [_observersForKey setObject:observers forKey:aPath];
+ _observersForKey[aPath] = observers;
+ _observersForKeyLength++;
}
[observers setObject:_CPKVOInfoMake(anObserver, options, aContext, forwarder) forKey:[anObserver UID]];
@@ -268,7 +271,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
- (void)_removeObserver:(id)anObserver forKeyPath:(CPString)aPath
{
- var observers = [_observersForKey objectForKey:aPath];
+ var observers = _observersForKey[aPath];
if (aPath.indexOf('.') != CPNotFound)
{
@@ -279,9 +282,12 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
[observers removeObjectForKey:[anObserver UID]];
if (![observers count])
- [_observersForKey removeObjectForKey:aPath];
+ {
+ _observersForKeyLength--;
+ delete _observersForKey[aPath];
+ }
- if (![_observersForKey count])
+ if (!_observersForKeyLength)
{
_targetObject.isa = _nativeClass; //restore the original class
delete _targetObject[KVOProxyKey];
@@ -292,7 +298,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
- (void)_sendNotificationsForKey:(CPString)aKey changeOptions:(CPDictionary)changeOptions isBefore:(BOOL)isBefore
{
- var changes = [_changesForKey objectForKey:aKey];
+ var changes = _changesForKey[aKey];
if (isBefore)
{
@@ -324,7 +330,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
[changes setObject:1 forKey:CPKeyValueChangeNotificationIsPriorKey];
- [_changesForKey setObject:changes forKey:aKey];
+ _changesForKey[aKey] = changes;
}
else
{
@@ -355,7 +361,7 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
}
}
- var observers = [[_observersForKey objectForKey:aKey] allValues],
+ var observers = [_observersForKey[aKey] allValues],
count = observers ? observers.length : 0;
while (count--)
@@ -368,7 +374,12 @@ var kvoNewAndOld = CPKeyValueObservingOptionNew|CPKeyValueObservingOptionOld,
[observerInfo.observer observeValueForKeyPath:aKey ofObject:_targetObject change:changes context:observerInfo.context];
}
- var keysComposedOfKey = [[[DependentKeysMap objectForKey:[_nativeClass UID]] objectForKey:aKey] allObjects];
+ var dependentKeysMap = DependentKeysMap[[_nativeClass UID]];
+
+ if (!dependentKeysMap)
+ return;
+
+ var keysComposedOfKey = [dependentKeysMap[aKey] allObjects];
if (!keysComposedOfKey)
return;
From 59bec06e6e295817de069b05c471d41aad1506f5 Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Mon, 27 Jul 2009 12:04:41 -0700
Subject: [PATCH 118/244] Removed CPDOMWindowBridge file.
Reviewed by me.
---
AppKit/Platform/DOM/CPDOMWindowBridge.j | 119 ------------------------
1 file changed, 119 deletions(-)
delete mode 100644 AppKit/Platform/DOM/CPDOMWindowBridge.j
diff --git a/AppKit/Platform/DOM/CPDOMWindowBridge.j b/AppKit/Platform/DOM/CPDOMWindowBridge.j
deleted file mode 100644
index ac3352666..000000000
--- a/AppKit/Platform/DOM/CPDOMWindowBridge.j
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * CPDOMWindowBridge.j
- * AppKit
- *
- * Created by Francisco Tolmasky.
- * Copyright 2008, 280 North, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-@import
-@import
-
-@import "CPEvent.j"
-@import "CPCompatibility.j"
-
-
-#import "../../CoreGraphics/CGGeometry.h"
-
-
-CPSharedDOMWindowBridge = nil;
-
-var ExcludedDOMElements = [];
-
-// Define up here so compressor knows about em.
-var CPDOMWindowGetFrame,
- CPDOMEventGetClickCount,
- CPDOMEventStop;
-
-@implementation CPDOMWindowBridge : CPObject
-{
-}
-
-/*!
- Returns the shared DOMWindowBridge.
-*/
-+ (id)sharedDOMWindowBridge
-{
- if (!CPSharedDOMWindowBridge)
- CPSharedDOMWindowBridge = [[CPDOMWindowBridge alloc] _init];
-
- return CPSharedDOMWindowBridge;
-}
-
-/* @ignore */
-- (id)_init//_initWithDOMWindow:(DOMWindow)aDOMWindow
-{
- self = [super init];
-
- if (self)
- {
- }
-
- return self;
-}
-
-- (CPRect)frame
-{
- return [self contentRect];
-}
-
-- (CGRect)visibleFrame
-{
- return [[CPPlatformWindow primaryPlatformWindow] usableContentFrame];
-}
-
-- (CPRect)contentBounds
-{
- var contentBounds = [[CPPlatformWindow primaryPlatformWindow] contentRect];
- contentBounds.origin = CGPointMake(0,0);
-
- return contentBounds;
-}
-
-- (CPArray)orderedWindowsAtLevel:(int)aLevel
-{
- return [[CPPlatformWindow primaryPlatformWindow] orderedWindowsAtLevel:aLevel];
-}
-
-- (CPDOMWindowLayer)layerAtLevel:(int)aLevel create:(BOOL)aFlag
-{
- return [[CPPlatformWindow primaryPlatformWindow] layerAtLevel:aLevel create:aFlag];
-}
-
-- (void)order:(CPWindowOrderingMode)aPlace window:(CPWindow)aWindow relativeTo:(CPWindow)otherWindow
-{
- return [[CPPlatformWindow primaryPlatformWindow] order:aPlace window:aWindow relativeTo:otherWindow];
-}
-
-/* @ignore */
-- (id)_dragHitTest:(CPPoint)aPoint pasteboard:(CPPasteboard)aPasteboard
-{
- return [[CPPlatformWindow primaryPlatformWindow] _dragHitTest:aPoint pasteboard:aPasteboard];
-}
-
-/* @ignore */
-- (void)_propagateCurrentDOMEvent:(BOOL)aFlag
-{
- return [[CPPlatformWindow primaryPlatformWindow] _propagateCurrentDOMEvent:aFlag];
-}
-
-- (CPWindow)hitTest:(CPPoint)location
-{
- return [[CPPlatformWindow primaryPlatformWindow] hitTest:location];
-}
-
-@end
From c0400d636242ddda2ccf6bdb1b2956a9dbfada4d Mon Sep 17 00:00:00 2001
From: Ross Boucher
Date: Mon, 27 Jul 2009 13:16:31 -0700
Subject: [PATCH 119/244] Fix a bug where press was clobbering CPApplication
arguments. Also changed line endings to Mac/Unix from Windows.
---
AppKit/CPApplication.j | 12 +-
Tools/press/main.j | 1170 ++++++++++++++++++++--------------------
2 files changed, 593 insertions(+), 589 deletions(-)
diff --git a/AppKit/CPApplication.j b/AppKit/CPApplication.j
index f150bb026..dd71a604c 100644
--- a/AppKit/CPApplication.j
+++ b/AppKit/CPApplication.j
@@ -772,14 +772,18 @@ function CPApplicationMain(args, namedArgs)
[principalClass sharedApplication];
//FIXME?
- if (!args && !namedArgs)
+ if (!args)
{
- var args = [CPApp arguments],
- searchParams = window.location.search.substring(1).split("&");
- namedArgs = [CPDictionary dictionary];
+ var args = [CPApp arguments];
if([args containsObject:"debug"])
CPLogRegister(CPLogPopup);
+ }
+
+ if (!namedArgs)
+ {
+ var searchParams = window.location.search.substring(1).split("&");
+ namedArgs = [CPDictionary dictionary];
for(var i=0; i
-
-@import "objj-analysis-tools.j"
-
-var defaultMain = "main.j",
- defaultFrameworks = "Frameworks";
-
-var usageMessage =
-"Usage: press root_directory output_directory [options]\n\
- --main path The relative path (from root_directory) to the main file (default: 'main.j')\n\
- --frameworks path The relative path (from root_directory) to the frameworks directory (default: 'Frameworks')\n\
- --platforms Platform names, colon separated (default: 'browser:objj')\n\
- --png Run pngcrush on all PNGs (pngcrush must be installed!)\n\
- --flatten Flatten all code into a single Application.js file and attempt add script tag to index.html (useful for Adobe AIR and CDN deployment)\n\
- --nostrip Don't strip any files\n\
- --v Verbose";
-
-function main()
-{
- var rootDirectory = null,
- outputDirectory = null,
- mainFilename = null,
- frameworksDirectory = null,
- platforms = ['browser', 'objj'],
- optimizePNG = false,
- flatten = false,
- noStrip = false,
- verbose = false;
-
- var usageError = false;
- while (system.args.length && !usageError)
- {
- var arg = system.args.shift();
- switch(arg)
- {
- case "--main":
- if (system.args.length)
- mainFilename = system.args.shift();
- else
- usageError = true;
- break;
- case "--frameworks":
- if (system.args.length)
- frameworksDirectory = system.args.shift().replace(/\/$/, "");
- else
- usageError = true;
- break;
- case "--platforms":
- if (system.args.length)
- platforms = system.args.shift().split(":");
- else
- usageError = true;
- break;
- case "--png":
- optimizePNG = true;
- break;
- case "--flatten":
- flatten = true;
- break;
- case "--nostrip":
- noStrip = true;
- break;
- case "--v":
- verbose = true;
- break;
- default:
- if (rootDirectory == null)
- rootDirectory = arg.replace(/\/$/, "");
- else if (outputDirectory == null)
- outputDirectory = arg.replace(/\/$/, "");
- else
- usageError = true;
- }
- }
-
- if (verbose)
- CPLogRegister(CPLogPrint);
- else
- CPLogRegisterRange(CPLogPrint, "fatal", "info");
-
- if (usageError || rootDirectory == null || outputDirectory == null || !platforms.length)
- {
- print(usageMessage);
- return;
- }
-
- rootDirectory = absolutePath(rootDirectory);
-
- // determine main and frameworks paths
- var mainPath = rootDirectory + "/" + (mainFilename || defaultMain),
- frameworksPath = rootDirectory + "/" + (frameworksDirectory || defaultFrameworks);
-
- CPLog.info("Application root: " + rootDirectory);
- CPLog.info("Output directory: " + outputDirectory);
- CPLog.info("Main file: " + mainPath)
- CPLog.info("Frameworks: " + frameworksPath);
-
- // get a Rhino context
- var cx = Packages.org.mozilla.javascript.Context.getCurrentContext(),
- scope = makeObjjScope(cx);
-
- // set OBJJ_INCLUDE_PATHS to include the frameworks path
- scope.OBJJ_INCLUDE_PATHS = [frameworksPath];
- scope.OBJJ_PLATFORMS = platforms;
-
- // flattening bookkeeping. keep track of the bundles and evaled code (in the correct order!)
- var bundleArchives = [],
- evaledFragments = [];
-
- scope.objj_search.prototype.didReceiveBundleResponseOriginal = scope.objj_search.prototype.didReceiveBundleResponse;
- scope.objj_search.prototype.didReceiveBundleResponse = function(aResponse) {
- //CPLog.trace("RESPONSE: " + aResponse);
-
- var __fakeResponse = {
- success : aResponse.success,
- filePath : pathRelativeTo(aResponse.filePath, rootDirectory)
- };
-
- if (aResponse.success)
- {
- var xmlOutput = new Packages.java.io.ByteArrayOutputStream();
- outputTransformer(xmlOutput, aResponse.xml, "UTF-8");
- //__fakeResponse.xml = String(xmlOutput.toString());
- __fakeResponse.text = CPPropertyListCreate280NorthData(CPPropertyListCreateFromXMLData({ string:String(xmlOutput.toString())})).string;
- //CPLog.trace("SERIALIZED: " + __fakeResponse.xml.substring(0,100));
- }
-
- bundleArchives.push(__fakeResponse);
-
- this.didReceiveBundleResponseOriginal.apply(this, arguments);
- }
-
- // phase 1: get global defines
- CPLog.error("PHASE 1: Loading application...");
-
- var globals = findGlobalDefines(cx, scope, mainPath, evaledFragments);
-
- // coalesce the results
- var dependencies = coalesceGlobalDefines(globals);
-
- // Log
- CPLog.trace("Global defines:");
- for (var i in dependencies)
- CPLog.trace(" " + i + " => " + dependencies[i]);
-
- // phase 2: walk the dependency tree (both imports and references) to determine exactly which files need to be included
- CPLog.error("PHASE 2: Walk dependency tree...");
-
- var requiredFiles = {};
-
- if (noStrip)
- {
- // all files are required. no need for analysis
- requiredFiles = scope.objj_files;
- }
- else
- {
- if (!scope.objj_files[mainPath])
- {
- CPLog.error("Root file not loaded!");
- return;
- }
-
- CPLog.warn("Analyzing dependencies...");
-
- var context = {
- scope : scope,
- dependencies : dependencies,
- processedFiles : {},
- ignoreFrameworkImports : true,
- importCallback : function(importing, imported) {
- requiredFiles[imported] = true;
- },
- referenceCallback : function(referencing, referenced) {
- requiredFiles[referenced] = true;
- }
- }
-
- requiredFiles[mainPath] = true;
- traverseDependencies(context, scope.objj_files[mainPath]);
-
- var count = 0,
- total = 0;
- for (var path in scope.objj_files)
- {
- if (requiredFiles[path])
- {
- CPLog.debug("Included: " + path);
- count++;
- }
- else
- {
- CPLog.info("Excluded: " + path);
- }
- total++;
- }
- CPLog.warn("Total required files: " + count + " out of " + total);
-
- // FIXME: sprite images
- //for (var i in context.bundleImages)
- //{
- // var images = context.bundleImages[i];
- //
- // CPLog.debug("Bundle images for " + i);
- // for (var j in images)
- // CPLog.trace(j + " = " + images[j]);
- //}
- }
-
- var outputFiles = {};
-
- if (flatten)
- {
- // phase 3a: build single Application.js file (and modified index.html)
- CPLog.error("PHASE 3a: Flattening...");
-
- var applicationJS = [],
- indexHTML = readFile(rootDirectory + "/index.html");
-
- // shim for faking bundle stuff. kind of a giant hack.
- var fakeDidReceiveBundleResponse = function(aResponse)
- {
- var bundle = new objj_bundle();
-
- bundle.path = aResponse.filePath;
-
- if (aResponse.success)
- {
- var data = new objj_data();
- data.string = aResponse.text;
- bundle.info = CPPropertyListCreateFrom280NorthData(data);
- //bundle.info = CPPropertyListCreateFromXMLData({ string : aResponse.xml });
- }
- else
- bundle.info = new objj_dictionary();
-
- objj_bundles[aResponse.filePath] = bundle;
- }
-
- // add fake bundle response bookkeeping
- applicationJS.push("var __fakeDidReceiveBundleResponse = " + String(fakeDidReceiveBundleResponse));
- applicationJS.push("var __fakeBundleArchives = " + JSON.stringify(bundleArchives) + ";");
- applicationJS.push("for (var i = 0; i < __fakeBundleArchives.length; i++) __fakeDidReceiveBundleResponse(__fakeBundleArchives[i]);")
-
- // add each fragment, wrapped in a function, along with OBJJ_CURRENT_BUNDLE bookkeeping
- for (var i = 0; i < evaledFragments.length; i++)
- {
- if (requiredFiles[evaledFragments[i].file.path])
- {
- applicationJS.push("(function() {");
- applicationJS.push("var OBJJ_CURRENT_BUNDLE = objj_bundles['"+pathRelativeTo(evaledFragments[i].bundle.path, rootDirectory)+"'];");
- applicationJS.push(evaledFragments[i].info);
- applicationJS.push("})();");
- }
- else
- {
- CPLog.info("Stripping " + evaledFragments[i].file.path);
- }
- }
-
- // call main once the page has loaded
- applicationJS.push(
- "if (window.addEventListener) \
- window.addEventListener('load', main, false); \
- else if (window.attachEvent) \
- window.attachEvent('onload', main);"
- );
-
- // comment out any OBJJ_MAIN_FILE defintions or objj_import() calls
- indexHTML = indexHTML.replace(/(\bOBJJ_MAIN_FILE\s*=|\bobjj_import\s*\()/g, '//$&');
-
- // add a script tag for Application.js at the very end of the block
- indexHTML = indexHTML.replace(/([ \t]*)(<\/head>)/, '$1 \n$1$2');
-
- // output Application.js and index.html
- outputFiles[rootDirectory + "/Application.js"] = applicationJS.join("\n");
- outputFiles[rootDirectory + "/index.html"] = indexHTML;
- }
- else
- {
- // phase 3b: rebuild .sj files with correct imports, copy .j files
- CPLog.error("PHASE 3b: Rebuild .sj");
-
- var bundles = {};
-
- for (var path in requiredFiles)
- {
- var file = scope.objj_files[path],
- filename = basename(path),
- directory = dirname(path);
-
- if (file.path != path)
- CPLog.warn("Sanity check failed (file path): " + file.path + " vs. " + path);
-
- if (file.bundle)
- {
- var bundleDirectory = dirname(file.bundle.path);
-
- if (!bundles[file.bundle.path])
- bundles[file.bundle.path] = file.bundle;
-
- if (bundleDirectory != directory)
- CPLog.warn("Sanity check failed (directory path): " + directory + " vs. " + bundleDirectory);
-
- // if it's in a .sj
- var dict = file.bundle.info,
- replacedFiles = [dict objectForKey:"CPBundleReplacedFiles"];
- if (replacedFiles && [replacedFiles containsObject:filename])
- {
- // compute the platform used for this bundle
- var platform = "",
- bundlePlatforms = [dict objectForKey:"CPBundlePlatforms"];
-
- if (bundlePlatforms)
- {
- platform = [bundlePlatforms firstObjectCommonWithArray:scope.OBJJ_PLATFORMS];
- if (platform)
- platform = platform + ".platform/";
- }
-
- var staticPath = bundleDirectory + "/" + platform + [dict objectForKey:"CPBundleExecutable"];
- if (!outputFiles[staticPath])
- {
- outputFiles[staticPath] = [];
- outputFiles[staticPath].push("@STATIC;1.0;");
- }
- outputFiles[staticPath].push("p;");
- outputFiles[staticPath].push(filename.length+";");
- outputFiles[staticPath].push(filename);
-
- for (var i = 0; i < file.fragments.length; i++)
- {
- if (file.fragments[i].type & FRAGMENT_CODE)
- {
- outputFiles[staticPath].push("c;");
- outputFiles[staticPath].push(file.fragments[i].info.length+";");
- outputFiles[staticPath].push(file.fragments[i].info);
- }
- else if (file.fragments[i].type & FRAGMENT_FILE)
- {
- var ignoreFragment = false;
- if (file.fragments[i].conditionallyIgnore)
- {
- var importPath = findImportInObjjFiles(scope, file.fragments[i]);
- if (!importPath || !requiredFiles[importPath])
- {
- ignoreFragment = true;
- }
- }
-
- if (!ignoreFragment)
- {
- if (file.fragments[i].type & FRAGMENT_LOCAL)
- {
- var relativePath = pathRelativeTo(file.fragments[i].info, directory)
-
- outputFiles[staticPath].push("i;");
- outputFiles[staticPath].push(relativePath.length+";");
- outputFiles[staticPath].push(relativePath);
- }
- else
- {
- outputFiles[staticPath].push("I;");
- outputFiles[staticPath].push(file.fragments[i].info.length+";");
- outputFiles[staticPath].push(file.fragments[i].info);
- }
- }
- else
- CPLog.info("Ignoring import fragment " + file.fragments[i].info + " in " + path);
- }
- else
- CPLog.error("Unknown fragment type");
- }
- }
- // always output individual .j files
- else
- {
- outputFiles[path] = file.contents;
- }
- }
- else
- CPLog.warn("No bundle for " + path)
- }
-
- // phase 3.5: fix bundle plists
- CPLog.error("PHASE 3.5: fix bundle plists");
-
- for (var path in bundles)
- {
- var directory = dirname(path),
- dict = bundles[path].info,
- replacedFiles = [dict objectForKey:"CPBundleReplacedFiles"];
-
- CPLog.info("Modifying .sj: " + path);
-
- if (replacedFiles)
- {
- var newReplacedFiles = [];
- [dict setObject:newReplacedFiles forKey:"CPBundleReplacedFiles"];
-
- for (var i = 0; i < replacedFiles.length; i++)
- {
- var replacedFilePath = directory + "/" + replacedFiles[i]
- if (!requiredFiles[replacedFilePath])
- {
- CPLog.info("Removing: " + replacedFiles[i]);
- }
- else
- {
- //CPLog.info("Keeping: " + replacedFiles[i]);
- newReplacedFiles.push(replacedFiles[i]);
- }
- }
- }
- outputFiles[path] = CPPropertyListCreateXMLData(dict).string;
- }
- }
-
- // phase 4: copy everything and write out the new files
- CPLog.error("PHASE 4: copy to output");
-
- var rootDirectoryFile = new Packages.java.io.File(rootDirectory),
- outputDirectoryFile = new Packages.java.io.File(outputDirectory);
-
- // FIXME: intelligently copy only what we need (Resources directories?)
- copyDirectory(rootDirectoryFile, outputDirectoryFile, optimizePNG);
-
- for (var path in outputFiles)
- {
- var file = new java.io.File(outputDirectoryFile, pathRelativeTo(path, rootDirectory));
-
- var parent = file.getParentFile();
- if (!parent.exists())
- {
- CPLog.warn(parent + " doesn't exist, creating directories.");
- parent.mkdirs();
- }
-
- CPLog.info("Writing out " + file);
-
- var writer = new java.io.BufferedWriter(new java.io.FileWriter(file));
-
- if (typeof outputFiles[path] == "string")
- writer.write(outputFiles[path]);
- else
- writer.write(outputFiles[path].join(""));
-
- writer.close();
- }
-}
-
-// Helper Utilities
-
-// TODO: moved elsewhere?
-
-function copyDirectory(src, dst, optimizePNG)
-{
- CPLog.trace("Copying directory " + src);
-
- dst.mkdirs();
-
- var files = src.listFiles();
- for (var i = 0; i < files.length; i++)
- {
- if (files[i].isFile())
- copyFile(files[i], new Packages.java.io.File(dst, files[i].getName()), optimizePNG);
- else if (files[i].isDirectory())
- copyDirectory(files[i], new Packages.java.io.File(dst, files[i].getName()), optimizePNG);
- }
-}
-
-function copyFile(src, dst, optimizePNG)
-{
- if (optimizePNG && (/.png$/).test(src.getName()))
- {
- CPLog.warn("Optimizing .png " + src);
- exec(["pngcrush", "-rem", "alla", "-reduce", /*"-brute",*/ src.getAbsolutePath(), dst.getAbsolutePath()]);
- }
- else
- {
- CPLog.trace("Copying file " + src);
-
- var input = (new Packages.java.io.FileInputStream(src)).getChannel(),
- output = (new Packages.java.io.FileOutputStream(dst)).getChannel();
-
- input.transferTo(0, input.size(), output);
-
- input.close();
- output.close();
- }
-}
-
-function dirname(path)
-{
- return path.substring(0, path.lastIndexOf("/"));
-}
-
-function basename(path)
-{
- return path.substring(path.lastIndexOf("/") + 1);
-}
-
-function absolutePath(path)
-{
- return String((new Packages.java.io.File(path)).getCanonicalPath());
-}
-
-function pathRelativeTo(target, relativeTo)
-{
- var components = [],
- targetParts = target.split("/"),
- relativeParts = relativeTo ? relativeTo.split("/") : [];
-
- var i = 0;
- while (i < targetParts.length)
- {
- if (targetParts[i] != relativeParts[i])
- break;
- i++;
- }
-
- for (var j = i; j < relativeParts.length; j++)
- components.push("..");
-
- for (var j = i; j < targetParts.length; j++)
- components.push(targetParts[j]);
-
- var result = components.join("/");
-
- return result;
-}
-
-function exec()
-{
- var printOutput = false;
-
- var runtime = Packages.java.lang.Runtime.getRuntime()
- var p = runtime.exec.apply(runtime, arguments);
-
- var stdout = new Packages.java.io.BufferedReader(new Packages.java.io.InputStreamReader(p.getInputStream())),
- stdoutString = "",
- stderr = new Packages.java.io.BufferedReader(new Packages.java.io.InputStreamReader(p.getErrorStream())),
- stderrString = "";
-
- var done = false;
- while (!done)
- {
- done = true;
- if (s = stdout.readLine())
- {
- stdoutString += s;
- if (printOutput)
- CPLog.info("exec: " + s);
- done = false;
- }
- if (s = stderr.readLine())
- {
- stderrString += s;
- //if (printOutput)
- CPLog.warn("exec: " + s);
- done = false;
- }
- }
-
- var code = p.waitFor();
-
- return { code : code, stdout : stdoutString, stderr : stderrString };
-}
-
-function outputTransformer(os, document, encoding, standalone)
-{
- var domSource = new Packages.javax.xml.transform.dom.DOMSource(document);
- var streamResult = new Packages.javax.xml.transform.stream.StreamResult(os);
- var tf = Packages.javax.xml.transform.TransformerFactory.newInstance();
-
- var serializer = tf.newTransformer();
- serializer.setOutputProperty(Packages.javax.xml.transform.OutputKeys.VERSION, "1.0");
- serializer.setOutputProperty(Packages.javax.xml.transform.OutputKeys.INDENT, "yes");
- if (encoding)
- serializer.setOutputProperty(Packages.javax.xml.transform.OutputKeys.ENCODING, encoding);
- if (standalone)
- serializer.setOutputProperty(Packages.javax.xml.transform.OutputKeys.STANDALONE, (standalone ? "yes" : "no"));
-
- String(serializer.transform(domSource, streamResult));
-}
+@import
+
+@import "objj-analysis-tools.j"
+
+var defaultMain = "main.j",
+ defaultFrameworks = "Frameworks";
+
+var usageMessage =
+"Usage: press root_directory output_directory [options]\n\
+ --main path The relative path (from root_directory) to the main file (default: 'main.j')\n\
+ --frameworks path The relative path (from root_directory) to the frameworks directory (default: 'Frameworks')\n\
+ --platforms Platform names, colon separated (default: 'browser:objj')\n\
+ --png Run pngcrush on all PNGs (pngcrush must be installed!)\n\
+ --flatten Flatten all code into a single Application.js file and attempt add script tag to index.html (useful for Adobe AIR and CDN deployment)\n\
+ --nostrip Don't strip any files\n\
+ --v Verbose";
+
+function main()
+{
+ var rootDirectory = null,
+ outputDirectory = null,
+ mainFilename = null,
+ frameworksDirectory = null,
+ platforms = ['browser', 'objj'],
+ optimizePNG = false,
+ flatten = false,
+ noStrip = false,
+ verbose = false;
+
+ var usageError = false;
+ while (system.args.length && !usageError)
+ {
+ var arg = system.args.shift();
+ switch(arg)
+ {
+ case "--main":
+ if (system.args.length)
+ mainFilename = system.args.shift();
+ else
+ usageError = true;
+ break;
+ case "--frameworks":
+ if (system.args.length)
+ frameworksDirectory = system.args.shift().replace(/\/$/, "");
+ else
+ usageError = true;
+ break;
+ case "--platforms":
+ if (system.args.length)
+ platforms = system.args.shift().split(":");
+ else
+ usageError = true;
+ break;
+ case "--png":
+ optimizePNG = true;
+ break;
+ case "--flatten":
+ flatten = true;
+ break;
+ case "--nostrip":
+ noStrip = true;
+ break;
+ case "--v":
+ verbose = true;
+ break;
+ default:
+ if (rootDirectory == null)
+ rootDirectory = arg.replace(/\/$/, "");
+ else if (outputDirectory == null)
+ outputDirectory = arg.replace(/\/$/, "");
+ else
+ usageError = true;
+ }
+ }
+
+ if (verbose)
+ CPLogRegister(CPLogPrint);
+ else
+ CPLogRegisterRange(CPLogPrint, "fatal", "info");
+
+ if (usageError || rootDirectory == null || outputDirectory == null || !platforms.length)
+ {
+ print(usageMessage);
+ return;
+ }
+
+ rootDirectory = absolutePath(rootDirectory);
+
+ // determine main and frameworks paths
+ var mainPath = rootDirectory + "/" + (mainFilename || defaultMain),
+ frameworksPath = rootDirectory + "/" + (frameworksDirectory || defaultFrameworks);
+
+ CPLog.info("Application root: " + rootDirectory);
+ CPLog.info("Output directory: " + outputDirectory);
+ CPLog.info("Main file: " + mainPath)
+ CPLog.info("Frameworks: " + frameworksPath);
+
+ // get a Rhino context
+ var cx = Packages.org.mozilla.javascript.Context.getCurrentContext(),
+ scope = makeObjjScope(cx);
+
+ // set OBJJ_INCLUDE_PATHS to include the frameworks path
+ scope.OBJJ_INCLUDE_PATHS = [frameworksPath];
+ scope.OBJJ_PLATFORMS = platforms;
+
+ // flattening bookkeeping. keep track of the bundles and evaled code (in the correct order!)
+ var bundleArchives = [],
+ evaledFragments = [];
+
+ scope.objj_search.prototype.didReceiveBundleResponseOriginal = scope.objj_search.prototype.didReceiveBundleResponse;
+ scope.objj_search.prototype.didReceiveBundleResponse = function(aResponse) {
+ //CPLog.trace("RESPONSE: " + aResponse);
+
+ var __fakeResponse = {
+ success : aResponse.success,
+ filePath : pathRelativeTo(aResponse.filePath, rootDirectory)
+ };
+
+ if (aResponse.success)
+ {
+ var xmlOutput = new Packages.java.io.ByteArrayOutputStream();
+ outputTransformer(xmlOutput, aResponse.xml, "UTF-8");
+ //__fakeResponse.xml = String(xmlOutput.toString());
+ __fakeResponse.text = CPPropertyListCreate280NorthData(CPPropertyListCreateFromXMLData({ string:String(xmlOutput.toString())})).string;
+ //CPLog.trace("SERIALIZED: " + __fakeResponse.xml.substring(0,100));
+ }
+
+ bundleArchives.push(__fakeResponse);
+
+ this.didReceiveBundleResponseOriginal.apply(this, arguments);
+ }
+
+ // phase 1: get global defines
+ CPLog.error("PHASE 1: Loading application...");
+
+ var globals = findGlobalDefines(cx, scope, mainPath, evaledFragments);
+
+ // coalesce the results
+ var dependencies = coalesceGlobalDefines(globals);
+
+ // Log
+ CPLog.trace("Global defines:");
+ for (var i in dependencies)
+ CPLog.trace(" " + i + " => " + dependencies[i]);
+
+ // phase 2: walk the dependency tree (both imports and references) to determine exactly which files need to be included
+ CPLog.error("PHASE 2: Walk dependency tree...");
+
+ var requiredFiles = {};
+
+ if (noStrip)
+ {
+ // all files are required. no need for analysis
+ requiredFiles = scope.objj_files;
+ }
+ else
+ {
+ if (!scope.objj_files[mainPath])
+ {
+ CPLog.error("Root file not loaded!");
+ return;
+ }
+
+ CPLog.warn("Analyzing dependencies...");
+
+ var context = {
+ scope : scope,
+ dependencies : dependencies,
+ processedFiles : {},
+ ignoreFrameworkImports : true,
+ importCallback : function(importing, imported) {
+ requiredFiles[imported] = true;
+ },
+ referenceCallback : function(referencing, referenced) {
+ requiredFiles[referenced] = true;
+ }
+ }
+
+ requiredFiles[mainPath] = true;
+ traverseDependencies(context, scope.objj_files[mainPath]);
+
+ var count = 0,
+ total = 0;
+ for (var path in scope.objj_files)
+ {
+ if (requiredFiles[path])
+ {
+ CPLog.debug("Included: " + path);
+ count++;
+ }
+ else
+ {
+ CPLog.info("Excluded: " + path);
+ }
+ total++;
+ }
+ CPLog.warn("Total required files: " + count + " out of " + total);
+
+ // FIXME: sprite images
+ //for (var i in context.bundleImages)
+ //{
+ // var images = context.bundleImages[i];
+ //
+ // CPLog.debug("Bundle images for " + i);
+ // for (var j in images)
+ // CPLog.trace(j + " = " + images[j]);
+ //}
+ }
+
+ var outputFiles = {};
+
+ if (flatten)
+ {
+ // phase 3a: build single Application.js file (and modified index.html)
+ CPLog.error("PHASE 3a: Flattening...");
+
+ var applicationJS = [],
+ indexHTML = readFile(rootDirectory + "/index.html");
+
+ // shim for faking bundle stuff. kind of a giant hack.
+ var fakeDidReceiveBundleResponse = function(aResponse)
+ {
+ var bundle = new objj_bundle();
+
+ bundle.path = aResponse.filePath;
+
+ if (aResponse.success)
+ {
+ var data = new objj_data();
+ data.string = aResponse.text;
+ bundle.info = CPPropertyListCreateFrom280NorthData(data);
+ //bundle.info = CPPropertyListCreateFromXMLData({ string : aResponse.xml });
+ }
+ else
+ bundle.info = new objj_dictionary();
+
+ objj_bundles[aResponse.filePath] = bundle;
+ }
+
+ // add fake bundle response bookkeeping
+ applicationJS.push("var __fakeDidReceiveBundleResponse = " + String(fakeDidReceiveBundleResponse));
+ applicationJS.push("var __fakeBundleArchives = " + JSON.stringify(bundleArchives) + ";");
+ applicationJS.push("for (var i = 0; i < __fakeBundleArchives.length; i++) __fakeDidReceiveBundleResponse(__fakeBundleArchives[i]);")
+
+ // add each fragment, wrapped in a function, along with OBJJ_CURRENT_BUNDLE bookkeeping
+ for (var i = 0; i < evaledFragments.length; i++)
+ {
+ if (requiredFiles[evaledFragments[i].file.path])
+ {
+ applicationJS.push("(function() {");
+ applicationJS.push("var OBJJ_CURRENT_BUNDLE = objj_bundles['"+pathRelativeTo(evaledFragments[i].bundle.path, rootDirectory)+"'];");
+ applicationJS.push(evaledFragments[i].info);
+ applicationJS.push("})();");
+ }
+ else
+ {
+ CPLog.info("Stripping " + evaledFragments[i].file.path);
+ }
+ }
+
+ // call main once the page has loaded
+ applicationJS.push(
+ "if (window.addEventListener) \
+ window.addEventListener('load', function(){main()}, false); \
+ else if (window.attachEvent) \
+ window.attachEvent('onload', function(){main()});"
+ );
+
+ // comment out any OBJJ_MAIN_FILE defintions or objj_import() calls
+ indexHTML = indexHTML.replace(/(\bOBJJ_MAIN_FILE\s*=|\bobjj_import\s*\()/g, '//$&');
+
+ // add a script tag for Application.js at the very end of the block
+ indexHTML = indexHTML.replace(/([ \t]*)(<\/head>)/, '$1 \n$1$2');
+
+ // output Application.js and index.html
+ outputFiles[rootDirectory + "/Application.js"] = applicationJS.join("\n");
+ outputFiles[rootDirectory + "/index.html"] = indexHTML;
+ }
+ else
+ {
+ // phase 3b: rebuild .sj files with correct imports, copy .j files
+ CPLog.error("PHASE 3b: Rebuild .sj");
+
+ var bundles = {};
+
+ for (var path in requiredFiles)
+ {
+ var file = scope.objj_files[path],
+ filename = basename(path),
+ directory = dirname(path);
+
+ if (file.path != path)
+ CPLog.warn("Sanity check failed (file path): " + file.path + " vs. " + path);
+
+ if (file.bundle)
+ {
+ var bundleDirectory = dirname(file.bundle.path);
+
+ if (!bundles[file.bundle.path])
+ bundles[file.bundle.path] = file.bundle;
+
+ if (bundleDirectory != directory)
+ CPLog.warn("Sanity check failed (directory path): " + directory + " vs. " + bundleDirectory);
+
+ // if it's in a .sj
+ var dict = file.bundle.info,
+ replacedFiles = [dict objectForKey:"CPBundleReplacedFiles"];
+ if (replacedFiles && [replacedFiles containsObject:filename])
+ {
+ // compute the platform used for this bundle
+ var platform = "",
+ bundlePlatforms = [dict objectForKey:"CPBundlePlatforms"];
+
+ if (bundlePlatforms)
+ {
+ platform = [bundlePlatforms firstObjectCommonWithArray:scope.OBJJ_PLATFORMS];
+ if (platform)
+ platform = platform + ".platform/";
+ }
+
+ var staticPath = bundleDirectory + "/" + platform + [dict objectForKey:"CPBundleExecutable"];
+ if (!outputFiles[staticPath])
+ {
+ outputFiles[staticPath] = [];
+ outputFiles[staticPath].push("@STATIC;1.0;");
+ }
+ outputFiles[staticPath].push("p;");
+ outputFiles[staticPath].push(filename.length+";");
+ outputFiles[staticPath].push(filename);
+
+ for (var i = 0; i < file.fragments.length; i++)
+ {
+ if (file.fragments[i].type & FRAGMENT_CODE)
+ {
+ outputFiles[staticPath].push("c;");
+ outputFiles[staticPath].push(file.fragments[i].info.length+";");
+ outputFiles[staticPath].push(file.fragments[i].info);
+ }
+ else if (file.fragments[i].type & FRAGMENT_FILE)
+ {
+ var ignoreFragment = false;
+ if (file.fragments[i].conditionallyIgnore)
+ {
+ var importPath = findImportInObjjFiles(scope, file.fragments[i]);
+ if (!importPath || !requiredFiles[importPath])
+ {
+ ignoreFragment = true;
+ }
+ }
+
+ if (!ignoreFragment)
+ {
+ if (file.fragments[i].type & FRAGMENT_LOCAL)
+ {
+ var relativePath = pathRelativeTo(file.fragments[i].info, directory)
+
+ outputFiles[staticPath].push("i;");
+ outputFiles[staticPath].push(relativePath.length+";");
+ outputFiles[staticPath].push(relativePath);
+ }
+ else
+ {
+ outputFiles[staticPath].push("I;");
+ outputFiles[staticPath].push(file.fragments[i].info.length+";");
+ outputFiles[staticPath].push(file.fragments[i].info);
+ }
+ }
+ else
+ CPLog.info("Ignoring import fragment " + file.fragments[i].info + " in " + path);
+ }
+ else
+ CPLog.error("Unknown fragment type");
+ }
+ }
+ // always output individual .j files
+ else
+ {
+ outputFiles[path] = file.contents;
+ }
+ }
+ else
+ CPLog.warn("No bundle for " + path)
+ }
+
+ // phase 3.5: fix bundle plists
+ CPLog.error("PHASE 3.5: fix bundle plists");
+
+ for (var path in bundles)
+ {
+ var directory = dirname(path),
+ dict = bundles[path].info,
+ replacedFiles = [dict objectForKey:"CPBundleReplacedFiles"];
+
+ CPLog.info("Modifying .sj: " + path);
+
+ if (replacedFiles)
+ {
+ var newReplacedFiles = [];
+ [dict setObject:newReplacedFiles forKey:"CPBundleReplacedFiles"];
+
+ for (var i = 0; i < replacedFiles.length; i++)
+ {
+ var replacedFilePath = directory + "/" + replacedFiles[i]
+ if (!requiredFiles[replacedFilePath])
+ {
+ CPLog.info("Removing: " + replacedFiles[i]);
+ }
+ else
+ {
+ //CPLog.info("Keeping: " + replacedFiles[i]);
+ newReplacedFiles.push(replacedFiles[i]);
+ }
+ }
+ }
+ outputFiles[path] = CPPropertyListCreateXMLData(dict).string;
+ }
+ }
+
+ // phase 4: copy everything and write out the new files
+ CPLog.error("PHASE 4: copy to output");
+
+ var rootDirectoryFile = new Packages.java.io.File(rootDirectory),
+ outputDirectoryFile = new Packages.java.io.File(outputDirectory);
+
+ // FIXME: intelligently copy only what we need (Resources directories?)
+ copyDirectory(rootDirectoryFile, outputDirectoryFile, optimizePNG);
+
+ for (var path in outputFiles)
+ {
+ var file = new java.io.File(outputDirectoryFile, pathRelativeTo(path, rootDirectory));
+
+ var parent = file.getParentFile();
+ if (!parent.exists())
+ {
+ CPLog.warn(parent + " doesn't exist, creating directories.");
+ parent.mkdirs();
+ }
+
+ CPLog.info("Writing out " + file);
+
+ var writer = new java.io.BufferedWriter(new java.io.FileWriter(file));
+
+ if (typeof outputFiles[path] == "string")
+ writer.write(outputFiles[path]);
+ else
+ writer.write(outputFiles[path].join(""));
+
+ writer.close();
+ }
+}
+
+// Helper Utilities
+
+// TODO: moved elsewhere?
+
+function copyDirectory(src, dst, optimizePNG)
+{
+ CPLog.trace("Copying directory " + src);
+
+ dst.mkdirs();
+
+ var files = src.listFiles();
+ for (var i = 0; i < files.length; i++)
+ {
+ if (files[i].isFile())
+ copyFile(files[i], new Packages.java.io.File(dst, files[i].getName()), optimizePNG);
+ else if (files[i].isDirectory())
+ copyDirectory(files[i], new Packages.java.io.File(dst, files[i].getName()), optimizePNG);
+ }
+}
+
+function copyFile(src, dst, optimizePNG)
+{
+ if (optimizePNG && (/.png$/).test(src.getName()))
+ {
+ CPLog.warn("Optimizing .png " + src);
+ exec(["pngcrush", "-rem", "alla", "-reduce", /*"-brute",*/ src.getAbsolutePath(), dst.getAbsolutePath()]);
+ }
+ else
+ {
+ CPLog.trace("Copying file " + src);
+
+ var input = (new Packages.java.io.FileInputStream(src)).getChannel(),
+ output = (new Packages.java.io.FileOutputStream(dst)).getChannel();
+
+ input.transferTo(0, input.size(), output);
+
+ input.close();
+ output.close();
+ }
+}
+
+function dirname(path)
+{
+ return path.substring(0, path.lastIndexOf("/"));
+}
+
+function basename(path)
+{
+ return path.substring(path.lastIndexOf("/") + 1);
+}
+
+function absolutePath(path)
+{
+ return String((new Packages.java.io.File(path)).getCanonicalPath());
+}
+
+function pathRelativeTo(target, relativeTo)
+{
+ var components = [],
+ targetParts = target.split("/"),
+ relativeParts = relativeTo ? relativeTo.split("/") : [];
+
+ var i = 0;
+ while (i < targetParts.length)
+ {
+ if (targetParts[i] != relativeParts[i])
+ break;
+ i++;
+ }
+
+ for (var j = i; j < relativeParts.length; j++)
+ components.push("..");
+
+ for (var j = i; j < targetParts.length; j++)
+ components.push(targetParts[j]);
+
+ var result = components.join("/");
+
+ return result;
+}
+
+function exec()
+{
+ var printOutput = false;
+
+ var runtime = Packages.java.lang.Runtime.getRuntime()
+ var p = runtime.exec.apply(runtime, arguments);
+
+ var stdout = new Packages.java.io.BufferedReader(new Packages.java.io.InputStreamReader(p.getInputStream())),
+ stdoutString = "",
+ stderr = new Packages.java.io.BufferedReader(new Packages.java.io.InputStreamReader(p.getErrorStream())),
+ stderrString = "";
+
+ var done = false;
+ while (!done)
+ {
+ done = true;
+ if (s = stdout.readLine())
+ {
+ stdoutString += s;
+ if (printOutput)
+ CPLog.info("exec: " + s);
+ done = false;
+ }
+ if (s = stderr.readLine())
+ {
+ stderrString += s;
+ //if (printOutput)
+ CPLog.warn("exec: " + s);
+ done = false;
+ }
+ }
+
+ var code = p.waitFor();
+
+ return { code : code, stdout : stdoutString, stderr : stderrString };
+}
+
+function outputTransformer(os, document, encoding, standalone)
+{
+ var domSource = new Packages.javax.xml.transform.dom.DOMSource(document);
+ var streamResult = new Packages.javax.xml.transform.stream.StreamResult(os);
+ var tf = Packages.javax.xml.transform.TransformerFactory.newInstance();
+
+ var serializer = tf.newTransformer();
+ serializer.setOutputProperty(Packages.javax.xml.transform.OutputKeys.VERSION, "1.0");
+ serializer.setOutputProperty(Packages.javax.xml.transform.OutputKeys.INDENT, "yes");
+ if (encoding)
+ serializer.setOutputProperty(Packages.javax.xml.transform.OutputKeys.ENCODING, encoding);
+ if (standalone)
+ serializer.setOutputProperty(Packages.javax.xml.transform.OutputKeys.STANDALONE, (standalone ? "yes" : "no"));
+
+ String(serializer.transform(domSource, streamResult));
+}
From 5ccc638bafbf22ca44d237e7965979c6f67c57f2 Mon Sep 17 00:00:00 2001
From: Ross Boucher
Date: Mon, 27 Jul 2009 15:55:53 -0700
Subject: [PATCH 120/244] Add resources for CPButton disabled state. Closes
#152.
---
.gitignore | 2 +-
.../Resources/button-bezel-disabled-center.png | Bin 0 -> 148 bytes
.../Resources/button-bezel-disabled-left.png | Bin 0 -> 221 bytes
.../Resources/button-bezel-disabled-right.png | Bin 0 -> 217 bytes
AppKit/Themes/Aristo/ThemeDescriptors.j | 12 ++++++++++++
5 files changed, 13 insertions(+), 1 deletion(-)
create mode 100644 AppKit/Themes/Aristo/Resources/button-bezel-disabled-center.png
create mode 100644 AppKit/Themes/Aristo/Resources/button-bezel-disabled-left.png
create mode 100644 AppKit/Themes/Aristo/Resources/button-bezel-disabled-right.png
diff --git a/.gitignore b/.gitignore
index 71e257752..b72055ed9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,5 +2,5 @@
Frameworks
Build
Demos
-Aristo
+./Aristo
WebSite
diff --git a/AppKit/Themes/Aristo/Resources/button-bezel-disabled-center.png b/AppKit/Themes/Aristo/Resources/button-bezel-disabled-center.png
new file mode 100644
index 0000000000000000000000000000000000000000..7f143a3de420f9d7c4e33a1f9560c7bf8b328130
GIT binary patch
literal 148
zcmeAS@N?(olHy`uVBq!ia0vp^j6f{G!3HF)&rH7sq$EpRBT9nv(@M${i&7aJQ}UBi
z6+Ckj(^G>|6H_V+Po~-c6`6UuIEGZ*O1ihZJfHdS_xJauXY8x}eeA%O_xJ7Dmi_<#
v-#Iel$o>8G9}5b*7D`q|6H_V+Po~-c71evXIEGZ*O1iVVT;G_Px!G1gn!!;1^#A|=WtT2llCxy#
zQpp=PZb-~%U}}5x=n+r-|9`1JzP*)ZKE1#G|Bl8PjBE~35)Kl243k^~9hWhj@Vb?~
zuv78`(*lJ*zkYwuXNzz!WK2D8U;l5;!|Utg6Q(Xuxby$l*X%TfYpkyxFmf0$Bzopr0C0a->Hq)$
literal 0
HcmV?d00001
diff --git a/AppKit/Themes/Aristo/Resources/button-bezel-disabled-right.png b/AppKit/Themes/Aristo/Resources/button-bezel-disabled-right.png
new file mode 100644
index 0000000000000000000000000000000000000000..6db8a99ddb64e24a16fa26f4cb11baa95eebc71d
GIT binary patch
literal 217
zcmeAS@N?(olHy`uVBq!ia0vp^EI=&5!3HGnK8=|Nq$EpRBT9nv(@M${i&7aJQ}UBi
z6+Ckj(^G>|6H_V+Po~-c6;*q>IEGZ*O1iVVJfE4F`LMdeK87Rgk!#khk*NFo>*)6{
zFN1fdpPy%FSo`~1@5A@^_wzh@^oZyG|NrJGKfk}1XXatJc}K?~a0f$2@46-(#tBom
zTz3*SHeg9${PO&~d;mi&>uQF=xP3L8L4}P^53vTkFs@;IblPDLzrq2AIN5nCV#>O5
QfX-m>boFyt=akR{0OL$m1ONa4
literal 0
HcmV?d00001
diff --git a/AppKit/Themes/Aristo/ThemeDescriptors.j b/AppKit/Themes/Aristo/ThemeDescriptors.j
index 72efe57a9..7eeefa96d 100644
--- a/AppKit/Themes/Aristo/ThemeDescriptors.j
+++ b/AppKit/Themes/Aristo/ThemeDescriptors.j
@@ -53,6 +53,14 @@
[_CPCibCustomResource imageResourceWithName:"default-button-bezel-highlighted-center.png" size:CGSizeMake(1.0, 24.0)],
[_CPCibCustomResource imageResourceWithName:"default-button-bezel-highlighted-right.png" size:CGSizeMake(4.0, 24.0)]
]
+ isVertical:NO]],
+
+ disabledBezelColor = [CPColor colorWithPatternImage:[[CPThreePartImage alloc] initWithImageSlices:
+ [
+ [_CPCibCustomResource imageResourceWithName:"button-bezel-disabled-left.png" size:CGSizeMake(4.0, 24.0)],
+ [_CPCibCustomResource imageResourceWithName:"button-bezel-disabled-center.png" size:CGSizeMake(1.0, 24.0)],
+ [_CPCibCustomResource imageResourceWithName:"button-bezel-disabled-right.png" size:CGSizeMake(4.0, 24.0)]
+ ]
isVertical:NO]];
[button setValue:[CPFont boldSystemFontOfSize:12.0] forThemeAttribute:@"font" inState:CPThemeStateBordered];
@@ -65,6 +73,10 @@
[button setValue:highlightedBezelColor forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered|CPThemeStateHighlighted];
[button setValue:CGInsetMake(0.0, 5.0, 0.0, 5.0) forThemeAttribute:@"content-inset" inState:CPThemeStateBordered];
+ [button setValue:[CPColor colorWithCalibratedWhite:0.6 alpha:1.0] forThemeAttribute:@"text-color" inState:CPThemeStateDisabled];
+ [button setValue:disabledBezelColor forThemeAttribute:@"bezel-color" inState:CPThemeStateDisabled];
+ [button setValue:disabledBezelColor forThemeAttribute:@"bezel-color" inState:CPThemeStateDefault|CPThemeStateDisabled];
+
[button setValue:defaultBezelColor forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered|CPThemeStateDefault];
[button setValue:defaultHighlightedBezelColor forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered|CPThemeStateHighlighted|CPThemeStateDefault];
[button setValue:[CPColor colorWithCalibratedRed:13.0/255.0 green:51.0/255.0 blue:70.0/255.0 alpha:1.0] forThemeAttribute:@"text-color" inState:CPThemeStateDefault];
From 38e2ca3589dc8145875303ebf95c6460df5e7308 Mon Sep 17 00:00:00 2001
From: Ross Boucher
Date: Mon, 27 Jul 2009 16:20:12 -0700
Subject: [PATCH 121/244] Add pushed states to checkboxes.
---
.../Resources/check-box-bezel-highlighted.png | Bin 0 -> 289 bytes
.../check-box-bezel-selected-highlighted.png | Bin 0 -> 625 bytes
AppKit/Themes/Aristo/ThemeDescriptors.j | 12 ++++++++++++
3 files changed, 12 insertions(+)
create mode 100644 AppKit/Themes/Aristo/Resources/check-box-bezel-highlighted.png
create mode 100644 AppKit/Themes/Aristo/Resources/check-box-bezel-selected-highlighted.png
diff --git a/AppKit/Themes/Aristo/Resources/check-box-bezel-highlighted.png b/AppKit/Themes/Aristo/Resources/check-box-bezel-highlighted.png
new file mode 100644
index 0000000000000000000000000000000000000000..51e26047ed49054e9342608b94dbb105acfbef03
GIT binary patch
literal 289
zcmV++0p9+JP)7A!xpaaDJ8+SyO@Cp1U%@N!B%
nH%+6!7MJQ7!3NyH@g=|j?m@g!*4HD100000NkvXXu0mjfDY$mp
literal 0
HcmV?d00001
diff --git a/AppKit/Themes/Aristo/Resources/check-box-bezel-selected-highlighted.png b/AppKit/Themes/Aristo/Resources/check-box-bezel-selected-highlighted.png
new file mode 100644
index 0000000000000000000000000000000000000000..dc2a5f089f9e1368b34fabd484f3b0f71ab6f1bc
GIT binary patch
literal 625
zcmV-%0*?KOP)TX%iFd
zBok9>Vqz>Ye%DmcU*bl^wR;z$bkl|Y0Z|GSM8SeVP=cUa10oizAc|N5wMmF=(j>L*
z%)JxOooYj=je6mQx#yhcd~nb7-F{lc|D4II7f1T~*{zP?mzm=@8rg1;E|FrrKp{Bd
z*;7`%(a@~bmRG_P2g1Q?@kj_>mG!K8_udrN!L&WGgD?UE1`|SD@p&|SF4tjmu`Bpt
z_AOq$nMEKP$FON&Y%F(3!bY{x?pg7BwTu^q0tUk|=(>*cXUFlw5(eWm2PN1Qv~3Id
z$B&=|4KVKj&YeEtCTOnJp$N_)6G+WW-$A?G+PX^>@-tY23XeaC(Zqg4_nEF;atfz8
zZQH?8Z3$oJOL+3&KCBJy+TImkWBywOddNU1;K$L-5!WsyIf6GUG#bnBnGU>#7ZzYb@EutXr&8FMn?o{@fa7#X;*YB;+pgK%G89GG=FDa@n?VlW0n$p#wrdJ4
z$W*i0hGoePoWDxO$#~+XnQ+9-_G(KbU7)1qKm3&y(nHeqp8^a3j3Yrkr)lZY00000
LNkvXXu0mjfRSFw&
literal 0
HcmV?d00001
diff --git a/AppKit/Themes/Aristo/ThemeDescriptors.j b/AppKit/Themes/Aristo/ThemeDescriptors.j
index 7eeefa96d..7be96d1cb 100644
--- a/AppKit/Themes/Aristo/ThemeDescriptors.j
+++ b/AppKit/Themes/Aristo/ThemeDescriptors.j
@@ -386,6 +386,16 @@
[
[_CPCibCustomResource imageResourceWithName:"check-box-bezel-selected.png" size:CGSizeMake(15.0, 16.0)], nil, nil
]
+ isVertical:NO]),
+ bezelColorSelectedHighlighted = PatternColor([[CPThreePartImage alloc] initWithImageSlices:
+ [
+ [_CPCibCustomResource imageResourceWithName:"check-box-bezel-selected-highlighted.png" size:CGSizeMake(15.0, 16.0)], nil, nil
+ ]
+ isVertical:NO]),
+ bezelColorHighlighted = PatternColor([[CPThreePartImage alloc] initWithImageSlices:
+ [
+ [_CPCibCustomResource imageResourceWithName:"check-box-bezel-highlighted.png" size:CGSizeMake(15.0, 16.0)], nil, nil
+ ]
isVertical:NO]);
[button setValue:CPLeftTextAlignment forThemeAttribute:@"alignment" inState:CPThemeStateBordered];
@@ -393,6 +403,8 @@
[button setValue:CGInsetMake(0.0, 0.0, 0.0, 20.0) forThemeAttribute:@"content-inset" inState:CPThemeStateBordered];
[button setValue:bezelColor forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered];
[button setValue:bezelColorSelected forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered | CPThemeStateSelected];
+ [button setValue:bezelColorSelectedHighlighted forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered | CPThemeStateSelected | CPThemeStateHighlighted];
+ [button setValue:bezelColorHighlighted forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered | CPThemeStateHighlighted];
[button setValue:CGSizeMake(0.0, 17.0) forThemeAttribute:@"min-size"];
From 241cc2ac0662d16a0c157ca5d80b4a8e0a31b7ed Mon Sep 17 00:00:00 2001
From: Ross Boucher
Date: Mon, 27 Jul 2009 16:38:30 -0700
Subject: [PATCH 122/244] Add highlighted states to radio buttons.
---
.../Aristo/Resources/radio-bezel-highlighted.png | Bin 0 -> 657 bytes
.../radio-bezel-selected-highlighted.png | Bin 0 -> 856 bytes
AppKit/Themes/Aristo/ThemeDescriptors.j | 12 ++++++++++++
3 files changed, 12 insertions(+)
create mode 100644 AppKit/Themes/Aristo/Resources/radio-bezel-highlighted.png
create mode 100644 AppKit/Themes/Aristo/Resources/radio-bezel-selected-highlighted.png
diff --git a/AppKit/Themes/Aristo/Resources/radio-bezel-highlighted.png b/AppKit/Themes/Aristo/Resources/radio-bezel-highlighted.png
new file mode 100644
index 0000000000000000000000000000000000000000..6f16d4803dc09c53440bd6bb9daceeb44a075e84
GIT binary patch
literal 657
zcmV;C0&e|@P)(64bSYw|=%4W0IJRZ+yzu)h5xm;p8
zor=X`v4LK%-@s%tiB_v68jVJ?QmNdH$KyY#N>7GxIBZfBjw+nZRM6AJJAk1d7
z@cDdRZ1Nm`J>+X0ess}j^a(87TCdk)G#Ux`|1bC+SqZn>eF*hW>4Hl12=Orj6bMde
zDFiLhBaB8PNpd7HfZ#TF*~->ZT#vq+>?er~8%|o`4qA)rL8P#sBoadEz>0%jwH7y=
z&1T(gChOsFc#Oafn7r1SOeO+-C)*=l;@sak9F7BqrL}n6wOZ{J`#Eez%*drwD)j-w
zcGYIHolDT~_XVc*Q!<(4>HLx@2hvth@eRXv56@N{-6ptyq1)|>PN&n#=krJ9a`^|H
z$?9cVl}e>fv)TL@3c@Lu#e@)RNM*=5icmFxmw;v7&6Fa?Hc^H?P~
r`zhE{Wl#wu)iR0ZDo%Y*{s=Gt6nP)hJ$xo_Xk&gq;nrz`8g^L-rN_j%vvyyv_x1Ai~}_M^aA!C>rWdA^-xxmJX-Uy!cP
zYN|4I=h~TP#0TvqFnc$BgF`j$2H&vPRoU&Sv_XZn1j%+t?7f0x-&RWs7jSmV?&z`J0$=zK9z&na1m#G%?z3T3*
z-R~!F#6r~RP;Rxr(TpdA*^%>omt3>>LS%5dJSDX&W}eq4$&b1_lW~N`nx^8YYit$>H&y
zU|7b)lTu-f_Jt&gkVwRnZ^j?qOhq^5s3|_>GbPi;Q}-POJM)BIPF|Ui-_!X)
idm@w1UNldB3orl)cAzkx4FaeD0000
Date: Mon, 27 Jul 2009 16:51:05 -0700
Subject: [PATCH 123/244] remove opacity from disabled buttons -- otherwise its
unusable on dark backgrounds
---
.../Resources/button-bezel-disabled-center.png | Bin 148 -> 131 bytes
.../Resources/button-bezel-disabled-left.png | Bin 221 -> 211 bytes
.../Resources/button-bezel-disabled-right.png | Bin 217 -> 202 bytes
3 files changed, 0 insertions(+), 0 deletions(-)
diff --git a/AppKit/Themes/Aristo/Resources/button-bezel-disabled-center.png b/AppKit/Themes/Aristo/Resources/button-bezel-disabled-center.png
index 7f143a3de420f9d7c4e33a1f9560c7bf8b328130..2f25f525283ff733a1593882ccea06a1ee43bc02 100644
GIT binary patch
delta 77
zcmV-T0J8s-0fPaM83+OZ006YE0F99$C^{ucL_t(|+G4tQ?;gYN-@lna`2YX^1o6Lr
j|A0n-7HNq==oL_t(|+RTo-4Fe$%L>F#Dg3IWF)NQ#E+XWr1@JR^~0f^7~
zu!L)1qzUFt^0?OeaL&EF_hgJAu-3jq2$XZCS}P%A>?wqRF~+ahS_2}26`W%iFb#JT
zr95Jc@D*SHz=f)|$vyv{01E&B07*qoM6N<$f+2W7
AasU7T
delta 156
zcmV;N0Av5t0o?(RNq>JyL_t(|+G5fiwgFckn`xt?>cgQju-0000<
KMNUMnLSTZizeukD
diff --git a/AppKit/Themes/Aristo/Resources/button-bezel-disabled-right.png b/AppKit/Themes/Aristo/Resources/button-bezel-disabled-right.png
index 6db8a99ddb64e24a16fa26f4cb11baa95eebc71d..92127238afebd7d57e158ce012f798af02fd27b4 100644
GIT binary patch
delta 137
zcmV;40CxY`0m=c8Nq=lfL_t(|+RTtU4uBvKM2E24SkEExRvZFqLP-J*pB17O7S_7e
zzLzN`Bb;+Ar35o?*4kB+Qn9ZEJ#GB
rm@o#$7+aI~9!jYRyD?@t1Q-D1v!!ISH+lU400007uL_t(|+G5
Date: Mon, 27 Jul 2009 16:57:16 -0700
Subject: [PATCH 124/244] Add disabled states to CPRadioButton
---
.../Aristo/Resources/radio-bezel-disabled.png | Bin 0 -> 640 bytes
.../Resources/radio-bezel-selected-disabled.png | Bin 0 -> 799 bytes
AppKit/Themes/Aristo/ThemeDescriptors.j | 12 ++++++++++++
3 files changed, 12 insertions(+)
create mode 100644 AppKit/Themes/Aristo/Resources/radio-bezel-disabled.png
create mode 100644 AppKit/Themes/Aristo/Resources/radio-bezel-selected-disabled.png
diff --git a/AppKit/Themes/Aristo/Resources/radio-bezel-disabled.png b/AppKit/Themes/Aristo/Resources/radio-bezel-disabled.png
new file mode 100644
index 0000000000000000000000000000000000000000..76d3c79d7dc05616b0bcedc2fb69a7288347c3dd
GIT binary patch
literal 640
zcmV-`0)PF9P)
z&csR7jb^;bo%`Oq_uO~y-17wCh2(NMvE6QeZ?#wS@Ua#A<-1D6Nml)sEO|4ej
zlx6wC@AvPhswxBm0Y@#%a&$VK3iJ8AXxsKtGMTKpIMKZwH-5#ksA<|xG#V9{L=;7W
z9Lqh=>1SM}QrUK^lKIJGGTL&vyapL
z@%$$?^siwUTPV$QlF4L3DqIpT0%$gy%`+tFj>lt9lL1G_-a9b-oOu2O3y$t!FgO_w
zhXw=4h1ZmRsL}8DPl3}*rP9oKJNbMbV^?Be>~1U;`-ydmJYak7=*eQ!G^yoYuXn2J
z`VF|%&1SQfLwmGifi!(MuA#??MB*FT+XELq!L2||RMEjC{@_LDB}wWasa~yC?f+ge
zo&eeV0k^NihLJ=C*bh4=4KRrZwg5Y11I5>kw`lY)2b=BAPbyamMaH1_OEve~=8}}n2??w{FVj<6}Oxe*CSksvDa((69
zlbM;BxD}(c{$z9OmxX37+Lk%q?bwho4HO+bUPlR`?E2sb{4|`eWt%+mQ&CSiR
z?AISt0qD!UT^-}+`ujjPZEyvHT{mis^iS)gC%X@;YgY(Ic#XPiH>WxS!Cnj{yB)($
zzyShV8;>P$9IM#b2?qwGbPh`5c_x#&ip#!AF&G#bd+0dM9nE$cfd74U)H6*7knw=i
z(+?5Hb^!U?B@?6jj|Yp;E5QApQ}P
zNG*)zumBYVZqk(1PgxA42UbtAF@9P8*rtypL#OgQ;Wcb#EQBS=gZRUQvSD`i08@1Y
z)xmcwZF)Gew+OE(ilRyx2T>GRjIm>b?%qD|>jD&9!`$G15=6@;Lg1l9%n47&iDgvZ
z<2-11YRbitQRr|IAaPD(YV=Z@o^wtN3xwB@0heL$)^oj-hQVz%nx|5!Hu|khJl6%m
z{nvzNNXISjZaoWXl~S!*Z5W;=)k+z7t-Nu#v+fITUfbtBnmcxqk0H|??K(GZiS`7<2Vdn
zA?7DuM!!+^`F!3_r_-B&irP+oJCPik<*t1lOY;n--b7Cr#pnP+|Gih-Tf`%LM+V!u
zT#o;Bi}4EBaU3U6E@0FLaqK!O0U0Cp3eF331e78%_~%p5d{5{q{H{c^xd~-~f=Dqq
d`JVg|U;r{P;N`sT!fOBk002ovPDHLkV1i2qZ6W{w
literal 0
HcmV?d00001
diff --git a/AppKit/Themes/Aristo/ThemeDescriptors.j b/AppKit/Themes/Aristo/ThemeDescriptors.j
index a047ab9f4..41295e976 100644
--- a/AppKit/Themes/Aristo/ThemeDescriptors.j
+++ b/AppKit/Themes/Aristo/ThemeDescriptors.j
@@ -364,6 +364,16 @@
[_CPCibCustomResource imageResourceWithName:"radio-bezel-selected-highlighted.png" size:CGSizeMake(17.0, 17.0)], nil, nil
]
isVertical:NO]),
+ bezelColorSelectedDisabled = PatternColor([[CPThreePartImage alloc] initWithImageSlices:
+ [
+ [_CPCibCustomResource imageResourceWithName:"radio-bezel-selected-disabled.png" size:CGSizeMake(17.0, 17.0)], nil, nil
+ ]
+ isVertical:NO]),
+ bezelColorDisabled = PatternColor([[CPThreePartImage alloc] initWithImageSlices:
+ [
+ [_CPCibCustomResource imageResourceWithName:"radio-bezel-disabled.png" size:CGSizeMake(17.0, 17.0)], nil, nil
+ ]
+ isVertical:NO]),
bezelColorHighlighted = PatternColor([[CPThreePartImage alloc] initWithImageSlices:
[
[_CPCibCustomResource imageResourceWithName:"radio-bezel-highlighted.png" size:CGSizeMake(17.0, 17.0)], nil, nil
@@ -377,6 +387,8 @@
[button setValue:bezelColorSelected forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered | CPThemeStateSelected];
[button setValue:bezelColorSelectedHighlighted forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered | CPThemeStateSelected | CPThemeStateHighlighted];
[button setValue:bezelColorHighlighted forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered | CPThemeStateHighlighted];
+ [button setValue:bezelColorDisabled forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered | CPThemeStateDisabled];
+ [button setValue:bezelColorSelectedDisabled forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered | CPThemeStateDisabled | CPThemeStateSelected];
[button setValue:CGSizeMake(0.0, 17.0) forThemeAttribute:@"min-size"];
From a05ecd27593472b66990b8e14e0ccc3bd5763431 Mon Sep 17 00:00:00 2001
From: Ross Boucher
Date: Mon, 27 Jul 2009 17:03:34 -0700
Subject: [PATCH 125/244] Add disabled state for check boxes
---
.../Aristo/Resources/check-box-bezel-disabled.png | Bin 0 -> 296 bytes
.../check-box-bezel-selected-disabled.png | Bin 0 -> 598 bytes
AppKit/Themes/Aristo/ThemeDescriptors.j | 12 ++++++++++++
3 files changed, 12 insertions(+)
create mode 100644 AppKit/Themes/Aristo/Resources/check-box-bezel-disabled.png
create mode 100644 AppKit/Themes/Aristo/Resources/check-box-bezel-selected-disabled.png
diff --git a/AppKit/Themes/Aristo/Resources/check-box-bezel-disabled.png b/AppKit/Themes/Aristo/Resources/check-box-bezel-disabled.png
new file mode 100644
index 0000000000000000000000000000000000000000..c1246094f5d3a50c1843b0f42d467975dfccb94a
GIT binary patch
literal 296
zcmeAS@N?(olHy`uVBq!ia0vp^{6H+g!3HExhN-duDajJoh?3y^w370~qErUQl>DSr
z1<%~X^wgl##FWaylc_d9MW;Mn978H@9hqdv*JL2lCjaFiLm+bz(;>ziGQG{x>Yo_m
zI;LjqVf4J-CM+P7J44`ut$u@UbN#37vHR+BKh0USiiJUDrDZAi>B_+DSIn&f&vj1g
zc}{v#a!+UCV~bbYa836b}oMZyFGK3Phs@YP&kVX2Ex%SJ-uBR6+~CG{TZ8u0$amd~D#~No
s4;$zln)lpM=JmdKI;Vst015GR<^TWy
literal 0
HcmV?d00001
diff --git a/AppKit/Themes/Aristo/Resources/check-box-bezel-selected-disabled.png b/AppKit/Themes/Aristo/Resources/check-box-bezel-selected-disabled.png
new file mode 100644
index 0000000000000000000000000000000000000000..fea5c786c0a9dda267d9068b3efa34b05493286d
GIT binary patch
literal 598
zcmV-c0;&CpP)f^napN8O?EeG
zl8v>&rp1E4!v{g%eG~jy3jPBhMDay@@S$j=2C4-qM$iPMrrk7cn(Zb#AI@$~NbMJ1
zI0JL%o_p?{J42LG_#b=r{N?RlfB&)T6z-C(pMiZ8^C!_bz9*z|E+R@P5riWVa+NWL
z(Hjzut*=|4bMqjCpuSW`@+Kw~
zCA{OFHS(^9o69R`cRJV!0tCGtvNqFwW>KpxB1>r+H#>7OQBLe?sf?I&Y;XTg_l9ZW
ziXLOZai=k-$g>&C6(4cTvA2H!D@#zVE}S?&K~_qhI`pg8!Q(MXM*si-
literal 0
HcmV?d00001
diff --git a/AppKit/Themes/Aristo/ThemeDescriptors.j b/AppKit/Themes/Aristo/ThemeDescriptors.j
index 41295e976..bde1704c8 100644
--- a/AppKit/Themes/Aristo/ThemeDescriptors.j
+++ b/AppKit/Themes/Aristo/ThemeDescriptors.j
@@ -416,6 +416,16 @@
[_CPCibCustomResource imageResourceWithName:"check-box-bezel-selected-highlighted.png" size:CGSizeMake(15.0, 16.0)], nil, nil
]
isVertical:NO]),
+ bezelColorSelectedDisabled = PatternColor([[CPThreePartImage alloc] initWithImageSlices:
+ [
+ [_CPCibCustomResource imageResourceWithName:"check-box-bezel-selected-disabled.png" size:CGSizeMake(15.0, 16.0)], nil, nil
+ ]
+ isVertical:NO]),
+ bezelColorDisabled = PatternColor([[CPThreePartImage alloc] initWithImageSlices:
+ [
+ [_CPCibCustomResource imageResourceWithName:"check-box-bezel-disabled.png" size:CGSizeMake(15.0, 16.0)], nil, nil
+ ]
+ isVertical:NO]),
bezelColorHighlighted = PatternColor([[CPThreePartImage alloc] initWithImageSlices:
[
[_CPCibCustomResource imageResourceWithName:"check-box-bezel-highlighted.png" size:CGSizeMake(15.0, 16.0)], nil, nil
@@ -429,6 +439,8 @@
[button setValue:bezelColorSelected forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered | CPThemeStateSelected];
[button setValue:bezelColorSelectedHighlighted forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered | CPThemeStateSelected | CPThemeStateHighlighted];
[button setValue:bezelColorHighlighted forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered | CPThemeStateHighlighted];
+ [button setValue:bezelColorDisabled forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered | CPThemeStateDisabled];
+ [button setValue:bezelColorSelectedDisabled forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered | CPThemeStateDisabled | CPThemeStateSelected];
[button setValue:CGSizeMake(0.0, 17.0) forThemeAttribute:@"min-size"];
From 41dc660140e4b4d7b6b4f0fe39273816859c950e Mon Sep 17 00:00:00 2001
From: Francisco Ryan Tolmasky I
Date: Mon, 27 Jul 2009 18:19:34 -0700
Subject: [PATCH 126/244] Added support for document cibs.
Reviewed by me.
---
AppKit/CPDocument.j | 17 ++--
AppKit/CPWindowController.j | 161 +++++++++++++++++++++++++++++-------
2 files changed, 139 insertions(+), 39 deletions(-)
diff --git a/AppKit/CPDocument.j b/AppKit/CPDocument.j
index b39506c37..145d937d5 100644
--- a/AppKit/CPDocument.j
+++ b/AppKit/CPDocument.j
@@ -90,7 +90,9 @@ var CPDocumentUntitledCount = 0;
CPDocuments should be used to represent this.
*/
@implementation CPDocument : CPResponder
-{
+{
+ CPWindow _window; // For outlet purposes.
+
CPURL _fileURL;
CPString _fileType;
CPArray _windowControllers;
@@ -228,9 +230,10 @@ var CPDocumentUntitledCount = 0;
*/
- (void)makeWindowControllers
{
- var controller = [[CPWindowController alloc] initWithWindowCibName:nil];
-
- [self addWindowController:controller];
+ var windowCibName = [self windowCibName];
+
+ if (windowCibName)
+ [self addWindowController:[[CPWindowController alloc] initWithWindowCibName:windowCibName owner:self]];
}
/*!
@@ -250,7 +253,7 @@ var CPDocumentUntitledCount = 0;
{
[_windowControllers addObject:aWindowController];
- if ([aWindowController document] != self)
+ if ([aWindowController document] !== self)
{
[aWindowController setNextResponder:self];
[aWindowController setDocument:self];
@@ -295,7 +298,7 @@ var CPDocumentUntitledCount = 0;
Called after aWindowController loads the document's Nib file.
@param aWindowController the controller that loaded the Nib file
*/
-- (void)windowControllerDidLoadNib:(CPWindowController)aWindowController
+- (void)windowControllerDidLoadCib:(CPWindowController)aWindowController
{
}
@@ -303,7 +306,7 @@ var CPDocumentUntitledCount = 0;
Called before