From bdc70403e90b33899a1f6809e327d3cc8c10d641 Mon Sep 17 00:00:00 2001 From: Rosia E Evans Date: Sun, 21 Apr 2024 13:27:41 +0100 Subject: [PATCH 1/3] adds start of criteria gui --- core/src/com/monjaro/gamejam/SegmentUI.java | 48 ++++++++++++++++----- core/src/com/monjaro/gamejam/main/Game.java | 5 ++- 2 files changed, 41 insertions(+), 12 deletions(-) diff --git a/core/src/com/monjaro/gamejam/SegmentUI.java b/core/src/com/monjaro/gamejam/SegmentUI.java index 27aba8d..bf404ee 100644 --- a/core/src/com/monjaro/gamejam/SegmentUI.java +++ b/core/src/com/monjaro/gamejam/SegmentUI.java @@ -4,29 +4,55 @@ import com.badlogic.gdx.Gdx; import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.graphics.g2d.SpriteBatch; import com.badlogic.gdx.graphics.glutils.ShapeRenderer; +import com.badlogic.gdx.math.Rectangle; import com.monjaro.gamejam.main.Actor; +import com.monjaro.gamejam.main.Round; public class SegmentUI extends Actor { - private Texture separator; - private Texture criteriaSheet; + private static Texture separator; + private static Texture criteriaSheet; + private Rectangle rect; + + public SegmentUI(Rectangle rect) { + this.rect = rect; + } @Override public void tick() { } + public static void setSeparator(Texture texture) { + separator = texture; + } + + public static void setCriteriaSheet(Texture texture) { + criteriaSheet = texture; + } + @Override public void render(SpriteBatch batch) { -// batch.end(); -// -// ShapeRenderer renderer = new ShapeRenderer(); -// renderer.begin(ShapeRenderer.ShapeType.Filled); -// renderer.setColor(0.4f, 0.7f, 0.4f, 1); -// renderer.rect(0, (Gdx.graphics.getHeight()/3)*2, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()/3); -// renderer.end(); -// -// batch.begin(); + batch.end(); + + ShapeRenderer renderer = new ShapeRenderer(); + renderer.begin(ShapeRenderer.ShapeType.Filled); + renderer.setColor(0.7f, 0.4f, 0.6f, 1); + renderer.rect(rect.x, rect.y, rect.width, rect.height); + renderer.end(); + + batch.begin(); + + int spriteWidth = 75; + int spriteHeight = 200; + Round round = Game.getRound(); + // change 3 + for (int i = 0; i < 3; i++) { + int criteriaType = 0 ; + int criteriaQuantity = 0; + batch.draw(criteriaSheet, rect.x + (spriteWidth*i), rect.y, spriteWidth, rect.height, spriteWidth*criteriaType, spriteHeight*criteriaQuantity, spriteWidth, spriteHeight, false, false); + } + } } diff --git a/core/src/com/monjaro/gamejam/main/Game.java b/core/src/com/monjaro/gamejam/main/Game.java index 026c1f2..1988005 100644 --- a/core/src/com/monjaro/gamejam/main/Game.java +++ b/core/src/com/monjaro/gamejam/main/Game.java @@ -6,6 +6,7 @@ import com.badlogic.gdx.Input; import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.graphics.g2d.BitmapFont; import com.badlogic.gdx.graphics.g2d.SpriteBatch; +import com.badlogic.gdx.math.Rectangle; import com.badlogic.gdx.utils.ScreenUtils; import com.monjaro.gamejam.SegmentUI; import com.monjaro.gamejam.segment.DualSegment; @@ -38,7 +39,7 @@ public class Game extends ApplicationAdapter { font.getData().markupEnabled = true; img = new Texture("badlogic.jpg"); - segUi = new SegmentUI(); + segUi = new SegmentUI(new Rectangle(0, (Gdx.graphics.getHeight()/3)*2, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()/3)); ui = new UI(this, 50, 280); round = new Round(List.of(new OlympicSegment(1), new OlympicSegment(3), new KinSegment(3), new DualSegment(false)), List.of(new ParityDecay(true)), 5); @@ -47,6 +48,8 @@ public class Game extends ApplicationAdapter { Face.setPipSprite(new Texture("pip.png")); Die.setLockedSprite(new Texture("locked_die_border.png")); UI.setRerollTexture(new Texture("reroll_symbol.png")); + SegmentUI.setCriteriaSheet(new Texture("criteria_red.png")); + // SegmentUI.setCriteriaSheet(""); not made yet float divide = Gdx.graphics.getWidth() / 6f; for (int i = 0; i < 5; i++) { From d7bcd3e3b8c3be43cfc4932d7ca1adb46b7a38ec Mon Sep 17 00:00:00 2001 From: Rosia E Evans Date: Sun, 21 Apr 2024 14:10:02 +0100 Subject: [PATCH 2/3] adds working segment ui --- core/src/com/monjaro/gamejam/SegmentUI.java | 24 ++++++++++++++----- core/src/com/monjaro/gamejam/main/Game.java | 9 +++++-- .../monjaro/gamejam/segment/DualSegment.java | 7 +++--- .../monjaro/gamejam/segment/KinSegment.java | 2 +- .../gamejam/segment/OlympicSegment.java | 4 ++-- 5 files changed, 31 insertions(+), 15 deletions(-) diff --git a/core/src/com/monjaro/gamejam/SegmentUI.java b/core/src/com/monjaro/gamejam/SegmentUI.java index bf404ee..e726873 100644 --- a/core/src/com/monjaro/gamejam/SegmentUI.java +++ b/core/src/com/monjaro/gamejam/SegmentUI.java @@ -6,6 +6,7 @@ import com.badlogic.gdx.graphics.g2d.SpriteBatch; import com.badlogic.gdx.graphics.glutils.ShapeRenderer; import com.badlogic.gdx.math.Rectangle; import com.monjaro.gamejam.main.Actor; +import com.monjaro.gamejam.main.Game; import com.monjaro.gamejam.main.Round; public class SegmentUI extends Actor { @@ -13,6 +14,7 @@ public class SegmentUI extends Actor { private static Texture separator; private static Texture criteriaSheet; private Rectangle rect; + private Game game; public SegmentUI(Rectangle rect) { this.rect = rect; @@ -23,6 +25,10 @@ public class SegmentUI extends Actor { } + public void setGame(Game game){ + this.game = game; + } + public static void setSeparator(Texture texture) { separator = texture; } @@ -45,12 +51,18 @@ public class SegmentUI extends Actor { int spriteWidth = 75; int spriteHeight = 200; - Round round = Game.getRound(); - // change 3 - for (int i = 0; i < 3; i++) { - int criteriaType = 0 ; - int criteriaQuantity = 0; - batch.draw(criteriaSheet, rect.x + (spriteWidth*i), rect.y, spriteWidth, rect.height, spriteWidth*criteriaType, spriteHeight*criteriaQuantity, spriteWidth, spriteHeight, false, false); + Round round = game.getRound(); + + int numOfSegments = round.getSegments().size(); + for (int i = 0; i < numOfSegments; i++) { + int criteriaType = round.getSegments().get(i).getSpriteColumn(); + int criteriaQuantity = round.getSegments().get(i).getSpriteRow(); + batch.draw(criteriaSheet, + rect.x + ((rect.width/(numOfSegments+1))*(i+1))-spriteWidth/2, ((rect.y + rect.height/2)-spriteHeight/2), + spriteWidth, spriteHeight, + spriteWidth*criteriaType, spriteHeight*(criteriaQuantity), + spriteWidth, spriteHeight, + false, false); } diff --git a/core/src/com/monjaro/gamejam/main/Game.java b/core/src/com/monjaro/gamejam/main/Game.java index a45174b..e28bc42 100644 --- a/core/src/com/monjaro/gamejam/main/Game.java +++ b/core/src/com/monjaro/gamejam/main/Game.java @@ -40,15 +40,20 @@ public class Game extends ApplicationAdapter { img = new Texture("badlogic.jpg"); segUi = new SegmentUI(new Rectangle(0, (Gdx.graphics.getHeight()/3)*2, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()/3)); + segUi.setGame(this); ui = new UI(this, 50, 280); - round = new Round(List.of(new OlympicSegment(1), new OlympicSegment(3), new KinSegment(3), new DualSegment(false)), List.of(new ParityDecay(true)), 5); + round = new Round(List.of(new OlympicSegment(2), new OlympicSegment(3), new KinSegment(3), new DualSegment(false)), List.of(new ParityDecay(true)), 5); + + for (Segment segment : round.getSegments()) { + System.out.println(segment.getName() + ": " + segment.getSpriteColumn() + ", " + segment.getSpriteRow()); + } Face.setBlankFaceSprite(new Texture("blank_die_face.png")); Face.setPipSprite(new Texture("pip.png")); Die.setLockedSprite(new Texture("locked_die_border.png")); UI.setRerollTexture(new Texture("reroll_symbol.png")); - SegmentUI.setCriteriaSheet(new Texture("criteria_red.png")); + SegmentUI.setCriteriaSheet(new Texture("criteria.png")); // SegmentUI.setCriteriaSheet(""); not made yet float divide = Gdx.graphics.getWidth() / 6f; diff --git a/core/src/com/monjaro/gamejam/segment/DualSegment.java b/core/src/com/monjaro/gamejam/segment/DualSegment.java index 7613e66..56a11cf 100644 --- a/core/src/com/monjaro/gamejam/segment/DualSegment.java +++ b/core/src/com/monjaro/gamejam/segment/DualSegment.java @@ -57,12 +57,11 @@ public class DualSegment extends Segment { @Override public int getSpriteColumn() { - return 0; + return 2; } @Override public int getSpriteRow() { - return 0; + return firstTrio ? 1 : 0; } - -} +} \ No newline at end of file diff --git a/core/src/com/monjaro/gamejam/segment/KinSegment.java b/core/src/com/monjaro/gamejam/segment/KinSegment.java index 8869620..49ee50f 100644 --- a/core/src/com/monjaro/gamejam/segment/KinSegment.java +++ b/core/src/com/monjaro/gamejam/segment/KinSegment.java @@ -43,7 +43,7 @@ public class KinSegment extends Segment { //multiple dice of the same value @Override public int getSpriteRow() { - return 0; + return requirement - 2; } } diff --git a/core/src/com/monjaro/gamejam/segment/OlympicSegment.java b/core/src/com/monjaro/gamejam/segment/OlympicSegment.java index 05869d1..10601af 100644 --- a/core/src/com/monjaro/gamejam/segment/OlympicSegment.java +++ b/core/src/com/monjaro/gamejam/segment/OlympicSegment.java @@ -49,12 +49,12 @@ public class OlympicSegment extends Segment { @Override public int getSpriteColumn() { - return 0; + return 1; } @Override public int getSpriteRow() { - return 0; + return length - 2; } } From 7c5563c49647714070ff5c311b56b2eab6bf7818 Mon Sep 17 00:00:00 2001 From: Rosia E Evans Date: Sun, 21 Apr 2024 14:24:56 +0100 Subject: [PATCH 3/3] adds textures --- assets/blank_die_face.png | Bin 8356 -> 3070 bytes assets/pip.png | Bin 977 -> 855 bytes assets/raw_assets/blank_die_face.kra | Bin 341063 -> 334111 bytes assets/raw_assets/pip.kra | Bin 7635 -> 7432 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/assets/blank_die_face.png b/assets/blank_die_face.png index 47ff40e79ea511633371795f95a11c8626338692..140a7ad6fc54bb5f1afc3ccf2bb354572826be71 100644 GIT binary patch delta 2455 zcmV;I3264DLH-x8f&zaDW=TXrRCod9n{BL@Wf{QFfuJLzp#h;7awJ`d5@hruN!YNF z)ij%Jv23+oHtj{5xwUdD*Yr!awwfQ(FZHF`%u-s}L_z|k){FKckU<`W6f=<&gm{sD zzvuj~f7k!^v7u)B-*|1mbH6_KbKTc--Pe6T&pBssphXTIJUD-w>QiAm9060|yMu#+ zdrA9J(0K^OP;qc~R*?EZ%Hy6*cN=?z3y!7Y=WsIYgh?<4*22~B1iTZDfuF)ESOS0I zCR?~(gB=O>as2V{2KX{eh7;gnSWo|bq&>p*O_{a<@~@z9fc#GKj${8*;Pr4fIMxi9 z1H*74d=plHIxl|$b+gZ>7-s`%kMtOTn@ps28C(Z1>*+Z#Fsj*T8rSWo&u?HJX!$MR zji-QyR1SboN5d&c!Q=38P-(CI7W@k?gEipzXTY0aENliJ#6RJ5m=4}sQBV6QUiUQY z0qe$r`l$O=7~m?>9`S-kI+MSK!bRZCUTjgRxW7hnd1-&BTp#UJzhGI*2xnu2FkCaB z)(O$wra?UEsDH82JUO41OUF8OGR^H2U$87>gxh$~GxJE<00z8mpo^CB|1wH>-{(_) zHeEHSMmQ%AnhkI+4HrXR`?}@`d<0zUe+L7jYs?!x3A;LZUD!6)`aSR%ShpUmv%l`= zT93R2-v@tL@&qDpsxD8#LtrehY`tqfP#=Tf4v3gTwkzK2$K4W{JlVKeZny3ytefxP zI?Ktw9E`%s6=2=3;j^#;ehAaSDDT*Bg>^6C3&B3ef%jhtGr;@Y3||5R;3ha4LezhMHaK>#Fv0U+FJyU|!Y#Qc<)%p5 zU86al`yNW3Ylq-Sm~4oD{+xts9CHU`Sx;eZ9w>W&d!#OOZ05?t3VCu5~#nE*r&V)boVsK6>=E(Dkky1kJk+OVMi836u0t_lZJr-FIfL%LcIV_}oZd*V|mw)l&3b zW%ho{IUFO*U9z-S;7Z?*BDC%k{`mV6LMcF@7=Qi3axQx4iYb48^6x@cY6m(w( z`|^ay?|}Ce#lS1o!k z!V8+0zH9)aX8FW@$=KL3KowP;Q|2WoyQ@&x_Yt?l=G{BmJPPlNLMQd@t>^8jXzzdf zB1ZTAMHaFL7%>~G*w7IpX3a|==JDIebkZTxxh{ijfO$oyD0WXxQBhOM zB#%MgMJ+n}k~EYJ@G&aNw=S1}A3|yt1ADm>80%KCJRZ#k@N3WRVy4#lMW<%D6y@FF zvS<{SK~D_u3rl(I-HDZ+d2aT~dSrhcs+OL8fVx#qA$!1UDd!I)wy$Olm37wFBy&)< zd-Cfj?qSF!KWYFbY4rE|U3n0CH+3_iX89n>JK<6uup&G_*MCjfgR&QvaiOJKUsv6Z zb{^=mco4e7iZFm*P}?SIpeQ4#*VQEVqpWK_%QOnj`6djY>pzrxbn>>h8K!@wYu{Gg zgk~EG?Tl+5Hok=c9;d=DC0X1ny|6qU=RP&$PeDloVV0O%cL_|Tb#d;|$^V12+(KHq z^>vl!nDQa&@vnpKQTQne4?`9^d4SMbHH$H_fCnMuP7QMl*DTjmj8{yKE@1<^kV*spV zfN1OF`QUJnTbV=|1Q$^Ef$#t)x!fN~wAdA?Tyxf)Ajdc7;v3>{V}O6o+u)RzPUq96 zrD~VqmI-+Fxgk8jgM#1C{bgtty+Fg%F6F$Oj~+2LVt@sWFcGpmLBZp2wSouh>hFPg z*fAH+KIg>}@a^bpEuHj$=Gz%*t>WCAM=73t?hdPXP%uzr(JStPb-A*_d_@0j1n2e{ zcE7t~322SWz=kZh(y4##MI!g<_q-3+@10qk=TetPECJp8^N_7%ej%OOj*&D~BTlyb zBILZ^0!POZIG@5hpp+A+sNDe0abr0#%8%gP+rj{*Z4=!?r}Bv0GFJaqq5lrF`w;9e zwDb=`riKCTp)tF^eRUn*5Dy2rgh{v?WO2Tu=KwNC<(5wVLDGL4TI#E+;wd}P#VtyE zIGP+D;D^I9Q23p2R?CG|Rj~y0Ihl9A3%UI^tI6v0K zITR)pGu3tcob+D>7aJdelKhEuehfTUga>UQzm-1zy`Fz^*A1+c4ZJ>?CjQW;^g@~r zT^Nrc{_{uN=}LcNTqzo4LKt9#f?tI4vDXt+bBbc%rQ}}?z8jnlXM$GUY@YV7lAZ+D zg3o4FoJPkCEA7{=54Q9Vf z;YRp6_yE5EV;N&5=}g!I>aZ2g20c29dhKp3&qebo+y;Lt9OC4i$oF6w*cMMLmX1%% zI#cVK@kmS2D7K5^y8e6_v43OaPTtAcrg9qWRPZ5LXPaJXe+{H}TBq^!w$R-=$IYqv z(3xx_H}mu2K_>4&cfuJ>^-JT22Dy^ua?KcixL%h-Jc*Zr34Fz0_ z`HF@t-7SB{3b%~1XWSZK!x81Zw3RD<@Inf7)V?uuE|G1kC_c# zE7lo|e3$qgxIPzyuh*_~1DSzoCv1i#FapQJ58$uxeQ>Q`51$0%N~0U8_f-eQu|2@N z5}b(l@DQiI_P6g5@JkqmS)dpY9p7z8J zN5HZ-cSmsYo4~>M!VruD1D`jY4qIV>oBBV%j;F#Cz#yy42ZPuh@IKJMbHIsS4p+hs z_ycIPPs0rO3V1&!e-dnjxv&PFgpY!TUJlOX?Qk7>_#paQFq8p0yr938ty#N&1G=#| V;AIb%gvI~>002ovPDHLkV1kcb*UWXTI47A#vr>J8ljn(i9zkaK3t1K;;s`0YBkvLf95 z3}(OmX2;I)6GwmfXTQ^|SF1tOG=I8pnxlTdzaNgqKOBvx&BcG^%VxLTHb=dFb9{2v zEEkKW*Y7v&V9=ajylfsGADVuzmwVIcX|vg^o6&gEY-zKYJv3(*&w1W&c02p%H4nE} z&F%HOW;~fTCuh%6Z@=F%#;%zhpU_X+jQRZV_UFxTG-=MxFPpoY_s!G8ZL?XgXmg3I z%jV+6>t?^(G1h-EVmHldwP?Qizn?by{k~Z(W@vHL^yzE6-SG72b~%6iC+hyF9Sr|q zFdY2^8U7xbmV@EAX}6mV0&Mrrqyo%LB?9!J5IS8KJPi2;P5SG;R>0*{;`7c7&pH!1CVl z$wh>|eDQ|saR5?zlxWT`U#I>aFndRgzh0!yYB_J_Pk{aGMRSJ?{dUl-mWu!&sQ0&5 z7t7`RuiC+A&7;9`G5fE@{ONz_<3IR&=zsa!-|NrkPyad?4o5w#HJqG8Q9t_#@#@X5 zL})ucYR7+cJ`YHX*<--jV7>Kv(_B1%-7MzwW`d$8rx#ds+Oz<91cF-CvY0&q#&I(o zPGaFB6k%MfyN>e5C#PvM7z_i}ay|>Irl;o^;dQ{Vjn);+6#Dm{EDIwr*eT2zGrmTH z7Gd9hzw4J-n&*%AH-AW|=y+cMp*f+$Po*BKR2Y6Mu&K#15{v467*2m>hp^YW#*!ZGt#6;J#axMq8}l!SJ?F%Q z@s~S#*fssoriWs?-GafE2s?@OwbB&ir1jn1O(Qj@C~evEZw-YFfYvb>YUQIoROMeg zYGVz3zoj4R@3sm$j8Y0d=#A2sOei2XQC_77SREgZUmHs-z1}3WcT55{L7Bc#-1>i8 z?imA!YpFZLkj4>%r+^UyaHX~Vo(`s?KX3J2eRvXudOQ@4h6oImN23fN9Tm=^kB{l7 z9Td7ZH`lp0Ij)GTZxT+Tv_PnUMFEY{du9l&V}E{cj_Q8=7|Y2jpKSrg?{F%gX$vz1 z?1;WLwC$MTGvh|5q>2_Jb}`1;#fyJ{c=h%diAO#cBmr!t+YE~mTcOIZxnzn_`Q>t% zC_EXDo9XkH8EhfCt5tK1vO|2;~h^nR6 z+cqsA>6hExx>*CL^wzq`4WdNL^RlWev!5sm2lZtGt5z1EHQ&7#>jIVvbu)ng)tuiT z&mgi`*P?uaHh|5#g-l#9ZF+xSS8g9?Gx`~3y6eZ+PZL=BL|FZ_d}f6ZP=46s9x+0* zQJj(l!_oyGE#aT&$C7}na^5mP#+nGBdkC7!S@dNEG>H;OJ5WeJHvlL&t*!+)(midl zw*IP|<_!X7F?n;qu5V=&*a`7zhVp{CK>5e}>!!C4n)*JC=uO3^Cq#cH2$<|#;u=opf_+M6$qa$d5V4(yt>pA&cBbMj)1e(n zQ?oi1>p-xbQaDIoO9g)fv%o3}VNkM9t*zn;=ym=Kwt(10Yu!oVwBm+1RWgs$g>r*=h$kZnoD5*boigF7oS5&rrk`zSnxy5z?3&npsFjP4A9StDk-!Q6& zd|jJ-^1sgNUJII~>(jBkXFj0Pt`i*BIFcYrzS5qMMd?$|o;@d6;U~wFin0o!^!y2q zf|v%YunaLMNz=~nkUpI!=pd{@qyn>xF`!}x(VM<33L?OQ=r|FY{6H5()|54YSc z&z`+Z7H0=iopy)L#6iC=-}ckNqJV?o+Z98~|Fcp%BrT@If~OLhz9Jxs?|vCT?XT56 z7_g#v%?v8nkC@C+}(d}lOXBLvD>=1BEi}_!y(ra z%D;dAE)AX@?lS|pL^UCj+7^993&;d5XMV2rEncgjmK5=d5#`$(lvfDvWo1Y`{l0wP zF>2notwI}AOv+o3xsojLTI1MWkS45X?N^zW zizkENpm~4w$!9DmE}+IUIzwUdeLGez>8pbLFAZfvVg&6J%eB@YjPRd=9RMz01#FctZ~}gO78kGxzEiX;Qg8)x>;NLD{L|OHr#@PiTX`P0KxV39|HwZP*;Bl5w{46xq!lmu62SI1Nl$N>7QFa z8C1WtzZLCOLSa=p?nlJeVzR;K_UHFfx?C~RGlG5EMk6e+p0kfi>E8huIW$(eaD7rW zeVHrpH7n2oER%6buI%jH+i%j*C!czxx7M%-Z08oTLy%Nn*4S19t&oEzaaF-iFh*(X3z}<` zT>`Y~8XpQUuUu3qS29k<&WbmFLlB#@S@G2`{Dm_%oXp*EIp_{3&S1(R zDz>%1WU7qS#RA8aU5=}4u5Qf=WmDU7tq(-#&A$sn=^^*P{70+`Ve@5^nT(3 z%|jlKe5`C2K zHcJ%F`nr^Cs3?v_sV7K2SB_}L|BVe66|@u!4aCL~Ew0T?gI)e2*8wzL*YAG1A89}Q zK}mdKLqc?Xc?=Ln+455(za4-08EezH8&D+}BFdJp(uWGrR(}&^6DkLBF92!7D88hx z+QB7gX>F9x)JPqf)LF|okyxZsfZ&*kC5%(MO1KKLsc$|JF6_}57(qGm5V@VTGE<>^ zW-)-RshHrQbx+UO@8`SwdRil^J@wt2Dp%U;POPYA5J5`!V2ahOszraLY6Uu%(-rC6 z7*P@b+)*|Hrw=3-Ftm#s*`I*ez8jrsgyxycV_A}^6_CRUldR@AR5;4^l$?UmU%nXTRh$6&5D)m&{@G%A3D}RDyvoaC)K2p9XW_aA^r1O+Uq{L zlzwTkR(uq}66GVP%hB@rZi%WzWm=SGycGJ(ECH|q$gy}P8x()WaRlAfsc}Pq{BwyP z=>RbX1hmL+EBcVB0&N^qlgybV~`B$?BZqme~ojTx2*>em3E^=gg}%cvv! z?9V=I<2e4UIGdn*S>J2hJGNSz)R@SrWVs~nXdi%~4h~(*Z2X>Sdd`-(Z?H|STIWiW z64CG-0Kqud4wCzsGYuj|$qp1o4z>Nvl2a@5T>(%tKp2p;o*<}rmq{8MWQ%!)#j&KR zLDzq*(?0ZNEo`4Y7ob{C&^yW65@u=9C`hehi7a$>shP?s6?tIHhBlL_XAvIbz8muu z`tQYW*tn1u`etsz1P4@sq`(O*yZ{9q7aXE1@}Z@5xlHOKP&buX$8q99u)+H>RD~Tci~)bB3Y@-!^yNt97(Vmbq7DebW-qVEVF=!w z9U=9y&)(xb$4{W0g1DFvL8+m&94r8#Owrj@TG2C9%X5Iy4-I1UuFyWK?-da3PwPb( zh2nYk75VP2Q31*Y!e#p8x#Pup)@K~+$Oij0(ej?|U@#3J2bWP<)t2h^wMX7c%N>7{ zcN^g0=h%Z93S|Tcm1yC>K^~+t=pg_FS-`OfLKod@+A>fT zmHASxr1hk)Qt+pB<66+$cC+Nr)H`13GXo^QAy1JmmzOW_3681Ju|~3SrZj?yQ;FYII;Te% z)Ib;H50+F>pPO3B27OCmy=Q-a);EdqyZ(A400vq5k{K4~^SB-F@-2=@Cw${ieQ9Gr z6j0sKwt`dRd7_MG+;b+;wR90zf0iQ-Vdy$TbMxU_+k3pkd7VW9f_G8b zdoC?Ag=uy63k1vOT_7x9bvxTBg(-~p2|=9!Vr}Atif~y0hkPR!3Wa~-3U57?3SjtW z`95yQ*w$Th98MCekae`Q0oo$4?gC>rd(1um*SVXr+J|y_KEP$TNAVs>|J@G^5XJyE zMD@wpe8F_VTHt_SrkeD4h@=r#YSk`{XMR*d!7K_XNS%w=kAtYBHSBN8b?SHb0Zygt z$Hk3xRLp6LiddVejembz3_uf#AUNA_L8l3HwB2lBo8)0?vs7@E0Zf(juWK6pKfHfi zhdX(4die_XKAh%y;7lD`#8|4fnH4e!Qc4_XAYk z{;U@eu!zhk;I#7LbvX4c))AC?j!tQZzXFW+I}nslHk!;?vO9kq0DT)>Mzb$V46|Ct z*mF*s88196(Jt8!Sk5^VLGYV$3aqBLvZxKEkBXviP*(sI41EwR@q#)DU}d5VUM!Lw z3S3stTEg})M;covt^hb1*KI46&2A5Z8!H6Ldb(m_1VHCFEcI*0x#E?JDEm+zmDV7> zB8y9M-!dnio}+*7dP6)x=KGuXoDiYnj4UvFfhxG!(+VN%P{g{8gvt#H5bJkK zQv*-}k8KdR+UO>gzbF0WSt;Z~hz!ratP~6EN|#M-;WNO<0>?M#CYg#m9iAht#_+75 zK~?1~mAzsV{wbevMcEL84d7{9LA^Zj*3LYOtKwv2E{J~|Y{dSc$S3)6KpP)u-P_e( zzJdv!Bghhq0(i1ScK9a<&iPT8_9_wPL}91HisZ%xl{M*c`csCZJ}$^}$2IqtDV9uw ze6K6rqs}oI7nCzEU+7C<6ITE-Qy@dw*LKOS7yAIS$2*Sh-urfmIha+}5TO)Ks(GeY zDq38DmEV7%Aj)*fMbKs-8bxuh1x4ReVVMx*GY>O=qr3vdvREeHQBZ;XE|3BunD&+P z#rA`%nEtjLk5}y7v38~ec%2X#RZb@MA6QvWxu!Kr0jQ)S-AhB?QmbB$16$*UU53OtQnaV~H zz!7A^T>A67+gqKB*r($d$puoY`&K9v2XNWppWxQ3anPhFe@&ShfINli`k2$NXY6~9 z?%XFNADG}jCNh=^ND62YL&8DqTkq>wdK3mi{VPH7pm-YcKWU}_K6BdAnj-F0`7w}k ztx$iK2#bXW!w+oZ~(%R z?2PYPOV_Zdyh3JL^H~@q{aKMZ|5H@l)hU0SrEW36X;$|lDT582qSiMETIz7734tt? zxfQG8o-EK@q`BpG{o!rKYj3Xj1;>Hy`-aY661R32Md;6?bV|vw;8>Reh#=8Gn)@^IaDC&e4EqJ^x(cbyQ`b`|ARm8uySB>j`axH*FWH(+AB^U&T-*$974FsRPdVgV zTVigG$^v~%g@+@Bkx~`#vP+BrQuVu$yjzKNuc}MX0tifb_~rLtz10-~bQ zU!jZ*M(pFM0l4a@oJx6JeapJaBgjPZ-B{v`rIOvI$6nc;8MvQt|cgr$@+NL2!*f)@M8^n0MN0398Gw2g746sH}Q z*zBP^0LU?aQ;-}25VZW7Lm9pSGsYdGZ{7?op6;nsK1FY-AY#5K)sla{U6mbLHhx5> zl_w}5mZFZ<@)(W9HWr0;=7_)wgklMDe76Xs%Bg^K_qpGV16tjCM*8$)9pyQ+v%MDf zTG^CCnQ$OLE!UOu-gjEPzPgHGT@5PhJ-b1QdBW1TeSExs-j1ftV)-FRN=Z{i5%crr z_PY7x%^Ol&cX#X*>m7fT$Z-?|Rk6?!!KIqQbW^7wcm|53ye%LbF95d`!jnKKwV1Ll!1v40*!ohjf~7xfT8;d%3}V|JU%`045OjPmZYd< zbHvlG;1hXzk`dp#q zhpWBB7p=Rm7a1PX(xn7dD+{XgbgYNq(pwhhcME*?JhQIZLwWZgEnyF`KB1sL#@O=A z_Z)j?Bl9e>TR0cxHO}Mx75CT+y=N@|vOTS9XLk>e%_pCJh9bQ%;D*goe>-4c%(fTD zU8KBou}YPnqIiE0hf`V;RTVmvHBfQ3i5|{Uvoa-ItJ?r z08xIq(1Q8adg1YUWHOt)|$;R1h3|4hOZ0Yw_*xu>OEo}Tfu z+b-YF%)ySY4Dosu2`V4i9wJa4*B^WZGEe~ zgw|_P_VbHp!~(X$VN#aN*y6+6clm9T{pz0n89bT8u)2wo2Q(J{-T(dXfAMP|{C(%L zGdfxl%-nxF&reIJD6RbMkZ1TFSUoMUmejxH<)VuxUE-FF1sUOCXWt{nRZu|dxu|)# zyGB6{CIf($bsJtwxraDrO@2*ZvQ5BsBaIOS`4n^+sEaC#M|kc?)%|f6Ra4*7Ey`>{ zfXCeM?WTJx=!Dm1c0UZ7_dF_f6foIRoWMx#tJF!FW!9a zSn7WwIF6$s44P~D;#AxG)vMS4(EswczV`*^0{@s*;eX<{N7LiUsg0dW*9V_>3cN;% ztM}i=0t&oc)dFcgBXOdxKIfM6f^DZ6sD~N6Y*F}xNUZM^_wCznIh_3xh3h5A-XBB} z{5jv~0IGqCO{PFhRaJ9d~sOukp{^r#W`1SZdBJ>aOr%xH=H=Xj9YnH1tkT#-h zb~xn?>jPWLE>)%a3;=3@(xBLzu)*|IYq+-PaX>=%aVzQ_ucO@V)-M%IYY2o%(IZ}9 zB~iiZ&tJbu8-G6UOysdvL79?_3BJD;-@zhdi06Ymqv(&gjT`PG+V2B&UlL0!f@**v sK77S5)&Ju5?*4Cx+yC;DpM8Dv|K$)bc#{ixLjV8(07*qoM6N<$g0UbVM*si- diff --git a/assets/pip.png b/assets/pip.png index de1c019117d162b1d77d5f313337382b39532ebe..24bc7d890ac035a0f5549913a0acb82a8108f4b7 100644 GIT binary patch delta 222 zcmV<403rX;2iFF$f&za4zez+vR5%gck1+}YF%U%)QF}qO)5g}`Mi1j1JcQ@i)5`Td3-Y1VvGj}BQA1W2Trr%Qk^F-8RJ~YW ztvzD|QnAN;)iyZi=G^$!qa{C*530kqD$q1WTf+px4|i~f4Zl3`rh^5g2I}I>lF^*v Y4;VSTC9=5ZW&i*H07*qoM6N<$f(>G1V*mgE delta 345 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
54#|4vyrFCdi%uT5z{fHhJYIoV^C73R&HSDs z_b?&G(-Tc+DT21N8rqVJszUe$86l1TO35Gz8|}!rdd1i<$1<9F8h~y;JKXtv4$@uo z{W5U&B+XX2;m+Nmm9`$gM5>Jkb;Rt|6x{e>l5W_?#5$iHQD{Q7%{F{&rL~v0EfCQh z?lw6xN3(j5=^_uY#3*KWbmN+#q?e(8!Q0$`jpxSmr@r}$5bo#MqlPCLeHd4p&QYBd zZ93zUBiJNOc(*84S?$}d7R)fm3PyDYI#Sm}JVf;5-401ri-PD=BeK(keRTI{B^`SDzM`EwzpgTe*F|kbIH>$pv zJ4DO#i#hw~#UJclx0hyK*@8_IBcb7oa_HWN>Ajd6@grW>QXjeUNQB>^Z0}27rTRWA z`Zmb59G5t~Xel(9@K|gU5p5UG*q@J-G0y_R;{`tZ?m`#AG6i_34byiw&MVi1a1P8Mz;d6#Ac-tbb9M zV=8&{#qgwvhCyxe`K#dcfzVVRl63Y8s-r+=8w@gWoH3SH|6m0=r3TmTy0x(~Z7?*p zCnMO=2N@hSuZNe#R9y6_R^r?^T{#c5Gbs;KnW6A5$ybaFJPPx|_-9Qsv;6CSCA!k9 zfX@D6>nZs!<8fMyO+qJs#u!+n*@8Br?*j(D=Kj{q7H2^7=zEq$-T5zs= z1Vb_3o7^op_E2*in4#G$7A)Ty@%_qS{hn9hr+MM3nH_#Ln>Np(H_q^WJTRhx@mpNxu5bTlvF81O1Tvi{2fW z_{)b}6mc3B&oTGyyq%OpgyrSJyVZol=}O0=aupxXQP?x#X?(9y*E&4-|_Tt7v+foH{tFXR+l z8XHAAFT`4%g;)@={PwND{g;oY!lXF7&-@U*uEyn3W1;qy8Q0yt0<@oqE_y}btTSdW zAJ@EuM(G=!j6N^iN%8AWkv`=L(oXq}>;sBQ4nASUPT}Zn+$OSF)h%*NC7WhiEVPK> zg!DeDlZ)l9!p{3Kw`X<$8OnJ<5{e9wz{xeFq)`VyUpAd13&K%(rN+n5oWn%b6jova z9w4K$RM+Vd>^>&pUxq?sj315J)tzvEaJ{foK0b6V!O6R;3@^l#xUEnNT%0O7SL-F~>2Jyt3YEi~eF9Rp8VL z$wb(yZDli#I7N=}L@Gal=V z4=N5jDoZ`tP(PYJ!|5ombof^#Y9o07)#zk>&5ZsX2kp&V+4ZVrHG_J`T!b&%=@Lvo z?O)VL|EW9p6|;9MVRtI5?$2!v0S-lIS+58L{p__nDOZ~EOC#=_Ow~Q1q<6t+?QCk> zEnLGZ4Pk-V#HbgkeX8luS*PWl!esp!ZfnCZX6?!mR^LkHnQxNf&7EhmZgah4cMzEp zbAQk(S4%?YCCOcto;e-aPN{wGcK35NiF;yURhn&?K+)EVq;Y%uQhu|7oLlxBEKzJM znTDlXIkmI%(EN+(xO`j@z^-n0@=~kj+Q-ZjU2fL|6`96o(bqB#U)P4{p( zk5Q^+&t`j3S`+F`E#r`AAOA*-j)QcryJ~1a>~E3i#5#yFLR}4W`Q8I!ix&gUA*!+J zBw?zoz8GGA0R}pz+T~jKyZ^ko%SpHmro5JwK`DV)*XzFCYW%YN*c-uqE^7QYJm58( z6MQEJCitrH%gMgJFN;Efe-?fTawrAb<7M98?>VOR%b_HAk7<8yX@LL`1b<=DADf1M z@GBsACnk+u9>r^S%=E99fc|j(VY-3>fPc6WWM%{+c*y>1)oS~%+tGg)++|Ell1EAW zaj;n)#fi9qO$nFaP1~18abS;a76{WUDZuMvMI-?5{ioa?n;m~RWu-kXU;bBnViKA9 z=O&SW9GtlSNk~NiR?kDP@GlZ+$F|AdfvA)_65Of^(pOwuoo;&F@bd_A@%k6m|HdOm z#2;fAT2;iAw9opsvsuJoU delta 19191 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 B-mU-u