From 6dd4cc2e8c40ddead13eb9062db6c7f1dcbb8b38 Mon Sep 17 00:00:00 2001
From: Zening Li <zeningl@student.unimelb.edu.au>
Date: Thu, 15 Apr 2021 01:31:20 +1000
Subject: [PATCH] Update 0.1

---
 Automail/.idea/.gitignore                     |   3 +
 Automail/.idea/misc.xml                       |   6 ++
 Automail/.idea/modules.xml                    |   8 +++
 Automail/.idea/vcs.xml                        |   6 ++
 Automail/Automail.iml                         |  29 ++++++++
 Automail/automail.properties                  |   2 +-
 Automail/bin/automail/Automail.class          | Bin 757 -> 759 bytes
 Automail/bin/automail/MailItem.class          | Bin 1890 -> 2016 bytes
 Automail/bin/automail/MailPool$Item.class     | Bin 631 -> 695 bytes
 .../automail/MailPool$ItemComparator.class    | Bin 1042 -> 1062 bytes
 Automail/bin/automail/MailPool.class          | Bin 2678 -> 5057 bytes
 Automail/bin/automail/Robot$1.class           | Bin 0 -> 746 bytes
 Automail/bin/automail/Robot$RobotState.class  | Bin 1125 -> 1156 bytes
 Automail/bin/automail/Robot.class             | Bin 4581 -> 4601 bytes
 .../ExcessiveDeliveryException.class          | Bin 422 -> 422 bytes
 .../exceptions/ItemTooHeavyException.class    | Bin 382 -> 382 bytes
 .../MailAlreadyDeliveredException.class       | Bin 410 -> 410 bytes
 Automail/bin/simulation/Building.class        | Bin 380 -> 380 bytes
 Automail/bin/simulation/Clock.class           | Bin 510 -> 482 bytes
 Automail/bin/simulation/IMailDelivery.class   | Bin 161 -> 161 bytes
 Automail/bin/simulation/MailGenerator.class   | Bin 3797 -> 3847 bytes
 .../Simulation$ReportDelivery.class           | Bin 1495 -> 1491 bytes
 Automail/bin/simulation/Simulation.class      | Bin 6480 -> 7497 bytes
 Automail/src/automail/MailItem.java           |   6 ++
 Automail/src/automail/MailPool.java           |  64 +++++++++++++++---
 Automail/src/automail/Robot.java              |   2 +-
 Automail/src/simulation/MailGenerator.java    |  11 ++-
 Automail/src/simulation/Simulation.java       |  46 +++++++++----
 update_log.txt                                |  35 ++++++++++
 29 files changed, 192 insertions(+), 26 deletions(-)
 create mode 100644 Automail/.idea/.gitignore
 create mode 100644 Automail/.idea/misc.xml
 create mode 100644 Automail/.idea/modules.xml
 create mode 100644 Automail/.idea/vcs.xml
 create mode 100644 Automail/Automail.iml
 create mode 100644 Automail/bin/automail/Robot$1.class
 create mode 100644 update_log.txt

diff --git a/Automail/.idea/.gitignore b/Automail/.idea/.gitignore
new file mode 100644
index 0000000..26d3352
--- /dev/null
+++ b/Automail/.idea/.gitignore
@@ -0,0 +1,3 @@
+# Default ignored files
+/shelf/
+/workspace.xml
diff --git a/Automail/.idea/misc.xml b/Automail/.idea/misc.xml
new file mode 100644
index 0000000..1f35e34
--- /dev/null
+++ b/Automail/.idea/misc.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_16" project-jdk-name="JavaSE-11" project-jdk-type="JavaSDK">
+    <output url="file://$PROJECT_DIR$/classes" />
+  </component>
+</project>
\ No newline at end of file
diff --git a/Automail/.idea/modules.xml b/Automail/.idea/modules.xml
new file mode 100644
index 0000000..7ca9c9c
--- /dev/null
+++ b/Automail/.idea/modules.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="ProjectModuleManager">
+    <modules>
+      <module fileurl="file://$PROJECT_DIR$/Automail.iml" filepath="$PROJECT_DIR$/Automail.iml" />
+    </modules>
+  </component>
+</project>
\ No newline at end of file
diff --git a/Automail/.idea/vcs.xml b/Automail/.idea/vcs.xml
new file mode 100644
index 0000000..6c0b863
--- /dev/null
+++ b/Automail/.idea/vcs.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="VcsDirectoryMappings">
+    <mapping directory="$PROJECT_DIR$/.." vcs="Git" />
+  </component>
+</project>
\ No newline at end of file
diff --git a/Automail/Automail.iml b/Automail/Automail.iml
new file mode 100644
index 0000000..1666f24
--- /dev/null
+++ b/Automail/Automail.iml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module type="JAVA_MODULE" version="4">
+  <component name="EclipseModuleManager">
+    <libelement value="jar://$MODULE_DIR$/WifiModem.jar!/" />
+    <src_description expected_position="0">
+      <src_folder value="file://$MODULE_DIR$/src" expected_position="0" />
+    </src_description>
+  </component>
+  <component name="NewModuleRootManager">
+    <output url="file://$MODULE_DIR$/bin" />
+    <exclude-output />
+    <content url="file://$MODULE_DIR$">
+      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
+    </content>
+    <orderEntry type="jdk" jdkName="JavaSE-11" jdkType="JavaSDK" />
+    <orderEntry type="sourceFolder" forTests="false" />
+    <orderEntry type="module-library" exported="">
+      <library name="WifiModem.jar">
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/WifiModem.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES>
+          <root url="file://$MODULE_DIR$/src" />
+        </SOURCES>
+      </library>
+    </orderEntry>
+  </component>
+</module>
\ No newline at end of file
diff --git a/Automail/automail.properties b/Automail/automail.properties
index a2e6ec2..5617235 100644
--- a/Automail/automail.properties
+++ b/Automail/automail.properties
@@ -11,5 +11,5 @@ Mail_Max_Weight=2000
 Mail_Receving_Length=120
 # Robots
 Robots=3
-ChargeThreshold=0
+ChargeThreshold=10
 CommercialDisplay=false
