From 4e19563146df3a6b3c1906cbbf6a65f2c7a422e6 Mon Sep 17 00:00:00 2001 From: "mark%moxienet.com" Date: Thu, 18 Aug 2005 13:11:46 +0000 Subject: [PATCH] Bug 302080, Mac products need to display EULA. New Mac dmg packager, EULA resources, dmg backgrounds, and icons. Also fixes 180837, 257854, 283598. r=josh sr=smfr sr=bryner --- allmakefiles.sh | 1 + browser/app/Makefile.in | 4 + browser/app/macbuild/background.png | Bin 0 -> 1143 bytes browser/app/macbuild/disk.icns | Bin 0 -> 39250 bytes browser/app/macbuild/dsstore | Bin 0 -> 6148 bytes browser/installer/Makefile.in | 7 + build/package/mac_osx/make-diskimage | 87 +- build/package/mac_osx/pkg-dmg | 1454 +++++++++++++++++ camino/Makefile.in | 8 + camino/installer/Makefile.in | 67 + camino/resources/package/background.jpg | Bin 0 -> 20381 bytes camino/resources/package/disk.icns | Bin 0 -> 36677 bytes camino/resources/package/dsstore | Bin 0 -> 6148 bytes mail/app/Makefile.in | 4 + mail/app/macbuild/background.png | Bin 0 -> 1143 bytes mail/app/macbuild/disk.icns | Bin 0 -> 41398 bytes mail/app/macbuild/dsstore | Bin 0 -> 6148 bytes mail/installer/Makefile.in | 7 + other-licenses/branding/firefox/Makefile.in | 4 + .../branding/firefox/background.png | Bin 0 -> 67547 bytes other-licenses/branding/firefox/disk.icns | Bin 0 -> 45739 bytes other-licenses/branding/firefox/dsstore | Bin 0 -> 6148 bytes .../branding/thunderbird/Makefile.in | 4 + .../branding/thunderbird/background.png | Bin 0 -> 65705 bytes other-licenses/branding/thunderbird/disk.icns | Bin 0 -> 47449 bytes other-licenses/branding/thunderbird/dsstore | Bin 0 -> 6148 bytes toolkit/mozapps/installer/packager.mk | 22 +- 27 files changed, 1595 insertions(+), 74 deletions(-) create mode 100644 browser/app/macbuild/background.png create mode 100644 browser/app/macbuild/disk.icns create mode 100755 browser/app/macbuild/dsstore create mode 100755 build/package/mac_osx/pkg-dmg create mode 100644 camino/installer/Makefile.in create mode 100644 camino/resources/package/background.jpg create mode 100644 camino/resources/package/disk.icns create mode 100644 camino/resources/package/dsstore create mode 100644 mail/app/macbuild/background.png create mode 100644 mail/app/macbuild/disk.icns create mode 100755 mail/app/macbuild/dsstore create mode 100644 other-licenses/branding/firefox/background.png create mode 100644 other-licenses/branding/firefox/disk.icns create mode 100755 other-licenses/branding/firefox/dsstore create mode 100644 other-licenses/branding/thunderbird/background.png create mode 100644 other-licenses/branding/thunderbird/disk.icns create mode 100755 other-licenses/branding/thunderbird/dsstore diff --git a/allmakefiles.sh b/allmakefiles.sh index a1a9ae40b942..6cd394caa56c 100755 --- a/allmakefiles.sh +++ b/allmakefiles.sh @@ -1101,6 +1101,7 @@ calendar/sunbird/base/Makefile MAKEFILES_macbrowser=" camino/Makefile +camino/installer/Makefile " MAKEFILES_sql=" diff --git a/browser/app/Makefile.in b/browser/app/Makefile.in index 117cd987349f..4c06e2501a88 100644 --- a/browser/app/Makefile.in +++ b/browser/app/Makefile.in @@ -269,6 +269,10 @@ endif ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT))) cp $(srcdir)/macbuild/firefox.icns $(DIST)/branding/firefox.icns cp $(srcdir)/macbuild/document.icns $(DIST)/branding/document.icns + cp $(srcdir)/macbuild/dsstore $(DIST)/branding/dsstore + cp $(srcdir)/macbuild/background.png $(DIST)/branding/background.png + cp $(srcdir)/macbuild/disk.icns $(DIST)/branding/disk.icns + cp $(srcdir)/macbuild/license.r $(DIST)/branding/license.r endif ifneq (,$(filter gtk gtk2,$(MOZ_WIDGET_TOOLKIT))) cp $(srcdir)/mozicon128.png $(DIST)/branding/mozicon128.png diff --git a/browser/app/macbuild/background.png b/browser/app/macbuild/background.png new file mode 100644 index 0000000000000000000000000000000000000000..e52f31d051010215470ae91fc84a6d29d8645efa GIT binary patch literal 1143 zcmeAS@N?(olHy`uVBq!ia0y~yV4MKNIvh+uk)*3dQyCao>^xl@Ln`LHxx&cHz`$`p zA^rckS&yY#68IF7*cF^29NIQC@FX%y9%3?TVNK!SJ|Q4BK~YD+nS2RZb^!_u=wWAI z`2Qd1T27!B8W#Lte_QYcM=NU%2lovDu?>nk3CYh$vDNMWiW8uc8Qw3fK@7orK;yBE5qkMN~vZQHmfP zMX(nv*WMA7_U{ST_u7c}{niR={r~^YU3yJ&=Gpt~bIzX0JkLJavT?^Q1UX{4Ww*K- zg4iuX;7CC5GGO}~>^{%M2%!~|DW^fjogJz?- zXdW&9!|UA~OAqHV|(v>olhcXoDlq20Ki9<&$j!(F{fx<=~9UB6Bm2pU9h z1m6t0MSrv7LPgw0#ax8mXkXrm`sPlw8=8 zz8~~}^e}jc;pwZPzH|9Ib+Qr0#XF1Yo7)HfdPaVZz979Mzd~P=-jLto-n}EgCw;(u z{7C*p8peJ8Od27N;=X)|`pPgiHu~z?$xxGQgvlth>~vG-otLj)lYe&(d4zq3j_TDl+n#$V2lT}R{m+}0bfTy5dJJtDXHImH9=M9^f+6#e9v z2bU{+<+Bia%ZQS5t-V7iIFG&~z5m+*bePy%;Hoadh%#}ou&}bSaj>&8^USk|YkN=W zL@YpjebiRDOEVK;;$0V8R^Qh5=*>R?K%o44w@Ey9;mWnAZ%F?*LjELiBS;=kV4NelKzGF|Q}eZ! zmTT9T7#Zj+kQU%zVx;HZ&_kIG7$y^=aj03_Wr*}-^LGfg<~jG5>H?g zQ`IqCxysmNjU{Ov*BVnJL%k(h>WUIvO!P$djlGk}Q^bi^-F0Dx&?oiH>Bld13_gGR zy)*I!^Kf`J33ctIddpWDnV7G$va+$UUT%|$wT;E}1hrH!qfy`8m{`3eIaEe&NwIT;B7 zHX?yetu_&$-e0RvSOZS!_~f2y?!NWv-M4`vf0|z@g`?w^ou{$@u=EX$R-3I^Z|C6X z=wN5Fe$_JFMH;F~@-pJ0LR<`ZI;H~05^Q|QnnMotvFP4 zrnUFp8`8HmqxNnW4#y-YAtk3UpW+=1poOKigNy41S7%2{qvg7bG*y)5N&_Ar4;M24 zF1;TMfFrjX3pPS;R|l1xYwLUP_WiVf#SYDMgpt=W zuA-r%|H-$GYYz_x;1C8*9zH=4acPLAy4DhdWh;!$*4sI`x_fwT-e|vS83k5eT0#Wt zJhmtRcj=2LY(+e3tKO}hjxea(CskeQy#5rW_=*l|ClL?=D+f2PfQUE*RasM8ciA#S zfVFjW+32~&W0R}>Dwxp9N^%%1FAwJ&A%1QaJPx<+b0miQwBzJ{opgjn$@y?iW7oj5 z4TA4|z`)GLF-Jg96sEyEb*;s^ z%U7;4TWe+O;Oy$Q$<0iE=^{g%pt@&JM-&W`|iBKGQ8gB<6s#_M`U1T=jIg@5)qeG zQdV2Ic4OXlI8}1s`C`(q~$cV#rb)#SO7GhffXA-i?PX20RMFJQoajJ z<<%i&7drYMet>WgK7Ss$uNXw}n~9ly4xf;igp52y1ZD>YZft70OnafGhU$DJd09yj zDJ?YxZZla+-Lf^GgO6tG9{ zwUqBrOhcH}*C$jpb`L!HG(3!c#*d7=(gSoH9c7ZhSi&-tgOIC3T$buDH&9n!psG9{ zz#;btt7@sKC`++%iVM%-;f96Ch({2{CJg<{gVrivjWmQs#6GpAxo7a{r(x_S0C$op z1X+l~!#rX8dyP|k*VNM1(bH8`QJ$xyATKK=Ato%Mrnx{_ajuxKn6SVc3N{f%=)9*U zg8}{PqxKU4df>Z~Yx>ES-kZ;-!9RG1LCEn$Y(3856BLEOD9lq{ps{e#;-wmj3UlS< zWB^)3P;h~o$~**eRqI@}RJqEa$;kD$ZA40LWU47Rrc;i3kbs3Cb{?_uqL#0_2g=osr0593GHa*|{j$R7zG} zK?yE)>Kd90)nvrQB&FxhhY6@4CnG5?BFGOp4_i1y0)#^IB?b6RUww)tgu-xt$@z}! z_uh|;prdpn&rPBbK{^5qA%=`4R0(O>xd5%KvOrBuoxDH@MiIP~6c-g1{I(t`u)Mt! z;4iH6h9fp<2;)j}Swq*rgAZ_zus^f3rO#a%WwPHtE( zB4QHKGP3gW3W|zKs3N}t%nMn{_z6RBAqZ?(_Q2CYeEr5Ku%B)=7HtC9H8E99y*C~Y zqX0WPQW%TyQT&B4V7P+9qGIBb(lT@*?zUF?Xr>|@B93XNTCd%DHuB}m*RLb5 z_r)XJFd-noEEJCcSqOYa#SsaTIIozPsHiXn6(T#Gn(-7^z5CO!qYv6@_UWd=?VVfJ z>9+n`&qu$YU+IQlcqAaa)BZBUtu7b$96k!Lu!v}o2)D41fB--59BwX{TaY@51UwxH z!K(~>9m70@Wqk6WUMj-4U`y_q_Um_Ej*c; zekF{JeSGYgf^gE|u~A}%XaXWP56_%nUamPj7#7EOU}OX@*Y$Z6<|i!F`lPksoxy>! zhVC2pKfw1Ax{r@Hr63$Q3=6yiFg6S=jGG-$IM`U>8p%ix156i$;OBP_k6Sa_^+?7>F26dZrywL~kCl2Vrc?-4{)OX#u_i7BCAWlw>zq#Xf z`T5uccG8ze9kszLz}cm~#TUA7-hT~!MJEa4AMPGzDnL+NC>@H6MhF`QUSX*XmdcZ^ zx(JhGglU=I(Tlye9=w~FAWz~yKRPdc5xNj{|2^fpIQFdPT*6v##W3(#W8bX@AK;53 z{_C@DCuk&9_h5K31TI7``p&0XB_j;0LaLgt-5L56G)bHqe{(B|r2)a)_B{Op7psX^ z*BUbHp^ZgU&E@_(kA}&U=oJ3by#~z-2!SPi;LSMJ=*{&@`L58&GX7NCz}+V!q)E~g z;mcn=`*7zGg5ibxpWyb09%e^Vv4?mP!epCvx_$88(=U_IA;S2(!77D%guoo#^XvhrxTH35sEm8MtG1qc_`3chYVxE#cM1|h6FH~4NG zYc}!#F7}4dY_adrOMQ19yqO3Cuvb@WE$R@WbncZWBa>LO(V?!>VMfr*FyL4tgzW8P z7=|`ieP(Z^{ke|4VlBAh^odPPn5KTc4-c09j&A>9@lTEv{XGI;;- zFn0RH#|JItj&#QnqFUCu!8c>kFs3j2FXcHxJFCRg9XB659f2n$^keUCoi8-URU!0p z@wGkAM<(Hm*TkEF#^TND2?>kuzPlpk>q)!{nFO*U#pg;3^P$#h4Qvk3Ubq_r8g@ zH(HK*DaXTdaLKOkzWwmom*^>miP2|$wK=wga)e$zwz_rb<2d#-# zZBG~ZNfjdutoE7Jtq)@3o&exB}WP-CfqyfA7)jiP$NoNk~!G&Xh(QF%%$- zbN%vb+8=%xqdX27dC*xKf;HCo(t9q+ z9NMo6KiPis!IKY@iBl|-U*A9Kt1ruqu$LnoMwt1H0y2tEUAgyqWFi?(`TDf)LYftv zVjg$8@ADmuT-E{rwhp&?ySyghevV&vV^8&}R&6lNVsByDq9Z=|CsucBpOY~{8$CM`3+ zthVLagIB|2lSg3OUk^5yc*w^hOhPWX4Sn|>Js+J+o06FvAAR@No!+Lp%HsUotn`$` z_~_X9#KW06d4=V*7dvk}ehsH*VAJO2<#O)@u?VC5=E6(Y?mvFu5S(TT^wctn_GkMb(MAhSuJjLoeQsj8A02neT74Rqb5_XD--L+SGsl@yoA4U|DEl zeDu@X=TGk69=z7u-PzUM*M9?o^7`Y**hDTw>%*NZHGw*@@T_R(vF84}_aDKRyPRR( zPaogCdHMX=lgE!9J{)@d^x2Eo?>>C|lsC*U`t|MYD<^^s!Ol|uipG{R6{TgQW3d(S zmFyMAj+K{{9X(oBR(|YQWo2qrWHn<|&AE%0n@@zTg!X!9`O&QO-0DWOIjDtnncN!G zhP!els6Ds??F{J(=_dDt_a^i)wAI&?7FWcWLI_txY)%9AgXX+WKxj!&?6RWc5E! zNrNWOVPP3KU%ZVa24S*_I$Gb+fBWSy1rq&cn*>*edT96QW>e`-i5Qq{@fC10e)knL zqdci4eI-vnb)9Yp7uSk?lF=~~Miq7l4RadTH_H=+4xaxe)+TMnTpffSs4v^k_3-_@AA23jo7ZR~(o&1oJs zJ*IdYkF@4s`0QflD)>w{<05>9EA_l)it{Xm_d6TXAQD8C#PjW4T|wQrL|gd8Hj&&- z?CR<`pSTFlQH(l!C8P_7n!zV#XmA(4{alPXye~|yYYXY3k8!kdaBSXH_ zgEcr4CJzlb15UI;gJN%wZN7W_+V>In?%J`%rvw_bohD1cT?*5Vs+P{+E@E@Ke?TDG zL=Fz3CzB5D_s?h!>LPTuoeJQKfm@5CO&#P;w2RnMp142o;FUuR2Ltyf9%})2JMk@* zn+ecHHL1Qms`FA;M0aQ>zP&zPD;B}yU5+-Q9m$>5UBR8<-GI=6Zz^?TjY9~Wn@cXV zg?3!-#C3NDb%%Bku3Rei5==noSuMiL&Nej0HOIA-G>12l8;KX|E27r(BqKy#1Gl~8 zu(0sdu&B`JkkDXqP$-EEp%2_*C~yS9;TUq6>lhIH6!PRmaYLoVX+A*htty!NBKHfxh4D;l#n=3LTd~y zwgrX8q-5lklvmZ9u02svlyfB9%hK}DzvqNPbXRQj4h%`i$SC+S+{nRAo_m zVob>XP1;-j6(__w6t1(vaqGUYgd- zbcvPQPI6>yV#<-6f{Ld0_KwcZD@~`X%L+16<0FIi`)u{FTH^m_Qpio&$lAm25IHm| zA>~MReo19>2Qa9e?G2TsdFjb9Vd(xn+c!Ge8yNnX6w=gLZL@Xf-u)=>hskMKc}10N zz{YlVbhI5W%t=d#3OTsXcblh+)mjtPgVaeO)!`@w9V45~Uf#R?4+TfWCLPYqEjo4? zL+iX!SDu%V8XHbNu*ZArCKo#k<5kLb)JY-!cYCB38(KNJd2ZY37f1?=PE5_nDJXC4 zB6ae0)D>r^B}9iD^541LbAyBR+SSVq78w446MAkZy- zIxiGuq+tH-_4aaiwp(wpdWDX*>cT&9Le3JZIzR&1I&a*vW0!v*8WNLuIHR~3#ubL6 z<4Wn_M9j%u+dbVJZPuC@EnBLoHdp(PoKWBbCCz0kP1jgEZrHrdd(WYyf*2T^Q&+BZ z0B&bzLr!vBM9_h~K3?uF_TcHN<-i24^Rf67C$wgh;$l5RBhz(u&YL^~bE@mkXNG4M zHnz55?sm4fx8y~9bJlvT$tt&~$UPqW5`CShb3!7u%VK@z0dHlx4k*A48$)VqPoFtm zQFo!a`7*4O4xuZhxhbI}aCfV_i`{zj)rQM`l3bR1#l<`9r^*Q#2E+v@Yb-KAQ#RST zIk`ritT}c1?1hGlmzr8yS|Jo|`4M5HgZp-FcXzV0T5D>weCfhP%5rYWkuio;I3cl* zn;e58tmRY|Y|P0?j`y(HTu@zo5?nri0g#(p&{mPQ3#qXwq}|>gUI$~{O;@ilSfZt- zENhb*9qO-3jT6#45EyKJ{BeQ6msa0fEWmV0|+PZV~=Nm3H0d&jd_G78(0X}dy zalUGU5zv|#O)9%LH=ay(-Zm2_WbpZwiRWJbLm`nd3F%qc*)a!0i^|F?t7}fx)}1|n z9^%p1)Y8z9w|~#h9qv0%T*x$Dxm$mxoqh*`qvB$> zIB(9#D=aB4Ia*O!ed1K@>9gm~W6`dRkB{EB8&<93_T1`?=0-Z&8uNkM!XXJ%yQLI+CAD=Lpe+)vk? zJ(C$4jPCb?{N?6kYjLpVc&Vq}eD#B73QE37VdVYZ+icfSA%|81Ib>|_=HcbD%l}Yl zRQ%!8)U=GO-25VniR$Cfhcgu+L5B|bK@!^NY`<=8N=tG0yquW$!)aOBx%tH5I9(BRFaX1McX60{-@*8B(*C{P?i-AKsj);WKlrY&ci7;*)qB^zz@Uhj_{5a7)U=$uoFW(q z_*zCa3StsGixVPy+h z+RJCR|3OIm2`N!KVzNX1f^thrjzTvotBxN}3JUaq9@wliU%s~VXh~6F!4Z=Mrh6hI zNC*6Uwr;euQ=5S_S`DO;%G$Lc1=zG@yYJouXlQg|kjvg!zs*~>h84j`z?WCBP+e8# z?O+d=ffZ{=z=Uea_B&QZgzHhaBK{g*u1xHbhcV!yliF~ zY4yl+3jd9)rv6G}V9f1ZopjW+w6t}XgNkCEHPGCyUXgjZ zV5F!BI#UXEN=r+Mi;BQPcGi)U=;$EtZC*a!Ti_aHVQj20BfT^i=p{-0vNMmQB<|a2vPfgTvG-;dyLF~3 zSE%fpiD@#&m?kM*{S~WLTUafXRmAu^O^VV2)GC%%)~;!pS=nGDFF(Ja0RH6X=Yol> z^t9x-I6pf*O|^MSYu%k~))*TaXu41#p5%del3t>-XyFPoGbL$^C{$L(*lIoKoavf1 zo~cKUWMqM*oS^F%ZM`A+aO&Z-wDgRO%*-q_TOtdL961bDVj@CFhXOaKfYL#D z4)6R`D|8oY7*Zpp%!Xfh%4li`^U5fS1K9_bFf`!*@cNQw&batX`KTdbwAhze7sIQ-02MpaV=_$hvjNRyD1 zl9hu#%~Qbww^UExKQ1mIF)2AYB{c<27Eg?iiv=UWq`-iEem<))=?*V98zYg(!zZRf zg}*Wf{>o8Gd4VcFP;2}Ge_N7)J^?GQrm3}LiBCjWWOPhSY;0U?Y)o`iWJFj<5Gio~ zzP(=d8|R5*W;j@wh(OKb6lP|%=3=atlepsid3>DQJl`ydL-b^1q?cK9$r|%B0 ztsB)OWGEsX%n0-ZSk)ynl4bG~vW!Pcf|ZGdg$e-E(lmbN(m2FL82+XQr`bk~zr;vU z$@Q+zt{XuawPmXpx()T>+q!j&hx^72E>1dvAddpx6+|`^PLn{e`H5;<^E1`PDJ054 zKWztCKMqQd=J4|J@rqg7+S)rfy12S++_cGk6Z{3LF&Ae?dwX+HUQ8pz3_3vIy2uED zxSc8=#}9m*EU%CVKPMAC12Z!dGcb$LBTg=qo1I75!g~FBD{C8Ddq-zi7u1Q@(ZRvq z&c6-V0mj;KV`>Uf5gryMUIj6X_GJS`l#^3fLP*Pe%{t4q zYuByUU8ug^#v0JqS*|fRH&T|ucy9^=3^XYb$4QOhdx~Lwvu8z)<#oCLs7HSD& zBaBh3VGteZnK?^t3TMdyx*71DPf%D0JR%WMdXxfAV31k5Lq3BItm%$~}i37et5Rg9vycfsHYU$cE>YmXnv2k(L6*2tRW;;IU9;TRACg zD-oD~OeVq3MURBik?S0i zR$72K;@`2tAT+`B0ntb>j(`xEh%6{O3o9%N5J+J92rLWzJJvV|F7AoQ9FS~K#2y&H zw88>hBmY}Q`7n6H2q_F!CWt&Rg#>s9N$OwG%!d&=JUu-M0tp1v4hSsYe@ipu4odz9_`yUDYKN9+XB=rAC=r3RXM?(KdLT~Nodl)A));-655733GMzH5<2b=B(!_+3?#H!*smmX;JAmQQ-R7wD8p8hRba|ef^+lx!zHm zo0L@3{qbKHD2fk1I~o{!ualz9nA{K{_v*~#anUy(MJlZPMtn?q4DyS?%w`euik$6_~HHg=a@%r%@@v` zsxB|g$%;PI^rsTVv-^T$(~5xXuRU}A67;Y4>aExB-o5|u?%kWa{e7L68_(CBtSl?e zNlQ%#%%sjn^9>j6B1NX=6&|fPeyR@ZWM@y`;H&qfcf4;N-Mrd;rMcl;?eU7zf}HfE z*l53q*HkMM`QD{$I~bOn4qSVA)d{Spt?k{t1FuN$_}{)Ay8e%Ad6|ckW5YxI_YeJ{ zKoRu{2#QNS41{|rIC%B~*4>`F@7_T1=i9eW`@60*{l~wQ#F%jO(5~Hs)Cv>@hTjEk z+H)v8hC-8&(#op~nwzK79K8`HPoOsx9=Yzo+dyHXBO{veQ!% zV!}hq+pUlw&!mS?QS#5AHnxmF3gFo;{-=zkb%VvR{==b1kDoln zkkJ<+FCVuyw$)XX7namE763I6j2_s#+bgxB`O+Em(M;8e;-Ak&ojuzSz8{Tk?CBjS ziB7t3_s-pW4*>bmlc#_E^^Ejf`1Osp_7mmB<^4}?kq-v!@!3{=t>ygrlEj&a zXqL~fgDZi~hT(7PM*BFMPSp?Gymja9eGK{WlP6EnXJRj&Jn1DHVfK?AOwxukuwCCFO!GXaW0DkZOg9nc&=udApHD0WN zIgy`L+H)s2J^~H&-{rG?i&JRB#nY#bhEpe^152xppF9of)=P<2$=7u)%5y5(Yh-HEEwlC(tXM07$@US84BV^xrtE;KfS>ZGfqtM6)W z|KK2W;}&M54GfeP=VfQ4CdDN7-nf4K+ST69t`yIVmh)#JSC{1HAAB-n)uPByKzdeA zVad@-2-DdMO)ahMjb)8}^;LDfFqcR-WpCfP({koyVP1B6YI0my!T@Mpul98$1}0Ts zx(L~(s=O#CH>B?O#f##jqi6PKfWV-rw7l|o?b&k|o3GSoRW(=T6&9Vp4r7hpkjFZ4 z>w0NAWR~cNgxZ_neP3_)sl7!V7a=>qrKT`DD>iK=9$E%?=;+A9X_?viMWx4%A1gjx zf9}}f3>`liP7Fg#V|#gKqf z_Rq{iOOCt!z>b3ss=m2R@@+QQ7;0CCHuU_rz z0U=ZSm8MG<&Ypw`T#%cdnzsAuOqGq&U#|JZBqSeB&&n;zKeXFF-~bvD9ut?4lzKQl zv-rZ*K3I7D=yke*0Wc(n4RBvyFJ__jQsdd9C8d>B(>XsmplYTfN7*l5&h3ne1+7GS zPKMw1oqPNO_8$xiiNxd+DTfai^!D`j!Qw!#()IVl-=sdl-d<2QwO+2u4BO+oCA=ED zRHY`wlM`oRp=E)EF7u0tPDoBk%OY*ww!?SV9zXvBhk`;Qqhk}2k}^BGx_f$igRq@S z&_2=L-k$Ex_O{DS%~dJ;cY1qzCLArwhRaq=#33pawD`#T48O=o@SX$y!?)FJ7om-@9Y$W@pEphr;0k78w!n69ujD z69t{PH!R5BAu2u6ZNnxHPcIDFx4YOofv9@3=T@)n-afm*&LL7l zamFRm6&I%s9K)^fcykbq7uV2IKoADC(W0p*u2qK%{` zTyqoJD0Z>o!ufM&>rS6KQJPlhX>Vg`zIx@drHj<(D=Kg3p0T1*4&$EDJqHf@uQxWc zScBQIgRKaFYy?AFw!>`OTU8IzDAEPALGr?d^Y!P>o~f-pSyO#7$8)E>%{nt<%!mdQ zNvm$}nX%MT=HugFAOHP!%U2njnwf(YY*zy44)kY}$JT9I1FAu%S4TRFoFknTuY*3E ztT|p?S(%^gx8773)f%WJWY9>tE4@oG~T8X!%rtZZ#u(~Ap1YIO8yIaJD&la7g( zm4Sc;G(ZLW*R3@(S!JlN1A9{_Lv6X7jMmu4VeLa|~3l&qd{kQcFXr(#~chuP(U5 z+Hf`1gUtYRb@f-TTxqll>y){VPB&lvtpl!E`!VSs9tBPDVzC`b!rt zR9C@j+T~1KjoXmw~MnMn=X)D^0_~wniRFJ)9b_)+;^ja2hD}Qj(KW-1V2~>u5t~fVh;O zE>WMqi8=$V2n=+NlZVF^2;S};?tTY$ST9+s2a{r%A#`koaj=ix+K|+wm1~ngAQ^2g@C@ z7uK6CS{e&smj&&`OO`BMs;j5J6gp+FGd3zZIto-Yk>TNCp&=m-i#1eLRp!r|ju+UF z6r1O8cE(a#QH+*Ohkbh7K#~Dn*`mGx+iw9ggV{lsvgqpSct%Ht1_y_Phoiy5@ZfK+ zlew9TmJ+NMSs92FR^czA>qmv776p#l-5E>79-dpbZ&p!ORaH}0*Mu!2z|JCV(qj3o zB(9}d13TrLY^sogz)gmp;WqZki2Mz@I`-6&Rr@oYoG%AHiq7n?^!i&79)&R=_ zeO>KhZ|CR?n!in+9t-Cx&6|(efo&wf4j9r{u|#trNlQ%4#(ST?-`+jDckbNfW*|Nt zB5~MULBc$RTKO;^Mra?xu92)ADdjZ|Y zdxwv$wu%J!&kXpYLfW3x7;XWK;dZsLqUcpzHX2D`s;s%#z7nK)$b1s)T0v6fgzZum zYy>&!_HABUx7*DXmq5jt#6(4eW!9unDOQ%mSnp`d=}V!bi<6e3vaGDUoV+~r0PyEQ zsL*-A^I7Gse71q&$J1krxga1ji;9A_NY9sAfioXg;Jnq$6s}CzW!A}gi3Di8`@sQ&1o&@+c{R5k+|wXD?3=4|jLBjgD#}s3 zNcxf>?E-C=vH%WKI9oU$O{v z^x{hE6Q~x73r!b_?@;3xkPriD9EaeNiM^Irg5!k;(!qC#f+;p{(A?2T2n4CT~oeWo0o&1lbM5)UuA*Dq9vN5g7PFjQGVFTgIj8uzOD{j72sA7 zwr&&Q~ zo&WC&_5c%M*uo6kbccg`4(}XxCK96nGrs^oA8ds~QTfr~c@}R;q+Z~z_IH7Mf~UR! z>`a91^1%SxtS~XLFw!%#{=H2I9*5v~)LlT7SbTFh8eNi)8qD*jboZ zm{~dJ2#Be!wDJy0_^*rOL-%=acD1!!YiaGgajWm4*#Bd3d_qjz|8xoe(mV7J50qEsoDv0iP{C@@sLtJ`~5#kNd4IAwdhy zkqQ4rmk_-G-WLv>xi~(AQXIc`W?jM|iY{R*_2PIxOqZ~px-P*D(vKdb?pv2#o$nRdX-3vkV8DRtEUk(O-MdkT$e-DSs4+r+n zPsb0Re|zzL8vp{N`SXOCf3frXHwc;;eUJY7;du7!+4Sq_|4+aC_9pfb{CoO;lz&s& ze*1X(#J`>ll&yq)FaLZndflIxqQx=!Jd*p*=IQKS(!w|e^K&3o0^&|qn-fil4+X$rl#sysSW^r8IA3CQ%``b^)wy+ zsi|Ak6CjP#-_+D!)DxiSAdUO~dNI}US9(HY`@?If+F$&d#`Z_usM=pMOk?}w2dUb3 z8>O-Ri8!kE57IXMK>{p=XNfZ(akTmB^IcHusC^A2l+ZZ+O-*%D`wqrj_noJ-`RAbM z%+W`Day)8Ew8_#rCx zH_$r$O-)fvfHY5kkN``lB)~|Tr@yJGn%_QhqYMh6kml)cYN~za1jtxJn>GIf>UDt` zCm?tG4=ri);*r9P_67TCWAX>o7aB9#S9tV8OWM5nWICgLjTf{r`2*@G{1nv;hv}yu zTGHmlc)$$S5yXl1=?@ZM{&~HQ&Y{{zf1t;<3GlTrmwCE{cIn{(?U~=KY~9{_{F}^Y~B4~o;+Xp z^8%n#c<`f(G=25a^cVXJXY1|{>)5FM&kK;wh?cs)pMyE(L;P_9;P8&Km;T@mECTx# z>+cR6(RcRJAK1@e`pG`SY)~Kn48w8uA15FkGi`N;|5%>>R}(+%vHsmb$6oz&6PmvM zOZ>+LK;XSZQ+q#yztj9-0pN(@v=*NH=)tJb4+{WCRGpn?U*EhKcW3;50^%4}&&H$w zZ`NS}1~PqbpN?_E>^%GWj|a)j-!A|<=7Y0%_k%f6&5Hea{oe+$PcR!f@OI+Vg zKpcU6ww`@qwy~pMh~c~b6S*6w-=4LWoN5j-=m!z^EaLIr>5Kd{^Q=?*~j6T`Sjk- z>H_?_L6GgA`3Lqj9?z=%Piua%uQ0p!fA3A+vX`1sP|09^0w zTQ)kZHPo6b%*FK2@FO@nA`7>$oZ3<&3u|nT9hx1E_STlh`kIR3bJ!SQ>xgd$j*h^< zHb+!WMN4-%wtE<@4infyL|=QsTyZ{jCipe2Z{`s!08H$>BGL*f>I)Ywrroh{XL cKO4k={iGF*4#38Kyb1depr5S&|M%tp0}uDkc>n+a literal 0 HcmV?d00001 diff --git a/browser/app/macbuild/dsstore b/browser/app/macbuild/dsstore new file mode 100755 index 0000000000000000000000000000000000000000..00b8f9a30536028b4380cc3915b48c2cc1eb47d6 GIT binary patch literal 6148 zcmeI0O>9(E6vxkbox-$~I<$nK1$}&oK&6%dO3=lm)KDUUF($aNW;)Z-HViY9>GVB6 zNVr^7(u749MnREGB8gQ#tO{si6H0=yCS8mf7nrEbf*2GNYr?{XrvC4HXPEM#i7|0O z=1$%_=XdY9-(Tkq5pmmK_gbP55e4xW8K}kU4#A|G=eA%;j7eluMk)raE)vhS5$U02 zVH2;1){H#cpX~N+@Fudju-`Tc(o8&2jjHBLhntMbmrg}FV>Cag1=cobD1XDtr8o*I zi!a2l8RiQ+hZFW1gm^ZSKt#YDqk3X49Eq4@V?*~CKBS;Q;vH0wC*FoeTsT&wc{I!D z{}g!5o}T2OvEQGYX$PJ#Po}pgo9RVLfD0TOm@M0LISE?@_;TTdiQ~&Z=E+i3rF?wR zRfw+P=l6xA{cEYpv{QTL+zHWy91DVqc=n;{&8bAHG(LR!d(%lGRnNs8pBs&fFO5Sy z2W_e0TY?3)%&6$0?N^`&Zb>iWssnz}5;Jo?HxIbkvY~0~h6vglEyd}fd>;Dp5_|H2 zB~#PWM3a-&HjZVZCeFtA?c*G*L zP{z&QyDe=`ZE24sX6|2J4U0xROf6eC@7xhfr4nW{0e89mtzsOapLwITz?$ffCmksg z7X5K2B^C`vmlUFKGL`J{OF?{gpwC;%b$(2`Kc4k-d6g61SgyhLo}NskE3^AXA!X(K z;-`;wG<)1oAM1+m?#-kIlie-pq}hr8Iy9oZgQZ;42++-jnHlD^l zCERTz;NOiDoO8EztkR##2vkPkKaYSpA8b5EhD9o0dPfId-t7o^!;OR1#*^K`<78O$n_>YBmJja3yBN3W4(|>eM(oO!O^9>dCC*ohhe{?RS&4 z{-g69lm18;{-aamkRBC=|L9y{TYo4F|IxY1t@^Yu{72^(4(n6G@E@Hij_8xZ@E@J) z9Mva;;XgW~H~WunkVlCm9sZ+R$K(2-F#Jb1#CiRiF#Jb%J{R??!tfv6g*>HS5r+Th zF0x1;5bg!rR!D2%KJaqO*87FuM0?IqR5b`622awsJ}Z0#oTt1#Bm5TlGfJy@!e61h zl~$`(K382u`Zx`j`cw52_#)->r;>gRJVB%SoX-LH_s;K})*lF)`T2vDeqR{#;}Q?+ z5n;@a8{nLN&*#~B*pHD?bA`V~`bI0Fo8@bdkv>AL%F4z(@7eHCETCFpd~Y~83aLfH zrai~WR!y$|O^o?>*IQw%$6{j>@OX>dwV{3zr42x90L=3|J?g&)w|H}Pe Ix&MQI0r@@h!~g&Q literal 0 HcmV?d00001 diff --git a/browser/installer/Makefile.in b/browser/installer/Makefile.in index 06b3f92dea51..8b5d7a066d4c 100644 --- a/browser/installer/Makefile.in +++ b/browser/installer/Makefile.in @@ -74,6 +74,13 @@ $(MOZ_PKG_MANIFEST): $(MOZ_PKG_MANIFEST_P) $(PERL) $(topsrcdir)/config/preprocessor.pl $(DEFINES) $(ACDEFINES) $< > $@ endif +ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT))) +MOZ_PKG_MAC_DSSTORE=branding/dsstore +MOZ_PKG_MAC_BACKGROUND=branding/background.png +MOZ_PKG_MAC_ICON=branding/disk.icns +MOZ_PKG_MAC_RSRC=branding/license.r +endif + include $(topsrcdir)/toolkit/mozapps/installer/packager.mk installer: diff --git a/build/package/mac_osx/make-diskimage b/build/package/mac_osx/make-diskimage index 3de99051457f..d07a72983456 100755 --- a/build/package/mac_osx/make-diskimage +++ b/build/package/mac_osx/make-diskimage @@ -23,6 +23,7 @@ # Brian Ryner # Jean-Jacques Enser # Arthur Wiebe +# Mark Mentovai # # Alternatively, the contents of this file may be used under the terms of # either the GNU General Public License Version 2 or later (the "GPL"), or @@ -50,11 +51,8 @@ # tip: use '-null-' for if you only want to # provide <.dsstore_file> and -DMG_DIRNAME=`dirname $1` -DMG_DIR=`cd $DMG_DIRNAME; pwd` -DMG_NAME=`basename $1` -DMG_TEMP_NAME=${DMG_DIR}/rw.${DMG_NAME} -SRC_FOLDER=`cd $2; pwd` +DMG_PATH=$1 +SRC_FOLDER=$2 VOLUME_NAME=$3 # optional arguments @@ -62,79 +60,24 @@ EULA_RSRC=$4 DMG_DSSTORE=$5 DMG_BKGND_IMG=$6 -# Find the size of the folder contents -FOLDER_SIZE=`du -s $SRC_FOLDER | sed s/[^0-9].*//` +EXTRA_ARGS= -# Allow for partition table and other overhead (3%) -IMAGE_SIZE=$(($FOLDER_SIZE * 103/100)) -# minimum size for an HFS+ partition is 4Mb -[ $IMAGE_SIZE -lt 8300 ] && IMAGE_SIZE=8300 - -# Make sure NEXT_ROOT is not set (if we're building with an SDK) -unset NEXT_ROOT - -echo FOLDER_SIZE=$FOLDER_SIZE -echo IMAGE_SIZE=$IMAGE_SIZE - -# Create the image -echo "creating disk image" -hdiutil create -sectors $IMAGE_SIZE -fs HFS+ $DMG_TEMP_NAME -volname $VOLUME_NAME - -# mount it -echo "mounting disk image" -# `hdid -nomount rw.$DMG_NAME | grep "^/dev/disk.s2" | sed -e "s?^/dev/??" -e "s/[^0-9a-z].*//"` -DEV_NAME=`hdid $DMG_TEMP_NAME | sed 1q | awk '{print $1}'` -MOUNT_DIR=`hdid $DMG_TEMP_NAME | grep Apple_HFS | awk '{print $3}'` - -# copy content via ditto -# -# ditto fails when target has no space left or is read-only. Let's capture -# that condition and cause the build to fail instead of silently moving ahead. -# - cmp -echo "copying content to disk image" -ditto -rsrcFork $SRC_FOLDER $MOUNT_DIR -rc=$? -if [ $rc != "0" ]; then - echo "ERROR: 'ditto -rsrcFork $SRC_FOLDER $MOUNT_DIR' failed ($rc)" - exit 1 +if test -n "$EULA_RSRC" && test "$EULA_RSRC" != "-null-" ; then + EXTRA_ARGS="--resource $EULA_RSRC" fi -# add optional Finder window layout and background image -if [ ! -z ${DMG_DSSTORE} ]; then - echo "adding .DS_Store" - cp -p ${DMG_DSSTORE} ${MOUNT_DIR}/.DS_Store -fi -if [ ! -z ${DMG_BKGND_IMG} ]; then - echo "adding background image" - mkdir ${MOUNT_DIR}/.background - cp -p ${DMG_BKGND_IMG} ${MOUNT_DIR}/.background/ +if test -n "$DMG_DSSTORE" ; then + EXTRA_ARGS="$EXTRA_ARGS --copy $DMG_DSSTORE:/.DS_Store" fi -# make sure it's not world writeable -echo "fixing permissions" -chmod -R go-w ${MOUNT_DIR} - -# make the top window open itself on mount: -if [ -x /usr/local/bin/openUp ]; then - /usr/local/bin/openUp ${MOUNT_DIR} +if test -n "$DMG_BKGND_IMG" ; then + EXTRA_ARGS="$EXTRA_ARGS --mkdir /.background --copy $DMG_BKGND_IMG:/.background" fi -# unmnount -echo "unmounting disk image" -hdiutil detach $DEV_NAME +echo `dirname $0`/pkg-dmg --target "$DMG_PATH" --source "$SRC_FOLDER" \ + --volname "$VOLUME_NAME" $EXTRA_ARGS -# compress image -echo "compressing disk image" -hdiutil convert $DMG_TEMP_NAME -format UDZO -imagekey zlib-level=9 -o ${DMG_DIR}/${DMG_NAME} -rm -f $DMG_TEMP_NAME +`dirname $0`/pkg-dmg --target "$DMG_PATH" --source "$SRC_FOLDER" \ + --volname "$VOLUME_NAME" $EXTRA_ARGS -# adding EULA resources -if [ ! -z "${EULA_RSRC}" -a "${EULA_RSRC}" != "-null-" ]; then - echo "adding EULA resources" - hdiutil unflatten ${DMG_DIR}/${DMG_NAME} - /Developer/Tools/ResMerger -a ${EULA_RSRC} -o ${DMG_DIR}/${DMG_NAME} - hdiutil flatten ${DMG_DIR}/${DMG_NAME} -fi - -echo "disk image done" -exit 0 +exit $? diff --git a/build/package/mac_osx/pkg-dmg b/build/package/mac_osx/pkg-dmg new file mode 100755 index 000000000000..73ac0034360a --- /dev/null +++ b/build/package/mac_osx/pkg-dmg @@ -0,0 +1,1454 @@ +#!/usr/bin/perl -w +# ***** BEGIN LICENSE BLOCK ***** +# Version: MPL 1.1/GPL 2.0/LGPL 2.1 +# +# The contents of this file are subject to the Mozilla Public License Version +# 1.1 (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# http://www.mozilla.org/MPL/ +# +# Software distributed under the License is distributed on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License +# for the specific language governing rights and limitations under the +# License. +# +# The Original Code is pkg-dmg, a Mac OS X disk image (.dmg) packager +# +# The Initial Developer of the Original Code is +# Mark Mentovai . +# Portions created by the Initial Developer are Copyright (C) 2005 +# the Initial Developer. All Rights Reserved. +# +# Contributor(s): +# +# Alternatively, the contents of this file may be used under the terms of +# either the GNU General Public License Version 2 or later (the "GPL"), or +# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), +# in which case the provisions of the GPL or the LGPL are applicable instead +# of those above. If you wish to allow use of your version of this file only +# under the terms of either the GPL or the LGPL, and not to allow others to +# use your version of this file under the terms of the MPL, indicate your +# decision by deleting the provisions above and replace them with the notice +# and other provisions required by the GPL or the LGPL. If you do not delete +# the provisions above, a recipient may use your version of this file under +# the terms of any one of the MPL, the GPL or the LGPL. +# +# ***** END LICENSE BLOCK ***** + +use strict; +use warnings; + +=pod + +=head1 NAME + +B - Mac OS X disk image (.dmg) packager + +=head1 SYNOPSIS + +B +B<--source> I +B<--target> I +[B<--format> I] +[B<--volname> I] +[B<--tempdir> I] +[B<--mkdir> I] +[B<--copy> I[:I]] +[B<--license> I] +[B<--resource> I] +[B<--icon> I] +[B<--attribute> I:I[:I...] +[B<--idme>] +[B<--sourcefile>] +[B<--verbosity> I] +[B<--dry-run>] + +=head1 DESCRIPTION + +I takes a directory identified by I and transforms +it into a disk image stored as I. The disk image will +occupy the least space possible for its format, or the least space that the +authors have been able to figure out how to achieve. + +=head1 OPTIONS + +=over 5 + +==item B<--source> I + +Identifies the directory that will be packaged up. This directory is not +touched, a copy will be made in a temporary directory for staging purposes. +See B<--tempdir>. + +==item B<--target> I + +The disk image to create. If it exists and is not in use, it will be +overwritten. If I already contains a suitable extension, +it will be used unmodified. If no extension is present, or the extension +is incorrect for the selected format, the proper extension will be added. +See B<--format>. + +==item B<--format> I + +The format to create the disk image in. Valid values for I are: + - UDZO - zlib-compressed, read-only; extension I<.dmg> + - UDRW - read-write; extension I<.dmg> + - UDSP - read-write, sparse; extension I<.sparseimage> + +UDZO is the default format. + +See L for a description of these formats. + +=item B<--volname> I + +The name of the volume in the disk image. If not specified, I +defaults to the name of the source directory from B<--source>. + +=item B<--tempdir> I + +A temporary directory to stage intermediate files in. I must +have enough space available to accommodate twice the size of the files +being packaged. If not specified, defaults to the same directory that +the I is to be placed in. B will remove any +temporary files it places in I. + +=item B<--mkdir> I + +Specifies a directory that should be created in the disk image. +I and any ancestor directories will be created. This is +useful in conjunction with B<--copy>, when copying files to directories +that may not exist in I. B<--mkdir> may appear multiple +times. + +=item B<--copy> I[:I] + +Additional files to copy into the disk image. If I is +specified, I is copied to the location I identifies, +otherwise, I is copied to the root of the new volume. B<--copy> +provides a way to package up a I by adding files to it +without modifying the original I. B<--copy> may appear +multiple times. + +This option is useful for adding .DS_Store files and window backgrounds +to disk images. + +=item B<--license> I + +A plain text file containing a license agreement to be displayed before +the disk image is mounted. English is the only supported language. To +include license agreements in other languages, in multiple languages, +or to use formatted text, prepare a resource and use L<--resource>. + +=item B<--resource> I + +A resource file to merge into I. If I is UDZO, +the disk image will be flattened to a single-fork file that contains +the resource but may be freely transferred without any special encodings. +I must be in a format suitable for L. See L for a +description of the format, and L for a discussion on flattened +disk images. B<--resource> may appear multiple times. + +This option is useful for adding license agreements and other messages +to disk images. + +=item B<--icon> I + +Specifies an I file that will be used as the icon for the root of +the volume. This file will be copied to the new volume and the custom +icon attribute will be set on the root folder. + +=item B<--attribute> I:I[:I...] + +Sets the attributes of I to the attribute list in I. See +L + +=item B<--idme> + +Enable IDME to make the disk image "Internet-enabled." The first time +the image is mounted, if IDME processing is enabled on the system, the +contents of the image will be copied out of the image and the image will +be placed in the trash with IDME disabled. + +=item B<--sourcefile> + +If this option is present, I is treated as a file, and is +placed as a file within the volume's root folder. Without this option, +I is treated as the volume root itself. + +=item B<--verbosity> I + +Adjusts the level of loudness of B. The possible values for +I are: + 0 - Only error messages are displayed. + 1 - Print error messages and command invocations. + 2 - Print everything, including command output. + +The default I is 2. + +=item B<--dry-run> + +When specified, the commands that would be executed are printed, without +actually executing them. When commands depend on the output of previous +commands, dummy values are displayed. + +=back + +=head1 NON-OPTIONS + +=over 5 + +=item + +Resource forks aren't copied. + +=item + +The root folder of the created volume is designated as the folder +to open when the volume is mounted. See L. + +=item + +All files in the volume are set to be world-readable, only writable +by the owner, and world-executable when appropriate. All other +permissions bits are cleared. + +=item + +When possible, disk images are created without any partition tables. This +is what L refers to as I<-layout NONE>, and saves a handful of +kilobytes. The alternative, I, contains a partition table that +is not terribly handy on disk images that are not intended to represent any +physical disk. + +=item + +Read-write images are created with journaling off. Any read-write image +created by this tool is expected to be transient, and the goal of this tool +is to create images which consume a minimum of space. + +=back + +=head1 EXAMPLE + +pkg-dmg --source /Applications/DeerPark.app --target ~/DeerPark.dmg + --sourcefile --volname DeerPark --icon ~/DeerPark.icns + --mkdir /.background + --copy DeerParkBackground.png:/.background/background.png + --copy DeerParkDSStore:/.DS_Store + +=head1 REQUIREMENTS + +I has been tested with Mac OS X releases 10.2 ("Jaguar") +through 10.4 ("Panther"). Certain adjustments to behavior are made +depending on the host system's release. Mac OS X 10.3 ("Panther") or +later are recommended. + +=head1 LICENSE + +MPL 1.1/GPL 2.0/LGPL 2.1. Your choice. + +=head1 AUTHOR + +Mark Mentovai + +=head1 SEE ALSO + +L, L, L, L, L, +L, L + +=cut + +use Fcntl; +use POSIX; +use Getopt::Long; + +sub argumentEscape(@); +sub cleanupDie($); +sub command(@); +sub commandInternal($@); +sub commandInternalVerbosity($$@); +sub commandOutput(@); +sub commandOutputVerbosity($@); +sub commandVerbosity($@); +sub diskImageMaker($$$$$$$$); +sub giveExtension($$); +sub hdidMountImage($@); +sub licenseMaker($$); +sub pathSplit($); +sub setAttributes($@); +sub trapSignal($); +sub usage(); + +# Variables used as globals +my(@gCleanup, %gConfig, $gDarwinMajor, $gDryRun, $gVerbosity); + +# Use the commands by name if they're expected to be in the user's +# $PATH (/bin:/sbin:/usr/bin:/usr/sbin). Otherwise, go by absolute +# path. These may be overridden with --config. +%gConfig = ('cmd_bless' => 'bless', + 'cmd_chmod' => 'chmod', + 'cmd_diskutil' => 'diskutil', + 'cmd_du' => 'du', + 'cmd_hdid' => 'hdid', + 'cmd_hdiutil' => 'hdiutil', + 'cmd_mkdir' => 'mkdir', + 'cmd_mktemp' => 'mktemp', + 'cmd_Rez' => '/Developer/Tools/Rez', + 'cmd_rm' => 'rm', + 'cmd_rsync' => 'rsync', + 'cmd_SetFile' => '/Developer/Tools/SetFile', + + # create_directly indicates whether hdiutil create supports + # -srcfolder and -srcdevice. It does on >= 10.3 (Panther). + # This is fixed up for earlier systems below. If false, + # hdiutil create is used to create empty disk images that + # are manually filled. + 'create_directly' => 1, + + # If hdiutil attach -mountpoint exists, use it to avoid + # mounting disk images in the default /Volumes. This reduces + # the likelihood that someone will notice a mounted image and + # interfere with it. Only available on >= 10.3 (Panther), + # fixed up for earlier systems below. + # + # This is presently turned off for all systems, because there + # is an infrequent synchronization problem during ejection. + # diskutil eject might return before the image is actually + # unmounted. If pkg-dmg then attempts to clean up its + # temporary directory, it could remove items from a read-write + # disk image or attempt to remove items from a read-only disk + # image (or a read-only item from a read-write image) and fail, + # causing pkg-dmg to abort. This problem is experienced + # under Tiger, which appears to eject asynchronously where + # previous systems treated it as a synchronous operation. + # Using hdiutil attach -mountpoint didn't always keep images + # from showing up on the desktop anyway. + 'hdiutil_mountpoint' => 0, + + # hdiutil makehybrid results in optimized disk images that + # consume less space and mount more quickly. Use it when + # it's available, but that's only on >= 10.3 (Panther). + # If false, hdiutil create is used instead. Fixed up for + # earlier systems below. + # + # This is presently turned off for all systems. When it's + # enabled, compressed images produced from makehybid output + # always mount on 10.4.2 (and maybe other releases?) with + # the view set to column view if the column view preference + # is set in the Finder. That's bad. They need to respect + # the view setting (probably icon view) in the .DS_Store file. + 'makehybrid' => 0, + + # hdiutil create doesn't allow specifying a folder to open + # at volume mount time, so those images are mounted and + # their root folders made holy with bless -openfolder. But + # only on >= 10.3 (Panther). Earlier systems are out of luck. + # Even on Panther, bless refuses to run unless root. + # Fixed up below. + 'openfolder_bless' => 1, + + # It's possible to save a few more kilobytes by including the + # partition only without any partition table in the image. + # This is a good idea on any system, so turn this option off. + # + # Except it's buggy. "-layout NONE" seems to be creating + # disk images with more data than just the partition table + # stripped out. You might wind up losing the end of the + # filesystem - the last file (or several) might be incomplete. + 'partition_table' => 1, + + # To create a partition table-less image from something + # created by makehybrid, the hybrid image needs to be + # mounted and a new image made from the device associated + # with the relevant partition. This requires >= 10.4 + # (Tiger), presumably because earlier systems have + # problems creating images from devices themselves attached + # to images. If this is false, makehybrid images will + # have partition tables, regardless of the partition_table + # setting. Fixed up for earlier systems below. + 'recursive_access' => 1); + +# --verbosity +$gVerbosity = 2; + +# --dry-run +$gDryRun = 0; + +# %gConfig fix-ups based on features and bugs present in certain releases. +my($ignore, $uname_r, $uname_s); +($uname_s, $ignore, $uname_r, $ignore, $ignore) = POSIX::uname(); +if($uname_s eq 'Darwin') { + ($gDarwinMajor, $ignore) = split(/\./, $uname_r, 2); + + # $major is the Darwin major release, which for our purposes, is 4 higher + # than the interesting digit in a Mac OS X release. + if($gDarwinMajor <= 6) { + # <= 10.2 (Jaguar) + # hdiutil create does not support -srcfolder or -srcdevice + $gConfig{'create_directly'} = 0; + # hdiutil attach does not support -mountpoint + $gConfig{'hdiutil_mountpoint'} = 0; + # hdiutil mkhybrid does not exist + $gConfig{'makehybrid'} = 0; + } + if($gDarwinMajor <= 7) { + # <= 10.3 (Panther) + # Can't mount a disk image and then make a disk image from the device + $gConfig{'recursive_access'} = 0; + # bless does not support -openfolder on 10.2 (Jaguar) and must run + # as root under 10.3 (Panther) + $gConfig{'openfolder_bless'} = 0; + } +} +else { + # If it's not Mac OS X, just assume all of those good features are + # available. They're not, but things will fail long before they + # have a chance to make a difference. + # + # Now, if someone wanted to document some of these private formats... + print STDERR ($0.": warning, not running on Mac OS X, ". + "this could be interesting.\n"); +} + +# Non-global variables used in Getopt +my(@attributes, @copyFiles, $iconFile, $idme, $licenseFile, @makeDirs, + $outputFormat, @resourceFiles, $sourceFile, $sourceFolder, $targetImage, + $tempDir, $volumeName); + +# --format +$outputFormat = 'UDZO'; + +# --idme +$idme = 0; + +# --sourcefile +$sourceFile = 0; + +# Leaving this might screw up the Apple tools. +delete $ENV{'NEXT_ROOT'}; + +# This script can get pretty messy, so trap a few signals. +$SIG{'INT'} = \&trapSignal; +$SIG{'HUP'} = \&trapSignal; +$SIG{'TERM'} = \&trapSignal; + +Getopt::Long::Configure('pass_through'); +GetOptions('source=s' => \$sourceFolder, + 'target=s' => \$targetImage, + 'volname=s' => \$volumeName, + 'format=s' => \$outputFormat, + 'tempdir=s' => \$tempDir, + 'mkdir=s' => \@makeDirs, + 'copy=s' => \@copyFiles, + 'license=s' => \$licenseFile, + 'resource=s' => \@resourceFiles, + 'icon=s' => \$iconFile, + 'attribute=s' => \@attributes, + 'idme' => \$idme, + 'sourcefile' => \$sourceFile, + 'verbosity=i' => \$gVerbosity, + 'dry-run' => \$gDryRun, + 'config=s' => \%gConfig); # "hidden" option not in usage() + +if(@ARGV) { + # All arguments are parsed by Getopt + usage(); + exit(1); +} + +if($gVerbosity<0 || $gVerbosity>2) { + usage(); + exit(1); +} + +if(!defined($sourceFolder) || $sourceFolder eq '' || + !defined($targetImage) || $targetImage eq '') { + # --source and --target are required arguments + usage(); + exit(1); +} + +# Make sure $sourceFolder doesn't contain trailing slashes. It messes with +# rsync. +while(substr($sourceFolder, -1) eq '/') { + chop($sourceFolder); +} + +if(!defined($volumeName)) { + # Default volumeName is the name of the source directory. + my(@components); + @components = pathSplit($sourceFolder); + $volumeName = pop(@components); +} + +my(@tempDirComponents, $targetImageFilename); +@tempDirComponents = pathSplit($targetImage); +$targetImageFilename = pop(@tempDirComponents); + +if(defined($tempDir)) { + @tempDirComponents = pathSplit($tempDir); +} +else { + # Default tempDir is the same directory as what is specified for + # targetImage + $tempDir = join('/', @tempDirComponents); +} + +# Ensure that the path of the target image has a suitable extension. If +# it didn't, hdiutil would add one, and we wouldn't be able to find the +# file. +# +# Note that $targetImageFilename is not being reset. This is because it's +# used to build other names below, and we don't need to be adding all sorts +# of extra unnecessary extensions to the name. +my($originalTargetImage, $requiredExtension); +$originalTargetImage = $targetImage; +if($outputFormat eq 'UDSP') { + $requiredExtension = '.sparseimage'; +} +else { + $requiredExtension = '.dmg'; +} +$targetImage = giveExtension($originalTargetImage, $requiredExtension); + +if($targetImage ne $originalTargetImage) { + print STDERR ($0.": warning: target image extension is being added\n"); + print STDERR (' The new filename is '. + giveExtension($targetImageFilename,$requiredExtension)."\n"); +} + +# Make a temporary directory in $tempDir for our own nefarious purposes. +my(@output, $tempSubdir, $tempSubdirTemplate); +$tempSubdirTemplate=join('/', @tempDirComponents, + 'pkg-dmg.'.$$.'.XXXXXXXX'); +if(!(@output = commandOutput($gConfig{'cmd_mktemp'}, '-d', + $tempSubdirTemplate)) || $#output != 0) { + cleanupDie('mktemp failed'); +} + +if($gDryRun) { + (@output)=($tempSubdirTemplate); +} + +($tempSubdir) = @output; + +push(@gCleanup, + sub {commandVerbosity(0, $gConfig{'cmd_rm'}, '-rf', $tempSubdir);}); + +my($tempMount, $tempRoot, @tempsToMake); +$tempRoot = $tempSubdir.'/stage'; +$tempMount = $tempSubdir.'/mount'; +push(@tempsToMake, $tempRoot); +if($gConfig{'hdiutil_mountpoint'}) { + push(@tempsToMake, $tempMount); +} + +if(command($gConfig{'cmd_mkdir'}, @tempsToMake) != 0) { + cleanupDie('mkdir tempRoot/tempMount failed'); +} + +# This cleanup object is not strictly necessary, because $tempRoot is inside +# of $tempSubdir, but the rest of the script relies on this object being +# on the cleanup stack and expects to remove it. +push(@gCleanup, + sub {commandVerbosity(0, $gConfig{'cmd_rm'}, '-rf', $tempRoot);}); + +# If $sourceFile is true, it means that $sourceFolder is to be treated as +# a file and placed as a file within the volume root, as opposed to being +# treated as the volume root itself. rsync will do this by default, if no +# trailing '/' is present. With a trailing '/', $sourceFolder becomes +# $tempRoot, instead of becoming an entry in $tempRoot. +if(command($gConfig{'cmd_rsync'}, '-a', '--copy-unsafe-links', + $sourceFolder.($sourceFile?'':'/'),$tempRoot) != 0) { + cleanupDie('rsync failed'); +} + +if(@makeDirs) { + my($makeDir, @tempDirsToMake); + foreach $makeDir (@makeDirs) { + if($makeDir =~ /^\//) { + push(@tempDirsToMake, $tempRoot.$makeDir); + } + else { + push(@tempDirsToMake, $tempRoot.'/'.$makeDir); + } + } + if(command($gConfig{'cmd_mkdir'}, '-p', @tempDirsToMake) != 0) { + cleanupDie('mkdir failed'); + } +} + +my($copyFile); +foreach $copyFile (@copyFiles) { + my($copySource, $copyDestination); + ($copySource, $copyDestination) = split(/:/, $copyFile); + if(!defined($copyDestination)) { + $copyDestination = $tempRoot; + } + elsif($copyDestination =~ /^\//) { + $copyDestination = $tempRoot.$copyDestination; + } + else { + $copyDestination = $tempRoot.'/'.$copyDestination; + } + if(command($gConfig{'cmd_rsync'}, '-a', '--copy-unsafe-links', + $copySource, $copyDestination) != 0) { + cleanupDie('rsync failed for item copy'); + } +} + +if($gConfig{'create_directly'}) { + # If create_directly is false, the contents will be rsynced into a + # disk image and they would lose their attributes. + setAttributes($tempRoot, @attributes); +} + +if(defined($iconFile)) { + if(command($gConfig{'cmd_rsync'}, '-a', '--copy-unsafe-links', $iconFile, + $tempRoot.'/.VolumeIcon.icns') != 0) { + cleanupDie('rsync failed for volume icon'); + } + + # It's pointless to set the attributes of the root when diskutil create + # -srcfolder is being used. In that case, the attributes will be set + # later, after the image is already created. + if($outputFormat eq 'UDZO' && + (command($gConfig{'cmd_SetFile'}, '-a', 'C', $tempRoot) != 0)) { + cleanupDie('SetFile failed'); + } +} + +if(command($gConfig{'cmd_chmod'}, '-R', 'a+rX,a-st,u+w,go-w', + $tempRoot) != 0) { + cleanupDie('chmod failed'); +} + +my($unflattenable); +if($outputFormat eq 'UDZO') { + $unflattenable = 1; +} +else { + $unflattenable = 0; +} + +diskImageMaker($tempRoot, $targetImage, $outputFormat, $volumeName, + $tempSubdir, $tempMount, $targetImageFilename, defined($iconFile)); + +if(defined($licenseFile) && $licenseFile ne '') { + my($licenseResource); + $licenseResource = $tempSubdir.'/license.r'; + if(!licenseMaker($licenseFile, $licenseResource)) { + cleanupDie('licenseMaker failed'); + } + push(@resourceFiles, $licenseResource); + # Don't add a cleanup object because licenseResource is in tempSubdir. +} + +if(@resourceFiles) { + # Add resources, such as a license agreement. + + # Only unflatten read-only and compressed images. It's not supported + # on other image times. + if($unflattenable && + (command($gConfig{'cmd_hdiutil'}, 'unflatten', $targetImage)) != 0) { + cleanupDie('hdiutil unflatten failed'); + } + # Don't push flatten onto the cleanup stack. If we fail now, we'll be + # removing $targetImage anyway. + + # Type definitions come from Carbon.r. + if(command($gConfig{'cmd_Rez'}, 'Carbon.r', @resourceFiles, '-a', '-o', + $targetImage) != 0) { + cleanupDie('Rez failed'); + } + + # Flatten. This merges the resource fork into the data fork, so no + # special encoding is needed to transfer the file. + if($unflattenable && + (command($gConfig{'cmd_hdiutil'}, 'flatten', $targetImage)) != 0) { + cleanupDie('hdiutil flatten failed'); + } +} + +# $tempSubdir is no longer needed. It's buried on the stack below the +# rm of the fresh image file. Splice in this fashion is equivalent to +# pop-save, pop, push-save. +splice(@gCleanup, -2, 1); +# No need to remove licenseResource separately, it's in tempSubdir. +if(command($gConfig{'cmd_rm'}, '-rf', $tempSubdir) != 0) { + cleanupDie('rm -rf tempSubdir failed'); +} + +if($idme) { + if(command($gConfig{'cmd_hdiutil'}, 'internet-enable', '-yes', + $targetImage) != 0) { + cleanupDie('hdiutil internet-enable failed'); + } +} + +# Done. + +exit(0); + +# argumentEscape(@arguments) +# +# Takes a list of @arguments and makes them shell-safe. +sub argumentEscape(@) { + my(@arguments); + @arguments = @_; + my($argument, @argumentsOut); + foreach $argument (@arguments) { + $argument =~ s%([^A-Za-z0-9_\-/.=+,])%\\$1%g; + push(@argumentsOut, $argument); + } + return @argumentsOut; +} + +# cleanupDie($message) +# +# Displays $message as an error message, and then runs through the +# @gCleanup stack, performing any cleanup operations needed before +# exiting. Does not return, exits with exit status 1. +sub cleanupDie($) { + my($message); + ($message) = @_; + print STDERR ($0.': '.$message.(@gCleanup?' (cleaning up)':'')."\n"); + while(@gCleanup) { + my($subroutine); + $subroutine = pop(@gCleanup); + &$subroutine; + } + exit(1); +} + +# command(@arguments) +# +# Runs the specified command at the verbosity level defined by $gVerbosity. +# Returns nonzero on failure, returning the exit status if appropriate. +# Discards command output. +sub command(@) { + my(@arguments); + @arguments = @_; + return commandVerbosity($gVerbosity,@arguments); +} + +# commandInternal($command, @arguments) +# +# Removes the files specified by @arguments with a verbosity level specified +# by $gVerbosity. +sub commandInternal($@) { + my(@arguments, $command); + ($command, @arguments) = @_; + return commandInternalVerbosity($gVerbosity, $command, @arguments); +} + +# commandInternalVerbosity($verbosity, $command, @arguments) +# +# Run an internal command, printing a bogus command invocation message if +# $verbosity is true. +# +# If $command is unlink: +# Removes the files specified by @arguments. Wraps unlink. +# +# If $command is mkdir: +# Creates the directory specified by @arguments, with an optional mask +# argument, wrapping mkdir. +sub commandInternalVerbosity($$@) { + my(@arguments, $command, $verbosity); + ($verbosity, $command, @arguments) = @_; + if($command eq 'unlink') { + if($verbosity || $gDryRun) { + print(join(' ', 'rm', '-f', argumentEscape(@arguments))."\n"); + } + if($gDryRun) { + return $#arguments+1; + } + return unlink(@arguments); + } +} + +# commandOutput(@arguments) +# +# Runs the specified command at the verbosity level defined by $gVerbosity. +# Output is returned in an array of lines. undef is returned on failure. +# The exit status is available in $?. +sub commandOutput(@) { + my(@arguments); + @arguments = @_; + return commandOutputVerbosity($gVerbosity, @arguments); +} + +# commandOutputVerbosity($verbosity, @arguments) +# +# Runs the specified command at the verbosity level defined by the +# $verbosity argument. Output is returned in an array of lines. undef is +# returned on failure. The exit status is available in $?. +# +# If an error occurs in fork or exec, an error message is printed to +# stderr and undef is returned. +# +# If $verbosity is 0, the command invocation is not printed, and its +# stdout is not echoed back to stdout. +# +# If $verbosity is 1, the command invocation is printed. +# +# If $verbosity is 2, the command invocation is printed and the output +# from stdout is echoed back to stdout. +# +# Regardless of $verbosity, stderr is left connected. +sub commandOutputVerbosity($@) { + my(@arguments, $verbosity); + ($verbosity, @arguments) = @_; + my($pid); + if($verbosity || $gDryRun) { + print(join(' ', argumentEscape(@arguments))."\n"); + } + if($gDryRun) { + return(1); + } + if (!defined($pid = open(*COMMAND, '-|'))) { + printf STDERR ($0.': fork: '.$!."\n"); + return undef; + } + elsif ($pid) { + # parent + my(@lines); + while(!eof(*COMMAND)) { + my($line); + chop($line = ); + if($verbosity > 1) { + print($line."\n"); + } + push(@lines, $line); + } + close(*COMMAND); + if ($? == -1) { + printf STDERR ($0.': fork: '.$!."\n"); + return undef; + } + elsif ($? & 127) { + printf STDERR ($0.': exited on signal '.($? & 127). + ($? & 128 ? ', core dumped' : '')."\n"); + return undef; + } + return @lines; + } + else { + # child; this form of exec is immune to shell games + if(!exec {$arguments[0]} (@arguments)) { + printf STDERR ($0.': exec: '.$!."\n"); + exit(-1); + } + } +} + +# commandVerbosity($verbosity, @arguments) +# +# Runs the specified command at the verbosity level defined by the +# $verbosity argument. Returns nonzero on failure, returning the exit +# status if appropriate. Discards command output. +sub commandVerbosity($@) { + my(@arguments, $verbosity); + ($verbosity, @arguments) = @_; + if(!defined(commandOutputVerbosity($verbosity, @arguments))) { + return -1; + } + return $?; +} + +# diskImageMaker($source, $destination, $format, $name, $tempDir, $tempMount, +# $baseName, $setRootIcon) +# +# Creates a disk image in $destination of format $format corresponding to the +# source directory $source. $name is the volume name. $tempDir is a good +# place to write temporary files, which should be empty (aside from the other +# things that this script might create there, like stage and mount). +# $tempMount is a mount point for temporary disk images. $baseName is the +# name of the disk image, and is presently unused. $setRootIcon is true if +# a volume icon was added to the staged $source and indicates that the +# custom volume icon bit on the volume root needs to be set. +sub diskImageMaker($$$$$$$$) { + my($baseName, $destination, $format, $name, $setRootIcon, $source, + $tempDir, $tempMount); + ($source, $destination, $format, $name, $tempDir, $tempMount, + $baseName, $setRootIcon) = @_; + if($format eq 'UDZO') { + my($uncompressedImage); + + if($gConfig{'makehybrid'}) { + my($hybridImage); + $hybridImage = giveExtension($tempDir.'/hybrid', '.dmg'); + + if(command($gConfig{'cmd_hdiutil'}, 'makehybrid', '-hfs', + '-hfs-volume-name', $name, '-hfs-openfolder', '/', '-ov', + $source, '-o', $hybridImage) != 0) { + cleanupDie('hdiutil makehybrid failed'); + } + + $uncompressedImage = $hybridImage; + + # $source is no longer needed and will be removed before anything + # else can fail. splice in this form is the same as pop/push. + splice(@gCleanup, -1, 1, + sub {commandInternalVerbosity(0, 'unlink', $hybridImage);}); + + if(command($gConfig{'cmd_rm'}, '-rf', $source) != 0) { + cleanupDie('rm -rf failed'); + } + + if(!$gConfig{'partition_table'} && $gConfig{'recursive_access'}) { + # Even if we do want to create disk images without partition tables, + # it's impossible unless recursive_access is set. + my($rootDevice, $partitionDevice, $partitionMountPoint); + + if(!(($rootDevice, $partitionDevice, $partitionMountPoint) = + hdidMountImage($tempMount, '-readonly', $hybridImage))) { + cleanupDie('hdid mount failed'); + } + + push(@gCleanup, sub {commandVerbosity(0, + $gConfig{'cmd_diskutil'}, 'eject', $rootDevice);}); + + my($udrwImage); + $udrwImage = giveExtension($tempDir.'/udrw', '.dmg'); + + if(command($gConfig{'cmd_hdiutil'}, 'create', '-format', 'UDRW', + '-ov', '-srcdevice', $partitionDevice, $udrwImage) != 0) { + cleanupDie('hdiutil create failed'); + } + + $uncompressedImage = $udrwImage; + + # Going to eject before anything else can fail. Get the eject off + # the stack. + pop(@gCleanup); + + # $hybridImage will be removed soon, but until then, it needs to + # stay on the cleanup stack. It needs to wait until after + # ejection. $udrwImage is staying around. Make it appear as + # though it's been done before $hybridImage. + # + # splice in this form is the same as popping one element to + # @tempCleanup and pushing the subroutine. + my(@tempCleanup); + @tempCleanup = splice(@gCleanup, -1, 1, + sub {commandInternalVerbosity(0, 'unlink', $udrwImage);}); + push(@gCleanup, @tempCleanup); + + if(command($gConfig{'cmd_diskutil'}, 'eject', $rootDevice) != 0) { + cleanupDie('diskutil eject failed'); + } + + # Pop unlink of $uncompressedImage + pop(@gCleanup); + + if(commandInternal('unlink', $hybridImage) != 1) { + cleanupDie('unlink hybridImage failed: '.$!); + } + } + } + else { + # makehybrid is not available, fall back to making a UDRW and + # converting to UDZO. It ought to be possible to do a UDZO directly, + # but those come out far too large (journaling?) and need to be + # read-write to fix up the volume icon anyway. Luckily, we can + # take advantage of a single call back into this function. + my($udrwImage); + $udrwImage = giveExtension($tempDir.'/udrw', '.dmg'); + + diskImageMaker($source, $udrwImage, 'UDRW', $name, $tempDir, + $tempMount, $baseName, $setRootIcon); + + # The call back into diskImageMaker already removed $source. + + $uncompressedImage = $udrwImage; + } + + # The uncompressed disk image is now in its final form. Compress it. + # Jaguar doesn't support hdiutil convert -ov, but it always allows + # overwriting. + if(command($gConfig{'cmd_hdiutil'}, 'convert', '-format', 'UDZO', + '-imagekey', 'zlib-level=9', + (defined($gDarwinMajor) && $gDarwinMajor <= 6 ? () : ('-ov')), + $uncompressedImage, '-o', $destination) != 0) { + cleanupDie('hdiutil convert failed'); + } + + # $uncompressedImage is going to be unlinked before anything else can + # fail. splice in this form is the same as pop/push. + splice(@gCleanup, -1, 1, + sub {commandInternalVerbosity(0, 'unlink', $destination);}); + + if(commandInternal('unlink', $uncompressedImage) != 1) { + cleanupDie('unlink uncompressedImage failed: '.$!); + } + + # At this point, the only thing that the UDZO block has added to the + # cleanup stack is the removal of $destination. $source has already + # been removed, and its cleanup entry has been removed as well. + } + elsif($format eq 'UDRW' || $format eq 'UDSP') { + my(@extraArguments); + if(!$gConfig{'partition_table'}) { + @extraArguments = ('-layout', 'NONE'); + } + + if($gConfig{'create_directly'}) { + # Use -fs HFS+ to suppress the journal. + if(command($gConfig{'cmd_hdiutil'}, 'create', '-format', $format, + @extraArguments, '-fs', 'HFS+', '-volname', $name, + '-ov', '-srcfolder', $source, $destination) != 0) { + cleanupDie('hdiutil create failed'); + } + + # $source is no longer needed and will be removed before anything + # else can fail. splice in this form is the same as pop/push. + splice(@gCleanup, -1, 1, + sub {commandInternalVerbosity(0, 'unlink', $destination);}); + + if(command($gConfig{'cmd_rm'}, '-rf', $source) != 0) { + cleanupDie('rm -rf failed'); + } + } + else { + # hdiutil create does not support -srcfolder or -srcdevice, it only + # knows how to create blank images. Figure out how large an image + # is needed, create it, and fill it. This is needed for Jaguar. + + # Use native block size for hdiutil create -sectors. + delete $ENV{'BLOCKSIZE'}; + + my(@duOutput, $ignore, $sizeBlocks, $sizeOverhead, $sizeTotal, $type); + if(!(@output = commandOutput($gConfig{'cmd_du'}, '-s', $tempRoot)) || + $? != 0) { + cleanupDie('du failed'); + } + ($sizeBlocks, $ignore) = split(' ', $output[0], 2); + + # The filesystem itself takes up 152 blocks of its own blocks for the + # filesystem up to 8192 blocks, plus 64 blocks for every additional + # 4096 blocks or portion thereof. + $sizeOverhead = 152 + 64 * POSIX::ceil( + (($sizeBlocks - 8192) > 0) ? (($sizeBlocks - 8192) / (4096 - 64)) : 0); + + # The number of blocks must be divisible by 8. + my($mod); + if($mod = ($sizeOverhead % 8)) { + $sizeOverhead += 8 - $mod; + } + + # sectors is taken as the size of a disk, not a filesystem, so the + # partition table eats into it. + if($gConfig{'partition_table'}) { + $sizeOverhead += 80; + } + + # That was hard. Leave some breathing room anyway. Use 1024 sectors + # (512kB). These read-write images wouldn't be useful if they didn't + # have at least a little free space. + $sizeTotal = $sizeBlocks + $sizeOverhead + 1024; + + # Minimum sizes - these numbers are larger on Jaguar than on later + # systems. Just use the Jaguar numbers, since it's unlikely to wind + # up here on any other release. + if($gConfig{'partition_table'} && $sizeTotal < 8272) { + $sizeTotal = 8272; + } + if(!$gConfig{'partition_table'} && $sizeTotal < 8192) { + $sizeTotal = 8192; + } + + # hdiutil create without -srcfolder or -srcdevice will not accept + # -format. It uses -type. Fortunately, the two supported formats + # here map directly to the only two supported types. + if ($format eq 'UDSP') { + $type = 'SPARSE'; + } + else { + $type = 'UDIF'; + } + + if(command($gConfig{'cmd_hdiutil'}, 'create', '-type', $type, + @extraArguments, '-fs', 'HFS+', '-volname', $name, + '-ov', '-sectors', $sizeTotal, $destination) != 0) { + cleanupDie('hdiutil create failed'); + } + + push(@gCleanup, + sub {commandInternalVerbosity(0, 'unlink', $destination);}); + + # The rsync will occur shortly. + } + + my($mounted, $rootDevice, $partitionDevice, $partitionMountPoint); + + $mounted=0; + if(!$gConfig{'create_directly'} || $gConfig{'openfolder_bless'} || + $setRootIcon) { + # The disk image only needs to be mounted if: + # create_directly is false, because the content needs to be copied + # openfolder_bless is true, because bless -openfolder needs to run + # setRootIcon is true, because the root needs its attributes set. + if(!(($rootDevice, $partitionDevice, $partitionMountPoint) = + hdidMountImage($tempMount, $destination))) { + cleanupDie('hdid mount failed'); + } + + $mounted=1; + + push(@gCleanup, sub {commandVerbosity(0, + $gConfig{'cmd_diskutil'}, 'eject', $rootDevice);}); + } + + if(!$gConfig{'create_directly'}) { + # Couldn't create and copy directly in one fell swoop. Now that + # the volume is mounted, copy the files. --copy-unsafe-links is + # unnecessary since it was used to copy everything to the staging + # area. There can be no more unsafe links. + if(command($gConfig{'cmd_rsync'}, '-a', + $source.'/',$partitionMountPoint) != 0) { + cleanupDie('rsync to new volume failed'); + } + + # We need to get the rm -rf of $source off the stack, because it's + # being cleaned up here. There are two items now on top of it: + # removing the target image and, above that, ejecting it. Splice it + # out. + my(@tempCleanup); + @tempCleanup = splice(@gCleanup, -2); + # The next splice is the same as popping once and pushing @tempCleanup. + splice(@gCleanup, -1, 1, @tempCleanup); + + if(command($gConfig{'cmd_rm'}, '-rf', $source) != 0) { + cleanupDie('rm -rf failed'); + } + } + + if($gConfig{'openfolder_bless'}) { + # On Tiger, the bless docs say to use --openfolder, but only + # --openfolder is accepted on Panther. Tiger takes it with a single + # dash too. Jaguar is out of luck. + if(command($gConfig{'cmd_bless'}, '-openfolder', + $partitionMountPoint) != 0) { + cleanupDie('bless failed'); + } + } + + setAttributes($partitionMountPoint, @attributes); + + if($setRootIcon) { + # When "hdiutil create -srcfolder" is used, the root folder's + # attributes are not copied to the new volume. Fix up. + + if(command($gConfig{'cmd_SetFile'}, '-a', 'C', + $partitionMountPoint) != 0) { + cleanupDie('SetFile failed'); + } + } + + if($mounted) { + # Pop diskutil eject + pop(@gCleanup); + + if(command($gConfig{'cmd_diskutil'}, 'eject', $rootDevice) != 0) { + cleanupDie('diskutil eject failed'); + } + } + + # End of UDRW/UDSP section. At this point, $source has been removed + # and its cleanup entry has been removed from the stack. + } + else { + cleanupDie('unrecognized format'); + print STDERR ($0.": unrecognized format\n"); + exit(1); + } +} + +# giveExtension($file, $extension) +# +# If $file does not end in $extension, $extension is added. The new +# filename is returned. +sub giveExtension($$) { + my($extension, $file); + ($file, $extension) = @_; + if(substr($file, -length($extension)) ne $extension) { + return $file.$extension; + } + return $file; +} + +# hdidMountImage($mountPoint, @arguments) +# +# Runs the hdid command with arguments specified by @arguments. +# @arguments may be a single-element array containing the name of the +# disk image to mount. Returns a three-element array, with elements +# corresponding to: +# - The root device of the mounted image, suitable for ejection +# - The device corresponding to the mounted partition +# - The mounted partition's mount point +# +# If running on a system that supports easy mounting at points outside +# of the default /Volumes with hdiutil attach, it is used instead of hdid, +# and $mountPoint is used as the mount point. +# +# The root device will differ from the partition device when the disk +# image contains a partition table, otherwise, they will be identical. +# +# If hdid fails, undef is returned. +sub hdidMountImage($@) { + my(@arguments, @command, $mountPoint); + ($mountPoint, @arguments) = @_; + my(@output); + + if($gConfig{'hdiutil_mountpoint'}) { + @command=($gConfig{'cmd_hdiutil'}, 'attach', @arguments, + '-mountpoint', $mountPoint); + } + else { + @command=($gConfig{'cmd_hdid'}, @arguments); + } + + if(!(@output = commandOutput(@command)) || + $? != 0) { + return undef; + } + + if($gDryRun) { + return('/dev/diskX','/dev/diskXsY','/Volumes/'.$volumeName); + } + + my($line, $restOfLine, $rootDevice); + + foreach $line (@output) { + my($device, $mountpoint); + if($line !~ /^\/dev\//) { + # Consider only lines that correspond to /dev entries + next; + } + ($device, $restOfLine) = split(' ', $line, 2); + + if(!defined($rootDevice) || $rootDevice eq '') { + # If this is the first device seen, it's the root device to be + # used for ejection. Keep it. + $rootDevice = $device; + } + + if($restOfLine =~ /(\/.*)/) { + # The first partition with a mount point is the interesting one. It's + # usually Apple_HFS and usually the last one in the list, but beware of + # the possibility of other filesystem types and the Apple_Free partition. + # If the disk image contains no partition table, the partition will not + # have a type, so look for the mount point by looking for a slash. + $mountpoint = $1; + return($rootDevice, $device, $mountpoint); + } + } + + # No mount point? This is bad. If there's a root device, eject it. + if(defined($rootDevice) && $rootDevice ne '') { + # Failing anyway, so don't care about failure + commandVerbosity(0, $gConfig{'cmd_diskutil'}, 'eject', $rootDevice); + } + + return undef; +} + +# licenseMaker($text, $resource) +# +# Takes a plain text file at path $text and creates a license agreement +# resource containing the text at path $license. English-only, and +# no special formatting. This is the bare-bones stuff. For more +# intricate license agreements, create your own resource. +# +# ftp://ftp.apple.com/developer/Development_Kits/SLAs_for_UDIFs_1.0.dmg +sub licenseMaker($$) { + my($resource, $text); + ($text, $resource) = @_; + if(!sysopen(*TEXT, $text, O_RDONLY)) { + print STDERR ($0.': licenseMaker: sysopen text: '.$!."\n"); + return 0; + } + if(!sysopen(*RESOURCE, $resource, O_WRONLY|O_CREAT|O_EXCL)) { + print STDERR ($0.': licenseMaker: sysopen resource: '.$!."\n"); + return 0; + } + print RESOURCE << '__EOT__'; +// See /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/Script.h for language IDs. +data 'LPic' (5000) { + // Default language ID, 0 = English + $"0000" + // Number of entries in list + $"0001" + + // Entry 1 + // Language ID, 0 = English + $"0000" + // Resource ID, 0 = STR#/TEXT/styl 5000 + $"0000" + // Multibyte language, 0 = no + $"0000" +}; + +resource 'STR#' (5000, "English") { + { + // Language (unused?) = English + "English", + // Agree + "Agree", + // Disagree + "Disagree", +__EOT__ + # This stuff needs double-quotes for interpolations to work. + print RESOURCE (" // Print, ellipsis is 0xC9\n"); + print RESOURCE (" \"Print\xc9\",\n"); + print RESOURCE (" // Save As, ellipsis is 0xC9\n"); + print RESOURCE (" \"Save As\xc9\",\n"); + print RESOURCE (' // Descriptive text, curly quotes are 0xD2 and 0xD3'. + "\n"); + print RESOURCE (' "If you agree to the terms of this license '. + "agreement, click \xd2Agree\xd3 to access the software. If you ". + "do not agree, press \xd2Disagree.\xd3\"\n"); +print RESOURCE << '__EOT__'; + }; +}; + +// Beware of 1024(?) byte (character?) line length limitation. Split up long +// lines. +// If straight quotes are used ("), remember to escape them (\"). +// Newline is \n, to leave a blank line, use two of them. +// 0xD2 and 0xD3 are curly double-quotes ("), 0xD4 and 0xD5 are curly +// single quotes ('), 0xD5 is also the apostrophe. +data 'TEXT' (5000, "English") { +__EOT__ + + while(!eof(*TEXT)) { + my($line); + chop($line = ); + + while(defined($line)) { + my($chunk); + + # Rez doesn't care for lines longer than (1024?) characters. Split + # at less than half of that limit, in case everything needs to be + # backwhacked. + if(length($line)>500) { + $chunk = substr($line, 0, 500); + $line = substr($line, 500); + } + else { + $chunk = $line; + $line = undef; + } + + if(length($chunk) > 0) { + # Unsafe characters are the double-quote (") and backslash (\), escape + # them with backslashes. + $chunk =~ s/(["\\])/\\$1/g; + + print RESOURCE ' "'.$chunk.'"'."\n"; + } + } + print RESOURCE ' "\n"'."\n"; + } + close(*TEXT); + + print RESOURCE << '__EOT__'; +}; + +data 'styl' (5000, "English") { + // Number of styles following = 1 + $"0001" + + // Style 1. This is used to display the first two lines in bold text. + // Start character = 0 + $"0000 0000" + // Height = 16 + $"0010" + // Ascent = 12 + $"000C" + // Font family = 1024 (Lucida Grande) + $"0400" + // Style bitfield, 0x1=bold 0x2=italic 0x4=underline 0x8=outline + // 0x10=shadow 0x20=condensed 0x40=extended + $"00" + // Style, unused? + $"02" + // Size = 12 point + $"000C" + // Color, RGB + $"0000 0000 0000" +}; +__EOT__ + close(*RESOURCE); + + return 1; +} + +# pathSplit($pathname) +# +# Splits $pathname into an array of path components. +sub pathSplit($) { + my($pathname); + ($pathname) = @_; + return split(/\//, $pathname); +} + +# setAttributes($root, @attributeList) +# +# @attributeList is an array, each element of which must be in the form +# :. is a list of attributes, per SetFile. is a file +# which is taken as relative to $root (even if it appears as an absolute +# path.) SetFile is called to set the attributes on each file in +# @attributeList. +sub setAttributes($@) { + my(@attributes, $root); + ($root, @attributes) = @_; + my($attribute); + foreach $attribute (@attributes) { + my($attrList, $file, @fileList, @fixedFileList); + ($attrList, @fileList) = split(/:/, $attribute); + if(!defined($attrList) || !@fileList) { + cleanupDie('--attribute requires :'); + } + @fixedFileList=(); + foreach $file (@fileList) { + if($file =~ /^\//) { + push(@fixedFileList, $root.$file); + } + else { + push(@fixedFileList, $root.'/'.$file); + } + } + if(command($gConfig{'cmd_SetFile'}, '-a', $attrList, @fixedFileList)) { + cleanupDie('SetFile failed to set attributes'); + } + } + return; +} + +sub trapSignal($) { + my($signalName); + ($signalName) = @_; + cleanupDie('exiting on SIG'.$signalName); +} + +sub usage() { + print STDERR ( +"usage: pkg-dmg --source \n". +" --target \n". +" [--format ] (default: UDZO)\n". +" [--volname ] (default: same name as source)\n". +" [--tempdir ] (default: same dir as target)\n". +" [--mkdir ] (make directory in image)\n". +" [--copy [:]] (extra files to add)\n". +" [--license ] (plain text license agreement)\n". +" [--resource ] (flat .r files to merge)\n". +" [--icon ] (volume icon)\n". +" [--attribute :] (set file attributes)\n". +" [--idme] (make an Internet-enabled image)\n". +" [--sourcefile] (treat --source as a file)\n". +" [--verbosity ] (0, 1, 2; default=2)\n". +" [--dry-run] (print what would be done)\n"); + return; +} diff --git a/camino/Makefile.in b/camino/Makefile.in index 5e3cabf1d774..d4a293d9a373 100644 --- a/camino/Makefile.in +++ b/camino/Makefile.in @@ -42,6 +42,8 @@ VPATH = @srcdir@ include $(DEPTH)/config/autoconf.mk +APP_NAME = Camino + ifdef MOZ_DEBUG BUILDSTYLE = Development else @@ -76,9 +78,15 @@ ifneq ($(ABS_topsrcdir),$(MOZ_BUILD_ROOT)) ln -fs $(srcdir)/Info-*.plist . endif +clean clobber repackage:: + rm -rf $(DIST)/$(APP_NAME).app + libs:: $(PBBUILD) -project Camino.xcode -target $(TARGET) -buildstyle $(BUILDSTYLE) $(PBBUILD_SETTINGS) +libs repackage:: + rsync -a --copy-unsafe-links $(XCODE_PRODUCT_DIR)/Camino.app/ $(DIST)/$(APP_NAME).app + # convenience target for PB script build phases echo_srcdir: @echo $(srcdir) diff --git a/camino/installer/Makefile.in b/camino/installer/Makefile.in new file mode 100644 index 000000000000..79162402f305 --- /dev/null +++ b/camino/installer/Makefile.in @@ -0,0 +1,67 @@ +# ***** BEGIN LICENSE BLOCK ***** +# Version: MPL 1.1/GPL 2.0/LGPL 2.1 +# +# The contents of this file are subject to the Mozilla Public License Version +# 1.1 (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# http://www.mozilla.org/MPL/ +# +# Software distributed under the License is distributed on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License +# for the specific language governing rights and limitations under the +# License. +# +# The Original Code is the Mozilla Browser code. +# +# The Initial Developer of the Original Code is +# IBM Corporation. +# Portions created by the Initial Developer are Copyright (C) 2004 +# the Initial Developer. All Rights Reserved. +# +# Contributor(s): +# Mark Mentovai +# +# Alternatively, the contents of this file may be used under the terms of +# either the GNU General Public License Version 2 or later (the "GPL"), or +# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), +# in which case the provisions of the GPL or the LGPL are applicable instead +# of those above. If you wish to allow use of your version of this file only +# under the terms of either the GPL or the LGPL, and not to allow others to +# use your version of this file under the terms of the MPL, indicate your +# decision by deleting the provisions above and replace them with the notice +# and other provisions required by the GPL or the LGPL. If you do not delete +# the provisions above, a recipient may use your version of this file under +# the terms of any one of the MPL, the GPL or the LGPL. +# +# ***** END LICENSE BLOCK ***** + +DEPTH = ../.. +topsrcdir = @top_srcdir@ +srcdir = @srcdir@ +VPATH = @srcdir@ + +include $(DEPTH)/config/autoconf.mk + +include $(topsrcdir)/config/rules.mk + +CAMINO_VERSION=0.9a2 +_RELNOTE_VERSION:=$(subst .,-,$(CAMINO_VERSION)) + +# The packager runs in the dist directory, paths must be relative to there. +MOZ_PKG_MAC_DSSTORE=../camino/resources/package/dsstore +MOZ_PKG_MAC_BACKGROUND=../camino/resources/package/background.jpg +MOZ_PKG_MAC_ICON=../camino/resources/package/disk.icns +MOZ_PKG_MAC_RSRC=../camino/resources/package/license.r +# The docs aren't copied into an objdir, chase them in the srcdir. +MOZ_PKG_MAC_EXTRA=--copy "$(topsrcdir)/camino/docs/ReadMe.rtf" --copy "$(topsrcdir)/camino/docs/Release Notes $(_RELNOTE_VERSION).rtf:Release Notes.rtf" --attribute "E:/ReadMe.rtf:/Release Notes.rtf" + +include $(topsrcdir)/toolkit/mozapps/installer/packager.mk + +# The core build system thinks it's Mozilla. Override what's necessary. +MOZ_APP_DISPLAYNAME=Camino +MOZ_PKG_APPNAME=camino +MOZ_PKG_VERSION=0.9a2 + +# Override toolkit/mozapps/installer/package-name.mk - we're Mac-only, and +# handle localizations differently, so just use name-version. +PKG_BASENAME=$(MOZ_PKG_APPNAME)-$(MOZ_PKG_VERSION) diff --git a/camino/resources/package/background.jpg b/camino/resources/package/background.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b72f852da4253d27db2dab3a8bb503b0f2e16aea GIT binary patch literal 20381 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 QxzR`5%63d0%>Qo!0I6YHBLDyZ literal 0 HcmV?d00001 diff --git a/camino/resources/package/disk.icns b/camino/resources/package/disk.icns new file mode 100644 index 0000000000000000000000000000000000000000..f2da2c58b8ca75abe739e2cfeb0514a17058162e GIT binary patch literal 36677 zcmeHw2Ut_rA9lh96|HsDRa>pr(K>2vt#!4ox)nu0aiO9(5I3UYO~R7B1woeVJ!FTK z1Of>OgdIi*B!Ps4uxB9mI{^nOqWr%nJkR%h9v(Eg_nh}V<9B}d-1FYwMen@+Z3Mz@ zr{0})zabEZ)+0c2K*;`dKwT3$fzq@(ZhzWQ`{{X z&i6yetE2p0VY46{5|4)nP&P6r2O>hbh&+e{k!ADqDHMo`EGU2qAsVu%2vv+KL6(-H z$}r_ng$W%~sX!;EN7$WT;e$}vZRi_^CFDa?#87TT5d< zi(#VbOzIUI1ogC3zgwHU5K0?w1z-uJ@t*z)bR6DYx1Ko-0 zLUwnfdeFVdzCNpdMUkjiQ2felpBF-Tw^?W+KEImZ+>HLHj6!#JPmd7GLrIFE`cWd} zzyNB{L~IGmi@U4w9$H=q#pBlg2?R=w;B9HNgb~$=mM}s+3i$BU-rl}G^t;klpmZ;T z5PAiaK57<_luc!hUSD*N{L3CsQ1~@9dJrSFffdAk%$$guKfgdIs67ozB^K60pyE&~ zs%<1Qsz;%>DI5-IcvDzXZ(C5fpOqVVd%Y(@dFD~uP;4%ZC4ARx2-JJ1r_i8uZ+;F; zONWN*Eupptr9};-*n59@B9zu?IEJU^6*mY`@2KB)Gpbi1R0s=$``+28a zL9iSzc&H>s{0x+AE5(X+fxfl@o41SAs+8A8-M(|z49 z5<5UfbI`CXJ$Vq6@&KiJs&FsQgDURD1f}NEm@RF?Tq7ztWVuL@2L?v=y)+Sff^h)G z7kp`j2SVw{)6g_haeXVGdapY`8Fasls5-?2MuzfGVlRo^Fo_ZR>z^Z(W~$jmWROcZ z@9GB(UD6dpOmZ#xpRCp=05de?J=%KD3*aRh2b)9VtiYp5V8QtDfbft5u}Y@oCKizrGP2A1tijO+ws zFvu@Re!Ay5Liw+2-U-=-m4dhPSmHS(g*$?OSL-)8oTM1UlNg4EtHJJaD9i!s{&Xkct+{@ALi+J#1O0M>dJBhjs8Z; z|Kr^OFz^Xo61!_HNq1ET82>y7NXad#X@Q0fRno^pAo;%i5d2;JrAf;Sb9wwGc6Dh< zIg{JKz?=Rmvp#qbf@P{bTU`NAds&8u7HH2dCizeVh+07wm{JLU7jQ=ZKMSWhNtCO=&L`q?;{dck(k|ki?B4=O`-BpC(i|gDGiifNs zGAX63j@LftHP}yW0lhHH+oyCmPf(th8D?wmY-w$0V)od~)IBsIE02NGoT}&vd_+l# z1g)2m9j3p+4WY8`m_rnfTE^+@8tU;OUk~*!?eOEnaLYDDwc-XEAtB7e?A}SW6NmoO z(K`Alh*Fjsl|W42t$=g|co}#nfY-+)M&10~4KZo{3D;OcL3u-G*IWBW_x}=83B$cd zChf{$Q!-+GeO*p!AKRhv*Sd|z{=Mm2Qt`sVJrEoH?+oQIxL*{^a0Gb$EK;1&R#3l{ zXP>{yE~N9`!J)t;tBi%<<@cs+2(2fjhIu}FcJ|P%tLILv{OQLnx6pU(Y%EQmSh`2p zt^0mnUVnR|-=M^gf{782`o|5Sy#A6`0+Ck9e|u>|^{)|$0y|+iX6mXZ)p^OG0bVzc zt>37lqkH801%DsbKXcOH%td3<`%kQ2Tv<8qUtW6;Hs2AJAK+4wEOxme6gOV?P0lT@ zZhk$T(fw;hqS90t7Oq=#B!?6q5K4KmY1z^xny0t@uxR(rg*){wT+%vq<__l8UC4C% z%GqXp!e(E9H^?tcu{{XzHr?@0C6!bQhy42Rb!?%39}JsL|I4;0(cdXJ&1~)B9~K_b znz!Q6pYvv|GtfJw4rxr$dwB8ujk9ZioL$u3l}2#@fI=G9MGdrg$HSmBaw(&&XZTVs zxiGG+PXN}kWX+Mxv|vX^>j&3X&tEWi&7sYE7pqQDoTj7m-|pSJc5XXzX6s*n|FHmJ z(AUZi0El3cWw>j&A(VEZLo+C4%yuxjprLE!x`AXS4BO4x2$3S6+1Tn|ytrlV{Q2Mg zy=5{2fken^T-mi}&wsmj{;PiR;6H08BNkV5bOvzkhh|%r&uP%;edZBa)bhH{A#;{o z_vZ`@_`~qv?zKCEGresc?_N5ub9DZkDJxgYBOn<$By!)aU8udP0Myu7YmuC)jBj@< zDMf@H~7$D$>Oyf7Fpn7vCqGt$Wcx~zNt{8m+&pVrDEP%`pJ zxxIJx9Doi&2PU1jzOY>B8&&O&=K7bC>vvaGcIcHA&k#!L&av4vI;Z<}qZbSe3=R^C zVAylk9)mP*dpm>6ItP}?BEH|CC@Uw6gb;Gyp1HICFmz<9n%a@WS_bQ<%$&czUdZ?7 z+X2*`8e*iudRK(Xd~LUQVsRz6XL!N$vjkNf0OsH6<-1KHom}s!?_4%@+U(WpD;BL- z{PWU93%{9p?BUU4#~}4@G&I!JuBv_e-Qrc)w&p^g==@e|fZWT>jWyij3NHLQFA{T0 zDtWzNjL@QG0|ULxq(JN-3~$(V$lBlH;vZ{&S-E`S5BnBQnleRo`m6T41{o5HcR_Lx=uJhpXIUSt~7cO4bTK@ZX$JQnu58^5b zx&}Kd6a6!LF@R!#OHH=g?}|{|dM_xQQqE|B`V~YXerR%Kzd5|RYNqmP3!LZXExWh< zJZszR$wSaHXV0E9ch1uNKg>IJ^T~tDx_Ww7uIg^xe9m0hgyNzaYRD=7ks~P;krGm zf4QJ{^`YtAYc~vT8mOH)2{rT3TqPd2p)}FQJ%ld7ZY~0gBv9|&m`Oae(f|zqJ!j>%b+hL!*kgo`y?OE6s--J_S+#o2+I7EeKm5nuecR66d-UkxBZr`9 zpNEDQLR)$1)~=C+qMEt}VMniM&;*Qf2b~add4&r?MbkB&SW?~4JG4mMJ<#9N(cHkS zEXuTPg5e9xwyLjPxah}a_be<;ujrrrbJg1Qe{A^c?~UsFH}5#HO9MZ zZQcEYRsg-HCO7)-7H4qVaKSs7TwcTLm)uZ5@LvOco#lbRkrht&=aY@b7~qQLvc(o7S#<=dXDof?CqYI+J*`m3tqGj0gAWy=C~w@Vc(fUC(DuPER2h%Q9|5Sh`3Iu7v|lv@}iSNM_$j1WgV0q`Q+Ng%P74WSFYc!qP0ivj9rXK0dds zhSP%*Tf=JyyK;jEgq^ql(8D}3wexVaGDD+KcKVmEUc0UjV1QG&ci+&^$k;8)v7m`V za^dtzR&{OV_`pjGoe;{JZi%FFMnj)iYzMFDZ4J!pY2lsMGS@e=vb=Ob&%nqKZF1e< z<}k_wqeqV(KfyQ!x#ODHH7?Z70SQz)Jv;2$Do2F!!ZV)9`Sek zoLJ|Y7Jf&mje*T`Z+905JFfs2H;)&7A+J(XBK+~3Mpj*%Go`sl>fG21vi}$v&aq|od^$+m%3{EE3gW^oAb!aue z2i(Mi^1Pz-=bE7WA)ENT@>+Hm*b(??pp#o2=NMPdZxRTbI2G9$De)PE!rBHduYpsa zMDESUe9=8sa18{K2LbkKyPb9ZAo^di**R=;ihuT!^j0sdOr?uH^_jMPeV&BOTSb z(f2ol5^JspW);=c^F==J3~_%?dow?@s+GlNH)aMjwRH9li2XqBE(R&icqhoc`A#Ul zgu!YadKz~6@Kg5=21?7qc!~q~*4>Lc(RFZF-QDk;mElW5U0IP_b{5l(1^|j7| z!61;Qx1O48vk&Ci3B?f0nd~-DQbpVsR4-()h%ftx^7L^EQ=JZiJpWm|BGH+gc5xuA zG)Ta8vpD{wfnb2r-#|-uQwKQ?+9i@J>l!*GIYf;w#Ox|Jwpfxw#4FD5J_&LhbxEdF z*Eedd!8C~0|O3u;*09*{**JeWc3iOd`b1w+wXP6)d6 zvn@h-?irs98iU2_6-$~>8PVs=7D+O+&~w6WthGfb{jBSsRb0z%>XT5nd)IpR3`)+o zRpv(B+W^k5)epv()Ux^gn4u0Gi1SMu5Q7}z_UgRY$D3@yj@GSkLPvlf% z^N7watZN&&w~BbP*JwEyB~}o1SA@QFQnN)&KJMfjO(-Y>H_{_-ec$e;CQDXplvwZc zwunjEw*E=EG&)z3^YwP^+kIDzI91a6vb4Z!lWY*m>Q*6Ga!D1xYiRRn_}*=3e-rUwIVv@rc9BGf?YprTk}_DS}C0kB{0`-2(F;&(#bPkWyBn)G4&6?)t2sj1Jl zgR{RwVcB$!pc53M4=RGG#xBWtaS)u?VwF@>&l9%yy7oKt+4kD^Jne?M6gz}`P9@P_ z17z6eMXai4v+7xHY)_V3y+xg3eLbtLiX5S1jZi!lNu^homlUID&x<^ZpB0(Vl!}VW z=;f5S>#9}=`Ae^;CA30xK?V3#C@iE=67Eg2LdafQoS2=v08A$`C_OS|eoD0|^u}svIH2*#rea*-s!y4rSsTLNKMuQgA+pL5}S{I5PM~ zaJ!^YuwPc=k{iJUoXhn551iZLkqOQrgD)5FM_vvF$MZAXKu^f8c1$BtC>SczQ4^fe zbVO6-DHL*=;|5S>g;h$PDFq1~0A~(BCKOpxs?9oZd>%R}*Oa1QqpflBjLrqpMfvk* zPidaAkz`0V{~2VMW)w#R83J!yx_0yKeUhR4z1#YF20ZneZoJVf8-%Q82%e12hbZ#dVU7uEyS>I;7Wl323KW!1RvS&hY5ZO6Dnqrb~K?Mk8S$we0WIKf1 zG~J-|Tr+Y`K9ZV`p_-B9^0ET2&T&8}Og>~0nv#LDBiLmJ5iIa%oO~uW!s^(!&ItLL z|LEL9o10s>np>G!o0^%RF=i+<==#TcJHB&AAd!kbDoKh6Ss3x*kLat;^i^m2sxy7n znO^G@!-COQo#~Bk^M9!`)n!I_JoA55(E2~hik!iXvJ*si3qz+j8^wrz^*+Gu`^}bVe(;hK5VdF0AL4rbdNFBxI7R8$$N4 zJCr_Nok{!G+of&HvVx3|(1?J*5FbAeKfjoCVqpn~_GIhwfN|WOo(b^Q!)>OahP49u73EI*0sfX{g7eTMAPw&^_ezDH9bDv>xc}{W$ z{gvJcEzKtwef8tF42~JtJheiZm^%A7xqA8CJo}Gb@8@-

