From 195ac475da5d3c8e15914a1201dc904c5b1eef52 Mon Sep 17 00:00:00 2001
From: a18023913 <mohammed-el-amine.ABDELMOUDJIB@etu.univ-amu.fr>
Date: Wed, 30 Nov 2022 03:54:18 +0100
Subject: [PATCH] tache 01 principe solid

---
 .../7.4/executionHistory/executionHistory.bin | Bin 32769 -> 49394 bytes
 .../executionHistory/executionHistory.lock    | Bin 17 -> 17 bytes
 .gradle/7.4/fileHashes/fileHashes.bin         | Bin 19147 -> 20197 bytes
 .gradle/7.4/fileHashes/fileHashes.lock        | Bin 17 -> 17 bytes
 .../7.4/fileHashes/resourceHashesCache.bin    | Bin 18871 -> 19755 bytes
 .../buildOutputCleanup.lock                   | Bin 17 -> 17 bytes
 .gradle/file-system.probe                     | Bin 8 -> 8 bytes
 .../java/main/Activation/Activation.class     | Bin 0 -> 139 bytes
 build/classes/java/main/App$1.class           | Bin 915 -> 1006 bytes
 build/classes/java/main/App.class             | Bin 2421 -> 2522 bytes
 .../classes/java/main/Fighters/AntiFire.class | Bin 0 -> 1246 bytes
 build/classes/java/main/Fighters/Clouds.class | Bin 0 -> 3148 bytes
 .../java/main/Fighters/FireFighters.class     | Bin 0 -> 4069 bytes
 .../main/Fighters/MotorizedFireFighters.class | Bin 0 -> 4092 bytes
 build/classes/java/main/Fire/Fire.class       | Bin 0 -> 1947 bytes
 build/classes/java/main/Grid.class            | Bin 2705 -> 0 bytes
 build/classes/java/main/Grid/Grid.class       | Bin 0 -> 3173 bytes
 build/classes/java/main/Model$Position.class  | Bin 1444 -> 0 bytes
 build/classes/java/main/Model.class           | Bin 5035 -> 0 bytes
 build/classes/java/main/Model/Model.class     | Bin 0 -> 1618 bytes
 .../classes/java/main/Position/Position.class | Bin 0 -> 1413 bytes
 .../compileJava/previous-compilation-data.bin | Bin 517 -> 786 bytes
 src/main/java/Activation/Activation.java      |   6 +
 src/main/java/App.java                        |   5 +-
 src/main/java/Fighters/AntiFire.java          |  21 ++--
 src/main/java/Fighters/Clouds.java            |  24 +++-
 src/main/java/Fighters/FireFighters.java      |  27 +++-
 .../java/Fighters/MotorizedFireFighters.java  |  22 +++-
 src/main/java/{ => Fire}/Fire.java            |  28 ++++-
 src/main/java/{ => Grid}/Grid.java            |  31 +++--
 src/main/java/Model.java                      | 118 ------------------
 src/main/java/Model/Model.java                |  45 +++++++
 32 files changed, 175 insertions(+), 152 deletions(-)
 create mode 100644 build/classes/java/main/Activation/Activation.class
 create mode 100644 build/classes/java/main/Fighters/AntiFire.class
 create mode 100644 build/classes/java/main/Fighters/Clouds.class
 create mode 100644 build/classes/java/main/Fighters/FireFighters.class
 create mode 100644 build/classes/java/main/Fighters/MotorizedFireFighters.class
 create mode 100644 build/classes/java/main/Fire/Fire.class
 delete mode 100644 build/classes/java/main/Grid.class
 create mode 100644 build/classes/java/main/Grid/Grid.class
 delete mode 100644 build/classes/java/main/Model$Position.class
 delete mode 100644 build/classes/java/main/Model.class
 create mode 100644 build/classes/java/main/Model/Model.class
 create mode 100644 build/classes/java/main/Position/Position.class
 create mode 100644 src/main/java/Activation/Activation.java
 rename src/main/java/{ => Fire}/Fire.java (50%)
 rename src/main/java/{ => Grid}/Grid.java (70%)
 delete mode 100644 src/main/java/Model.java
 create mode 100644 src/main/java/Model/Model.java

diff --git a/.gradle/7.4/executionHistory/executionHistory.bin b/.gradle/7.4/executionHistory/executionHistory.bin
index 482e3bdabfbae03cd5487a119ad5f3965e386c49..8fe78ca1a5dd4e5f7bbf6c847e351629e7542837 100644
GIT binary patch
delta 3328
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
Rrr(6wpa7Y~1}?jw003sgOSk|4