diff --git a/Automail/bin/automail/Automail.class b/Automail/bin/automail/Automail.class
index 62843ad187fb228ee40a5d26040d3cea93fada0d..2ab9fd12dd68e38ea997f7231794a868ddfcc096 100644
GIT binary patch
delta 368
zcmey$`kgiE)W2Q(7#J9A7&N#Tm>8JZ8CZB2SQ*$D83eKt%M$f-67$ma{gbj%lS>#G
z*laTMGE3|j8JIOR!#Ei@7&zG(xOf=28F&~O1QSb3@^ce2bMzgdjENzNa_kIzj0}8m
zsi6F%{1T8x0UicH2BC@OvV2?&ybK~BD@7R@3^gV<GD=OBWR#fLU^!WzQIm}^laYbZ
zb8;AC@Z^n*$%z~cObiSRObm=5-3$y2j3B$gG$R8mgBSxNgE#{N!zKoH237_J24k)5
z42)XZTN&83WcM=gZe`$SHe(TGkzK?ft+j=LUzBAx18<~`wkXSX2I1fq7RKfOpH41i
z(uxpakYkWykY->3nZY2#Aj<#(#$dY`!D4a@@?e)3Gbk`fGcYqKGB7ZRGcf&U5Mf|t
bXW(FGP-16LVPs@r_{AX0z{sEmcC<PGs<S%=

delta 357
zcmey)`jyrE)W2Q(7#JAL88p}#m>3xZ6H80-a}zUj^c|rLb_Nzk27#=^vPAuy#JqHU
z|D>$c<dTUqWhX`{axyZo*<|Krme@`FV(rAmz|6qQ!@$YF$H>5}p&7=>z{nuL!@$nK
z!OkGW$iN3TIw(IWzXT*J!o$GIz{bTO$RGyNCqD6j*<?dT^~nj0fozPPj0}vKlh-q*
zCNeTGGcYhPF))HuGcYhPg3JWdj0~I%Tnvm1+zbp18yMIbSQ!`?jJ38i@MvjoW#HG6
z-OC`jl|h)<jAc24gw_@YVNsUd41$q5+M+Dm8AO9ySQtfFWEcK_F}ajUD~y4`m_dp`
zngIli!8S00Ok<E?kY!*3v*Z}$8JHPF7~~if7~~mP7!(;87(^ME{xgU(u(C5SvNI^L
TGpH~!GBAiRFfyotovaQ3xI8)W

diff --git a/Automail/bin/automail/MailItem.class b/Automail/bin/automail/MailItem.class
index a7c448693495b3db5f22c336e5b7ff348c696be8..b7c555714d8f522def3fff93345f62e49c16cd2d 100644
GIT binary patch
literal 2016
zcmX^0Z`VEs1_m331TF?924;2!79Ivx1~x_pfvm)`ME#t^ymWp4q^#8B5=I6#o6Nk-
z5<5l)W)00SP6iGJPId+^9tLg(9!3Vi#L|-d+{DZrec!~)9M6)}Tt)`Ll+@yq%)G>s
z%>2Cgw4D6>B1Q&APc8-y20k7Jeg*+X29Aux;tc2flvJ>po?Hw<48rUTB0LPD3}Prw
z2reng%u8ovU@uF|DNXfHV`LE3@YM7{xDlej8ssVo9tKGUDMkjS%oIijA?#{oco<|s
z&gMxhD#|QN%!x0_%uNMpmgiwm07<Zwr)H*Slz@bkco>u!R2Uh!ic^cqGLuu?Qd1cj
z7+p9R)EF6@LB3T0dDqHH!PCV`LDj5Sp+><GVycybs!57Mje-jz9IO;njX*--VB^6G
zxEM4TG}#%nK)%*yWDrDn$}_JdH9fV6kwFaAvrutsP<ZL`Fz7MpGcvHH<rn29mM}6{
zYG8Uf8c7Heo7PwY50nD<Kt49&VK8PeVPs$jMUQV{0V4xH#DLNga0C}vb2FGRn6ooj
z@Gw|1STQp2g53<0Wn^GZPc30&P(yYJ7HgqGARBFX7;Hho&YGNGnpXlc-JXZRfx(fH
zfw`cxgpt7li%}3KA*E0hKS2!#1+Fs>g9|vdW#*NHfzl5<gBvWI!EO#IN=@}mEZ|~r
zWngAx;0(@8&r2*RElOo%Fo#$IR^^*mU<2WT?Sw@F79l%pMg}$wPft(HFh&LzNc!gY
z$;?ajE6q(xEec6Y%1H$!&HUuVoUp{AOb{O`$WoG#S<J{F?1Pb?tQi@&Kp6^_lX#0$
zOM;P7B#VX%$U2Uad`MnkWDwE763L7VJn5+=pcLr_$&sw-sU@B%j0}9~sU^^K8<Lru
z%E-W(o>~G)ri=`%pp;+$au+zJQ38OGfdwSX$iN$1l9-(Bn^*w#3x`c|4z$GJ3eGPr
zN=|jl1bLhnlxaYDMh|2dgCYY50}}%S13QBVs4QV%U=RUiU@$Gqzyqcgz%&ymBQh{B
zaDfsFm^NlGVPItNU|?WiV(?_(WME`qW$<EPWbkHSV5nwbVqjrlV360^&cLW8y_JDo
zOKTeg?+ymRtqkH?GFus>wPd$4$ZZ5`_F-UPkYZqCU|^7AU}2DF;ABu>5MfYckYrF|
zkYiA0@MU0N(1IAp;K$(400Qz10Sr70j36sOr3u&*@}S~_fti7kA&?;m>JU2yW(H;k
z1_m}Q^{otw2>U?!je$Xpft5iWY`z%S1U9(&Y+&y)GB7d(GlW3Riez8~+o&(3%D$I@
zDUw-h3xjxYB#YJ-2I(CP>cNq$T3Z;{!7MhdEevuX)(!@p4RBAgfwgOcErd8;A8H{Z
zLnwm))Ea#TkhKg9VAIy1X*NdE%nH{W26rQ}W^r_zt+8qj$7-`Qy3Nj5HAi68EQhYy
z8>?o1xaNt_Xfo5<&S0>ELEUE)gQ50L22&=60}L9zI>#BLH!)a8vLtL~u-?I-?hBID
z*~wtX%n+`#jll_I8#4na83}=tNiYKkLkNQ?LnwnGLm1d*1#luTg9aD}gC0X9Llgre
zgD8U{Lo`Da0~13G0|Ns$1LI!?Lv{uYb_NXw4u)6;P=tY!vo<(&Ffi~lZ)ULG&EOij
foxy!GgCQt6F@o)dBqu)x76yL?Mus?Wq{RaOTv~^)

literal 1890
zcmX^0Z`VEs1_pD6D0T)WMh3ye(vtk##LOIh-^9!u&yv(!b_Nzk27#=^vPAuy#JqHU
z|D>$c<Pt^(!IaeElFYoslFa<P__Un-{31pMMo&ftrpy#Z1|c7WhTxK-%)E4KMh2e5
zqN2>Q#GLq&%-mE)2Db9l%=C;BMh4d8{L;J<Mh5nb#NrI!!~#YJeu(zc60kc8tQi?N
zgEQ0f5=%;pQW+V{QDto)T(ILj^GZ_FQ;V#z2-#UPGH}===Vaz(me?^eFl%UrF*2|?
z=clA{GB7fT@Gx*Qu(30UF)|2(oes7;q$oAjH?e?=L6kv)he47-kdcAS25bOGk2DVh
z4+AgAwV8RTex<odsYM})Nja$?@8>5c=7c2{WrFxnK{gFfPfyJ-E(T@>36OS09tKth
zHZBH624x-w6$VvC1`bdFfLsK2o+lTBI)f%Vg9b|QLqd~>L5o3~k%7G|F{d=uKaG(=
zRKrsf$<q*3)*x$ic^KFkI6y3Y9tKVZHW15@hk=WMjgf(+BqOt!kwMr8Bi5}M8Mr_Z
z42xNgl6;7nj0_?gSZv~8uwZ0x2BjGVP@=K2Qt))KQcyK3R;W>MghacQf~rZ1LXCn8
zBHdUis2YKU!oev4tbmKbiou4R!5S71$k7V&wJjrq7^+`kaSjSDdmaV{21iB)wzT}B
z+{6+_21^ahP>Dtof~00^EIwjn;7Ly{0XfzUlDJvZQ%gKk7#aA|Q%j&;3IQi%&h*q0
zhz~$<tIW;d!QjQt;K|6qi%3bni3L0i-V8pB49w}NC5#Me$nL`82&fRqEI%Fwe}(`?
z2Ihj&5=I6KEE@6q2Wk{3V1sxVg24$bGp{5Jlyn#wSV3vd0F(y6jztb`YeohZkSrqu
zZ*WOsa<*?`0W>Ld1?QI*C8xS&f)YC~DAqxdt_L!KL6L!xfti7UfsH`~l)f1l7(_q`
z5KMD2uz_hVFwF(ZatsU%T%c^kz{tSIz`(%7z|X+Jz`-EEAjrVTAjH7HV9db800R8X
zn;C?6Gl)iRXAs}aAhi*!SO%;eq`-rLg~5|S7A(rZz{nuUAO|&|nt_Rdg@J)VUTZsp
zyq5G<1_dpxZ462~7}T~h=xE7oWzf@--O6BqFi;BYIvEBQ23ZD91~~>126+Za1_cH=
z21T$1S`gzHj2MhT4r7pKFkxV0U<6qK%3xsk%7Zc(12Y37gDHa<)FF`!tYB68Lgwsy
z8JHuPwYD(m1V^%HZDG*c!C)C2$*Q%5K>^HS)7rvd0AlT6u-gFk6Ue6!OH{#*;DHzg
zbp#`W6N4($8hr*vupHR5HE5c3ku<ZyH9N!Ih^$!$-DXp)nq9EktcPy1EmqC0ST!4<
zYj(w|Sp}|nA_Frx(V1y&XK>rWVCl1oK}vfkgF6$$0R}5yo#PDBn;3*6SrRrg2=8F9
z^aaW4>}2p|W(e2W#t;ayjhO)y!b0Gv^=05-@M92V@Mkb&2msrx05KgJU>pp33?U4m
p42%q-42le4451864B-q64BQNie;Ewf8LZeDtQZ&>BEVrE2>>LHaL@n%

diff --git a/Automail/bin/automail/MailPool$Item.class b/Automail/bin/automail/MailPool$Item.class
index 3d1e38b51eec6c8c4e1491fb8dbf424bf38c1fc0..57d68b1c09374ced969c23f22b50f4af1f8b375f 100644
GIT binary patch
delta 474
zcmey)vYl1@)W2Q(7#J9A81y(9m>8JZ8CZB2SQ*$R@=8w3m#^ny;9%fnXW-&t;AY@q
zWDv+oEKAhSNz6;v_fN`7O)g<%V6(~0%Pg^DWMJ0N3<DX#$HTzSAi&7LnOW?YTJBkr
zn#;(*7{$dP#30PhAi~2S${@zbAedNMlAoKHnWOKUn3)4n#FL&{;*wfi;+B)2Uj#PK
zQw?OG1P_BGgA^kJcS>q;NoHPRNoIZ?BLkx+NKS@_L6$*oqMr&^az<iNdMYCWqszqU
z#*_6JGwM0~Qj1GG@{3E@8MM)D49L&VVPxR(%*#tHa?VLCE>10GWMBcggF%6TiGhQG
zfq|8Q0c0-&2*@)ifGCj1z_cub90P-Z04Sgs7#J8C7#X-36d4#9lo%Ko5<tPoz`#%~
zqouu-fl+Ha1G^T>Rt8=zoox()TN%W)bha``Z)9L#U}8{aU|<jfTO`52$soeO#~{fd
z#vsKY%^=O70+wT9U|^78P-Rd9TPp+dEZBH;uzn2&O)#y+pu@nxz{SAGz{H@%pv%An
E00WLoxc~qF