f4_K%Cf)x_lRG>YH3 z{d;%Nc8~Aq9on&r-u^k6Y3`8BG@zk*16z;~67FhcZt>{I;r~wS z{JUiv>K~a0uJ_Rorx-o(jj=ep_t;;-U7r(~ei{~;XzTSK6=X$(ds$mrSm^KBcJkuC z|NOgs`;P6qjNFYL8>630vJ1D@J*;`?X6t7}rloI0CcnRKJLJcQg*w?jeQhlIXWw}P z$=>(z;~H98C$zP%x$0kY_IG!7dFJNk?&)~vv9V_hG)|4Fdc%L0LyD8`+YAD-PM$n<=FGYCI@ioD>stGU1$uhC@bdO~VPfXw)I1)IiM~Tm>^&OfWSa!FDE;}I5noa9l8c*uW9Mq`?>CW zmuyml$^Fn4vcq_XhlPblr6$M3CTE8`d$*6FF>M}GV^TkH?a`gH7j#VmE6Bd?&+dWy zSwkbRdHuxF3FF{s?HdWjeixUKUzGPM!8NMof7O`opEb6=t9R|%t$^6LXm21gJbHpc zo0yrKyE$7scsV+{M=`~rMm#RY~2xLOTuS3A9Q za(3~4>E`a6l8Pl#iZg?7_Kb09OojjHy9SyXJ$xD#92}aO7!e&4>S|Z?&0|& z?4`GF0zQ|Jo}QA3_2+(GW12IpF%4eOvv>7#Hus8&h>DKQN{)S%6a_t>;}-!e-q*)J z>SbUS8K0Sz5>*(N`K20@#|cj>upO6~6dU&{J~<~PDK*a9%Qrf}@8wH>|Cdpz37G^4 zubdp0A6CKpjK=iykjBK)c<$sH5So*PPftxr#^vL);(TAmhP@032nvl(Oh`^l&w;X) zvAD!&{ugOXy|(&3u0G`Kq;vu?hmcdtqQwNnM+b*Tze-F_ij9g$Am`-}aT&Qjxe-eK({r^+ulb z4@}P_l5?~1Sy=_l($ttpD0)^5zSD-S9Ny*8; zoYT_MGjOEh7{V8dOzqY8Jd?3FLSo#jWE`19Oi4<4jgpat!{ro~rQo@2_7{ju?R1P? zIzA^I)FhKaDJ0`TMKUw9@B~6mF1frUgz$wTQ*#^J)Hst$#HL_#3kr&>NLe_1c1})i z9*J7aC<-NVzf@!rhNFXu@^P6t`6N;iDJM6VM9!zu${38a`0_6onc9opY!dTJ3IPbM zghDN#6<09ostB<;>_+yNicG?0s;7HUW?5Bbb$v|@qmEUXml}s-aK|Gu3Coj1JzvHo z;(=u+gvX}m*YVin5}BHL?DAY(dJ3LMV{o|KhKBKpOo%3kKaB?-yZEXyeN~yhs!U&1 zrvDdICf)Z`CIgAeq&;qx=@1Zi{wI~m;nOP9&zAqI%JksVDii8URHg?Kl}Tf4mFeOr zDwEx3RHlo8pHP_&n18G?SssAN#ZBp}-1If9>0NBmyD+S;VNKx4%CBEo1} z+Kto$S$*AY{D%5QetTDQeNA;u9h=wMRTX1>C2gE?Q{!#@Btd_>u!&VwRZXv~s-TzB z>9uUGK-ekB_tlLYpWGz4VwBd})5>pT*H#phi6mk+m7H6~YH4q3;0pOU!3Lq@k(;{j zKTH+$v@|u;)icQCJOU{zBP)+kT;JASS6RzyYRrx?7@yo^c0InnyM@PQGHNNr;zDXZ z7MnsSt|+apuBxo4W`c;dsB@&=amY={C&P=oggj1tT`?&WS5QF9OG(C)iVLVE1%(w= zW%Qc*B7E?DPTLoTHSte-;+tEzEKW-uJ`Ib_FUZDXi9{^1h*m@`EG(-kE3d51C0aXo zf1%v;>|RP`JCDU+^D8s4si`DNN(Pybnu04WE(F^U1ts+2qOzjw%o~MmpATzVD3O~Q z&xPd(B)V&LSy5JMYDyM4hm@X_oR~~2BBMxC@~B05xw*t_C#$Z{$xS~DMKyUnN-J+^ zVAj+W(~5FZvDnlcVsbp#7E3B90go_EA<@c!{iG)wmVH)i8jfiaT?bF@3RsNV@*-Mc zei}9@3!fN|N|a5al#@*;lO)4|C0d4cd`@aoeI3tqIi1wpSX)~O6)Dn)DT!IxiHT4W zlq^f3Q@}%rlM73kWyExRv_Rac@K|g{b|C?ujn5|F@fqNuX__Q< zUA2f_gu{~^vpz2}O@AvgiLWP+Ya19P#2kn)EeltGOG^j4aas6mVr~(;0xE_|pwe&3 z=(*XHm!a+Bl9;BqozE)g30Q?>u$hES%_V>xM<^Z2kk8C2;8hkwrIX9b%gV~js|tvP zu`fEtt1v0EF2&~X`dSKb84y-Bo0O4(%7n61a5#KkMP6<>c%B%lP@;ne4#`EC0m5o{Rf^SBMWwmkf^q0e)9Lyt zwBq6%T1{C|QF#H_vm}65AWX~2Arf=*i}Lg7RaMM-Ms*Fukgs6mdGg1nFR3yOGV=&| zS$SnObUJvv0F|QzaP#s=WKt1CLsUaGvP?Fs7Glm|*X8&$k4s)EeiOp9uot^qM~AYc}ZDyd3j|W#F^31-os}$#S-~n8o~6_ps262 zh1(DZBACL>ifU+ipnIwr)hyt)81#~&l9JN0@*1e(yXu%-UC&}SG=d#)4u>lgHVc~tt+C~eW5zE{8H!(Ouf0)JThk-}As3UH_$@u6 zPCmb>5mdGD+XhfKF0Z9kDByRIQ+QvXEp^9Y>gu>WezSnj=kZ%R+d$X{s$nL8;qrJ* zpt3??C;Jt1Y-wrQu(Z@}=G(*tO$1mdo`OKqQCu#>la;_gf=SK7PGJn~Gs@EJ;qavf z8+;oF6ytCjxL}nl08ye%2mpd?Zia-DTUtB22_Vd8?C_=8!{JM9)s}feJ|B1^Zc}q> zYl{HDAOH%~GNrYxy{Cst{EV9g;YL-hNn+kk|MbVM%^CdI@S)jCCXTcD1&& zK^@<9bxI=odwP2NL~vgLww(LL(Mzo*elN>A2Ku_YyLx&-`Tl+}40l(g<+462EPeAj zdWkROQvOG(SF8IP#MZ!S-b4T;Mpm(pnkImxLwY8@Do@kA~OxU33N zc2;_J9*x0n9KWaptP6-rjbBBjuc1p{LzljWF8x0dx}@`-sB}#tDrrQ#AG)LkB%=cX zV}&jq06DgLj~cqBo&(l!vf^sC*dqLRa(pv+GeABjrVYr*k(k3Su{WI7bO zbnnxm(vu-k>B`ulOZO$B(y_5cB^`;Vw9?_d&?Vb-lF+3Sql7M<9tvGL`;n*=aA`IO zT~gU+67pf_Qnoak=1a6_Pak|M1s02PLP#=i&d}=8+tdlz5XkWud#2Kf(Ck zVWq3J;57(RNMfGl^!J!X{UW0UUi~7a)csgtRL+qH=aHpEE`eqJIg)DB&%0Ws$lq@; zD(A?9`u$Sm7eAL7$u-(%6Y%mAsU>m5=L|r`11!&_mvB=?Yx9U>3g8t@QcMNkj^G;Y z<7DvWE-9v}g`<&y|420BQu+Xdf?w2p}mYvGZpfAWE9<4~E5|V>>_@XQ{eB7{-D(;*F6M zLZ!@49oqp;#!7MUCD4^)J3uMBKcEhd?En{)OS%2c8^;)Z1Y#ve%KTl2$K>DGEM@*) zoiX_jcS)Ilz<5l49q<-asir}@G5L+9>;8ZP43-EnNn_mx$^}W;{lRel zSodHmNh4}1osZ=U#_0d)6zPzTK;`^02LFPJ5jmyvaZCp&b@vCuV>-aUr0xE|dyvnK z(f?9+e=t1oWDNdu(sqB~mA+#+K&iVw-~fZhaDbLlcYiP(JL;C((4ffqOWpm!FzM3{ zP$^bAbN)Tl((gWLfYV9u<&@4B*78sC&nb}(<$I`2zkiZ{IqSWg()rT4|C9W`g9l2a zo_bGxl7ByV3%k_QfYB%UPf6eX0S9RLNq!?~ul^*REB61S1GJg|_cw+EoDlanh69`s z_XoqDbbu4${=g>urySs%QmIcq2?7684sb%;9}IUM_{0SKjW;3f@6r4O|DN^<;TPTc z1ix0#gzyiVe}eyxXhQhKKA&)a<`d%nU^r^@JxDp930VC}dN^m=r~{x7H6h&(!$q@3 z<)4-_LHu<~N9CVgJVE@t(H-E@x(VX%*gIf)r9r@Fj3hLlip208KoJ16Kwyaxs%>qfdIe7 z1oJ1&p7hQE$f(SCGQs{Q>bnsRNLFRW#fe;g0srp|_}^XtWmRULoZ#z^*_`*^p*%Qj&dH4hVeHv3RG5k#-eQ#rT$39nW46H)=2-O^v%LGCkrOb0$BR%7tK(4XMZw^)8?<- zdNE7d4?hn#u($B;jx`IXD~-7R$WNKQ^v^w~O;Q*F@R|o{CShHU{l$ZSFP}SAQReLe z2q~xX?GLNA9Msmk16f$x*nTeAjFvuE2%NXEwgP`LQyK~2-ng!J{^XGze=eK%jq31AaNhDKi!bDE69Vk%e>$DL+$_n H^`HL(tkMxe literal 0 HcmV?d00001 diff --git a/camino/resources/package/dsstore b/camino/resources/package/dsstore new file mode 100644 index 0000000000000000000000000000000000000000..c5cf7754d065fc953eef9c12bcfe197961691aa4 GIT binary patch literal 6148 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 literal 0 HcmV?d00001 diff --git a/mail/app/macbuild/dsstore b/mail/app/macbuild/dsstore new file mode 100755 index 0000000000000000000000000000000000000000..7fcf8490babaf07962254ecda95da87eb97ec5b9 GIT binary patch literal 6148 zcmeHLUuc_E6h9~V+GcB9W3AmlI)jr*r^XK5Tsvg3OVO=ZBkQIQt8MZnYeUm~F-=nc zvX4%Mpy>9XPC*bE%s2byi%`Lr4qrx}#23GU57YWEVGl)=c+S1&OTVPuKqw+5r`-EH z=iGD7z4v_g`|e2r00&E{g8(4_2vB1*c2c(q@i?~)2}ltespd+v-f>DI``p6mlmrxzS_i;)&Phv zuU)w?(z8$-cLr`AJ6^i#HdlYl2Jkku1!x02x#r;YMA6I@vt)Z1c~2pG7+0QJWnWwg zsQoa%32{z*oQ?U)$S=h2q4tQ!juXv|$|MJLGf13LY@8Xu3(SFSB7T>+q!dnHvUk`%xraMt$Y>D06uJN-h4?TI(g`IBQB zI=0#mn*i*FyJAC6$C%~k&Ci~B?1xSqhL;rYtVJ1#+_iE{IsgdhI}pWW`OQM*o!?pK z5;}j^=g1wn1I~87msd}eXVL4vgLVDT&`2z-HTFaDyj%lcF{$1bf4W$hBqhpu^9epK z_=(_W8r!a`04=ml=dU>XDY>;lrej<;9%ztv)N-cZ-N@kZGqGgW`~Knqirl4Uh@3cn z=J}*$WpxT7=jJkfVjP0s@QAP5x0Eq+WwjJuQY2%REwSiiUPb_-IV+deK}lbnowDet zKu~M)8MCOp)Z{=tJ<>odoi4-^1$BCAfi$z&Gip8iu;N3zk_mHqvS5{RsYpJ@IsMnv zMe)X5uPPDo>QK2l!uH7eJiJ$a0YhZ9&t2w#$6#RHReWQZ5M$!{TFQMnU_MUD#E z8nru>cuEA60vNSBpmqlg%Xm~H)$KtZ((VS;LtdHdDX+}+lvn0@$}4j{RVUjW_4S?q zhOXEAzY4BO9d}vqQ$fF=A=o0=D%d8tLvW{HyI@eGA#n_eV@MpsjpNpnPl(?k!NY=2 z3Z@0m2~G-530_m!)3E=&4f6dBa=_kQpC5h>o_e2tG1cYM-ym=G^P>8h2gmREf$ed8{{kbCUqguR{~=oFZGQi2t7hNKKr;i|G6QJDPQ?ak zYjU@4*d*VzVQLf9nApzNs9dO%>sT>-74!eS6wz3i8N#Tbt&ucD|9K(6lWz5W5@_E4 Ob@yrW{{P?K|Nj87V&EA7 literal 0 HcmV?d00001 diff --git a/mail/installer/Makefile.in b/mail/installer/Makefile.in index 382fd5a54c43..f8766fad5902 100644 --- a/mail/installer/Makefile.in +++ b/mail/installer/Makefile.in @@ -102,6 +102,13 @@ $(MOZ_PKG_MANIFEST): $(MOZ_PKG_MANIFEST_P) $(PERL) $(topsrcdir)/config/preprocessor.pl $(DEFINES) $(ACDEFINES) $< > $@ endif +ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT))) +MOZ_PKG_MAC_DSSTORE=branding/dsstore +MOZ_PKG_MAC_BACKGROUND=branding/background.png +MOZ_PKG_MAC_ICON=branding/disk.icns +MOZ_PKG_MAC_RSRC=branding/license.r +endif + include $(topsrcdir)/toolkit/mozapps/installer/packager.mk installer: diff --git a/other-licenses/branding/firefox/Makefile.in b/other-licenses/branding/firefox/Makefile.in index a656196902bf..d1d77f191d9d 100644 --- a/other-licenses/branding/firefox/Makefile.in +++ b/other-licenses/branding/firefox/Makefile.in @@ -38,6 +38,10 @@ endif ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT))) cp $(srcdir)/firefox.icns $(DIST)/branding/firefox.icns cp $(srcdir)/document.icns $(DIST)/branding/document.icns + cp $(srcdir)/dsstore $(DIST)/branding/dsstore + cp $(srcdir)/background.png $(DIST)/branding/background.png + cp $(srcdir)/disk.icns $(DIST)/branding/disk.icns + cp $(srcdir)/license.r $(DIST)/branding/license.r endif ifeq ($(OS_ARCH),WINNT) cp $(srcdir)/firefox.ico $(DIST)/branding/app.ico diff --git a/other-licenses/branding/firefox/background.png b/other-licenses/branding/firefox/background.png new file mode 100644 index 0000000000000000000000000000000000000000..796eb2ab113f985510006398d97e1a63a8636f17 GIT binary patch literal 67547 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 z zSXr2A9;hUytqlGQEh_B1UGeioTZh%;zGyA!aq;{%XjOr3+lwu*ht_(0{spMFXVcW9Vc)>u`3 zpiWjt24u;U6U$u9Q!IpI=#@DY`Xhh5_{r<7P8P#dK;~c8vh*r$wZpU(rSQ@atI+(# z2@BEhZe3SZ8C5GFp}EWJP!0bCW-M=AAAIHc%`oQPs%FO%NuG=4mDZ()m#)8gw0mm^ z+E$$q;J2ZPfwRY+IK6(pqbzK@OXcN#|AfpwpS`|*TfWU1*1Vlq^8?$u@?&Y2!2+3Q z@pu=8vK4c-9b5Upz?Lk?pj3Mk5)WCgO;;D##bq7@x=?^tCR8+c@Iu04Ucw!`Br2EY zFUUG^XPKvw0ZJAml(;wxXOfbt$bBlCYgRw;rcwV~6Yo4A)^f=hgjz6AP(V#C-O!yY z8OHTc9_Cwblt+6kh{2kVD5M#&&MshE%5qMKkZeI1;$kD^&_a?{s9!%wp5H-s6$XYq z1vtSX(ksKKVjjgo95EBfg`uHW2Gez=juGuk6uL}iLTcMpMP-P$MDlez)jxH z!I@>gwq!s6I=e=vBhC#2kb)HpSip&)QKtJ!fmv|y<2M0`D5jkj-GqKTh5*o@75D-S=fNP6aYrGmkX5^A&|D;5QOF9Ybj@|3 zhc!Ot*}dORp^56P?B;i-k_{93fWXu7VJNKeq)V?}FFg325^2PCEt zF&)b3NE*I|0*j+Xe(=2JM*e6~?Lnsy4?$3YvhGY26FD7gDLmL!RUVEFq-hcaVsA?h zj{qo@-4!KvK*7#*YW*3Y6j7Mh%VrXzDsSiVF_$Uf`e?$wu#*%d$U+XN6hi(@5CXjd z8OuC3_!Y!F06hz&D=Xw+U0S{WkzaURjsIy3yl;)br;jezy93SSNHaBk4(6^ z@$kypnYLM5_-U~>OFkOTv1`URQGk*C*9Tw6kL5Czz zBe1TI_T_Yl&P!LPv;ryZ$%J-lG$pw%c5Yy*53!M8WqKkWKwQ|%m8*0G>$tH+G~lz8 z$`=k>uMZ+9#efr72k2`LEL4Ry5` zx}287J;VEW+@fKGW=^SjKurwU-;w#Sp)}9%F$)D%FiC?z9v!Ihs2T_ZpS-gc_!-%; zYK)!85OLV`VH+7**Mq_47x&`5B8(Hxd`SjO8;l?@G>=&KiejAxZL2yn<}@SR8x}_= zt}=T)rm0=5>t8#+mHmJMBWncELrS46q?xz2Zw+33;nsLquz=xrrY*=DR+Y7*^$Wez zmlj#bg{%e$>t-vtHu#)1-Mbgnc!eWhZVDbas5xNG+ljT>TCKcyz-E-07bbQq1eEHt z1>}^U>cH_Vjnk-LR&&LSH9^jM^$HVM0$XEN+&;o1eBt)OZn(1K}#BV8PB ziG!P37L)}(SVQpR5pORBowXqA!q6dO28qVEUNdM#L{7paXs@s^q2LTN-P@qm$ZQAD z3a8W4KHPHk?Yvl{s}qD+lB%h}-(sc!v33r5_zbIJ9v>&!Q9)%>Xlz+|mN0dF%&v_i zsL2pOObGS)Ao>frEz)2x3mgm)1rxpVq*khsm##bn;Qax;`>r~@ssV&pc+w4Tl>eTf zl~Tu9^zajBq3Ut~!;)zB;yi@OvlRxCWvOTbZ5ryBACB~qq=znAz3KMoV?%d+aa(i1 znzxf|+WFlbd=TO^c$QBgi_oGHaUmh5ry+lVxfC>yG>-{S4Bvp9Um#trEL^$7lP(Y| ziZz0HsAMU2u9ruf1f2yYV#FXrQWo>}O1N;wuqwi#Hj669#ldE|b6FH4nA+LkLfT_t zOhlnsV0eYfhvnW?l@CC+cYV51s}ve-qI!48f8H1sDQ+!mzFbbBRK}!h@a7v}SqLm!KK}Sbbm? zG%HV9mCpw;Vv+={3tb!Rxyq`TV&zEDu}vNO%H2iNjW-&D8;UeXEoy+n?|%+h^L7GF z`@6iuDO*5FyD5+1wq6!W;Qc>>%2hBu74%YV$P^6~4FRwqoRKczQ9`m-7O!luDAO`0 z1ap+ls>Qh6eq9W2L;8+EB`s`~EY|8pD;Ift83>FlVY=i=Kfm>gIM~Dw8WtvlMZ>L9 z1s({`KL7h)D6wI|C3a?b96 zgJ}#b?)u6&>I)uc3_Ej-FgtF+;%F~+YD&x&I>Z+oXO02=tR1Js2ojgnXzDsNj=-i|@E@|seV73v{ zWl6Tj!Bq1WW=ey(jANA+aKCd~-wM+YQAnd+)YrP60G2e5))TpUu_sWK*yTS{f80;H zN-7&dy|G%Cs*60&&?q|>p+`AJ)8`U~5j@>39|vy@LU~ z5;d%nN;IpRhT z99JR@pt&P|aQ4jVXv>2GX}(i$%G%titLQ~B!;n(Pxgaji<@({Mt(6D@j)R^I(aPpC zGizsOOu@ujwgjJcLy?*u+oPj04c0_vgm61}Y5f;grnkA; z7Dl%vWKhVFv@CVJs82mY(wgCNdYQAjX+FcsG z;|X!nvbIdkPBU$X9B``BNx>f3Id~-Kzf2btqrT>!FYZk1^7N1h?zUvJ{IsgsN?i?_ z&aj`Fhf(hlYgo=_Per?rQ;V`Q^vu0g5h%;ZwDxQc7kYPDeGPOIFRUHPI8%O8u zgj=KF5ezRW!8=;Nvbj1#uiQyqoZQ` zhRzKK3*CM&?hKdLSZ5J5DZr$N7_{2DR_<@Z*goeDilpLM$_$nn76<-#E{^uZ;a;Qs zxm)qiJTp=WLdR%K)n-JY#uM+Wq}10$M(5NhXVJKLFTJ&;)(e`Y_!;k8I4-3tih4Vq zxN_r|HKsUHLu*iNl0T|+En|7)adkDEH_OwdnX|1hsp4uBXLEHst6lB>Kr8BHSz6Up z6&SjMs|s<=Z4L8wLe2kDeW$i^yDfi=zA9i?64GI$pK=uZ(>dv`(bJETs7=H~@g(Ez zHq7>ni826s<6*JAsZ7Ke_}?~06MS)rx4Q-cVM!3`BF}ejh{Js+{Zt*$L{?db1>u2d zsBvE$>=A3|^xfBM>$ReMOk8fBBO!hm(Z8n0nav%b<|9NaMPXP9s3WHONQMs=`%ezG zo@*~kPi>Uf1g-Oyd!0xzJJyKuwX6SG4+;=ZTwH0dhVrcG;%b}H;%3dT*v_uW$LZCHwJtNH}jN)Z8ypR(-ARF_>fr)2?7bF{nlw=NmL= zwQ!o8eOw1Iky8UuoOfC{S|_0{JLM(@EN^e?JO{L@q7o&8EDJkbS45cyCdezdZVH>$ z*CakrBO-=sp9+aVk(USipqw!uBU!|uwf)MrD$)6_u+=~auWs36J2v=MZ?0ahwKb8# z6PeROnWLlMx_kM?;`&zBN&%vz%NMtE%@|M*Aae+;pEh8t4o60DTb>CfjdvA6u z1OXBtC{iS4N{%SnENv;pkrgW{=Znj67RPIxR1zmu`4oRku~PX9Qk6=SFZz(m2Z^q@ zRH|Y^QG!cUL<6L`2!yx*Brq5NoWblfZ}0AVZ|*sF>F)R5JPaXX#--|m$KmVl+ugVO z_5JlZ=l;$)HDJ|pSWA%}j6NZ) z)-xF7o2x48gMDXQxOgNDURt+;+Bp(aWXe2UTald>h87O>i1Ik_%*NAsaVcI67_1A;a<=(o*P(pW*oJi zJ?Hkax2ytN_N3-^`Fm9XMSIFx!>Z+wr2M#|6z^`(8-gg;R$dMjRG|V+N@k9cGrvrD z1Z)P~gawSn5sr%-2wEb~wzgz{04AP4B622zMw5gA%q*gPm2GUu_AZX$A&0pl0c3B% z^qN$5JF?feXjScYc@O92rXx6H$Nrd|hn(@Wie;mMu%Y!#ky|fNhewZZuY7go(u>ny z%5oWqT;w?f!T@09GS3-W$7U7}Dp*MAkied!Of9IEWb`VMB#t6Q9imZp6{@UG($X=_ zcjcUus45p1Jal#CMH`$|VukoyW{}X{r5dnmIV5qWfE@*<79H`)M6`C5Ym-oF%?Qfp zEYOFaf_c0=$2~OoG$Ozktw1qg0pvS7vezTb86IwoKoYwova^hw=UW@1wPQhT2sjjS z1K|Hs4RXLHW@6fP~DC!(_s1UQG-C1J&IF) z5FluZUjZ#jv|FGJdHg8(fT%X{I3#0MoXOU%Xtm6w{g{prpvPm@EF!xDo0`fTZxR;m zeQgD;)JEM558SHhSL(;OW;Pt ze|hPAo~FG#hpN)qKxC;H3`9D}CC;w`Bg7;~#06#NT@gXS+9YRQEY`2Gy7lm(B;ZJ`Pik$&UaPwvlK=RWysZFZu`MNHEo+!>1KaO8Yg>_oRx z8TOo7V{u$jZwPwtlygtHn$X@-^OvF=-@#v5dTCnnts)_+vY3Q!CuoBJxYQU=H zZ-QX8J!3iHSYzm|edtMk-&rP7jB}Qyfxwli9Dx-ERWar(?|Eby>IXi{M5hmRz=k|r z#QSm(B{2n+%q3OB@Zl_|;xDPf(*!A8WG<*#jcyzIUb=*$m#&UrMeBp8LzXi7g`01j z?X8^q#NWAk|ED{QLmB8ij|dH<3W9)za3g3z&Y)C{>$>BYq8A<%SYXlne5Iz^m|3!L zWODHNP7Yneh?l*3UrHBY6*BJ-BUJ>Wmg@?wYQU=HZO*5A+Cd6;~M$) z-f>gu(y;g49;WCd?yX1xTeK+ZN_%1B^v=rfUHZ=38<#FV`1JCzNBcAPbs=RJIJ3Cm zkj{ac;?k55uYvg~PGa*xD;dZf5|0rqeqjQy&Dntdj*dO%fz8o=UF^E~{ffxw685OV zE#>#Nr4Xg_qZK4lk5$S8p*0n2z^di&gql}tX{6$S&S*R}SUY>R#|9X%5n4)2h)MPz9`2AG~qwk@X{Iy3J$#WCpU)GZQS$@$S)rG{!uE9|}J9 zqM25*py59>X)5$q765rI2vrd2{Z*bKNrEYxx3H{Om5s@&lS?_2au`O5ogZ|&jq!+i zbhb4v@V?c6RmBb8kRsdC*}^OT*H=>Y3Wc* z6)qJM@{bS(tcXDg1;{vGyIoym=&iKBvo~r)Okdn^-b)dq<%Gn=kROLu4igwJf_#{B zzcV-B_3<*!cca;eWDjj!ePrjdT#C{t$ysRGo8HY-Ilk+GzV{*T#`D*Xf9CqJPq&jJ zT&98EgNKrbDGju~Cg$&BM@|4Y%~*?uUh33E^Ny(Ayt2vb)WMR1Sq@foyA=_O#?S7t z&#bBetCm9+>Yqjp8Z44joVxzK+09FW#U$V)iZH{tfH+=Z$dIUKxjlgy$*Yy5JPPC^ zLuV8Vh9Ki(lENh18}cf);n)tSYHMbp(D-^R1~_IbbqZ_Ff)<_SfsA<;ib0(BiY`^o zGK^ldFXwlbPpn@#JOAc;r=D3l`YF9GPB(k~e!9Ec+1hNSV(N=upL*gc*hgZiSL5!o z)D3T5s*;av$ozFSr2Fdf*7(E_3U^oDj&w{63-C2y)p9su)fsCl*d-Co%wBzde(8r2 zo=nb?2!d~bQ_3LL1V~Z>T;sx-9u(fWn5V&bMG(1|DGFm~57ifV8J_l9EX@&CXTJ6a zX(f;vb<9`R7=KoIXw%`I6h{RO%h4JbsYEe5yVC%cnLrg8=_|Yt8AsKy8WW`E37`;lo-(MD7D(f2r$b~76Y(R96PkQ` zf`&2(!?gEHH~wF9Yw0iOBkyeq-r3x3wb#}+vZbr1`yBu*;CJD)uGwwqZWeHA@3jZl z^6hauD5r-JlPtpgnC01D69Yl(1b(#~o|Lo*{rK}prE==s{~fNqEhEVMNt2Ky3EFy4 zh5>w6M36L7{oJQF0kopU8@wp71>Ufd&SF>Y(S<4!je{7v7wGIoyi&H@!=BTKra#p+ z;~eoNGz>zMHloxMWZ*F1#_a9S3Ff=BfR>9@bdGR6*z>vqKyWmB&Gsq@FdWHaw0k%B3yVJ zR9!I69p?#AF0W=j&W0Oj($SIiUaKnO)Q}iFnn=Z(ytUFFIu@%&9M_yHUq-N)S}hQn zdN05J#{)zwQMiYSFWAskCnLl5nlsTP@9IWdbg~m#x63gz1mv++ z)Fwl=j>sxA%lEwsKi;k79q)GkvKefzvcNRAp$4p44q7lLvaLB`{>m_+TeriXew(&e zRbv6xYu%waMZ%Cmx&~AdgpfOJlID=F3Q>s#TEi+5nYgqjSi4Y`V4&=%BE|QL;WY+a z#(<4)wkMKJ*m=(r+4e);=^?`qZb^uVb4;NihqT5yik%GA>sL@UZl z!*b}9chS$0z4m{YNjNytred6qgD@V#%_upuD~&9Py?kJ#Zkc_D{7I^GgaSx#cWS+1 z-p-`me){lzQ=fn0lwQ@CUx1efRE^9a?Y$2URK-c{RZ*8rn$l`-Y3WnMJ7em8>-sX) zG_cnOpp^5A)qqvY!Hd-e@G+$vvie?rQQiD0N#?*&h0H;gG#Lc$1|*DN>S}WX%o`uN zte<5L#Y6$L%)^b(xJ>bV%!=_s)QEp*bj@MNID>O!rSGa4tAPsQs-ZakK*d(neMUUs z))aKJip8<;iz)${#)q_@5jFjf{^WDN`$s1h=944GwS_KH4OqDpxiVSIh((>k`cv+# zik8cRl};stX8+acWokKau_HucbuSvo?HlsqcL9tN4x}oM zh|_2)typQLB8bKImTa|vMCwI9)d8f$qF7QC;E7Su$26INtJ(lnDMl3$;vG7BcWq+l zl^>z|yVyz1RQZ5ov_j{Ng5fS9?LruN5486{QR=-$em`m}OJGIm>h&uBKWfpbyt6Sh zy~*D1k}#P1oj)dD{O2bZW*>d>aXx!A>klB`elBD#Y~72J8K)|+tK2C}c1G!xDQR;4 zIFi26#aN*mdwenqm{H*n)@s12yrn9)9N@vDm~)d)-0MC>okmtL{w4IIt%k(K@rn zo__ox%ABRLPNMC*Aab<_9dWc|1**zEj?+O$LDS)5iJM;8W`bi>ug99n-0%LY<~RNg z$!?sT={)&`FVdu$_Bz@gMD;3Hn6}v?7N)N~UKgm`7DJjbc9D3QY^qfI#) ztNqXSvDUC^IaqOTSuFITEx=w&UVec_gf}R4>^l9V8xU%ar*|5S=kr_p-?eL zVWwjsQwk+}5C}~X^58AZj3Y$(^aMC5HAdgEM=jY!u9mv0&Z+$zm+UwM0ZuSrUee&yn zOj_5;?KkPve0b_nDsqtxpymbKbYTicTKALk^C)QRJ1j*^Ql^@PsT8d&P8IWk#MzU^ z3RWhv({82CHuiIhwbXJTf<_=rvtw}=D6%O&yhxT`p>xM6Oxg!D3^iuaFrZPQF-vUS zR=XRp$Q1G3TkCOW)~igZ=;SaWOx08qZD)K~kZi#DhSV6?8CH9WG5vG7xrQ{Fy*Uun z=OZn09}FF*(D&eq!UUNOjxazx>B*PEp{|57-T@&k(iI?9QpZ$jnYwepi=@31oIEx6 zFaIq5+y9vCTq7G-`d#rCZ?zZKIuS>(!sMhjFR4csLY#7|9KxE=Y-YNp3T@9^Y+>)2 z%HNI%;mKO&w^K$3Gw!e&uxdFdLHZRMgBq^{pjFlvm!2behc@P52A%_E0ihv^Nn=`N zsaUxVx)r8g0FJ0tov=_KN0*0IuLgpo0@SOZq)1TfeK+H36n<36g+j*JchwY{`@FtA zk2bcMTU36i-jM^r8-zu$g}KsN)~)Vm=`0Asx;#~Rh6xoakg2=_%OjWrYNq;q)oI0_ zd20SopN*dS2HAX7%ZuMWIy@M+cU*)4i4h6N6Uvi^L2JtM91ye?X>>(MVf=P&$DytxN?h zZqlTYFE5gQ8+`3P=@m2SWhk@)`;kN1nGO_;V4)qlFqD0J1(bL1*e#1^R2lIWiCY}A zi{CT>$nIhjtwzobH!I_&A~10pT3ArDu#dnxM5|e*sodR>+Z*ZT?qI8vZ|{ihP1$Ox zJg>&)6pRLH&!Xhc7Nv6f@Bh~PpZ=%tlfOdN-XyK1UQYhUxf}oUrA2*vqku`972b5! zs7TWBbnzlw8g`dIo|@S}uZtP)mZiR$tCQY$X!R_r3h;6{>5b>J2CP~RM3nVw5L4_E zgFBRZ=Xcs%+P{`guY;OuG&9-O_e4p11gI7i0cM%Km}?CC zicDyn+S+8CBu_lv{Mv6$|HD6A`29aw_$U8t=I?$jJo}K!2V!$w^}6U!XYOvo9IFNb zy|3Edj2?Sz{$Kyu%pd#*cJzL7`wh~*efdV~*>7L^)(@}f=F@RdGAzq~?F1l}uP^{) zbz136R|jDxW{5{g6odieEQo@*5rvI_no_YP@0;O}DyO*_GZS7_d*1$9YWeuYs8`Au zgZi(ea_5G+@_$J(r}Zhs8jkL6q-CXPzI2($0SRps4lM#bj9VRN1_zl0k`M&wXlO&n z4Ks0t5^K!Z>QNIht1RP5=OYdFiCOy%;;91JIC8uj!vd*T4d>1_1T@H4-{sAy@u^Qu zf9|RHmp&byJWJ<}u_T5D`d)YYVrxCS_HO_6zv^FlL#(cW8!-$4Bcy=RX(5juJk$Kj z-)nr~>-^*sB-i6R&}{h4xpMbk$+ zVc;!Pi$V66(_8+j&>7$HjuAJF~#+;dTmQDe|bid>LLesGTL-Xe1+i3Th^av=XYgzBoiC3bIXY-0&CLk{<+#=or0 zELZ@#mgx3X3MrFeZjn>!QoX^;Je4XdRd~5$2Nj)+L`Gbk@7>>rJ!T8d(I@O_w`!n{ zr%9LNf|U7gyD>jA|K(qs`QqoJC!Y+C-iM(AM$g3irXgl}hE30hr$3QA{S~o#J$>)3 z^vch~>at7+ywMC!o{m2C>G08C4o*HyXhPc8$lA5nE-roRrNs-^wglz#Gt)^UhPoDE z$ax60LZIj&H#wK}d&13yC^x@4RN99Sm-32pmJPCZE?l{NV;$`~*i#=PjKk@<=Fw9} zjy`Z?dVX3r&9WQ;8GunJG7w^riGHrJS(amWYN_Sp7vu@TYf~dtp63GprGo+a-oGHX z-lRt#U<;>}=);5-rLwytH&#iW(JG)L>Pi4AEsD>?ipZkv{qCGD(yf>xmK6rDVijNL`1a7#?|c)u6^s=mG8c} zygiUf5;q%7t@v(}1@ z>0%HEV7*gf-bR+kPHEDJj-EX7;3rNjoLtZs(d}jZEFa`R`V!J|Lu$aP<=zUw6*@IU zj(C-)8Hw}7m+15V7EHS%r`h}olJ;SyDIbWHCDQ9aefmbs7y07$Bt}(xK0)a*T!E3}c$C=>cvbqhzs7(GoUC5T zWO(wS-}(o$PkoLx8!(ZoZD&X)tv{B1OKj$yk?X;!Rd-69e^n{jzD1U=y?Ei;H-B{P z%6c!1G)%=&90g&bQ7KIH-v*$S#;Ld&H5*|v6-137X|OPa9}&W=4PY56YK2B-E9fxV z+3vpf;+uJvbMAr`l=N0UL1x}Sij0u($n*n`o;>m35us4qa&^gSz^dh*3)+A%Gn5Ja z4?rs=G5O2?NZ|ez0Lnys)y;N@tr%6ouAZ6-Gg%KS>k=Z0YYBzjzq4Aml*^VdvZ= zY%bkW>evaEHD!xaIQoMAg?9~(X_GyJa*?8&X>C}4G(ZVd!%bVN(M_+oadqX?{R{V> zJfgP^`e~l#jp;@WShd_kK@PJtv)-sAK_XFd^8)RzXrNI%qH&W3G3j^Z&TTSCl?b&> z$C?2|-cYQuiGFlTGQ|HuVbpRNXNHVN4ENQ~ewh#9Ld8{MH+Yj|*JGyiWFR)2hTJ4vEr^D}@%K@e!D3M2hJ&>B_}2O)m+m#CptD!r0L z5s#n^c&`jM!bKsVdd2OOF8*+in4o(7d}(caxzkNMMC((jz$irc^`wpXq_&!>Wr8TB zyA#JD3j@_p-+bl0n^%{=^wrPSfK|&q6c@vRX-LpC)GteR0bo$`9u*7BZk<-0!&P% z*Juq3*8_ExMJCq|^>i~s5d~XMt51*-Mo6PjTmER8=2y0Mc6NJI>t{B2!Q3G;g^2nr zQuUbD5fvN;cv^AP-R+(~_s0A0EMXocX3+IWwx{R~r%Qx$5! zYN+;>*tn^3<};?yD5P4$66h1*=3z!~8f3CNu+9%c?4!;h&x{_EKzVm%TxU2o4$MJJCmptyxbs~}WiB!eKww}l9zoX4Dn_<`!rRPUJsSC_-@ zlqqIva8nn|NL?t6&8JnK3pME#Bj72h&;{MNhPb!O;=rX1<56hN-dbFF=k?1smsT5% zun{#kmNyRB>8{VdxVU)r>ecP-?e+EbdIsPZN?ck7;8Fv@Jr7=GR7^I3EBj)KA?Vi>qNKy3wwz4E*jaYPgD$U0t1T85#V>O}iROGt|ag5b{}+A^jnsAxBn0P37^KJ;GL8|$ zeeU%Etyoc&#aTH_;y){sIM*lYWKjxl`UL!Rgf7$7e* z?+<$0o9&fbCqMHHn~CxFB89?N@$gxEF8B&aO9?rD;PlbO%Qt19&tzXYoG8a>FS1f# z@Rd=x6h!ctV`DSM*rCM|Uc7kmx#ym%(drjj+>6wHctCm^w6m&QARAaQyX#8iF1ihe zB91O%vL0Jn4~2N0!N3k&6HdsC+X;=4K}N=@=0lu@i4CZ;FwJ^3)PR&UozYXNkv8Q` zJ{oS1UN{q}^ktHugW7bN2C?k#^sb#3olSr$#_UBH1qGYO5z7>L`DXXe-`lyoolQ65 zW+P!i#DkcDb3Nwzdl=&rav64MH&F8^>=p`&;RAt(pBY()Vs(V_^VtR zQEAG8D4R3Xc-@6mXCFCv>g;jR=_`z|0aP-9(#qs~P&%vOJlO}F5P$s5y%1-NxP;jikW4C@cbxZNkUvw zD-+f)I$cz+SOpBIiRM=%lVdSy0#4D9Hbaw&r78@SmSgQlw@HoqzRE}2%LztHr@n($ zNR8u&*!#tZ1{5U*7|FCy_`s1ypcR=g;j3-&!qxWqb5PVo4eDJ}GFTQxdC#~h+#idL# zA%sx6OJ4piS$)goUO)vvB58+FOA3`5mDtn_YfcekEZ`el_PVm&Ega7H*J?UqQU^Yg z%X|OMsgLOM8sB(`(Mj%jOs`!!u(F&bYL5_3pJvVbFhd2PRs=ck*}H4~A1-!2?20Dv zs3MI%hP!~qV88&L&=@oo!N34C*n|u?mmYr+b<7?Li5=NT6y>U9U*4_uJn(DgL^fm z`)D&P1zOpU^CN*WBL?d%o`ZZ2Qp6$XC_hF8?LLiA2vuO^g$$63gRKX5 z8{AbEv$##0Vf88M9B{O(eS)lAzBF~>6fN>o6*IGio;QTWN{KX2`{|(D4~zq=Je_NI zDR8Rt<*)!tt5=;)=YUUI%b|#y-8N-xIBl<}!7e0V0{@fCm~JXhD8sbEs1CF~l+C|K zp*Fp(%~?7yL5Ac$Y=hx(HmSG!1P)K%{upHRq~p8c^L&*}N9zhCR^5`R9Bk3%i8zFc zXy3oKdtte!(We<}yDxx53kIr!(CJo4SclMM04(^zP2w@9Qk89Dr+re#NXWXK*7D7{ zlV?;3nCu0V5X$l8C~;-%*FN0XSlNujpvX+9JWdhiDtyrrei4&sR2~LkEiEk_@EL14 zEGd;C0K5^cWvvEKH_wCq9u67-g>uc9aL)wy1`utd%}M>L?{-u=aA;MrqR^6-u+KY-Kkoy)@9XQTbaB6OzD+ST%wzwbnYws&Vb@7)|NL! zn#EJG3w(A)9||ifPx~*D%Hn1mG+?c*tsU?gYdIXDrA*^cVZBefE9fCNkDRd^D2yB- z6nAA|zzRf`A!ERd?|NmtI*#P<*(zrqS);1{?EUza?twUcbMGFGk)n#V+it$u`3JL& z88~A!%d^%?ABN{YY&YU4E__v-8&|r~vzS9G9vBisg;7-?Rna3=aq-#TqPw+jlO-3H zclDZzIYet3=4syEYB9&y8d9VD`Al9d``0L7*0HY+8nC+E?g5{%mcteW$=X|+q_=73 zxA5^+Sx%w^)F{k`3$xrX`;Bq=94&x$OJ(V(_rz5d-urwbgMaek9oJ9Zx^I{p)>iIt z@WL1E{Z`JS#F+O30;DnfJ*4F3_Reb`CK{W<(0bDiW>JGyfKwr+$v5tH(5;l2v~|7k zKM|=~zG~=Fm3{~H@rxS1GVj51-+lOj)|Iq+MKQUc;V~5V(D|yMwNyg~Grsvl0IW1k z5BQ9=9Jb)JclS2QyWpQ9HYOH=b)gJBQ_L{h^|PG8a|uRDDEnR6ZI3_R#4-?MB76+Z z#|_O4?%zW{;dFcLzW-jig;E5PN2|gSZe$3#G-jm<3tBW{SdGJ~Q9xk_Elb~6%M0bE zg0U78AiEvke+MN28Ecah^Rme#NAZ(IT$L(qcPQ=^eEskkXiVXn{UR?gu? zB`IKxILLFjRmT$6a*st15B+p@R`t6TDxDhrDuoPt911EpDtI;^`G7$w3Mk(!JG)3I z9r13PvR!v8ZupI7FpTJOcYlhXYZrqR%(<%^TG@0l1#D4AZh&=)QK85}OwP=a+v|)} z+3Fgvh~-srGzmi&ZC!%z8TQ6@zpi^Wy+vQ{1`9|q#113q_bj=UqR z#w49r-kZxa0PeO~`O^TR?(=xB*jyN>Ca= zj)Am?ImkH;0@a5^D8yG8EeSl%icD0n#!FT4@#@3fpwnHu!1krP4e3+F7-`-TBo?QL zg(~W;LdI7`dQry03mRRF}$ zUupa5>NR6^B1K)LdRGowmeeDh&^5cmVRJcqbnd~&&SZleQx5rkfG11~$CiyHH1O$3 zSbFjQ0{{U3|LlEtydAZfwxlWN+%T5SE0G7LrW>gUM1h3kHW0 zSeEJ}EF=yk1z2K=Ly~XlHVy<#O$;tL#x@vSZf~bdkyg?xX*B0vm;G$#pKtU#KAx)4 z%pE=Fc^|!c-wd#_vd0T6v`YcY74NK51wWa@_eBf=j#)I~6bu-G2y0a=&~gEh#NIKT znK85zc%m=b-$uM6Si${t;QzNvZF6_uqqS9s)U0N#$)$b*5@j^2(%ee>VQI^e!1<^# z#~OV~nN_QD1O>s1sLZX%5KRR~x^38oP^;C+AxdG>=!JA}7&9OOC1q)iB$i{GWq!`e9xY79HD-loL_;zE#;;{wy;NUC zTmg|5lkYEeirDQ$cmS~|jC(o|jcsEP8<;V2?2eIVyREW2U!Pq&7=!FnER!lF7F!jj zwrsE6mJMhuL9DPF_7RI_DNNURBts=5T;s6;d5Cm@EGP9uthZz*YlUf>Oyy|C%xqKh zmti6@w&)Z#O9&#%s@Z<GrQ@=>X50y7w>()J)wDw-gg z4B(gnR#x_45uGF|vfdW;+ubluWbTwhfrtYZHwMcE78IEj=J^4%Tw>)?La(g;CYGf= zn6jP>oEdtO9KB84!F?8XQ|VvGuP`(FX%>bM6tJuvLDL*cX<9^08`pE7lLa^-M%Z&` zV@`Bz?IeY)$C$K`Q46>Gp;Ju3S>lh*QrlsRj?Z8s#`7XGKg(|_jYgT9UL7f6D+z9VutHEVL6b$Y2Y0SDWc)eOl8;yF%T)|MhFNbDATaAvWE*RchYhvibGs81Xb^a z%H1HYi%7dHX2lLjX~&YDU=(Gn#1w0(*}cn-6|An06H~nXzrI zWlP{YDl$+RVkzydAGpKFh*6S$MR6QNqo?jY`S9tSYIDqz=ShW3VH}m#pPc-_m#JDn zS=OAa?7<>`)oHPl1>It-XUKls9$;ZnAe8h8V!a(KEQ=v_8R`h=f)-v-+UH0721{oj z`Su$Rs(dyUUiOYfOyO<`ZicCx|eFgYU%NSNx_H1E=R#xglHAC>g38-faqJh%dd#MRS695GtEmd`P8NDHlq zrkoaF8Ge<(mR7#%e42A;OclLS#EP<1;}i~1gC@-S^tlI?{!V|?X?k=pIf^BRn=Ojp zu_%b*Fd8>w(&WQt@Hc{%BQqd~nRH2|M$T7l%0&09?BNoJwAjX9MrX)=%&lg zkYtAQkd0OftZ<^a>v2R4QpSW7mDYK*&W)(@KR}k#0ZXhkxEVb_XIXI?f)ee z8-UbRVBn8dT#M;j-9*Kicwu)I`M}b-seZ35@va$yY z4SHD5W}It8L#Lv04=Q#D0S3Zd1-&LvvUovxSB$mbVHfy?rK|!r%&z_c&RX0)z--4V z?5jj0V~OruG2OhfSPeFg>?R;|Y8DQ`%4Ebk(kLd0IhI%?W!F+X*tB z4F;%G4H&7>2Y@Y!K!|t_s&iw4sAfP3NKu&mqMHbA1DbOsOZI}@`aaemqROu!iLjv6 zetlya9034Rf;_Y#rkrOD88>>yiN`by8yuI)VxFn?#sV~?QOvO|a~#deo-M4<%6})F zAydQvR`+K9&M`SAnBWmp6UrcweIJ9$K1SE6`;a{{XcQjnv_6fo7PkXKeHor5`&7`S zZL%%v_R^#b+xKYsTPY3&rmfzH5*X4uND>P)u>`Ssq$<#Y!$}r{yhBRE((YC2ZnUs% z-J%U86(43DpCFYoDa{j23`KJ+Q_mW3lUf3qlB6^blfDjhg9l7I;pj0lCJVM5hT?^w zlrQj|qi0SXx&NfhB+SYlEaGkKX-3t9@qlqGh&XtOw_KYx3SgLepS3-xeHjuo!iZL4 zm}XM8(u@&Ge#rYR7Gc|2v(Dgzb-l_8cThoUjhP19zU*?+jL!NlW9h*}8YNn(nK!Tz z*|%(*8dT#5j4g^sm?JSx3|@mbpf16RhOm@4XoyvxQi)>NUQMa>mbRtg3vx#QX+kEy zE;PdcAh!)&-{0rRgQlH$?63)=T@mRSOzgH<@X9fLBcW2WVFco!%z(X!<@xo8TJKX~mFX3Le!&MB7Osg_p^HD9v6K9g9V2 z96pSH3SHenPqC`5#;dL7SSAc+;$(o8l|5Bxxtn(mGH`b9|ZG)E6N_eIMm=oHe<~Bc6*rM@jOWuS#NyRUCG;$p3SC zS&j<-5%D02)l!@^*tD8$EB{#Pff>SYHl>C74`WuSXd7c9@6Q$(npJg&jjb| zYOCw(X&loic0Ipk-N(J{9T{L{Wlt3r6tQ2AYKM#dS?Un+ut0(lMSjb7JuWg9Qr_js;C26yVr0(1o=q4V_n-Eivueg;a^9=QA;z`bV1`nr{^~Z|i`*CLya3)U5(a6kp)f zsZeCa9#-f^g&rD|1d{?o3hS^`u21aS0^!_2%;UtAxSL#mqnqDCa)lCMMS&i!gX?@U zv=)zPAfp@Eh6!Q@ne-S#Kxn?nK3I8U&2RO1+X1Rnr&KH!Te>vBQ^U+Q)u= zonN)p%|+ZaM5tb55EO)oF%mGezMHJ?##LJgXItY2qVWUisQNgcQ?C?^IHrFjWK_%QKw^wF5%&kE$TBKcb@ z9^1es4UQ)a3~H)lk@;CNT-Qe%QxW2CX^Dbh)vG15Uf9M|pGyk+&vulBaJ=c}v0fj$GQtn7)xUp*IB z4P?UX;jmIdV$L(t$?w!59E%EDBQGyP`@!s7OH$Dw#nJ;#cHvzliZOMtOLYH3HoWx9 zfcm1(w(w|YkWOh>+^q8u=aDU2;`U|{kDfCufiNPFx^-~Bw;^#y=h(s?hj-$LUQ1w67iaXjCEkWi`PO?};->MhVHaWcnPi@rZUG6$?2JbNi7Z zC&rG1IE!BK-w&jPZ-6N9TVn}&^?%#OnnQ+kne9{=joaj3_A^U8JPQ{sB}|^eVYu8| zX#VgcImC+fn6`elq)QIhVXm2-CoA&ff z=oNoPYrQHeyswBPRxU>?$CZf%9hv+F5}+!OQnFMs{}}=K62~FnV$z2msc-AHwCZF+ zc=mw~>wdNL){h*hz2*}4UGtxcv;}?*>Vno2mH!zWO4*d+ttobO6+655y@N4`wH2EI zR#tYkq>|GqY9)Y1_$*Uy)rI`$QaDOt4@18U1$G4;ao9_p93sAmJPP_OmXqJ)5Rzmd zlfPEB1iwum(JfA{gZRP%B+`wFlO)L4EJ+rUiJFz31(SFX(Z23dR!0W5K%ob- z(b2{rHXy^bn?i7286t5q@AS-jIhkx+^qtYvZWY8IPA-eE-gVOItI7E*;A zEz*(r2-WJxb`VCYE0~r-Zj6ac7HON!&JTlhm!pi?{m>MxC8b1urVJ9$e8vA9o`Mi< zUQb&$$5L5OOa1+ngjJb*RanidL@=lzp#`nDJH{<=0U=xgK;AAmrv-;Yu8+`v7oqiTHEl}yOjUN@rJ&MDdLc|VNh$(NS~=SU*C|3Er@Sx; z0j-RZg|&iif;5^+cV=DtDN|%oNoXd^-cItn5-zW}u{3U;p~o z$Bi4;_n2pY`;*rmxy7Z-;g}VPcfZgQ#t>=7VUQ1{Y39*Ko^>fd__GZkyte3mN5Tb; zXcC|Vn;&O$X~ml$?k-1xy(iBaIcfUa&pcf2?UbT4GYUQvS%=kO9D~02o$L6+Zn#juDuWR?QF9ohOAa4UaYuJQ-9C1xH*^v2`SB?WQpb`0ftu7Qt+mcgxfaKtMt)okCOsXCh%s zCq~s`c%|WH+{o2##a6MguMELSp9Y(f%G7x&cLx)j!JN-f;=iRr%cNfPMa&(8b351)XXAHdmnJj`TwzyZ+z+3_Xxiw%c&l#$`XJz6j|HUV>AyQ2pFZwE^W`56D$V^n`>2Q@0M>@qIAW~^*nC=3QDSP z5uQv2SXtRUg=5yk4?kQi6iVgt{Q2|wmW99j-Lo&eL`v=c=C{3A$V^ViT+G7GxYQei zrNjsZC@FV!{O6q02aXt5j*Faq33|byBGeQ~N3z3OjZzoorl=%gVw_MT3&$Xr;TSVL zaZW{&lk7&3EGUsaE7CRcHQpeXs2&}$q}pHnrDN$kr6^#o!_g3Poch;aH8&0QdP)Lk z_!+X%l5%2XVJmPTkxD@hDu^~fh3lKct`hac^lcmymd}glBbcWH$Vw@pI2Plke9;j# zK{R}E8L85##1-jr1!c5pCZo5SflmEEV9hw`+Q5~Zmo_0;1wTqvgen%2QXy%jtUS|< zWRvuXCw^6x@wfLHzaOV#P5T{j!Of4Ib^U@P&zybT@7G+n zXwA$M&gMu2pTQHRePix|n_p_a<>eNB%mF9$UkVnou;hb}C zTX@UjmRpyIBZrQkR*D#yfxK`uh~&qF2#k%{sFD^Z`IEakX{juou;pz|8SVda_Fi+( z9283tec~wZl9L|4DNQuVL<>NoT zZSv}C_g>B5$x(1_GCdtju{zC{SOO48x?F{|EL zI%uykr_QBgC!SIfd0}7`|RdtgNJbLEmPdoYh*H_mM;GZ+DxT|L9 z=wi%jhK~8}?F*-W?$nmg)~{T)m>)A@pXnTimOS|o)bPYl=RNteAC)8a#6M81shbIs3IH11kjkePN*|1FWpuODYvg9Z&e;hPun)rW7t`i?8V^`CS9nJ=Gw z`DKH~j*Vs7Cc|Z*aE`+nP*-OstUh?tobMmo1j`M3HF1k+|6@+6sTV5vkIwzvZ5N%! z_da^hJZ`xC<+-Qfus=R@&$8#A=3M4a58uO4?5a~{oO?jy{HxC8yM~S$Ck#!Rz?11X zrp?;3tg`#h{o0_%<_v%I(&77#$=NZws8FC7Hw^hQhpPWr)PC;IwtUtVedT}}(f%b} zxBb5T@z=Zg@`2-XoEW{lvIr->v9|cfcY6obIVa2%M?Sf{`>G|uoW)|-d6Pp%qxsA8 zeEIBgU8jub;0rHrtzW#go>CwxdN_iq*mppTRF|jP+0_6LFdUQXG=*Z?F_zi4yItyJ zkd8v8FGZ$=->-svxeIAXm09Lfv`Z)3VF}_XaFv26bsTrV=+WFBWKk&QUzN&^;|v(v zlmS*&cC{Fj(7=}2#eY+$?mr!tUw`orF{MivDOfq^v{R)qsNJJH~LW2|j_eVi)AnH*U%d{yFo~c`qz{aKVjptQrt>;bTre z?}BUZu4u5ZJ(Dy%m62Hzhw#Y7 zdzs3IH8@tq%2l;Gr#AEiY^Y!U2pGAuk+c{Q}pCs>P2+nR}zZ;}~SeAGeKCYkjs2&)GUnt0stQ@;GAflcG0au61a z8DM2)_Y})2RDBSlH@*4l%dk4@xRYtX4*$xju=@H_Ph-oxvN;by%=Ba7QKer}h)%xu z)EUQr_57Ai>zBRw^e=9lqpzOSV1h6Y8!fz8w`^R`_trHu>I$)4AxY;QQ%mYwjQN*) zl7sn)u5>eZET?ug$ynDRoM8!Cu`z(v$6oKg^_lkDo@xKt3!V4A(CJ|0=!>}oc?7?+ zUL84oM4sRHHzp{K^4xlS-J$WQI@A^5*S82u=<0o2YTbx;?9mPE)Fbx3^o+yD)`ZH+ zLe%Q&so}N+#?%2AB_^3V0QW(w1Z|Mkz9`ZoyD9;_u|Rcw26JSCXp*O14`C?i1ek*; zS89GcHO)?8TpULEx&cGRPxSItaXD~^n*ml$~qw9Sv_QH`eY7Fk|iC>X2{5Pi6UwG)CZyzXpN*`a1 zW{qH994j#8p_SfG-xnK4R!83&)5@FH-qCaO+#g$(bIo|+BiUDc;J59dQ z(wDK)6k$t*EQFE+Qbhxu!6tj$5LFT-s#%=kUqKfkrm-MRm)qkB6$e|`PDU(UIl0~62<=>LxC z|Acv*dgz~0(f>7IapdCL7ybN(R~9`~?CIS1kYj7=8()6n!8FsKt zdg!rDQ)ciwe|^gwz^rM9eeV4?7B9H*GLBR4ytIh(n%~@VdGn|1`C$hie=0|fj!he$ z{@ITTUF|bIf9mK-(}|wW7X>UXs~hC@pofWvM35>m7a1Ac5g$i0ET8a?K&40i-2KEG zJk%1_9ZnSanZ=QhzuNQ1zxEbGw$C8H5VGH|>iy$dHs=7* zg;%tZhd-=d)s_3z--Q(Tt)|vv2X}N9*`JsEnXevk)DZ?xu=WPGk)u*FufVT_W7!le zjX3F=QtEqRQd;L$I4)R~8*J091S-dXf59vS%nZ*`-$H;Fs7D>w-?ZZWihPE9yxe!+ zegDYIW#u1JU}{bjMdfli48wA%6a+y`shH`~{65{f5{Zesq;+LaxwR~!(qZJwnKlh0 zaotD}{{WoM#oR$kNnJJays)E((HKlECMW2Kd<+;H9|-X(2jaySlW9mYam1*^W-boW zTR6a#dpcdBI26pnfdZi#fZVAp@eXQlW}mK$fj$vE!5DHY3U3BEM1WLq7d;8k_|{{k zjbo*+i)w*OGQ9;3<#(O0NBKt4_4%@k=;omM_0GYRc&>=o;A7V#j^}tjadM8IcRY^- zz3(r5;)#V%UH`KuNL8JljiYYfnnQ!NXoZ>Hg_2#V|IIv~oi9y?oS+5ABmuXzpRvj* zh59d{mvAbjs-<`;?|iKcx?WT)ta$cM*(hOFc0(}&mgl-4v^x&rc)=kIq#ERVQ7QHU zibPZ=Nv!0o8xhTyufz=WXE7;-N_$X-R6#MZ9SHcDoa9jOLzEfUp@0!baO&5WDK{(S z6sc6HQdhMH$){EKC00Kb4Unm+bs$d^mxRouLQY`?N^m5<6BnsrI;`_IKu~rm3&EwC zJw2JISj7nDM=H?7n8SMBL3v*W1QR9{8Sj^3(!H!}D1u0S5Nnh;D)~Ia7oYW&j<&Yj z?|%&E2dLZCV{OPJ+mgrP)b0c;lIN=DK_+Hkzo2E*Jqv!A#kQE5pAIn>Q!@tb-x6le zEL1~>W{KI=!!bY``L~Dy5``IHWo7pi7#vjZE$?#~R2BuQK z?>He!W?r-j*hh?Xr6U(}2Ir}PJw|kBPX%pEjtXJ3Bx(Pv(e)DJ)-i8Tg@W4b;|PZTtW zV8C6a%7C~oIxbe~ktNllG^D7hl3D_@BsA3~hLVU5SaM=(JXK++MM+Km=cEX*5=1o! z@^uX(_MedfR#tXT0fyyBWmEtb#xX={@?7jWj_;Jpj0gymPE5**P>~0ijMs;C+&v_O zZ6YV@Gu5qiDk`zx6Ho{nnJeRzrWt{@BNWp0X=l>4(-B#i2?zn(1$suvQH}^IyfadW z#+W^6*s`vaacV#WtGz_sG1#FNV#>HroR@lz%<89oLO6yW+SuZ_&f7hE1P8g6i<9Vq`mL^>KwnXR!4#MIi z#u}N?ghXaXdQ{`qY6t(NXH+pJ)#6FTB216y+T3&|!lKq{7*kdswvsEW|INcoT5L8X zf59F7iBlG(8PsEtQBv=~;7@^-CU4q-sSdZ0@H#5nYI1<7wozn42I{8D>M;&Q#N-UH zva)-M!7QXRNEq{j0}KsW)EfyOC5XWyPmvaoj?~FaXijmaFprcimhMThBonTqyn#gI zDr{nhGdne&eV$fS4E54X3R{P0i^_bc4oi+LQxPBu+NHvKCZtS>W029z?9oihFgRvF zQ(s@!$q3Pj6;(@kHEdSH=30*~?H<(~)l?(uVu@M&#$|3trYNnkzbtG9PMF@LQqZR; zj73HJz?OcnOs5CaC&D9D83Q3iJv4x~4;x=A9Yli4X`@W#n7|2y0^l18m}IJ#aGDsE za#Ydva~WV|Ww#Z;DF$zsoDUY$m|G2wSaGO~#YU{~O=9FaM!NqnWid!gLr7UN#AaI2 zkkv<28J0{YsbK1zW+-tR0{VlsxXz4|5%k%FSV<&OHLES=iV;=4UPVYpKm!#mf|CsY z(-xxzUJ}AF!S+UEu838iC(xT2M0(eh#Dvol;r+<;nk@}Zu(W&ZCsAV_(VP(`#IM4+3a5mniefRT6ndz7M8*+RMs7%n7&zga8pST>y)@!9 z8Oy&a74(O3RTq z7=yAEArZHf3N;U-)JYt$I0iLUwb#4lWj!O8m-gyqq}q+Z7ZbvMkfv24{<2L$Ma{(0yI`BiW-7Q7UkMp$4Sa{i^|)sw>KMw}2BWqCtg{vu zbExc*fDlTF7vOw>RdqyuOI)|LSiglfw4lb4TjjZ^h6Em5OCm&t*` z%nvIoyP;^smho2#ys?5H7(KS>g7eSg+vlCu6bzi$`EGN(c7w=Atos7T8m}4+*)Z&H>bPQ-gdzyQ;*8f{QReL5Hv8!>hIK8GK@VdX1ZKYkCZ_{S-emPtV` zN8*T*RmGui6i2tw+Pp)Bd#w-!#lV1c50Pdnh72CY@Uj&%l&D+!4p7BWOocNAla3fr zRt*tZM9NIaX?3Xg_!;A;p!H+%rlGj4f%H~;q3Lm#-s1PS}wylgVEZ*xUp%djMo5J3SwG{sMPuu%i+{-^_xo$I%$3Dr|Z|Rd@qQZbmJ6G_JA+a z%}U;gPE_&9s`oxvx@5?hvCEe(jku*F;hVu zsAO1ko_wAkeE%h1D@RN~5UXTnAmtU9<6%0rdh-yk`|ZNWRi&XpjH-mCC1(wAD-1>i zutTxJcx7THnqst-xdUCNL$60`DjP;nPHr7Ba7K+#CDwFz$;j$1Bv->P$po{w10 zr+%L1YGXea=RD;4$n~)2i7{f=bvUwmPOalKI;;t^1A^#FEiIcq-mrX~`)cRdcbzHC zUVS}hTR0N3fzUY};;5t>%(&n3t)7B4B@$n%>l=#Qot&D*y&*+v0v|V~%4xt7*(GG> zx7iBEsTb0ZX*7tfxYzZ1XLOmzcxxW-&lnxXL&C}zP;$ro6HC^3$h9p7_^|hVdFvFW^ zhjtAk(A7Fgm*6>zX*>X zAyD5rZKNdf5PuDb?>h}%^%=Pk{SG}LjCCtjM7AAv4LQXDZ~yi7K_{KVPvN`vKH%tkUTwYdftLaaa6>0dJL~!dw=8bC>80kc&s{L% zE9XQqAhMp#CYaoBK5e`E^>>=4O^-!F3N&i}Y2Ur?mp|XoeAiz;{N~NK=j!XlcErB$ zz1cUt^45Lpnr~S0=JDU19WdVAXv3({=lx{CyqDe_f7nsy&tLG9HO<$)_~!8ars=qO zSOz}87d@~L+I-3VPu%fJYu&IhW!b#L&z#Ng_vV+I&zQSl$oOfTOv%{ulw)xrcFz9y z$M5~a8$UejpacAm{HV9L6g@b9?n8H9J8S0TC@4i?@xrsd^1^@J_2JS-@1A$b)bS(Z zs6?akl<^~rpJM`(lI(A*p3Ohd8TF_Fg;IeW%IYROJNRD(7S>@T;loiFwIP&O{QPATh+8hOjjZ znGg+fAcgM@LmEcq2p64dI&#dQFCKo>x29cn)Y|LnemAlEy$?TFv+1KXy{(&QSdxzY z!pDW5=;iW-&bCjNzx6)=00960?0t8f6jj#ty|=2mrza0Xjx$OUB;z8YBt_RiFtDz^ z3Zkwn=t|Jt)ir?;l?Bw*T_fRLTyaGPS6>w+3X)|8C5M@T0VYp(&-8StaK9U?swaRh z>L1^)kL6JD)~)KkPoHz{InR-Kh`*HlJt6;p$?LDb{_3l*E?BVO#TQ?E=9yU+^ z_e~J}xhV7D@%?$T6(xoHx6?jvB`uF?`NZg!kB@Homr*VMJR*DMuonFMITI&LY@2o8 zkp8tb^pdioLbBA=R6lXe=sP-P|L3)Z{Iu^juH!5Jd41ueE-j|^J+E<3DvlRU@7`)w zk5)5#wwlqS)&1RD{_msmDc)c7;VVzxdvVsZi?hC1vVcE+(Z1beB^0QB?l%J;9+CaX zNV<@fg0*>MfBxE)vxa5fb#c2V|M(zpq}Q+;I`oxx1p1p_o%J6Y_9;nNIFtqpK@Zl%IC!W$P#^625=imwEqLywG$}vv2ug<=vNcxo3D6zS+K8znF`5*)Z{d(c=X%{OuzNkUcc! zyj6dH%CN9x3c%PES7`!F)TnXyO;63tDl0CUamk<=mkxUV)*FxQ$#2oQ^L5iGP2ih< zp851G*Dttt3R%By>h#Qxo&7b{{PM4sExxNy?km&iA!1;fvQ#za1KzlNDL-xNr+J?) zdYLGLL{+?U66N_?`rOQ?CXL#+ZGCcj)`(jlAV!kTN@NqW@!-x442I+P;WFsx|IFd?|GU&r75=E>i;Uvy<PM8%1H1qU~-{_cysJ*z+3{h#+s z4}K4kk^roPoU7P?m6Mah_iWp`mF%gj6Wn(O(kugG`DM#rx1LxFwSIq~#{cQNiw2Jw z|KP%v*G>|g>runhfW4R~arC>WsLdsVkF0KvuZT5GQ0i3HG zAqWOUo3s9wH|DnKneDpNQet>u#&fHP_F3V=zL!xf-tx&Ri%lII`!1gV*#*N!@N+hO zveE?L>rYnl&5N!bACnDi{vS?r4c@wZ^)lp5 z_~z}0647YD4kE@P-U8ShHTL8q`38j}I5op}aKSb?u)LgfxNS}@S+Dii*!?HRlO>TU!6VZ}Wy6{2 zo#(Zant@#?OgQP?lysOzr2$`>XwxuR%|zA@f=zCosJftkC&R2xJ^J?;Jdzx(3)E~{ z{V~EuhfKjo*2iF>Q#{O_mBu!3G=@WAt2Si$>#UlfRp~d&s?4$qv%Jcxs&f3= zT`|6MPg<9V*u@OXpedVdqXl|+Pq)*kW=HJk0p6lqt%4uwr5*3%Ddg)tw37q8N4jYx ze3M*m(7ZK zeRn8Ya4>qL$gHlx#P(BE!35;u?Gr@xWHBi&p;6c6j2`mx$nvp0jaa>Dn1)4Fbh0Fh zP$cBs#8ry{9yxM^uU|fTG(@OvTTw6uYDui3jtsY?X=U{McDYn%IbBo)ESR2|Ww%3q zZl^x+a=T8sr6&r1e`Vk6d#6A1`w4ruuje6`_M*4|i*c3$n^+mKY7wd{?i@*$D}J=w zh5fIbIHmGr@%AtC7Cj?~;p4q8j>d)<*cNPDPu4FPI{`61oS|dKlQy@1Dyo)UI(7o- zz-416@Xf8Cu0k&K9fh0IiFR*Y1=9Hjn#Wr?hU^BY5tv$ zE=WnwO0un${fpV1R=p+2ZPx#SV8nqU6r5+7m1?Qc~BGrSb%Oif0$z`P728?Q^S7 z7q45fi0rxhv4y027Y-Ro)T=EYFXe!M*yRLs>udenm~KcgtL#MK{v8{5YyQ$=UIhE@ z#}+*P<|=}B#9Capaw##)kL~}S_u;AcHof#8v3_2!0SZJKvL6;Ajyw>;#>ycR?D`km zd5i87+&f4!no6VIEo_vW4sZQ7x@RA*3qg-YGaD>k*1{CFF2^iArle<>7mw-Q2L5qK zC_M=f+Yqy|774&g$hit+g(p;kNt(87**`aJ+7t@WxWt`1cW&6Qao_iQ&hOb<(^M4+ zAC}7E#mUh6$MhMS7-sdmWYpdr>)(EMdRa-~wl#TVw7l``jMX15%HOgs|C@CMTh@^= zIqJqK|MT#CAQOopi}PIkIMI@dT6M_jJ!E8hW~QxS5rFWJF(SjF31oOElb}3`;76~` zA)}g%d2%7a!Hp{yzc%9rgkP?-jc81UqaM~ zrH{^9K6g$i;O}$kNb>jn7v?N^Y$ib~uY^x>yClU`dxC)%D`PsEG?6}$OPG*z67v1wA)|DvDHaQd!_jDzY?_9_)O-sV)VXV5#jwm+q~6-} z4XO?RN*qev7Y3u$O=*XGZGax7f$X8$z~E8ihEJG$Y+wG;g|o?(A81h_o}~ z(rm7+KXrjrGQX^cSwIVy%;8Yph3RLk=i5`wd<7IcgUzV9dfpQl~?$E zK3Tcss_RMPM494v;S4Z_AgUsnuv~s_PO)V}3G16=85H0JY%oKjeiu|kvM;7{s`PQ&S+Uc?oB!OKhq5yYdqC(*!jV}0)}2;3oIG?epiE!1bNr<+P%~(zQD#f1 zd0Qo$L|=~T*iu0Puo7~v!hKlwx~eFq6bf4=MJ~gn^=~l2vaC#W;v`R4vl#IlIjkDQ zXhNo!MoXC%*z)QBj+ijHO~>51%Qm=gwCeRah?j{+B0X4P1a`vp5kG*CRFrICh#)Y9 zu`*+s+6#r>3JKkfoy^Eh8GkWFiZrO#(kx>j^Yd)L;S4O^-M-4*SPrIY$b^5h896p>`BS|<9j=j)3ZXsn&mIf@~TuVqMmM{ z*#Ql+${wz_!MUXvEW{aANVbgm^a9O1mQf>3gfyH5rLeTw<%?-r)uQ{8ycSW(cYTM$ zk(ANHU{)6W>_t{4OT~nYX&dn9GnQ+L6Ko9$IXB_j0|zYOfaj(Mr^R9cT9nS0F&R;N zq*Y6#s*oTP60CdVyQ%0EYlD_gpb_?CqIZIoYkds7c_!uJyautg0^nfnxLXN&0mc zVJ1Ijry$$+kik|IUKL=|7K;-Qg4h)hL5VAD{u=o>4g&uCWqXP*?h|x{FWBkQ5H^W3XVwNMXkd&tC!FUBbM4k06GyX~$#0aQWM`&acCl|@Ka~dY zk%w37cI-%6`|)?jjoVhhePsslu<7LlU?t=y5&Mf|F|KiL64Lo)peDCNdIU4TV)UB`2Tu{eGRR=}wE!8p6ya16(7-j0xUtq? z$TT^EaD#R19ym_aRuk7EU`3%(39&(Xi{nmfs^Iak=>O4zi+E!k1QL?|W@T`$FXHkUPrn?`UOI^$sWY(fA_^f(^&unTIrw;)E| zUX<=vJwWqf#GaRa^pM4%r~r{~i=u$eoz(NsL%w9Q=y=kx{m0Ao>7Rp7_Uo8f+&%dS02v##Rfw(cmBuDL%TY%b)YLTwD44OinI&Fz-LcKPb& zVXfh76=2oyOb4nksIP@}ei)5V?ip5g2z$IRB?G6VS?Nj8#Hg$eobX$Tp%;x>z(BPw?aNL_fg2KdzwkM#HNS=3voD>>Bwtf*|4K1x<`U zAVxMyAy5LX5MvH@bL;^ZT1mh|@;W>J#FEw@#4_?8iZBZxIwR8&SP7T!LDrpmYzNs0>6c0%ST>)>XSY5wOcPCL|%}B6bQi56I#% zS>&%lIpB1fQ^Det8T42rWvwMjT!pw1&Eeb0l%K{z^yONZ`ZY- zMN`daEs2{Rdu#MvkC}{Ug~NeEv490CxEFd3Lr!ULiclt<`O8M$`PdDQzNIB+n7E17 zu(ZX5{gsNLSMG<-BH&XNe1Q_1*xfPb`HNZj;z@tF{k0FT`OCcSmyb2DFz#e0`DrvP z>*Cw)|LwE$vfB4K^qo;%$-@(n(C#p3uv6~0n*R`i zysEjKjZMYI{v__JG7VUD8l5}}gEh2&ELcQvx~6C-XyL_2V>f*ox%;E4|Lm1B{HFk0w?xUSNkb5*a5lp9ZCqeg@?r#bX|LeDs~u zSu-OlONt48sdNILhA9A%S3Y#BwtaJ0^_f;ce=%y{dC#0e3z+%+8W@mgn9%Z4e*+` zd=l2D!a56odOY&Z_x{4_u$&3d#4nVrpw`qPR9faxNJv7?S-6HJDo{is7hG@w-`}Qf z+h{a`SW*s;$zq`nrrt8!Q(S^s+&Kp-yK`aXD0w7q4BK0)2Tk(h*l;mKtO5JSv!PpyngBuEi9Kj?) zp+-;z8bBBnctt@s0ayt+SK(;I)hl8Krlh8J=+Ge)3Z9j@_QJDl{0ZYgAb*5?{O5sggW5vlaWfkFfiRt7Nia$mB3+7B5)TL*?+CU9+ z++bO-OPq zvQo3W68JJiZ-}a;b7PTqTXfP^@#IG%b^?|jz@7?AXoJlnRx_V7zY2)wWd9<9ryv>z zp#V{=U@S~kAj%)3u)JoXK0%!7MddnJain(1zM5cIXNjaJ9;X@r7M6h_kj@OU*&6zM z%wwPMVI|}z5F4`y7IF1z|Ni|I6_kCcckkYMlsdG?pJ~&k&YM5~*JH-af8(vc9XWj4 z{CS>?^ccWVV9m-~@%+Yv7mu4d>z&Pyf3SD_A6`J-bfT5$QcEy&>aj8`*lqCeS2kBY z_|95J8BEjt+H~!A^Am4Bv$o+1>m8=7o2j&98W7cg0O}-|m0?B&u7{ zK}%Ie6X2zwz+4idT1)GqmEF?@ByuHCR}s90FB}%CL(47%4m_Jz)|irPC`qx=-2@)gE@FiX@b$(f&gT~g?6DGgSp`i2*yu+ z^2$lmL&2Kj{rUYyjqf^W_)B+QPAt%xni{f6&YZeXKu>nZoXPXwePYbO>`q>%Yy?@U0#~<_Ku>8+JJ;A z=z=QPP{V>U>Rx0_$Qe*J0mJ7(6B<@R&Pm)9$po-8P3zgSC)r<+pHDE0tPq8Z=vOiJ zKfh$@k|oz(ciqF&sjIu+sF5A}(Fzg#(EBexb?1n-FHWCGFB~+yQ}2GZNl2+E4ahyy ze2>A3cU^JYbb?luCySoAaUfa#HvNXeeY*pG|3`nDv*fuMlLuwqJ2Ho#pULWgZCNe& z?LK~Y!PYNV*$yLvxrEZ&bRlR(HkZf(5Tx-@w>}Uxtm+!UIJ$1dqG=;@Ui}kAftDR} zq6qi9ay&sRvN`9bQSrdR<}76SeH-%I%ATR+QN_2$Ctj$JrfEq-$P zOLtFredZlx{p!1BWVP?2%eO(UB^a8N0&e-!OpaE+?bGMxK7GWSMU^IjssYp>3h5uDV*q#)MS7I$82{|`$5^+qk4;xNpWo1W>9xW&+ zAnPfqsRIWL&=~~{KmX9-!%RUtF*92vSiljMV`n>B(z9T1mD7H4alVfr%c229Wh_ zYu46<@Y+>t$$IOKIR@x>ve>My5HD}%m+R|ladl};B#dJ*vQYDlFFN}httS8kLP0*k z2WrYeJyU=GOP~}EI zezfNR3Ru&gd73Qtvk+^#_+VkER-9XT5^DZ{jO)4|TIL`5V47_|iN2`Y>4nMLlKW}f4oy}*^oaz4tO<~}` z8H;cb^N!>e?nC1I_zR!9cYK>RIbC}V82al87hiMzr4#Si_R-R^gL~|FC3_Mx4!l^0 zQ6mNg_fa69QBfd))FzFhlEOk_FailcbwNKj>qH|&uLMx%@n8s;Q1-!w1v=k{xx+|I zlCsNfcxo=O++IynFzMdMl}SrVk`ISavWhajl*Nk}jTzZpD#CTFppXb^h8u}2k;}fay5y#8+{b~%Y*FgF* zaMT3yrB0TLQsMsmv~;m$Hp*hvK?Zy zbnVsus)PfIGhsH@f8N3FHIO32g>=3i> zx6o%Cf9I6UtgH?>xvs~DYd)eg00(#Po<4T$jIm>9jvF^``t-xQ^N}mTh!%yQMjR!~ zQiR`%7*}-4k8cvag=jF8RuBmXR-MPs9L_{Wb*gu(IcGSedy4k_89ofqmRy=J9qYzv&s7U&ptc4`&;{4 z_~g>1PrUKr%;(-F>)Y0Te0=X7@}qp3=?;^hn%%l>j>4k4xp3Ns4Xpli&ISFS&)YqB z)$XY;EV}BJ83$NlWFjwpuyNi8V*P(+&e0TDeX5vmKJt&eyB}LXAXr^mWEX&V z^bJwLVdKgrlCww-gyz}@g6ea3cOa=$oL z^5Nd^WrwMK^xpjW!J3-OZ@6LcrcJMW^2z_5II-a4j|r|Z+IVQ6$(d)6lX)1Y(#fBJ zxL8^H7?k!Sc4=E2hN#1M)tYz4~vb|k8uoc$}Akc6C3`1Esfax(Y0pE`BQ$0XV3 zBfxdwzyY%J;vqv6RrnwB^YgoQ>sDJ^`~Lgy&;RQ@W3_**k(mK7D9KcN4`*GzyGr8eg$YpmeH;awa4{>YSKI;o#SmajirvU%m=k^}jR zpPf-&Qg~jk{^a}q%AY2a^^GeRlk@$h#Y>-?5enAy9x}4a1^sOpQdpH8V#h3-JL}WM zP6dbg_g{bVP`+28TYwY)TrI-*S|b{dL$4~c*+oeG#*&%@Wu#wQ^z3% zfgRiLR$v_wPA(ZBOWVXAgil1&xkuBUI+SuOtfqRDB+AI{fr_RO)FNAIQgy}g(&KyU z0+keOC{{7#3BGq}#;~~}}0W6|(#WW4H zYNb_)se1AQjbd0afG?f=MkB036S}61$S93~B$ehJ^DiBuctaWFiOzsn4lqY7 z%=wq&`3@vn$$mkBs&ZbEx{=znM92Wu6&B4{l=M38Y-9)og*4yA01F^d|Hj?Ab5j`C zMm$Q$szQhfTZ6WN>zv} zAdLUdH3;Oe1fb~#9X@sU!^zX^26@p6Aj?xzl|u#4L$DHH1G02K5iMY&j3^W1B85lJ z;B~?-7_~gTxy6DEI<{Aki2~K8(%`w}Ga{+2aBW5r#LoOf!qNtGd{^A3?w$?g#jfSF zA=Ux#8_LOuax|=-iXq*iWyff-MMVSR2aBq4Op~JCC{0VQtuHk!^7%4Hm55wtfWMxxW;BuzdNx{rf8`Dw2IZ zVkFY@b%fK?L93SU-2cFLn>JMx7inbZge(stCZXc>q6m_;X_yNI62Q_ahk-jPO1OmC z7u+&M(LmtNB6jo@AubI|?6YV6u!Jqgo6{8kK|FY|>^WD1++KrhE*>Tmzyc^nIS8?< z5kVj5@E1D}17I9zVre3B1CZF8ojc*q^Igf=UDgqfh zV9$PXwT`H<5fcV^><>j!=VH@jNOmrHiQp)s$LI~7b_ls zo1&_7P$^!Af-W7WNuRF$lMkArWx+V^LfbF|Qi;JD9cnnnU_f}WT%C6i9^2k;r-M)) zz;<&W#Rt3ODn*B_Xc&7Hmc#5af8E$8lk=pGDHj`_Y`-2Q2*e<4fI1UY$3SHamql?! z)S|IpNgl5Pl2wj|eD0G2mRA54o#P{Dr6HZ0`|uewzX0ZI2zE2j0(y{T7$XAp_&i zhzG4W#=BvK+#o;O%%lVVv(1PiS`sQK+wQ`9Rzf`QwoJ5pMn)t17ae8d;DmW zgraz8$b_OH5!pqREJWGwv7tvW4-qALG!Tw{EYxM&yY6ySxu34-&w+J6F-w?`pHFz= z4raMKx~_A&cY;^CVe(nUXoN_#UXP(;N7MG~Wuzj=idY$4eXaXvgieMlch&N_B=Oxg zfZ_ugJ%N_aJS*50N=VnS9)#f%nA!~^m2rKZQJRMbr^)8daUa5sbb)5?!jZ~gsumAp zM-7^3bdB4e1*K)kb`smLx)yv>XdNpzd=RIr$ctDJ8U(fYs)zc|MD)v@Y9-)mO zJ^_HSa9lb6Ni7iA$ZbFO8GdOJfR&J+S2$vk{|v(vNryZPf>r*CMx){SaM(2T>gu#z zyFAqaObY^ANttT<%d)~1dc}@_;sPw1TZlngE=cY~9YYO;C=L-&dkA`417CY=#ePIT zn*^pNtUozT*!avJ(LQ8oWl9SXHaf$-2fHf&*^V-y?GObP1Y>YZiM75^k3}sOEiQ_8 zxLdI(%^$B{-(=SWoB)?O=^zTFZmg&r+ z9^XuUk~A&JHey+f73(&wiOt_4Yz$9LcFz5KkN~WN{LCU_;aLf20#=qpET&;GiA1TA z<=wY0?Z6?ddU)yi_QSJ?4pq9fMioAN+8F)f>cHC)X7m71#SL{R7J*fF2wFNw>j99~ z=!732?oo7B6%4olrWl95P>EPuv+xyJ}eeaPmDiJ)qIr| z-&K@-r?3e`AT4?s=jC{vaDUI#oh<+&kTkRN_E1%yw7ST*pqh5yAb za)S`9CQpE8-qCb>@on1TA^fx(C{t8G<=DNsmy_{D$pJ+jmpQLUA?tU#t)QBzP;6t9B3lm}Z6 ziG$GPLxUjx*`WKqaE+_6$Exv1m(Z{h^0SLwRFx@NjOtIouE zsYNAN)l37YwDo58OexzIuyjjvMHX-+E42$u$&uuE@o*Na1hq$?Cl#dRV&rSea{OWP zL)5Fd$NT{ey75)4*mILMW;MKhL*G`Mi^rurd8qmUk5+-Nj^YF5d~y~^)60e{h;1(t zbBD>W5!t$Abg@t3?kr;3d#Q$%F0>^U?A4-Wf6BYAddY_yj#Nd$Rgq{-I9zR7F_v|J zRHA3ew%lDlv)AtolE@`Y$j>gqERn*9*^v0FIB|!_7e%%OLochvc z#S&k81ftcz46}SW*zjITGEls(Bs8a3mA`P z?znZf5;bV*Pq%D5c>o;WOG(xgi@S=Tc-uT#PrP)<-#q8W6YLF~Igg!5DfMh3J(dAT zJ|*VOhl;p_E;JK77%VO-UVY-k#?tcqK(N@bqN?IeO=+E)+6MBBMzXUhNYg+Hfh@Tb=Yxu48?;?eFs>EII0z#q&=frKJZsue z(5J0pTF~IIWn&iIP+SWq_GGxkS6EsyaGgW#JB2i5Se8LUKzW@As=g_hhKXuEU#qMZ z-P*Js*uLGc&K*W~?)>Wx9j+i)W|*-C&w2(tYVL)*FG-k$3Hc?&W}%^V2~9ayXd0aE zo%`M+;cy6JrMM{byS+%KTy;q;R5OP4kV*6`K18@`Lfv8p)G|SOPZlF8J?l^o;QA66 zK1G?Hysdz*9gEcZ5npr1Sou-P+1c&@-O->wyeXS>6#~}`Wm63`(BL!`n-X4I(D zW3`M774Se;>~uU1q~hLQ0!h_YDT!)tH)UI@+lZUx7wOxA(mK8dD{r!I_1C zGO)2Tsc2*_#1{h5DJf0&;LI3FuyMSA72qf*qWCKbNf6wC+dXHud@h}=m`sP(oDmM| zEi9cVr@T@kX~?EtVLhEgWJpuG zh`B%sL3_vX!!x{Sa`VYj)e0ih%H!i#wuCW#$agas+_QuQL)0^Xx^ba^=c><5cfoH^>7NKQC-j1>S1AN=dkXanh}k z!Qq7!MmJnTARl;%6);FFEFOUM>da_q!)x|cP0V(Rp&*L0J4IkD7KP*Kj@B7 z-dkLhaL|v0a%LU`FVhGapbk$5_by^kSm~j*eA)>jkR%Xw%$u#7(9KCJp1RU!4)o_&9yK9a$ifun2cB3V@CU%WARL{Zn&OdH#N-W?f>j`I5 zeZSQ;2WopQdXOAql=U?0>7jMVa5x?-vzFR?4RHpm0=A1lUn^(P@8SQsFCb zncBBj1YojYw*#HJh3g)2vZX8LK zqkREA;L07H*%#9nD@M^a)};}jM$WZ~X{H66!pW`$8=cLE+p)%_d4QoOhIwvoXSE!g z*cekr-I`syCjFI5y@|YNbJd3-5f|$h`3>>^vx`;}w=^?%m>46bXlDzp8pm5%Ha7t) z@(PyXK21nozx1e#=~0!>)J}3-3g(t~YHHOd&+S;`79UC@%@+C&F>}5-30b1V7PE;f z`esehkp=My6Fm97d;bAdrLmwPXwe6t8~Xwu)Jwxa0hcd&?h7}x0M)!?0}Y;q#s8t$ z+-+ER_XvoTsBLFt_asGx#Iie+@5fXf@Up((>=~jeln*ZDM;3x)nD$%ON@N&y&82ZR z!*VyjoE(b?{Z?}iFsQ4YttQtU^J`c9T4gx(dn5kzYJ(2X)_`t>jYzrvt!2V>BtY_r zC*}pK(`0~cD~z6ko*<*WQzG)hH!Hjm5A{&VKT}mynY&7RTFCT_vf9wd1~xW4yMVL( zhf9a4)IAG^&X&Acex;&C)m0B&Oic~Tu@*0QslX8 z4nWk7WRtOTFpUdFw4@5+Zbmt(ia_1AEKz9H^<)T<`Ssq^uZ%{!I? z{*kw>6ic9#xzJgEF-v0pM?7-+kkcky8-)iVY-Wdu9g=2?kbM*U?z`39*Fq;RGWMk1 zix}J#_ahxgW^j?!Pgy;TZ4%WN3hGMcqh}lf<{~zBDbE2xvnRVH{RKQoeZ>TF+1z#) zPlr^72QI2}=WEhH{0{_k{$K5Y*Z$B>pVWIZAaJoP=%(^qG_OpdL>y}T@Ph(EqOHe! zUGmf85w&`}D6}bU@v0Iq)0i;_@6K#UvTc*U0M07sP6wrT!~|i=;rfNloec5sC)=BQ zBi;&0$vMJcMP!qIVSmL)!_UIw>yf~Q=dWi7So2>GbXLOKHG@Y@8KgB5R`jj(4uP2T zE5i`cFj{`$@UFfKDUgvzh90Z&sbu9Jp_^Jg`Y%teN6m&@4{^L8Yo){z)u3sgb1Hk+ z`|ZEEYqnRGe%ZsB0rFi0Z2*Xt9x>7U#D7;Pp`2Kf*6GNpQHRQ>loBHL={G(w7uTMk zn;K0O78V!jT25m?zcztZBJQyLTd=X8m~RomTZO5qQo)Mi7H`6W`r{yOebEttb0URn zFfPP#6szK7(7^^_x^}HY=97b4c0tAICtM?JTVU1(1XM{vUOYA_=L0iu>7f1T=2>ZT z%n;09O-M6ehbRN*oT7+zdnUS004eaH z>Th2s>?boRAc0UtS|eG8h9kguU3lDlHud*tX)@zNNc%mQwJT!6GUUF;Wxi%2(p_4I zwIb=^(R@vuyZjTlKCJGeFaONeFk>6P`1Jg0hp5)y36wl!6jm-f4~HMOw#F0H<{4Ag zCd$J#_*lJYJ^)-hJR&@2#khbdXfn&eqDI#2w=jUTqlh@Bk^S=8%ZxiDJ~II)E=EXoT6*3yWx*n_ru)1X2n@ zfu2U=mzT$R^#P9UBsnm&PchxFC7U)%&{I1xD+a3Pb98t(uJ05vycih zszmNjMz3J4hz{qpb`dLx((D0@OWAxFqwH}<-N|p2q&h@-bPQ@nFNTz9p3g{CFJ#)7 z|LRqYXADzN@#SmvHD(qt^>N^)$-1*&{(xf}F?)+5=lmyCJ5!I1in^LkO?~wRc}`C6 zS6V;qDbg@rS(_Rxh{Zp)YwE~Q0L8EcYE~x~KKMRqonGs!v~`^W58)@mv%be#zrwc11$D(Gs&Mxbeh2@vS%5I0iyrVYP*o$VOUGkd-WTScRp@P6oee%d#<;ei*t# zj^_H(ISc&nw7RxyTm)avwXZM3t0$KaR=g>kiI9qwUmM&{V6tg_1SS&o#pm93OQJ-! z7F)mWW5NyeX}-R;E}u^+405t`F^`kOe|*r>W`P^V6$(PnbtE~vfee?r3=>^V?ez6Y zL7;}uXQXH>w5Q8}em=6`+GFnoJk3RR#TTc-VqFq9(W{s0nqAVJkRB%E6xbRRP-?`} zI~+t;;z~O`Q46yZiMKUm(h#Cwg9m>5=ImuTkcD^SdDx3=^Fh#S5El+xU_hO#v7f}+ z!GrV3jJ1;mpL;THgmvVq>Z}V>=!Q6U=C=k>o_-+}4;c{+k^pLJ(Z>)wVPo@px_Lj_ z+Bj+R%4v%ltd_lW6Z2>U*V8R_3+Ku@u3SExPV;gNFzvvGH``%-*jo?z_qPlVLnv#~ z{0kg)6ewMXx0H~)$d36<4z}lw(-L=m7A+5^kWQCKnv^F=^;QKQR&QBc(2}upXF@{m7G4zOyk228;ZHk(? z2I8Jt`Au)yX(m6`78zKcEMP44KvuQT3Y{V)FNqS*bKDzUYyM2ywgV4Bk(-q55@-vG-aFtSoYv}6-M($ zN*@e-h9Wo7;%SMafR8iiFd49<-TW;Q)?BMOoie?^=Fzl)LWg&5K0FWo9}`J>kquuT zq3csuvc46G&}DMs30>lYZ6Zl@cJqf?`HR>!gzzlL_xi!~AGccb3jZ_f%5+i|8*h$l zVU(AjN6vO-EziNBhnIopT?#`Vgcz%pk5Z!iggv41CeCgLJ(HEaAj1bI*i@Z}#w@NZ zK`Is3;&oMLayoN1OBW~yANT?U7@-?_>&?H;_hX~3Abn083cK;$xaK*C!H*k*f4gag z){qTru5G_wCYQM(ySiS*i70}FUECHmS3%Sn9JIJoBm-*Ot^Z-yW3seJULfbf-e+h#T2oi%~UoFv_hK0H6kK z2m;~sSO2vXWeTjkI(%rBcS+6GX}_%%a8Ocg?CmZQ$-|C$kf+L_YVOe<>?yB7F~ov2f25+{7+7QhEjH13(XBHD!!?*=s9NHliJunCUb|!w|{Dmm@@4R3Oa$(re^)qBf);t0io-VO_ zo-m99)=zr_C3zOB_kx3SK8z3pgVC2sJI6bnUc&{$*(mMQ`>P4Onlf_cCA_Em;=uRO z?oe1-)`B-gJD?)IMC>zS>BNJvCyuRW+qBM%!;G_We4{aqKCGWJ0V zs089xK70b{(6xyhiL;l+)U~v!Fsj^5(KRo%9XNwC5!yA8+!Z8%>4NM28LjMbLeK#n zE@lkvsX4RQWukzpq5e*o%noZw-b@DuYaxeCdfwB|26?t# zQ23q!7g5>4PLAFH7?f$baVl<84X)f8^7K5EA`@TrQ9o&y8dV#vcBnHpDLOe5lP9rc zuyLuY)LrQf(K^G;`eh$o5dGbFjh_i;iv^qAaaRk^1WbGk{Xe6Vt#_xDMB=ufn_E&1>$;_E#m= zlsyNhr##r^R7QxVog8CPI4!m!4>+|s}1BtFGG(vXD|q!3kvPz&mODR$LGw(y)m z`8+h(#bOg#+jGddwkG~9q6KsNQyRl~e5IH_&YLL26U`IoNDE<5O8vWJZ(;IcA11k9 zMd43I&VGp8zewqq^Rm3!y1Kkup+BAsLx!nVDc4awDrH#UsYY01&=8m!o2TSy4AN|Q zJYaO6tmQTp_-;KC2-_v;a#}qa37B4}G?LPx;mR1i4&JA4$49Z*TVPo|ZOQ8m;dvG- zA`S>elt$%J5MOG%XTetT`jf4nGz!K_L}F1C?2%(FH8+p5fRehoM7{57AeqmPua{AQ z-2Yb63(6ysYOZAm!PrOhP7xhQIAZGcD&5)xMYg5ktqqW<{RNX93Uj;$XCYLG%6m9s zi7)2C7;K$7V3QV_X~fz^6YBufPc$TFa4`COD{7AdstyYM0m@=Onp80XV;V5Bw?Zo~ zo3_x)XK(Zj>yA*-wQ3#WbvxGE%S$*bkcN@DZvb8=AKmT+V+0pz>ht-yYT>t~zvIgE zNdmjlSXq0Md6*(=PmAFs_yj$`r%c0_E1898A!R3R5T3cA+3KLQ zDX-A-F^G813U-N&_;2W+l)Wx1A6kb+%Jmpv_ zi;Ao|_+YVD`{+AkMc;HV40^z%u`v0OB79Rn_ojt$D88XC|JF&vs(Zq{c%av*#A@*e zT2pRiLH$$z+vF{;SN9#D9PFYXg-eWVgp9&nOj_W9xJO#dG&GYjp}Et0z7M`0Yed2K zpf33bv9^W?qctYor`H>%f=i|_*7tNKXS2;=*1XALHn(S(<@^{AISYwSPQLjP-N&N3 zqCi)@?BP!e2ixT0q`*h=6pPR~02gCJkquX<2+u-ewb@_OLz$=Yc{wE;9|~n~84NVS zHr9oeeA6J_G>lqLA)FpUYi6AYi3)zL-yMyn_?1+ABWpDF=d+rnKGSNpb|i&Sn=M#@qvvOjM0mN(YALQql#Y zueFP`#n)M-W9BOCKA*i41BWv*QZ4Fo?s_$o{8r+MqRF;)kR7Mz)KVY4tc<+`(pxHHwfB2C-D6`%kcI3u<%oCtITdRYpxPZSwddPP|7V&NgQTQY`-Jy(-qqt z1wL#kx1Cl3k11B>Sy>6`J=`mY?+Llv0J|E;I{P6xQKYiCKtAwANQ>C`}`MZI2V2rIHDr^^q; zX%QSDYYF0|G)p@bD^KCi&z5pf?HnNfB#u&t0I zWNFt5(QtuKgs%owg=%gj5Jzh(btr`!?Wi)&EHRY8Pz8Zi1p_RQ@8$56UKZ!cIaCxC z?^Z6S>dPKDy{=lLlxKWc6t2eXqiDlE?`9c70wG9V84*aQg=Ye0G!I?~Vt2#bA?AS; zT5n>AufqBstP*I<19?y1*5JSeG(1Nf>}hVU#&KSe^!VjzI(jwA3TeuwX4|FUqPW@f zXP@lu#SG4HXr8rj9|~4&skL!WR<&g8#G8G8k%V2~#SJw%0spu!pM8&Kj)r?L!P8wYDkjJSH?3q&~jSP~>FGyK^aBDStdc{qG95 z(TcnXHRM)_k{iO?EXiV&A!kGbLede!)(N?vZ;TXS@Rj4(R$fafH1!7FLrs8tRC5Bv zn&{ZD;ZuwyowyqwCDW48ZQ>yE`@0kG->W$d$K5!$;1D&MW;Qb(f|t_8NE*N9^K%;? zj6_`akk99ERkpGoHz&O!Lxt$sfTH{SRNbx>iE8acCMH5iH_vEO27>w zL4I;0+3;mJdzku12uc0#*g_GGD&B# zX;6K1u6!}x=wM~DKp@A{J)k75H=sO^@-))C9WV|o{a1uh-7Ki#u8_7778vgY5fE>7 z-duj?^7Q)sdTJxEWvWCA`7}a%v_y+i)!rfI#t=Xbwy!ai8RN2r@B&Tnp*Bq-rHhqf zZ`ilcJwH8kGqXFI_U%Ns4yOgr6sK>*q9`Fe;QTcC&CC5!5I$l`^%=q$gtOr0ZsMiD zKL6%$`?O0m+=}{*ytTGoe~(=V#!+U%3feh+aHlB$*W|oL97x?63W1@}5+cOr#tD?g zoZ0<}p1UR`)}d9VvA9UVv68)Q-ihAF(&Vz~_LBZ+kx$X0rYH1DsHdpEm4=sz1>zC5 zD$QMQia|qLO|kjO{TreWC__>u3wOXX=zRaloH?tS03T+f)!?eq!`cfCZ0j+J2_6{l z^sMF*IcSto_}(Op%CYd8T}kIw~IQaNV?xOO_bc`3}cDx!T);{6T%%}qbCPD)-+q&$5z21*>`z2wTx;mO?zZ^LQ$HYOtlv|Mp zi|ypV#eE7egjD^ll=9{BtG-;0{n^jJ#C3V~%jl)

+|~Z?LKmOS~`XU`r^q; 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 DDjG{{ literal 0 HcmV?d00001 diff --git a/other-licenses/branding/firefox/dsstore b/other-licenses/branding/firefox/dsstore new file mode 100755 index 0000000000000000000000000000000000000000..136300c30fe9114f730c0980d7770f3b6c07637e GIT binary patch literal 6148 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 z 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 i<(sUl)~w^=^cU1AFW literal 0 HcmV?d00001 diff --git a/other-licenses/branding/thunderbird/dsstore b/other-licenses/branding/thunderbird/dsstore new file mode 100755 index 0000000000000000000000000000000000000000..8d1b12f1de741def6d5d56a58dac5c24d5be727d GIT binary patch literal 6148 zcmeHLO=w(I6h8O9$&X1$r)ewQRL3r=5*kL`NQLI*N7~wj5u+;$?YzXy&^R+pCY7$d z-AKWomikko=06!TwS;U6f)m1;}pRw zGVhFoC*%#t8<1Z)1#nT`gnkqHHD_7#N6wUF{uDOzb!QShC5NC70rwef=FbBzKrhH) zp6(vjWavCbn{ z?-At4L*}(yhAd!@roqb?I?Us1dPSdbUWRHqSf?Nl>V9rc1io5&{5L-7k-&E{@YT_i zKV#kKslfMI;A@~K@JG}^DN55t#2=<^iqjw^sfT(gLorIA?V-bdy*tle&N?4}@5x2T zMdu!NV)ygcQ^c%W+E1V8jP;j4zv5ZUcpn(vQys6r980D8@sP9m=G%#=1&8TZ@w|Lg zE+xF=1$dc&NO%`g7SY7IaiDdRsbp_}$qvL*8CVUbC!O%JCQ1)ZXi-vqcYH9})0>GU zGCja;p!q{@+&S5-yP6tf=e+ZMnH0b+=_H^1UDH0~OZZW1Am|&O4cPT9>*H{(A@nr? zb);;X$I39r*5P_ujr15bV#CjoN9U;z+n%xqp#_H{iJm<;eD&KLkTAcA=MR0dAEWLy z`p0>~Lj{|t3Ww<}WXaOSQ~fC~*dwB=@Sf$0EOO5_`CBlrG^IC14~*l z6AEcUh5d;k>{prpl_g9#aLUA)a1wfC1=Ye$JeXy9e_MneM4a0J+i4nzjg#W8R|4M`cjJ5^6Gayz6n#mt z$_;#T@ZE>?Q~7-0LTr4Y^NdR!xA7r~QQAuA4M_d40l(vSx%$2wUtSld6pLTawYfoZ zDC$l*-gjLII#7#2CI4 zZJxv{xi$C_5aEO4IIE(k;Z zd@Uvy1!hT)^}F&hoX5wZu3QP2g3gn2eT?rnc>pkuFxUFx_P_uA@QSRgKxG9U!W9sq z&R09zQP_q{tE^DI)FR-sU?#>XBXtNGhG>Gq@0Z~JC-6ns0qI()j6@IUKll*fxmND~ QZN7K(o>cDthyMQm7lRuUj{pDw literal 0 HcmV?d00001 diff --git a/toolkit/mozapps/installer/packager.mk b/toolkit/mozapps/installer/packager.mk index 31f6bc8ec25d..dbaa689145d5 100644 --- a/toolkit/mozapps/installer/packager.mk +++ b/toolkit/mozapps/installer/packager.mk @@ -22,6 +22,7 @@ # Contributor(s): # Benjamin Smedberg # Arthur Wiebe +# Mark Mentovai # # Alternatively, the contents of this file may be used under the terms of # either of the GNU General Public License Version 2 or later (the "GPL"), @@ -95,8 +96,25 @@ else _APPNAME = $(MOZ_APP_DISPLAYNAME).app endif PKG_SUFFIX = .dmg -_ABS_TOPSRCDIR = $(shell cd $(topsrcdir) && pwd) -MAKE_PACKAGE = $(_ABS_TOPSRCDIR)/build/package/mac_osx/make-diskimage $(PKG_BASENAME).dmg $(MOZ_PKG_APPNAME) $(MOZ_APP_DISPLAYNAME) +PKG_DMG_FLAGS = +ifneq (,$(MOZ_PKG_MAC_DSSTORE)) +PKG_DMG_FLAGS += --copy "$(MOZ_PKG_MAC_DSSTORE):/.DS_Store" +endif +ifneq (,$(MOZ_PKG_MAC_BACKGROUND)) +PKG_DMG_FLAGS += --mkdir /.background --copy "$(MOZ_PKG_MAC_BACKGROUND):/.background" +endif +ifneq (,$(MOZ_PKG_MAC_ICON)) +PKG_DMG_FLAGS += --icon "$(MOZ_PKG_MAC_ICON)" +endif +ifneq (,$(MOZ_PKG_MAC_RSRC)) +PKG_DMG_FLAGS += --resource "$(MOZ_PKG_MAC_RSRC)" +endif +ifneq (,$(MOZ_PKG_MAC_EXTRA)) +PKG_DMG_FLAGS += $(MOZ_PKG_MAC_EXTRA) +endif +MAKE_PACKAGE = $(topsrcdir)/build/package/mac_osx/pkg-dmg \ + --source "$(MOZ_PKG_APPNAME)" --target "$(PACKAGE)" \ + --volname "$(MOZ_APP_DISPLAYNAME)" $(PKG_DMG_FLAGS) UNMAKE_PACKAGE = \ set -e; \ unset NEXT_ROOT; \