From 97aff463c4cdba9c5ea414e142c17a713aa39c6c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Beno=C3=AEt=20Harrault?= <benoit@harrault.fr>
Date: Fri, 9 Jul 2021 15:28:44 +0200
Subject: [PATCH] Add graphical winning game message with "new game" button

---
 android/gradle.properties       |   4 +-
 assets/icons/button_back.png    | Bin 3739 -> 3744 bytes
 assets/icons/difficulty_3x3.png | Bin 6014 -> 6388 bytes
 assets/icons/difficulty_4x4.png | Bin 4069 -> 4165 bytes
 assets/icons/difficulty_5x5.png | Bin 5673 -> 6075 bytes
 assets/icons/game_win.png       | Bin 0 -> 7906 bytes
 icons/build_game_icons.sh       |   1 +
 icons/button_back.svg           |   2 +-
 icons/difficulty_3x3.svg        |   2 +-
 icons/difficulty_4x4.svg        |   2 +-
 icons/difficulty_5x5.svg        |   2 +-
 icons/game_win.svg              |   2 +
 lib/screens/home.dart           |  64 ++++++++++++++++++++++++++++++--
 13 files changed, 69 insertions(+), 10 deletions(-)
 create mode 100644 assets/icons/game_win.png
 create mode 100644 icons/game_win.svg

diff --git a/android/gradle.properties b/android/gradle.properties
index cc4e56e..9742e8d 100644
--- a/android/gradle.properties
+++ b/android/gradle.properties
@@ -1,5 +1,5 @@
 org.gradle.jvmargs=-Xmx1536M
 android.useAndroidX=true
 android.enableJetifier=true
-app.versionName=0.0.30
-app.versionCode=30
+app.versionName=0.0.31
+app.versionCode=31
diff --git a/assets/icons/button_back.png b/assets/icons/button_back.png
index 370c0893bebe5c38c698f1c04c58a341efcb0707..2a802ff2d2bc0c90488a1c319288be9f28cdea5e 100644
GIT binary patch
delta 3685
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