delta 462
zcmdna`klq^)W2Q(7#JAL88p}#m>3zv5=%?+a}zUj^nDXEa{}`7b5uM_QghiESQr@u
zvJ%S@^>Y&Q()In5vQm>v7#X-zQj1G6^Abxk^Ya)P7(FL`QJH8g!^z0NW|NthSz<R?
ziP5;8lYx<epND~yfs2cQnL&_;ftx{yk%3u5GmMKtgh7m*L6ng}5XD}Ql{^gM3=)hC
zJn5+=E~&*OZaMk+MPOZ?AoHYn7+4wDKr9&^26hGxMh1SL%)C^;(%hufqL9R-oK!{z
zA)ox@#GJ6n1&qG+Jf3-ZsYT8?iN(dK#q12K=r)3U%E-V1vY3&9!!NbC#3R4Bgh7FU
zk%5_k0gPE0*cd>7oq>aaK|lcH9|i^nMg~R(ZU!C(Mh0F628M73Ca_v@E$yugd|KNX
z1hjOvF$ix>Vvy9**~%cjk%57Mi9wcufkB9Yg@J)VjDeFuoI#L5f<cTyl0gnE!o<M9
oAkHAqpa8OrK^){eu&Ih*y-Ezq3=9lhV0%><)EJl;)WPB^0BV#{8~^|S

