From b2df2c56d6b1678d63ae3df23508a1f61c82d4fa Mon Sep 17 00:00:00 2001 From: Markus Raunio <mnraun@utu.fi> Date: Thu, 29 Feb 2024 18:19:42 +0200 Subject: [PATCH] joku viesti --- Asiakas.java | 4 ++++ Asiakkaat.txt | 2 ++ Ostotapahtuma.java | 2 +- Verkkokauppa.java | 3 ++- VerkkokauppaIO.java | 17 +++++++++++++++-- .../oop-demo4-esimerkit/Asiakas.class | Bin 2379 -> 2573 bytes .../oop-demo4-esimerkit/Asiakkaat.txt | 2 ++ .../oop-demo4-esimerkit/KantaAsiakas.class | Bin 702 -> 1285 bytes .../oop-demo4-esimerkit/Ostotapahtuma.class | Bin 1067 -> 1077 bytes .../oop-demo4-esimerkit/Verkkokauppa.class | Bin 5396 -> 5590 bytes .../oop-demo4-esimerkit/VerkkokauppaIO.class | Bin 5623 -> 5961 bytes .../oop-demo4-esimerkit/asiakkaat.csv | 3 --- .../oop-demo4-esimerkit/tuotteet.dat | Bin 267 -> 0 bytes 13 files changed, 26 insertions(+), 7 deletions(-) create mode 100644 Asiakkaat.txt create mode 100644 out/production/oop-demo4-esimerkit/Asiakkaat.txt delete mode 100644 out/production/oop-demo4-esimerkit/asiakkaat.csv delete mode 100644 out/production/oop-demo4-esimerkit/tuotteet.dat diff --git a/Asiakas.java b/Asiakas.java index 9178818..19301ff 100644 --- a/Asiakas.java +++ b/Asiakas.java @@ -65,6 +65,10 @@ public class Asiakas { data += nimi + erotinmerkki; data += ostojaTehty; + if (this instanceof KantaAsiakas) { + int alennus = ((KantaAsiakas) this).getAlennusprosentti(); + data += erotinmerkki + alennus; + } return data; } diff --git a/Asiakkaat.txt b/Asiakkaat.txt new file mode 100644 index 0000000..0a6620d --- /dev/null +++ b/Asiakkaat.txt @@ -0,0 +1,2 @@ +1235;Markus;0.0 +1234;Erkki;0.0;0 \ No newline at end of file diff --git a/Ostotapahtuma.java b/Ostotapahtuma.java index 3909b3c..2481165 100644 --- a/Ostotapahtuma.java +++ b/Ostotapahtuma.java @@ -14,7 +14,7 @@ public class Ostotapahtuma { hinta = maara * tuote.getHinta(); // Vähennetään hinnasta vielä alennus - hinta = hinta - hinta * (asiakas.getAlennusprosentti() / 100); + hinta = hinta - hinta * (asiakas.getAlennusprosentti() / 100.0); } public Asiakas getAsiakas() { diff --git a/Verkkokauppa.java b/Verkkokauppa.java index f3a6e82..7a30171 100644 --- a/Verkkokauppa.java +++ b/Verkkokauppa.java @@ -8,7 +8,7 @@ public class Verkkokauppa { private ArrayList<Ostotapahtuma> tapahtumat; public Verkkokauppa() { - asiakkaat = new ArrayList<>(); + asiakkaat = VerkkokauppaIO.lueAsiakkaat("Asiakkaat.txt"); tuotteet = new ArrayList<>(); myyjat = new ArrayList<>(); tapahtumat = new ArrayList<>(); @@ -16,6 +16,7 @@ public class Verkkokauppa { public void lisaaAsiakas(Asiakas asiakas) { asiakkaat.add(asiakas); + VerkkokauppaIO.kirjoitaAsiakkaat(asiakkaat, "Asiakkaat.txt"); } public void lisaaTuote(Tuote tuote) { diff --git a/VerkkokauppaIO.java b/VerkkokauppaIO.java index 0327f80..e4193ea 100644 --- a/VerkkokauppaIO.java +++ b/VerkkokauppaIO.java @@ -95,8 +95,21 @@ public class VerkkokauppaIO { ArrayList<Asiakas> asiakkaat = new ArrayList<>(); ArrayList<String> data = lueTiedosto(tiedostonNimi); for (String adata : data) { - Asiakas as = parsiAsiakas(adata); - asiakkaat.add(as); + Asiakas as; + if (adata.contains(EROTIN)) { + String[] tiedot = adata.split(EROTIN); + String asNro = tiedot[0]; + String nimi = tiedot[1]; + double ostot = Double.parseDouble(tiedot[2]); + + if (tiedot.length > 3 && tiedot[3].matches("\\d+")) { + int alennus = Integer.parseInt(tiedot[3]); + as = new KantaAsiakas(asNro, nimi, ostot, alennus); + } else { + as = new Asiakas(asNro, nimi, ostot); + } + asiakkaat.add(as); + } } return asiakkaat; } diff --git a/out/production/oop-demo4-esimerkit/Asiakas.class b/out/production/oop-demo4-esimerkit/Asiakas.class index 85d16ee117f6acd78e9dd398a8cb9a14530169c8..500febc2bf387f25e25dc5c3738cde0739c6d472 100644 GIT binary patch delta 1085 zcmX>t)GNYu>ff$?3=9nR42c`L<}y05GpI5$@OUTYl_WYAXC`JR7IQJEFsSn|XfS9p zG6<)qmN@35=H-<Z7Zl|er{<NEWHK@^YiN23F)%V{^DxLT=uF<osKMwtIgnYHONfDq zK@TLTzj-5L8slVRW@8KXM2LPy21ZXt2A<TS{F2PP+|;7%>`X=mmXySjM0N%*Mh1bb z#Ii*FoW#6z{os<K%)Io;Rm`@00bC4$3_<J+!5~9JCLd)!A{55Rz{JSN!4Sd7z|06@ zL`|N}qQw%+$e=p;BeN<qJ45{Bk1WBg1`Lc0hLb&6RT+&Y=d()l8#6F4Xfd!bFffQP zm@t@5p2@20V#Z(&QpLc)pwGa_z{tSBz^b){fqer50|OI-5d#AQ8(5H!0i>A+%w`2? zW?*1oWUyec1ZkecCSDIx%EiFMz`!8Hz{(&DRxSqSvq6=EjN)bh8NtY4h1FJGbX z#(=aiFd%HThS<u$z+lI~1hGP^UVAG8??$+zAuf?(U}ca78-eK(eyB@q7;Hga0Q;W_ z;ytY`3<B%nMnU{92Q~)XC3Xz<P|Y!c3@i-H3=9lB>U`5@GjM3BZ)FewxrZ4Xh<so< zB?dMIWd?2rRj^?YH}SwjhlfFkL70J&!GVE+fti7kn}LzR5n}%2LUtu5Pyj=W(O_U> z&}0x`&_*&w5N?bhgA=kb0t}3xbPRIl<g4s9j7F1%IFyYLk*N*U2(p!xfti<wmw}PN znZX65fq{Wx6$3Lk!Prbr=TNHGI>?|hlR-r50E5al1~oe!ZP{H6S_}-nI-rPy_*9O8 zoq>VDfq|RBkwKini9w0Mg+Y_SmBEm~jlqh+1MFl_8Z>0!WN>A01BZ(Z)C~*_HVp3I zc;RL+Wbk0%VPFD>1_uM<9|kLShI&s1Mh0(q(y?J+0Y{jS))od{P@)Az+%5)P1_qFG zkW;TO*jh;J2|+DmX7B;Wu`h!kI72Wq_%kpvgo4R%Fd4}Z&A`CG#lXlA!w|=iz#s_# DQq_Gr delta 964 zcmeAbIW5F>>ff$?3=9nR3}G9&<}z{#F)%Tx@-WCSsBP9~N@J7~PERdy%t_75D=jW4 z$}djMD=EojWMJ0N^qf4I*;IrlwJ5(NGcPx_C_6iok%1*8u_SR4i!Glk7lRvvJ3E61 z$SBXr-YiFiycrpo7#TSjd>I*-89@yH$%?F6EJ2J6s*^Xch)?cg;bUWG2w`N9gL2s? z&tNrTRcByi(3pIlRaIM)fq_Acft7)Qft`VcfrEjQfs=ucfr~+yftx{#fq_AbfrWvA zL4-k@L1(f&n{vG_gC0mP0|SFT10w??0|NuA))of#4GatnObj5y*ua8(V9h*WHY-Ro z0|NsigFb@+RI?oe69W?i0|T3u_ErY=jd0yuU{N6kRt90P31VPA8`J~_20u0iZU&IC zj0}cYUBZj*5;3qjAT10G2$vW^Tr!!TUA!LTYKXm346F>&VD;$svN7;Otu<yaf%-w8 zfeGS2tt|`!>)~F21b`ga7<6k*8O)%X0~uHtm>C!tc+@8^WfyP)xq%NXpv1t&pv=I{ zpb9ns;tn3T|9KdM7=#%Z8O#|N7?>FtxfvK4EFfl1{?4w1WQ+y_8-pf;0E0G?F@kVo z1Q{%mjS*mAWUyke203kVG=~kN=HwY1%0{5*hj>66su5%>D+4nx4=)2FgAIc%NCN`{ zLmmS&*y$>h-*PC`>mXu42%LBv7`Pc68N?Z!7?c=Xz|K*CD2JNLz@Wll2M%3s21y2c z1|D#@I>4jXhJghf&O%yS7<fU6O=}B-z%B+A1_p#pkU;lj&|+|A02{@?AOtm@nZXep nH%=fa1`!5k1{VfK1}`w_119|#0vH$=xEL520vUoCLK!3hBFkJ| diff --git a/out/production/oop-demo4-esimerkit/Asiakkaat.txt b/out/production/oop-demo4-esimerkit/Asiakkaat.txt new file mode 100644 index 0000000..0a6620d --- /dev/null +++ b/out/production/oop-demo4-esimerkit/Asiakkaat.txt @@ -0,0 +1,2 @@ +1235;Markus;0.0 +1234;Erkki;0.0;0 \ No newline at end of file diff --git a/out/production/oop-demo4-esimerkit/KantaAsiakas.class b/out/production/oop-demo4-esimerkit/KantaAsiakas.class index 450a01997d0ff82e72654ea9b4e36485fe911fde..17a4140378ad5c946c1bbd1d25637887dbb6aa3c 100644 GIT binary patch literal 1285 zcmX^0Z`VEs1_pZub1nuZ24;2!79Ivx1~x_pcE{q(#O%akMg}&U%)HDJJ4OZ#4WF#U zvPAuy#JqI<;F6-uymV_!5f{xcP6iGJPId+^9tLg(9!3Tp@5H>4M7VhZi8-lxd8Ne# zMft_4c_k&8j0}vPAlvzP82A|k7#W1qQ%f8%)G%vkf>jCeFbFe<FfwqI<U`!R$RMJj ziRlg@1_lN(9tLp+2}TC-+{Elu=ls0n#FFsLk__kkyyB9?ypm!@26Zfc^2A~qBZDRu zm6*1=cxr|*GO#%3r=&76@cU%urTUfTCZ!gIBqrsgGBODH<R>TQge4Ybg7{EDmXeIj zVnzl&ALMYdW@O+^ghYW~X>Mv!K1ef0@G~;7<Yne&GBR-I7nkH`C5EJClvFY@FuE`@ z2p3}uMHUUP1G$3pON)|I-7-Or5=6FF4`c@;gMd?heo1jjQDT8_YDq?ZN-;khgBBNq zHiHg3gDxmk^%xmcKuRI0Av3QmKRXqgC?EmtmY7_UUsTD+FatT@pb8;|dL-th<fIm> z_~hqjmlj}2OGx31qA{ehAQg-9Xe9OiNm;4MCDzDM2{pnwF()TDvn17;gTa82L5xvH z0X;!lDKIiJ@Ob9sr4~8oBo-H^7PB)LGcu@R_!pZu*cnV28RYOQWn^H3_?bbGfrEjG zfq{XMfeDmZ7#J8>7#JB?86+7P8Kf8(7&1V)k%57MPfJ@zb2|g0mMH612KJ2%3=B*R z(jajLW(EcZHU@SEb_QMs4h9(p1_l!bR<MjLgB$}0@G;0UC@?UB#S|G7!1nPmC^0C5 z_40x3Wo2LlWj?5_CJanq^;}xp8F;m}Ft8`Af!oLimf->0!~<q?F+gl$WKdyHg_>Z; zzy!93O-mZZy`X%~z#zcD${+|fK@6e_Y68e7+zcR789|vGYL*4mHGEpz83aMD*~K8r zz_0<$MWSHyKzbP%_@L%7GpK=8sWWIWFfed1FfwQ|Ff!;f7&0(0a4|447%`YIm@!BK E0CJ5b82|tP delta 299 zcmZqW+Q-Uu>ff$?3=9nR3<?vumM}9iXijEi6rSiHJUNi@s2qbL0|x^W0|Nsi0}}%` z0}lfO12Y3711p0d10#db<hji9^}-Ac415gC3=9lx4D1Z-47>~+3?d8+3?>Y$U>Q*c zF$NIeV-RPMU|<A`Nis-)P32>dVvq*w<pZ0}%D~9L&maIY8*Bm-SUs24b_QOpEez}l zYZw?9m>57dvVmoI7(~(-7#MiK94-ckRg4TW46;xo>=>B97O`nbZ)ITL2-nU978L+{ a1msvTFrN)-0>~>M&oVMFGRT4T$O8cB8WlkR diff --git a/out/production/oop-demo4-esimerkit/Ostotapahtuma.class b/out/production/oop-demo4-esimerkit/Ostotapahtuma.class index ba253678af536769760eac0e87f16ca615d1e19b..6498fe8c36055ea95029a71ec2a25691707f2588 100644 GIT binary patch delta 422 zcmZ3@v6X}C)W2Q(7#JAr8LT#P$un}YIYcsm!DdZH5k^6621W)Q1_p-J44e$C3=9mm zll_>C1lvUzH1o65w=&3YWME)mV$hvDfl0aEhCzrykAZ=~1fr5bpTPiZk}U%_0}lfu zNH+sNg8%~)m?g|0!oUn>i8DwrurM$(7%~_^ZPRC91gmG&+QPuT0b&IM0|OgaP!wzl z#6VW4C5#Nl4D}{hbn~L?mc**tl)(&(W<hk#vRE~nGiZP`Pu|EZrmhQjrXp6gvJ7%y QweL{Ws$x}Z0rt2h0EhG=od5s; delta 412 zcmdnWv6_SH)W2Q(7#JAr87ww($un*?ViaK%)MQ{}&|+X<SjE83z{<eDU^6+K$w)vT zC8s?*eJg|fMg|53CI;=vvzV0Ytr>(EbQl;IOdtvwbQ$y*K){B9n}LUc5u}-cpFx0u z3Ct2^5Mf{jv&0!B7+4q>8T1(ppqA+~FoM;yYHeX)-vF_Kfq{VyEGP=L1Y#g7)DlJp zLk3nOknYKj%wp==aK(~X6&o{{fYsJ9i`664%3@V(%Af&K%fP^Z>?+YUXs%Mks#%sn b4z8IA?0S%w<kurKD}hB-vFbJhD>DZGXxkzh diff --git a/out/production/oop-demo4-esimerkit/Verkkokauppa.class b/out/production/oop-demo4-esimerkit/Verkkokauppa.class index a60a7669a3c92799fdd9576c01f5e4e1fafd47fa..06cd921ddd6a97a20016853f953646f028b58a85 100644 GIT binary patch literal 5590 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 J3&S@CNdTbUKVAR; literal 5396 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 diff --git a/out/production/oop-demo4-esimerkit/VerkkokauppaIO.class b/out/production/oop-demo4-esimerkit/VerkkokauppaIO.class index 568611e6fb8e0f0b6ee66469ca45c292c77054e1..5e4e3f4d312acd0799c99ebb973ad3e9c4e0bdd4 100644 GIT binary patch delta 3508 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 AA^-pY delta 3323 zcmX@9_g$Oo)W2Q(7#JAr8GcRV(zoMa;9z9nDJjh_DM?K&(Mw4z;bP!o;AUsw;bGuq z;A3Rq3rj7^&d$$HEG;NV^z>(B;La&c4S}kkoXD!jC%_=c&LG6YAj}}b$RIp9kyCgw zE3+E67=t)Fg9HzQB!kpsGiG@KMh0dL%_wdLF$NhP23ZEV$??nzVhW55tRTZuIT@4~ zl-U_nco<X})Fz8D8gpwfXtFbC@i1sJ=uG~?s36VAAgbY$l~|UjpOcuEuJ50em6}{) ztr^D7pf}M*f<u?VfQNyV!Emx7o47|97lST?F%N?YgCQdWYk5&-Nh(OhjEBLTfsK)Y zH9050IF+5jl953eVPZ%|QGR)1Qcfxtg9U>%4}%SZ?Zn->EcT2HvXl35$ntVAI5Ie~ zGdS}wxG=a*4q^0SbLV03VDOy0gweHLgTWi*R6{NX0S0Dv20umyL9ofCC7C(;!O4kv zd8tM03;~P`JYeC>e0{e}kWKy!23!oj48b6`hcGe-LcIu;x7G{;$%gSTgfmDnGH_=k z7W<`El=x)krGmsGc^IM?q8S-D@+PlhQb-eEh~;63V~A&DU`|X)!4Y0jAdO}m3`vX( z4D1Xkj126K#hHoOiNzcYX^aev)?5t93>iEOnGBwc4D9KtB`%32i9!sF4A~&R<}fl? zOjcx7o&1_vT*Vy}Ao)BD1q_9Z3~V{6dFdq?;7IlaNfh%ilrWS|R%21;;9@A}VW?oJ zoE*wx&*8{W&BIW`P&;`JiwSo<LjyZQBM(CpL-XX@EY=*!46UGmXqzm@s;j`o(80sd z2}*<DB$t_*l3!es4@#chJPbVyy_2VL>HD%X^fNL@!NL@hDEv!H3Q9|YONvqxbJ-at zGBQZO<UwJMEX&0(0Tljy3{ybXPMv&?P0qZJVLA`P3<e!W25xY|ftbm~(8plL&M+I6 zVlwmfJ^fuPl2Z#xGV}A;8Rky5W|w1}KRJqB#(f^h%sC8;KxQsxWRO6_sb?PCVc@8p z!?2WxVHtxQBLi1aYGMk^syQI5R!-i_zFUeFlr>Ws8Q6Wm*~FTWfhDmhy%?O)IE48a z88|=+KzWyuL3DBgr^sYyP8mkI$qAfdlh1Q=@$m+iBqnG3CKiN%QugG@9I2BzIMp`C zb6PS^KF(z<#gtgg$iSMIl30?+$iSHhN($MDi6x8-CX){`N=>%su4FWxoX90U`8+qr z<e%JPlVy4K@xA0?c*XFVo#72AO}w4_lIIBH`^oEg#gsoXGB7bRaxi=b(OirSJf5I* z@0^oZT%20W&hU+qL3OepulVGDy!=cIKPL0@=_+$EFflMNFfvFntYTQrz{s$Mfq{XE zA(erXfsuigfsKKYVeRC2KC$|B3=Ci%0|Ph1dIkmt9tK7R1_oA!4GbF@7#KJiHZg1l zsbyebn9IP#z{0@5pee+@gMrgWdm974ug*>eQAUQD4B|RF8KfB*4lv03ZDLT=-NvB4 z{QonM0W1t43&a>$85kJ&7}yy28RQrQ7*rVq88jG#7}hh?GcYJHFf+(8urq97*vi1n zz`&r%u#I6m*j365I~aB{Ff#0dx{HkgB(j@<kzo(mIHtd#5><emLF^ZU3<D=9FF@V; zk%1X(rS)zG-AJwN4Enx0+S?e6bha^=E@u$+gV5YoEV}iQEZZ2YboVc35cb`~ps2Hh z!C@DJ8w0~O2Ct0_%nY0id<>!t77StxQVg;T77Ppw>I_;8b_~p5Zz(ZwFfcGkFmN(R zGVn1-F^DoqFsL)gFlaGIF=#VLGgvXmg2PmcfrWvSL5^WB!#)Nk25km@hW!i&!0}^U z&v1}oH3JA(GaLd(6v%5P3~c`yL_r0fBRhj5JA*C*BRhk|e+G627BC+q#Li#=7G?j* z!05!zV8_qE3Ch(BOblxo7#LL;Siu1hxtl>Cayx^M&u#|a$lVP7puh;+&Jg6QvyCBi zCIf%Hw$3(&h;0lp;miMj(Amb201cjm<qV+U!5uo<8yJ`wBp9?Aj2J8!j2X-stQag9 zI2c?Q+!^c`AhE8+zy%I44h9Vd2?k9Dc?K;|t;1l%puyn6pvU0Opu<q_!Jx|!&Y%wu zCkX}}hQka;7?>D5kisbv8cZAvfec4c(gZ~07&J}jGjRN6kYHyJU}x|ZazhC-kPv2= z)gK4vixUi-3?~^*K?0BA4g(7~@O*_5eYLhR@cZdPlewBMG?^z`vFJ#$2&HagNZ-Yf z#lYaJvx^~@fx&nA|LZ#281m*Z@ar&x7%VB<7>azgb#^e6A##Hn11AFmg9!sOgDFG3 z41*bi7K1s1A%g{j34;}bHG?&SJA*BQ4}%>%Ok@~D8BQ~t0p~tnhO-PiLFt9T7aS&x z49pB(3`ZGOGcdvP2?GO2)j0+Ra6aK@VE)U%0Zun!zZkTI7$9Cg&%nvh!%*J~%`vSE zYz%A+3=GOzAYWDaXfqr6YO@&mX|o#bV5qZX+0Bp~siP~wvYnx2131VK`Pz$toxz8J zo57cXpTUnooFM@0a1(G4DubN{suE=wE--9oU}WHCkYKn7b}m1I2t)lPhSdzr4B`wt z43`<Mfb+>!20my!Tw`DYyU7xkh_!Yww1ZMEB1Yt4G2&>&BFVCYq05R@Tap!$p6_Xc zTnb5xpaO=0A)0}MA%=mMA(lanA&x<pA)cY$gdu^!oFNhJWL*Y!hHDIG7+4w982A{j zGpq)Ox+OTQ85lSi3>j{K(;qK`4mc%3LS2l32`YDvfsp|scZ`7v9R7j~O#c{!z-bav zRH;B?;3fknL;WpSs$=AWW?84*41JNi874$(Z)cdaonf-Cj@CAYX*$~&W<vAkOhS1R zRB{P0h%(49STM*kC^D#kOD;VILxx$<tO+T(vKa*G8S)rJ8S)uq7_u4k7z!B-8S)v7 z7z!918H&I`0xG%$7~~jkGu&ZdVlV<{$-Cg9%ZcG0G$A^H0|!w|GcbVUc0-dNxGa+a zm1P3pG}s3&wV-90Ks`hZEo08&hX&Do22N0O8Im3tgBe)Cu@SnPVNT?3hIydEY{7Ph zg`m1<$pHodUmZW~Z4AqGH~506<qVvDI=b5!taSGKY+_K<Mk?BuGYCV4>fyyb;|2yc z1_1^s1_cHS21N!{1`Tki$uSr(%wkYrFaXmG3~~(43@gBV5DiIOMhrX*3=Gu_0t___ z5)8ErQVewratyT$3Jlc@1`Kr!h79!#4h$^}&I}C<E)2~K!3?e7z%^lDt!I#6;9z*b zu#<s_L4ZMl;UU8#21W)$XgD)6xPV!Y!Ig3-IGh>a*&L#CH#C`9fa(kd1}1QT&VdIq zGlUNdVAlT(j37Bj5HTx=-JW3uEUcd}Ff%*_XYFSU&lwmPL>QPEUNA5+yaSUTz~m=} UFANL}Tnvm1Um3nL{A7>>0K68Ek^lez diff --git a/out/production/oop-demo4-esimerkit/asiakkaat.csv b/out/production/oop-demo4-esimerkit/asiakkaat.csv deleted file mode 100644 index 84638ea..0000000 --- a/out/production/oop-demo4-esimerkit/asiakkaat.csv +++ /dev/null @@ -1,3 +0,0 @@ -12345;Antti Asiakas;10.0 -54321;Anna Asiakas;55.5 -99999;Keijo Keksitty;1000.0 \ No newline at end of file diff --git a/out/production/oop-demo4-esimerkit/tuotteet.dat b/out/production/oop-demo4-esimerkit/tuotteet.dat deleted file mode 100644 index a76bcbf70382847194646743ae0312070cc67981..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 267 zcmZ4UmVvdnh(S0ju`E%qv?Mb}&#|Z|vC=2AxTK=-lI+amiF2757(E$SiZiQHD+(AG z7+A_#KxA<d18YcWen~0=1TZo&FuO3YW@P4-BziKi7ANMU<ohtN<Yne&mM{qUfXvs= zNz6;v4=yRn%uBbfC~y!y0|I9m7#NI77+C#tQ}Ysw3mNJdm>i@*5@$d%awQC0js*p& zImMZod6`gY_L(3si-Cb*S_uQYQ(|6XVqRu(5rbe@W>HCLVq#8aUTPlLakm!wPB<KX j*_nxfp#oxbB*eM@|NsAA!ocm5n30v3onKT^l34)&fG1Z_ -- GitLab