delta 57
zcmey=$lTb#G(kj`i2)3Jniv=ac0$;()(i}S+CaAM#>5@s6AKI`OG;=l<)v+QmDrOG
E08i-*-T(jq

diff --git a/.gradle/7.4/executionHistory/executionHistory.lock b/.gradle/7.4/executionHistory/executionHistory.lock
index 9941b2c52553d73e13143e16fb70a977ea5e0ef9..1340577b55c3869daec00a9ac7b66ce4f3969529 100644
GIT binary patch
literal 17
UcmZQR@qCKwh0L%v1_<y606dBW@Bjb+

literal 17
UcmZQR@qCKwh0L%v1_;mr06b>|%>V!Z

diff --git a/.gradle/7.4/fileHashes/fileHashes.bin b/.gradle/7.4/fileHashes/fileHashes.bin
index 4967a97b225f66ba74f8ce3a2c0c13d4676fff19..ef2c76f6244c8300dd39f9b78287fa119b4867a7 100644
GIT binary patch
literal 20197
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

delta 221
zcmaDlm+|ye#tkMCjJ%U;B_t*vmGGDxDrqqJED-BT8BFe#l9+r|%7EuT6fiI_dTvzw
zA->Vzg4kq7k82XY@A)xyo9{iMlD^V>x9sUPKm{#LIm_H8ul1Fh?CF^jwEp3`(8c-e
zG3s6do$*Zqt3e8mT$0(#00zvHfs~#xkkABTMGzKvWWnRTPnzlJ`O|CooWK6t3e|BK
qC<z3drIY`Au27NwuyoNR!LQvXg2JRcZ!NwFQ6wu4QN+Xwr1bzB7*3i1

diff --git a/.gradle/7.4/fileHashes/fileHashes.lock b/.gradle/7.4/fileHashes/fileHashes.lock
index 12eb8cbe55628dc15efc14f86e6ba1b86813d97b..9dde747e5ba0cbf26f13cc1d0db23f41d1abf531 100644
GIT binary patch
literal 17
UcmZQBEe>6w+qHB(0|dMS05K2*;s5{u

literal 17
UcmZQBEe>6w+qHB(0|bNu05Eq1NdN!<

diff --git a/.gradle/7.4/fileHashes/resourceHashesCache.bin b/.gradle/7.4/fileHashes/resourceHashesCache.bin
index ab592c7a31bfa7d10f331af39895804b94763548..6b50c75922b9ada313fad6a4db8b4c636c3e5373 100644
GIT binary patch
literal 19755
zcmeI3X;2eq7=U9fRPIY4aur5J84nO*H6|V?M@S5yB2Fuyh){^45<{#g2*!d^JL7=|
z6;RQL!B~S7s0Wt;G2svd6;!T)VyGOpM((3zcE53&^+$hq-pnM~dGgHrWuMvn%6@Jn
z64`JPe~>;sOg|mM5fp#|Pyh-*0Vn_kpa2wr0#E=7KmjNK1)u;FfC5ke3P1rU@P8?=
zdFn*8v6CS${6ckLaDYT|(w#b(8*fDK67vd*v5%P*=>G$OL7uETC-OSZS0kQyFMpl>
z*kcyP*S|$PIY9HW-!7fKxZjQVt+HwxBO5CpjI&-MF3#BLFXoXaFz&S<@q$a_3q$NE
z6MX(k#2?kgBsy7nNpW6|xYTs;Zum0m6nuUZ;uRZ(gFnQj24kF&g}6*|sV#*QgU@07
zh<HPj$hPwiUx3d~K)k70GXF+dM?S{A91-tLK5&iBEt!R{JB)b$wU)(&8PhJ{bFLx&
zanU;V_Mhk0<8ww4ACQ|VsG@Ydo0lHqgUw0$0z20^n9md<K05D6$qTY53*!tK;uCu9
z;@hLc{rLQIh)-si>DF*7Eit~{5^)WEu9o|Zk2$zsfVlZXU9+O2rCTu0%0qmf@#@wS
zFH2A0TnBOI@StC<{e*wv^S2>RS^Lu;8!fi?V4UHKIMry0eHcHDj?Y<yIDPIGj{%pZ
zD{(&rao@C_n<4g8A;!HnAijb0CByd4$v^QqXA$36Y4_~N8N~vOGX;omd2u|##yxKz
zKBo!sK+oD8E;i4(7-wrCzF%Q^SFYgT*ALSgah`JF>lE#gdzjC7hd967u=_o4<{Nz7
zV8mn0i<M7I&uC(t<%2kSCy}P(O)&#rp#T(s0#E=7KmjNK1)u;FfC5ke3P1rU00p1`
z6o3Ly017|>C;$bZ02F`%Pyh-*0Vn_kpa2wr0#E=7KmjNK1)u;FfCB%efXkGmx}n`j
z^)y@&doZ_BWaS$xFftZ$D5^W2ZT@ZSzTxdnPYH?a`YvxyRep#L(YUC0am3GA#xLyE
z?qB71mqs-7OI_mljpvN>WCD50X@%-Oa<x@x{r2C^f5W1<);)RpmBLYVN4A=g>GF0>
zqF;x$r*nmFg>r|%XAJ*%&d^}&DvBeI+28Uon`m??`N_-J(Gj`D$I2RonX2s)YOB<Q
zukBbNdMr{zTpSN-znwue0(suOdmK^?tBVsig-2e9A{uc=^K%3B64LEh@}M=+>#DsN
zYO8oI^|-A$Gkex6mI3*`P%^boL)~~EK%LJVT;BfblydAvT#J%uh_cfp*&*Y7CVI0r
zQ`_VgL}R$p$uaa$?m#AQgST;hyerXonXsxZV4pN;y1Rj;ROgLqe~8*QZSM?PFVflc
zE_lecjnduloM>ovo<F;Aprf*4aJc2{*yxm?K7;1KGcI?aanD!X3O<xH`i^LDdc*A5
zZ2zVPADWdX)x4c(m}yWcMNeMuG%wGppRAklk!XlBEW(OnXrm1U=Z2$}R8xtDiD7_@
ze=H)}#MeV-&&Zw<qCw}hM@E}TY%?!E*ry+wKbvT9bF!?I<*m-%G&g!?W9~_!(Wr6U
zIUu*}>eD#kgR7}yGNPeK6{q*v78vv>!r5<Y{Xf%#`OWMrD~jU1lO`5Z4$tvvCeDx_
z9*G^7P@3Deb{2MaED;e6o84DZ1zpP%xcBqy4oV%$iN@~-!fG{xL%*MhYxNzkmVV}!
zJ(O8rzf17kRg!RJ|26@&mpG$uT2S|+1dVhp2hQICS&_dHjVkVhTm1)zc|qNl7Lo-A
z$BBlSZqqL-J3Pf{r`&3b?<nesM!ZYo)@OUiG-JtMPm}jds`kIAU8fZ{8RFK>HKF%E
N^vtxhZaS?p{sFklH`V|E

delta 68
zcmZ2Ii*fs8#tkMCjNFsgN=QuRl{A<fDk(8}D-b^gvU{Z@ChwIpn4Bst!Sf#q7#J8O
RH!A)RUuYn{+0mnn5dd*48utJI

diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock
index f9bfce77ea4384b451ec4b6f1a5479072d930f33..b207f9406dc55a038e753c0ea3e3c8365eff33af 100644
GIT binary patch
literal 17
UcmZRUKJ)c@^b_gh3=q%+06f?QS^xk5

literal 17
UcmZRUKJ)c@^b_gh3=rT406e4xCIA2c

diff --git a/.gradle/file-system.probe b/.gradle/file-system.probe
index d94dcb441eb81719468d22e20d87091ecbebd734..a85e42110354fa8e5219eee63229148156d012b9 100644
GIT binary patch
literal 8
PcmZQzU~D<&)v^}=2wei#

literal 8
PcmZQzU~D;ZtT`S4326fI

diff --git a/build/classes/java/main/Activation/Activation.class b/build/classes/java/main/Activation/Activation.class
new file mode 100644
index 0000000000000000000000000000000000000000..c7f213be0b523ab2f5b45930433cf9db57ab5d28
GIT binary patch
literal 139
zcmX^0Z`VEs1_pZuPId++Mg~#G<dV#?#FEVXJbeU{oq>gsK_Dx!EKxrvF)v-;KPf9U
zxrC8{D-o`mk%3u5GYlvcoL^d$oa&aDlgh}zk1#?Hq??VA0jLgW9RmX+&_q@SHV}(}
K9Y``UZ~y?&;2{(M

literal 0
HcmV?d00001

diff --git a/build/classes/java/main/App$1.class b/build/classes/java/main/App$1.class
index 136eec5fd5de762f9958c0f9e0c25c95369e559e..532fdf1d6c45efaefb8833aff200682238d03a02 100644
GIT binary patch
delta 503
zcmZ`#%T5A85Ud7eV0Xkd@(@&X5fU=&vc5fVk$CXnegGbcB!<K&F@$&{@e3q;1ZSh5
z{*Fgu`~~b;4S4Y|)z#C}UDY!XU*f?&k9Qkag~mmv)opZIH`j!;Uz=v$j8<a^Au17r
zL5S+6%iC6yVEU&VJq=X@5(@%xiA7lbW7kX|DUgy#W2JwWKQocVs=%7WIxIqRHvNwf
z!I;@Guz^hhTOzMJVpFaD=Mh<h0yza$@@wsO^&i(i?w;zDp`HYxgpg%n9ua^eF9Yyi
zV8e=Inb`@)Ienv?5lFcs2=xN<F?i@OMtBTRgv*%vZLYxMOpn>d4%c^?hhQ<=3s4X4
z-Sd^!vJ+T(#j<(^y&*$jBF4xKCm()!jN)+e9w?-c!4|^MnmGtY#oA@oa9G#ls>}ab
c;hHz~l4a}rI0*V}u4z|?d;|+qeb5Yh-<&U2z5oCK

delta 423
zcmXv|yG{Z@6g|UhmSxmc5d@SK#E1*{RtgdmE1R{kF_uJ(*#w0cLSaMU4@mYSwpJ1S
z2LHm+#$Uj*s}^(bxp(e)d`nk87EG<*Y?rR@oR&b$K4EX@&=8l<6%tUx`&z=lti+tc
zJd(rb;#nLiq$L&=GRO)<e3C%)rqjA=3rPFa2UJ<YvP53NgyMIw70{cPJ*VI7Ih|Xb
zIt7IylxvE*Q0}>?YSU%=xZ7>mFP_MVfd+vxgkd0x7=RF80v3CP=!iYcu3Obt2<r{<
zDY&V!#>fP<Ypkh&r(+XaoOq9I?C^h=I0Qws7gS&Kfg9hYn8eik05jGIVuXb;ay}Yk
z#hZNDl`+=5$!B1ZMi#4#;hW|mS=VV^hJg*Fxy>?ej&V)m|1dd3u#bbkh`+H8$&|Fd
Okd%v{&N1YEgiAjb#5f87

diff --git a/build/classes/java/main/App.class b/build/classes/java/main/App.class
index 6d4b4a3cf2baacad8fae05e86dc06dcb8e8aa6ed..c4f9e1a8b09d49574687d0d038c5e9c5062f15b5 100644
GIT binary patch
delta 606
zcmZ{gO>0w85Qd+V+}xAi#?r)+8cQ0hsfmHmg&&JVs6~ueB0($EU@L|+)@V&*5^L3J
z{D`({UC0&1oeRNkOCdo6f;;gi_zPURaVt(u(UphG@Xnl>=e=is`o3+qzW)072^eK{
z-HIu*>v*L&GqQ0|4Jmgtn(ky-#~~GtMbl&Daxy)ZuN4<^wc>nf<eyA#b-s4i)VP)V
z+oI_I&w#?16)Qz|XLQpksj!YM<_qObdR0@k_qnEfZd%;pwr0u09qw+tbQwzBv)`D(
z?gth@9(tIiVShFw{)WPHqEsqWj?U$()q)UK6vOtY8MFtqWjs|3{z+2$i0ZMI^<kG6
z1E2jxhq}(9amyms>>oPpR|&ICFza=Gm#??4x35Jgq3wt}<kuhA>tHfqG>OMMIv&vW
zlzXtQn~b+PnQfEF#sX$Qw>Z_}Oq0oVAv-uHF@;y6U%dM9v4a5ugxN_%R6?GUVvq?!
zTwoV-46(#+R@lR;biH7hckJgq2bdDd>CPWB&3VbFvqqj7l$766;G$UicqQw(gj4X(
zDRNmJ9Hzk)fxE=?K36GWigk&3%CdxOLNbI=kysP$;5rLiwG1~zdE|Cch;^BM#AB)W
Qq$|TVQF4}f!ZQND0U?Qh%K!iX

delta 504
zcmXYt+iFum6o$V^c4lw4n;MgtnrafOQA;79Hx^n!Z7Ci|iGol<TS3xT)23-mqCG{c
z)oS%ZD03rtA=oDffdmcu0KS1ffCyfDD=w|Wuuikqzy5!|g@1+IFTX#21}^Zb=?*Go
zwT4x{@}C&UwDP`l%IO)%T&h$?GObVkx=L7c)#9u|XD*8$QMltP`9h^$Tq@UW?wR$#
zOwY2*3ad729_ut(-vgFXkIYXU-~ZSp&J&M0Hci+*9o<xTSIgx>b*yx|Rx1d?bHz!s
zqvK}LcCBqi;$QN{zNkF&)jl6MfJM;sImvzFXl$XqYet<^xJx{D(EmejFcOS(NDgb$
zaFS8|fm1#vV^*7VdM{4Lv}rnt4c+Eimx)}LY;G{7JKX4Sv(02vKz&S!9VI9>g2N#~
zL^(n)DGoD4A7heT=O{Cxs7QiUl5BB|m-O?R<GkYx?>Wn~AY9oaD!sQP6UyY7ZJ-4B
zEd}n#x)3|^D|hh=?6v^Ti_R1qEKnjK3rj3g7R5_4ZpmatY*k_(HR}IsS?){Z$?F5b
Wc_`CQc_x*RbY;c=JzKmGim^X{abUCn

diff --git a/build/classes/java/main/Fighters/AntiFire.class b/build/classes/java/main/Fighters/AntiFire.class
new file mode 100644
index 0000000000000000000000000000000000000000..f53ca4a7eaced15fbdb8f61ccb51fde563a9d0a0
GIT binary patch
literal 1246
zcma)5ZBr6a6n-wCE3hDH+KX6OT7V_Jzldq3p%hj#Iym-ig$=IZuCpxKKj>S(rDjSi
zXZivCsHW%cg5*Rqeb{r)o_k)N^W1ZO{`&p{z&utX2q35-q@xGD0*P&7&&bvdtD1ee
zwQZJNf!<kZNq0^lm`ay4^a%`jPEA+VvnxiUwr08!Xb6T8g{~o{BaVK0<z=<znoc9T
zV7W3c9aEs^4UdLEf3cH-;W-Th40vTXq$_PJ+g2hN!YK{II!16>Al?DDYPdB*a}29u
z?|9IbRQa<y&S6xb&$0Ix?WRTeqM$Cube#7t%68qmh#-NBs_Ai}N)-y}QWTdlp<z<T
z6<igFoj|B+nLG9#dl*jn;Qt^gmwv5^q;+I4B@n7QvLX;IF7wPPkyGWa>zGECU<uBH
zTu|1VI&OJZB8%V-?rONF<G#WbK8`2GT|=sN!fUc>8E#XtIdPK3*<zcwV*+z?Il@`A
zEA;L!O3QrF+}Sdnbz`ee%V5zi8}*XmNcG<`hTNLu3k?<jdOoI#`-HdaC^FJrs?t$$
zwQlblPQ`!uRH}<#_t=nSzGJ78-6J~BQj`ssm}dUR?_b=+jIt~D4A=C!6^O93w5m<n
z;CPL6&0OMm?Y1UW@zf@xLpsx}*-fX+q>AQPd;X^t_Ru&dCBWqi@#DBqLd~Xka(KOy
z3j~1&)B|{kUh3RV${AYb5TphqGKUbEBWRn42!BE3ljohIR67lBWQf`<HQo2eBgTUI
zJRY}l<>{qzC6AEU{EETMXPkNe_Jgk_sU70NN8SgZ@+t)2a(8kj{hT3z1w3I(0*hFp
zmyi4@|MSXD%Q99d75)w4SNKL*EHd>Cmjc+JnwmPmHGVe^aJ$n=oX+4*N0Fo)^Gc8S
T;jMO<2n9T2a)Iac4WRfN=CBg(

literal 0
HcmV?d00001

diff --git a/build/classes/java/main/Fighters/Clouds.class b/build/classes/java/main/Fighters/Clouds.class
new file mode 100644
index 0000000000000000000000000000000000000000..04fbc2404b53a199d7c4fc58936240901f909bb0
GIT binary patch
literal 3148
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
I{EWu`0DjsZKL7v#

literal 0
HcmV?d00001

diff --git a/build/classes/java/main/Fighters/FireFighters.class b/build/classes/java/main/Fighters/FireFighters.class
new file mode 100644
index 0000000000000000000000000000000000000000..c944b2b3d708386cd19b154b0380028d8e179044
GIT binary patch
literal 4069
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

literal 0
HcmV?d00001

diff --git a/build/classes/java/main/Fighters/MotorizedFireFighters.class b/build/classes/java/main/Fighters/MotorizedFireFighters.class
new file mode 100644
index 0000000000000000000000000000000000000000..232fd081ec112261f8f28bb0d674f82c5ea8952e
GIT binary patch
literal 4092
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
A`v3p{

literal 0
HcmV?d00001

diff --git a/build/classes/java/main/Fire/Fire.class b/build/classes/java/main/Fire/Fire.class
new file mode 100644
index 0000000000000000000000000000000000000000..76b51a2e4075a447e5f8ddf8c112852473950669
GIT binary patch
literal 1947
zcma)6-%}e^6#gy=Y)F>!qkshpg*KG1P(uA}La7v`jRsn!qTnx<WPyd4WRj(|FZSIh
zr*HPb2VeTCGZuz2<M`|!;f()Ar&_;rvmsk;XPiv-o;~+F=brPOZ}0DaKl&BGW$Z@L
zgph%-iDtAYbnMu->}0_%ZY8g8>^M13p=HJ`y56ipC^5cbAfnKzL3^HCNM5t6+slp@
zg@I5jVlWM~nK*%Vh1LbP;w0sv(7ef|s?eTogfc80Wk{!qE}T>d7oD$p+-M?uqf~W0
zw^U5ljr4dRF6&mkw4Bvrq8BeQu<AKw1(h+-r*N`y!d#_d-w}8erx1$aGzJX}nK*-C
zg|-Hcl_*49&#Bm6siM%E2%eYm{plFa;+%oFiBX(a=xQXWLllf{ySk+NAX{q^k&yPr
z6}sz51LUR+Opwlco5%eMEf-8o2`#3b^W0mu=LnNAOyi<~mrcBaR~1e)N{}`=D?6W`
zD-;y^5&_2MON9bQNk-FB(=-N!zBf#~iML4KR>jRL#IjepCgs7gSV)_g!6i<;Qo5~Y
zpAqk66K`v8u2hKP3g!*GW8z&baNfu9w9B?z^!(W;GMVueVgI6J$cWMwq>A@VWU<KH
zELx$*uQ*80_?i@Y-NX%<bA*-5m-dRDI6pM8teq@GI}LoqBy%;gL_7_X^(?zvMcdmG
zEye@PaPl+Hk=tyVw9J?CM7L+%qO-L3)rM2KX>Szh>B^RJc45V?xbp5h!``+_eaEuW
zvlcy5M9RL9smkY^qLBJOT7OZ2QC}GBmDS1zM)?(;+cnlBzQv+C0uAerhYEkThdbqZ
zAEW=mzUc6_WzWv-F52aK{{^kT=yGYVlA~0GD18A;i9|8Ni8VptCT9;B9G{S>>Xl!y
zUMWYt^7<flg?1A@MwmA5CO$u*XBHt^K!<ezWgWp-JwWS2M1R)kRX*iL15C!XV@+Ec
zk5BQL#_+2mLUN_J3bw_X*hj}tdRH>YSwN?b?yVvGXxaN5UvR%x-Iui1>$Ryt))r>u
zUF#QgH<$0Dc!X1|uRlvi^bi9Ii<5^KQTQIGX^biS25V`;y08zvCfV(Sr+-cy;<W(q
zOasU)uM?W$e|8^p51#%Zd5OQuNNbgchSwjWTc`*_8nH+Q(1TW9l$|7biuYg&eYk{v
z5<37FgYYnfZ!oNzwHP-=>TI?cBBC7|+Ui7(zr3d9u1|%-%qBgxy-iwM^z@_oFANx%
zHgNVaMxLNW8}Y|_EWGDy)GLFeg^0iBGqlJFq<+A_<Poe@vBP;jXAf}g5bv=&c?oXI
zdpIB5PLYeHaQ??&j`jcKAn1c<K|0g=ai&R;L5;nB)(GC<5uC#q;#lClzl-zuj&CBY
s;aUgB(zxeKBZ6<SO}3g)=cwk{q(?Z4A^Zem<Y*`!59r9{Rugvq0m5RUGynhq

literal 0
HcmV?d00001

diff --git a/build/classes/java/main/Grid.class b/build/classes/java/main/Grid.class
deleted file mode 100644
index 2979e0e7f08c7d0bff33daa48fabe02028e1045b..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2705
zcmb_dZBr9h6n-`dEW`yO_zw7jFNA1`1#DH6wuaX>s0E7E*0xKskd<XO-Q7g(%Qt8E
zAAafQc1oPunf`!IKlEGwOUG&ZoVzgwd>N<XWU_bfx#yhwJkL4z?(hFR{tdu;_&$jk
z;yMxrTF|QD&>gdCuHMTA1<SRv1=FpXK{lrb4Xu}K*A6E%w4^5|hnCyXhISoE1G`{o
zNX+<lk!yGDVp!6k&B=PFfi78WEm`(jDHPLg1Knb3D|k-MtGLRz$G~1?^u4>vn55@^
z0|#(WLr-9Z(_WzxEcs^D@&j|lvAAFQ*3fb{S@as{L%-}{x<y$zp3V!F@u7U3ja9YW
zFgqpBS>@x8Oa3DUj^dbx-OPW@o%bq%b=|juz#@&q=~n~~E$cW=s`Fmaa*`OpNs;fA
zhW4jBD{;~WhLEA(hWKgF^D2OQ58#Y}w=k@sQzW%b#}3TU_FU0+Zf<B<;GH$_Hbyk;
zS+l|!-z=BxLXh*^(7G3nOllZRH~4L<)(%(hHimOL-ZAhl&QqKhRd`1Xi4+{m^cSo`
zNZ72l)LSrJG%$`!wE0%qv|X;o)3P#v34`s#m84k+?W!UpJAYu{ifo$<Lf>1r^0sTW
zV-iz3rVY$sR>Og9fK=9O&T~AUTHKhOTbg25KCMMWw8=-Y`_RBg$P<+GiS1D7{zmnh
zBd!bLae+IAs|KzKuC`SM2v0%vv4I7F)H1U$HFZ@iO9nm>OMGF9lIyIEREN!%V@Wl1
z37@N#jTOsZin_8p?-fjE+4OCh*Nus=WCv`}s4bOxL1_9^Z(s*d+bvhZtZGHou0%`i
zHl#JxT*Hy=T09q^!BFmvPLA`OkpK^thK|M1EUeF)<vOsIdJ%OsPEWJ&(VOj)U2@T@
z_yvoSa?&nGYFKKeA$7&`LKf64&s$;1D+XPySWm*ih7Q+&hccOoYt}K{wXE${S^8|=
z+*m1^j4)T(Bc6X>!>*0y*&mS@+k&DEqEj23$a~&;r97@Ah};%K-*(rUE%n`^z@__T
z>;ElATfRCrI)K~o=1j*~v_oq=1vc>hMtPgAAl9_21)&_Lih-|iJB8b<+MMfJe$Fv@
z{{%WH&dKK#e32MBzU6K8YFBAJr5uiN(-`l}7XEo_^9i}2)yP{}jl77}$h(W94xR@r
z^Lc}_U-&MuxlHe7-{vD|ncgkvnZ7M_Wcs&|%Ir;Sp(m55VP7Wm7>9rw4rhMFz|G7f
zoY=x(=4TAHrrK&a{Ug)F@F|}eB>6N5t%JW#ejd88A1U->H!qfMoIwxHV-GKqy|_uw
zu?PZg;WN$%Mp4n!n~)KLIr+#SuHJ-Df&@Ot?K+JB?aC{=6Iv>n8X>k!4cX34V%0bK
z=-8}bl%@;MAn#KU4lwaSLOnzZy%^?aNZ{>@Qa9jb@ddu*#xbdN9l)%bleFkj!{zPS
zI~DN5)cy#m9dF8NG_o4?tdI-2p7pOft@Ze&UM5aG#IRx_6TKuBC*sp=sNwwwn)buL
ze?~z)^&oNSkeD84v$J_3xhP0INF<4?DhgcS6l*z%EXQ+5^NTQqBF8&8tw<cDZw#X_
zDV)ad(I{5b8?as{R$z`45>F7*{>I1?Xfn`Nq`XlJJ|Ib{>x5AI3Aq~P<gFQEpI~g_
z8?g{0|J0y{`Ddk!#2zN@EH2}011EQAh&|E3Iiaw}h{bvtqU&!4(I^p(5z)EVMzs1e
uM2l|*(Rm`eKtvZ`6Hy#%tWyjn*c_$ecUZZv5ul2@v?OV{hi~v54*mxTQC0*1

diff --git a/build/classes/java/main/Grid/Grid.class b/build/classes/java/main/Grid/Grid.class
new file mode 100644
index 0000000000000000000000000000000000000000..96b9598c143a90c2e0e1f015cefdc77b1df0e521
GIT binary patch
literal 3173
zcmb_dTUQfT6#h;^2*e=-1W^Gms1TwO#cK`4O9;0HwSZXdbw~y>GR&ki6V%=>wzT~j
zed%+%N?f&T^{G!?edt^NOP8zdcV^NMP+Y7oVC7u)?0wGn?fuQ3-~N8`3xLb`CV~Kh
zVbm!Ip<ZDBJ#|H0c#w2*nyDpos=1;%$+R~K)DP*V?hXrt;v*ydbB$;~V;B(yyPya(
zj@f!XDF=awnsfCP)zvLipd)*=x=XGvQ!+lPpcyfqcwf)E1pzT3t*r`nOKW{W(-#Y_
zG_@<(BTWrC%Sc-#(=+Z>u+KBv)_u<yp=YOpE_4g*b~Ja?%9Wg1TV2s?N1Zn`fx7tJ
z{<&6iKd9gk4$C`KGcTXS<Jl^MRDZUT2yI0(-DF0N<DR3Pl9wD&a1_S`T6oC~bIK|?
z+D%(?9F61;#9t8HKNm)yz^*APuNg^ijG!0&GXDvI=mrp8iccswi2<f)S%wHSWou#y
zrWdCaoW>x7WqEYf(49)=!|@6J_0LJfXBC{od4aY?%^kDVVnNS2Y0GrA2kzjAKwrE{
zc|+|tx$?e?cqxoa3Q`ynIPyHbY>J^Ya)zeb(^}3I2va*!JrdKfLJ3}>&DM&lZt`g`
z-aoes*N_flMCytU+t(#iqaKN4RKb`85pi7GTGFz*sWoB(lVQA~Ad4x1y&K?pcO=u6
zVcAUQ?eU4(3>E)hv3%M!J|5Q_3U1<6LX>LK4d%bQTHe}-n-YIY(z=Kl1+x-Y!vX^&
zYl&)3!EFgCG&Y^dT$h$R3hqiva5^(0_ire8Q|{}oWp8Dq;cW%)cm{^tp*>9j2sBHc
z*GtRunmy}lx;1O%RAWxHb-Aw?>)e9wP-r!x_7d&5s?9|AY+|9C#ga=sQpldzNrj1B
zuI>d6ZcNlO0RoEWUVRUOd{xPg?<Pe%<Epu(DYaNZ7pl}dM1{(m!rp##lv?pux=pGL
z-g-)!Bi=G?SS8tBW~`E((^wBWd3|R<7Fr;7&9YpoK`l;cZo$es&GmQ?!9%<k#`_9B
zz=vcmU6Y1tE+%zzg}O;*)#drT$_RCVeao^RGHuJXyWjm}Z3yx&@Oy%DG;3K)rDDoU
zk?%I++Pb+|YpLAk2hKh$YX9${f8~o~{dai--n42MGrFs#V)&Rnxmy032FIE=hw!O<
zGe1*s4~sD@vZ@oNso7~mWp{JJ_)_55GZ}ndGQ#+Zz3|1ZY`=cyaF~|{*p}=0;}?M=
z<Trq$kd5D)+3UTT?T|C%XNO}WJwh1dsB-r!*CEc6iO$uo)yEJCv4(J>a}7<2t~InI
zy4TQ_Xs=sCN20Eb{fWdA901DbN&Jl7JBi1Lui<#&M;xz@HH1QCB){ir0nBq8;Eg~V
zk;c%3cC->%2miaU7d`wE^<h67aVK7;WdhyE(fh2A26<@Q5tqkKcq_?Ia-Q@U2ECQ!
zSVt}kSgbHAk)iZDy%}IE5*rMWLo!junP`-ln^rlrtd?<srkB@&@9{t!V!93!W)Du_
z2u|?>CIRm853d3|jRJID9gqU3K$!IQfV?C86RrwuJU<EvzL!Azn3zP(xzXym(aO0(
zw*1Pue^#h11&2C$blbNW@VLlLQ$bn`pHZ!$jLah;zWe77Kd7S;Bwbo$Ooy==t=-78
zn3776OiIwJ<^hDcK8XnHn&f<r<7K8L&-otpB$IQ9z5$%U600I`fh)sXffm1_%k*N!
zo+2Rr!r)T~InmdIRU!F^BxQPrCAA+gUdDB~s)g7kG1l<)Sx6&)%t0B`>&5hweU7-#
zQ)w5fIC(=g*~3+w!yfhku@tvLbZci2T_U0s5e;n{(YsqAdTnPAT_&O{M09oAi0rKp
zy}mPu(nK^uM44?Pa<)SB*3KXrBcgF4n%E|yAY5uWfD%?XE7a9}s{12+g3s}YmIy6h
JU=?3u-@nzQy3qgt

literal 0
HcmV?d00001

diff --git a/build/classes/java/main/Model$Position.class b/build/classes/java/main/Model$Position.class
deleted file mode 100644
index 51c52b923ab5b501b3803cc99bb5101b0b07402d..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1444
zcma)5TTc@~6#k~P-L@{Yl#6mvycBI0rQ%(SpkfS73KAha=+m~H(1m5E?oKiOCm$q{
znDF2a@JAWX>~7P=R>H&P%$)tc^PS6_-+xYj0a(TB3}P745Z94Fk|DQm9+_p^boR<0
zctf~NhUBv4SaOA7s94%fBZahvjE+mt8AdilliP(Y;aSoW4q;sJg@IKSZbU~`frc8w
z&Xd}xjy%Q~Qc`S7*K+n43dP#l2$fQ;mqCE4DDH%gNn9pw%k)}nB+4+>&#fxxl#Xf4
zP~QA=$Fx0$`95Go<9&UfH)N&sks(p6R!h4K@gRP-W;uMbb6Dr@j#;-!F<%o6)7~{*
zOWi|fT(&F{$^Bahxi+|LiRPB+nulC+mr&!y0rmNvtujm$2j|6vlJ2!7Oqn6GEjn(4
zzq3?w8NZQ>3Px?(<epp?p44!c3iE$aN4g`;y%9os(ly&bie5H}`xz|Zfrf`V9^o;=
zTu;#LIMO=g<v=*3Fr@3<C=AEZ+%4xw9Pn}gTsNJj&AmcRh=WeM5~(8`Z^RQ4cfPjy
zTkbVnt1X2arL5Ve=S3Z1j8FYRqUvW}RoK21o-%0kTr2cEvvj0ym_e^P4tISWP6JDI
zpSFgV^pbi#Ij2Sqs|?r9hte>DhEUT}w1S{7uXc(~d9^lVlc3RImi}C&+lE?HvRUIN
zm@#t#&6qvG@G-e!xE8_z8*_BN9ze<7pc|3=(9A!n;4$2!b2>(D^^<m!RBw@<Qd%Ob
zpqg=t9Ppiv{R(;j2^B_ZI|~Eo<G{BI(WfyV(w9k0^&@30oZ`y=_>%!9lqWQ9;|@h&
zR8cpPvVR8>#t&%crI853Flxmh^6*8-2^9TGOE7%9fO}*|D9>Q3!Auu@A43^&%J~VN
W;W=KAFHg7>7Er+yma&3YnEDHNw<1*l

diff --git a/build/classes/java/main/Model.class b/build/classes/java/main/Model.class
deleted file mode 100644
index 5d858bfcb70dbf28f83d9ed1c56ce1f4d1db1948..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 5035
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
N3$6Pr{)WG!;=d)s&>8>$

diff --git a/build/classes/java/main/Model/Model.class b/build/classes/java/main/Model/Model.class
new file mode 100644
index 0000000000000000000000000000000000000000..cb1d5740f8d1f3bb9c5085b7958d3a4bd15e9f7e
GIT binary patch
literal 1618
zcmZ`(U2{`K7=AV<$!SkcO8E$d^h1%hB&iZWC_>r_wg!qRpn-N^xY;I$_CT8BoSYQ&
z+8OWs0bY9Jt<DgOFyjyKm*`(`81>oR=0m{AWcPjdefN34o;|<+{o*$OA7jHo43>?!
ziv*GaqmSgSEH-3wt9WbkkyncZk_&#*kCp_iTz=igkicQ>)Q<c{@oE^#uPS~ka$v(6
zMhdQtw2KiO5J;^Bb+1v>tAP8^550%})^_BDEk>&JQ4~PQ#zBFD{ln|BwO#cHJZgZC
zxX9qBKtkaV;J^R?{YonMF&D>G<jhVG1)=}7S04<jJjPv2D34^V5wz<qbu{JT9lR?L
z-wORYv#wm@UQ`P)-@{28(=KK(D=^%%2n^MN#&XbZvO{83!JJgic^3ucITQv@v{hO1
z4wnyHoJLV#B$Um1uyZ?T`H>$qnQJaz>1xHUP)gw}&e{0T#d%y1Nca1~S~&|@XR4W;
z>A}FfO8NUKTvS&-Vyylx)nXf$+2L-8UMvR-ShTU^k`Gt9mo(&>jJDY-ld&eiii1n|
zM3H5glgO>E=GWPls=w8gQ9JYmW(KCBVlKR;wxyE5^nf2L`aidk+`u$ctoSlHrH1b}
zy_@ZwO)tD7Hyb=TR0(Rbu`WYj>HCNAXxk@M(v<-wGWdvMv@aWeOPU$jti;rk@SAn-
zseq%1V*;>eN+}!acF$6pKwT}{BV74S*K{?Kwa07n%l)jJYS0dA1XOuDI<?bkQaC}L
z#P}|4{z*x$P{h+aX{C3*EC{Snj^R_Td=ovrOr8Ai>B>&F59k)<1g>$tPTTjebi8t5
z52ElA_Psp}ci>PQrFf`=!~N5-zL+h{bud|&dxjGooKkzPgSnrH7{e;pSqyVMf;e18
zPb16k!3?D{%=QBFUBno3KZYChI%+b&XQ)sE%DQqsDy-qA$y2P*CrR6`HJ`{N#(%(A
z;Tco=1@HfgGcjy@lMp}t^QSgW7^7p1^ZzwY8e{gY#!TE;$6mAkq3W`9UGuC37-w}8
ztY93I{LNyDPjnKOnfEeh_Br<rPEzt~5O8l}TG#o2w=8zz7H=fz*OeA~(tRQtD=Y2w
zV;8r1L#XPBJ*&I5i!Ufy`m9PRjysg6F!TzR_zTBhA@;_WB?do0rlah#tuZHF;?lk6
mD6yY&-#-4%NT(?6;p$JsH1kYq-<+<)HTU-O6S%9r*8c^U%}^Tv

literal 0
HcmV?d00001

diff --git a/build/classes/java/main/Position/Position.class b/build/classes/java/main/Position/Position.class
new file mode 100644
index 0000000000000000000000000000000000000000..33bf07ad87f3b9a313773bf30224819c611ade2b
GIT binary patch
literal 1413
zcma)5+iuf95Ivilli)OMdVyYOxwO=Ap{Cp+g-R45BBfB#st@qwB&)`);|;b`#6R&s
zB`Tyo@Bw@jV%BzuQBBncYiGyj%sD%|^XvENPXHTuUPKCM1sN4t<QPT|%p=pVO=sVD
z&s)N6GvwAS$MRn=q_yf^0eKV@6jfY;$}qMqJj=I)V+;a<x#BYet4rvJin7F|Tf(l8
z;FyXE#u@Uy*zsM<*=JbR8Uya%BDHE`=pzKyBz;oF6fP6JV|txU(dG<OiS)WePpg>0
zEFFM<>YKL5pe12rO7EHnyye%b9~iP)y<Xj8$b>58hUM_L{ce-HyJpiS-AY5WOnc9C
zExC`98NXwZ&UnI!sI^<%?}+xc>6%^cbC-Y<TEantM%Ni8wPb5dNcCZVBG(MX9np7N
z{Iw<hl?F{+l}KvB;5tWN3gLUcYxY7vUO9(5MXbV5a970|?lCM3tGj*2x4PU2RU!&Q
zp*g6+a2z*kIY;7<8zJzG>9lR`EjENW?DuLh)6u2IG7)k2OOL<eUdy$5zHsA|P22Rm
zcp|Ft@obT}`af?e>Qx>O7!-P^HF}q23h65`sCCETZlJ?G1y324hK)GqU<zss^XEh9
z2Er~-hx0UZpsyl_h@y%d5?XVhhle@(bCq^max!Tx>p#Hs*%K)G+zCp@luBVff`cFn
z6kiLWv|gtjk%H1Jh-C2;ZctoEQCj|_NhH;qq$icuXq8Y!KgB5Ujl#1EY6yuG#%K^1
z6X+Ab*9*~SuoThPNlf-5udkfq%K!LNAtsV1G;U#;Dlj_Hz=#p-fvo-=%6T@jQ5i<9
vNFtXmLe4-7PFjUd>j?P^Z!^5hl_1A(8yWI?9}n>ek11Cqk5BLn>zMunNuC~!

literal 0
HcmV?d00001

diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin
index 99ccfdfd3ea2fd7ca14837d733baf60e85e1d94c..602a1e264d73293219aa1caa066dd595b27a20ae 100644
GIT binary patch
delta 373
zcmX|-%TB^j5QeA5n24N%iq}HbD&P&Kf*0_HR`gWRCOm-&v5g)>C@GbN8=`3m=+3ur
z=|lM*mIhtT%>RFr%>3Ty=NJKiAE9csxWlc+cj!y#gvK$%CX_IEjN2xGR|>A*M8JEh
zwQD{vOtL8q6FQAiaMflr;%g((nM8CJ-m-Hz&lcFCE-EqTGyd@Cn0AZAp>H{s&0kD|
zO3)k1gGFJ9EwdF}#u$lHX%*KxdO}G;SGNqaPEz0vY5=b58<-@iP25tql{9>)_YQB@
z24|BDy#EgYi>iWYlG(v*Nz6gFZao{Vz}PLxxjo$14wO82n#~PT0M{>pd8i#>{*Dxm
z@r0eKViDYi!)aihv2#@}QWY;)iHTGS#7lO?WGXS#s@F;x`hPK!3iO7F2HZ{c7R#g}
H`0v6mpQ}|g

delta 102
zcmbQl*2==gz`*c`(KkOOHD@F5O2!~&PCYJ$HZY%?p*1V9ED@-HiHj$ISA~m@p^=}V
vBfmJaBr`uxKu?gN#j&7(8ze6%q#`KH&}1m0C(6+3UX+;v5@i%+1d<E@+07Lg

diff --git a/src/main/java/Activation/Activation.java b/src/main/java/Activation/Activation.java
new file mode 100644
index 0000000..35c9102
--- /dev/null
+++ b/src/main/java/Activation/Activation.java
@@ -0,0 +1,6 @@
+package Activation;
+
+public interface Activation {
+    public void activation();
+
+}
diff --git a/src/main/java/App.java b/src/main/java/App.java
index 10dda1d..f2ec687 100644
--- a/src/main/java/App.java
+++ b/src/main/java/App.java
@@ -1,3 +1,5 @@
+import Activation.Activation;
+import Grid.Grid;
 import javafx.application.Application;
 import javafx.scene.Group;
 import javafx.scene.Scene;
@@ -21,6 +23,7 @@ public class App extends Application {
         Button restart = new Button("Restart");
         VBox buttons = new VBox();
         HBox total = new HBox();
+        Activation activation = null;
         Grid grid = new Grid(1000,1000,20,20);
 
         root.getChildren().add(total);
@@ -37,7 +40,7 @@ public class App extends Application {
                 while(true){
                     try {
                         sleep(50);
-                        grid.model.activation();
+                        activation.activation();
                         grid.repaint();
                     } catch (InterruptedException e) {
                         e.printStackTrace();
diff --git a/src/main/java/Fighters/AntiFire.java b/src/main/java/Fighters/AntiFire.java
index b4a6d1c..148d821 100644
--- a/src/main/java/Fighters/AntiFire.java
+++ b/src/main/java/Fighters/AntiFire.java
@@ -1,30 +1,25 @@
 package Fighters;
 
-import javax.swing.text.Position;
+import Model.Model;
+import Position.Position;
 import java.util.*;
-
-public abstract class AntiFire {
+import Grid.Grid;
+public abstract class AntiFire  {
     Grid grid;
     int colCount, rowCount;
-    List<Position> firefighters = new ArrayList<>();
     Set<Position> fires = new HashSet<>();
 
-    public Model.Position randomPosition() {
-        return new Model.Position((int) (Math.random()*rowCount), (int) (Math.random()*colCount));
-    }
 
     public  abstract Position moveTowardFire(Position position);
     public abstract List<Position> next(Position position);
     public abstract Position activateFight(Position position);
 
 
-
-
-
-    public void extinguish(Position position) {
+   public void extinguish(Position position) {
             fires.remove(position);
-            grid.paint(position.row, position.col);
+
+            grid.paint(position.row(), position.col());
         }
-    }
+
 
 }
diff --git a/src/main/java/Fighters/Clouds.java b/src/main/java/Fighters/Clouds.java
index 1ceaa9d..aebf985 100644
--- a/src/main/java/Fighters/Clouds.java
+++ b/src/main/java/Fighters/Clouds.java
@@ -4,10 +4,17 @@ package Fighters;
 
 
 import java.util.ArrayList;
+import java.util.HashSet;
 import java.util.List;
+import java.util.Set;
+
+import Activation.Activation;
 import Position.Position;
-public abstract class Clouds extends AntiFire {
+public abstract class Clouds extends AntiFire implements Activation {
+    List<Position> clouds = new ArrayList<>();
+    Set<Position> fires = new HashSet<>();
 
+    List<Position> cloudsNewPositions;
     @Override
     public Position activateFight(Position position) {
         Position randomPosition = next(position).get((int) (Math.random()*next(position).size()));
@@ -25,11 +32,24 @@ public abstract class Clouds extends AntiFire {
     @Override
     public List<Position> next(Position position) {
         List<Position> list = new ArrayList<>();
-        if(position.row()>0) list.add(new Position(position.row()-1, position.col());
+        if(position.row()>0) list.add(new Position(position.row()-1, position.col()));
         if(position.col()>0) list.add(new Position(position.row(), position.col()-1));
         if(position.row()<rowCount-1) list.add(new Position(position.row()+1, position.col()));
         if(position.col()<colCount-1) list.add(new Position(position.row(), position.col()+1));
         return list;
     }
 
+    @Override
+    public void activation() {
+        cloudsNewPositions = new ArrayList<>();
+
+        for(Position cc : clouds){
+            Position newPosition = activateFight(cc);
+
+            grid.paint(cc.row(),cc.col());
+            grid.paintCloud(newPosition.row(), newPosition.col());
+            cloudsNewPositions.add(newPosition);
+        }
+        clouds= cloudsNewPositions;
+    }
 }
diff --git a/src/main/java/Fighters/FireFighters.java b/src/main/java/Fighters/FireFighters.java
index 5ac5176..32eaa51 100644
--- a/src/main/java/Fighters/FireFighters.java
+++ b/src/main/java/Fighters/FireFighters.java
@@ -1,20 +1,26 @@
 package Fighters;
 
+import Activation.Activation;
 import Fighters.AntiFire;
 
 import Position.Position;
+
+import javax.swing.*;
 import java.util.*;
 
-public class FireFighters extends AntiFire {
+public class FireFighters extends AntiFire implements Activation {
     int colCount, rowCount;
+    List<Position> firefighters = new ArrayList<>();
+    Set<Position> fires = new HashSet<>();
+
+    List<Position> ffNewPositions;
 
-    Position position;
 
 
     @Override
     public Position activateFight(Position position) {
         Position randomPosition = moveTowardFire(position);
-        //next(position).get((int) (Math.random()*next(position).size()));
+
         List<Position> nextFires = next(randomPosition).stream().filter(fires::contains).toList();
         extinguish(randomPosition);
         for (Position fire : nextFires)
@@ -29,7 +35,7 @@ public class FireFighters extends AntiFire {
 
         if(position.row()>0) list.add(new Position(position.row()-1, position.col()));
         if(position.col()>0) list.add(new Position(position.row(), position.col()-1));
-        if(position.row()<rowCount-1) list.add(new Position(position.row+1, position.col()));
+        if(position.row()<rowCount-1) list.add(new Position(position.row()+1, position.col()));
         if(position.col()<colCount-1) list.add(new Position(position.row(), position.col()+1));
         return list;
     }
@@ -55,4 +61,17 @@ public class FireFighters extends AntiFire {
         }
         return position;
     }
+
+    @Override
+    public void activation() {
+        ffNewPositions = new ArrayList<>();
+        for(Position ff : firefighters){
+            Position newPosition = activateFight(ff);
+
+            grid.paint(ff.row(),ff.col());
+            grid.paintFF(newPosition.row(), newPosition.col());
+            ffNewPositions.add(newPosition);
+        }
+        firefighters = ffNewPositions;
+    }
 }
diff --git a/src/main/java/Fighters/MotorizedFireFighters.java b/src/main/java/Fighters/MotorizedFireFighters.java
index fe9b6a5..a385f72 100644
--- a/src/main/java/Fighters/MotorizedFireFighters.java
+++ b/src/main/java/Fighters/MotorizedFireFighters.java
@@ -1,10 +1,15 @@
 package Fighters;
 
+import Activation.Activation;
 import Position.Position;
 import java.util.*;
 
-public  class MotorizedFireFighters extends AntiFire {
+public  class MotorizedFireFighters extends AntiFire implements Activation {
+    List<Position> motorizedfirefighters = new ArrayList<>();
+    Set<Position> fires = new HashSet<>();
 
+
+    List<Position>  mffNewPositions;
     @Override
     public Position activateFight(Position position) {
         Position randomPosition = moveTowardFire(position);
@@ -43,10 +48,23 @@ public  class MotorizedFireFighters extends AntiFire {
     @Override
     public List<Position> next(Position position) {
         List<Position> list = new ArrayList<>();
-        if(position.row()>0) list.add(new Position(position.row()-2, position.col());
+        if(position.row()>0) list.add(new Position(position.row()-2, position.col()));
         if(position.col()>0) list.add(new Position(position.row(), position.col()-2));
         if(position.row()<rowCount-1) list.add(new Position(position.row()+2, position.col()));
         if(position.col()<colCount-1) list.add(new Position(position.row(), position.col()+2));
         return list;
     }
+
+    @Override
+    public void activation() {
+        mffNewPositions= new ArrayList<>();
+        for(Position mff : motorizedfirefighters){
+            Position newPosition = activateFight(mff);
+
+            grid.paint(mff.row(),mff.col());
+            grid.paintMFF(newPosition.row(), newPosition.col());
+            mffNewPositions.add(newPosition);
+        }
+        motorizedfirefighters=mffNewPositions;
+    }
 }
diff --git a/src/main/java/Fire.java b/src/main/java/Fire/Fire.java
similarity index 50%
rename from src/main/java/Fire.java
rename to src/main/java/Fire/Fire.java
index 19aa564..1e3dfd4 100644
--- a/src/main/java/Fire.java
+++ b/src/main/java/Fire/Fire.java
@@ -1,18 +1,38 @@
+package Fire;
 
+import Activation.Activation;
+import Grid.Grid;
 import Position.Position;
 
 import java.util.ArrayList;
+import java.util.HashSet;
 import java.util.List;
+import java.util.Set;
 
-public class Fire {
-    int colCount,rowCount;
-
+public class Fire implements Activation {
+    int colCount,rowCount,step;
+    Grid grid;
+    Set<Position> fires = new HashSet<>();
     private List<Position> activateFire(Position position) {
         return next(position);
     }
+    public void activation(){
+
+        if(step%2==0){
+            List<Position> newFires = new ArrayList<>();
+            for(Position fire : fires){
+                newFires.addAll(activateFire(fire));
+            }
+            for(Position newFire : newFires)
+                grid.paintFire(newFire.row(), newFire.col());
+
+            fires.addAll(newFires);}
+        step++;
+
+    }
     private List<Position> next(Position position){
         List<Position> list = new ArrayList<>();
-        if(position.row()>0) list.add(new Position(position.row()-1, position.col());
+        if(position.row()>0) list.add(new Position(position.row()-1, position.col()));
         if(position.col()>0) list.add(new Position(position.row(), position.col()-1));
         if(position.row()<rowCount-1) list.add(new Position(position.row()+1, position.col()));
         if(position.col()<colCount-1) list.add(new Position(position.row(), position.col()+1));
diff --git a/src/main/java/Grid.java b/src/main/java/Grid/Grid.java
similarity index 70%
rename from src/main/java/Grid.java
rename to src/main/java/Grid/Grid.java
index 4ce3285..1dc1629 100644
--- a/src/main/java/Grid.java
+++ b/src/main/java/Grid/Grid.java
@@ -1,11 +1,19 @@
+package Grid;
+
+import Activation.Activation;
+import Model.Model;
 import javafx.scene.canvas.Canvas;
 import javafx.scene.canvas.GraphicsContext;
 import javafx.scene.input.MouseEvent;
 import javafx.scene.paint.Color;
 
-public class Grid extends Canvas{
-    int width, height, colCount, rowCount;
-    Model model;
+public class Grid extends Canvas {
+    int width;
+    int height;
+    public int colCount;
+    public int rowCount;
+    public Model model;
+    Activation activation=null;
 
 
     public Grid(int width, int height, int colCount, int rowCount) {
@@ -27,14 +35,13 @@ public class Grid extends Canvas{
         repaint();
     }
     private void mousePressed(MouseEvent mouseEvent) {
-        model.activation();
+        activation.activation();
         repaint();
             /*double x = mouseEvent.getX();
             double y = mouseEvent.getY();
-            model.click((int)x*rowCount/height,(int)y*colCount/width);*/
-    }
+            model.click((int)x*rowCount/height,(int)y*colCount/width);*/}
 
-    void repaint(){
+    public void repaint(){
         for(int col=0; col<colCount; col++)
             getGraphicsContext2D().strokeLine(0, col*width/colCount,height, col*width/colCount);
         for(int row=0; row<rowCount;row++)
@@ -42,7 +49,7 @@ public class Grid extends Canvas{
 
     }
 
-    void paint(int row, int col){
+    public void paint(int row, int col){
         getGraphicsContext2D().setFill(Color.WHITE);
         getGraphicsContext2D().fillRect(row*height/rowCount,col*width/colCount,height/rowCount,width/colCount);
     }
@@ -56,5 +63,13 @@ public class Grid extends Canvas{
         getGraphicsContext2D().setFill(Color.RED);
         getGraphicsContext2D().fillRect(row*height/rowCount,col*width/colCount,height/rowCount,width/colCount);
     }
+    public void paintMFF(int row, int col) {
+        getGraphicsContext2D().setFill(Color.BLUE);
+        getGraphicsContext2D().fillRect(row*height/rowCount,col*width/colCount,height/rowCount,width/colCount);
+    }
+    public void paintCloud(int row , int col){
+        getGraphicsContext2D().setFill(Color.GREY);
+        getGraphicsContext2D().fillRect(row*height/rowCount,col*width/colCount,height/rowCount,width/colCount);
+    }
 
 }
\ No newline at end of file
diff --git a/src/main/java/Model.java b/src/main/java/Model.java
deleted file mode 100644
index 7e6653f..0000000
--- a/src/main/java/Model.java
+++ /dev/null
@@ -1,118 +0,0 @@
-import javax.swing.text.Position;
-import java.util.*;
-
-
-public class Model {
-
-    Position position;
-    Grid grid;
-    int colCount, rowCount;
-    List<Position> firefighters = new ArrayList<>();
-    Set<Position> fires = new HashSet<>();
-    List<Position> motorizedfirefighters = new ArrayList<>();
-    List<Position> clouds = new ArrayList<>();
-    List<Position> ffNewPositions;
-    int step = 0;
-
-    public Model(Grid grid) {
-        this.grid = grid;
-        colCount = grid.colCount;
-        rowCount = grid.rowCount;
-    }
-
-
-    public void initialisation(int fireNumber, int fireFighterNumber,int cloudNumber, int motorizedFireFighterNumber){
-        for(int index=0; index<fireNumber;index++)
-            fires.add(randomPosition());
-        for(int index=0; index<fireFighterNumber;index++)
-            firefighters.add(randomPosition());
-
-        for(int index=0; index<cloudNumber;index++)
-            clouds.add(randomPosition());
-        for(int index=0; index<motorizedFireFighterNumber;index++)
-            motorizedfirefighters.add(randomPosition());
-
-    }
-
-
-    public Position randomPosition() {
-        return new Position((int) (Math.random()*rowCount), (int) (Math.random()*colCount));
-    }
-
-
-    public void activation(){
-        ffNewPositions = new ArrayList<>();
-        for(Position ff : firefighters){
-            Position newPosition = activateFirefighter(ff);
-
-            grid.paint(ff.row,ff.col);
-            grid.paintFF(newPosition.row, newPosition.col);
-            ffNewPositions.add(newPosition);
-        }
-        firefighters = ffNewPositions;
-        if(step%2==0){
-            List<Position> newFires = new ArrayList<>();
-            for(Position fire : fires){
-                newFires.addAll(activateFire(fire));
-            }
-            for(Position newFire : newFires)
-                grid.paintFire(newFire.row, newFire.col);
-
-            fires.addAll(newFires);}
-        step++;
-
-    }
-
-    public List<Position> activateFire(Position position) {
-        return next(position);
-    }
-
-
-
-    public Position activateFirefighter(Position position) {
-        Position randomPosition = aStepTowardFire(position);
-        //next(position).get((int) (Math.random()*next(position).size()));
-        List<Position> nextFires = next(randomPosition).stream().filter(fires::contains).toList();
-        extinguish(randomPosition);
-        for (Position fire : nextFires)
-            extinguish(fire);
-        return randomPosition;
-    }
-
-    public void extinguish(Position position) {
-        fires.remove(position);
-        grid.paint(position.row, position.col);
-    }
-
-    public List<Position> next(Position position){
-        List<Position> list = new ArrayList<>();
-        if(position.row>0) list.add(new Position(position.row-1, position.col));
-        if(position.col>0) list.add(new Position(position.row, position.col-1));
-        if(position.row<rowCount-1) list.add(new Position(position.row+1, position.col));
-        if(position.col<colCount-1) list.add(new Position(position.row, position.col+1));
-        return list;
-    }
-
-    public Position aStepTowardFire(Position position){
-        Queue<Position> toVisit = new LinkedList<>();
-        Set<Position> seen = new HashSet<>();
-        HashMap<Position,Position> firstMove = new HashMap<>();
-        toVisit.addAll(next(position));
-        for(Position initialMove : toVisit)
-            firstMove.put(initialMove,initialMove);
-        while(!toVisit.isEmpty()){
-            Position current = toVisit.poll();
-            if(fires.contains(current))
-                return firstMove.get(current);
-            for(Position adjacent : next(current)){
-                if(seen.contains(adjacent)) continue;
-                toVisit.add(adjacent);
-                seen.add(adjacent);
-                firstMove.put(adjacent, firstMove.get(current));
-            }
-        }
-        return position;
-    }
-    public record Position(int row, int col){}
-
-}
diff --git a/src/main/java/Model/Model.java b/src/main/java/Model/Model.java
new file mode 100644
index 0000000..70769c0
--- /dev/null
+++ b/src/main/java/Model/Model.java
@@ -0,0 +1,45 @@
+package Model;
+import Activation.Activation;
+import Grid.Grid;
+import Fighters.*;
+import java.util.*;
+import  Fire.Fire;
+import Position.Position;
+
+public  class Model   {
+    Grid grid;
+    int colCount, rowCount;
+    List<Position> firefighters = new ArrayList<>();
+    Set<Position> fires = new HashSet<>();
+    List<Position> motorizedfirefighters = new ArrayList<>();
+    List<Position> clouds = new ArrayList<>();
+
+
+
+
+    public Model(Grid grid) {
+        this.grid = grid;
+        colCount = grid.colCount;
+        rowCount = grid.rowCount;
+    }
+
+    public void initialisation(int fireNumber, int fireFighterNumber,int cloudNumber, int motorizedFireFighterNumber){
+        for(int index=0; index<fireNumber;index++)
+            fires.add(randomPosition());
+        for(int index=0; index<fireFighterNumber;index++)
+            firefighters.add(randomPosition());
+        for(int index=0; index<cloudNumber;index++)
+            clouds.add(randomPosition());
+        for(int index=0; index<motorizedFireFighterNumber;index++)
+            motorizedfirefighters.add(randomPosition());
+
+    }
+
+
+    public Position randomPosition() {
+        return new Position((int) (Math.random()*rowCount), (int) (Math.random()*colCount));
+    }
+
+
+
+}
-- 
GitLab