diff --git a/Automail/bin/automail/MailPool$ItemComparator.class b/Automail/bin/automail/MailPool$ItemComparator.class
index c805875b7dcc0b6cb1b79f61cc9a1ab251999238..14d2812a6cf864e01e29eb8416c4341994357ec6 100644
GIT binary patch
delta 581
zcmbQlv5Z6f)W2Q(7#J9A81y+Am>8JZ8CZB2SQ*$R@+wbEkhkYz;9%fnXW-&t;AY@q
zWDv+oEKAhSNz6;v_fN`7O)g<%V6(~0%Pg^DWMJ0N4C7?rW8i0J5a3}DWDsIx5Su6<
zCd0_UoswEyl9`uSl9`{!$iV2y#lXZM!owiSAU0W)(LsuxL4uJ%1Z;9?NoJ0|bAE0?
zVo_pAe$m7Zg^7nkC-*a^PL^g0p2Q@}$>En;T;h>mTr#<uNwS{DGcPZ-$T=smxHz?#
zk%7;%BsCYIn~{M9B*37^z{J48z{nuZz$hR9@*4vK12Y3712=;t10#bJ0|SE{0}}%i
z0|Nt>miAT#My>4(>>C*v7?>EO85kJY7#JBC7~~ja7#JADAgUN-8RQrk7#QjqxWL9S
zGBAQX12wFRfr){Ifq_Ah*-m>41Fy~&2Hr&s94vOr83bVbB@C=gcCu^0?f}^##lQyA
zz`(?y#K6m-%pk;|!XV3_${^364z^bdVj#?321N#W1_cJj6tE^m1_iM5<r$P1gcz6^
zlo=Qp*cq7qFbFa72sko`GN?cuX3oIOz|6qFz^kQwfPqiv00ZAP24RpRFg?lx_B1cZ
j!pZlTC8e1dv>0?47#M`WHfb^FGB7gmF=#R9F)#rDnVeC8

delta 604
zcmZ3+F^NOq)W2Q(7#JAL8T8p1m>3xpCVmu~Xuu`O&cMRRAdr<<mZ+bTn3t~apOlrF
zT*A)4Hkp@Ea-xkaCnE!!O=ezZiQQxsMg=KO21W*69tL&>4lV{}27Vp}P6h!+24)S-
zu*oirp%c&8adR?AFi5d8NHQ{rP5dY(&%+?iAj8POoswEyl9`uSl9`{!$iV2y$iS3o
z$jBfu@q@(V?TqeRTnvm1Dm)CL3}Tc0ndB!i1=jO;=H;apIp-u67pE4pGiWn12qu=6
z<mV=4=IHw-X66Ls=jSjouy~fF<}xzyfhgzv+=9fS#FG3XMg|VQ)Z!A4{NfS@MFvI&
zW(GzERt81^0g%HP7{Gi^29TZH3=9k=3``763=9lhTH0F~c(k@N@NHyZsAphe5M*Fr
zU}IopU|^785Mp3p-~qF_7=#%_7#J8BL9S(BWB?h_#lXbC!oa|w$ZV&*g+W|r3xoI~
z1`Zax<qQHa{t^aOCOg?RVB0|kOEIu9Ffhn7Ffk}F@G>Ye@G~ee$TBE1$TO&dEURbG
zf|v-kje$XtL6$)d>;gpwc?LPKqvaVC7-Sfj859{97}yz@{xAqJ@(4IGh%zWa9j42`
z%)rdRz`(1eeSkqi=KzDmHU?#oBanT^2(l0y1S|}y3=9lR3~CJO>R^TjgC+w5gAfA~
Zg9L*XgAM}|10#bLgDwLjgC1C33jkcHQ*8hM

diff --git a/Automail/bin/automail/MailPool.class b/Automail/bin/automail/MailPool.class
index da791cb42c34ef784d112335c4fd4a04fff77586..ddfd65a1ce90d47af19fafdac9c39650162df53d 100644
GIT binary patch
literal 5057
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

literal 2678
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
JoWVfirT~1kVaosj

diff --git a/Automail/bin/automail/Robot$1.class b/Automail/bin/automail/Robot$1.class
new file mode 100644
index 0000000000000000000000000000000000000000..7aae8d8082ee8d1157b786a2ce3cde5336bd61cc
GIT binary patch
literal 746
zcmX^0Z`VEs1_m1jT`mSD24;2!79Ivx1~x_p$;8r<{M^LM9Q~mDr2G;UFd1BuSdz-f
zz*d%+Q<_@L$RMYo8SR5pp*1H12LmTN0~ZeiHv<nNg8-UJLq-M_mEiKslH?5E!~zwV
zEW|1Z3AK<Z+LM!kiGh!YfuBKuk%2SFH6%31&(qJHkwF@d{U9$1@h}K8h%hp+=NF}9
z<|XDZGB9gsda^T!F)~PHC6*=X=OpH(>-*&gmnLVpWv1q&xE2-V7lCY(;9-yi*~T93
z=o#Ya=MEB+=3$TliE+8O`gn%926_6qvopvsG6*1y@=wZ2O)g<%;IK)~$;`_vu>;!}
z#>l|poS%})$iVNDnV0HUnwykb6q1;flgh{-<ddJAm=l&*lnLTP1$l!@5|gui6APex
zuHgLAqU2P!Opp#PaBS#-EM;Wicg;)A$uG{#OZQDJ$;eM(XV7G1;Dd!GB>ET`IQ&wJ
zOFZ(6OBfk=JoEBWi=1;3i;F>#2r&#C(gF$$91OAy3=E6{5}-H(u^2cQ<QWtg7#S29
z7#P|Zm>C!u7#PfVFfi`h!?l@#eG>@rZetK+@n6os;tl4CZ(|T-MR29IF$l7Oxf>an
z88{h47{nPw86+5#8Ppg=8Ppk!7)%*N8JHQA7#JAXz{cA$C^IlHFflMNs4y@v2r{sR
zvonY?_`(SW76w(Y0yPG81_lNe1`P%V1}(6N27@*O1A`C)69W^227``+Bm)Nn0|SEq
F2LQ9_qx1j(

literal 0
HcmV?d00001

diff --git a/Automail/bin/automail/Robot$RobotState.class b/Automail/bin/automail/Robot$RobotState.class
index 7a06471d0faeef4b50a6c1f2aab1f1b56ddc5cb7..79ed49a922fca7ef09e6c9aeb23337d1bbb93867 100644
GIT binary patch
literal 1156
zcmX^0Z`VEs1_m1jYjy@EMh3~m(vtk##LOK1p!}r#5*08RT#{Il%E`dUz{118%D~3R
zz~$oV;~C}}<mu<m$RO>5Q;#)B69*3iCrA@}xT9x?r=L4WjGKpn2PDQB<Qfth<Odby
z<6+=u5MX3rR|#|U33Ux-WRQu*V>lOs5Q8u~g8&bM2!kji18Z_leqJgggNTNvPgY`C
zqJB<dUb?=2QdVkmi8U94ID-T`gCq}w6oWJ)10O<xYhGzCBLjO`VoqtQe;Ol$sRoj6
z=bXgiVrwLU;F6-uymV`18$bqt&6nk2kYkW%WMH$&%*!mXV`LCRHVUfKQ!|W%ft8Da
zkwKP&fs=!Q2gFq6VNhdG2YDRqjABLxISoyGUT0)rgQ;Y3&QD2YWZ?J7%uDqv%}q)z
z3Q0`LNo8cv$6~uCp5SC;5c0`SPRt2QEXo9#05ygsFEKY2B!>txs8<*nSV}T7iy0X>
zgEQ0f5=%;pQW+VTH8jH*88~c`bD)8sixhgGpt8Z^1UqX+2Cm@z(xT*4w@i>9xWMU8
z4`ekX1BYK~afwHMaS1zv1tS9=YN}&o;PK4MODzJ&SZXmN14Ju0={guPFfxcUFfgz<
zNP-eD1A~JkC{2QC9tJiB1_3Eh%41+)U}fNB&|pw!U}Vr_U|>*UU}OLRu1yTQ+ZY57
zFbHj6U|?Wm&|+X<U<1nuGjK9UF=#{8n=mkeMY)6+wRSLw9bjMtsb@k_ufxE=zyndm
zpv$1gz`(!+N;V8kU>gk?m>HNE7#P^Kv}Lw4$ZP~lBU^{i&d#6@ayo+nSdF0o7bp!u
z9iq>`0&+KlINM$Z#z^K(49vliESnhEgCkitF>nQgT!rcj4hACzP$+?X?FQAXx0``6
zQb>V$JA>k824*lvi3QAI2XmBJ!5pp~3@V!$ctK7@HIoJEG-C!6uoF!g%)qocgCzq4
P11Q}yGMF=1IY<Hkv{da-

literal 1125
zcmX^0Z`VEs1_pBmb9M$MMh3~m(vtk##LOK1p!}r#5*08RT#{Il%Fe*T$iSDCSeB@t
zlbDyT@0wSd%gDgx;_BlW<{ISb=g!C=?SoUdH6sIixT9wXSRH4OYe;C2ADGSU>KE#(
z66WX=>Ke?*AQO$(2o9U%oXot;5<5l)W)00SMg|t={FGD<239TxMg{>M20;cPMg}$;
zs1h*^AB1y*ONuh{(ycu;!#Eij8ANy(SQ*$j7}!A^aUKSC5QhWAk>X+CU|<8WWOx`j
z8Mqi3_<b_-QvFJElTwR95|eUL85x9p@{<#D!V-%zL42?v7Xvec03!oSNk(QdBLiDm
zVoqslF(ZSVh9*8AaWSYcsIfDsGBOAtxwNvlBsG_ZL7hQ^k%2R@s3@^AIlrKikwFXD
zKmJKssmUeQo=9GV33-A-h8^q#|1?GhePnIWV9>-9%pkAm@GxjH=rS^xBI|X|Nh~h5
zMzRoY7{c+ORAJ4?z!jWdT9lmXmI(?jE^s2!11Vx;;0(@8&r2*RElOo%&_yx}q|pYC
ztL&^98F)PN@=}Yy&PXk0XE0%8;6qJtj0_OFzzLR-fx|DgxWpsBxWvJbfsuikfq{X=
zK@t@43=9sEpg0H991Ls>3<6T1$Ofrk;9%fp;9+27;ALQ7NMvAP00GC{42+RNe9YS!
z_%|~MgE^usV2&7=Bf$#hNV4r^V2otm#2_3T$+C$-EI5*N6N6;%W(Mhv3=9lR46+Oi
z3~UUH3=9my402!*kf<Po5Y#$D24=7`*|oG~wlm0M*93AK0|PsQ0?6GAoD7N#N>J@)
z46I=7Vw)JGBfXim_C?x&+~dnEy@NqnX9L(mgcBIyPT*wFWYB_|p~b)ib|9A!qt*@v
p?E?&qxb?9x=z-1DXD|TMh73jw3=E*W$jD&KVCo>rU<MX91^}D&@uL6$

diff --git a/Automail/bin/automail/Robot.class b/Automail/bin/automail/Robot.class
index 54873ff5cbd973888165384dff98f9f32f788e79..825c0cc9e0fe5d268e1f312607b96f0f717024aa 100644
GIT binary patch
literal 4601
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

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

diff --git a/Automail/bin/exceptions/ExcessiveDeliveryException.class b/Automail/bin/exceptions/ExcessiveDeliveryException.class
index 0d6e88683faf2307f1bb3fe254dd791494a2bdd9..2d57bb828512782c52fea814929fc73bba340786 100644
GIT binary patch
delta 105
zcmZ3+yo{Om)W2Q(7#J9A7=$?(m?oy%bF(n8vNN#pFt9UlOtes(xIv7Woq=m2uLdt8
z1G9!^7$XCVbAC$d#A98moD3`sAi&7L$iU9P&A`aO!@$5`%D}|H$iTqBt|i2{oq>6B
HDWf3(7$6X1

delta 124
zcmZ3+yo{Om)W2Q(7#JAL8HCvxm?lotU}k4vnHa9f$E=|l#>l|poS%})!N56@*It2{
zft!bcm4SzmK~%#hE3qt5KPNFST|c;_C^IkJS~G0ou`X3c24)5jU}RuqU}a!qU}Rut
aU|=w1U}9ioU|?X^65`m-z%{v)(GUP^<QBgG

diff --git a/Automail/bin/exceptions/ItemTooHeavyException.class b/Automail/bin/exceptions/ItemTooHeavyException.class
index 7d360f113a93bcd944eb5bc9d8d26901f2713688..9a23918393c07e719e97263677bc4f631a42d0e5 100644
GIT binary patch
delta 105
zcmeyz^pA=6)W2Q(7#J9A7=$?(m?kEvakDV6vNN#pFt9UlOf*)UI7y6|oq=m2uQD$q
z1G9!^7$XCVbAC$d#1##yoD3`sAi&7L$iU9P&A`aO!@$5`%D}|H$iTqBt|i2{oq>6>
HFQXv<Ljn+c

delta 103
zcmeyz^pA=6)W2Q(7#JAL8HCvxm?l;zGqW?WOte$vW7g0NV`N})&QD3@VBnm{tH#01
zz|F(J%D^)*R$}6c231A|W(E*oWME`qWng1qWMF4tU@&E1Vqj!oU|`o0;@Hl>HQATZ
F5CA`x5MBTP

diff --git a/Automail/bin/exceptions/MailAlreadyDeliveredException.class b/Automail/bin/exceptions/MailAlreadyDeliveredException.class
index 85bf1e255d75951054ad85d843a11d84a881c709..be0f061abc1867b8c62d6d1b3edee5e5a55e8c4b 100644
GIT binary patch
delta 105
zcmbQmJd2t4)W2Q(7#J9A7=$?(m?mavakDV6vNN#pFt9UlOte;<I8Th3oq=m2uQo3u
z1G9!^7$XCVbAC$d#4Qt4IT=_OK!A~fk%66on}Lymhk=2?l!1wXk%57MT}y~@I|K9N
HOh!Wh0`L$O

delta 132
zcmbQmJd2t4)W2Q(7#JAL8HCvxm?qX}8?iI6Ffs^dC6*=X=OpH(>xX0%<(DTW<)kt)
zu-RnhWtP}6GB9gshA}d*IOnINaxidC<kjL}X5i*wU}fN$m?$xE%LG+M24)5jU}Ruq
iU}a!qU}RutU|=w1U}9ioU|?X^65`m-z%@CO(GUROFBqu+

diff --git a/Automail/bin/simulation/Building.class b/Automail/bin/simulation/Building.class
index 6678acdcf8ae93daeab7e80009725a553edc9b4c..b77dcadb59fb892c461c5ef9854525dcff1e5dcc 100644
GIT binary patch
delta 179
zcmeyv^oJ?v)W2Q(7#J9A7{s_3m>8JZ8CZB2SQ*$D83eKt%M$f-67$ma{gbj%lS>#G
z*laTMGE3|j8JIOR!`K-(7#W0%GjmIG5=%1k^YoocGjmch^U^0;y0fx4=clAjoR{X!
z&cMXLz`)GF$-v3L#lXNI$-vFP#lXnG!@$76#K6lS$-sxgXJlXmS<k@8z|X+Ipw9r}
QGcd4fZD(Md?9ZqR0H#|WIsgCw

delta 179
zcmeyv^oPmv)W2Q(7#JAL8N}Ebm>3y^i!*aea}rB3^YiqbN;7j(GV{{e8CVz@1hNv#
z67_Qu^V0SGld@8iOC|=n%dy#H=4F=HF)}b~XofK|usG+Zq;fGZGw|~;a5L~soR{X!
z$iU3Nz`)GF$-v6M#=yWJ$-vIQ#=ywH!N9=4#K6fQ$-sreXJlXmX=Pw!;ALQ7&}RVg
Q85mf#wlnZe_Gi=u0HuH)O8@`>