delta 3680
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
S6{i4y%2@xVUX8AM{C@x#pXD0>

diff --git a/assets/icons/difficulty_3x3.png b/assets/icons/difficulty_3x3.png
index 1b8fd3f1e5e9309e8b2b0d2b47ed14546819e8b7..839097b79e955909bd1f387fc726c6c5c11e862e 100644
GIT binary patch
delta 6061
zcmV;e7gFf{F7z>wU4IyXNkl<Zc-rk<XLMB8xt+XTjD&=!0wEHo*iLhL;>3y5<CK@!
zNnV!CAc2qs7$k(K0?|bk9Z`h9-Ldhr9e2RJ;@)lCdvDmrfc@*d*>`4a>7H|E?)mP$
zGXia|wbugMbLY-EXMg8AU)d)X!$0ju9uwO-?3x4)CZGu7FfPWy*tTK2V%y4&j&)l6
z2RJZ955s{Z36hqd148sf?2OU+6FnIFV;lscM}vbvlaT=vlW+kvlW+kvlW+kle~<ti
z1cC%02oiuGNC1K$0V2YNp(?gykcu_;SFy$t6&qiqVq+7iE>N*i35@8aV#AO46qSj;
zS0(=anBFQjp;*PHCO$J~fQl_GO+Jeg*gdehT*a1`Cg%ooR9Bpu*TUrdRl4T2qE~Xh
zYkDWw0M^2+ek!(Tpo*<6Q?ZW2e}w=YiGf*GnjDm>!mfi52Jp-&B}qcGmvbTJ603%&
z*vx)O;}rJ1f-n;kBwCmt#KxhAAOY~wO?{Ir4|{Mj4chd?cdjqv;*1I~GV>EwzP2!T
z^BPagYeOFuTQT?$AOHrasb6x7%hdpx25ee_2%G34g^C3Ob8FB{fNQmOe@Hha0DM57
zZqC0|7OO8#IaZyx{3KPesYZ=Ey+KVqZ<cEL$8xoH$40g4s`bvF=Uuc|)txy-4c{<Y
z{e1E7)v$(R)W1~t+;TBlcqcC2V8D)gT9L0Y|EG9?Dyu(AozQZkI<>7z)pSfylh18Z
z^DkbaR$jHvnOn>&(0I-ae^t4;R{gH^&+6!@-%|fEvc%uK;+#0Ae|YDF;C}wF<e@gh
zOaFUiAN7mHe^4u~T&r$-e7E}Wz=!JNk3SY+-~N5-mOZyS1Nxg~f66>?@gtIh#f2;b
z&Q_J)yZL7lyX`k;{YcH+K2Pm@@LKiOdvA;9_25Sb)q~GJthQW#e}-f5O2!V&Oa!<^
z9p&AC08_meVEM$OokjoJJFkleCL7*)|6R3V*B15V>EH1lEJPT%pzVMIXxu!W1=Rx`
z3;x(kk4HAI2M!)km)>)Q`qk1uW_F2!k|5BBr<fOi@0wC)y9;9JB^G4s4QHypW6RBh
z1s|3R+aFrYi~pZTe-x?-XHJgPpqX&PBR8wB&iI~rUMKYl<_?KJINR*@95?Uh>bW<b
z&*=bl#`ABypnfp#XXeB4s=-{`+0a_5=VKBmo$v*9<D<9aZC*dv|ABL+Fp^;IfE*K`
zb+GY8aPY~c)%U{QeS4ilv-XZPi9`Ap<_j{0uMLqNSl^f4e|kCZ^9sy3e~$TJysj)q
z1VE_M5bZgoZIt7N1oiuZ9HiW5gReLJAY5y4xC6;2*LWQ>?c3`0ci#v+A8+h^Q+@Q&
zN1@DZ)s}JkyyD$+LI5PV3~mpiGm-^=_AP%`C#^n34LI#{pFHnhD~g=Z*lDLvav}rL
zfqM9bN7a9gf9j`)N4X2=ST;zTSDdGwe(f2t-#&WFY3j2LU;ZR?ji}L(x-U7#^2+;m
zi0AeF58rpzheiTPj=-*#r%dw?ap08<62hU#1^9_A*KVzId_c)yHC-@Qe=h2gxahmW
zklnrbuFI^)8?I8u$W15wXu&U?Gn-^y5q8y{i3Dh*e*~DOTmLmXHdw#>g?C)yKk<>m
zj~D)0w98=o{?Ac;^~eDi{ij&0TYv1zwqyP1i+h~Ivdz2>9Dk&G>eZ)3B>2wkAM3k&
zM^pqr#a~6&m;b`#uRCsx%}d|))II9ItNMvj;m8<E2I}P1r*?hT$b#Hf9CmlOGQDs?
zpLpddf2%QmbMIT~OH;lfn%84z9;fyn*l#_rYp&i9+zqm-1#x{@`*o*Vy)X_z$Q&9^
z@hFL%Hz1jSL5OvnUh)865?01`pf+C9p?@dKsgpqT#1-?8Z>+W+<B4ZaGiTzFteTUW
zSIloiu`$PByOsbX;<WEvG%z9p)OC#z^cp=tf4%#`UaJ?r<gUy07e>vvR|V%RJ=ZYl
zoaxpBb?ctp`uDanC*YOOx$fZ`t^Iy2*Z`yERf}cFHGHf2c<XtELDjs8=6(?n0HIGq
zas)pbFFtbf7^gO8*Mrw(%o6@_<==D*v2IA_IwM!T`8Q_$(0ZVref>F|084ogb}+uk
zf4I{gHT9e7FKgp!!6i!_!<ETTNAaR{=6yzAEz1ly%64u)H|Z-~zju1y2nYZsTljQ?
z#(!S@a>@TVm4Ij5bdI|Bnfsj|r?Iuc$6<6<*UuEy4z?boSKoQfd#l7mVT+C$O9hpw
z*cqdIr{)3447tyFMa1ui^M9enY^_&qf4kb%&5zyY<XaG+=-Q}MkiAByRbNwgKYg$D
z+-fyos7(u<05kdpuH^>9Md3*Jjjrd|CR84O`APk|m!%fulG5DNvSSBrD+_cu4gZ~j
zKLfFSgsQE>k*kMj&${-Z8>|U{yh4}fG)3V8!CFo(NxCB=LTq;N)9&U<ydgOge@e`F
z<zQbGt)ZgP!aB|EAN~8Fr4hd!M5_#OUi}z0L*ng$=N__7h@rQn%X4P;k2n*Itqq|j
zkOBi(pKxPF3tHq5iuChc)m@+cy*VdX695ev+V^iR?|R0m>79dawIh<fw0<HpBO>mq
zGvz|sh9+G#^mo8LMRF`Ic=kFUf4^~Zi57Z=J7t?~_T1TX-Vufcg}%-CDP;hJF)K0*
z5)NP4o;g!@y>KWC>?dNeYm073Zdy4pE*<s<({RNE62@m!x&PX))q|5^OdMRH&M~qe
zv#XcQ|2Lc|(J*B@ugD8&2FA7(HYY80*b;G=otUyJkU`1Rq=Es&e~;@?f2U_&d)8`@
zc06#6dFwZQ@B9JAgWr?FOeOHMMZeR(zh$8BGfz6<_};$vMCB&1ta=DIgjP|wuW2b1
zxOQVx?y<?ZxU<d%Lv#M^|7RW8z}#rY<&Y7^!UD%O3?Cm04_g-o2aB`XY+;%&TwvWk
z`IYJ4HH2Qvyu+@Bibxduf7xcd(?DcH3jn|Zw+}PBAg;xM1LpOQ+$5@oJ+kqu{>dMf
z3=RlfUz`j_;v9n@1KcY7+2c@u{DNOu|2|`HfTZauZv?0-w%WF_McVcnjM-LiUpBkh
zT<&d4zO3cD?i~>1o1l*gL;)n<iHb|@J0VsTbtUX<yTkk7x-VK6f5e@8>jh5q$(K>-
zwgedG-_J#J%iHh2V>L)nlrZ|IesqIymWk_CsYvum7URorzoH6j2I=Z(ox`FA_X|DM
zwg*GtyxX?xza8hXTxcd)gv?PYZCmbs)%`p5th1y9BJTvK&K@~J;tZD8#{EE1RsC60
z&Ci@;(F|iafTPk;f7%bb=+aj2u&9UYBZ-USjD%#Ne(uOo=6gzsuM+qFT~}e<Xmi%h
z=b5XB>jU%!=Zyd!acB6;-=2NEnzentV>xXGXwS<}IGIXs84XK+)=-d#at^7Si{_KZ
zQ~3ykJBVf=i7){CY2$CtV^>)kC|f`l8I=JxzYAT0p8dcuf25lOxOI71{8(Hr7Xyte
z@C7A3#TX#SbU=T|I7slVCBE<ap+=%YhDAbx3wB>*$cO09hX9yup&@|X(x{)hxjb*R
zMQ~ryFeQm%VduwK_Zv6NTN^g0TbCCCY|=%Kw%vGE_ygo@kHx`+a}CWR@Ij@mnm=v%
zZPwBP__>mbe^+zJGsji0u7n~AB_-o@%|q9#uQh$&d#qsj+d?R5&sz<;>j(Yg?kmC_
zpw3aB)d3elV~Md@Tw>LXVbM-N<jVG$C^W=@Ij12{FSt}CY|Gc-#%fi=CLr$+Mn!L4
z2(VH=q@l9V?;xR(KC5(|+t)^cmNW#|UT!?Jk3XYPe`MW8wU0Hv=g|72tfO7P-_}=p
zWSsNR{O>B^fDWjQaX=ZiRaP4=*M_n~i~vjZRQMw=K4yL3yW`2boahStOs((N1Qhd0
zJHa5T<%&JSU9sJ{(hVe#7j!@C>IZgNKkM`x&o+cSd*w$azP&t@^Ag%I@j3J(cq;w5
zrSYZmf9ZLX-gEs3q_%@-#h@|}Ri99qHtGSTF}gtRJI)zkln!~}%@?iT7nZT}b08ri
zStxEIWi7Rc5^ZIHOB_sw?#`#~R*NrP;TSqk_YphKvO$Lk0bHfNhzm<g4Kke(j3L2v
zF`P6qV#wCwdu&C)I)_EkKm_3^o6jTPfy!84e^s8j!WzBCAM+6AyrL%@vg%q7LVD+m
ztSLTBxROk$>4vN#7810AAeDg%PRO4xyL^?X5kB2B3fUH8bfmFFUIb>44}^uXeLq-7
zeD?BtuL?)+XmpN4o<6#~p#P8VKm-jiuTYM_JWoG=wo}d=#K3hHQ|l5PvWfcTWuT_@
zf3-U3fbBTwNvkq1yXQ)CjzD^W2F@^X{nC%ypSVM$SYi7a6vt_<K-|^j(@pe+vH`o8
zZ4-XyPCo<=0!6>_GEj|uM0M=NV}^(a3l}eF&#dh&PoYomYpiVvOWQP4$kRCK&E4P*
z1cP*r-*#DuDoDoTzGoj$M~v>TD}npHe_Ssw12v&o+{^(>e$!*OiU#WsEB+e1gQ#;h
zd#qk6A<@(c9`Y>8PslT1C8!&4cO_$jOIWn$HTCVr1TZWdr<@f@E4W8^c@$N76wIL!
zT2hpTB#Y)c1UWRWHMcH82_uTd-(lLtDgsD@=b{o6?+1g2`NX_pevzXvv|8e<e<m?*
z2%up1)s-o_D*<p=OWy^H28y+1SuWqx51o))kt`xD%ZT>~QX_BJ_7R$de;VfE2YDez
z)@?$b#y;OZN%sTEDTtckOyadOtutS~2fa_p_!zZ`{PbVvWuPF5VY6i;Za-32rIut(
z&%EheeV~GtN*G)^M6kjnfKhR|f3CRuEdKP4Xw#Ik#awYKIp^V4BCScr&jpEx)IGJX
zf!e<NV(WoIWn!pS6qd};{4bFf&!(u|Z8E+Q*M&(-Oi)GJ<ylio4kH2><QXBzD#;CK
zu7va!NspcZNmkbnkN`5aId&Z47k*4A3M_vK;NEF#<&m5$Tx93cjnOy+f1!hCp}^`I
zYRx4BrBzPO=qvke2Jv24A&G0|2j~$nHoDKw!(GU5U$Fb&jD~j387b9|>4LFr))S+W
z@foqPTCe@e$wk?y0a=mKj)668Oz8rRDzFn~vMfu6)VgG#kd+LiCz(FS#KUQ0v;l5v
z)RSPn{2lltS?^UT5j2nte=Y@#P*q_t!86mH#IEN^dZEW|o2X}nLm>dt>!|a9z7Gn*
zV8w9&!>x-_1+%Kcz!~JvH-1gDh_pn~jDGgJT8+L4rv1HHWYujygYVIkdV(7;@&CgI
zM-ka4R=hZAIV%DPZ>_g1He8}-kR?|qMY97;ERIg0%(gVyC8sC#e-$-_hUWf(v%si8
zwY|a#1#RD-`%@>IY5O_!O$WLo3%6y)BbrxRg@zWL01`Ly_pN`?TVVqez@StX8Ws-<
zbXby{0gyn`!e#R<)FN8-Iv`}HZ5zEiOShcRa-#KTAA0@~T^=NEk=Zs>ZiWWi%j%l@
zYvU;~Y?=s~A2-`qe~q_=r9gxQ7b~Oe0P-ZL#zZk1teiGs4aIibwaeX-h(@8`R(o&1
z%@lA24MM<3#oN9Il#n}1d`KE=jL9FIyZqL{R2N#6pupusWhdG;mtMBg2}9$~H{AB9
zUshKx&ZA&AwH*tzr>3uCwc6SJl`a%%hdo@1fQDx%FGH{8f0jMBXO%Je>)H|e;mvP5
zn;{Q?*tqRL&AxD<ZZ-Xu&rZ^d_+Y(ldjX();cnW2{->=X212^n1;sKbhSCKXFVq|1
zMt0oWg|cI44Q2X`Yj<pv@9yiv$pawxAgc3{7CG7U@MgRtY;uXeXoM@G1V3I<d8sKy
zkMSv}x=1G=f8IfIN3yY&KY`XO)>uCahs8c)%4EqsLvOZC4{v9oT1}_F#^<5jkVTg?
z(P&E1!+k16`%ZDY9*%xZ+n2=Q4VKOr$L`2*Iro^}p<I>+H%wGUjCZIEr|50>6L*>$
zbW+zpz4G>};YcCkef_k4y6UW;ekajpGA8M;6SZe>e`yVB8<NZNu&(-#`>cHu%qkDy
zVk-PCTvHj!WTjOM;N~FijL;nPY*0ODkkZDFwN;G+;IiqLIh1A3a~PD{Bnol3?Oxk~
zLXbrP&{3y755;C3_PaZ(P9-HKM%hAyyYU@3XJM={zetFVE-*GeN%U8tDW!d{-@t}%
z0xT;He`OKCZ^iB*jWA%4B*Ia+<xsP{V~hNS3k|oMOUkjKUgxJdL=sW*Y?R5Shq_7E
zCB-hVcb|QJ!gz7D1>hP=N}<t4t2M}PilQN=R(D09#9;f<7+l1^Z3hT`rnJ`HNV;qX
zHK))`mqNMnz8%)zk28}ogWII%6rdg_?UU7-f5ovFRu8dmQI#x400&sf;zt(OHkbgc
z+qo%N7}kmahO2F$?=G>1a0hU3F?RQRNNG#R=IM6T7Wyc3(|vWkvqZARDEI{H3>U>v
zP<PRtmx_KX&PKWlMwUkLjk*RZTwH1A-KJ}|>TQZ1K<~urtJ}mq!P@tX=w&CAWnGR?
zf3N$)zg>Q^a}bgI2qbiHfdt$Nle_cXIX`jY>>!Nf`47MFs5wfK?cUy5dWaBPt;97j
zTE)(Hg~2b5>x7s5W_$*rOzr!!75vRH-%kJ$FUhzgG6aQhFQqpW^`WUr`h1j-pm|1n
zb|e>NyAxxEh{*5_qeWYoTj&W^2MTHTe>`)aSc|`NlSG-xFU}^3Vpx!{h!CK)eFsQ?
z7~K+g7n~u-fMk>8cO%KBDdlC$5_^<(BfDy=<8Qhk1d17$SBxR%CCKv-r7|`MIg%*3
z5XSP5zxeZ-;UWte1@3?DK}V0?m?_P4Lm~#yQ0RsPn#4*O-(lVWbEwso=|)!lf5o?6
z68(NOm|NctxxUO8bwlI|#;H5ZD+I)hi+{LK7AEYgaE_gMoLD+MEWqbC_Rm)M=o2+u
znvJ46No>4!Yn?eXY2kKNcZ?TH3jSo_ZwzYLeSByh=_G&{F%p^ioL6`S#(oGdqY^0r
zI=pXKN3;e}gs2)rGBu8CT|u2Ae=gaCu$Gq^uV%Fs?oHoLuNB>8yQiyNzn~B96Ow0A
z7Z6%X*43IV-ugZ#uRhfYDd%!tk?}`enO6c)+|d`fA*Lg<${PlM=Jt8kcl%2GY$Sp_
zZ-~LdTT+@m9&TvhL6}W4VUTVSC1(sJ7pS|Ej*U?Spwe|gpBD){dOffZe^Gl6(b}jD
z8V<^y3ehlDO#ubLLg^gB#KwDNy!8Ypb`;LxAQbd)i*f;6H-y-+v9!Xi2EE2dw^T#1
zu{2@fCCi-p7#sY0>7UHkG<EniDu%--B1yLIk%m!2b3&27TA@(|S;Nx}XHR!3LnU=l
z?)(sTP88xHPn0o44stH;e@+)<KtJD5v*QJ18}TDgT78N$x%knTtR<JNP;I-~ol;-?
z9o<i8en%n;bt1-)W~R1FKN-Q6LDAL5r!B5cY}ycoiUf1}`zu6j@GoVF`N265p>dpn
zV8PQw#BPepQT!R60sb45^l-5u6tX`P_t{;D4E~ysT0ld;{0@UUf3hI@$;$-DpZmQV
zt8J*~jg_H6A^^}>68$(~!TDWC2%**#=67D94YeR-A+TtaAX0Y#RON8M;wd)+_eR+?
zV~j6~_Py$b(u-|n@_uU@)LLGpg#O)ey>oBS;ATf5{T}UgsHyE7^)69Zj}a-|NmLt3
z1fpO~VEv;4y2myIf4IpI9ZgZbUm6lw6*RshdyKGdyjS?f3~mlW?NLj<=Um(hWwF>D
zkg`Th8rGz$@YBg~E1zN8t1d{MFW`%UOjx*h&Xz-55bAJ2M@lsW^U{=(#lg;6?J=(-
z(gva+X&6yngY|$|K3uI_Uh=^SBziPB2m}d05F`LWkN^ZhlY0RvlW+kvlW+kvlW+kF
zR|&vDAV>g$AOQ%11R#hWMt}nx2%?8#e=N3b*e(tP(L=E#L4dNOxeE|I()w>1dQ{B$
nCrN^xBm&U`aKN$rsm1^QUW}}Ps~`d%00000NkvXXu0mjfj%d9U

literal 6014
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

diff --git a/assets/icons/difficulty_4x4.png b/assets/icons/difficulty_4x4.png
index ea494327f7c558f7447001c20b777eb4d87bde71..4c03069ee1d91aa37a5940b98b78d645189ceebb 100644
GIT binary patch
delta 3830
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

delta 3687
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
FV1l%K6hi<2

diff --git a/assets/icons/difficulty_5x5.png b/assets/icons/difficulty_5x5.png
index f4bde9c16fabb1379254d84c2c01f9446a43cc2b..8241401dba9843cfdae34b7a06aa939610204cae 100644
GIT binary patch
literal 6075
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
R@Gp1=XsE!Is}*e{{|{~lA2a{}

literal 5673
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

diff --git a/assets/icons/game_win.png b/assets/icons/game_win.png
new file mode 100644
index 0000000000000000000000000000000000000000..d73741df40e8cb97e2bf0eec929bba2e7859459a
GIT binary patch
literal 7906
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
M07*qoM6N<$g4G4ZWB>pF

literal 0
HcmV?d00001

diff --git a/icons/build_game_icons.sh b/icons/build_game_icons.sh
index 17d6d79..ce27005 100755
--- a/icons/build_game_icons.sh
+++ b/icons/build_game_icons.sh
@@ -46,6 +46,7 @@ function build_icon() {
 # Game icons
 build_icon ${CURRENT_DIR}/button_back.svg ${BASE_DIR}/assets/icons/button_back.png
 build_icon ${CURRENT_DIR}/button_shuffle.svg ${BASE_DIR}/assets/icons/button_shuffle.png
+build_icon ${CURRENT_DIR}/game_win.svg ${BASE_DIR}/assets/icons/game_win.png
 build_icon ${CURRENT_DIR}/difficulty_3x3.svg ${BASE_DIR}/assets/icons/difficulty_3x3.png
 build_icon ${CURRENT_DIR}/difficulty_4x4.svg ${BASE_DIR}/assets/icons/difficulty_4x4.png
 build_icon ${CURRENT_DIR}/difficulty_5x5.svg ${BASE_DIR}/assets/icons/difficulty_5x5.png
diff --git a/icons/button_back.svg b/icons/button_back.svg
index 0d152c5..2622a57 100644
--- a/icons/button_back.svg
+++ b/icons/button_back.svg
@@ -1,2 +1,2 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<svg enable-background="new 0 0 100 100" version="1.1" viewBox="0 0 93.665 93.676" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><path d="m46.834 11.248c-19.624 0-35.588 15.964-35.588 35.592 0 19.624 15.964 35.588 35.588 35.588s35.584-15.964 35.584-35.588c0-19.629-15.96-35.592-35.584-35.592zm0 63.607c-15.471 0-28.02-12.544-28.02-28.014 0-15.477 12.549-28.019 28.02-28.019s28.018 12.541 28.018 28.019c0 15.471-12.547 28.014-28.018 28.014z" stroke-width=".75985"/><path d="m55.403 64.285c0.85468 0.85879 3.0403 0.85879 3.0403 0v-34.893c0-0.85985-2.1908-0.85985-3.0486 0l-28.641 15.895c-0.8578 0.85468-0.87224 2.2454-0.0165 3.1032z" fill="#ed9138" stroke-width="1.031"/></svg>
+<svg enable-background="new 0 0 100 100" version="1.1" viewBox="0 0 93.665 93.676" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><rect x=".44662" y=".89101" width="92.772" height="91.894" ry="11.689" fill="#e41578" stroke="#fff" stroke-width=".238"/><path d="m59.387 71.362c1.1248 1.1302 4.0012 1.1302 4.0012 0v-45.921c0-1.1316-2.8832-1.1316-4.0121 0l-37.693 20.918c-1.1289 1.1248-1.1479 2.9551-0.02171 4.084z" fill="#fefeff" stroke="#930e4e" stroke-linecap="round" stroke-linejoin="round" stroke-width="8.257"/><path d="m57.857 68.048c0.96243 0.96706 3.4236 0.96706 3.4236 0v-39.292c0-0.96825-2.467-0.96825-3.4329 0l-32.252 17.898c-0.96594 0.96243-0.9822 2.5285-0.01858 3.4945z" fill="#fefeff" stroke="#feffff" stroke-linecap="round" stroke-linejoin="round" stroke-width="4.314"/></svg>
diff --git a/icons/difficulty_3x3.svg b/icons/difficulty_3x3.svg
index 93e4dda..9806d64 100644
--- a/icons/difficulty_3x3.svg
+++ b/icons/difficulty_3x3.svg
@@ -1,2 +1,2 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<svg enable-background="new 0 0 100 100" version="1.1" viewBox="0 0 100 100" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><rect width="100" height="100" ry="2" fill="#009d21"/><g fill="#f9f9f9" stroke="#000" stroke-width="2" aria-label="3x3"><path d="m19.443 43.965-7.5195-1.3477q0.9375-3.5938 3.5938-5.5078 2.6758-1.9141 7.5586-1.9141 5.6055 0 8.1055 2.0898t2.5 5.2539q0 1.8555-1.0156 3.3594t-3.0664 2.6367q1.6602 0.41016 2.5391 0.95703 1.4258 0.87891 2.207 2.3242 0.80078 1.4258 0.80078 3.418 0 2.5-1.3086 4.8047-1.3086 2.2852-3.7695 3.5352-2.4609 1.2305-6.4648 1.2305-3.9062 0-6.1719-0.91797-2.2461-0.91797-3.7109-2.6758-1.4453-1.7773-2.2266-4.4531l7.9492-1.0547q0.46875 2.4023 1.4453 3.3398 0.99609 0.91797 2.5195 0.91797 1.6016 0 2.6562-1.1719 1.0742-1.1719 1.0742-3.125 0-1.9922-1.0352-3.0859-1.0156-1.0938-2.7734-1.0938-0.9375 0-2.5781 0.46875l0.41016-5.6836q0.66406 0.09766 1.0352 0.09766 1.5625 0 2.5977-0.99609 1.0547-0.99609 1.0547-2.3633 0-1.3086-0.78125-2.0898t-2.1484-0.78125q-1.4062 0-2.2852 0.85938-0.87891 0.83984-1.1914 2.9688z"/><path d="m37.373 43.574h9.4336l3.3008 5.7812 3.8281-5.7812h8.7695l-7.0703 9.8828 7.5781 10.859h-9.2773l-3.8281-6.6797-4.5117 6.6797h-8.6133l7.5391-10.859z"/><path d="m72.803 43.965-7.5195-1.3477q0.9375-3.5938 3.5938-5.5078 2.6758-1.9141 7.5586-1.9141 5.6055 0 8.1055 2.0898t2.5 5.2539q0 1.8555-1.0156 3.3594t-3.0664 2.6367q1.6602 0.41016 2.5391 0.95703 1.4258 0.87891 2.207 2.3242 0.80078 1.4258 0.80078 3.418 0 2.5-1.3086 4.8047-1.3086 2.2852-3.7695 3.5352-2.4609 1.2305-6.4648 1.2305-3.9062 0-6.1719-0.91797-2.2461-0.91797-3.7109-2.6758-1.4453-1.7773-2.2266-4.4531l7.9492-1.0547q0.46875 2.4023 1.4453 3.3398 0.99609 0.91797 2.5195 0.91797 1.6016 0 2.6562-1.1719 1.0742-1.1719 1.0742-3.125 0-1.9922-1.0352-3.0859-1.0156-1.0938-2.7734-1.0938-0.9375 0-2.5781 0.46875l0.41016-5.6836q0.66406 0.09766 1.0352 0.09766 1.5625 0 2.5977-0.99609 1.0547-0.99609 1.0547-2.3633 0-1.3086-0.78125-2.0898t-2.1484-0.78125q-1.4062 0-2.2852 0.85938-0.87891 0.83984-1.1914 2.9688z"/></g></svg>
+<svg enable-background="new 0 0 100 100" version="1.1" viewBox="0 0 100 100" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><rect width="100" height="100" ry="2" fill="#009d21"/><g transform="matrix(1.1542 0 0 1.1542 -7.5435 -7.7088)" fill="#f9f9f9" stroke="#005c0c" stroke-width="2" aria-label="3x3"><path d="m19.443 43.965-7.5195-1.3477q0.9375-3.5938 3.5938-5.5078 2.6758-1.9141 7.5586-1.9141 5.6055 0 8.1055 2.0898t2.5 5.2539q0 1.8555-1.0156 3.3594t-3.0664 2.6367q1.6602 0.41016 2.5391 0.95703 1.4258 0.87891 2.207 2.3242 0.80078 1.4258 0.80078 3.418 0 2.5-1.3086 4.8047-1.3086 2.2852-3.7695 3.5352-2.4609 1.2305-6.4648 1.2305-3.9062 0-6.1719-0.91797-2.2461-0.91797-3.7109-2.6758-1.4453-1.7773-2.2266-4.4531l7.9492-1.0547q0.46875 2.4023 1.4453 3.3398 0.99609 0.91797 2.5195 0.91797 1.6016 0 2.6562-1.1719 1.0742-1.1719 1.0742-3.125 0-1.9922-1.0352-3.0859-1.0156-1.0938-2.7734-1.0938-0.9375 0-2.5781 0.46875l0.41016-5.6836q0.66406 0.09766 1.0352 0.09766 1.5625 0 2.5977-0.99609 1.0547-0.99609 1.0547-2.3633 0-1.3086-0.78125-2.0898t-2.1484-0.78125q-1.4062 0-2.2852 0.85938-0.87891 0.83984-1.1914 2.9688z"/><path d="m37.373 43.574h9.4336l3.3008 5.7812 3.8281-5.7812h8.7695l-7.0703 9.8828 7.5781 10.859h-9.2773l-3.8281-6.6797-4.5117 6.6797h-8.6133l7.5391-10.859z"/><path d="m72.803 43.965-7.5195-1.3477q0.9375-3.5938 3.5938-5.5078 2.6758-1.9141 7.5586-1.9141 5.6055 0 8.1055 2.0898t2.5 5.2539q0 1.8555-1.0156 3.3594t-3.0664 2.6367q1.6602 0.41016 2.5391 0.95703 1.4258 0.87891 2.207 2.3242 0.80078 1.4258 0.80078 3.418 0 2.5-1.3086 4.8047-1.3086 2.2852-3.7695 3.5352-2.4609 1.2305-6.4648 1.2305-3.9062 0-6.1719-0.91797-2.2461-0.91797-3.7109-2.6758-1.4453-1.7773-2.2266-4.4531l7.9492-1.0547q0.46875 2.4023 1.4453 3.3398 0.99609 0.91797 2.5195 0.91797 1.6016 0 2.6562-1.1719 1.0742-1.1719 1.0742-3.125 0-1.9922-1.0352-3.0859-1.0156-1.0938-2.7734-1.0938-0.9375 0-2.5781 0.46875l0.41016-5.6836q0.66406 0.09766 1.0352 0.09766 1.5625 0 2.5977-0.99609 1.0547-0.99609 1.0547-2.3633 0-1.3086-0.78125-2.0898t-2.1484-0.78125q-1.4062 0-2.2852 0.85938-0.87891 0.83984-1.1914 2.9688z"/></g></svg>
diff --git a/icons/difficulty_4x4.svg b/icons/difficulty_4x4.svg
index d7e5113..9d30392 100644
--- a/icons/difficulty_4x4.svg
+++ b/icons/difficulty_4x4.svg
@@ -1,2 +1,2 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<svg enable-background="new 0 0 100 100" version="1.1" viewBox="0 0 100 100" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><rect width="100" height="100" ry="2" fill="#eeb517"/><g fill="#fff" stroke="#000" stroke-width="2" aria-label="4x4"><path d="m25.303 59.209h-14.492v-6.543l14.492-17.227h6.9336v17.598h3.5938v6.1719h-3.5938v5.3516h-6.9336zm0-6.1719v-9.0039l-7.6562 9.0039z"/><path d="m37.275 43.818h9.4336l3.3008 5.7812 3.8281-5.7812h8.7695l-7.0703 9.8828 7.5781 10.859h-9.2773l-3.8281-6.6797-4.5117 6.6797h-8.6133l7.5391-10.859z"/><path d="m78.662 59.209h-14.492v-6.543l14.492-17.227h6.9336v17.598h3.5938v6.1719h-3.5938v5.3516h-6.9336zm0-6.1719v-9.0039l-7.6562 9.0039z"/></g></svg>
+<svg enable-background="new 0 0 100 100" version="1.1" viewBox="0 0 100 100" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><rect width="100" height="100" ry="2" fill="#eeb517"/><g transform="matrix(1.1547 0 0 1.1547 -7.7373 -7.7368)" fill="#fff" stroke="#969400" stroke-width="2" aria-label="4x4"><path d="m25.303 59.209h-14.492v-6.543l14.492-17.227h6.9336v17.598h3.5938v6.1719h-3.5938v5.3516h-6.9336zm0-6.1719v-9.0039l-7.6562 9.0039z"/><path d="m37.275 43.818h9.4336l3.3008 5.7812 3.8281-5.7812h8.7695l-7.0703 9.8828 7.5781 10.859h-9.2773l-3.8281-6.6797-4.5117 6.6797h-8.6133l7.5391-10.859z"/><path d="m78.662 59.209h-14.492v-6.543l14.492-17.227h6.9336v17.598h3.5938v6.1719h-3.5938v5.3516h-6.9336zm0-6.1719v-9.0039l-7.6562 9.0039z"/></g></svg>
diff --git a/icons/difficulty_5x5.svg b/icons/difficulty_5x5.svg
index ee803c9..9359501 100644
--- a/icons/difficulty_5x5.svg
+++ b/icons/difficulty_5x5.svg
@@ -1,2 +1,2 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<svg enable-background="new 0 0 100 100" version="1.1" viewBox="0 0 100 100" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><rect width="100" height="100" ry="2" fill="#d31158"/><g fill="#fff" stroke="#000" stroke-width="2" aria-label="5x5"><path d="m14.971 35.439h18.887v6.3477h-12.793l-0.68359 4.2969q1.3281-0.625 2.6172-0.9375 1.3086-0.3125 2.5781-0.3125 4.2969 0 6.9727 2.5977t2.6758 6.543q0 2.7734-1.3867 5.332-1.3672 2.5586-3.9062 3.9062-2.5195 1.3477-6.4648 1.3477-2.832 0-4.8633-0.52734-2.0117-0.54688-3.4375-1.6016-1.4062-1.0742-2.2852-2.4219-0.87891-1.3477-1.4648-3.3594l8.0469-0.87891q0.29297 1.9336 1.3672 2.9492 1.0742 0.99609 2.5586 0.99609 1.6602 0 2.7344-1.25 1.0938-1.2695 1.0938-3.7695 0-2.5586-1.0938-3.75t-2.9102-1.1914q-1.1523 0-2.2266 0.56641-0.80078 0.41016-1.7578 1.4844l-6.7773-0.97656z"/><path d="m37.393 43.33h9.4336l3.3008 5.7812 3.8281-5.7812h8.7695l-7.0703 9.8828 7.5781 10.859h-9.2773l-3.8281-6.6797-4.5117 6.6797h-8.6133l7.5391-10.859z"/><path d="m68.33 35.439h18.887v6.3477h-12.793l-0.68359 4.2969q1.3281-0.625 2.6172-0.9375 1.3086-0.3125 2.5781-0.3125 4.2969 0 6.9727 2.5977t2.6758 6.543q0 2.7734-1.3867 5.332-1.3672 2.5586-3.9062 3.9062-2.5195 1.3477-6.4648 1.3477-2.832 0-4.8633-0.52734-2.0117-0.54688-3.4375-1.6016-1.4062-1.0742-2.2852-2.4219-0.87891-1.3477-1.4648-3.3594l8.0469-0.87891q0.29297 1.9336 1.3672 2.9492 1.0742 0.99609 2.5586 0.99609 1.6602 0 2.7344-1.25 1.0938-1.2695 1.0938-3.7695 0-2.5586-1.0938-3.75t-2.9102-1.1914q-1.1523 0-2.2266 0.56641-0.80078 0.41016-1.7578 1.4844l-6.7773-0.97656z"/></g></svg>
+<svg enable-background="new 0 0 100 100" version="1.1" viewBox="0 0 100 100" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><rect width="100" height="100" ry="2" fill="#d31158"/><g transform="matrix(1.1387 0 0 1.1387 -6.7678 -6.9338)" fill="#fff" stroke="#700934" stroke-width="2" aria-label="5x5"><path d="m14.971 35.439h18.887v6.3477h-12.793l-0.68359 4.2969q1.3281-0.625 2.6172-0.9375 1.3086-0.3125 2.5781-0.3125 4.2969 0 6.9727 2.5977t2.6758 6.543q0 2.7734-1.3867 5.332-1.3672 2.5586-3.9062 3.9062-2.5195 1.3477-6.4648 1.3477-2.832 0-4.8633-0.52734-2.0117-0.54688-3.4375-1.6016-1.4062-1.0742-2.2852-2.4219-0.87891-1.3477-1.4648-3.3594l8.0469-0.87891q0.29297 1.9336 1.3672 2.9492 1.0742 0.99609 2.5586 0.99609 1.6602 0 2.7344-1.25 1.0938-1.2695 1.0938-3.7695 0-2.5586-1.0938-3.75t-2.9102-1.1914q-1.1523 0-2.2266 0.56641-0.80078 0.41016-1.7578 1.4844l-6.7773-0.97656z"/><path d="m37.393 43.33h9.4336l3.3008 5.7812 3.8281-5.7812h8.7695l-7.0703 9.8828 7.5781 10.859h-9.2773l-3.8281-6.6797-4.5117 6.6797h-8.6133l7.5391-10.859z"/><path d="m68.33 35.439h18.887v6.3477h-12.793l-0.68359 4.2969q1.3281-0.625 2.6172-0.9375 1.3086-0.3125 2.5781-0.3125 4.2969 0 6.9727 2.5977t2.6758 6.543q0 2.7734-1.3867 5.332-1.3672 2.5586-3.9062 3.9062-2.5195 1.3477-6.4648 1.3477-2.832 0-4.8633-0.52734-2.0117-0.54688-3.4375-1.6016-1.4062-1.0742-2.2852-2.4219-0.87891-1.3477-1.4648-3.3594l8.0469-0.87891q0.29297 1.9336 1.3672 2.9492 1.0742 0.99609 2.5586 0.99609 1.6602 0 2.7344-1.25 1.0938-1.2695 1.0938-3.7695 0-2.5586-1.0938-3.75t-2.9102-1.1914q-1.1523 0-2.2266 0.56641-0.80078 0.41016-1.7578 1.4844l-6.7773-0.97656z"/></g></svg>
diff --git a/icons/game_win.svg b/icons/game_win.svg
new file mode 100644
index 0000000..fe20923
--- /dev/null
+++ b/icons/game_win.svg
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg enable-background="new 0 0 100 100" version="1.1" viewBox="0 0 93.665 93.676" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><g transform="matrix(.17604 0 0 .17604 7.9341 1.7716)"><path d="m101.92 496.35c-1.8555 0-3.7109-0.69532-5.1484-2.0898-2.9297-2.8438-3-7.5234-0.15234-10.453l9.1875-9.4648c2.8438-2.9297 7.5234-3 10.453-0.15625s3 7.5234 0.15625 10.453l-9.1914 9.4648c-1.4492 1.4961-3.375 2.2461-5.3047 2.2461z" fill="#ff4e61"/><path d="m201.65 133.26c-1.8516 0-3.7109-0.69531-5.1445-2.0898-2.9297-2.8438-3-7.5234-0.15625-10.449l9.1914-9.4688c2.8438-2.9297 7.5195-3 10.449-0.15625s3 7.5234 0.15625 10.453l-9.1914 9.4688c-1.4492 1.4922-3.375 2.2422-5.3047 2.2422z" fill="#ff4e61"/><path d="m413.8 100.39c-1.8555 0-3.7109-0.69141-5.1484-2.0859-2.9297-2.8438-3-7.5234-0.15625-10.453l9.1914-9.4688c2.8438-2.9258 7.5234-2.9961 10.453-0.15234 2.9297 2.8398 3 7.5234 0.15625 10.449l-9.1914 9.4688c-1.4492 1.4922-3.375 2.2422-5.3047 2.2422z" fill="#5c73bc"/><path d="m413.8 463.77c-1.8555 0-3.7109-0.69532-5.1484-2.0859-2.9297-2.8438-3-7.5234-0.15625-10.453l9.1914-9.4688c2.8438-2.9258 7.5234-3 10.453-0.15625s3 7.5234 0.15625 10.453l-9.1914 9.4688c-1.4492 1.4922-3.375 2.2422-5.3047 2.2422z" fill="#fa0"/><path d="m63.07 112.91c-1.8516 0-3.7109-0.69141-5.1445-2.0859-2.9297-2.8438-3-7.5234-0.15625-10.453l9.1914-9.4687c2.8438-2.9258 7.5234-2.9961 10.453-0.15234 2.9258 2.8438 2.9961 7.5234 0.15234 10.449l-9.1914 9.4688c-1.4492 1.4922-3.375 2.2422-5.3047 2.2422z" fill="#fa0"/><path d="m12.309 278.82c-1.8516 0-3.7109-0.69141-5.1445-2.0859-2.9297-2.8438-3-7.5234-0.15625-10.453l9.1875-9.4688c2.8438-2.9297 7.5234-3 10.453-0.15625 2.9297 2.8438 3 7.5234 0.15625 10.453l-9.1914 9.4688c-1.4453 1.4922-3.375 2.2422-5.3047 2.2422z" fill="#2dc471"/><path d="m216.29 278.49-23.996 12.996c-6.2226 3.3711-13.496-2.0742-12.309-9.2148l4.582-27.523c0.47266-2.8359-0.4375-5.7266-2.4375-7.7344l-19.414-19.496c-5.0352-5.0547-2.2578-13.863 4.7031-14.906l26.824-4.0156c2.7656-0.41407 5.1524-2.1992 6.3867-4.7812l12-25.043c3.1133-6.4922 12.102-6.4922 15.215 0l11.996 25.043c1.2383 2.582 3.625 4.3672 6.3867 4.7812l26.828 4.0156c6.957 1.043 9.7344 9.8516 4.6992 14.906l-19.41 19.496c-2 2.0078-2.9141 4.8984-2.4414 7.7344l4.582 27.523c1.1914 7.1406-6.082 12.586-12.305 9.2148l-23.996-12.996c-2.4727-1.3398-5.4258-1.3398-7.8945 0z" fill="#ffd02f"/><path d="m220.24 512c-4.082 0-7.3906-3.3086-7.3906-7.3906v-115.59c0-4.082 3.3086-7.3945 7.3906-7.3945s7.3906 3.3125 7.3906 7.3945v115.59c0 4.082-3.3086 7.3906-7.3906 7.3906z" fill="#5c73bc"/><path d="m220.3 357.42h-0.11328c-4.082 0-7.3945-3.3125-7.3945-7.3945s3.3086-7.3906 7.3945-7.3906h0.11328c4.082 0 7.3906 3.3086 7.3906 7.3906s-3.3086 7.3945-7.3906 7.3945z" fill="#5c73bc"/><path d="m220.3 332h-0.14838c-4.082-0.0156-7.375-3.3398-7.3594-7.4219 0.0195-4.0742 3.3242-7.3594 7.3906-7.3594h0.14848c4.082 0.0156 7.375 3.3398 7.3594 7.4219-0.0156 4.0703-3.3242 7.3594-7.3906 7.3594z" fill="#fa0"/><path d="m87.234 230.89c-1.9297 0-3.8555-0.75-5.3047-2.2422l-79.34-81.738c-2.8438-2.9297-2.7773-7.6094 0.15234-10.449 2.9297-2.8438 7.6094-2.7734 10.453 0.15235l79.344 81.738c2.8438 2.9258 2.7734 7.6094-0.15625 10.449-1.4375 1.3945-3.293 2.0898-5.1484 2.0898z" fill="#ff4e61"/><path d="m113.95 258.5c-1.8633 0-3.7266-0.69922-5.1641-2.1055-2.9219-2.8516-2.9766-7.5312-0.125-10.453l0.082-0.082c2.8516-2.918 7.5312-2.9766 10.453-0.12109 2.9219 2.8516 2.9766 7.5312 0.12109 10.453l-0.0781 0.082c-1.4492 1.4805-3.3672 2.2266-5.2891 2.2266z" fill="#fa0"/><path d="m131.4 276.48c-1.8555 0-3.7109-0.69531-5.1484-2.0898-2.9258-2.8438-2.9961-7.5234-0.15235-10.449l0.0781-0.0859c2.8476-2.9297 7.5273-2.9961 10.453-0.15235 2.9297 2.8438 3 7.5234 0.15625 10.453l-0.082 0.082c-1.4492 1.4922-3.375 2.2422-5.3047 2.2422z" fill="#5c73bc"/><path d="m353.24 227.99c-1.8555 0-3.7109-0.69141-5.1445-2.0859-2.9297-2.8438-3-7.5234-0.15625-10.453l79.34-81.734c2.8438-2.9297 7.5234-3 10.453-0.15625 2.9297 2.8438 3 7.5234 0.15625 10.453l-79.344 81.734c-1.4492 1.4922-3.375 2.2422-5.3047 2.2422z" fill="#fa0"/><path d="m326.52 255.6c-1.9141 0-3.8242-0.73828-5.2695-2.2109l-0.082-0.082c-2.8633-2.9141-2.8203-7.5938 0.0899-10.453 2.9141-2.8633 7.5938-2.8203 10.453 0.0898l0.082 0.082c2.8594 2.9141 2.8203 7.5938-0.0937 10.453-1.4375 1.4141-3.3086 2.1211-5.1797 2.1211z" fill="#ff4e61"/><path d="m309.07 273.58c-1.9297 0-3.8555-0.75-5.3047-2.2422l-0.082-0.082c-2.8398-2.9297-2.7734-7.6094 0.15625-10.453s7.6094-2.7734 10.453 0.15234l0.082 0.082c2.8398 2.9297 2.7734 7.6094-0.15625 10.453-1.4375 1.3945-3.293 2.0898-5.1484 2.0898z" fill="#fa0"/><path d="m300.65 116.69c-1.2422 0-2.5-0.3125-3.6523-0.97266-3.5469-2.0234-4.7812-6.5391-2.7578-10.082l56.863-99.652c2.0234-3.543 6.5352-4.7773 10.082-2.7539 3.5469 2.0234 4.7812 6.5391 2.7578 10.082l-56.863 99.652c-1.3633 2.3867-3.8594 3.7266-6.4297 3.7266z" fill="#62d38f"/><path d="m281.52 150.33c-1.293 0-2.5977-0.33593-3.7891-1.0469l-0.0976-0.0586c-3.5-2.0938-4.6445-6.6328-2.5469-10.137 2.0938-3.5078 6.6328-4.6445 10.137-2.5508l0.0977 0.0586c3.5039 2.0938 4.6445 6.6328 2.5508 10.137-1.3867 2.3164-3.8359 3.5976-6.3516 3.5976z" fill="#fa0"/><path d="m269.02 172.25c-1.3008 0-2.6172-0.34375-3.8086-1.0625l-0.0977-0.0586c-3.4961-2.1094-4.6211-6.6523-2.5156-10.148 2.1094-3.4961 6.6523-4.6172 10.148-2.5117l0.0976 0.0586c3.4961 2.1094 4.6211 6.6523 2.5117 10.148-1.3867 2.3008-3.832 3.5742-6.3359 3.5742z" fill="#2dc471"/><path d="m139.96 116.69c-2.5703 0-5.0664-1.3398-6.4297-3.7305l-56.863-99.648c-2.0234-3.5469-0.78906-8.0586 2.7539-10.082 3.5469-2.0234 8.0625-0.79297 10.086 2.7539l56.863 99.648c2.0234 3.5469 0.78906 8.0625-2.7539 10.086-1.1562 0.66016-2.4141 0.97266-3.6562 0.97266z" fill="#5c73bc"/><path d="m159.09 150.33c-2.5078 0-4.957-1.2773-6.3438-3.582-2.1016-3.5-0.96875-8.043 2.5273-10.145l0.10157-0.0586c3.5-2.1016 8.0391-0.97266 10.141 2.5273 2.1055 3.5 0.97266 8.0391-2.5273 10.145l-0.0977 0.0586c-1.1914 0.71484-2.5039 1.0547-3.8008 1.0547z" fill="#ff4e61"/><path d="m171.6 172.25c-2.5 0-4.9375-1.2656-6.3281-3.5625-2.1172-3.4922-1-8.0352 2.4883-10.152l0.0977-0.0586c3.4961-2.1133 8.0391-1 10.156 2.4922 2.1133 3.4922 1 8.0352-2.4922 10.152l-0.0977 0.0586c-1.1992 0.72656-2.5195 1.0703-3.8242 1.0703z" fill="#fa0"/><path d="m402.14 357.28-15.523 11.602c-4.0234 3.0117-9.6523-0.043-9.5234-5.1641l0.5039-19.75c0.0508-2.0352-0.87109-3.9648-2.4688-5.1641l-15.508-11.621c-4.0234-3.0156-2.9453-9.4726 1.8242-10.93l18.391-5.6094c1.8906-0.57812 3.3906-2.082 4-4.0156l5.9375-18.785c1.5391-4.875 7.8359-5.8125 10.652-1.5898l10.863 16.285c1.1211 1.6758 2.9688 2.6797 4.9414 2.6797l19.18 0.0117c4.9766 4e-3 7.7891 5.8828 4.7578 9.9492l-11.676 15.672c-1.2031 1.6172-1.5586 3.7383-0.94922 5.6719l5.918 18.797c1.5312 4.875-3.0273 9.4453-7.7148 7.7344l-18.078-6.5977c-1.8594-0.67969-3.9258-0.37109-5.5273 0.82422z" fill="#ffd02f"/><path d="m261.51 512c-4.082 0-7.3906-3.3086-7.3906-7.3906 0-57.23 22.832-95.922 41.984-118.3 20.828-24.332 41.613-35.023 42.488-35.469 3.6406-1.8477 8.0898-0.39063 9.9336 3.2539 1.8438 3.6367 0.39453 8.0781-3.2422 9.9297-0.3125 0.16016-19.5 10.164-38.367 32.395-25.227 29.719-38.016 66.121-38.016 108.2 0 4.082-3.3086 7.3906-7.3906 7.3906z" fill="#ff4e61"/><path d="m102.86 397.35 11.766 15.605c3.0547 4.0469 9.2852 2.7305 10.547-2.2266l4.8633-19.113c0.5-1.9648 1.9102-3.5547 3.7695-4.2461l18.039-6.707c4.6797-1.7383 5.3906-8.25 1.207-11.016l-16.141-10.672c-1.6602-1.1016-2.6914-2.9726-2.7578-5.0039l-0.61719-19.75c-0.15625-5.1211-5.9492-7.832-9.7969-4.5859l-14.84 12.516c-1.5312 1.2891-3.5781 1.7227-5.4726 1.1562l-18.422-5.5c-4.7773-1.4258-9.0703 3.4102-7.2617 8.1836l6.9688 18.41c0.71875 1.8945 0.48438 4.0352-0.625 5.7188l-10.77 16.348c-2.793 4.2422 0.34375 9.9375 5.3125 9.6445l19.145-1.1406c1.9727-0.11719 3.875 0.77343 5.0859 2.3789z" fill="#ffd02f"/><path d="m179.02 512c-4.082 0-7.3906-3.3086-7.3906-7.3906 0-30.059-6.6797-57.559-19.852-81.734-1.9531-3.5859-0.62891-8.0742 2.957-10.027 3.5859-1.9531 8.0742-0.62891 10.027 2.9531 14.363 26.375 21.648 56.254 21.648 88.809 0 4.082-3.3086 7.3906-7.3906 7.3906z" fill="#fa0"/><path d="m268.93 55.898c0-11.285-8.8828-20.434-19.836-20.434-10.957 0-19.836 9.1484-19.836 20.434 0 11.285 8.8789 20.438 19.836 20.438 10.953 0 19.836-9.1523 19.836-20.438z" fill="#ffd02f"/><path d="m373.08 446.81c0-11.285-8.8789-20.434-19.832-20.434-10.957 0-19.836 9.1484-19.836 20.434s8.8789 20.434 19.836 20.434c10.953 0 19.832-9.1484 19.832-20.434z" fill="#5c73bc"/><path d="m44.129 450.86c0-9.0508-7.1211-16.387-15.91-16.387-8.7852 0-15.906 7.3359-15.906 16.387 0 9.0547 7.1211 16.391 15.906 16.391 8.7891 0 15.91-7.3359 15.91-16.391z" fill="#62d38f"/><path d="m88.172 288.35c0-9.0508-7.1211-16.387-15.91-16.387-8.7852 0-15.906 7.3359-15.906 16.387s7.1211 16.391 15.906 16.391c8.7891 0 15.91-7.3398 15.91-16.391z" fill="#5c73bc"/><g fill="#ff4e61"><path d="m210.84 16.391c0-9.0547-7.1211-16.391-15.906-16.391-8.7891 0-15.91 7.3359-15.91 16.391 0 9.0508 7.1211 16.387 15.91 16.387 8.7852 0 15.906-7.3359 15.906-16.387z"/><path d="m365.23 152.88c0-9.0508-7.125-16.391-15.91-16.391-8.7852 0-15.91 7.3398-15.91 16.391s7.125 16.387 15.91 16.387c8.7852 0 15.91-7.3359 15.91-16.387z"/><path d="m139.96 32.746c-1.8555 0-3.7109-0.69141-5.1484-2.0898-2.9297-2.8438-3-7.5195-0.15625-10.449l9.1914-9.4688c2.8438-2.9297 7.5234-3 10.449-0.15625 2.9297 2.8438 3 7.5234 0.15625 10.453l-9.1875 9.4688c-1.4492 1.4922-3.3789 2.2422-5.3047 2.2422z"/></g></g></svg>
diff --git a/lib/screens/home.dart b/lib/screens/home.dart
index 3a4b4f6..e495a58 100644
--- a/lib/screens/home.dart
+++ b/lib/screens/home.dart
@@ -290,12 +290,58 @@ class Home extends StatelessWidget {
         children: [
           _buildTilesetWidget(myProvider),
           SizedBox(height: 20),
-          _buildTipWidget(myProvider),
+          _checkTilesetIsOrdered(myProvider.tiles) ? _buildWinMessage(myProvider) : _buildTipWidget(myProvider),
         ],
       ),
     );
   }
 
+  Container _buildWinMessage(Data myProvider) {
+    return Container(
+      margin: EdgeInsets.all(2),
+      padding: EdgeInsets.all(2),
+
+      child: Table(
+        defaultColumnWidth: IntrinsicColumnWidth(),
+        children: [
+          TableRow(
+            children: [
+                Column(
+                  children: [
+                    Image(
+                      image: AssetImage('assets/icons/game_win.png'),
+                      fit: BoxFit.fill
+                    ),
+                  ]
+                ),
+                Column(
+                  children: [
+                    FlatButton(
+                      child: Container(
+                        child: Image(
+                          image: AssetImage('assets/icons/button_back.png'),
+                          fit: BoxFit.fill
+                        ),
+                      ),
+                      onPressed: () => resetGame(myProvider),
+                    ),
+                  ]
+                ),
+                Column(
+                  children: [
+                    Image(
+                      image: AssetImage('assets/icons/game_win.png'),
+                      fit: BoxFit.fill
+                    ),
+                  ]
+                ),
+            ],
+          ),
+        ]
+      )
+    );
+  }
+
   Container _buildShufflingIndicatorWidget() {
     return Container(
       child: Column(
@@ -361,9 +407,19 @@ class Home extends StatelessWidget {
 
     List<Widget> gameActions = [
       FlatButton(
-        child: Image(
-          image: AssetImage('assets/icons/button_back.png'),
-          fit: BoxFit.fill
+        child: Container(
+          decoration: BoxDecoration(
+            borderRadius: BorderRadius.circular(4),
+            border: Border.all(
+              color: Colors.blue,
+              width: 4,
+            ),
+          ),
+          margin: EdgeInsets.all(8),
+          child: Image(
+            image: AssetImage('assets/icons/button_back.png'),
+            fit: BoxFit.fill
+          ),
         ),
         onPressed: () => resetGame(_myProvider),
       ),
-- 
GitLab