diff --git a/Automail/bin/simulation/Clock.class b/Automail/bin/simulation/Clock.class
index 6c169fe5d8969d75545edc3b0f1e2cb80c815fe2..bfdc433ab563649d473f713a183f9dbb0359953a 100644
GIT binary patch
delta 356
zcmeyz{D?X7)W2Q(7#J9A7$mqDm>8JZ8CZB2SQ*$D83eKt%M$f-67$ma{gbj%lS>#G
z*laTMGE3|j8JIOR!#Ei@7&zG(xOf=28F&~O1d20rOLG!SGV}BFopbV&vnQIVu(CMk
zr=(7-(ww+Wlas?HIR~tL;$7K#4hAL$1_mYuE|6vh1_n+BUIrcp1_l-eMv(0cj0}7X
z3=H}Vj0}tn3=FJV+Zh-)f;I3nFfg!z1(_KH7#J9Mz-(3qK?WhPG29HoP|Y%683qQH
zO$_X77#J8B84!9ic^EhuM8F1t>`?`~hJk@|69YR-!e$0`kX;b<pg>_@5Mbb75M<zB
X5QS@zg__RFjG`RkG!Q8UcCI)8LbfUQ

literal 510
zcmX^0Z`VEs1_pBm33di1Mh1c6%-qtP#FEVXJbmY!{N!wQ1{OvJfvm)`ME#t^ymWp4
zq^#8B5=I7=kj&gvMg~StMg|dIM^B&lAXjJCFi$`Ccpq0k_Ye<81`eC#oXot;5<5l)
zW)00SMg|t={FGEq21W)R9tKthHbw@1pUk{eztY^K)S{5Yq?}Yn1|gsP<iwn?#G*_P
zA1cUZ12%?>ftf*&hk>7glaYa?BqOsJq#WJ3)?mv#!R|}WW@O+B&Mz%WPIb!!na&0F
zksio142lel49pA+3``7MAjdE;FmN)kGq5o*Ft9LiFmNz{+{wkjz@W*%$N&PY%$pgw
zH-a_rGB7Z3F)%SOFt9POFmN*Pfkhb@7(s4hU}OMk(`R4=Yh=~h&LDu$#s(H-25aE~
zvsoF07=*#LvoeT4HLHMS7#LVKF>tQ|8xFD(qL&A(7i2jngDBjUx?txpFmP^S;ATm{
T;!*(y4hBKERz?Ofu(9F*t{+LA

diff --git a/Automail/bin/simulation/IMailDelivery.class b/Automail/bin/simulation/IMailDelivery.class
index bb88966905293af8ebdb81a32c69b4fa75f977ce..2100e1d2d509704156e1a1609a3b874d9de53c76 100644
GIT binary patch
delta 16
YcmZ3;xR8<K)W2Q(7#J9ACUVRK05!@5`v3p{

delta 16
YcmZ3;xR8<K)W2Q(7#JALCvwaL05!G+_5c6?

diff --git a/Automail/bin/simulation/MailGenerator.class b/Automail/bin/simulation/MailGenerator.class
index 5badad3f6cf87e7380200279401e7f23cb2ae704..b1ea86bcd7abaf903e3bc9867d27cd32f00b5c63 100644
GIT binary patch
literal 3847
zcmX^0Z`VEs1_m33lUxi;49x5dEIbUX3~Y=H0$GV=iTXK-dFlH8Nm;4MC5#MgHko;u
zC3cJq%o>_uTnroxoa_u-JPh0nJd6y22<1-s`8lbHd5jF~Wr;bZss3q<3}PBlnm!mR
zthpHY82H&41b7$(8H8YFl$K=X=zAm<XZR)-Ffwo_=jW9qX66-pr&cmDh-x620&$kL
zW)wSv2+X};%|VHIDfzh|!^L<Q#2F+Q8JN>kOBfl{u<6D$kexva<`%H`J@ZOZ(^HGM
z7$g~Fco<|E<QN$^GV@BpK%N7Kg(nw-FoOap+!PrZSTwve!#Ej~8C2LARCyTG7}OaV
zB#JY0OLG!SGV}BFeG@Zt+*9*XixNxnix?T$iolL#WDtTl1jz%|AY++9gcc8jHiHf$
z1AAU-MTuu#3CI>tO;3<5dOQsJ3<iu0e7=sJKJg*`@y<c6jv=m$42)oDBOV50kTgG7
z+Sf56KHSyQ-6I5~)s%<93?#>$o0ys7T$Gwvl9~b%x8Py0WUyjn;7HETEyzhNNo8bU
zi~@xwGf38!hry1)o{@n)F((J)7e)qtB$xXp7FdH+Ir1<#F*q|aaDdDX$j{GVWDxdA
zEG@|g@xfsL613)GP-bxDVQ>S5sYE&?R8n11i%T-|z@g=qlb>G%QslwI;0aPB3{&J-
zRFqkkm=ltjn+lTm=3(#w$@9VF!&5WUGfLPQ{1_PoQS9|BNzLVA@MQ=9#aAFB1Dl4Y
zr>ABZJ3}xdgD_G&IhAJSq-5r$b20=mgz_+ifkKMS&BxzAD45M5lK~9a9Qqx=3{WJ+
z@G!(O#4$4PfFj8~v9!226O;*<H8fo~84?&0*%^{}7?MH82q0PGoRgoN&B!1Ej-Mb`
zXV)-KKlgYaS3ma<50J-Fc^J|d(is_eU><{nxu}LFYH)(QWexIICJ#dvG$cw;0!fk~
z2b5QHLAlWrIX6Pnw>39IJ}5U9Ff#Chvnn_#`X&~D#KqVdiWwP%5#o+TMTwO@nZ+es
z3`Gp3JPc)^49uLEk^<s0gS1rgFjO&AGcqt2l$J0uSYXL}kaPpiW3ar8Da6H)z);J>
zPzUl83naRW7#esO8X1~E`LG0*k;F8hegZq&6Dn@a&CtTo%FfWn!_dyq!N?$l@BvH-
zBLjOzVzFOpMF}`FM}c&7@i25V^e{58fZ~#oK?G(tvRgSB`WX7z87A;BOk|h@D}TTW
zf-8$lQgay@nDaqC7lrsKGhaWTC^N4lxTGjGG1r=dVG1LIY>1VDs&R^fokCt}xk6$}
zN=QB^TPQ@U7RRdQfnswS55shZ8H@}ZCHcW6MVWc&=#GJiT5~bXVwla&Fo%a>F2g)n
zM4?*A$iP+razGj*gAH<IKuw5-I1}sv)Yw2Z#+r*^0mDLehDAIKiy4-n=Pr=*85ua?
zUI8UGED2RJjFEveI5Ryjv81#pm65>@VmUbKd=m?7AY8CpV5t)#1Xcl0dp1~%wzIag
zW@OOT@bpBL1i8!_$q;A_V-0c&i*tTTDySgK%uDqv%}q)z3Q0`LNd*<k`N@enVTnbV
zAU;%(r6eP>n2|xs2PqqaawWV}w`OGE0hMzh`H)hTk%1S)^-ZjRluC>YEXAp*DWD<|
zksM*}VPp{VL9w*5AQfsc7Uv^}6tv!jszM1oP>}Ejmn0@<`z97ZO$#PAh={fW6qMX~
zspX)+0F_4|4`P(P){G1SDQG1;BLjCLqC970U@Hfg-i!<^x!{HbqYEPgTX9KBN@^J+
z14~k3F(|TN1)?LY9)ej7DwP-+pxF*J!B~UqP_P3T8F))Fb5ld|T~c#0%TkLN8MKg6
z2Z1EU$iQ2iS`wUERF;{X>Xw?y$iNFu@*tms5*oDPg9HLsaDHh~a;jS<I7NY!z*CAI
zDE=7~8I&2A7#JAX83aL<IRgWOAgI=6U|?VZ)zAzK3__rG1ekBhU<Ia~7@Wbh9fLgs
zBg0ZKdl>@<10w?~!*T{Dh7}A9jA9I|46F<c4Eb8y85kv5SavY5Z)4z{$)KpUn?X1d
zCLnr%L2?^|bnA8o`K=5}%Nh8<vfCLnwlXMbNwa5g<Y;YSP?BcN;K<p=pqa3hL03y=
zD}$jH^Hv5E5Mi#hn}IKKJA?IB1{*Eitqcwu85kH?7*;YcFz7LGGcYiyFt9MFG6*oJ
zG3YU9GFUR`F!(d*GK4VbGej~NFvKw!GGsCsG2}5AGpu4@U@(C=nPD}<8gSK`&#;!k
zfPoR@4Tg0L2H=3o2Q@Ajn89M}88$GmFo5jjfvQ^1u!(_%VKV~*gD3;je+E4UR(1wu
zMn-mq1?&ub3=CY*(AvVl1gcsY7(rph&;Si9IjwCBF1A|R7~Ji&wlR2_vFv8>jg*lU
zW!cW)@1wl|9L^xGfx?!7!HR*E!J2`K!G=MA!Hz+O!5+yAa!@bGFfcJ}W!MIe8A*oi
zU@venh%oG6FkoP25MbbA*vVkPz{0=;Y6d}FW6r<~_6#ozDC{>egn&XG6dp|AaAgBa
zx`8c&_?j1L855`(1T|zk0~-Se0|SGt2t&As2t%Y7$gFJ)(Uz<dtb8-(FmOn)mRqul
zFoa96iZDcGC-<4Li?VBNVK7|6zy+d~Gq8%XgDhnRTPnrC#=yYf%fQ0m$H2kh&mhPU
zz#z*I$e_g#1a=4{;%uP~VPUXj*u}7$fsuiO!IWVS!)^v<20;cLhP@2C8CV&#7=*#T
zW(P+T9|QA023cli=06NFjE;;9OrW+N)D!3-5sxh-BEb$o4GBhueGH&*0%ZhY24)5p
z1_p)_tt|}Zvl#NVwlSpmXm4Z4u+`eaU?a1GA$uo79uvb%25AJpkcr^{Ly`72hLZ5*
z3<|p$iXyi&l>6y|1z@UlcQRBkGlXkJZecKCNdV=CEes}FTNrc~FmPzGY-KQC{(k}}
zWkPa;83Qi^14AMMJ3|r!s3j=KkjkLQkj`Mqkjvo6kjLQ8kk1gtP{feHP|A?aP{vTe
zP{B~lPzCmz76S`|BZDZzeue`K%nUpXDGUd}NlK6*p5YKUNii^#K!YA+BPc8&>JKw8
zg9DkLftBGeg9ST-FQd#)21zCcMusD>0AkQ)U;rm6Mvz|QG*$<;9b_6v0VGc{G8~0#
z+{?fQ&W9<WAlboCg9yqHWD!VUZeytT(ca0>%*Zg4!Bl%ELnkA{0R~^+O$@z4lUesN
zFhw#$ObCu-(b>i@HFz7t%y6wO3=TTm80Ihke*)w-<fPcfAjHtlV9n6M5W&#NkigKz
ykj&5ncCQ!%6N5E_D#I~`ZQ$}E1sXD-GJ%_c=?{YjJ44Ga1}g?ehU4HIeF6a3#hI4?

delta 2469
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

diff --git a/Automail/bin/simulation/Simulation$ReportDelivery.class b/Automail/bin/simulation/Simulation$ReportDelivery.class
index 01d9be852ee89259d1d5038192494a2d315fb797..1f7a608a2f0bf3e55925b40dbe03673c8fb0c9e5 100644
GIT binary patch
delta 809
zcmcc4eVN<y)W2Q(7#J9A7-F~>m>8JZ8CZB2SQ*$D83eKt%M$f-67$ma{gbj%lS>#G
z*laTMGE3|j8JIOR!#Ei@7&zG(xOf=28F&~OL?;S}PF82sR^(&gXJ-)LVGv{xVq_2o
z8&X=5nWOJmRFqihlUZCcxtLK^kB>owhd~siggG%Kg_A*?L4ut@l7~TxK^n#C;L75X
z)ZEF(7!??0CqHLY_K{~$U}sR|VNhaFW@Hd3&de>%Ni50C&(n9#$xqH^WMB!&%uNNm
z(36Wnl|hZ2L7j&|gF%y#K@jW~u!lVJN>bBPizbILsT%MxX!9`WfJ|d4&a6u1V$fsI
zXJ;_rVK8JcVq_3ZEG@~;P0Y;E_f5>q@dUYLHIs^>34<v+gBcHlIfDhvlbQMY0Y#a4
zCBY>{sfoFhKQMWza4=Z$FjzC#FfwqL<d-Do#HXa@BvvvqFuHIta4^{MFxWFVOpaqV
zVR2$)(3s4_qM^dY;K;xXB3yYG+(5CwUjQ*PF*!S=C^0#eoxx)wuO_3{L|<7}7U%qw
z)QKHclUZ1dCqHCXoovpc&&lDJT3q6hUtBUdg+-yBL4m=Yfr){U!IOc3fr)_u6txVD
z4BiY34EhX=42&QVt?dkq8^O{(3=9lxV8P`Kz6=ZuJYY5}gCB!G0|NsiLjXe{RP#v&
zHU?$}28QrW4D8z57<gwfI6+v#;hPx5gk;$EGB8Cl@2F>x+rgj`9LchYfqff;7MRVd
zy^TRPcpHOp_$CHR?HvrZ$(tE0moo_LW^jz$&fvV?S7#f8%SN!10~rEA;lTiMml6X9
z0|Ucq1}=s*3_=WR8LS!BGk7v=W(Z{1!Vtu;l_88_2iVOD49pBc3@i*m48aUcZXhQ@
zozK7!&Je;7%D~7F#=yY9#lZZV!PA|c!I6c5nIRnP{RoCgFwMab1y;ex;LgCo5Y4~=
E08OQwiU0rr

delta 835
zcmcc2eVv>4)W2Q(7#JAL8DiKOm?ldyYX-3}G6-ZPmL=-vB<7{-`zK|kCYP`?urV@7
z6ldm^<|LM6=I7~q`X*-PxTNM}mZcU|GBU8)Waed-*fBCNYiNcsGO#%3r=)T*Ff(xT
zFt9UlOipF4Qsrb2W)Nj(5Mg8xMKUKCZX^$b7=!r4IBi8q25EK%DMkiiup>%KGIR7D
zi;5B}eKLznco<|DWGAjt)stk9=V4G_kY!|GPE1MRWKd#IVP{ZAad~iMaY<?}4}&U$
z+Qh#Kj2e^W7?pjr7<AYfv>6!$klf&$lb@W;!=THc$H>4El9`(d_J$`Hg8_pPJA)x3
zgCN)?;NbAgD@jdHE#hG?W-yuD%cyD~$zaCAU=G$=oLQC1#bC)`&CX!O$RL<lT9Tie
zn3<yw3Mx;qQ*0P)CqH6TVY6p&WM^=gEXX9r%EREq;5=EK$xB6;!Ig)>jlrFffx9HX
zBrzvGB{e6pl97SYg^NL$!IOu<i@|&HR3;Nf-^r(#bme^*xVad77y@`00vR|M8Tbo|
zGV@A;OA?c_Ly8iUQzr|ss84>#Y&hARMSpT3i(EY;1BYK~afwHMaS4M010w@710w?~
z0|NsS0|O|I7#JBi85kJ!85kKD85kH?wYD>GZ3Ij6FfcH%fdwZs@G>wk@POH@415gy
z3=9m63<3;-P|ar<*cg}@7#PAgF$igIW007|-~?gGg>R~7P!v*U+snWl$-IL>a|eTd
za3sqn2BB>XreHR!_BIBK;B5?c;hPv-w0AIgByVPLS<WD^o53e?JA>bTU!83X{u>z>
z89W&R83Gx67?>GA?otCgdO8Ca!wd!?hM5f346_;B80Ii|GR$WPWLUru#ITSdjA01_
zFGDB;g95~HP=_-xgfj#&1T!!)1TnBMgfN6MFfoKNFfed2F#l%obZ2MqVPRlq2nPp2
V1VbcP1{5~J3{eam4AEe5VF0U`rZWHl

diff --git a/Automail/bin/simulation/Simulation.class b/Automail/bin/simulation/Simulation.class
index a783d4b0ac2713bda772c7af90b274741cafaf18..b673babb39964713c20b90ed6e891a683f424068 100644
GIT binary patch
literal 7497
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
a3=BdHObj^;9E>{|I2d;^?qS@=APE4k^~=}*

delta 4375
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

diff --git a/Automail/src/automail/MailItem.java b/Automail/src/automail/MailItem.java
index 785dcfe..2bdf9f2 100644
--- a/Automail/src/automail/MailItem.java
+++ b/Automail/src/automail/MailItem.java
@@ -19,6 +19,8 @@ public class MailItem {
     /** The weight in grams of the mail item */
     protected final int weight;
 
+    private double serviceFee;
+
     /**
      * Constructor for a MailItem
      * @param dest_floor the destination floor intended for this mail item
@@ -32,6 +34,10 @@ public class MailItem {
         this.weight = weight;
     }
 
+    public void setServiceFee(double serviceFee){
+        this.serviceFee = serviceFee;
+    }
+
     @Override
     public String toString(){
         return String.format("Mail Item:: ID: %6s | Arrival: %4d | Destination: %2d | Weight: %4d", id, arrival_time, destination_floor, weight);
diff --git a/Automail/src/automail/MailPool.java b/Automail/src/automail/MailPool.java
index b4ed25b..7977178 100644
--- a/Automail/src/automail/MailPool.java
+++ b/Automail/src/automail/MailPool.java
@@ -1,11 +1,12 @@
 package automail;
 
-import java.util.LinkedList;
+import exceptions.ItemTooHeavyException;
+import simulation.Building;
+
 import java.util.Comparator;
+import java.util.LinkedList;
 import java.util.ListIterator;
 
-import exceptions.ItemTooHeavyException;
-
 /**
  * addToPool is called when there are mail items newly arrived at the building to add to the MailPool or
  * if a robot returns with some undelivered items - these are added back to the MailPool.
@@ -13,9 +14,10 @@ import exceptions.ItemTooHeavyException;
  * 
  */
 public class MailPool {
-
 	private class Item {
 		int destination;
+		double charge;
+		boolean isNewItem = true;
 		MailItem mailItem;
 		// Use stable sort to keep arrival time relative positions
 		
@@ -24,7 +26,7 @@ public class MailPool {
 			this.mailItem = mailItem;
 		}
 	}
-	
+
 	public class ItemComparator implements Comparator<Item> {
 		@Override
 		public int compare(Item i1, Item i2) {
@@ -56,9 +58,55 @@ public class MailPool {
 		pool.add(item);
 		pool.sort(new ItemComparator());
 	}
-	
-	
-	
+
+	public double calculateCharge(int itemIndex, double serviceFee, double activityUnitPrice, double markupPercentage){
+		double robotsMovement = 5.0D;
+		double remoteLookup = 0.1D;
+		int destination = pool.get(itemIndex).destination;
+		double activityUnits = ((destination - Building.MAILROOM_LOCATION) * robotsMovement) + remoteLookup;
+		double activityCost = activityUnits * activityUnitPrice;
+		double charge = (activityCost + serviceFee) * (1 + markupPercentage);
+		return charge;
+	}
+
+	public void setItemCharge(int itemIndex, double charge){
+		Item item = new Item(pool.get(itemIndex).mailItem);
+		item.charge = charge;
+		item.isNewItem = false;
+		pool.set(itemIndex, item);
+	}
+
+	public void getItemInfo(int iii){
+		System.out.println("New Item ID: " + pool.get(iii).mailItem.id + ", Item Charge: " + String.valueOf(pool.get(iii).charge));
+	}
+
+	public boolean isNewItem(int itemIndex){return  pool.get(itemIndex).isNewItem;}
+
+	public int getItemDestination(int itemIndex){
+		return pool.get(itemIndex).destination;
+	}
+
+	public int getPoolSize(){
+		return pool.size();
+	}
+
+	public void sortPriorityMailItems(double chargeThreshold){
+		LinkedList<Item> priorityPool = new LinkedList<>();
+		ListIterator<Item> poolIterator = pool.listIterator();
+		while (poolIterator.hasNext()){
+			Item item = poolIterator.next();
+			if(item.charge > chargeThreshold){
+				priorityPool.addFirst(item);
+				poolIterator.remove();
+			}
+		}
+		ListIterator<Item> priorityPoolIterator = priorityPool.listIterator();
+		while (priorityPoolIterator.hasNext()){
+			pool.addFirst(priorityPoolIterator.next());
+			priorityPoolIterator.remove();
+		}
+	}
+
 	/**
      * load up any waiting robots with mailItems, if any.
      */
diff --git a/Automail/src/automail/Robot.java b/Automail/src/automail/Robot.java
index 4867889..ff06616 100644
--- a/Automail/src/automail/Robot.java
+++ b/Automail/src/automail/Robot.java
@@ -22,7 +22,6 @@ public class Robot {
     private int destination_floor;
     private MailPool mailPool;
     private boolean receivedDispatch;
-    
     private MailItem deliveryItem = null;
     private MailItem tube = null;
     
@@ -173,4 +172,5 @@ public class Robot {
 		if (tube.weight > INDIVIDUAL_MAX_WEIGHT) throw new ItemTooHeavyException();
 	}
 
+
 }
diff --git a/Automail/src/simulation/MailGenerator.java b/Automail/src/simulation/MailGenerator.java
index 17a4a15..5b5acbe 100644
--- a/Automail/src/simulation/MailGenerator.java
+++ b/Automail/src/simulation/MailGenerator.java
@@ -1,10 +1,13 @@
 package simulation;
 
-import java.util.*;
-
 import automail.MailItem;
 import automail.MailPool;
 
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Random;
+
 /**
  * This class generates the mail
  */
@@ -117,6 +120,10 @@ public class MailGenerator {
         }
 
     }
+
+    public void setServiceFee(){
+
+    }
     
     /**
      * Given the clock time, put the generated mails into the mailPool.
diff --git a/Automail/src/simulation/Simulation.java b/Automail/src/simulation/Simulation.java
index 39c65fb..1dea088 100644
--- a/Automail/src/simulation/Simulation.java
+++ b/Automail/src/simulation/Simulation.java
@@ -1,20 +1,16 @@
 package simulation;
 
+import automail.Automail;
+import automail.MailItem;
+import automail.MailPool;
+import com.unimelb.swen30006.wifimodem.WifiModem;
 import exceptions.ExcessiveDeliveryException;
 import exceptions.ItemTooHeavyException;
 import exceptions.MailAlreadyDeliveredException;
 
 import java.io.FileReader;
 import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Properties;
-
-import com.unimelb.swen30006.wifimodem.WifiModem;
-
-import automail.Automail;
-import automail.MailItem;
-import automail.MailPool;
+import java.util.*;
 
 /**
  * This class simulates the behaviour of AutoMail
@@ -23,6 +19,8 @@ public class Simulation {
 	private static int NUM_ROBOTS;
 	private static double CHARGE_THRESHOLD;
 	private static boolean CHARGE_DISPLAY;
+	private static double ACTIVITY_UNIT_PRICE;
+	private static double MARKUP_PERCENTAGE;
 	
     /** Constant for the mail generator */
     private static int MAIL_TO_CREATE;
@@ -68,7 +66,6 @@ public class Simulation {
 		} catch (Exception mException) {
 			mException.printStackTrace();
 		}
-        
         /**
          * This code section is for running a simulation
          */
@@ -76,12 +73,26 @@ public class Simulation {
      	MailPool mailPool = new MailPool(NUM_ROBOTS);
         Automail automail = new Automail(mailPool, new ReportDelivery(), NUM_ROBOTS);
         MailGenerator mailGenerator = new MailGenerator(MAIL_TO_CREATE, MAIL_MAX_WEIGHT, mailPool, seedMap);
-        
         /** Generate all the mails */
         mailGenerator.generateAllMail();
         while(MAIL_DELIVERED.size() != mailGenerator.MAIL_TO_CREATE) {
         	// System.out.printf("Delivered: %4d; Created: %4d%n", MAIL_DELIVERED.size(), mailGenerator.MAIL_TO_CREATE);
             mailGenerator.addToMailPool();
+            if(CHARGE_DISPLAY){
+            	int poolSize = mailPool.getPoolSize();
+            	for(int i=0; i<poolSize; i++){
+            		if(mailPool.isNewItem(i)) {
+            			int destination = mailPool.getItemDestination(i);
+						double serviceFee = wModem.forwardCallToAPI_LookupPrice(destination);
+						double charge = mailPool.calculateCharge(i, serviceFee, ACTIVITY_UNIT_PRICE, MARKUP_PERCENTAGE);
+						mailPool.setItemCharge(i, charge);
+						mailPool.getItemInfo(i);
+					}
+            	}
+            	if(CHARGE_THRESHOLD != 0){
+					mailPool.sortPriorityMailItems(CHARGE_THRESHOLD);
+				}
+			}
             try {
                 automail.mailPool.loadItemsToRobot();
 				for (int i=0; i < NUM_ROBOTS; i++) {
@@ -105,7 +116,9 @@ public class Simulation {
     	automailProperties.setProperty("Floors", "10");
     	automailProperties.setProperty("Mail_to_Create", "80");
     	automailProperties.setProperty("ChargeThreshold", "0");
-    	automailProperties.setProperty("ChargeDisplay", "false");
+    	automailProperties.setProperty("ChargeDisplay", "true");
+    	automailProperties.setProperty("Markup_Percentage", "0.059");
+    	automailProperties.setProperty("Activity_Unit_Price", "0.224");
     	
     	// Read properties
 		FileReader inStream = null;
@@ -140,10 +153,15 @@ public class Simulation {
 		// Charge Display
 		CHARGE_DISPLAY = Boolean.parseBoolean(automailProperties.getProperty("ChargeDisplay"));
 		System.out.println("#Charge Display: " + CHARGE_DISPLAY);
-		
+		// Markup Percentage
+		MARKUP_PERCENTAGE = Double.parseDouble(automailProperties.getProperty("Markup_Percentage"));
+		System.out.println("Markup Percentage: " + MARKUP_PERCENTAGE);
+		// Activity Unit Price
+		ACTIVITY_UNIT_PRICE = Double.parseDouble(automailProperties.getProperty("Activity_Unit_Price"));
+		System.out.println("Activity_Unit_Price: " + ACTIVITY_UNIT_PRICE);
 		return automailProperties;
     }
-    
+
     static class ReportDelivery implements IMailDelivery {
     	
     	/** Confirm the delivery and calculate the total score */
diff --git a/update_log.txt b/update_log.txt
new file mode 100644
index 0000000..e6e10f4
--- /dev/null
+++ b/update_log.txt
@@ -0,0 +1,35 @@
+2021/4/15
+////////////////////////////////////////////////////////
+
+New variables
+************************************************
+In Class Simulation:
+    private static double ACTIVITY_UNIT_PRICE;
+    private static double MARKUP_PERCENTAGE;
+
+In Class MailPool:
+    In private Class Item:
+        double charge;
+        boolean isNewItem = true;
+************************************************
+
+New methods
+************************************************
+In Class MailPool:
+    public double calculateCharge;
+    public void setItemCharge;
+    public void getItemInfo;(This method is not a part of assignment, it will be removed)
+    public boolean isNewItem;
+    public int getItemDestination;
+    public int getPoolSize;
+    public void sortPriorityMailItems;
+************************************************
+
+New codes
+************************************************
+In Class Simulation:
+    from line 81 to line 95
+    from line 119 to line 121
+    from line 156 to line 161
+************************************************
+////////////////////////////////////////////////////////
\ No newline at end of file
-- 
GitLab