From cdddd5bec2938d12e1499ae67ebf6551b095cb77 Mon Sep 17 00:00:00 2001
From: brutzman <brutzman@nps.edu>
Date: Sat, 14 Aug 2021 15:06:49 -0700
Subject: [PATCH] javadoc comments, silence warnings (continuing cleanup)

---
 assignments/nbproject/project.properties      | 262 ++++----
 .../homework2/AngelMulticastReceiver.java     |   2 +-
 .../AngelMulticastSenderExample.java          |   2 +-
 .../BlankenbekerMulticastReceiver.java        |   2 +-
 .../BlankenbekerMulticastSender.java          |   2 +-
 .../homework2/ConardMulticastReceiver.java    |   2 +-
 .../homework2/ConardMulticastSender.java      |   2 +-
 .../homework2/HanleyMulticastHWreceiver.java  | 131 ++--
 .../homework2/HanleyMulticastHWsender.java    | 174 ++---
 .../homework2/LandasMulticastReceiver.java    |   6 +-
 .../homework2/LandasMulticastReceiver2.java   |   3 +
 .../homework2/LandasMulticastSender.java      |   3 +
 .../homework2/LandasMulticastSender2.java     |   5 +
 .../homework2/MaroonMulticastReceiver.java    |  10 +-
 .../MaroonMulticastSenderExample.java         |  10 +-
 .../homework2/SasalaMulticastReceiver.java    |  10 +-
 .../homework2/SasalaMulticastSender.java      |   6 +-
 .../homework2/SnellMulticastClient.java       | 143 ++--
 .../homework2/SnellMulticastServer.java       | 147 +++--
 .../homework2/TackettMultiCastReceiver.java   | 131 ++--
 .../homework2/TackettMulticastSender.java     |   7 +-
 .../YamashitaDeMouraMulticastReceiver.java    | 160 ++---
 .../YamashitaDeMouraMulticastSender.java      | 174 ++---
 .../homework3/Angel_OpenDisEspduSender.java   |   2 +-
 .../BlankenbekerOpenDisEspduSender.java       |   2 +-
 .../ConardSnellOpenDisEspduSender.java        |   2 +-
 .../homework3/EspduReceiver.java              |   2 +
 .../homework3/Hanley_OpenDisEspduSender.java  |   2 +-
 .../homework3/Landas_OpenDisEspduSender.java  |   2 +-
 .../homework3/OpenDisEspduSender.java         |   2 +-
 .../homework3/OpenDisPduSender.java           | 370 ++++++-----
 .../homework3/Sasala_OpenDisEspduSender1.java |   2 +-
 ...ackett_Assignment3_OpenDisEspduSender.java |   2 +-
 .../YamashitaDeMouraOpenDisEspduSender.java   |   2 +-
 .../AngelBlankEspduReceiverBtoTCP.java        |  11 +-
 .../AngelBlankEspduSenderA.java               |   2 +-
 .../AngelBlankEspduSenderB.java               |   2 +-
 .../AngelBlankEspduTCPReceiverASenderB.java   |   4 +-
 .../AngelBlankEspduTCPReceiverBSenderA.java   |   4 +-
 .../Hanley/HanleyOpenDisEspduSenderFP.java    |   2 +-
 .../CSVreaderOpenDisEspduSenderFP.java        |   5 +-
 .../homework2/Ayres_Client.java               |   1 +
 .../homework2/CainTcpClient.java              |   7 +-
 .../homework2/CainTcpServer.java              |   4 +
 .../homework2/JacksonTcpClient.java           |  11 +-
 .../homework2/JacksonTcpServer.java           |   2 +
 .../LoeffelmanAssignment2Client.java          |   9 +-
 .../LoeffelmanAssignment2Server.java          |   4 +
 .../Severson/SeversonAssignment2_Client.java  |   1 +
 .../Thomerson/ThomersonAssignment2Client.java |   9 +-
 .../Thomerson/ThomersonAssignment2Server.java |   4 +
 .../AyresDemchkoMulticastReceiver.java        | 181 ++---
 .../AyresDemchkoMulticastSender.java          | 146 ++--
 .../CainThomersonHw3Receiver.java             |   2 +-
 .../CainThomersonHw3Sender.java               |   2 +-
 .../FurrFriscoHw3Receiver.java                |   2 +-
 .../FurrFriscoHw3Sender.java                  |   2 +-
 .../homework3/Jackson_UdpReceiver.java        |   3 +
 .../homework3/Jackson_UdpSender.java          |   8 +-
 ...lmanSeversonMulticastImageHw3Receiver.java |  12 +-
 ...felmanSeversonMulticastImageHw3Sender.java |  12 +-
 ...LoeffelmanSeversonUDPImageHW3Receiver.java |   7 +-
 .../LoeffelmanSeversonUDPImageSender.java     |  11 +-
 .../AyresDemchko/AyresDemchkoReceiver.java    |   7 +-
 .../AyresDemchko/AyresDemchkoSender.java      |  10 +-
 .../C_T_EspduSupplyerUnit.java                |   7 +-
 .../projects/FriscoFurr/FDCSendRecieve.java   |   2 +-
 .../projects/FriscoFurr/OBSSendRecieve1.java  |   3 +-
 .../FriscoFurr/originals/FDCSendRecieve.java  | 569 ++++++++--------
 .../originals/FriscoFurrPduSender.java        | 456 ++++++-------
 .../FriscoFurr/originals/OBSSendRecieve1.java | 622 +++++++++---------
 .../FriscoFurr/originals/TGTSendRecieve.java  | 502 +++++++-------
 .../LoeffelmanSeversonDISImageReceiver.java   |  14 +-
 .../LoeffelmanSeversonDISImageSender.java     |   4 +
 .../LoeffelmanSeversonDISImageReceiver.java   |  15 +-
 .../LoeffelmanSeversonDISImageSender.java     |   4 +
 .../homework2/Boron/BoronClient.java          |   1 +
 .../homework2/Brennenstuhl/SirTobiClient.java |   1 +
 .../Fetterolf/FetterolfHomework2Client.java   |   1 -
 .../Fetterolf/FetterolfHomework2Server.java   |   1 -
 .../Knobeloch/Knobeloch_TCPIP_Server.java     |   5 +
 .../homework2/McCann/McCannClient.java        | 163 ++---
 .../homework2/McCann/McCannServer.java        | 170 ++---
 .../homework2/Schutt/SchuttClient.java        |   8 +-
 .../Schutt/SchuttServerDispatcher.java        |   7 +-
 .../homework4/Boron/BoronPduReceiver.java     |   8 +-
 .../homework4/Boron/BoronPduSender.java       |   3 +-
 .../Brennenstuhl/BrennenstuhlEspduSender.java |   2 +-
 .../Brennenstuhl/Version2/AllPduReceiver.java |   8 +-
 .../Knobeloch/Knobeloch_PduReceiver.java      |   6 +-
 .../Knobeloch/Knobeloch_PduSender.java        |   4 +
 .../homework4/McCann/McCannPduReceiver.java   |  12 +-
 .../homework4/McCann/McCannPduSender.java     |   4 +
 .../homework4/Schutt/SchuttESPDUSender.java   |   2 +-
 .../homework4/Schutt/SchuttEspduReceiver.java |   4 +
 .../Schutt/SchuttPDUSaverListener.java        |   4 +
 .../homework4/Yurkovich/Yurk_EspduSender.java |   2 +-
 ...BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver.java |   2 +-
 .../homework2/Cannon/CannonClient.java        |   1 +
 .../homework2/Mahan/Mahan_Client.java         |   9 +-
 .../homework2/Mahan/Mahan_Server.java         |   8 +-
 .../homework3/Britt/UdpReceiver.java          |   2 +
 .../homework3/Britt/UdpSender.java            |   5 +-
 .../homework3/Cannon/CannonUdpSender.java     |   1 +
 .../homework3/Mahan/MahanUdpReceiver.java     |   2 +
 .../homework3/Mahan/MahanUdpSender.java       |   9 +-
 .../Weissenberger/TCPNumberSender.java        |  11 +-
 .../Weissenberger/UDPResultReceiver.java      |   1 +
 .../TCPNumberReceiverUDPResultSender.java     |   1 +
 .../{PDUReciever.java => PDUReceiver.java}    | 290 ++++----
 .../homework1/LeckieTcpExample2.java          | 210 +++---
 .../homework1/TcpExample2_Leckie_Mod_Hw1.java | 210 +++---
 .../homework2/AllenTcpExample3Client.java     |   1 +
 .../homework2/Fisher/FisherClient.java        |   5 +-
 .../homework2/Frank/FrankClient.java          | 218 +++---
 .../homework2/Frank/FrankServer.java          | 196 +++---
 .../homework2/FrankClient.java                | 198 +++---
 .../homework2/FrankServer.java                | 179 ++---
 .../homework2/FrankTcpExample3Client.java     | 192 +++---
 .../homework2/FrankTcpExample3Server.java     | 179 ++---
 .../homework2/Leckie/LeckieClient.java        | 173 ++---
 .../McNeely/McNeelyTCPExample3Client.java     | 187 +++---
 .../Morris/MorrisTCPExample3Client.java       |   1 +
 .../homework2/Pugh/Pugh3Client_homework2.java |   1 +
 .../homework2/ReynoldsTcpExample3Client.java  |   1 +
 125 files changed, 3740 insertions(+), 3438 deletions(-)
 rename assignments/src/MV3500Cohort2020JulySeptember/homework4/White/test/{PDUReciever.java => PDUReceiver.java} (97%)

diff --git a/assignments/nbproject/project.properties b/assignments/nbproject/project.properties
index 61f390aa6f..568ec09a5c 100644
--- a/assignments/nbproject/project.properties
+++ b/assignments/nbproject/project.properties
@@ -1,131 +1,131 @@
-annotation.processing.enabled=true
-annotation.processing.enabled.in.editor=false
-annotation.processing.processors.list=
-annotation.processing.run.all.processors=true
-annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
-application.desc=Student assignments performed as part of NPS course Networked Graphics MV3500.  This course is an introduction to network communications in simulation applications. Topics include an introduction to the TCP/IP protocol stack; TCP/IP socket communications, including TCP, UDP, and multicast; and protocol design issues, with emphasis on Distributed Interactive Simulation (DIS) Protocol and High Level Architecture (HLA). Course emphasis is on creation and testing of network programming network code and web-browser applications.
-application.homepage=https://gitlab.nps.edu/Savage/NetworkedGraphicsMV3500/tree/master/assignments
-application.splash=../..\\NetworkedGraphicsMV3500\\documentation\\images\\OpenDisSurferDude.png
-application.title=NPS Networked Graphics MV3500 assignments
-application.vendor=Don Brutzman
-auxiliary.org-netbeans-spi-editor-hints-projects.perProjectHintSettingsFile=nbproject/cfg_hints.xml
-build.classes.dir=${build.dir}/classes
-build.classes.excludes=**/*.java,**/*.form
-# This directory is removed when the project is cleaned:
-build.dir=build
-build.generated.dir=${build.dir}/generated
-build.generated.sources.dir=${build.dir}/generated-sources
-# Only compile against the classpath explicitly listed here:
-build.sysclasspath=ignore
-build.test.classes.dir=${build.dir}/test/classes
-build.test.results.dir=${build.dir}/test/results
-# Uncomment to specify the preferred debugger connection transport:
-#debug.transport=dt_socket
-debug.classpath=\
-    ${run.classpath}
-debug.modulepath=\
-    ${run.modulepath}
-debug.test.classpath=\
-    ${run.test.classpath}
-debug.test.modulepath=\
-    ${run.test.modulepath}
-# Files in build.classes.dir which should be excluded from distribution jar
-# Avoid compilation or inclusion of student project depending on mutex libraries only available in JDK8
-# https://stackoverflow.com/questions/27906896/exclude-package-from-build-but-not-from-view-in-netbeans-8
-excludes=**/MV3500Cohort2019JulySeptember/projects/BrennenstuhlKnobelochMcCann/**
-dist.archive.excludes=**/MV3500Cohort2019JulySeptember/projects/BrennenstuhlKnobelochMcCann/**
-
-# This directory is removed when the project is cleaned:
-dist.dir=dist
-dist.jar=${dist.dir}/Networked_Graphics_MV3500_assignments.jar
-dist.javadoc.dir=${dist.dir}/javadoc
-endorsed.classpath=
-file.reference.commons-io-2.6.jar=../lib/commons-io-2.6.jar
-file.reference.dis-enums-1.3.jar=../lib/dis-enums-1.3.jar
-file.reference.guava-28.0-jre.jar=../lib/guava-28.0-jre.jar
-file.reference.open-dis7-enumerations-classes.jar=../lib/open-dis7-enumerations-classes.jar
-file.reference.open-dis7-pdus-classes.jar=../lib/open-dis7-pdus-classes.jar
-file.reference.open-dis_4.16.jar=../lib/open-dis_4.16.jar
-includes=**
-jar.archive.disabled=${jnlp.enabled}
-jar.compress=false
-jar.index=${jnlp.enabled}
-javac.classpath=\
-    ${file.reference.open-dis7-enumerations-classes.jar}:\
-    ${file.reference.open-dis7-pdus-classes.jar}:\
-    ${file.reference.commons-io-2.6.jar}:\
-    ${file.reference.guava-28.0-jre.jar}:\
-    ${file.reference.open-dis_4.16.jar}:\
-    ${file.reference.dis-enums-1.3.jar}
-# Space-separated list of extra javac options
-javac.compilerargs=
-javac.deprecation=false
-javac.external.vm=true
-javac.modulepath=
-javac.processormodulepath=
-javac.processorpath=\
-    ${javac.classpath}
-javac.source=1.8
-javac.target=1.8
-javac.test.classpath=\
-    ${javac.classpath}:\
-    ${build.classes.dir}
-javac.test.modulepath=\
-    ${javac.modulepath}
-javac.test.processorpath=\
-    ${javac.test.classpath}
-javadoc.additionalparam=
-javadoc.author=true
-javadoc.encoding=${source.encoding}
-javadoc.html5=false
-javadoc.noindex=false
-javadoc.nonavbar=false
-javadoc.notree=false
-javadoc.private=false
-javadoc.reference.open-dis7-enumerations-classes.jar=../lib/open-dis7-enumerations-javadoc.jar
-javadoc.splitindex=true
-javadoc.use=true
-javadoc.version=false
-javadoc.windowtitle=Networked Graphics MV3500 NPS
-jlink.launcher=false
-jlink.launcher.name=Networked_Graphics_MV3500_assignments
-jnlp.codebase.type=no.codebase
-jnlp.descriptor=application
-jnlp.enabled=false
-jnlp.mixed.code=default
-jnlp.offline-allowed=false
-jnlp.signed=false
-jnlp.signing=
-jnlp.signing.alias=
-jnlp.signing.keystore=
-main.class=MV3500Cohort2020JulySeptember.homework1.WeissenbergerTcpExample1Telnet
-# Optional override of default Application-Library-Allowable-Codebase attribute identifying the locations where your signed RIA is expected to be found.
-manifest.custom.application.library.allowable.codebase=
-# Optional override of default Caller-Allowable-Codebase attribute identifying the domains from which JavaScript code can make calls to your RIA without security prompts.
-manifest.custom.caller.allowable.codebase=
-# Optional override of default Codebase manifest attribute, use to prevent RIAs from being repurposed
-manifest.custom.codebase=
-# Optional override of default Permissions manifest attribute (supported values: sandbox, all-permissions)
-manifest.custom.permissions=
-meta.inf.dir=${src.dir}/META-INF
-mkdist.disabled=false
-platform.active=default_platform
-project.licensePath=../license.txt
-run.classpath=\
-    ${javac.classpath}:\
-    ${build.classes.dir}
-# Space-separated list of JVM arguments used when running the project.
-# You may also define separate properties like run-sys-prop.name=value instead of -Dname=value.
-# To set system properties for unit tests define test-sys-prop.name=value:
-run.jvmargs=
-run.modulepath=\
-    ${javac.modulepath}
-run.test.classpath=\
-    ${javac.test.classpath}:\
-    ${build.test.classes.dir}
-run.test.modulepath=\
-    ${javac.test.modulepath}
-source.encoding=UTF-8
-source.reference.open-dis7-enumerations-classes.jar=../lib/open-dis7-enumerations-source.jar
-src.dir=src
-test.src.dir=test
+annotation.processing.enabled=true
+annotation.processing.enabled.in.editor=false
+annotation.processing.processors.list=
+annotation.processing.run.all.processors=true
+annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
+application.desc=Student assignments performed as part of NPS course Networked Graphics MV3500.  This course is an introduction to network communications in simulation applications. Topics include an introduction to the TCP/IP protocol stack; TCP/IP socket communications, including TCP, UDP, and multicast; and protocol design issues, with emphasis on Distributed Interactive Simulation (DIS) Protocol and High Level Architecture (HLA). Course emphasis is on creation and testing of network programming network code and web-browser applications.
+application.homepage=https://gitlab.nps.edu/Savage/NetworkedGraphicsMV3500/tree/master/assignments
+application.splash=../..\\NetworkedGraphicsMV3500\\documentation\\images\\OpenDisSurferDude.png
+application.title=NPS Networked Graphics MV3500 assignments
+application.vendor=Don Brutzman
+auxiliary.org-netbeans-spi-editor-hints-projects.perProjectHintSettingsFile=nbproject/cfg_hints.xml
+build.classes.dir=${build.dir}/classes
+build.classes.excludes=**/*.java,**/*.form
+# This directory is removed when the project is cleaned:
+build.dir=build
+build.generated.dir=${build.dir}/generated
+build.generated.sources.dir=${build.dir}/generated-sources
+# Only compile against the classpath explicitly listed here:
+build.sysclasspath=ignore
+build.test.classes.dir=${build.dir}/test/classes
+build.test.results.dir=${build.dir}/test/results
+# Uncomment to specify the preferred debugger connection transport:
+#debug.transport=dt_socket
+debug.classpath=\
+    ${run.classpath}
+debug.modulepath=\
+    ${run.modulepath}
+debug.test.classpath=\
+    ${run.test.classpath}
+debug.test.modulepath=\
+    ${run.test.modulepath}
+# Files in build.classes.dir which should be excluded from distribution jar
+# Avoid compilation or inclusion of student project depending on mutex libraries only available in JDK8
+# https://stackoverflow.com/questions/27906896/exclude-package-from-build-but-not-from-view-in-netbeans-8
+excludes=**/MV3500Cohort2019JulySeptember/projects/BrennenstuhlKnobelochMcCann/**
+dist.archive.excludes=**/MV3500Cohort2019JulySeptember/projects/BrennenstuhlKnobelochMcCann/**
+
+# This directory is removed when the project is cleaned:
+dist.dir=dist
+dist.jar=${dist.dir}/Networked_Graphics_MV3500_assignments.jar
+dist.javadoc.dir=${dist.dir}/javadoc
+endorsed.classpath=
+file.reference.commons-io-2.6.jar=../lib/commons-io-2.6.jar
+file.reference.dis-enums-1.3.jar=../lib/dis-enums-1.3.jar
+file.reference.guava-28.0-jre.jar=../lib/guava-28.0-jre.jar
+file.reference.open-dis7-enumerations-classes.jar=../lib/open-dis7-enumerations-classes.jar
+file.reference.open-dis7-pdus-classes.jar=../lib/open-dis7-pdus-classes.jar
+file.reference.open-dis_4.16.jar=../lib/open-dis_4.16.jar
+includes=**
+jar.archive.disabled=${jnlp.enabled}
+jar.compress=false
+jar.index=${jnlp.enabled}
+javac.classpath=\
+    ${file.reference.open-dis7-enumerations-classes.jar}:\
+    ${file.reference.open-dis7-pdus-classes.jar}:\
+    ${file.reference.commons-io-2.6.jar}:\
+    ${file.reference.guava-28.0-jre.jar}:\
+    ${file.reference.open-dis_4.16.jar}:\
+    ${file.reference.dis-enums-1.3.jar}
+# Space-separated list of extra javac options
+javac.compilerargs=-Xlint:deprecation -Xlint:unchecked
+javac.deprecation=false
+javac.external.vm=true
+javac.modulepath=
+javac.processormodulepath=
+javac.processorpath=\
+    ${javac.classpath}
+javac.source=16
+javac.target=16
+javac.test.classpath=\
+    ${javac.classpath}:\
+    ${build.classes.dir}
+javac.test.modulepath=\
+    ${javac.modulepath}
+javac.test.processorpath=\
+    ${javac.test.classpath}
+javadoc.additionalparam=
+javadoc.author=true
+javadoc.encoding=${source.encoding}
+javadoc.html5=false
+javadoc.noindex=false
+javadoc.nonavbar=false
+javadoc.notree=false
+javadoc.private=false
+javadoc.reference.open-dis7-enumerations-classes.jar=../lib/open-dis7-enumerations-javadoc.jar
+javadoc.splitindex=true
+javadoc.use=true
+javadoc.version=false
+javadoc.windowtitle=Networked Graphics MV3500 NPS
+jlink.launcher=false
+jlink.launcher.name=Networked_Graphics_MV3500_assignments
+jnlp.codebase.type=no.codebase
+jnlp.descriptor=application
+jnlp.enabled=false
+jnlp.mixed.code=default
+jnlp.offline-allowed=false
+jnlp.signed=false
+jnlp.signing=
+jnlp.signing.alias=
+jnlp.signing.keystore=
+main.class=MV3500Cohort2020JulySeptember.homework1.WeissenbergerTcpExample1Telnet
+# Optional override of default Application-Library-Allowable-Codebase attribute identifying the locations where your signed RIA is expected to be found.
+manifest.custom.application.library.allowable.codebase=
+# Optional override of default Caller-Allowable-Codebase attribute identifying the domains from which JavaScript code can make calls to your RIA without security prompts.
+manifest.custom.caller.allowable.codebase=
+# Optional override of default Codebase manifest attribute, use to prevent RIAs from being repurposed
+manifest.custom.codebase=
+# Optional override of default Permissions manifest attribute (supported values: sandbox, all-permissions)
+manifest.custom.permissions=
+meta.inf.dir=${src.dir}/META-INF
+mkdist.disabled=false
+platform.active=default_platform
+project.licensePath=../license.txt
+run.classpath=\
+    ${javac.classpath}:\
+    ${build.classes.dir}
+# Space-separated list of JVM arguments used when running the project.
+# You may also define separate properties like run-sys-prop.name=value instead of -Dname=value.
+# To set system properties for unit tests define test-sys-prop.name=value:
+run.jvmargs=
+run.modulepath=\
+    ${javac.modulepath}
+run.test.classpath=\
+    ${javac.test.classpath}:\
+    ${build.test.classes.dir}
+run.test.modulepath=\
+    ${javac.test.modulepath}
+source.encoding=UTF-8
+source.reference.open-dis7-enumerations-classes.jar=../lib/open-dis7-enumerations-source.jar
+src.dir=src
+test.src.dir=test
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/AngelMulticastReceiver.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/AngelMulticastReceiver.java
index 407c3c3ab8..ea1378056c 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/AngelMulticastReceiver.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/AngelMulticastReceiver.java
@@ -17,7 +17,7 @@ public class AngelMulticastReceiver {
     /** socket value of shared interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10; 
+    static final int TTL = 10; 
     
     /** run the program
      * @param args command-line arguments, string parameters (unused) */
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/AngelMulticastSenderExample.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/AngelMulticastSenderExample.java
index 36da85088b..e527460695 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/AngelMulticastSenderExample.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/AngelMulticastSenderExample.java
@@ -19,7 +19,7 @@ public class AngelMulticastSenderExample {
     /** socket value of shared interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10; 
+    static final int TTL = 10; 
     
     /** run the program
      * @param args command-line arguments, string parameters (unused) */
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/BlankenbekerMulticastReceiver.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/BlankenbekerMulticastReceiver.java
index 9ad31b8bfc..712001aa2f 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/BlankenbekerMulticastReceiver.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/BlankenbekerMulticastReceiver.java
@@ -24,7 +24,7 @@ public class BlankenbekerMulticastReceiver {
     /** socket value of shared interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10; 
+    static final int TTL = 10; 
     
     /** run the program
      * @param args command-line arguments, string parameters (unused) */
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/BlankenbekerMulticastSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/BlankenbekerMulticastSender.java
index 9b2ad6e5bd..304d603414 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/BlankenbekerMulticastSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/BlankenbekerMulticastSender.java
@@ -24,7 +24,7 @@ public class BlankenbekerMulticastSender {
     /** socket value of shared interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10; 
+    static final int TTL = 10; 
    
     /** run the program
      * @param args command-line arguments, string parameters (unused) */
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/ConardMulticastReceiver.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/ConardMulticastReceiver.java
index d2be90d6c4..5bcae090dd 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/ConardMulticastReceiver.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/ConardMulticastReceiver.java
@@ -20,7 +20,7 @@ public class ConardMulticastReceiver
     /** socket value of shared interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10; 
+    static final int TTL = 10; 
     
     /**
      * Program invocation, execution starts here
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/ConardMulticastSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/ConardMulticastSender.java
index 2e81bb6d70..aa0e0e604b 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/ConardMulticastSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/ConardMulticastSender.java
@@ -20,7 +20,7 @@ public class ConardMulticastSender {
     /** socket value of shared interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10; 
+    static final int TTL = 10; 
     
     /**
      * Program invocation, execution starts here
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/HanleyMulticastHWreceiver.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/HanleyMulticastHWreceiver.java
index ad417acfd3..ee217bc699 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/HanleyMulticastHWreceiver.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/HanleyMulticastHWreceiver.java
@@ -1,65 +1,70 @@
 package MV3500Cohort2018JanuaryMarch.homework2;
 
-/**
- * This assignment uses the code from MV3500 example "multicastExample1"  
- * modifications were made to way the packet is read to facilitate the double  
- * instead of the float.
- * 
- * @author Brian
- */
-import java.io.*;
-import java.net.*;
-
-
-public class HanleyMulticastHWreceiver {
-    public static final String MULTICAST_ADDRESS = "239.1.2.15";
-    public static final int DESTINATION_PORT = 1717;
-    /** How many routers can be crossed */
-    public static final int TTL = 10; 
-    
-    public static void main(String[] args) 
-    {
-        try
-        {
-        
-            // This is a java/IPv6 problem. You should also add it to the
-            // arguments used to start the app, eg -Djava.net.preferIPv4Stack=true
-            // set in the "run" section of preferences. Also, typically
-            // netbeans must be restarted after these settings.
-            // https://stackoverflow.com/questions/18747134/getting-cant-assign-requested-address-java-net-socketexception-using-ehcache
-            System.setProperty("java.net.preferIPv4Stack", "true");
-            
-            
-            MulticastSocket multicastSocket = new MulticastSocket(DESTINATION_PORT);
-            multicastSocket.setTimeToLive(TTL);
-            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
-            System.out.println(multicastAddress);            
-            // Join group useful on receiving side
-            multicastSocket.joinGroup(multicastAddress);
-            // You can join multiple groups here
-            
-            int count = 0;
-            
-            while(true)
-            {
-                byte[] packetArray = new byte[1500];
-                DatagramPacket packet = new DatagramPacket(packetArray, packetArray.length);
-                
-                multicastSocket.receive(packet);
-                count++;
-                
-                ByteArrayInputStream bais = new ByteArrayInputStream(packet.getData());
-                DataInputStream dis = new DataInputStream(bais);
-                double firstNumber = dis.readDouble();
-                double secondNumber = dis.readDouble();
-                
-                System.out.println("Number received: " + count + " X Pos: " + firstNumber + " Y Pos: " + secondNumber);
-            }
-        }
-        catch(Exception e)
-        {
-            System.out.println(e);
-        }
-    }
-    
-}
+/**
+ * This assignment uses the code from MV3500 example "multicastExample1"  
+ * modifications were made to way the packet is read to facilitate the double  
+ * instead of the float.
+ * 
+ * @author Brian
+ */
+import java.io.*;
+import java.net.*;
+
+
+public class HanleyMulticastHWreceiver 
+{
+    /** socket parameter of interest */
+    public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
+    public static final int DESTINATION_PORT = 1717;
+    /** How many routers can be crossed */
+    static final int TTL = 10; 
+    
+    /** run the program
+     * @param args command-line arguments, string parameters (unused) */
+    public static void main(String[] args) 
+    {
+        try
+        {
+        
+            // This is a java/IPv6 problem. You should also add it to the
+            // arguments used to start the app, eg -Djava.net.preferIPv4Stack=true
+            // set in the "run" section of preferences. Also, typically
+            // netbeans must be restarted after these settings.
+            // https://stackoverflow.com/questions/18747134/getting-cant-assign-requested-address-java-net-socketexception-using-ehcache
+            System.setProperty("java.net.preferIPv4Stack", "true");
+            
+            
+            MulticastSocket multicastSocket = new MulticastSocket(DESTINATION_PORT);
+            multicastSocket.setTimeToLive(TTL);
+            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
+            System.out.println(multicastAddress);            
+            // Join group useful on receiving side
+            multicastSocket.joinGroup(multicastAddress);
+            // You can join multiple groups here
+            
+            int count = 0;
+            
+            while(true)
+            {
+                byte[] packetArray = new byte[1500];
+                DatagramPacket packet = new DatagramPacket(packetArray, packetArray.length);
+                
+                multicastSocket.receive(packet);
+                count++;
+                
+                ByteArrayInputStream bais = new ByteArrayInputStream(packet.getData());
+                DataInputStream dis = new DataInputStream(bais);
+                double firstNumber = dis.readDouble();
+                double secondNumber = dis.readDouble();
+                
+                System.out.println("Number received: " + count + " X Pos: " + firstNumber + " Y Pos: " + secondNumber);
+            }
+        }
+        catch(Exception e)
+        {
+            System.out.println(e);
+        }
+    }
+    
+}
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/HanleyMulticastHWsender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/HanleyMulticastHWsender.java
index fbd8b1b3bc..96338d3ee5 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/HanleyMulticastHWsender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/HanleyMulticastHWsender.java
@@ -1,87 +1,91 @@
 package MV3500Cohort2018JanuaryMarch.homework2;
 
-/**
- * This assignment uses the code from MV3500 example "multicastExample1"  
- * modifications were made to the packet creation and where the packet is 
- * assembled.
- * 
- * @author Brian
- */
-
-
-import java.io.*;
-import java.net.*;
-
-
-public class HanleyMulticastHWsender {
-    public static final String MULTICAST_ADDRESS = "239.1.2.15";
-    public static final int DESTINATION_PORT = 1717;
-    /** How many routers can be crossed */
-    public static final int TTL = 10;
-    private int velocity;
-    private float xPos;
-    private float yPos;
-    
-    
-    public static void main(String[] args) 
-    {
-        int velocity = 2;
-        int dir = 45;
-        double xPos = 0;
-        double yPos = 2;
-              
-        
-        try
-        {
-            // This is a java/IPv6 problem. You should also add it to the
-            // arguments used to start the app, eg -Djava.net.preferIPv4Stack=true
-            // set in the "run" section of preferences. Also, typically
-            // netbeans must be restarted after these settings.
-            // https://stackoverflow.com/questions/18747134/getting-cant-assign-requested-address-java-net-socketexception-using-ehcache
-            System.setProperty("java.net.preferIPv4Stack", "true");
-            
-            
-            MulticastSocket multicastSocket = new MulticastSocket(1718);
-            multicastSocket.setTimeToLive(TTL);
-            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
-            System.out.println(multicastAddress);            
-            // Join group useful on receiving side
-            multicastSocket.joinGroup(multicastAddress);
-            // You can join multiple groups here
-            
-       
-            // How fast does this go? Does UDP try to slow it down, or does
-            // this cause network problems? (hint: yes for an unlimited send
-            // rate, unlike TCP). How do you know on the receiving side
-            // that you haven't received a duplicate UDP packet, out of
-            // order packet, or dropped packet?
-            
-            for(int idx = 0; idx < 100; idx++)
-            {
-                
-                xPos = xPos + (Math.cos(Math.toRadians(dir))*velocity); //computes the horixontal displacement for each movement based on velocity - this is a fixed velocity and time increment
-                yPos = yPos + (Math.sin(Math.toRadians(dir))*velocity); //computes the vertical displacement for each movement based on velocity - this is a fixed velocity and time increment
-                
-                ByteArrayOutputStream baos = new ByteArrayOutputStream();
-                DataOutputStream dos = new DataOutputStream(baos);
-                dos.writeDouble(xPos);
-                dos.writeDouble(yPos);
-                
-                
-                byte[] buffer = baos.toByteArray();
-                
-                DatagramPacket packet = new DatagramPacket(buffer, buffer.length, multicastAddress, DESTINATION_PORT);
-                
-               multicastSocket.send(packet);
-               baos.reset();
-               Thread.sleep(1000); // Send 100, one per second
-               System.out.println("Sent multicast packet " + idx + " of 100");
-            }
-        }
-        catch(Exception e)
-        {
-            System.out.println(e);
-        }
-    }
-    
-}
+/**
+ * This assignment uses the code from MV3500 example "multicastExample1"  
+ * modifications were made to the packet creation and where the packet is 
+ * assembled.
+ * 
+ * @author Brian
+ */
+
+
+import java.io.*;
+import java.net.*;
+
+
+public class HanleyMulticastHWsender 
+{
+    /** socket parameter of interest */
+    public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
+    public static final int DESTINATION_PORT = 1717;
+    /** How many routers can be crossed */
+    static final int TTL = 10;
+    private int velocity;
+    private float xPos;
+    private float yPos;
+    
+    /** run the program
+     * @param args command-line arguments, string parameters (unused) */
+    public static void main(String[] args) 
+    {
+        int velocity = 2;
+        int dir = 45;
+        double xPos = 0;
+        double yPos = 2;
+              
+        
+        try
+        {
+            // This is a java/IPv6 problem. You should also add it to the
+            // arguments used to start the app, eg -Djava.net.preferIPv4Stack=true
+            // set in the "run" section of preferences. Also, typically
+            // netbeans must be restarted after these settings.
+            // https://stackoverflow.com/questions/18747134/getting-cant-assign-requested-address-java-net-socketexception-using-ehcache
+            System.setProperty("java.net.preferIPv4Stack", "true");
+            
+            
+            MulticastSocket multicastSocket = new MulticastSocket(1718);
+            multicastSocket.setTimeToLive(TTL);
+            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
+            System.out.println(multicastAddress);            
+            // Join group useful on receiving side
+            multicastSocket.joinGroup(multicastAddress);
+            // You can join multiple groups here
+            
+       
+            // How fast does this go? Does UDP try to slow it down, or does
+            // this cause network problems? (hint: yes for an unlimited send
+            // rate, unlike TCP). How do you know on the receiving side
+            // that you haven't received a duplicate UDP packet, out of
+            // order packet, or dropped packet?
+            
+            for(int idx = 0; idx < 100; idx++)
+            {
+                
+                xPos = xPos + (Math.cos(Math.toRadians(dir))*velocity); //computes the horixontal displacement for each movement based on velocity - this is a fixed velocity and time increment
+                yPos = yPos + (Math.sin(Math.toRadians(dir))*velocity); //computes the vertical displacement for each movement based on velocity - this is a fixed velocity and time increment
+                
+                ByteArrayOutputStream baos = new ByteArrayOutputStream();
+                DataOutputStream dos = new DataOutputStream(baos);
+                dos.writeDouble(xPos);
+                dos.writeDouble(yPos);
+                
+                
+                byte[] buffer = baos.toByteArray();
+                
+                DatagramPacket packet = new DatagramPacket(buffer, buffer.length, multicastAddress, DESTINATION_PORT);
+                
+               multicastSocket.send(packet);
+               baos.reset();
+               Thread.sleep(1000); // Send 100, one per second
+               System.out.println("Sent multicast packet " + idx + " of 100");
+            }
+        }
+        catch(Exception e)
+        {
+            System.out.println(e);
+        }
+    }
+    
+}
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastReceiver.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastReceiver.java
index 831bb61772..427e6912c7 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastReceiver.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastReceiver.java
@@ -16,7 +16,11 @@ public class LandasMulticastReceiver {
     final static String INET_ADDR = "239.1.2.15";
     final static int PORT = 1717;
     
-    public static void main(String[] args) throws UnknownHostException {
+    /** run the program
+     * @param args command-line arguments, string parameters (unused)
+     * @throws java.net.UnknownHostException user cancels program */
+    public static void main(String[] args) throws UnknownHostException
+    {
         // address that we are connecting to
         InetAddress address = InetAddress.getByName(INET_ADDR);
          
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastReceiver2.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastReceiver2.java
index 96c2c15178..25fcf933e7 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastReceiver2.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastReceiver2.java
@@ -16,6 +16,9 @@ public class LandasMulticastReceiver2 {
     final static String INET_ADDR = "239.1.2.15";
     final static int PORT = 1717;
  
+    /** run the program
+     * @param args command-line arguments, string parameters (unused)
+     * @throws java.net.UnknownHostException user cancels program */
     public static void main(String[] args) throws UnknownHostException {
         // address that we are connecting to
         InetAddress address = InetAddress.getByName(INET_ADDR);
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastSender.java
index 8bbcd839df..260c11ee5c 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastSender.java
@@ -16,6 +16,9 @@ public class LandasMulticastSender {
     final static String INET_ADDR = "239.1.2.15";
     final static int PORT = 1717;
  
+    /** run the program
+     * @param args command-line arguments, string parameters (unused)
+     * @throws java.lang.InterruptedException user cancels execution */
     public static void main(String[] args) throws UnknownHostException, InterruptedException {
         // address that we are connecting to
         InetAddress addr = InetAddress.getByName(INET_ADDR);
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastSender2.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastSender2.java
index c28b2780bc..1f2855a388 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastSender2.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/LandasMulticastSender2.java
@@ -16,6 +16,11 @@ public class LandasMulticastSender2 {
     final static String INET_ADDR = "239.1.2.15";
     final static int PORT = 1717;
  
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels execution
+     */
     public static void main(String[] args) throws UnknownHostException, InterruptedException {
         // address that we are connecting to
         InetAddress addr = InetAddress.getByName(INET_ADDR);
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/MaroonMulticastReceiver.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/MaroonMulticastReceiver.java
index 2ffaee524e..a07e86c945 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/MaroonMulticastReceiver.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/MaroonMulticastReceiver.java
@@ -15,13 +15,17 @@ import java.awt.event.ActionListener;
  *
  * @author mcgredo
  */
-public class MaroonMulticastReceiver {
-
+public class MaroonMulticastReceiver 
+{
+    /** socket parameter of interest */
     public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10; 
+    static final int TTL = 10; 
       
+    /** run the program
+     * @param args command-line arguments, string parameters (unused) */
     public static void main(String[] args) 
     {
         JFrame guiFrame = new JFrame();
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/MaroonMulticastSenderExample.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/MaroonMulticastSenderExample.java
index e263b5750c..ef9c7f5f53 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/MaroonMulticastSenderExample.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/MaroonMulticastSenderExample.java
@@ -11,13 +11,17 @@ import java.net.*;
  * 
  * @author mcgredo
  */
-public class MaroonMulticastSenderExample {
-
+public class MaroonMulticastSenderExample
+{
+    /** socket parameter of interest */
     public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
     public static final int    DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10; // Time to Live is decrement counter to limit scope
+    static final int TTL = 10; // Time to Live is decrement counter to limit scope
     
+    /** run the program
+     * @param args command-line arguments, string parameters (unused) */
     public static void main(String[] args) 
     {
         try
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SasalaMulticastReceiver.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SasalaMulticastReceiver.java
index ff2e874ab5..6a58c39548 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SasalaMulticastReceiver.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SasalaMulticastReceiver.java
@@ -10,13 +10,17 @@ import java.net.*;
  *
  * @author mcgredo
  */
-public class SasalaMulticastReceiver {
-
+public class SasalaMulticastReceiver
+{
+    /** socket parameter of interest */
     public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10; 
+    static final int TTL = 10; 
     
+    /** run the program
+     * @param args command-line arguments, string parameters (unused) */
     public static void main(String[] args) 
     {
         try
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SasalaMulticastSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SasalaMulticastSender.java
index fdafb40edd..10d7ecc10e 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SasalaMulticastSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SasalaMulticastSender.java
@@ -14,11 +14,15 @@ import java.time.LocalDateTime;
  */
 public class SasalaMulticastSender {
 
+    /** socket parameter of interest */
     public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10; 
+    static final int TTL = 10; 
     
+    /** run the program
+     * @param args command-line arguments, string parameters (unused) */
     public static void main(String[] args) 
     {
         try
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SnellMulticastClient.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SnellMulticastClient.java
index 83f965569b..a0ee80be1b 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SnellMulticastClient.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SnellMulticastClient.java
@@ -1,71 +1,76 @@
 package MV3500Cohort2018JanuaryMarch.homework2;
 
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-//package HW2;
-
-import java.io.ByteArrayInputStream;
-import java.io.DataInputStream;
-import java.net.DatagramPacket;
-import java.net.InetAddress;
-import java.net.MulticastSocket;
-
-/**
- *
- * @author Justin Snell
- */
-public class SnellMulticastClient {
-    public static final String MULTICAST_ADDRESS = "239.1.2.15";
-    public static final int DESTINATION_PORT = 1717;
-    /** How many routers can be crossed */
-    public static final int TTL = 10; 
-    
-    public static void main(String[] args) 
-    {
-        try
-        {
-        
-            // This is a java/IPv6 problem. You should also add it to the
-            // arguments used to start the app, eg -Djava.net.preferIPv4Stack=true
-            // set in the "run" section of preferences. Also, typically
-            // netbeans must be restarted after these settings.
-            // https://stackoverflow.com/questions/18747134/getting-cant-assign-requested-address-java-net-socketexception-using-ehcache
-            System.setProperty("java.net.preferIPv4Stack", "true");
-            
-            
-            MulticastSocket multicastSocket = new MulticastSocket(DESTINATION_PORT);
-            multicastSocket.setTimeToLive(TTL);
-            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
-            System.out.println(multicastAddress);            
-            // Join group useful on receiving side
-            multicastSocket.joinGroup(multicastAddress);
-            // You can join multiple groups here
-            
-            int count = 0;
-            
-            while(true)
-            {
-                byte[] packetArray = new byte[1500];
-                DatagramPacket packet = new DatagramPacket(packetArray, packetArray.length);
-                
-                multicastSocket.receive(packet);
-                count++;
-                
-                ByteArrayInputStream bais = new ByteArrayInputStream(packet.getData());
-                DataInputStream dis = new DataInputStream(bais);
-                int firstNumber = dis.readInt();
-                int secondNumber = dis.readInt();
-                
-                System.out.println("Number received: " + count + " xpos:" + firstNumber + " ypos:" + secondNumber);
-            }
-        }
-        catch(Exception e)
-        {
-            System.out.println(e);
-        }
-    }
-    
-}
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+//package HW2;
+
+import java.io.ByteArrayInputStream;
+import java.io.DataInputStream;
+import java.net.DatagramPacket;
+import java.net.InetAddress;
+import java.net.MulticastSocket;
+
+/**
+ *
+ * @author Justin Snell
+ */
+public class SnellMulticastClient
+{
+    /** socket parameter of interest */
+    public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
+    public static final int DESTINATION_PORT = 1717;
+    /** How many routers can be crossed */
+    static final int TTL = 10; 
+    
+    /** run the program
+     * @param args command-line arguments, string parameters (unused) */
+    public static void main(String[] args) 
+    {
+        try
+        {
+        
+            // This is a java/IPv6 problem. You should also add it to the
+            // arguments used to start the app, eg -Djava.net.preferIPv4Stack=true
+            // set in the "run" section of preferences. Also, typically
+            // netbeans must be restarted after these settings.
+            // https://stackoverflow.com/questions/18747134/getting-cant-assign-requested-address-java-net-socketexception-using-ehcache
+            System.setProperty("java.net.preferIPv4Stack", "true");
+            
+            
+            MulticastSocket multicastSocket = new MulticastSocket(DESTINATION_PORT);
+            multicastSocket.setTimeToLive(TTL);
+            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
+            System.out.println(multicastAddress);            
+            // Join group useful on receiving side
+            multicastSocket.joinGroup(multicastAddress);
+            // You can join multiple groups here
+            
+            int count = 0;
+            
+            while(true)
+            {
+                byte[] packetArray = new byte[1500];
+                DatagramPacket packet = new DatagramPacket(packetArray, packetArray.length);
+                
+                multicastSocket.receive(packet);
+                count++;
+                
+                ByteArrayInputStream bais = new ByteArrayInputStream(packet.getData());
+                DataInputStream dis = new DataInputStream(bais);
+                int firstNumber = dis.readInt();
+                int secondNumber = dis.readInt();
+                
+                System.out.println("Number received: " + count + " xpos:" + firstNumber + " ypos:" + secondNumber);
+            }
+        }
+        catch(Exception e)
+        {
+            System.out.println(e);
+        }
+    }
+    
+}
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SnellMulticastServer.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SnellMulticastServer.java
index 5b92d0f702..1c5d161ab0 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SnellMulticastServer.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/SnellMulticastServer.java
@@ -1,73 +1,78 @@
 package MV3500Cohort2018JanuaryMarch.homework2;
 
-//package HW2;
-
-import java.io.ByteArrayOutputStream;
-import java.io.DataOutputStream;
-import java.net.DatagramPacket;
-import java.net.InetAddress;
-import java.net.MulticastSocket;
-
-public class SnellMulticastServer {
-    public static final String MULTICAST_ADDRESS = "239.1.2.15";
-    public static final int DESTINATION_PORT = 1717;
-    /** How many routers can be crossed */
-    public static final int TTL = 10; 
-    
-    public static void main(String[] args) 
-    {
-        try
-        {
-            // This is a java/IPv6 problem. You should also add it to the
-            // arguments used to start the app, eg -Djava.net.preferIPv4Stack=true
-            // set in the "run" section of preferences. Also, typically
-            // netbeans must be restarted after these settings.
-            // https://stackoverflow.com/questions/18747134/getting-cant-assign-requested-address-java-net-socketexception-using-ehcache
-            System.setProperty("java.net.preferIPv4Stack", "true");
-            
-            
-            MulticastSocket multicastSocket = new MulticastSocket(1718);
-            multicastSocket.setTimeToLive(TTL);
-            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
-            System.out.println(multicastAddress);            
-            // Join group useful on receiving side
-            multicastSocket.joinGroup(multicastAddress);
-            // You can join multiple groups here
-            
-            int xpos = 12;
-            int ypos = 15;
-            
-            // Put together a message with binary content. "ByteArrayOutputStream"
-            // is a java.io utility that lets us put together an array of binary
-            // data, which we put into the UDP packet.
-            
-            ByteArrayOutputStream baos = new ByteArrayOutputStream();
-            DataOutputStream dos = new DataOutputStream(baos);
-            dos.writeInt(xpos);
-            dos.writeInt(ypos);
-            byte[] buffer = baos.toByteArray();
-            
-            // Put together a packet to send
-            // muticast group we are sending to--not a single host
-            
-            DatagramPacket packet = new DatagramPacket(buffer, buffer.length, multicastAddress, DESTINATION_PORT);
-       
-            // How fast does this go? Does UDP try to slow it down, or does
-            // this cause network problems? (hint: yes for an unlimited send
-            // rate, unlike TCP). How do you know on the receiving side
-            // that you haven't received a duplicate UDP packet, out of
-            // order packet, or dropped packet?
-            
-            for(int idx = 0; idx < 100; idx++)
-            {
-               multicastSocket.send(packet);
-               Thread.sleep(1000); // Send 100, one per second
-               System.out.println("Sent multicast packet " + idx + " of 100");
-            }
-        }
-        catch(Exception e)
-        {
-            System.out.println(e);
-        }
-    } 
-}
+//package HW2;
+
+import java.io.ByteArrayOutputStream;
+import java.io.DataOutputStream;
+import java.net.DatagramPacket;
+import java.net.InetAddress;
+import java.net.MulticastSocket;
+
+public class SnellMulticastServer
+{
+    /** socket parameter of interest */
+    public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
+    public static final int DESTINATION_PORT = 1717;
+    /** How many routers can be crossed */
+    static final int TTL = 10; 
+    
+    /** run the program
+     * @param args command-line arguments, string parameters (unused) */
+    public static void main(String[] args) 
+    {
+        try
+        {
+            // This is a java/IPv6 problem. You should also add it to the
+            // arguments used to start the app, eg -Djava.net.preferIPv4Stack=true
+            // set in the "run" section of preferences. Also, typically
+            // netbeans must be restarted after these settings.
+            // https://stackoverflow.com/questions/18747134/getting-cant-assign-requested-address-java-net-socketexception-using-ehcache
+            System.setProperty("java.net.preferIPv4Stack", "true");
+            
+            
+            MulticastSocket multicastSocket = new MulticastSocket(1718);
+            multicastSocket.setTimeToLive(TTL);
+            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
+            System.out.println(multicastAddress);            
+            // Join group useful on receiving side
+            multicastSocket.joinGroup(multicastAddress);
+            // You can join multiple groups here
+            
+            int xpos = 12;
+            int ypos = 15;
+            
+            // Put together a message with binary content. "ByteArrayOutputStream"
+            // is a java.io utility that lets us put together an array of binary
+            // data, which we put into the UDP packet.
+            
+            ByteArrayOutputStream baos = new ByteArrayOutputStream();
+            DataOutputStream dos = new DataOutputStream(baos);
+            dos.writeInt(xpos);
+            dos.writeInt(ypos);
+            byte[] buffer = baos.toByteArray();
+            
+            // Put together a packet to send
+            // muticast group we are sending to--not a single host
+            
+            DatagramPacket packet = new DatagramPacket(buffer, buffer.length, multicastAddress, DESTINATION_PORT);
+       
+            // How fast does this go? Does UDP try to slow it down, or does
+            // this cause network problems? (hint: yes for an unlimited send
+            // rate, unlike TCP). How do you know on the receiving side
+            // that you haven't received a duplicate UDP packet, out of
+            // order packet, or dropped packet?
+            
+            for(int idx = 0; idx < 100; idx++)
+            {
+               multicastSocket.send(packet);
+               Thread.sleep(1000); // Send 100, one per second
+               System.out.println("Sent multicast packet " + idx + " of 100");
+            }
+        }
+        catch(Exception e)
+        {
+            System.out.println(e);
+        }
+    } 
+}
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/TackettMultiCastReceiver.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/TackettMultiCastReceiver.java
index 79ea1e5fbf..8b5e59b607 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/TackettMultiCastReceiver.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/TackettMultiCastReceiver.java
@@ -1,65 +1,70 @@
 package MV3500Cohort2018JanuaryMarch.homework2;
 
-/**
- * This assignment uses the code from MV3500 example "multicastExample1"  
- * modifications were made to way the packet is read to facilitate the double  
- * instead of the float.
- * 
- * @author codyt
- */
-import java.io.*;
-import java.net.*;
-
-
-public class TackettMultiCastReceiver {
-    public static final String MULTICAST_ADDRESS = "239.1.2.15";
-    public static final int DESTINATION_PORT = 1717;
-    /** How many routers can be crossed */
-    public static final int TTL = 10; 
-    
-    public static void main(String[] args) 
-    {
-        try
-        {
-        
-            // This is a java/IPv6 problem. You should also add it to the
-            // arguments used to start the app, eg -Djava.net.preferIPv4Stack=true
-            // set in the "run" section of preferences. Also, typically
-            // netbeans must be restarted after these settings.
-            // https://stackoverflow.com/questions/18747134/getting-cant-assign-requested-address-java-net-socketexception-using-ehcache
-            System.setProperty("java.net.preferIPv4Stack", "true");
-            
-            
-            MulticastSocket multicastSocket = new MulticastSocket(DESTINATION_PORT);
-            multicastSocket.setTimeToLive(TTL);
-            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
-            System.out.println(multicastAddress);            
-            // Join group useful on receiving side
-            multicastSocket.joinGroup(multicastAddress);
-            // You can join multiple groups here
-            
-            int count = 0;
-            
-            while(true)
-            {
-                byte[] packetArray = new byte[1500];
-                DatagramPacket packet = new DatagramPacket(packetArray, packetArray.length);
-                
-                multicastSocket.receive(packet);
-                count++;
-                
-                ByteArrayInputStream bais = new ByteArrayInputStream(packet.getData());
-                DataInputStream dis = new DataInputStream(bais);
-                double firstNumber = dis.readDouble();
-                double secondNumber = dis.readDouble();
-                
-                System.out.println("Number received: " + count + " X Pos: " + firstNumber + " Y Pos: " + secondNumber);
-            }
-        }
-        catch(Exception e)
-        {
-            System.out.println(e);
-        }
-    }
-    
-}
+/**
+ * This assignment uses the code from MV3500 example "multicastExample1"  
+ * modifications were made to way the packet is read to facilitate the double  
+ * instead of the float.
+ * 
+ * @author codyt
+ */
+import java.io.*;
+import java.net.*;
+
+
+public class TackettMultiCastReceiver
+{
+    /** socket parameter of interest */
+    public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
+    public static final int DESTINATION_PORT = 1717;
+    /** How many routers can be crossed */
+    static final int TTL = 10; 
+    
+    /** run the program
+     * @param args command-line arguments, string parameters (unused) */
+    public static void main(String[] args) 
+    {
+        try
+        {
+        
+            // This is a java/IPv6 problem. You should also add it to the
+            // arguments used to start the app, eg -Djava.net.preferIPv4Stack=true
+            // set in the "run" section of preferences. Also, typically
+            // netbeans must be restarted after these settings.
+            // https://stackoverflow.com/questions/18747134/getting-cant-assign-requested-address-java-net-socketexception-using-ehcache
+            System.setProperty("java.net.preferIPv4Stack", "true");
+            
+            
+            MulticastSocket multicastSocket = new MulticastSocket(DESTINATION_PORT);
+            multicastSocket.setTimeToLive(TTL);
+            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
+            System.out.println(multicastAddress);            
+            // Join group useful on receiving side
+            multicastSocket.joinGroup(multicastAddress);
+            // You can join multiple groups here
+            
+            int count = 0;
+            
+            while(true)
+            {
+                byte[] packetArray = new byte[1500];
+                DatagramPacket packet = new DatagramPacket(packetArray, packetArray.length);
+                
+                multicastSocket.receive(packet);
+                count++;
+                
+                ByteArrayInputStream bais = new ByteArrayInputStream(packet.getData());
+                DataInputStream dis = new DataInputStream(bais);
+                double firstNumber = dis.readDouble();
+                double secondNumber = dis.readDouble();
+                
+                System.out.println("Number received: " + count + " X Pos: " + firstNumber + " Y Pos: " + secondNumber);
+            }
+        }
+        catch(Exception e)
+        {
+            System.out.println(e);
+        }
+    }
+    
+}
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/TackettMulticastSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/TackettMulticastSender.java
index 59b5a2ce8b..d65093eb5b 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/TackettMulticastSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/TackettMulticastSender.java
@@ -13,11 +13,14 @@ import java.io.*;
 import java.net.*;
 
 
-public class TackettMulticastSender {
+public class TackettMulticastSender
+{
+    /** socket parameter of interest */
     public static final String MULTICAST_ADDRESS = "172.20.144.145";
+    /** socket parameter of interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10;
+    static final int TTL = 10;
     private int velocity;
     private float xPos;
     private float yPos;
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/YamashitaDeMouraMulticastReceiver.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/YamashitaDeMouraMulticastReceiver.java
index 071fd2d938..2c5a025bd0 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/YamashitaDeMouraMulticastReceiver.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/YamashitaDeMouraMulticastReceiver.java
@@ -1,79 +1,85 @@
 package MV3500Cohort2018JanuaryMarch.homework2;
 
-
-import java.io.*;
-import java.net.*;
-import java.util.Random;
-
-/**
- * MV3500
- * 
- * Multicast Receiver
- * 
- * @author Douglas Yamashita de Moura
- * @version 20180227
- * 
- */
-public class YamashitaDeMouraMulticastReceiver {
-    
-    public static final String MULTICAST_ADDRESS = "239.1.2.15";
-    public static final int DESTINATION_PORT = 1717;
-    public static final int TTL = 10; 
-    
-    public static void main(String[] args) 
-    {
-        try
-        {
-            System.setProperty("java.net.preferIPv4Stack", "true");            
-            MulticastSocket multicastSocket = new MulticastSocket(DESTINATION_PORT);
-            multicastSocket.setTimeToLive(TTL);
-            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
-            System.out.println(multicastAddress);            
-            multicastSocket.joinGroup(multicastAddress);
-            int count = 0;
-            
-            int randomReceiver = new Random().nextInt(100);
-            System.out.println("=== MULTICAST RECEIVER " + randomReceiver + " ===");
-            
-            while(true)
-            {
-                byte[] packetArray = new byte[1500];
-                DatagramPacket packet = new DatagramPacket(packetArray, packetArray.length);
-                multicastSocket.receive(packet);                
-                count++;
-                ByteArrayInputStream bais = new ByteArrayInputStream(packet.getData());
-                DataInputStream dis = new DataInputStream(bais);
-                char entity = dis.readChar();
-                String name = "";
-                int nameLength = 0;
-                switch(entity) {
-                    case 'A':
-                        nameLength = 4;
-                        name = "A";
-                        break;
-                    case 'B':
-                        nameLength = 4;
-                        name = "B";
-                        break;
-                }
-                
-                // Read name
-                for (int i = 0; i < nameLength; i++) {
-                    name += dis.readChar();
-                }
-                
-                // Read Position
-                float xPos = dis.readFloat();
-                float yPos = dis.readFloat();
-                float zPos = dis.readFloat();
-                System.out.println("Entity '" + name + "' with position (" + xPos +
-                                ", " + yPos + ", " + zPos +").");      
-                System.out.println("Number received: " + count);
-            }
-        }
-        catch(Exception e)
-        {
-            System.out.println(e);
-        }
-    }
-}
+
+import java.io.*;
+import java.net.*;
+import java.util.Random;
+
+/**
+ * MV3500
+ * 
+ * Multicast Receiver
+ * 
+ * @author Douglas Yamashita de Moura
+ * @version 20180227
+ * 
+ */
+public class YamashitaDeMouraMulticastReceiver {
+    
+    /** socket parameter of interest */
+    public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
+    public static final int DESTINATION_PORT = 1717;
+    static final int TTL = 10; 
+    
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
+    public static void main(String[] args) 
+    {
+        try
+        {
+            System.setProperty("java.net.preferIPv4Stack", "true");            
+            MulticastSocket multicastSocket = new MulticastSocket(DESTINATION_PORT);
+            multicastSocket.setTimeToLive(TTL);
+            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
+            System.out.println(multicastAddress);            
+            multicastSocket.joinGroup(multicastAddress);
+            int count = 0;
+            
+            int randomReceiver = new Random().nextInt(100);
+            System.out.println("=== MULTICAST RECEIVER " + randomReceiver + " ===");
+            
+            while(true)
+            {
+                byte[] packetArray = new byte[1500];
+                DatagramPacket packet = new DatagramPacket(packetArray, packetArray.length);
+                multicastSocket.receive(packet);                
+                count++;
+                ByteArrayInputStream bais = new ByteArrayInputStream(packet.getData());
+                DataInputStream dis = new DataInputStream(bais);
+                char entity = dis.readChar();
+                String name = "";
+                int nameLength = 0;
+                switch(entity) {
+                    case 'A':
+                        nameLength = 4;
+                        name = "A";
+                        break;
+                    case 'B':
+                        nameLength = 4;
+                        name = "B";
+                        break;
+                }
+                
+                // Read name
+                for (int i = 0; i < nameLength; i++) {
+                    name += dis.readChar();
+                }
+                
+                // Read Position
+                float xPos = dis.readFloat();
+                float yPos = dis.readFloat();
+                float zPos = dis.readFloat();
+                System.out.println("Entity '" + name + "' with position (" + xPos +
+                                ", " + yPos + ", " + zPos +").");      
+                System.out.println("Number received: " + count);
+            }
+        }
+        catch(Exception e)
+        {
+            System.out.println(e);
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/YamashitaDeMouraMulticastSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/YamashitaDeMouraMulticastSender.java
index f61601a21d..2d88a60263 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/YamashitaDeMouraMulticastSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework2/YamashitaDeMouraMulticastSender.java
@@ -1,87 +1,91 @@
 package MV3500Cohort2018JanuaryMarch.homework2;
 
-
-import java.io.*;
-import java.net.*;
-import java.util.Random;
-
-/**
- * MV3500
- * 
- * Multicast Sender
- * 
- * @author Douglas Yamashita de Moura
- * @version 20180227
- * 
- */
-public class YamashitaDeMouraMulticastSender {
-    
-    public static final String MULTICAST_ADDRESS = "239.1.2.15";
-    public static final int DESTINATION_PORT = 1717;
-    public static final int TTL = 10;
-    
-    
-    public static void main(String[] args) 
-    {
-        YamashitaDeMouraMulticastEntity entityA = new YamashitaDeMouraMulticastEntity("Alpha", 0, 0, 0, 2);
-        YamashitaDeMouraMulticastEntity entityB = new YamashitaDeMouraMulticastEntity("Bravo", 0, 0, 0, 3);
-       
-        try
-        {
-            System.setProperty("java.net.preferIPv4Stack", "true");
-                        
-            MulticastSocket multicastSocket = new MulticastSocket(1718);
-            multicastSocket.setTimeToLive(TTL);
-            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
-            System.out.println(multicastAddress);            
-            multicastSocket.joinGroup(multicastAddress);
-            ByteArrayOutputStream baos = new ByteArrayOutputStream();
-            DataOutputStream dos = new DataOutputStream(baos);           
-            
-            Random randomProb = new Random();
-            
-            System.out.println("=== MULTICAST SENDER ===");
-            
-            for(int idx = 1; idx < 100; idx++)
-            {
-                int prob = randomProb.nextInt(5);
-                
-                if(prob < 2) {
-                    dos.writeChars(entityA.getName());
-                    // Move only in x direction
-                    float newPos = entityA.getX()+entityA.getVelocity();
-                    entityA.setX(newPos);
-                    dos.writeFloat(entityA.getX());
-                    dos.writeFloat(entityA.getY());
-                    dos.writeFloat(entityA.getZ());
-                    System.out.println("Entity '" + entityA.getName() +
-                            "' with position (" + entityA.getX() + ", " +
-                            entityA.getY() + ", " + entityA.getZ() + ")");
-                } else if (prob < 5) {
-                    dos.writeChars(entityB.getName());
-                    dos.writeFloat(entityB.getX());
-                    // Move only in y direction
-                    float newPos = entityB.getY()+entityB.getVelocity();
-                    entityB.setY(newPos);
-                    dos.writeFloat(entityB.getY());
-                    dos.writeFloat(entityB.getZ());
-                    System.out.println("Entity '" + entityB.getName() +
-                            "' with position (" + entityB.getX() + ", " +
-                            entityB.getY() + ", " + entityB.getZ() + ")");
-                }
-                
-                byte[] buffer = baos.toByteArray();
-            
-                DatagramPacket packet = new DatagramPacket(buffer, buffer.length, multicastAddress, DESTINATION_PORT);                
-                multicastSocket.send(packet);
-                baos.reset();
-                Thread.sleep(1000); // Send 100, one per second
-                System.out.println("Sent multicast packet " + idx + " of 100");
-            }
-        }
-        catch(Exception e)
-        {
-            System.out.println(e);
-        }
-    }
-}
+
+import java.io.*;
+import java.net.*;
+import java.util.Random;
+
+/**
+ * MV3500
+ * 
+ * Multicast Sender
+ * 
+ * @author Douglas Yamashita de Moura
+ * @version 20180227
+ * 
+ */
+public class YamashitaDeMouraMulticastSender
+{    
+    /** socket parameter of interest */
+    public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
+    public static final int DESTINATION_PORT = 1717;
+    static final int TTL = 10;
+    
+    
+    /** Program invocation, execution starts here
+     * @param args command-line arguments  */
+    public static void main(String[] args) 
+    {
+        YamashitaDeMouraMulticastEntity entityA = new YamashitaDeMouraMulticastEntity("Alpha", 0, 0, 0, 2);
+        YamashitaDeMouraMulticastEntity entityB = new YamashitaDeMouraMulticastEntity("Bravo", 0, 0, 0, 3);
+       
+        try
+        {
+            System.setProperty("java.net.preferIPv4Stack", "true");
+                        
+            MulticastSocket multicastSocket = new MulticastSocket(1718);
+            multicastSocket.setTimeToLive(TTL);
+            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
+            System.out.println(multicastAddress);            
+            multicastSocket.joinGroup(multicastAddress);
+            ByteArrayOutputStream baos = new ByteArrayOutputStream();
+            DataOutputStream dos = new DataOutputStream(baos);           
+            
+            Random randomProb = new Random();
+            
+            System.out.println("=== MULTICAST SENDER ===");
+            
+            for(int idx = 1; idx < 100; idx++)
+            {
+                int prob = randomProb.nextInt(5);
+                
+                if(prob < 2) {
+                    dos.writeChars(entityA.getName());
+                    // Move only in x direction
+                    float newPos = entityA.getX()+entityA.getVelocity();
+                    entityA.setX(newPos);
+                    dos.writeFloat(entityA.getX());
+                    dos.writeFloat(entityA.getY());
+                    dos.writeFloat(entityA.getZ());
+                    System.out.println("Entity '" + entityA.getName() +
+                            "' with position (" + entityA.getX() + ", " +
+                            entityA.getY() + ", " + entityA.getZ() + ")");
+                } else if (prob < 5) {
+                    dos.writeChars(entityB.getName());
+                    dos.writeFloat(entityB.getX());
+                    // Move only in y direction
+                    float newPos = entityB.getY()+entityB.getVelocity();
+                    entityB.setY(newPos);
+                    dos.writeFloat(entityB.getY());
+                    dos.writeFloat(entityB.getZ());
+                    System.out.println("Entity '" + entityB.getName() +
+                            "' with position (" + entityB.getX() + ", " +
+                            entityB.getY() + ", " + entityB.getZ() + ")");
+                }
+                
+                byte[] buffer = baos.toByteArray();
+            
+                DatagramPacket packet = new DatagramPacket(buffer, buffer.length, multicastAddress, DESTINATION_PORT);                
+                multicastSocket.send(packet);
+                baos.reset();
+                Thread.sleep(1000); // Send 100, one per second
+                System.out.println("Sent multicast packet " + idx + " of 100");
+            }
+        }
+        catch(Exception e)
+        {
+            System.out.println(e);
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Angel_OpenDisEspduSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Angel_OpenDisEspduSender.java
index 674acbcea5..0389944666 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Angel_OpenDisEspduSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Angel_OpenDisEspduSender.java
@@ -17,7 +17,7 @@ import edu.nps.moves.disutil.DisTime;
  */
 public class Angel_OpenDisEspduSender 
 {
-    public static final int NUMBER_TO_SEND = 5000;
+    static final int NUMBER_TO_SEND = 5000;
 
     /** Type of network connection */
 	public enum NetworkMode {
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/BlankenbekerOpenDisEspduSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/BlankenbekerOpenDisEspduSender.java
index cfab01793a..824ed62247 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/BlankenbekerOpenDisEspduSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/BlankenbekerOpenDisEspduSender.java
@@ -18,7 +18,7 @@ import edu.nps.moves.disutil.DisTime;
 public class BlankenbekerOpenDisEspduSender 
 {
     
-    public static final int NUMBER_TO_SEND = 5000;
+    static final int NUMBER_TO_SEND = 5000;
 
     /** Type of network connection */
 	public enum NetworkMode {
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/ConardSnellOpenDisEspduSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/ConardSnellOpenDisEspduSender.java
index e5919470b2..da85db1aad 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/ConardSnellOpenDisEspduSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/ConardSnellOpenDisEspduSender.java
@@ -17,7 +17,7 @@ import edu.nps.moves.disutil.DisTime;
  */
 public class ConardSnellOpenDisEspduSender 
 {
-    public static final int NUMBER_TO_SEND = 5000;
+    static final int NUMBER_TO_SEND = 5000;
 
     /** Type of network connection */
 	public enum NetworkMode {
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/EspduReceiver.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/EspduReceiver.java
index 718c23fc4b..6454420a8f 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/EspduReceiver.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/EspduReceiver.java
@@ -20,6 +20,8 @@ public class EspduReceiver {
      */
     public static final int MAX_PDU_SIZE = 8192;
 
+    /** Program invocation, execution starts here
+     * @param args command-line arguments  */
     public static void main(String args[]) {
         MulticastSocket socket;
         DatagramPacket packet;
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Hanley_OpenDisEspduSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Hanley_OpenDisEspduSender.java
index 0857a42f7b..957249a3fb 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Hanley_OpenDisEspduSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Hanley_OpenDisEspduSender.java
@@ -17,7 +17,7 @@ import edu.nps.moves.disutil.DisTime;
  */
 public class Hanley_OpenDisEspduSender 
 {
-    public static final int NUMBER_TO_SEND = 5000;
+    static final int NUMBER_TO_SEND = 5000;
 
     /** Type of network connection */
 	public enum NetworkMode {
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Landas_OpenDisEspduSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Landas_OpenDisEspduSender.java
index 5235b1563a..74f507eaa8 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Landas_OpenDisEspduSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Landas_OpenDisEspduSender.java
@@ -17,7 +17,7 @@ import edu.nps.moves.disutil.DisTime;
  */
 public class Landas_OpenDisEspduSender 
 {
-    public static final int NUMBER_TO_SEND = 5000;
+    static final int NUMBER_TO_SEND = 5000;
 
     /** Type of network connection */
 	public enum NetworkMode {
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/OpenDisEspduSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/OpenDisEspduSender.java
index 1f808475bc..de4f319881 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/OpenDisEspduSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/OpenDisEspduSender.java
@@ -17,7 +17,7 @@ import edu.nps.moves.disutil.DisTime;
  */
 public class OpenDisEspduSender 
 {
-    public static final int NUMBER_TO_SEND = 5000;
+    static final int NUMBER_TO_SEND = 5000;
 
     /** Type of network connection */
 	public enum NetworkMode {
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/OpenDisPduSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/OpenDisPduSender.java
index a592ad4d1e..94572a8295 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/OpenDisPduSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/OpenDisPduSender.java
@@ -1,184 +1,190 @@
 package MV3500Cohort2018JanuaryMarch.homework3;
 
-// package edu.nps.moves.examples; // copy example from OpenDIS distribution, modify to serve as template
-
-import java.io.*;
-import java.net.*;
-import java.util.*;
-
-import edu.nps.moves.dis.*; // OpenDIS version 4
-import edu.nps.moves.disenum.*;
-
-/**
- * This is an example that sends many/most types of PDUs. Useful for testing standards
- * compliance or getting a full set of PDUs. It also writes the generated PDUs to
- * an XML file.
- *
- * @author DMcG
- * @version $Id:$
- */
-public class OpenDisPduSender {
-
-    public static final int    PORT = 3000;
-    public static final String MULTICAST_ADDRESS = "239.1.2.3";
-    private int port;
-    InetAddress multicastAddress;
-
-    public OpenDisPduSender(int port, String multicast) 
-	{
-        try {
-            this.port = port;
-            multicastAddress = InetAddress.getByName(multicast);
-            if (!multicastAddress.isMulticastAddress()) {
-                System.out.println("Not a multicast address: " + multicast);
-            }
-        } 
-		catch (UnknownHostException e) {
-            System.out.println("Unable to open socket: " + e);
-        }
-    }
-
-    public void run() {
-        try {
-            List<Pdu> generatedPdus = new ArrayList<>();
-
-            // Loop through all the enumerated PDU types, create a PDU for each type,
-            // and add that PDU to a list.
-            for (PduType pdu : PduType.values()) {
-                Pdu aPdu = null;
-
-                switch (pdu) {
-                    case ENTITY_STATE:
-                        // TODO continue to add unit tests
-						EntityStatePdu entityStatePdu = new EntityStatePdu();
-						Marking espduMarking = new Marking();
-						espduMarking.setCharactersString("Testing 123");
-						// TODO libary should warn if > 11 characters
-						entityStatePdu.setMarking(espduMarking);
-						EntityID espduEntityID = new EntityID();
-						espduEntityID.setSite(1);
-						espduEntityID.setApplication(2);
-						espduEntityID.setEntity(3);
-						entityStatePdu.setEntityID(espduEntityID);
-                        // TODO consider adding utility methods to Open-DIS
-						aPdu = entityStatePdu;
-                        break;
-                        
-                    case COMMENT:
-                        aPdu = new CommentPdu();
-                        break;
-
-                    case FIRE:
-                        aPdu = new FirePdu();
-                        break;
-
-                    case DETONATION:
-                        aPdu = new DetonationPdu();
-                        break;
-
-                    case COLLISION:
-                        aPdu = new CollisionPdu();
-                        break;
-
-                    case SERVICE_REQUEST:
-                        aPdu = new ServiceRequestPdu();
-                        break;
-
-                    case RESUPPLY_OFFER:
-                        aPdu = new ResupplyOfferPdu();
-                        break;
-
-                    case RESUPPLY_RECEIVED:
-                        aPdu = new ResupplyReceivedPdu();
-                        break;
-
-                    case RESUPPLY_CANCEL:
-                        aPdu = new ResupplyCancelPdu();
-                        break;
-
-                    case REPAIR_COMPLETE:
-                        aPdu = new RepairCompletePdu();
-                        break;
-
-                    case REPAIR_RESPONSE:
-                        aPdu = new RepairResponsePdu();
-                        break;
-
-                    case CREATE_ENTITY:
-                        aPdu = new CreateEntityPdu();
-                        break;
-
-                    case REMOVE_ENTITY:
-                        aPdu = new RemoveEntityPdu();
-                        break;
-
-                    case START_RESUME:
-                        aPdu = new StartResumePdu();
-                        break;
-
-                    case STOP_FREEZE:
-                        aPdu = new StopFreezePdu();
-                        break;
-
-                    case ACKNOWLEDGE:
-                        aPdu = new AcknowledgePdu();
-                        break;
-
-                    case ACTION_REQUEST:
-                        aPdu = new ActionRequestPdu();
-                        break;
-
-                    default:
-                        System.out.print("PDU of type " + pdu + " not supported, created or sent ");
-                        System.out.println();
-                }
-
-                if (aPdu != null) {
-                    generatedPdus.add(aPdu);
-                }
-            }
-
-            // Sort the created PDUs by class name
-            Collections.sort(generatedPdus, new edu.nps.moves.examples.ClassNameComparator());
-
-            // Send the PDUs we created
-            InetAddress localMulticastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
-            MulticastSocket socket = new MulticastSocket(PORT);
-            socket.joinGroup(localMulticastAddress);
-
-            for (int idx = 0; idx < generatedPdus.size(); idx++) {
-                ByteArrayOutputStream baos = new ByteArrayOutputStream();
-                DataOutputStream dos = new DataOutputStream(baos);
-                byte[] buffer;
-
-                Pdu aPdu = generatedPdus.get(idx);
-                aPdu.marshal(dos);
-
-                buffer = baos.toByteArray();
-                DatagramPacket packet = new DatagramPacket(buffer, buffer.length, localMulticastAddress, PORT);
-                socket.send(packet);
-                System.out.println("Sent PDU of type " + aPdu.getClass().getName());
-            }
-
-            // write the PDUs out to an XML file.
-            //PduContainer container = new PduContainer();
-            //container.setPdus(generatedPdus);
-            //container.marshallToXml("examplePdus.xml");
-        } 
-		catch (IOException e) {
-            System.out.println(e);
-        }
-    }
-
-    public static void main(String args[]) {
-        if (args.length == 2) {
-            OpenDisPduSender sender = new  OpenDisPduSender(Integer.parseInt(args[0]), args[1]);
-            sender.run();
-        } else {
-            System.out.println("Usage:   OpenDisPduSender <port> <multicast group>");
-            System.out.println("Default: OpenDisPduSender  " + PORT + "   " + MULTICAST_ADDRESS);
-            OpenDisPduSender sender = new  OpenDisPduSender(PORT, MULTICAST_ADDRESS);
-            sender.run();
-        }
-    }
-}
+// package edu.nps.moves.examples; // copy example from OpenDIS distribution, modify to serve as template
+
+import java.io.*;
+import java.net.*;
+import java.util.*;
+
+import edu.nps.moves.dis.*; // OpenDIS version 4
+import edu.nps.moves.disenum.*;
+
+/**
+ * This is an example that sends many/most types of PDUs. Useful for testing standards
+ * compliance or getting a full set of PDUs. It also writes the generated PDUs to
+ * an XML file.
+ *
+ * @author DMcG
+ * @version $Id:$
+ */
+public class OpenDisPduSender
+{
+    /** socket parameter of interest */
+    public static final int    PORT = 3000;
+    /** socket parameter of interest */
+    public static final String MULTICAST_ADDRESS = "239.1.2.3";
+    private int port;
+    InetAddress multicastAddress;
+
+    public OpenDisPduSender(int port, String multicast) 
+	{
+        try {
+            this.port = port;
+            multicastAddress = InetAddress.getByName(multicast);
+            if (!multicastAddress.isMulticastAddress()) {
+                System.out.println("Not a multicast address: " + multicast);
+            }
+        } 
+		catch (UnknownHostException e) {
+            System.out.println("Unable to open socket: " + e);
+        }
+    }
+
+    public void run() {
+        try {
+            List<Pdu> generatedPdus = new ArrayList<>();
+
+            // Loop through all the enumerated PDU types, create a PDU for each type,
+            // and add that PDU to a list.
+            for (PduType pdu : PduType.values()) {
+                Pdu aPdu = null;
+
+                switch (pdu) {
+                    case ENTITY_STATE:
+                        // TODO continue to add unit tests
+						EntityStatePdu entityStatePdu = new EntityStatePdu();
+						Marking espduMarking = new Marking();
+						espduMarking.setCharactersString("Testing 123");
+						// TODO libary should warn if > 11 characters
+						entityStatePdu.setMarking(espduMarking);
+						EntityID espduEntityID = new EntityID();
+						espduEntityID.setSite(1);
+						espduEntityID.setApplication(2);
+						espduEntityID.setEntity(3);
+						entityStatePdu.setEntityID(espduEntityID);
+                        // TODO consider adding utility methods to Open-DIS
+						aPdu = entityStatePdu;
+                        break;
+                        
+                    case COMMENT:
+                        aPdu = new CommentPdu();
+                        break;
+
+                    case FIRE:
+                        aPdu = new FirePdu();
+                        break;
+
+                    case DETONATION:
+                        aPdu = new DetonationPdu();
+                        break;
+
+                    case COLLISION:
+                        aPdu = new CollisionPdu();
+                        break;
+
+                    case SERVICE_REQUEST:
+                        aPdu = new ServiceRequestPdu();
+                        break;
+
+                    case RESUPPLY_OFFER:
+                        aPdu = new ResupplyOfferPdu();
+                        break;
+
+                    case RESUPPLY_RECEIVED:
+                        aPdu = new ResupplyReceivedPdu();
+                        break;
+
+                    case RESUPPLY_CANCEL:
+                        aPdu = new ResupplyCancelPdu();
+                        break;
+
+                    case REPAIR_COMPLETE:
+                        aPdu = new RepairCompletePdu();
+                        break;
+
+                    case REPAIR_RESPONSE:
+                        aPdu = new RepairResponsePdu();
+                        break;
+
+                    case CREATE_ENTITY:
+                        aPdu = new CreateEntityPdu();
+                        break;
+
+                    case REMOVE_ENTITY:
+                        aPdu = new RemoveEntityPdu();
+                        break;
+
+                    case START_RESUME:
+                        aPdu = new StartResumePdu();
+                        break;
+
+                    case STOP_FREEZE:
+                        aPdu = new StopFreezePdu();
+                        break;
+
+                    case ACKNOWLEDGE:
+                        aPdu = new AcknowledgePdu();
+                        break;
+
+                    case ACTION_REQUEST:
+                        aPdu = new ActionRequestPdu();
+                        break;
+
+                    default:
+                        System.out.print("PDU of type " + pdu + " not supported, created or sent ");
+                        System.out.println();
+                }
+
+                if (aPdu != null) {
+                    generatedPdus.add(aPdu);
+                }
+            }
+
+            // Sort the created PDUs by class name
+            Collections.sort(generatedPdus, new edu.nps.moves.examples.ClassNameComparator());
+
+            // Send the PDUs we created
+            InetAddress localMulticastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
+            MulticastSocket socket = new MulticastSocket(PORT);
+            socket.joinGroup(localMulticastAddress);
+
+            for (int idx = 0; idx < generatedPdus.size(); idx++) {
+                ByteArrayOutputStream baos = new ByteArrayOutputStream();
+                DataOutputStream dos = new DataOutputStream(baos);
+                byte[] buffer;
+
+                Pdu aPdu = generatedPdus.get(idx);
+                aPdu.marshal(dos);
+
+                buffer = baos.toByteArray();
+                DatagramPacket packet = new DatagramPacket(buffer, buffer.length, localMulticastAddress, PORT);
+                socket.send(packet);
+                System.out.println("Sent PDU of type " + aPdu.getClass().getName());
+            }
+
+            // write the PDUs out to an XML file.
+            //PduContainer container = new PduContainer();
+            //container.setPdus(generatedPdus);
+            //container.marshallToXml("examplePdus.xml");
+        } 
+		catch (IOException e) {
+            System.out.println(e);
+        }
+    }
+
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
+    public static void main(String args[]) {
+        if (args.length == 2) {
+            OpenDisPduSender sender = new  OpenDisPduSender(Integer.parseInt(args[0]), args[1]);
+            sender.run();
+        } else {
+            System.out.println("Usage:   OpenDisPduSender <port> <multicast group>");
+            System.out.println("Default: OpenDisPduSender  " + PORT + "   " + MULTICAST_ADDRESS);
+            OpenDisPduSender sender = new  OpenDisPduSender(PORT, MULTICAST_ADDRESS);
+            sender.run();
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Sasala_OpenDisEspduSender1.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Sasala_OpenDisEspduSender1.java
index c583e0f4ee..8e69a69a5c 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Sasala_OpenDisEspduSender1.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Sasala_OpenDisEspduSender1.java
@@ -16,7 +16,7 @@ import edu.nps.moves.disutil.DisTime;
  */
 public class Sasala_OpenDisEspduSender1 
 {
-    public static final int NUMBER_TO_SEND = 5000;
+    static final int NUMBER_TO_SEND = 5000;
 
     /** Type of network connection */
 	public enum NetworkMode {
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Tackett_Assignment3_OpenDisEspduSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Tackett_Assignment3_OpenDisEspduSender.java
index f3a80329ee..f0cc8cdb25 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Tackett_Assignment3_OpenDisEspduSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/Tackett_Assignment3_OpenDisEspduSender.java
@@ -17,7 +17,7 @@ import edu.nps.moves.disutil.DisTime;
  */
 public class Tackett_Assignment3_OpenDisEspduSender 
 {
-    public static final int NUMBER_TO_SEND = 10;
+    static final int NUMBER_TO_SEND = 10;
 
     /** Type of network connection */
 	public enum NetworkMode {
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/YamashitaDeMouraOpenDisEspduSender.java b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/YamashitaDeMouraOpenDisEspduSender.java
index bc635f11ab..f566339882 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/YamashitaDeMouraOpenDisEspduSender.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/homework3/YamashitaDeMouraOpenDisEspduSender.java
@@ -20,7 +20,7 @@ import edu.nps.moves.disutil.DisTime;
 
 public class YamashitaDeMouraOpenDisEspduSender 
 {
-    public static final int NUMBER_TO_SEND = 5000;
+    static final int NUMBER_TO_SEND = 5000;
 
     /** Type of network connection */
 	public enum NetworkMode {
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduReceiverBtoTCP.java b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduReceiverBtoTCP.java
index 2581308e2d..aba94c4e6a 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduReceiverBtoTCP.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduReceiverBtoTCP.java
@@ -19,16 +19,19 @@ import java.io.DataOutputStream;
  */
 public class AngelBlankEspduReceiverBtoTCP {
 
+    /** socket parameter of interest */
     public static final String TCP_DESTINATION_IP = "172.20.144.187";
+    /** socket parameter of interest */
     public static final int DIS_DESTINATION_PORT = 2800;
+    /** socket parameter of interest */
     public static final int TCP_DESTINATION_PORT = 2998;
+    /** socket parameter of interest */
     public static final int MAX_PDU_SIZE = 8192;
+    /** socket parameter of interest */
     public static final String GROUP = "239.1.2.3";
 
-    /**
-     * Program invocation, execution starts here
-     * @param args command-line arguments
-     */
+    /** Program invocation, execution starts here
+     * @param args command-line arguments  */
     public static void main(String args[]) {
         MulticastSocket socket;
         DatagramPacket packet;
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduSenderA.java b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduSenderA.java
index 0e9f0d0772..1aa7b5bc2a 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduSenderA.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduSenderA.java
@@ -17,7 +17,7 @@ import edu.nps.moves.disutil.DisTime;
  */
 public class AngelBlankEspduSenderA 
 {
-    public static final int NUMBER_TO_SEND = 5000;
+    static final int NUMBER_TO_SEND = 5000;
 
     /** Type of network connection */
 	public enum NetworkMode {
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduSenderB.java b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduSenderB.java
index 894e04cf75..bc080d6601 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduSenderB.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduSenderB.java
@@ -17,7 +17,7 @@ import edu.nps.moves.disutil.DisTime;
  */
 public class AngelBlankEspduSenderB 
 {
-    public static final int NUMBER_TO_SEND = 5000;
+    static final int NUMBER_TO_SEND = 5000;
     /** Type of network connection */
 	public enum NetworkMode {
         /** @see <a href="https://en.wikipedia.org/wiki/Unicast">https://en.wikipedia.org/wiki/Unicast</a> */
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduTCPReceiverASenderB.java b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduTCPReceiverASenderB.java
index f7e4756f1d..8620080cff 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduTCPReceiverASenderB.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduTCPReceiverASenderB.java
@@ -19,7 +19,7 @@ import edu.nps.moves.disutil.DisTime;
  */
 public class AngelBlankEspduTCPReceiverASenderB
 {
-    public static final int NUMBER_TO_SEND = 5000;
+    static final int NUMBER_TO_SEND = 5000;
     /** Type of network connection */
 	public enum NetworkMode {
         /** @see <a href="https://en.wikipedia.org/wiki/Unicast">https://en.wikipedia.org/wiki/Unicast</a> */
@@ -31,7 +31,9 @@ public class AngelBlankEspduTCPReceiverASenderB
 	};
     /** default multicast group we send on */
     public static final String DEFAULT_MULTICAST_GROUP="239.1.2.3";
+    /** socket parameter of interest */
     public static final int MAX_PDU_SIZE = 8192;
+    /** socket parameter of interest */
     public static final int TCP_DESTINATION_PORT = 2999;
     /** Port we send on */
     public static final int DIS_DESTINATION_PORT = 2800;
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduTCPReceiverBSenderA.java b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduTCPReceiverBSenderA.java
index 07ae98a9fb..e6b8b4857f 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduTCPReceiverBSenderA.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/AngelopoulosBlankenbeker/AngelBlankEspduTCPReceiverBSenderA.java
@@ -17,7 +17,7 @@ import edu.nps.moves.disutil.PduFactory;
  */
 public class AngelBlankEspduTCPReceiverBSenderA
 {
-    public static final int NUMBER_TO_SEND = 5000;
+    static final int NUMBER_TO_SEND = 5000;
 
     /** Type of network connection */
 	public enum NetworkMode {
@@ -28,9 +28,11 @@ public class AngelBlankEspduTCPReceiverBSenderA
         /** @see <a href="https://en.wikipedia.org/wiki/Broadcasting_(networking)">https://en.wikipedia.org/wiki/Broadcasting_(networking)</a> */
         BROADCAST
 	};
+    /** socket parameter of interest */
     public static final int MAX_PDU_SIZE = 8192;
     /** default multicast group we send on */
     public static final String DEFAULT_MULTICAST_GROUP="239.1.2.4";
+    /** socket parameter of interest */
     public static final int TCP_DESTINATION_PORT = 2998;
     /** Port we send on */
     public static final int DIS_DESTINATION_PORT = 3000;
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/Hanley/HanleyOpenDisEspduSenderFP.java b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/Hanley/HanleyOpenDisEspduSenderFP.java
index 688199cd26..7853c92714 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/Hanley/HanleyOpenDisEspduSenderFP.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/Hanley/HanleyOpenDisEspduSenderFP.java
@@ -26,7 +26,7 @@ import edu.nps.moves.disutil.DisTime;
  */
 public class HanleyOpenDisEspduSenderFP 
 {
-    //public static final int NUMBER_TO_SEND = 5000;
+    //static final int NUMBER_TO_SEND = 5000;
 
     /** Type of network connection */
 	public enum NetworkMode {
diff --git a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/SasalaMaroon/CSVreaderOpenDisEspduSenderFP.java b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/SasalaMaroon/CSVreaderOpenDisEspduSenderFP.java
index 2ee59198cd..64264ad0fd 100644
--- a/assignments/src/MV3500Cohort2018JanuaryMarch/projects/SasalaMaroon/CSVreaderOpenDisEspduSenderFP.java
+++ b/assignments/src/MV3500Cohort2018JanuaryMarch/projects/SasalaMaroon/CSVreaderOpenDisEspduSenderFP.java
@@ -32,9 +32,12 @@ import edu.nps.moves.disutil.DisTime;
  */
 public class CSVreaderOpenDisEspduSenderFP 
 {
-    //public static final int NUMBER_TO_SEND = 5000;
+    //static final int NUMBER_TO_SEND = 5000;
+    /** socket parameter of interest */
     public static final int SENDING_PORT   = 1414;
+    /** socket parameter of interest */
     public static final int RECEIVING_PORT = 1415;
+    /** socket parameter of interest */
     public static final String DESTINATION_HOST = "localhost";
 
     /** Type of network connection */
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework2/Ayres_Client.java b/assignments/src/MV3500Cohort2018JulySeptember/homework2/Ayres_Client.java
index 4c08c937ba..3572ad23c4 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework2/Ayres_Client.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework2/Ayres_Client.java
@@ -19,6 +19,7 @@ import java.net.Socket;
  */
 public class Ayres_Client {
 
+    /** socket parameter of interest */
 	public final static String LOCALHOST = "0:0:0:0:0:0:0:1"; // String constant, i.e. 127.0.0.1
 
     /**
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework2/CainTcpClient.java b/assignments/src/MV3500Cohort2018JulySeptember/homework2/CainTcpClient.java
index 8b18631fcd..075d9988bc 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework2/CainTcpClient.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework2/CainTcpClient.java
@@ -7,8 +7,9 @@ import java.net.*;
 /**
  * credit to author mcgredo
  */
-public class CainTcpClient {
-
+public class CainTcpClient
+{
+    /** socket parameter of interest */
     public final static String LOCALHOST = "0:0:0:0:0:0:0:1"; // String constant, i.e. 127.0.0.1
     
 /*
@@ -18,6 +19,8 @@ public class CainTcpClient {
 * show up on both the client and server output so the conversation between
 * both makes sense and don't have to click back and forth to understand.
 */
+    /** Program invocation, execution starts here
+     * @param args command-line arguments  */
     public static void main(String[] args) {
         try {
             while (true) {
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework2/CainTcpServer.java b/assignments/src/MV3500Cohort2018JulySeptember/homework2/CainTcpServer.java
index b73b55794b..90f979f53e 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework2/CainTcpServer.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework2/CainTcpServer.java
@@ -19,6 +19,10 @@ public class CainTcpServer
 * show up on both the client and server output so the conversation between
 * both makes sense and don't have to click back and forth to understand.
 */    
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String[] args) 
     {
         try
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework2/JacksonTcpClient.java b/assignments/src/MV3500Cohort2018JulySeptember/homework2/JacksonTcpClient.java
index 81cd8c3715..0bb1cec615 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework2/JacksonTcpClient.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework2/JacksonTcpClient.java
@@ -13,12 +13,15 @@ import java.net.*;
  *
  * @author mcgredo
  */
-public class JacksonTcpClient {
-
+public class JacksonTcpClient
+{
+    /** socket parameter of interest */
 	public final static String LOCALHOST = "0:0:0:0:0:0:0:1"; // String constant, i.e. 127.0.0.1
         
-
-	public static void main(String[] args) {
+    /** Program invocation, execution starts here
+     * @param args command-line arguments  */
+	public static void main(String[] args) 
+    {
             int i = 1;
 		try {
 			while (true) {
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework2/JacksonTcpServer.java b/assignments/src/MV3500Cohort2018JulySeptember/homework2/JacksonTcpServer.java
index 004ebb63de..043a9ebf83 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework2/JacksonTcpServer.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework2/JacksonTcpServer.java
@@ -23,6 +23,8 @@ import java.net.*;
  */
 public class JacksonTcpServer {
 
+    /** Program invocation, execution starts here
+     * @param args command-line arguments  */
 	@SuppressWarnings("ConvertToTryWithResources")
 	public static void main(String[] args)
 	{
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework2/Loeffelman/LoeffelmanAssignment2Client.java b/assignments/src/MV3500Cohort2018JulySeptember/homework2/Loeffelman/LoeffelmanAssignment2Client.java
index 907b346e17..2e0692f9f0 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework2/Loeffelman/LoeffelmanAssignment2Client.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework2/Loeffelman/LoeffelmanAssignment2Client.java
@@ -18,10 +18,15 @@ import java.util.Scanner;
  * @author DonMcGregor
  * @author garrettloeffelman
  */
-public class LoeffelmanAssignment2Client {
-
+public class LoeffelmanAssignment2Client
+{
+    /** socket parameter of interest */
    public final static String LOCALHOST = "0:0:0:0:0:0:0:1"; // String constant, i.e. 127.0.0.1
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
 	public static void main(String[] args) {
             
 		try {
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework2/Loeffelman/LoeffelmanAssignment2Server.java b/assignments/src/MV3500Cohort2018JulySeptember/homework2/Loeffelman/LoeffelmanAssignment2Server.java
index 303060e1e0..5711cf02c7 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework2/Loeffelman/LoeffelmanAssignment2Server.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework2/Loeffelman/LoeffelmanAssignment2Server.java
@@ -22,6 +22,10 @@ import java.util.Scanner;
  */
 public class LoeffelmanAssignment2Server {
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     @SuppressWarnings("ConvertToTryWithResources")
 	public static void main(String[] args)
 	{
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework2/Severson/SeversonAssignment2_Client.java b/assignments/src/MV3500Cohort2018JulySeptember/homework2/Severson/SeversonAssignment2_Client.java
index 4c7801d4fc..e7fdb0bc72 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework2/Severson/SeversonAssignment2_Client.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework2/Severson/SeversonAssignment2_Client.java
@@ -22,6 +22,7 @@ import javax.swing.JOptionPane;
  */
 public class SeversonAssignment2_Client {
 
+    /** socket parameter of interest */
     public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
 
     /**
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework2/Thomerson/ThomersonAssignment2Client.java b/assignments/src/MV3500Cohort2018JulySeptember/homework2/Thomerson/ThomersonAssignment2Client.java
index d247794e28..3fc7ecc520 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework2/Thomerson/ThomersonAssignment2Client.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework2/Thomerson/ThomersonAssignment2Client.java
@@ -23,10 +23,15 @@ import java.util.Scanner;
  * 
  * @author courtneythomerson
  */
-public class ThomersonAssignment2Client {
-
+public class ThomersonAssignment2Client
+{
+    /** socket parameter of interest */
     public final static String LOCALHOST = "0:0:0:0:0:0:0:1"; // String constant, i.e. 127.0.0.1
     
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String[] args) {
  
         try {
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework2/Thomerson/ThomersonAssignment2Server.java b/assignments/src/MV3500Cohort2018JulySeptember/homework2/Thomerson/ThomersonAssignment2Server.java
index bd72a95d7a..c2a4992082 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework2/Thomerson/ThomersonAssignment2Server.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework2/Thomerson/ThomersonAssignment2Server.java
@@ -32,6 +32,10 @@ import java.net.Socket;
 public class ThomersonAssignment2Server {
 
     
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String[] args) {
         try
         {
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework3/AyresDemchkoHomework3/AyresDemchkoMulticastReceiver.java b/assignments/src/MV3500Cohort2018JulySeptember/homework3/AyresDemchkoHomework3/AyresDemchkoMulticastReceiver.java
index 7bb7b29568..f3e1125f19 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework3/AyresDemchkoHomework3/AyresDemchkoMulticastReceiver.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework3/AyresDemchkoHomework3/AyresDemchkoMulticastReceiver.java
@@ -1,89 +1,92 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-package MV3500Cohort2018JulySeptember.homework3.AyresDemchkoHomework3;
-
-import java.io.ByteArrayInputStream;
-import java.io.DataInputStream;
-import java.io.IOException;
-import java.net.DatagramPacket;
-import java.net.DatagramSocket;
-import java.net.InetAddress;
-import java.net.MulticastSocket;
-import java.net.UnknownHostException;
-/**
- *
- * @author kjayr
- */
-public class AyresDemchkoMulticastReceiver {
-public static final String MULTICAST_ADDRESS = "239.1.2.15";
-    public static final int DESTINATION_PORT = 1717;
-    /** How many routers can be crossed */
-    public static final int TTL = 10; 
-
-    /**
-     * Program invocation, execution starts here
-     * @param args command-line arguments
-     */
-    public static void main(String[] args) 
-    {
-        try
-        {
-        
-            // This is a java/IPv6 problem. You should also add it to the
-            // arguments used to start the app, eg -Djava.net.preferIPv4Stack=true
-            // set in the "run" section of preferences. Also, typically
-            // netbeans must be restarted after these settings.
-            // https://stackoverflow.com/questions/18747134/getting-cant-assign-requested-address-java-net-socketexception-using-ehcache
-            System.setProperty("java.net.preferIPv4Stack", "true");
-            
-            
-            MulticastSocket multicastSocket = new MulticastSocket(DESTINATION_PORT);
-            multicastSocket.setTimeToLive(TTL);
-            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
-            System.out.println(multicastAddress);            
-            // Join group useful on receiving side
-            multicastSocket.joinGroup(multicastAddress);
-            // You can join multiple groups here
-            
-            int count = 0;
-            int firstNumber = 11;
-            int secondNumber = 67;
-            int thirdNumber = 108;
-            int forkliftsAvail = 100;
-            int forkliftsServ = 0;
-            
-            while(true)
-            {
-                byte[] packetArray = new byte[1500];
-                DatagramPacket packet = new DatagramPacket(packetArray, packetArray.length);
-                
-                multicastSocket.receive(packet);
-                count++;
-                firstNumber+=1.5;
-                secondNumber+=3.5;
-                thirdNumber+=5.0; 
-                    if(count > 1){
-                        forkliftsAvail-=1;
-                        forkliftsServ+=1;
-                    }
-                ByteArrayInputStream bais = new ByteArrayInputStream(packet.getData());
-                DataInputStream dis = new DataInputStream(bais);
-                //float firstNumber = dis.readInt();
-                //float secondNumber = dis.readInt();
-                //float thirdNumber = dis.readInt(); 
-                
-                System.out.println("Marine Corps Logistics Base Albany: Wilson Warehouse");
-                System.out.println("Order received: " + count + " NSN ID: " + firstNumber + " Xrow: " + secondNumber + " Yshelf: "+ thirdNumber + 
-                        " Forklifts Availble: " + forkliftsAvail + " Forklifts in Service: " +forkliftsServ);
-                System.out.println("______________________________________________________");
-            }
-        }
-        catch(Exception e)
-        {
-            System.out.println(e);
-        }
-    }
-}
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package MV3500Cohort2018JulySeptember.homework3.AyresDemchkoHomework3;
+
+import java.io.ByteArrayInputStream;
+import java.io.DataInputStream;
+import java.io.IOException;
+import java.net.DatagramPacket;
+import java.net.DatagramSocket;
+import java.net.InetAddress;
+import java.net.MulticastSocket;
+import java.net.UnknownHostException;
+/**
+ *
+ * @author kjayr
+ */
+public class AyresDemchkoMulticastReceiver 
+{
+    /** socket parameter of interest */
+    public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
+    public static final int DESTINATION_PORT = 1717;
+    /** How many routers can be crossed */
+    static final int TTL = 10; 
+
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
+    public static void main(String[] args) 
+    {
+        try
+        {
+        
+            // This is a java/IPv6 problem. You should also add it to the
+            // arguments used to start the app, eg -Djava.net.preferIPv4Stack=true
+            // set in the "run" section of preferences. Also, typically
+            // netbeans must be restarted after these settings.
+            // https://stackoverflow.com/questions/18747134/getting-cant-assign-requested-address-java-net-socketexception-using-ehcache
+            System.setProperty("java.net.preferIPv4Stack", "true");
+            
+            
+            MulticastSocket multicastSocket = new MulticastSocket(DESTINATION_PORT);
+            multicastSocket.setTimeToLive(TTL);
+            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
+            System.out.println(multicastAddress);            
+            // Join group useful on receiving side
+            multicastSocket.joinGroup(multicastAddress);
+            // You can join multiple groups here
+            
+            int count = 0;
+            int firstNumber = 11;
+            int secondNumber = 67;
+            int thirdNumber = 108;
+            int forkliftsAvail = 100;
+            int forkliftsServ = 0;
+            
+            while(true)
+            {
+                byte[] packetArray = new byte[1500];
+                DatagramPacket packet = new DatagramPacket(packetArray, packetArray.length);
+                
+                multicastSocket.receive(packet);
+                count++;
+                firstNumber+=1.5;
+                secondNumber+=3.5;
+                thirdNumber+=5.0; 
+                    if(count > 1){
+                        forkliftsAvail-=1;
+                        forkliftsServ+=1;
+                    }
+                ByteArrayInputStream bais = new ByteArrayInputStream(packet.getData());
+                DataInputStream dis = new DataInputStream(bais);
+                //float firstNumber = dis.readInt();
+                //float secondNumber = dis.readInt();
+                //float thirdNumber = dis.readInt(); 
+                
+                System.out.println("Marine Corps Logistics Base Albany: Wilson Warehouse");
+                System.out.println("Order received: " + count + " NSN ID: " + firstNumber + " Xrow: " + secondNumber + " Yshelf: "+ thirdNumber + 
+                        " Forklifts Availble: " + forkliftsAvail + " Forklifts in Service: " +forkliftsServ);
+                System.out.println("______________________________________________________");
+            }
+        }
+        catch(Exception e)
+        {
+            System.out.println(e);
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework3/AyresDemchkoHomework3/AyresDemchkoMulticastSender.java b/assignments/src/MV3500Cohort2018JulySeptember/homework3/AyresDemchkoHomework3/AyresDemchkoMulticastSender.java
index 65a4ca1a6e..f70237b53f 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework3/AyresDemchkoHomework3/AyresDemchkoMulticastSender.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework3/AyresDemchkoHomework3/AyresDemchkoMulticastSender.java
@@ -1,72 +1,74 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-package MV3500Cohort2018JulySeptember.homework3.AyresDemchkoHomework3;
-
-import java.io.ByteArrayOutputStream;
-import java.io.DataOutputStream;
-import java.net.DatagramPacket;
-import java.net.InetAddress;
-import java.net.MulticastSocket;
-
-/**
- *
- * @author kjayr
- */
-public class AyresDemchkoMulticastSender {
-    
-    public static final String MULTICAST_ADDRESS = "239.1.2.15";
-    public static final int DESTINATION_PORT = 1717;
-    /** How many routers can be crossed */
-    public static final int TTL = 10; 
-
-    /**
-     * Program invocation, execution starts here
-     * @param args command-line arguments
-     */
-    public static void main(String[] args) 
-    {
-        try
-        {
-            //int ID = 27;
-            //int xrow = 5;
-            //int yshelf = 7;
-
-            System.setProperty("java.net.preferIPv4Stack", "true");
-            
-            MulticastSocket multicastSocket = new MulticastSocket(1718);
-            multicastSocket.setTimeToLive(TTL);
-            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
-            System.out.println(multicastAddress);            
-            // Join group useful on receiving side
-            multicastSocket.joinGroup(multicastAddress);
-            // You can join multiple groups here
-            
-            // Put together a message with binary content. "ByteArrayOutputStream"
-            // is a java.io utility that lets us put together an array of binary
-            // data, which we put into the UDP packet.
-            
-            ByteArrayOutputStream baos = new ByteArrayOutputStream();
-            DataOutputStream dos = new DataOutputStream(baos);
-            //dos.writeInt(ID);
-            //dos.writeInt(xrow);
-            //dos.writeInt(yshelf); 
-            byte[] buffer = baos.toByteArray();
-            
-            DatagramPacket packet = new DatagramPacket(buffer, buffer.length, multicastAddress, DESTINATION_PORT);
-            
-            for(int idx = 0; idx < 100; idx++)
-            {
-               multicastSocket.send(packet);
-               Thread.sleep(1000); // Send 100, one per second
-               System.out.println("Sent multicast packet " + idx + " of 100");
-            }
-        }
-        catch(Exception e)
-        {
-            System.out.println(e);
-        }
-    }
-}
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package MV3500Cohort2018JulySeptember.homework3.AyresDemchkoHomework3;
+
+import java.io.ByteArrayOutputStream;
+import java.io.DataOutputStream;
+import java.net.DatagramPacket;
+import java.net.InetAddress;
+import java.net.MulticastSocket;
+
+/**
+ *
+ * @author kjayr
+ */
+public class AyresDemchkoMulticastSender
+{
+    /** socket parameter of interest */
+    public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
+    public static final int DESTINATION_PORT = 1717;
+    /** How many routers can be crossed */
+    static final int TTL = 10; 
+
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
+    public static void main(String[] args) 
+    {
+        try
+        {
+            //int ID = 27;
+            //int xrow = 5;
+            //int yshelf = 7;
+
+            System.setProperty("java.net.preferIPv4Stack", "true");
+            
+            MulticastSocket multicastSocket = new MulticastSocket(1718);
+            multicastSocket.setTimeToLive(TTL);
+            InetAddress multicastAddress = InetAddress.getByName(MULTICAST_ADDRESS);
+            System.out.println(multicastAddress);            
+            // Join group useful on receiving side
+            multicastSocket.joinGroup(multicastAddress);
+            // You can join multiple groups here
+            
+            // Put together a message with binary content. "ByteArrayOutputStream"
+            // is a java.io utility that lets us put together an array of binary
+            // data, which we put into the UDP packet.
+            
+            ByteArrayOutputStream baos = new ByteArrayOutputStream();
+            DataOutputStream dos = new DataOutputStream(baos);
+            //dos.writeInt(ID);
+            //dos.writeInt(xrow);
+            //dos.writeInt(yshelf); 
+            byte[] buffer = baos.toByteArray();
+            
+            DatagramPacket packet = new DatagramPacket(buffer, buffer.length, multicastAddress, DESTINATION_PORT);
+            
+            for(int idx = 0; idx < 100; idx++)
+            {
+               multicastSocket.send(packet);
+               Thread.sleep(1000); // Send 100, one per second
+               System.out.println("Sent multicast packet " + idx + " of 100");
+            }
+        }
+        catch(Exception e)
+        {
+            System.out.println(e);
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Cain_Thomerson_Homework3/CainThomersonHw3Receiver.java b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Cain_Thomerson_Homework3/CainThomersonHw3Receiver.java
index 1d6625175d..b6bf8e2344 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Cain_Thomerson_Homework3/CainThomersonHw3Receiver.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Cain_Thomerson_Homework3/CainThomersonHw3Receiver.java
@@ -22,7 +22,7 @@ public class CainThomersonHw3Receiver
     /** socket value of shared interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10; 
+    static final int TTL = 10; 
 
     /**
      * Program invocation, execution starts here
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Cain_Thomerson_Homework3/CainThomersonHw3Sender.java b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Cain_Thomerson_Homework3/CainThomersonHw3Sender.java
index 3055d1e598..6209daeaa1 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Cain_Thomerson_Homework3/CainThomersonHw3Sender.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Cain_Thomerson_Homework3/CainThomersonHw3Sender.java
@@ -22,7 +22,7 @@ public class CainThomersonHw3Sender
     /** socket value of shared interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10; 
+    static final int TTL = 10; 
 
     /**
      * Program invocation, execution starts here
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Furr_Frisco_Homework3/FurrFriscoHw3Receiver.java b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Furr_Frisco_Homework3/FurrFriscoHw3Receiver.java
index 1c4b4df7c2..659d497d34 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Furr_Frisco_Homework3/FurrFriscoHw3Receiver.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Furr_Frisco_Homework3/FurrFriscoHw3Receiver.java
@@ -23,7 +23,7 @@ public class FurrFriscoHw3Receiver {
     /** socket value of shared interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 10; 
+    static final int TTL = 10; 
     
     /** run the program
      * @param args command-line arguments, string parameters (unused) */
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Furr_Frisco_Homework3/FurrFriscoHw3Sender.java b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Furr_Frisco_Homework3/FurrFriscoHw3Sender.java
index 9bb743cf14..7ccc4469e0 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Furr_Frisco_Homework3/FurrFriscoHw3Sender.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Furr_Frisco_Homework3/FurrFriscoHw3Sender.java
@@ -22,7 +22,7 @@ public class FurrFriscoHw3Sender {
     /**
      * How many routers can be crossed
      */
-    public static final int TTL = 10;
+    static final int TTL = 10;
 
     /** run the program
      * @param args command-line arguments, string parameters (unused) */
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Jackson_UdpReceiver.java b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Jackson_UdpReceiver.java
index 0396c08fc6..c968d29014 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Jackson_UdpReceiver.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Jackson_UdpReceiver.java
@@ -11,8 +11,11 @@ import java.net.*;
  */
 public class Jackson_UdpReceiver 
 {
+    /** socket parameter of interest */
     public static final int       SENDING_PORT = 1414;
+    /** socket parameter of interest */
     public static final int     RECEIVING_PORT = 1415;
+    /** socket parameter of interest */
     public static final String DESINATION_HOST = "localhost";
 
     /**
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Jackson_UdpSender.java b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Jackson_UdpSender.java
index be60576ad0..294a0fbe48 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Jackson_UdpSender.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Jackson_UdpSender.java
@@ -13,13 +13,19 @@ import java.net.*;
  */
 public class Jackson_UdpSender 
 {
-
+    /** socket parameter of interest */
     public static final int      SENDING_PORT   = 1414;
+    /** socket parameter of interest */
     public static final int      RECEIVING_PORT = 1415;
+    /** socket parameter of interest */
     public static final String DESTINATION_HOST = "localhost";
 
 	@SuppressWarnings("SleepWhileInLoop")
         
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String[] args) 
     {
         //int idx = 0;
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonMulticastImageHw3Receiver.java b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonMulticastImageHw3Receiver.java
index 2c6b75d0c1..7116b2c677 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonMulticastImageHw3Receiver.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonMulticastImageHw3Receiver.java
@@ -22,15 +22,21 @@ import javax.swing.JLabel;
  *
  * @author garrettloeffelman
  */
-public class LoeffelmanSeversonMulticastImageHw3Receiver {
-
+public class LoeffelmanSeversonMulticastImageHw3Receiver
+{
+    /** socket parameter of interest */
     public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
     public static final int DESTINATION_PORT = 1717;
     /**
      * How many routers can be crossed
      */
-    public static final int TTL = 20;
+    static final int TTL = 20;
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String[] args) {
         try {
 
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonMulticastImageHw3Sender.java b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonMulticastImageHw3Sender.java
index 07714f7f6c..9e61c068bb 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonMulticastImageHw3Sender.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonMulticastImageHw3Sender.java
@@ -20,13 +20,19 @@ import javax.imageio.ImageIO;
  *
  * @author garrettloeffelman
  */
-public class LoeffelmanSeversonMulticastImageHw3Sender {
-
+public class LoeffelmanSeversonMulticastImageHw3Sender
+{
+    /** socket parameter of interest */
     public static final String MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
     public static final int DESTINATION_PORT = 1717;
     /** How many routers can be crossed */
-    public static final int TTL = 20; 
+    static final int TTL = 20; 
     
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String[] args) 
     {
         try
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonUDPImageHW3Receiver.java b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonUDPImageHW3Receiver.java
index 7da665ca6b..89ed03b7d4 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonUDPImageHW3Receiver.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonUDPImageHW3Receiver.java
@@ -21,10 +21,13 @@ import javax.swing.JLabel;
  *
  * @author garrettloeffelman
  */
-public class LoeffelmanSeversonUDPImageHW3Receiver {
-
+public class LoeffelmanSeversonUDPImageHW3Receiver
+{
+    /** socket parameter of interest */
     public static final int       SENDING_PORT = 1414;
+    /** socket parameter of interest */
     public static final int     RECEIVING_PORT = 1415;
+    /** socket parameter of interest */
     public static final String DESINATION_HOST = "localhost";
 
     /**
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonUDPImageSender.java b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonUDPImageSender.java
index 54bb672578..c8eaeba833 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonUDPImageSender.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/homework3/Loeffelman_Severson_Homework3/LoeffelmanSeversonUDPImageSender.java
@@ -19,12 +19,19 @@ import javax.imageio.ImageIO;
  *
  * @author garrettloeffelman
  */
-public class LoeffelmanSeversonUDPImageSender {
-
+public class LoeffelmanSeversonUDPImageSender
+{
+    /** socket parameter of interest */
     public static final int      SENDING_PORT   = 1414;
+    /** socket parameter of interest */
     public static final int      RECEIVING_PORT = 1415;
+    /** socket parameter of interest */
     public static final String DESTINATION_HOST = "localhost";
     
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
 	@SuppressWarnings("SleepWhileInLoop")
     public static void main(String[] args) 
     {
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/projects/AyresDemchko/AyresDemchkoReceiver.java b/assignments/src/MV3500Cohort2018JulySeptember/projects/AyresDemchko/AyresDemchkoReceiver.java
index 426e496605..65e32d4861 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/projects/AyresDemchko/AyresDemchkoReceiver.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/projects/AyresDemchko/AyresDemchkoReceiver.java
@@ -24,9 +24,12 @@ import java.util.ArrayList;
  */
 public class AyresDemchkoReceiver {
 
-   public static final int    MULTICAST_PORT  = 3000;
+    /** socket parameter of interest */
+    public static final int    MULTICAST_PORT  = 3000;
+    /** socket parameter of interest */
     public static final String MULTICAST_GROUP = "239.1.2.15";
-    public static final boolean USE_FAST_ESPDU = false;
+    /** socket parameter of interest */
+    static final boolean USE_FAST_ESPDU = false;
 
     /**
      * Program invocation, execution starts here
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/projects/AyresDemchko/AyresDemchkoSender.java b/assignments/src/MV3500Cohort2018JulySeptember/projects/AyresDemchko/AyresDemchkoSender.java
index 803053f03c..75642117ad 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/projects/AyresDemchko/AyresDemchkoSender.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/projects/AyresDemchko/AyresDemchkoSender.java
@@ -42,9 +42,11 @@ import java.util.List;
  *
  * @author kjayr
  */
-public class AyresDemchkoSender {
-/** Default multicast group address we send on. */
+public class AyresDemchkoSender 
+{
+    /** Default multicast group address we send on. */
     public static final String DEFAULT_MULTICAST_ADDRESS = "239.1.2.15";
+    /** socket parameter of interest */
     public static final int DESTINATION_PORT = 1717;
     /** Default multicast port used, matches Wire-shark DIS capture default */
     public static final int    DEFAULT_MULTICAST_PORT    = 3000;
@@ -53,7 +55,9 @@ public class AyresDemchkoSender {
     private int port;
     InetAddress multicastAddress;
 
-    public AyresDemchkoSender (int port, String multicast) {
+    /** Object constructor */
+    public AyresDemchkoSender (int port, String multicast) 
+    {
         try
 	{
             System.setProperty("java.net.preferIPv4Stack", "true");
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/projects/CainThomersonFinal/C_T_EspduSupplyerUnit.java b/assignments/src/MV3500Cohort2018JulySeptember/projects/CainThomersonFinal/C_T_EspduSupplyerUnit.java
index cea8f41ea7..a5e30ced22 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/projects/CainThomersonFinal/C_T_EspduSupplyerUnit.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/projects/CainThomersonFinal/C_T_EspduSupplyerUnit.java
@@ -19,7 +19,7 @@ import java.io.IOException;
  */
 public class C_T_EspduSupplyerUnit {
 
-    public static final int NUMBER_TO_SEND = 5000;
+    static final int NUMBER_TO_SEND = 5000;
 
     /** Type of network connection */
 	public enum NetworkMode {
@@ -31,10 +31,11 @@ public class C_T_EspduSupplyerUnit {
         BROADCAST
 	};
 
+    /** socket parameter of interest */
     public static final int MAX_PDU_SIZE = 8192;
-
+    /** socket parameter of interest */
     public static final String DEFAULT_MULTICAST_ADDRESS = "239.1.2.3";
-
+    /** socket parameter of interest */
     public static final int DEFAULT_MULTICAST_PORT = 3000;
 
     /**
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/FDCSendRecieve.java b/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/FDCSendRecieve.java
index 79ceb9f95f..0acef81517 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/FDCSendRecieve.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/FDCSendRecieve.java
@@ -47,7 +47,7 @@ public class FDCSendRecieve {
 
 	/**
 	 * This would be the sending Run method.  Takes in several PDUs and for each one has a switch statement ready for it. 
-	 * @param pdupass
+	 * @param pdupass passed pdu objects
 	 * @throws UnknownHostException unable to reach host address
 	 * @throws IOException input-output error
 	 */
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/OBSSendRecieve1.java b/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/OBSSendRecieve1.java
index 9626b7feb7..7d32391721 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/OBSSendRecieve1.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/OBSSendRecieve1.java
@@ -8,6 +8,7 @@ import java.io.IOException;
 import edu.nps.moves.disutil.PduFactory;
 import edu.nps.moves.disutil.DisTime;
 
+/* Observer send, receive */
 public class OBSSendRecieve1 {
 
 	/**
@@ -53,7 +54,7 @@ public class OBSSendRecieve1 {
 
 	/**
 	 *  This would be the sending Run method.  Takes in several PDUs and for each one has a switch statement ready for it. 
-	 * @param pdupass
+	 * @param pdupass passed pdu objects
 	 * @throws UnknownHostException unable to reach host address
 	 * @throws IOException input-output error
 	 */
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/FDCSendRecieve.java b/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/FDCSendRecieve.java
index dd9c4f2a39..f726b83971 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/FDCSendRecieve.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/FDCSendRecieve.java
@@ -1,281 +1,288 @@
-package MV3500Cohort2018JulySeptember.projects.FriscoFurr.originals;
-
-import java.net.*;
-import java.io.*;
-import java.util.*;
-import edu.nps.moves.dis.*; // OpenDIS version 4
-import java.io.IOException;
-import edu.nps.moves.disutil.PduFactory;
-import edu.nps.moves.disutil.DisTime;
-
-public class FDCSendRecieve {
-
-	/**
-	 * Default multicast group address we send on.
-	 */
-	public static final String DEFAULT_MULTICAST_ADDRESS = "239.1.2.3";
-
-	/**
-	 * Default multicast port used, matches Wireshark DIS capture default
-	 */
-	public static final int DEFAULT_MULTICAST_PORT = 3000;
-
-	private int port;
-	InetAddress multicastAddress;
-
-	public static final int MULTICAST_PORT = 3000;
-	public static final String MULTICAST_GROUP = "239.1.2.3";
-	public static final boolean USE_FAST_ESPDU = false;
-	public long[] sentBuffer = new long[100];
-	public static List sentBufferList;
-	DisTime disTime = DisTime.getInstance();
-
-	public FDCSendRecieve(int port, String multicast) {
-		this.sentBufferList = new ArrayList<>();
-		try {
-			this.port = port;
-			multicastAddress = InetAddress.getByName(multicast);
-			if (!multicastAddress.isMulticastAddress()) {
-				System.out.println("Not a multicast address: " + multicast);
-			}
-		} catch (UnknownHostException e) {
-			System.out.println("Unable to open socket: " + e);
-		}
-	}
-
-	public void run(Pdu... pdupass) throws UnknownHostException, IOException {
-
-		List<Pdu> generatedPdus = new ArrayList<>();
-		Pdu aPdu = null;
-		System.out.println("\nFDC Sender started...");
-		// Send the PDUs we created
-		InetAddress localMulticastAddress = InetAddress.getByName(DEFAULT_MULTICAST_ADDRESS);
-		MulticastSocket socket = new MulticastSocket(DEFAULT_MULTICAST_PORT);
-		socket.joinGroup(localMulticastAddress);
-
-		for (Pdu i : pdupass) {
-			Pdu pdu = i;
-			if (sentBufferList.contains(pdu.getTimestamp())) {
-				break;
-			}
-
-			short currentPduType = pdu.getPduType();
-			System.out.println("in sender, recived PDU type: " + currentPduType);
-
-			switch (currentPduType) // using enumeration values from edu.nps.moves.disenum.*
-			{
-
-				case 1: //ENTITY_STATE:
-					aPdu = pdu;
-					break;
-
-				case 2: //FIRE
-					aPdu = pdu;
-					break;
-//
-				case 15: //AcknowledgePdu
-					aPdu = pdu;
-					break;
-
-				case 17:
-					aPdu = pdu;
-					break;
-
-				case 14:
-					aPdu = pdu;
-					break;
-
-				default:
-					System.out.print("PDU of type " + pdu + " not supported, created or sent ");
-					System.out.println();
-			}
-			if (aPdu != null) {
-				generatedPdus.add(aPdu);
-				System.out.println("APDU container count " + generatedPdus.size());
-			}
-
-		}
-		for (int idx = 0; idx < generatedPdus.size(); idx++) {
-			ByteArrayOutputStream baos = new ByteArrayOutputStream();
-			DataOutputStream dos = new DataOutputStream(baos);
-			byte[] buffer;
-
-			aPdu = generatedPdus.get(idx);
-			aPdu.marshal(dos);
-
-			buffer = baos.toByteArray();
-			DatagramPacket packet = new DatagramPacket(buffer, buffer.length, localMulticastAddress, DEFAULT_MULTICAST_PORT);
-			socket.send(packet);
-			sentBufferList.add(aPdu.getTimestamp());
-			System.out.println("Sent PDU of type " + aPdu.getClass().getName()+ "\n");
-		}
-	}
-
-	public static void main(String[] args) throws IOException, InterruptedException {
-		DisTime disTime = DisTime.getInstance();
-
-		FDCSendRecieve sender = new FDCSendRecieve(DEFAULT_MULTICAST_PORT, DEFAULT_MULTICAST_ADDRESS); //initalize the sender
-
-		EntityStatePdu FDCespdu = new EntityStatePdu();
-		Marking marking = new Marking();
-		marking.setCharactersString("FDC");
-		FDCespdu.setMarking(marking);
-		FDCespdu.setExerciseID((short) 1);
-		EntityID FDCID = FDCespdu.getEntityID();
-		FDCID.setSite(1);  // 0 is apparently not a valid site number, per the spec
-		FDCID.setApplication(1);
-		FDCID.setEntity(1);  //change for each person I think???  - JMF
-		EntityType entityType = FDCespdu.getEntityType();
-		//
-		//Need to update the info below to match the unit type IAW SISO-REF-010-2015 V.21
-		//  https://www.sisostds.org/DesktopModules/Bring2mind/DMX/Download.aspx?Command=Core_Download&EntryId=42916&PortalId=0&TabId=105 
-		//
-		entityType.setEntityKind((short) 1);      // Platform (vs lifeform, munition, sensor, etc.)  TGT=1, OBS = 1
-		entityType.setCountry(225);              // USA TGT = 222 (Russia), OBS = 225
-		entityType.setDomain((short) 1);          // Land (vs air, surface, subsurface, space) both TGT and OBS are 1
-		entityType.setCategory((short) 3);        // FDC  TGT = 1, Tank  OBS=40 OP
-		entityType.setSubcategory((short) 12);     // M1068 TGT = 2, T72 tank  NONE FOR OP
-		entityType.setSpec((short) 1);            // M1068 w/ SICUP Tent  NONE FOR TGT OR OP
-		Vector3Double location = new Vector3Double();
-		location.setX(0.0);  //TGT = 150   OBS = 75
-		location.setY(0.0);  //TGT = 150   OBS = 75
-		location.setZ(10.0); //TGT = 20    OBS = 50
-		FDCespdu.setEntityLocation(location);
-		int timestamp = disTime.getDisAbsoluteTimestamp();
-		FDCespdu.setTimestamp(timestamp);
-
-		sender.run(FDCespdu);  //sends inital here I am and who I am
-
-		//Set up other players to look for:
-		EntityID OBSEntityID = new EntityID();  // need to figure out what this is....and then just put into if statement below
-		OBSEntityID.setEntity(2);
-		OBSEntityID.setApplication(1);
-		OBSEntityID.setSite(1);
-
-		EntityID TGTEntityID = new EntityID();  // need to figure out what this is....and then just put into if statement below
-		TGTEntityID.setEntity(3);
-		TGTEntityID.setApplication(1);
-		TGTEntityID.setSite(1);
-
-		/*  BELOW IS THE RECIEVE CODE  //
-		//                             //
-		//                             //
-		 */                             //
-		PduFactory factory;
-		MulticastSocket socket = null;
-		InetAddress address = null;
-		DatagramPacket packet;
-		short currentPduType = 0;  //will use the curentPduType as the check for sending other packets.
-
-		try {
-			System.out.println("FDC is alive and ready to recieve fire missions...\n\n");
-			socket = new MulticastSocket(MULTICAST_PORT);
-			address = InetAddress.getByName(MULTICAST_GROUP);
-			socket.joinGroup(address);
-
-			factory = new PduFactory();
-
-			while (true) // Loop infinitely, receiving datagrams
-			{
-				byte buffer[] = new byte[1500]; // typical MTU size
-
-				packet = new DatagramPacket(buffer, buffer.length); // reset
-
-				socket.receive(packet);
-
-				String marking2 = new String();
-				Pdu pdu = factory.createPdu(packet.getData());
-				currentPduType = pdu.getPduType();
-				if (currentPduType == 14) //stop/freeze PDU
-				{
-					System.out.println("recieved Stop/Freeze packet...");
-					return;
-				}
-//					pdu.setExerciseID((short)5);
-				if (pdu != null) {
-					if (sentBufferList.contains(pdu.getTimestamp())) {
-						pdu = null;
-					}
-					if (pdu != null) {
-
-						String currentPduTypeName = pdu.getClass().getName();
-
-						if (currentPduType == 1) {
-							EntityStatePdu pdu2 = (EntityStatePdu) pdu;
-							marking2 = pdu2.getMarking().getCharactersString();
-						}
-						StringBuilder message = new StringBuilder();
-						message.append("received DIS PDU: ");
-						message.append("pduType ");
-						if (currentPduType < 10) {
-							message.append(" ");
-						}
-						message.append(currentPduType).append(" ").append(currentPduTypeName);
-						message.append(" ");
-						message.append(marking2);
-						System.out.println(message.toString());
-						//Reference for PDU Types: 
-						// http://faculty.nps.edu/brutzman/vrtp/mil/navy/nps/disEnumerations/JdbeHtmlFiles/pdu/8.htm 
-						//
-
-						if (currentPduType == 1) //EntityState
-						{
-							EntityStatePdu entityPDU = (EntityStatePdu) pdu;
-							EntityType PduEntityType = entityPDU.getEntityType();
-							if (PduEntityType.getCountry() == 225) {
-								Thread.sleep((long) 200);
-								timestamp = disTime.getDisAbsoluteTimestamp();
-								FDCespdu.setTimestamp(timestamp);
-								System.out.println("Talking to the Observer, sending a radio check ");
-								sender.run(FDCespdu);
-							}
-						}
-						if (currentPduType == 16) //Action request
-						{
-							// Action response is sending a Null PDU, not sure why...
-							AcknowledgePdu ack = new AcknowledgePdu();
-							ack.setExerciseID((short) 1);
-							ack.setRequestID((long) 1);
-							timestamp = disTime.getDisAbsoluteTimestamp();
-							ack.setTimestamp(timestamp);
-
-							FirePdu fire = new FirePdu();
-							fire.setExerciseID((short) 1);
-							fire.setFireMissionIndex(1000);
-							fire.setRangeToTarget((float) Math.sqrt(Math.pow(150, 2) + Math.pow(150, 2)));  //would pass in target info, but here we know location of tgt is (150,150) and FDC (0,0)
-							fire.setFiringEntityID(FDCID);
-							fire.setTargetEntityID(TGTEntityID);
-							timestamp = disTime.getDisAbsoluteTimestamp();
-							fire.setTimestamp(timestamp);
-							sender.run(ack, fire);
-						}
-
-						if (currentPduType == 22) //Comment PDU
-						{
-							AcknowledgePdu ack = new AcknowledgePdu();
-							ack.setExerciseID((short) 1);
-							ack.setRequestID((long) 1);
-							timestamp = disTime.getDisAbsoluteTimestamp();
-							ack.setTimestamp(timestamp);
-
-							StopFreezePdu stop = new StopFreezePdu();
-							stop.setExerciseID((short) 1);
-							stop.setRequestID((long) 1);
-							sender.run(ack, stop);
-						}
-
-					} else {
-						System.out.println("received packet but pdu is null and originated from FDC. Still standing by...");
-					}
-				}
-			}
-		} catch (IOException e) {
-			System.out.println("Problem with FDC.PduReceiver, see exception trace:");
-			System.out.println(e);
-		} finally {
-			System.out.println("FDC.PduReceiver complete. - OUT!");
-		}
-
-	}
-
-}
+package MV3500Cohort2018JulySeptember.projects.FriscoFurr.originals;
+
+import java.net.*;
+import java.io.*;
+import java.util.*;
+import edu.nps.moves.dis.*; // OpenDIS version 4
+import java.io.IOException;
+import edu.nps.moves.disutil.PduFactory;
+import edu.nps.moves.disutil.DisTime;
+
+public class FDCSendRecieve {
+
+	/**
+	 * Default multicast group address we send on.
+	 */
+	public static final String DEFAULT_MULTICAST_ADDRESS = "239.1.2.3";
+
+	/**
+	 * Default multicast port used, matches Wireshark DIS capture default
+	 */
+	public static final int DEFAULT_MULTICAST_PORT = 3000;
+
+	private int port;
+	InetAddress multicastAddress;
+
+    /** socket parameter of interest */
+	public static final int MULTICAST_PORT = 3000;
+    /** socket parameter of interest */
+	public static final String MULTICAST_GROUP = "239.1.2.3";
+	static final boolean USE_FAST_ESPDU = false;
+	private long[] sentBuffer = new long[100];
+	private static List sentBufferList;
+	DisTime disTime = DisTime.getInstance();
+
+	public FDCSendRecieve(int port, String multicast) {
+		this.sentBufferList = new ArrayList<>();
+		try {
+			this.port = port;
+			multicastAddress = InetAddress.getByName(multicast);
+			if (!multicastAddress.isMulticastAddress()) {
+				System.out.println("Not a multicast address: " + multicast);
+			}
+		} catch (UnknownHostException e) {
+			System.out.println("Unable to open socket: " + e);
+		}
+	}
+
+	public void run(Pdu... pdupass) throws UnknownHostException, IOException {
+
+		List<Pdu> generatedPdus = new ArrayList<>();
+		Pdu aPdu = null;
+		System.out.println("\nFDC Sender started...");
+		// Send the PDUs we created
+		InetAddress localMulticastAddress = InetAddress.getByName(DEFAULT_MULTICAST_ADDRESS);
+		MulticastSocket socket = new MulticastSocket(DEFAULT_MULTICAST_PORT);
+		socket.joinGroup(localMulticastAddress);
+
+		for (Pdu i : pdupass) {
+			Pdu pdu = i;
+			if (sentBufferList.contains(pdu.getTimestamp())) {
+				break;
+			}
+
+			short currentPduType = pdu.getPduType();
+			System.out.println("in sender, recived PDU type: " + currentPduType);
+
+			switch (currentPduType) // using enumeration values from edu.nps.moves.disenum.*
+			{
+
+				case 1: //ENTITY_STATE:
+					aPdu = pdu;
+					break;
+
+				case 2: //FIRE
+					aPdu = pdu;
+					break;
+//
+				case 15: //AcknowledgePdu
+					aPdu = pdu;
+					break;
+
+				case 17:
+					aPdu = pdu;
+					break;
+
+				case 14:
+					aPdu = pdu;
+					break;
+
+				default:
+					System.out.print("PDU of type " + pdu + " not supported, created or sent ");
+					System.out.println();
+			}
+			if (aPdu != null) {
+				generatedPdus.add(aPdu);
+				System.out.println("APDU container count " + generatedPdus.size());
+			}
+
+		}
+		for (int idx = 0; idx < generatedPdus.size(); idx++) {
+			ByteArrayOutputStream baos = new ByteArrayOutputStream();
+			DataOutputStream dos = new DataOutputStream(baos);
+			byte[] buffer;
+
+			aPdu = generatedPdus.get(idx);
+			aPdu.marshal(dos);
+
+			buffer = baos.toByteArray();
+			DatagramPacket packet = new DatagramPacket(buffer, buffer.length, localMulticastAddress, DEFAULT_MULTICAST_PORT);
+			socket.send(packet);
+			sentBufferList.add(aPdu.getTimestamp());
+			System.out.println("Sent PDU of type " + aPdu.getClass().getName()+ "\n");
+		}
+	}
+
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels execution
+     */
+	public static void main(String[] args) throws IOException, InterruptedException {
+		DisTime disTime = DisTime.getInstance();
+
+		FDCSendRecieve sender = new FDCSendRecieve(DEFAULT_MULTICAST_PORT, DEFAULT_MULTICAST_ADDRESS); //initalize the sender
+
+		EntityStatePdu FDCespdu = new EntityStatePdu();
+		Marking marking = new Marking();
+		marking.setCharactersString("FDC");
+		FDCespdu.setMarking(marking);
+		FDCespdu.setExerciseID((short) 1);
+		EntityID FDCID = FDCespdu.getEntityID();
+		FDCID.setSite(1);  // 0 is apparently not a valid site number, per the spec
+		FDCID.setApplication(1);
+		FDCID.setEntity(1);  //change for each person I think???  - JMF
+		EntityType entityType = FDCespdu.getEntityType();
+		//
+		//Need to update the info below to match the unit type IAW SISO-REF-010-2015 V.21
+		//  https://www.sisostds.org/DesktopModules/Bring2mind/DMX/Download.aspx?Command=Core_Download&EntryId=42916&PortalId=0&TabId=105 
+		//
+		entityType.setEntityKind((short) 1);      // Platform (vs lifeform, munition, sensor, etc.)  TGT=1, OBS = 1
+		entityType.setCountry(225);              // USA TGT = 222 (Russia), OBS = 225
+		entityType.setDomain((short) 1);          // Land (vs air, surface, subsurface, space) both TGT and OBS are 1
+		entityType.setCategory((short) 3);        // FDC  TGT = 1, Tank  OBS=40 OP
+		entityType.setSubcategory((short) 12);     // M1068 TGT = 2, T72 tank  NONE FOR OP
+		entityType.setSpec((short) 1);            // M1068 w/ SICUP Tent  NONE FOR TGT OR OP
+		Vector3Double location = new Vector3Double();
+		location.setX(0.0);  //TGT = 150   OBS = 75
+		location.setY(0.0);  //TGT = 150   OBS = 75
+		location.setZ(10.0); //TGT = 20    OBS = 50
+		FDCespdu.setEntityLocation(location);
+		int timestamp = disTime.getDisAbsoluteTimestamp();
+		FDCespdu.setTimestamp(timestamp);
+
+		sender.run(FDCespdu);  //sends inital here I am and who I am
+
+		//Set up other players to look for:
+		EntityID OBSEntityID = new EntityID();  // need to figure out what this is....and then just put into if statement below
+		OBSEntityID.setEntity(2);
+		OBSEntityID.setApplication(1);
+		OBSEntityID.setSite(1);
+
+		EntityID TGTEntityID = new EntityID();  // need to figure out what this is....and then just put into if statement below
+		TGTEntityID.setEntity(3);
+		TGTEntityID.setApplication(1);
+		TGTEntityID.setSite(1);
+
+		/*  BELOW IS THE RECIEVE CODE  //
+		//                             //
+		//                             //
+		 */                             //
+		PduFactory factory;
+		MulticastSocket socket = null;
+		InetAddress address = null;
+		DatagramPacket packet;
+		short currentPduType = 0;  //will use the curentPduType as the check for sending other packets.
+
+		try {
+			System.out.println("FDC is alive and ready to recieve fire missions...\n\n");
+			socket = new MulticastSocket(MULTICAST_PORT);
+			address = InetAddress.getByName(MULTICAST_GROUP);
+			socket.joinGroup(address);
+
+			factory = new PduFactory();
+
+			while (true) // Loop infinitely, receiving datagrams
+			{
+				byte buffer[] = new byte[1500]; // typical MTU size
+
+				packet = new DatagramPacket(buffer, buffer.length); // reset
+
+				socket.receive(packet);
+
+				String marking2 = new String();
+				Pdu pdu = factory.createPdu(packet.getData());
+				currentPduType = pdu.getPduType();
+				if (currentPduType == 14) //stop/freeze PDU
+				{
+					System.out.println("recieved Stop/Freeze packet...");
+					return;
+				}
+//					pdu.setExerciseID((short)5);
+				if (pdu != null) {
+					if (sentBufferList.contains(pdu.getTimestamp())) {
+						pdu = null;
+					}
+					if (pdu != null) {
+
+						String currentPduTypeName = pdu.getClass().getName();
+
+						if (currentPduType == 1) {
+							EntityStatePdu pdu2 = (EntityStatePdu) pdu;
+							marking2 = pdu2.getMarking().getCharactersString();
+						}
+						StringBuilder message = new StringBuilder();
+						message.append("received DIS PDU: ");
+						message.append("pduType ");
+						if (currentPduType < 10) {
+							message.append(" ");
+						}
+						message.append(currentPduType).append(" ").append(currentPduTypeName);
+						message.append(" ");
+						message.append(marking2);
+						System.out.println(message.toString());
+						//Reference for PDU Types: 
+						// http://faculty.nps.edu/brutzman/vrtp/mil/navy/nps/disEnumerations/JdbeHtmlFiles/pdu/8.htm 
+						//
+
+						if (currentPduType == 1) //EntityState
+						{
+							EntityStatePdu entityPDU = (EntityStatePdu) pdu;
+							EntityType PduEntityType = entityPDU.getEntityType();
+							if (PduEntityType.getCountry() == 225) {
+								Thread.sleep((long) 200);
+								timestamp = disTime.getDisAbsoluteTimestamp();
+								FDCespdu.setTimestamp(timestamp);
+								System.out.println("Talking to the Observer, sending a radio check ");
+								sender.run(FDCespdu);
+							}
+						}
+						if (currentPduType == 16) //Action request
+						{
+							// Action response is sending a Null PDU, not sure why...
+							AcknowledgePdu ack = new AcknowledgePdu();
+							ack.setExerciseID((short) 1);
+							ack.setRequestID((long) 1);
+							timestamp = disTime.getDisAbsoluteTimestamp();
+							ack.setTimestamp(timestamp);
+
+							FirePdu fire = new FirePdu();
+							fire.setExerciseID((short) 1);
+							fire.setFireMissionIndex(1000);
+							fire.setRangeToTarget((float) Math.sqrt(Math.pow(150, 2) + Math.pow(150, 2)));  //would pass in target info, but here we know location of tgt is (150,150) and FDC (0,0)
+							fire.setFiringEntityID(FDCID);
+							fire.setTargetEntityID(TGTEntityID);
+							timestamp = disTime.getDisAbsoluteTimestamp();
+							fire.setTimestamp(timestamp);
+							sender.run(ack, fire);
+						}
+
+						if (currentPduType == 22) //Comment PDU
+						{
+							AcknowledgePdu ack = new AcknowledgePdu();
+							ack.setExerciseID((short) 1);
+							ack.setRequestID((long) 1);
+							timestamp = disTime.getDisAbsoluteTimestamp();
+							ack.setTimestamp(timestamp);
+
+							StopFreezePdu stop = new StopFreezePdu();
+							stop.setExerciseID((short) 1);
+							stop.setRequestID((long) 1);
+							sender.run(ack, stop);
+						}
+
+					} else {
+						System.out.println("received packet but pdu is null and originated from FDC. Still standing by...");
+					}
+				}
+			}
+		} catch (IOException e) {
+			System.out.println("Problem with FDC.PduReceiver, see exception trace:");
+			System.out.println(e);
+		} finally {
+			System.out.println("FDC.PduReceiver complete. - OUT!");
+		}
+
+	}
+
+}
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/FriscoFurrPduSender.java b/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/FriscoFurrPduSender.java
index 6a5a617d8f..d1b27987e9 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/FriscoFurrPduSender.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/FriscoFurrPduSender.java
@@ -1,226 +1,230 @@
-package MV3500Cohort2018JulySeptember.projects.FriscoFurr.originals;
-
-import java.io.*;
-import java.net.*;
-import java.util.*;
-
-import edu.nps.moves.dis.*; // OpenDIS version 4
-import edu.nps.moves.disenum.*;
-import edu.nps.moves.examples.ClassNameComparator;
-
-
-/**
- * This is an example that sends many/most types of PDUs. Useful for testing standards
- * compliance or getting a full set of PDUs. It also writes the generated PDUs to an XML file.
- * Adapted from OpenDIS library example package edu.nps.moves.examples
- *
- * @author DMcG
- * @version $Id:$
- */
-public class FriscoFurrPduSender
-{
-    /** Default multicast group address we send on. */
-    public static final String DEFAULT_MULTICAST_ADDRESS = "239.1.2.3";
-	
-    /** Default multicast port used, matches Wireshark DIS capture default */
-    public static final int    DEFAULT_MULTICAST_PORT    = 3000;
-	
-    private int port;
-    InetAddress multicastAddress;
-
-    public FriscoFurrPduSender(int port, String multicast) {
-        try
-		{
-            this.port = port;
-            multicastAddress = InetAddress.getByName(multicast);
-            if (!multicastAddress.isMulticastAddress())
-			{
-                System.out.println("Not a multicast address: " + multicast);
-            }
-        } 
-		catch (UnknownHostException e) {
-            System.out.println("Unable to open socket: " + e);
-        }
-    }
-
-    public void run()
-	{
-		System.out.println("DisExamples.PduSender started...");
-        try {
-            List<Pdu> generatedPdus = new ArrayList<>();
-
-            // Loop through all the enumerated PDU types, create a PDU for each type,
-            // and add that PDU to a list.
-			System.out.println("number of PDU types in pduType is " + PduType.values().length);
-            for (PduType pdu : PduType.values()) {
-                Pdu aPdu = null;
-				System.out.println(pdu);
-                switch (pdu) // using enumeration values from edu.nps.moves.disenum.*
-				{
-//					
-//                    case ENTITY_STATE:
-//						System.out.println("Case: Enitity_State "+pdu+"\n");
-//                        aPdu = new EntityStatePdu();
-//						EntityStatePdu espdu = (EntityStatePdu) aPdu;
-//						Marking marking = new Marking();
-//						marking.setCharactersString("TEST DUDE");
-//						espdu.setMarking(marking);
-//						Vector3Double espduLocation = new Vector3Double();
-//						espduLocation.setX(1.0);
-//						espduLocation.setY(2.0);
-//						espduLocation.setZ(3.0);
-//						EntityType entityType = espdu.getEntityType();
-//						entityType.setCountry(222);
-//						
-//                        break;
-                        
-//                    case COMMENT:
-//                        aPdu = new CommentPdu();
-//						CommentPdu comment = (CommentPdu) aPdu;
-//						EntityID OBSEntityID = new EntityID();  // need to figure out what this is....and then just put into if statement below
-//						OBSEntityID.setEntity(2);
-//						OBSEntityID.setApplication(1);
-//						OBSEntityID.setSite(1);
-//						comment.setOriginatingEntityID(OBSEntityID);
-//						
-//						long number = 1;
-//						//comment.setNumberOfFixedDatumRecords(number);
-//						
-//						comment.setNumberOfVariableDatumRecords(number);
-//						List datum = new ArrayList<FixedDatum>();
-//						FixedDatum superDatum = new FixedDatum();
-//						superDatum.setFixedDatumID((long)5);
-//						superDatum.setFixedDatumValue((long) 54321);
-//						datum.add(10);
-//						datum.add(superDatum);
-//						comment.setFixedDatums(datum);
-//						List Vdatum = new ArrayList<VariableDatum>();
-//						VariableDatum testBitch = new VariableDatum();
-//						testBitch.setVariableDatumID(1);
-//						Vdatum.add(15);
-//						comment.setVariableDatums(Vdatum);
-//						break;
-
-//                    case FIRE:
-//                        aPdu = new FirePdu();
-//                        break;
-
-                    case DETONATION:
-                        aPdu = new DetonationPdu();
-						System.out.println("detonationPdu type " + aPdu.getPduType());
-                        break;
-//
-//                    case COLLISION:
-//                        aPdu = new CollisionPdu();
-//                        break;
-//
-//                    case SERVICE_REQUEST:
-//                        aPdu = new ServiceRequestPdu();
-//                        break;
-//
-//                    case RESUPPLY_OFFER:
-//                        aPdu = new ResupplyOfferPdu();
-//                        break;
-//
-//                    case RESUPPLY_RECEIVED:
-//                        aPdu = new ResupplyReceivedPdu();
-//                        break;
-//
-//                    case RESUPPLY_CANCEL:
-//                        aPdu = new ResupplyCancelPdu();
-//                        break;
-//
-//                    case REPAIR_COMPLETE:
-//                        aPdu = new RepairCompletePdu();
-//                        break;
-//
-//                    case REPAIR_RESPONSE:
-//                        aPdu = new RepairResponsePdu();
-//                        break;
-//
-//                    case CREATE_ENTITY:
-//                        aPdu = new CreateEntityPdu();
-//                        break;
-//
-//                    case REMOVE_ENTITY:
-//                        aPdu = new RemoveEntityPdu();
-//                        break;
-//
-//                    case START_RESUME:
-//                        aPdu = new StartResumePdu();
-//                        break;
-//
-//                    case STOP_FREEZE:
-//                        aPdu = new StopFreezePdu();
-//                        break;
-//
-//                    case ACKNOWLEDGE:
-//                        aPdu = new AcknowledgePdu();
-//                        break;
-//
-//                    case ACTION_REQUEST:
-//                        aPdu = new ActionRequestPdu();
-//						ActionRequestPdu action = (ActionRequestPdu) aPdu;
-//						EntityID OBSEntityID = new EntityID();  // need to figure out what this is....and then just put into if statement below
-//						OBSEntityID.setEntity(2);
-//						OBSEntityID.setApplication(1);
-//						OBSEntityID.setSite(1);
-//						action.setOriginatingEntityID(OBSEntityID);
-//                        break;
-
-                    default:
-                        System.out.print("PDU of type " + pdu + " not supported, created or sent ");
-                        System.out.println();
-                }
-                if (aPdu != null)
-				{
-                    generatedPdus.add(aPdu);
-					System.out.println("APDU container count "+generatedPdus.size());
-                }
-            }
-
-            // Sort the created PDUs by class name
-            Collections.sort(generatedPdus, new ClassNameComparator());
-
-            // Send the PDUs we created
-            InetAddress localMulticastAddress = InetAddress.getByName(DEFAULT_MULTICAST_ADDRESS);
-            MulticastSocket socket = new MulticastSocket(DEFAULT_MULTICAST_PORT);
-            socket.joinGroup(localMulticastAddress);
-
-            for (int idx = 0; idx < generatedPdus.size(); idx++)
-			{
-                ByteArrayOutputStream baos = new ByteArrayOutputStream();
-                DataOutputStream dos = new DataOutputStream(baos);
-                byte[] buffer;
-
-                Pdu aPdu = generatedPdus.get(idx);
-                aPdu.marshal(dos);
-
-                buffer = baos.toByteArray();
-                DatagramPacket packet = new DatagramPacket(buffer, buffer.length, localMulticastAddress, DEFAULT_MULTICAST_PORT);
-                socket.send(packet);
-                System.out.println("Sent PDU of type " + aPdu.getClass().getName());
-            }
-            // write the PDUs out to an XML file.
-            //PduContainer container = new PduContainer();
-            //container.setPdus(generatedPdus);
-            //container.marshallToXml("examplePdus.xml");
-        } catch (IOException e)
-		{
-            System.out.println(e);
-        }
-    }
-
-    public static void main(String args[])
-	{
-        if (args.length == 2) {
-            FriscoFurrPduSender sender = new FriscoFurrPduSender(Integer.parseInt(args[0]), args[1]);
-            sender.run();
-        } else {
-            System.out.println("Usage:   PduSender <port> <multicast group>");
-            System.out.println("Default: PduSender  " + DEFAULT_MULTICAST_PORT + "   " + DEFAULT_MULTICAST_ADDRESS);
-            FriscoFurrPduSender sender = new  FriscoFurrPduSender(DEFAULT_MULTICAST_PORT, DEFAULT_MULTICAST_ADDRESS);
-            sender.run();
-        }
-    }
-}
+package MV3500Cohort2018JulySeptember.projects.FriscoFurr.originals;
+
+import java.io.*;
+import java.net.*;
+import java.util.*;
+
+import edu.nps.moves.dis.*; // OpenDIS version 4
+import edu.nps.moves.disenum.*;
+import edu.nps.moves.examples.ClassNameComparator;
+
+
+/**
+ * This is an example that sends many/most types of PDUs. Useful for testing standards
+ * compliance or getting a full set of PDUs. It also writes the generated PDUs to an XML file.
+ * Adapted from OpenDIS library example package edu.nps.moves.examples
+ *
+ * @author DMcG
+ * @version $Id:$
+ */
+public class FriscoFurrPduSender
+{
+    /** Default multicast group address we send on. */
+    public static final String DEFAULT_MULTICAST_ADDRESS = "239.1.2.3";
+	
+    /** Default multicast port used, matches Wireshark DIS capture default */
+    public static final int    DEFAULT_MULTICAST_PORT    = 3000;
+	
+    private int port;
+    InetAddress multicastAddress;
+
+    public FriscoFurrPduSender(int port, String multicast) {
+        try
+		{
+            this.port = port;
+            multicastAddress = InetAddress.getByName(multicast);
+            if (!multicastAddress.isMulticastAddress())
+			{
+                System.out.println("Not a multicast address: " + multicast);
+            }
+        } 
+		catch (UnknownHostException e) {
+            System.out.println("Unable to open socket: " + e);
+        }
+    }
+
+    public void run()
+	{
+		System.out.println("DisExamples.PduSender started...");
+        try {
+            List<Pdu> generatedPdus = new ArrayList<>();
+
+            // Loop through all the enumerated PDU types, create a PDU for each type,
+            // and add that PDU to a list.
+			System.out.println("number of PDU types in pduType is " + PduType.values().length);
+            for (PduType pdu : PduType.values()) {
+                Pdu aPdu = null;
+				System.out.println(pdu);
+                switch (pdu) // using enumeration values from edu.nps.moves.disenum.*
+				{
+//					
+//                    case ENTITY_STATE:
+//						System.out.println("Case: Enitity_State "+pdu+"\n");
+//                        aPdu = new EntityStatePdu();
+//						EntityStatePdu espdu = (EntityStatePdu) aPdu;
+//						Marking marking = new Marking();
+//						marking.setCharactersString("TEST DUDE");
+//						espdu.setMarking(marking);
+//						Vector3Double espduLocation = new Vector3Double();
+//						espduLocation.setX(1.0);
+//						espduLocation.setY(2.0);
+//						espduLocation.setZ(3.0);
+//						EntityType entityType = espdu.getEntityType();
+//						entityType.setCountry(222);
+//						
+//                        break;
+                        
+//                    case COMMENT:
+//                        aPdu = new CommentPdu();
+//						CommentPdu comment = (CommentPdu) aPdu;
+//						EntityID OBSEntityID = new EntityID();  // need to figure out what this is....and then just put into if statement below
+//						OBSEntityID.setEntity(2);
+//						OBSEntityID.setApplication(1);
+//						OBSEntityID.setSite(1);
+//						comment.setOriginatingEntityID(OBSEntityID);
+//						
+//						long number = 1;
+//						//comment.setNumberOfFixedDatumRecords(number);
+//						
+//						comment.setNumberOfVariableDatumRecords(number);
+//						List datum = new ArrayList<FixedDatum>();
+//						FixedDatum superDatum = new FixedDatum();
+//						superDatum.setFixedDatumID((long)5);
+//						superDatum.setFixedDatumValue((long) 54321);
+//						datum.add(10);
+//						datum.add(superDatum);
+//						comment.setFixedDatums(datum);
+//						List Vdatum = new ArrayList<VariableDatum>();
+//						VariableDatum testBitch = new VariableDatum();
+//						testBitch.setVariableDatumID(1);
+//						Vdatum.add(15);
+//						comment.setVariableDatums(Vdatum);
+//						break;
+
+//                    case FIRE:
+//                        aPdu = new FirePdu();
+//                        break;
+
+                    case DETONATION:
+                        aPdu = new DetonationPdu();
+						System.out.println("detonationPdu type " + aPdu.getPduType());
+                        break;
+//
+//                    case COLLISION:
+//                        aPdu = new CollisionPdu();
+//                        break;
+//
+//                    case SERVICE_REQUEST:
+//                        aPdu = new ServiceRequestPdu();
+//                        break;
+//
+//                    case RESUPPLY_OFFER:
+//                        aPdu = new ResupplyOfferPdu();
+//                        break;
+//
+//                    case RESUPPLY_RECEIVED:
+//                        aPdu = new ResupplyReceivedPdu();
+//                        break;
+//
+//                    case RESUPPLY_CANCEL:
+//                        aPdu = new ResupplyCancelPdu();
+//                        break;
+//
+//                    case REPAIR_COMPLETE:
+//                        aPdu = new RepairCompletePdu();
+//                        break;
+//
+//                    case REPAIR_RESPONSE:
+//                        aPdu = new RepairResponsePdu();
+//                        break;
+//
+//                    case CREATE_ENTITY:
+//                        aPdu = new CreateEntityPdu();
+//                        break;
+//
+//                    case REMOVE_ENTITY:
+//                        aPdu = new RemoveEntityPdu();
+//                        break;
+//
+//                    case START_RESUME:
+//                        aPdu = new StartResumePdu();
+//                        break;
+//
+//                    case STOP_FREEZE:
+//                        aPdu = new StopFreezePdu();
+//                        break;
+//
+//                    case ACKNOWLEDGE:
+//                        aPdu = new AcknowledgePdu();
+//                        break;
+//
+//                    case ACTION_REQUEST:
+//                        aPdu = new ActionRequestPdu();
+//						ActionRequestPdu action = (ActionRequestPdu) aPdu;
+//						EntityID OBSEntityID = new EntityID();  // need to figure out what this is....and then just put into if statement below
+//						OBSEntityID.setEntity(2);
+//						OBSEntityID.setApplication(1);
+//						OBSEntityID.setSite(1);
+//						action.setOriginatingEntityID(OBSEntityID);
+//                        break;
+
+                    default:
+                        System.out.print("PDU of type " + pdu + " not supported, created or sent ");
+                        System.out.println();
+                }
+                if (aPdu != null)
+				{
+                    generatedPdus.add(aPdu);
+					System.out.println("APDU container count "+generatedPdus.size());
+                }
+            }
+
+            // Sort the created PDUs by class name
+            Collections.sort(generatedPdus, new ClassNameComparator());
+
+            // Send the PDUs we created
+            InetAddress localMulticastAddress = InetAddress.getByName(DEFAULT_MULTICAST_ADDRESS);
+            MulticastSocket socket = new MulticastSocket(DEFAULT_MULTICAST_PORT);
+            socket.joinGroup(localMulticastAddress);
+
+            for (int idx = 0; idx < generatedPdus.size(); idx++)
+			{
+                ByteArrayOutputStream baos = new ByteArrayOutputStream();
+                DataOutputStream dos = new DataOutputStream(baos);
+                byte[] buffer;
+
+                Pdu aPdu = generatedPdus.get(idx);
+                aPdu.marshal(dos);
+
+                buffer = baos.toByteArray();
+                DatagramPacket packet = new DatagramPacket(buffer, buffer.length, localMulticastAddress, DEFAULT_MULTICAST_PORT);
+                socket.send(packet);
+                System.out.println("Sent PDU of type " + aPdu.getClass().getName());
+            }
+            // write the PDUs out to an XML file.
+            //PduContainer container = new PduContainer();
+            //container.setPdus(generatedPdus);
+            //container.marshallToXml("examplePdus.xml");
+        } catch (IOException e)
+		{
+            System.out.println(e);
+        }
+    }
+
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
+    public static void main(String args[])
+	{
+        if (args.length == 2) {
+            FriscoFurrPduSender sender = new FriscoFurrPduSender(Integer.parseInt(args[0]), args[1]);
+            sender.run();
+        } else {
+            System.out.println("Usage:   PduSender <port> <multicast group>");
+            System.out.println("Default: PduSender  " + DEFAULT_MULTICAST_PORT + "   " + DEFAULT_MULTICAST_ADDRESS);
+            FriscoFurrPduSender sender = new  FriscoFurrPduSender(DEFAULT_MULTICAST_PORT, DEFAULT_MULTICAST_ADDRESS);
+            sender.run();
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/OBSSendRecieve1.java b/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/OBSSendRecieve1.java
index 306f731956..e13f643c98 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/OBSSendRecieve1.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/OBSSendRecieve1.java
@@ -1,310 +1,312 @@
-package MV3500Cohort2018JulySeptember.projects.FriscoFurr.originals;
-
-import java.net.*;
-import java.io.*;
-import java.util.*;
-import edu.nps.moves.dis.*; // OpenDIS version 4
-import java.io.IOException;
-import edu.nps.moves.disutil.PduFactory;
-import edu.nps.moves.disutil.DisTime;
-
-public class OBSSendRecieve1 {
-
-	/**
-	 * Default multicast group address we send on.
-	 */
-	public static final String DEFAULT_MULTICAST_ADDRESS = "239.1.2.3";
-
-	/**
-	 * Default multicast port used, matches Wireshark DIS capture default
-	 */
-	public static final int DEFAULT_MULTICAST_PORT = 3000;
-
-	private int port;
-	InetAddress multicastAddress;
-
-	public static final int MULTICAST_PORT = 3000;
-	public static final String MULTICAST_GROUP = "239.1.2.3";
-	public static final boolean USE_FAST_ESPDU = false;
-	public long[] sentBuffer = new long[100];
-	public static List sentBufferList;
-	DisTime disTime = DisTime.getInstance();
-	int transmission =1;
-
-	public OBSSendRecieve1(int port, String multicast) {
-		this.sentBufferList = new ArrayList<>();
-		try {
-			this.port = port;
-			multicastAddress = InetAddress.getByName(multicast);
-			if (!multicastAddress.isMulticastAddress()) {
-				System.out.println("Not a multicast address: " + multicast);
-			}
-		} catch (UnknownHostException e) {
-			System.out.println("Unable to open socket: " + e);
-		}
-	}
-
-	public void run(Pdu... pdupass) throws UnknownHostException, IOException {
-
-		List<Pdu> generatedPdus = new ArrayList<>();
-		Pdu aPdu = null;
-		if(transmission ==1){
-			System.out.println("\nInitalizing OP coms...");
-			transmission++;
-		}
-		if(transmission>1){
-		System.out.println("\nObserver Sending traffic...");
-		}
-		// Send the PDUs we created
-		InetAddress localMulticastAddress = InetAddress.getByName(DEFAULT_MULTICAST_ADDRESS);
-		MulticastSocket socket = new MulticastSocket(DEFAULT_MULTICAST_PORT);
-		socket.joinGroup(localMulticastAddress);
-
-		for (Pdu i : pdupass) {
-			Pdu pdu = i;
-			if (sentBufferList.contains(pdu.getTimestamp())) {
-				break;
-			}
-
-			short currentPduType = pdu.getPduType();
-			System.out.println("in observer sender, processing PDU type: " + currentPduType);
-//					String currentPduTypeName = pdu.getClass().getName();
-//					short currentProtocolFamilyID = pdu.getProtocolFamily();
-//					String currentPduFamilyName = pdu.getClass().getSuperclass().getSimpleName();
-
-			// Loop through all the enumerated PDU types, create a PDU for each type,
-			// and add that PDU to a list.
-			//System.out.println(pdu);
-			//Change the switch statement to the currentPduType from the recieve portion, then when a packet we want comes in, send the CASE file. 
-			switch (currentPduType) // using enumeration values from edu.nps.moves.disenum.*
-			{
-
-				case 1: //ENTITY_STATE:
-					aPdu = pdu;
-					break;
-
-//					case COMMENT:
-//						aPdu = new CommentPdu();
-//						break;
-//
-//				case 2: //FIRE
-//					aPdu = pdu;
-//					break;
-//
-//					case DETONATION:
-//						aPdu = new DetonationPdu();
-//						break;
-//
-//				case 15: //AcknowledgePdu
-//					aPdu = pdu;
-//					break;
-////
-				case 16: //ACTION_REQUEST:
-					aPdu = new ActionRequestPdu();
-					break;
-
-				case 22:  //CommentPdu
-					aPdu = pdu;
-					break;
-
-//				case 14:
-//					aPdu = pdu;
-//					break;
-				default:
-					//add some shit that makes sense here. 
-					System.out.print("PDU of type " + pdu + " not supported by Observer, created or sent ");
-					System.out.println();
-			}
-			if (aPdu != null) {
-				generatedPdus.add(aPdu);
-				System.out.println("APDU container count " + generatedPdus.size());
-			}
-
-		}
-		for (int idx = 0; idx < generatedPdus.size(); idx++) {
-			ByteArrayOutputStream baos = new ByteArrayOutputStream();
-			DataOutputStream dos = new DataOutputStream(baos);
-			byte[] buffer;
-
-			aPdu = generatedPdus.get(idx);
-			aPdu.marshal(dos);
-
-			buffer = baos.toByteArray();
-			DatagramPacket packet = new DatagramPacket(buffer, buffer.length, localMulticastAddress, DEFAULT_MULTICAST_PORT);
-			socket.send(packet);
-			//sentBuffer[sentBuffer.length] = aPdu.getTimestamp();
-			sentBufferList.add(aPdu.getTimestamp());
-			System.out.println("Observer Sent PDU of type " + aPdu.getClass().getName()+"/n");
-		}
-	}
-
-	public static void main(String[] args) throws IOException {
-		DisTime disTime = DisTime.getInstance();
-		//turns on the sender code - might need to move around down into the recieve with the if statements...
-		//
-		//    ORIGINAL SENDING CODE MAIN CLASS:
-		//
-		//
-//        if (args.length == 2) {
-//            FDCSendRecieve sender = new FDCSendRecieve(Integer.parseInt(args[0]), args[1]);
-//          //  sender.run();  //needs to be sender.run(pdu) 
-//        } else {
-//            System.out.println("Usage:   PduSender <port> <multicast group>");
-//            System.out.println("Default: PduSender  " + DEFAULT_MULTICAST_PORT + "   " + DEFAULT_MULTICAST_ADDRESS);
-//            FDCSendRecieve sender = new  FDCSendRecieve(DEFAULT_MULTICAST_PORT, DEFAULT_MULTICAST_ADDRESS);
-		//    sender.run();
-//        }
-
-		//
-		// Inital Hello world from entity:
-		//
-		OBSSendRecieve1 sender = new OBSSendRecieve1(DEFAULT_MULTICAST_PORT, DEFAULT_MULTICAST_ADDRESS); //initalize the sender
-
-		EntityStatePdu OBSespdu = new EntityStatePdu();
-		Marking marking = new Marking();
-		marking.setCharactersString("Observer");
-		OBSespdu.setMarking(marking);
-		OBSespdu.setExerciseID((short) 1);
-		EntityID OBSID = OBSespdu.getEntityID();
-		OBSID.setSite(1);  // 0 is apparently not a valid site number, per the spec
-		OBSID.setApplication(1);
-		OBSID.setEntity(2);  //change for each person I think???  - JMF
-		EntityType entityType = OBSespdu.getEntityType();
-		//
-		//Need to update the info below to match the unit type IAW SISO-REF-010-2015 V.21
-		//  https://www.sisostds.org/DesktopModules/Bring2mind/DMX/Download.aspx?Command=Core_Download&EntryId=42916&PortalId=0&TabId=105 
-		//
-		entityType.setEntityKind((short) 1);      // Platform (vs lifeform, munition, sensor, etc.)  TGT=1, OBS = 1
-		entityType.setCountry(225);              // USA TGT = 222 (Russia), OBS = 225
-		entityType.setDomain((short) 1);          // Land (vs air, surface, subsurface, space) both TGT and OBS are 1
-		entityType.setCategory((short) 40);        // FDC  TGT = 1, Tank  OBS=40 OP
-//		entityType.setSubcategory((short) 12);     // M1068 TGT = 2, T72 tank  NONE FOR OP
-//		entityType.setSpec((short) 1);            // M1068 w/ SICUP Tent  NONE FOR TGT OR OP
-		Vector3Double location = new Vector3Double();
-		location.setX(75.0);  //TGT = 150   OBS = 75
-		location.setY(75.0);  //TGT = 150   OBS = 75
-		location.setZ(50.0); //TGT = 20    OBS = 50
-		OBSespdu.setEntityLocation(location);
-		int timestamp = disTime.getDisAbsoluteTimestamp();
-		OBSespdu.setTimestamp(timestamp);
-		//FDCespdu.setTimestamp(System.currentTimeMillis());
-		sender.run(OBSespdu);  //sends inital here I am and who I am
-
-		//other player to look out for:
-		EntityID FDCEntityID = new EntityID();
-		FDCEntityID.setEntity(1);
-		FDCEntityID.setApplication(1);
-		FDCEntityID.setSite(1);
-
-		EntityID TGTEntityID = new EntityID();
-		TGTEntityID.setEntity(3);
-		TGTEntityID.setApplication(1);
-		TGTEntityID.setSite(1);
-
-		/*  BELOW IS THE RECIEVE CODE  //
-		//                             //
-		//                             //
-		 */                             //
-		PduFactory factory;
-		MulticastSocket socket = null;
-		InetAddress address = null;
-		DatagramPacket packet;
-		short currentPduType;  //will use the curentPduType as the check for sending other packets.
-		
-		try {
-			// TODO: Change the line below to make sense for each class
-			System.out.println("Observer is in the OP and looking for targets...\n\n");
-			socket = new MulticastSocket(MULTICAST_PORT);
-			address = InetAddress.getByName(MULTICAST_GROUP);
-			socket.joinGroup(address);
-
-			factory = new PduFactory();
-
-			while (true) // Loop infinitely, receiving datagrams
-			{
-				byte buffer[] = new byte[1500]; // typical MTU size
-
-				packet = new DatagramPacket(buffer, buffer.length); // reset
-
-				socket.receive(packet);
-				//
-				//TODO: NEED IF STATEMENT IF THE SENDER IS THIS CLASS TO DELETE.
-				//
-
-				String marking2 = new String();
-				Pdu pdu = factory.createPdu(packet.getData());
-				currentPduType = pdu.getPduType();
-				if (currentPduType == 14) //stop/freeze PDU
-				{
-					System.out.println("recieved Stop/Freeze packet...");
-					return;
-				}
-//					pdu.setExerciseID((short)5);
-				if (pdu != null) {
-					if (sentBufferList.contains(pdu.getTimestamp())) {
-						pdu = null;
-					}
-					if (pdu != null) {
-
-						String currentPduTypeName = pdu.getClass().getName();
-						if (currentPduType == 1) {
-							EntityStatePdu pdu2 = (EntityStatePdu) pdu;
-							marking2 = pdu2.getMarking().getCharactersString();
-						}
-//Keep adding any if statements as needed for the class you are building. 
-						StringBuilder message = new StringBuilder();
-						message.append("received DIS PDU: ");
-						message.append("pduType ");
-						if (currentPduType < 10) {
-							message.append(" ");
-						}
-						message.append(currentPduType).append(" ").append(currentPduTypeName);
-						message.append(" ");
-						message.append(marking2);
-						System.out.println(message.toString());
-						//Reference for PDU Types: 
-						// http://faculty.nps.edu/brutzman/vrtp/mil/navy/nps/disEnumerations/JdbeHtmlFiles/pdu/8.htm 
-						//
-
-						if (currentPduType == 1) //EntityState
-						{
-							EntityStatePdu entityPDU = (EntityStatePdu) pdu;
-							EntityType PduEntityType = entityPDU.getEntityType();
-							if (PduEntityType.getCountry() == 222) {
-								ActionRequestPdu action = new ActionRequestPdu();
-								action.setExerciseID((short) 1);
-								action.setRequestID((long) 2);
-								action.setOriginatingEntityID(OBSID);
-								action.setReceivingEntityID(FDCEntityID);
-								timestamp = disTime.getDisAbsoluteTimestamp();
-								action.setTimestamp(timestamp);
-								System.out.println("\n Got a Russian SOB!  Preparing CFF to send.");
-								sender.run(action);
-							}
-						}
-
-						if (currentPduType == 3) //Detination
-						{
-							CommentPdu comment = new CommentPdu();
-							comment.setExerciseID((short) 1);
-							comment.setOriginatingEntityID(TGTEntityID);
-							timestamp = disTime.getDisAbsoluteTimestamp();
-							comment.setTimestamp(timestamp);
-							sender.run(comment);
-						}
-
-					} else {
-						System.out.println("received packet but pdu is null and originated from Observer. Still searching for other Targets...");
-					}
-				}
-			}
-		} catch (IOException e) {
-			System.out.println("Problem with Observer.PduReceiver, see exception trace:");
-			System.out.println(e);
-		} finally {
-			System.out.println("Observer.PduReceiver complete. - OUT!");
-		}
-
-	}
-
-}
+package MV3500Cohort2018JulySeptember.projects.FriscoFurr.originals;
+
+import java.net.*;
+import java.io.*;
+import java.util.*;
+import edu.nps.moves.dis.*; // OpenDIS version 4
+import java.io.IOException;
+import edu.nps.moves.disutil.PduFactory;
+import edu.nps.moves.disutil.DisTime;
+
+public class OBSSendRecieve1 {
+
+	/**
+	 * Default multicast group address we send on.
+	 */
+	public static final String DEFAULT_MULTICAST_ADDRESS = "239.1.2.3";
+
+	/**
+	 * Default multicast port used, matches Wireshark DIS capture default
+	 */
+	public static final int DEFAULT_MULTICAST_PORT = 3000;
+
+	private int port;
+	InetAddress multicastAddress;
+
+    /** socket parameter of interest */
+	public static final int MULTICAST_PORT = 3000;
+    /** socket parameter of interest */
+	public static final String MULTICAST_GROUP = "239.1.2.3";
+	static final boolean USE_FAST_ESPDU = false;
+	private long[] sentBuffer = new long[100];
+	private static List sentBufferList;
+	DisTime disTime = DisTime.getInstance();
+	int transmission =1;
+
+	public OBSSendRecieve1(int port, String multicast) {
+		this.sentBufferList = new ArrayList<>();
+		try {
+			this.port = port;
+			multicastAddress = InetAddress.getByName(multicast);
+			if (!multicastAddress.isMulticastAddress()) {
+				System.out.println("Not a multicast address: " + multicast);
+			}
+		} catch (UnknownHostException e) {
+			System.out.println("Unable to open socket: " + e);
+		}
+	}
+
+	public void run(Pdu... pdupass) throws UnknownHostException, IOException {
+
+		List<Pdu> generatedPdus = new ArrayList<>();
+		Pdu aPdu = null;
+		if(transmission ==1){
+			System.out.println("\nInitalizing OP coms...");
+			transmission++;
+		}
+		if(transmission>1){
+		System.out.println("\nObserver Sending traffic...");
+		}
+		// Send the PDUs we created
+		InetAddress localMulticastAddress = InetAddress.getByName(DEFAULT_MULTICAST_ADDRESS);
+		MulticastSocket socket = new MulticastSocket(DEFAULT_MULTICAST_PORT);
+		socket.joinGroup(localMulticastAddress);
+
+		for (Pdu i : pdupass) {
+			Pdu pdu = i;
+			if (sentBufferList.contains(pdu.getTimestamp())) {
+				break;
+			}
+
+			short currentPduType = pdu.getPduType();
+			System.out.println("in observer sender, processing PDU type: " + currentPduType);
+//					String currentPduTypeName = pdu.getClass().getName();
+//					short currentProtocolFamilyID = pdu.getProtocolFamily();
+//					String currentPduFamilyName = pdu.getClass().getSuperclass().getSimpleName();
+
+			// Loop through all the enumerated PDU types, create a PDU for each type,
+			// and add that PDU to a list.
+			//System.out.println(pdu);
+			//Change the switch statement to the currentPduType from the recieve portion, then when a packet we want comes in, send the CASE file. 
+			switch (currentPduType) // using enumeration values from edu.nps.moves.disenum.*
+			{
+
+				case 1: //ENTITY_STATE:
+					aPdu = pdu;
+					break;
+
+//					case COMMENT:
+//						aPdu = new CommentPdu();
+//						break;
+//
+//				case 2: //FIRE
+//					aPdu = pdu;
+//					break;
+//
+//					case DETONATION:
+//						aPdu = new DetonationPdu();
+//						break;
+//
+//				case 15: //AcknowledgePdu
+//					aPdu = pdu;
+//					break;
+////
+				case 16: //ACTION_REQUEST:
+					aPdu = new ActionRequestPdu();
+					break;
+
+				case 22:  //CommentPdu
+					aPdu = pdu;
+					break;
+
+//				case 14:
+//					aPdu = pdu;
+//					break;
+				default:
+					//add some shit that makes sense here. 
+					System.out.print("PDU of type " + pdu + " not supported by Observer, created or sent ");
+					System.out.println();
+			}
+			if (aPdu != null) {
+				generatedPdus.add(aPdu);
+				System.out.println("APDU container count " + generatedPdus.size());
+			}
+
+		}
+		for (int idx = 0; idx < generatedPdus.size(); idx++) {
+			ByteArrayOutputStream baos = new ByteArrayOutputStream();
+			DataOutputStream dos = new DataOutputStream(baos);
+			byte[] buffer;
+
+			aPdu = generatedPdus.get(idx);
+			aPdu.marshal(dos);
+
+			buffer = baos.toByteArray();
+			DatagramPacket packet = new DatagramPacket(buffer, buffer.length, localMulticastAddress, DEFAULT_MULTICAST_PORT);
+			socket.send(packet);
+			//sentBuffer[sentBuffer.length] = aPdu.getTimestamp();
+			sentBufferList.add(aPdu.getTimestamp());
+			System.out.println("Observer Sent PDU of type " + aPdu.getClass().getName()+"/n");
+		}
+	}
+
+	public static void main(String[] args) throws IOException {
+		DisTime disTime = DisTime.getInstance();
+		//turns on the sender code - might need to move around down into the recieve with the if statements...
+		//
+		//    ORIGINAL SENDING CODE MAIN CLASS:
+		//
+		//
+//        if (args.length == 2) {
+//            FDCSendRecieve sender = new FDCSendRecieve(Integer.parseInt(args[0]), args[1]);
+//          //  sender.run();  //needs to be sender.run(pdu) 
+//        } else {
+//            System.out.println("Usage:   PduSender <port> <multicast group>");
+//            System.out.println("Default: PduSender  " + DEFAULT_MULTICAST_PORT + "   " + DEFAULT_MULTICAST_ADDRESS);
+//            FDCSendRecieve sender = new  FDCSendRecieve(DEFAULT_MULTICAST_PORT, DEFAULT_MULTICAST_ADDRESS);
+		//    sender.run();
+//        }
+
+		//
+		// Inital Hello world from entity:
+		//
+		OBSSendRecieve1 sender = new OBSSendRecieve1(DEFAULT_MULTICAST_PORT, DEFAULT_MULTICAST_ADDRESS); //initalize the sender
+
+		EntityStatePdu OBSespdu = new EntityStatePdu();
+		Marking marking = new Marking();
+		marking.setCharactersString("Observer");
+		OBSespdu.setMarking(marking);
+		OBSespdu.setExerciseID((short) 1);
+		EntityID OBSID = OBSespdu.getEntityID();
+		OBSID.setSite(1);  // 0 is apparently not a valid site number, per the spec
+		OBSID.setApplication(1);
+		OBSID.setEntity(2);  //change for each person I think???  - JMF
+		EntityType entityType = OBSespdu.getEntityType();
+		//
+		//Need to update the info below to match the unit type IAW SISO-REF-010-2015 V.21
+		//  https://www.sisostds.org/DesktopModules/Bring2mind/DMX/Download.aspx?Command=Core_Download&EntryId=42916&PortalId=0&TabId=105 
+		//
+		entityType.setEntityKind((short) 1);      // Platform (vs lifeform, munition, sensor, etc.)  TGT=1, OBS = 1
+		entityType.setCountry(225);              // USA TGT = 222 (Russia), OBS = 225
+		entityType.setDomain((short) 1);          // Land (vs air, surface, subsurface, space) both TGT and OBS are 1
+		entityType.setCategory((short) 40);        // FDC  TGT = 1, Tank  OBS=40 OP
+//		entityType.setSubcategory((short) 12);     // M1068 TGT = 2, T72 tank  NONE FOR OP
+//		entityType.setSpec((short) 1);            // M1068 w/ SICUP Tent  NONE FOR TGT OR OP
+		Vector3Double location = new Vector3Double();
+		location.setX(75.0);  //TGT = 150   OBS = 75
+		location.setY(75.0);  //TGT = 150   OBS = 75
+		location.setZ(50.0); //TGT = 20    OBS = 50
+		OBSespdu.setEntityLocation(location);
+		int timestamp = disTime.getDisAbsoluteTimestamp();
+		OBSespdu.setTimestamp(timestamp);
+		//FDCespdu.setTimestamp(System.currentTimeMillis());
+		sender.run(OBSespdu);  //sends inital here I am and who I am
+
+		//other player to look out for:
+		EntityID FDCEntityID = new EntityID();
+		FDCEntityID.setEntity(1);
+		FDCEntityID.setApplication(1);
+		FDCEntityID.setSite(1);
+
+		EntityID TGTEntityID = new EntityID();
+		TGTEntityID.setEntity(3);
+		TGTEntityID.setApplication(1);
+		TGTEntityID.setSite(1);
+
+		/*  BELOW IS THE RECIEVE CODE  //
+		//                             //
+		//                             //
+		 */                             //
+		PduFactory factory;
+		MulticastSocket socket = null;
+		InetAddress address = null;
+		DatagramPacket packet;
+		short currentPduType;  //will use the curentPduType as the check for sending other packets.
+		
+		try {
+			// TODO: Change the line below to make sense for each class
+			System.out.println("Observer is in the OP and looking for targets...\n\n");
+			socket = new MulticastSocket(MULTICAST_PORT);
+			address = InetAddress.getByName(MULTICAST_GROUP);
+			socket.joinGroup(address);
+
+			factory = new PduFactory();
+
+			while (true) // Loop infinitely, receiving datagrams
+			{
+				byte buffer[] = new byte[1500]; // typical MTU size
+
+				packet = new DatagramPacket(buffer, buffer.length); // reset
+
+				socket.receive(packet);
+				//
+				//TODO: NEED IF STATEMENT IF THE SENDER IS THIS CLASS TO DELETE.
+				//
+
+				String marking2 = new String();
+				Pdu pdu = factory.createPdu(packet.getData());
+				currentPduType = pdu.getPduType();
+				if (currentPduType == 14) //stop/freeze PDU
+				{
+					System.out.println("recieved Stop/Freeze packet...");
+					return;
+				}
+//					pdu.setExerciseID((short)5);
+				if (pdu != null) {
+					if (sentBufferList.contains(pdu.getTimestamp())) {
+						pdu = null;
+					}
+					if (pdu != null) {
+
+						String currentPduTypeName = pdu.getClass().getName();
+						if (currentPduType == 1) {
+							EntityStatePdu pdu2 = (EntityStatePdu) pdu;
+							marking2 = pdu2.getMarking().getCharactersString();
+						}
+//Keep adding any if statements as needed for the class you are building. 
+						StringBuilder message = new StringBuilder();
+						message.append("received DIS PDU: ");
+						message.append("pduType ");
+						if (currentPduType < 10) {
+							message.append(" ");
+						}
+						message.append(currentPduType).append(" ").append(currentPduTypeName);
+						message.append(" ");
+						message.append(marking2);
+						System.out.println(message.toString());
+						//Reference for PDU Types: 
+						// http://faculty.nps.edu/brutzman/vrtp/mil/navy/nps/disEnumerations/JdbeHtmlFiles/pdu/8.htm 
+						//
+
+						if (currentPduType == 1) //EntityState
+						{
+							EntityStatePdu entityPDU = (EntityStatePdu) pdu;
+							EntityType PduEntityType = entityPDU.getEntityType();
+							if (PduEntityType.getCountry() == 222) {
+								ActionRequestPdu action = new ActionRequestPdu();
+								action.setExerciseID((short) 1);
+								action.setRequestID((long) 2);
+								action.setOriginatingEntityID(OBSID);
+								action.setReceivingEntityID(FDCEntityID);
+								timestamp = disTime.getDisAbsoluteTimestamp();
+								action.setTimestamp(timestamp);
+								System.out.println("\n Got a Russian SOB!  Preparing CFF to send.");
+								sender.run(action);
+							}
+						}
+
+						if (currentPduType == 3) //Detination
+						{
+							CommentPdu comment = new CommentPdu();
+							comment.setExerciseID((short) 1);
+							comment.setOriginatingEntityID(TGTEntityID);
+							timestamp = disTime.getDisAbsoluteTimestamp();
+							comment.setTimestamp(timestamp);
+							sender.run(comment);
+						}
+
+					} else {
+						System.out.println("received packet but pdu is null and originated from Observer. Still searching for other Targets...");
+					}
+				}
+			}
+		} catch (IOException e) {
+			System.out.println("Problem with Observer.PduReceiver, see exception trace:");
+			System.out.println(e);
+		} finally {
+			System.out.println("Observer.PduReceiver complete. - OUT!");
+		}
+
+	}
+
+}
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/TGTSendRecieve.java b/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/TGTSendRecieve.java
index 7a218265fb..f096673607 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/TGTSendRecieve.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/projects/FriscoFurr/originals/TGTSendRecieve.java
@@ -1,250 +1,252 @@
-package MV3500Cohort2018JulySeptember.projects.FriscoFurr.originals;
-
-import java.net.*;
-import java.io.*;
-import java.util.*;
-import edu.nps.moves.dis.*; // OpenDIS version 4
-import java.io.IOException;
-import edu.nps.moves.disutil.PduFactory;
-import edu.nps.moves.disutil.DisTime;
-
-public class TGTSendRecieve {
-
-	/**
-	 * Default multicast group address we send on.
-	 */
-	public static final String DEFAULT_MULTICAST_ADDRESS = "239.1.2.3";
-
-	/**
-	 * Default multicast port used, matches Wireshark DIS capture default
-	 */
-	public static final int DEFAULT_MULTICAST_PORT = 3000;
-
-	private int port;
-	InetAddress multicastAddress;
-
-	public static final int MULTICAST_PORT = 3000;
-	public static final String MULTICAST_GROUP = "239.1.2.3";
-	public static final boolean USE_FAST_ESPDU = false;
-	public long[] sentBuffer = new long[100];
-	public static List sentBufferList;
-	DisTime disTime = DisTime.getInstance();
-	int transmission = 1;
-
-	public TGTSendRecieve(int port, String multicast) {
-		this.sentBufferList = new ArrayList<>();
-		try {
-			this.port = port;
-			multicastAddress = InetAddress.getByName(multicast);
-			if (!multicastAddress.isMulticastAddress()) {
-				System.out.println("Not a multicast address: " + multicast);
-			}
-		} catch (UnknownHostException e) {
-			System.out.println("Unable to open socket: " + e);
-		}
-	}
-
-	public void run(Pdu... pdupass) throws UnknownHostException, IOException {
-
-		List<Pdu> generatedPdus = new ArrayList<>();
-		Pdu aPdu = null;
-		if (transmission == 1) {
-			System.out.println("\nTarget is rolling out...");
-			transmission++;
-		}
-		if (transmission > 1) {
-			System.out.println("\nDeath from above everywhere! (sending function started)...");
-		}
-		// Send the PDUs we created
-		InetAddress localMulticastAddress = InetAddress.getByName(DEFAULT_MULTICAST_ADDRESS);
-		MulticastSocket socket = new MulticastSocket(DEFAULT_MULTICAST_PORT);
-		socket.joinGroup(localMulticastAddress);
-
-		for (Pdu i : pdupass) {
-			Pdu pdu = i;
-			if (sentBufferList.contains(pdu.getTimestamp())) {
-				break;
-			}
-
-			short currentPduType = pdu.getPduType();
-			System.out.println("in Target sender, processing PDU type: " + currentPduType);
-//					
-			switch (currentPduType) // using enumeration values from edu.nps.moves.disenum.*
-			{
-
-				case 1: //ENTITY_STATE:
-					aPdu = pdu;
-					break;
-
-				case 3: //detination PDU
-					aPdu = pdu;
-					break;
-
-				default:
-					//add some shit that makes sense here. 
-					System.out.print("PDU of type " + pdu + " not supported by Observer, created or sent ");
-					System.out.println();
-			}
-			if (aPdu != null) {
-				generatedPdus.add(aPdu);
-				System.out.println("APDU container count " + generatedPdus.size());
-			}
-
-		}
-		for (int idx = 0; idx < generatedPdus.size(); idx++) {
-			ByteArrayOutputStream baos = new ByteArrayOutputStream();
-			DataOutputStream dos = new DataOutputStream(baos);
-			byte[] buffer;
-
-			aPdu = generatedPdus.get(idx);
-			aPdu.marshal(dos);
-
-			buffer = baos.toByteArray();
-			DatagramPacket packet = new DatagramPacket(buffer, buffer.length, localMulticastAddress, DEFAULT_MULTICAST_PORT);
-			socket.send(packet);
-			//sentBuffer[sentBuffer.length] = aPdu.getTimestamp();
-			sentBufferList.add(aPdu.getTimestamp());
-			System.out.println("Observer Sent PDU of type " + aPdu.getClass().getName() + "/n");
-		}
-	}
-
-	public static void main(String[] args) throws IOException {
-		DisTime disTime = DisTime.getInstance();
-		//turns on the sender code - might need to move around down into the recieve with the if statements...
-
-		//
-		// Inital Hello world from entity:
-		//
-		TGTSendRecieve sender = new TGTSendRecieve(DEFAULT_MULTICAST_PORT, DEFAULT_MULTICAST_ADDRESS); //initalize the sender
-
-		EntityStatePdu TGTespdu = new EntityStatePdu();
-		Marking marking = new Marking();
-		marking.setCharactersString("Target");
-		TGTespdu.setMarking(marking);
-		TGTespdu.setExerciseID((short) 1);
-		EntityID OBSID = TGTespdu.getEntityID();
-		OBSID.setSite(1);  // 0 is apparently not a valid site number, per the spec
-		OBSID.setApplication(1);
-		OBSID.setEntity(3);  //change for each person I think???  - JMF
-		EntityType entityType = TGTespdu.getEntityType();
-		//
-		//Need to update the info below to match the unit type IAW SISO-REF-010-2015 V.21
-		//  https://www.sisostds.org/DesktopModules/Bring2mind/DMX/Download.aspx?Command=Core_Download&EntryId=42916&PortalId=0&TabId=105 
-		//
-		entityType.setEntityKind((short) 1);      // Platform (vs lifeform, munition, sensor, etc.)  TGT=1, OBS = 1
-		entityType.setCountry(222);              // USA TGT = 222 (Russia), OBS = 225
-		entityType.setDomain((short) 1);          // Land (vs air, surface, subsurface, space) both TGT and OBS are 1
-		entityType.setCategory((short) 1);        // FDC  TGT = 1, Tank  OBS=40 OP
-		entityType.setSubcategory((short) 2);     // M1068 TGT = 2, T72 tank  NONE FOR OP
-
-		Vector3Double location = new Vector3Double();
-		location.setX(150.0);  //TGT = 150   OBS = 75
-		location.setY(150.0);  //TGT = 150   OBS = 75
-		location.setZ(20.0); //TGT = 20    OBS = 50
-		TGTespdu.setEntityLocation(location);
-		int timestamp = disTime.getDisAbsoluteTimestamp();
-		TGTespdu.setTimestamp(timestamp);
-		sender.run(TGTespdu);  //sends inital here I am and who I am
-
-		//other player to look out for:
-		EntityID FDCEntityID = new EntityID();
-		FDCEntityID.setEntity(1);
-		FDCEntityID.setApplication(1);
-		FDCEntityID.setSite(1);
-
-		EntityID OBSEntityID = new EntityID();
-		OBSEntityID.setEntity(2);
-		OBSEntityID.setApplication(1);
-		OBSEntityID.setSite(1);
-
-		/*  BELOW IS THE RECIEVE CODE  //
-		//                             //
-		//                             //
-		 */                             //
-		PduFactory factory;
-		MulticastSocket socket = null;
-		InetAddress address = null;
-		DatagramPacket packet;
-		short currentPduType;  //will use the curentPduType as the check for sending other packets.
-
-		try {
-			// TODO: Change the line below to make sense for each class
-			System.out.println("Russian T72 out on the prowl...\n\n");
-			socket = new MulticastSocket(MULTICAST_PORT);
-			address = InetAddress.getByName(MULTICAST_GROUP);
-			socket.joinGroup(address);
-
-			factory = new PduFactory();
-
-			while (true) // Loop infinitely, receiving datagrams
-			{
-				byte buffer[] = new byte[1500]; // typical MTU size
-
-				packet = new DatagramPacket(buffer, buffer.length); // reset
-
-				socket.receive(packet);
-				//
-				//TODO: NEED IF STATEMENT IF THE SENDER IS THIS CLASS TO DELETE.
-				//
-
-				String marking2 = new String();
-				Pdu pdu = factory.createPdu(packet.getData());
-				currentPduType = pdu.getPduType();
-				if (currentPduType == 14) //stop/freeze PDU
-				{
-					System.out.println("recieved Stop/Freeze packet...");
-					return;
-				}
-//					pdu.setExerciseID((short)5);
-				if (pdu != null) {
-					if (sentBufferList.contains(pdu.getTimestamp())) {
-						pdu = null;
-					}
-					if (pdu != null) {
-
-						String currentPduTypeName = pdu.getClass().getName();
-						if (currentPduType == 1) {
-							EntityStatePdu pdu2 = (EntityStatePdu) pdu;
-							marking2 = pdu2.getMarking().getCharactersString();
-						}
-//Keep adding any if statements as needed for the class you are building. 
-						StringBuilder message = new StringBuilder();
-						message.append("received DIS PDU: ");
-						message.append("pduType ");
-						if (currentPduType < 10) {
-							message.append(" ");
-						}
-						message.append(currentPduType).append(" ").append(currentPduTypeName);
-						message.append(" ");
-						message.append(marking2);
-						System.out.println(message.toString());
-						//Reference for PDU Types: 
-						// http://faculty.nps.edu/brutzman/vrtp/mil/navy/nps/disEnumerations/JdbeHtmlFiles/pdu/8.htm 
-						//
-
-
-						if (currentPduType == 2) //FirePDU
-						{
-							DetonationPdu det = new DetonationPdu();
-							det.setExerciseID((short) 1);
-							det.setDetonationResult((short)1);
-							timestamp = disTime.getDisAbsoluteTimestamp();
-							det.setTimestamp(timestamp);
-							sender.run(det);
-						}
-
-					} else {
-						System.out.println("received packet but pdu is null and originated from Target. Still doing sketchy Russian things...");
-					}
-				}
-			}
-		} catch (IOException e) {
-			System.out.println("Problem with Target.PduReceiver, see exception trace:");
-			System.out.println(e);
-		} finally {
-			System.out.println("Target.PduReceiver complete. - T-72 DESTROYED!");
-		}
-
-	}
-
-}
+package MV3500Cohort2018JulySeptember.projects.FriscoFurr.originals;
+
+import java.net.*;
+import java.io.*;
+import java.util.*;
+import edu.nps.moves.dis.*; // OpenDIS version 4
+import java.io.IOException;
+import edu.nps.moves.disutil.PduFactory;
+import edu.nps.moves.disutil.DisTime;
+
+public class TGTSendRecieve {
+
+	/**
+	 * Default multicast group address we send on.
+	 */
+	public static final String DEFAULT_MULTICAST_ADDRESS = "239.1.2.3";
+
+	/**
+	 * Default multicast port used, matches Wireshark DIS capture default
+	 */
+	public static final int DEFAULT_MULTICAST_PORT = 3000;
+
+	private int port;
+	InetAddress multicastAddress;
+
+    /** socket parameter of interest */
+	public static final int MULTICAST_PORT = 3000;
+    /** socket parameter of interest */
+	public static final String MULTICAST_GROUP = "239.1.2.3";
+	static final boolean USE_FAST_ESPDU = false;
+	long[] sentBuffer = new long[100];
+	static List sentBufferList;
+	DisTime disTime = DisTime.getInstance();
+	int transmission = 1;
+
+	public TGTSendRecieve(int port, String multicast) {
+		this.sentBufferList = new ArrayList<>();
+		try {
+			this.port = port;
+			multicastAddress = InetAddress.getByName(multicast);
+			if (!multicastAddress.isMulticastAddress()) {
+				System.out.println("Not a multicast address: " + multicast);
+			}
+		} catch (UnknownHostException e) {
+			System.out.println("Unable to open socket: " + e);
+		}
+	}
+
+	public void run(Pdu... pdupass) throws UnknownHostException, IOException {
+
+		List<Pdu> generatedPdus = new ArrayList<>();
+		Pdu aPdu = null;
+		if (transmission == 1) {
+			System.out.println("\nTarget is rolling out...");
+			transmission++;
+		}
+		if (transmission > 1) {
+			System.out.println("\nDeath from above everywhere! (sending function started)...");
+		}
+		// Send the PDUs we created
+		InetAddress localMulticastAddress = InetAddress.getByName(DEFAULT_MULTICAST_ADDRESS);
+		MulticastSocket socket = new MulticastSocket(DEFAULT_MULTICAST_PORT);
+		socket.joinGroup(localMulticastAddress);
+
+		for (Pdu i : pdupass) {
+			Pdu pdu = i;
+			if (sentBufferList.contains(pdu.getTimestamp())) {
+				break;
+			}
+
+			short currentPduType = pdu.getPduType();
+			System.out.println("in Target sender, processing PDU type: " + currentPduType);
+//					
+			switch (currentPduType) // using enumeration values from edu.nps.moves.disenum.*
+			{
+
+				case 1: //ENTITY_STATE:
+					aPdu = pdu;
+					break;
+
+				case 3: //detination PDU
+					aPdu = pdu;
+					break;
+
+				default:
+					//add some shit that makes sense here. 
+					System.out.print("PDU of type " + pdu + " not supported by Observer, created or sent ");
+					System.out.println();
+			}
+			if (aPdu != null) {
+				generatedPdus.add(aPdu);
+				System.out.println("APDU container count " + generatedPdus.size());
+			}
+
+		}
+		for (int idx = 0; idx < generatedPdus.size(); idx++) {
+			ByteArrayOutputStream baos = new ByteArrayOutputStream();
+			DataOutputStream dos = new DataOutputStream(baos);
+			byte[] buffer;
+
+			aPdu = generatedPdus.get(idx);
+			aPdu.marshal(dos);
+
+			buffer = baos.toByteArray();
+			DatagramPacket packet = new DatagramPacket(buffer, buffer.length, localMulticastAddress, DEFAULT_MULTICAST_PORT);
+			socket.send(packet);
+			//sentBuffer[sentBuffer.length] = aPdu.getTimestamp();
+			sentBufferList.add(aPdu.getTimestamp());
+			System.out.println("Observer Sent PDU of type " + aPdu.getClass().getName() + "/n");
+		}
+	}
+
+	public static void main(String[] args) throws IOException {
+		DisTime disTime = DisTime.getInstance();
+		//turns on the sender code - might need to move around down into the recieve with the if statements...
+
+		//
+		// Inital Hello world from entity:
+		//
+		TGTSendRecieve sender = new TGTSendRecieve(DEFAULT_MULTICAST_PORT, DEFAULT_MULTICAST_ADDRESS); //initalize the sender
+
+		EntityStatePdu TGTespdu = new EntityStatePdu();
+		Marking marking = new Marking();
+		marking.setCharactersString("Target");
+		TGTespdu.setMarking(marking);
+		TGTespdu.setExerciseID((short) 1);
+		EntityID OBSID = TGTespdu.getEntityID();
+		OBSID.setSite(1);  // 0 is apparently not a valid site number, per the spec
+		OBSID.setApplication(1);
+		OBSID.setEntity(3);  //change for each person I think???  - JMF
+		EntityType entityType = TGTespdu.getEntityType();
+		//
+		//Need to update the info below to match the unit type IAW SISO-REF-010-2015 V.21
+		//  https://www.sisostds.org/DesktopModules/Bring2mind/DMX/Download.aspx?Command=Core_Download&EntryId=42916&PortalId=0&TabId=105 
+		//
+		entityType.setEntityKind((short) 1);      // Platform (vs lifeform, munition, sensor, etc.)  TGT=1, OBS = 1
+		entityType.setCountry(222);              // USA TGT = 222 (Russia), OBS = 225
+		entityType.setDomain((short) 1);          // Land (vs air, surface, subsurface, space) both TGT and OBS are 1
+		entityType.setCategory((short) 1);        // FDC  TGT = 1, Tank  OBS=40 OP
+		entityType.setSubcategory((short) 2);     // M1068 TGT = 2, T72 tank  NONE FOR OP
+
+		Vector3Double location = new Vector3Double();
+		location.setX(150.0);  //TGT = 150   OBS = 75
+		location.setY(150.0);  //TGT = 150   OBS = 75
+		location.setZ(20.0); //TGT = 20    OBS = 50
+		TGTespdu.setEntityLocation(location);
+		int timestamp = disTime.getDisAbsoluteTimestamp();
+		TGTespdu.setTimestamp(timestamp);
+		sender.run(TGTespdu);  //sends inital here I am and who I am
+
+		//other player to look out for:
+		EntityID FDCEntityID = new EntityID();
+		FDCEntityID.setEntity(1);
+		FDCEntityID.setApplication(1);
+		FDCEntityID.setSite(1);
+
+		EntityID OBSEntityID = new EntityID();
+		OBSEntityID.setEntity(2);
+		OBSEntityID.setApplication(1);
+		OBSEntityID.setSite(1);
+
+		/*  BELOW IS THE RECIEVE CODE  //
+		//                             //
+		//                             //
+		 */                             //
+		PduFactory factory;
+		MulticastSocket socket = null;
+		InetAddress address = null;
+		DatagramPacket packet;
+		short currentPduType;  //will use the curentPduType as the check for sending other packets.
+
+		try {
+			// TODO: Change the line below to make sense for each class
+			System.out.println("Russian T72 out on the prowl...\n\n");
+			socket = new MulticastSocket(MULTICAST_PORT);
+			address = InetAddress.getByName(MULTICAST_GROUP);
+			socket.joinGroup(address);
+
+			factory = new PduFactory();
+
+			while (true) // Loop infinitely, receiving datagrams
+			{
+				byte buffer[] = new byte[1500]; // typical MTU size
+
+				packet = new DatagramPacket(buffer, buffer.length); // reset
+
+				socket.receive(packet);
+				//
+				//TODO: NEED IF STATEMENT IF THE SENDER IS THIS CLASS TO DELETE.
+				//
+
+				String marking2 = new String();
+				Pdu pdu = factory.createPdu(packet.getData());
+				currentPduType = pdu.getPduType();
+				if (currentPduType == 14) //stop/freeze PDU
+				{
+					System.out.println("recieved Stop/Freeze packet...");
+					return;
+				}
+//					pdu.setExerciseID((short)5);
+				if (pdu != null) {
+					if (sentBufferList.contains(pdu.getTimestamp())) {
+						pdu = null;
+					}
+					if (pdu != null) {
+
+						String currentPduTypeName = pdu.getClass().getName();
+						if (currentPduType == 1) {
+							EntityStatePdu pdu2 = (EntityStatePdu) pdu;
+							marking2 = pdu2.getMarking().getCharactersString();
+						}
+//Keep adding any if statements as needed for the class you are building. 
+						StringBuilder message = new StringBuilder();
+						message.append("received DIS PDU: ");
+						message.append("pduType ");
+						if (currentPduType < 10) {
+							message.append(" ");
+						}
+						message.append(currentPduType).append(" ").append(currentPduTypeName);
+						message.append(" ");
+						message.append(marking2);
+						System.out.println(message.toString());
+						//Reference for PDU Types: 
+						// http://faculty.nps.edu/brutzman/vrtp/mil/navy/nps/disEnumerations/JdbeHtmlFiles/pdu/8.htm 
+						//
+
+
+						if (currentPduType == 2) //FirePDU
+						{
+							DetonationPdu det = new DetonationPdu();
+							det.setExerciseID((short) 1);
+							det.setDetonationResult((short)1);
+							timestamp = disTime.getDisAbsoluteTimestamp();
+							det.setTimestamp(timestamp);
+							sender.run(det);
+						}
+
+					} else {
+						System.out.println("received packet but pdu is null and originated from Target. Still doing sketchy Russian things...");
+					}
+				}
+			}
+		} catch (IOException e) {
+			System.out.println("Problem with Target.PduReceiver, see exception trace:");
+			System.out.println(e);
+		} finally {
+			System.out.println("Target.PduReceiver complete. - T-72 DESTROYED!");
+		}
+
+	}
+
+}
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/LoeffelmanSeversonDISImageReceiver.java b/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/LoeffelmanSeversonDISImageReceiver.java
index 8f5f185deb..7e09d37176 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/LoeffelmanSeversonDISImageReceiver.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/LoeffelmanSeversonDISImageReceiver.java
@@ -33,12 +33,18 @@ import java.util.ArrayList;
  *
  * @author garrettloeffelman
  */
-public class LoeffelmanSeversonDISImageReceiver {
-
-   public static final int    MULTICAST_PORT  = 3000;
+public class LoeffelmanSeversonDISImageReceiver
+{
+    /** socket parameter of interest */
+    public static final int    MULTICAST_PORT  = 3000;
+    /** socket parameter of interest */
     public static final String MULTICAST_GROUP = "239.1.2.15";
-    public static final boolean USE_FAST_ESPDU = false;
+    static final boolean USE_FAST_ESPDU = false;
     
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String args[])
     {
         Image image = null;
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/LoeffelmanSeversonDISImageSender.java b/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/LoeffelmanSeversonDISImageSender.java
index 33b356220d..17d2d9bac2 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/LoeffelmanSeversonDISImageSender.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/LoeffelmanSeversonDISImageSender.java
@@ -247,6 +247,10 @@ public class LoeffelmanSeversonDISImageSender {
         }
     }
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String args[])
 	{
         if (args.length == 2) {
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/originals/LoeffelmanSeversonDISImageReceiver.java b/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/originals/LoeffelmanSeversonDISImageReceiver.java
index 7b3e3b48c3..e4caa15672 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/originals/LoeffelmanSeversonDISImageReceiver.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/originals/LoeffelmanSeversonDISImageReceiver.java
@@ -33,12 +33,19 @@ import java.util.ArrayList;
  *
  * @author garrettloeffelman
  */
-public class LoeffelmanSeversonDISImageReceiver {
-
-   public static final int    MULTICAST_PORT  = 3000;
+public class LoeffelmanSeversonDISImageReceiver
+{
+    /** socket parameter of interest */
+    public static final int    MULTICAST_PORT  = 3000;
+    /** socket parameter of interest */
     public static final String MULTICAST_GROUP = "239.1.2.15";
-    public static final boolean USE_FAST_ESPDU = false;
+    /** socket parameter of interest */
+    static final boolean USE_FAST_ESPDU = false;
     
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String args[])
     {
         Image image = null;
diff --git a/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/originals/LoeffelmanSeversonDISImageSender.java b/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/originals/LoeffelmanSeversonDISImageSender.java
index 8aa71f254d..854d0f3929 100644
--- a/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/originals/LoeffelmanSeversonDISImageSender.java
+++ b/assignments/src/MV3500Cohort2018JulySeptember/projects/LoeffelmanSeverson/originals/LoeffelmanSeversonDISImageSender.java
@@ -237,6 +237,10 @@ public class LoeffelmanSeversonDISImageSender {
         }
     }
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String args[])
 	{
         if (args.length == 2) {
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Boron/BoronClient.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Boron/BoronClient.java
index 996844672b..594c11da1e 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Boron/BoronClient.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Boron/BoronClient.java
@@ -14,6 +14,7 @@ import java.net.*;
 public class BoronClient {
 
     // IPv6 String constant for localhost address, similarly IPv4 127.0.0.1
+    /** socket parameter of interest */
     public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
 
     /**
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/SirTobiClient.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/SirTobiClient.java
index 89db3b497d..56a70712a2 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/SirTobiClient.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Brennenstuhl/SirTobiClient.java
@@ -16,6 +16,7 @@ import java.net.*;
 public class SirTobiClient {
 
     // IPv6 String constant for localhost address, similarly IPv4 127.0.0.1
+    /** socket parameter of interest */
     public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
 
     /**
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Fetterolf/FetterolfHomework2Client.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Fetterolf/FetterolfHomework2Client.java
index 8667124650..4740ba28a9 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Fetterolf/FetterolfHomework2Client.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Fetterolf/FetterolfHomework2Client.java
@@ -1,6 +1,5 @@
 package MV3500Cohort2019JulySeptember.homework2.Fetterolf;
 
-import MV3500Cohort2019JulySeptember.homework2.*;
 import java.io.*;
 import java.net.*;
 
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Fetterolf/FetterolfHomework2Server.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Fetterolf/FetterolfHomework2Server.java
index 68b6c9df0d..4380af80a4 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Fetterolf/FetterolfHomework2Server.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Fetterolf/FetterolfHomework2Server.java
@@ -1,6 +1,5 @@
 package MV3500Cohort2019JulySeptember.homework2.Fetterolf;
 
-import MV3500Cohort2019JulySeptember.homework2.*;
 import java.io.*;
 import java.net.*;
 import java.util.Scanner;
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Knobeloch/Knobeloch_TCPIP_Server.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Knobeloch/Knobeloch_TCPIP_Server.java
index ddb8936bfe..82ef93d010 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Knobeloch/Knobeloch_TCPIP_Server.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Knobeloch/Knobeloch_TCPIP_Server.java
@@ -24,6 +24,11 @@ import java.net.*;
  */
 public class Knobeloch_TCPIP_Server {
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels program
+     */
     public static void main(String[] args) throws InterruptedException {
         try {
             
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/McCann/McCannClient.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/McCann/McCannClient.java
index dad6563446..230387392f 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/McCann/McCannClient.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/McCann/McCannClient.java
@@ -1,79 +1,84 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-package MV3500Cohort2019JulySeptember.homework2.McCann;
-
-import MV3500Cohort2019JulySeptember.homework2.*;
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.net.Socket;
-import java.io.*;
-import java.net.*;
-import static javax.swing.Spring.constant;
-
-/**
- *
- * @author ljmm1
- */
-public class McCannClient {
-
-   // IPv6 String constant for localhost address, similarly IPv4 127.0.0.1
-    public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
-
-    public static void main(String[] args) {
-        
-        // Local vars/fields
-        Socket socket;
-        InputStream is;
-        InputStreamReader isr;
-        BufferedReader br;
-        String serverMessage;
-        
-        try {
-            while (true) {
-                
-
-                // We request an IP to connect to ("localhost") and
-                // port number at that IP (2317). This establishes
-                // a connection to that IP in the form of a Socket
-                // object; the server uses a ServerSocket to wait for
-                // connections.
-                socket = new Socket(LOCALHOST, 2317); // locohost?
-
-                // Now hook everything up (i.e. set up the streams), Java style:
-                is = socket.getInputStream();
-                isr = new InputStreamReader(is);
-                br = new BufferedReader(isr);
-
-                // Read a single line written by the server. We'd
-                // do things a bit differently if there were many lines to be read
-                // from the server instead of one only.
-                serverMessage = br.readLine();
-                System.out.println("==================================================");
-               // System.out.println("Now we're talking!");
-               
-                System.out.println(serverMessage);
-                System.out.println("My name is Sir Launcelot of Camelot");
-                System.out.println("What is your quest?");
-                // socket gets closed, either automatically/silently by this code (or possibly by the server)
-                
-            } // end while(true)
-        } catch (IOException e) {
-            System.err.println("Problem with TcpExample3ServerClient networking:"); // describe what is happening
-            System.err.println("Error: " + e);
-            
-            // Provide more helpful information to user if exception occurs due to running twice at one time
-            if (e instanceof java.net.BindException) {
-                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
-            }
-        } finally {
-        
-            // program exit: tell somebody about that
-            System.out.println("\nclient exit");
-        }
-    }
-}
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package MV3500Cohort2019JulySeptember.homework2.McCann;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.net.Socket;
+import java.io.*;
+import java.net.*;
+import static javax.swing.Spring.constant;
+
+/**
+ *
+ * @author ljmm1
+ */
+public class McCannClient
+{
+
+    /** socket parameter of interest */   // IPv6 String constant for localhost address, similarly IPv4 127.0.0.1
+    /** socket parameter of interest */
+    public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
+
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
+    public static void main(String[] args) {
+        
+        // Local vars/fields
+        Socket socket;
+        InputStream is;
+        InputStreamReader isr;
+        BufferedReader br;
+        String serverMessage;
+        
+        try {
+            while (true) {
+                
+
+                // We request an IP to connect to ("localhost") and
+                // port number at that IP (2317). This establishes
+                // a connection to that IP in the form of a Socket
+                // object; the server uses a ServerSocket to wait for
+                // connections.
+                socket = new Socket(LOCALHOST, 2317); // locohost?
+
+                // Now hook everything up (i.e. set up the streams), Java style:
+                is = socket.getInputStream();
+                isr = new InputStreamReader(is);
+                br = new BufferedReader(isr);
+
+                // Read a single line written by the server. We'd
+                // do things a bit differently if there were many lines to be read
+                // from the server instead of one only.
+                serverMessage = br.readLine();
+                System.out.println("==================================================");
+               // System.out.println("Now we're talking!");
+               
+                System.out.println(serverMessage);
+                System.out.println("My name is Sir Launcelot of Camelot");
+                System.out.println("What is your quest?");
+                // socket gets closed, either automatically/silently by this code (or possibly by the server)
+                
+            } // end while(true)
+        } catch (IOException e) {
+            System.err.println("Problem with TcpExample3ServerClient networking:"); // describe what is happening
+            System.err.println("Error: " + e);
+            
+            // Provide more helpful information to user if exception occurs due to running twice at one time
+            if (e instanceof java.net.BindException) {
+                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
+            }
+        } finally {
+        
+            // program exit: tell somebody about that
+            System.out.println("\nclient exit");
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/McCann/McCannServer.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/McCann/McCannServer.java
index 208095fa2e..401089d99c 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/McCann/McCannServer.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/McCann/McCannServer.java
@@ -1,83 +1,87 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-package MV3500Cohort2019JulySeptember.homework2.McCann;
-
-import MV3500Cohort2019JulySeptember.homework2.*;
-import java.io.*;
-import java.net.*;
-import java.util.Scanner;
-
-/**
- *
- * @author ljmm1
- */
-public class McCannServer {
-
- public static void main(String[] args) {
-        try {
-            
-            // ServerSocket waits for a connection from a client. 
-            // Notice that it is outside the loop; ServerSocket
-            // needs to be made only once.
-            System.out.println("McCannServer has started..."); // it helps debugging to put this on console first
-            //System.out.println("What is your name?");
-            ServerSocket serverSocket = new ServerSocket(2317);
-            OutputStream os;
-            PrintStream ps;
-            InetAddress localAddress, remoteAddress;
-            int localPort, remotePort;
-
-            // Server is up and waiting (i.e. "blocked" or paused)
-            // Loop, infinitely, waiting for client connections.
-            // Stop the program somewhere else.
-            while (true) { 
-                
-                // block until connected to a client
-                    try (Socket clientConnection = serverSocket.accept()) {
-                    
-                    // Now hook everything up (i.e. set up the streams), Java style:
-                    os = clientConnection.getOutputStream();
-                    ps = new PrintStream(os);
-                    Scanner keyboard = new Scanner(System.in);
-                    ps.println("What is your name?"); // this gets sent back to client!
-                    //tried to add an input but couldn't get it to work
-                    //String message = keyboard.nextLine();
-                   // ps.println(message);
-                    
-                    // Print some information locally about the Socket connection.
-                    // This includes the port and IP numbers on both sides (the socket pair).
-                    localAddress = clientConnection.getLocalAddress();
-                    remoteAddress = clientConnection.getInetAddress();
-                    localPort = clientConnection.getLocalPort();
-                    remotePort = clientConnection.getPort();
-                    
-                    // My socket pair connection looks like this, to localhost:
-                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54876 ))
-                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54881 ))
-                    
-                    // Why is the first IP/port the same, while the second set has different ports?
-                    System.out.println("TcpExample3Server socket pair: (( " + localAddress.toString() + ", " + localPort + " ), ( "
-                            + remoteAddress.toString() + ", " + remotePort + " ))");
-                    
-                    // Notice the use of flush() and try w/ resources. Without
-                    // the try w/ resources the Socket object may stay open for
-                    // a while after the client has stopped needing this
-                    // connection. try w/ resources explicitly ends the connection.
-                    ps.flush();
-                    // like it or not, you're outta here!
-                }
-            }
-        } catch (IOException e) {
-            System.err.println("Problem with TcpExample3Server networking: " + e);
-            
-            // Provide more helpful information to user if exception occurs due to running twice at one time
-            if (e instanceof java.net.BindException) {
-                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
-            }
-        }
-    }
-    
-}
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package MV3500Cohort2019JulySeptember.homework2.McCann;
+
+import java.io.*;
+import java.net.*;
+import java.util.Scanner;
+
+/**
+ *
+ * @author ljmm1
+ */
+public class McCannServer {
+
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
+    public static void main(String[] args)
+    {
+        try {
+            
+            // ServerSocket waits for a connection from a client. 
+            // Notice that it is outside the loop; ServerSocket
+            // needs to be made only once.
+            System.out.println("McCannServer has started..."); // it helps debugging to put this on console first
+            //System.out.println("What is your name?");
+            ServerSocket serverSocket = new ServerSocket(2317);
+            OutputStream os;
+            PrintStream ps;
+            InetAddress localAddress, remoteAddress;
+            int localPort, remotePort;
+
+            // Server is up and waiting (i.e. "blocked" or paused)
+            // Loop, infinitely, waiting for client connections.
+            // Stop the program somewhere else.
+            while (true) { 
+                
+                // block until connected to a client
+                    try (Socket clientConnection = serverSocket.accept()) {
+                    
+                    // Now hook everything up (i.e. set up the streams), Java style:
+                    os = clientConnection.getOutputStream();
+                    ps = new PrintStream(os);
+                    Scanner keyboard = new Scanner(System.in);
+                    ps.println("What is your name?"); // this gets sent back to client!
+                    //tried to add an input but couldn't get it to work
+                    //String message = keyboard.nextLine();
+                   // ps.println(message);
+                    
+                    // Print some information locally about the Socket connection.
+                    // This includes the port and IP numbers on both sides (the socket pair).
+                    localAddress = clientConnection.getLocalAddress();
+                    remoteAddress = clientConnection.getInetAddress();
+                    localPort = clientConnection.getLocalPort();
+                    remotePort = clientConnection.getPort();
+                    
+                    // My socket pair connection looks like this, to localhost:
+                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54876 ))
+                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54881 ))
+                    
+                    // Why is the first IP/port the same, while the second set has different ports?
+                    System.out.println("TcpExample3Server socket pair: (( " + localAddress.toString() + ", " + localPort + " ), ( "
+                            + remoteAddress.toString() + ", " + remotePort + " ))");
+                    
+                    // Notice the use of flush() and try w/ resources. Without
+                    // the try w/ resources the Socket object may stay open for
+                    // a while after the client has stopped needing this
+                    // connection. try w/ resources explicitly ends the connection.
+                    ps.flush();
+                    // like it or not, you're outta here!
+                }
+            }
+        } catch (IOException e) {
+            System.err.println("Problem with TcpExample3Server networking: " + e);
+            
+            // Provide more helpful information to user if exception occurs due to running twice at one time
+            if (e instanceof java.net.BindException) {
+                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
+            }
+        }
+    }
+    
+}
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Schutt/SchuttClient.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Schutt/SchuttClient.java
index 1e5ed3ef2c..be05e6258a 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Schutt/SchuttClient.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Schutt/SchuttClient.java
@@ -9,8 +9,12 @@ import java.net.*;
  *
  * @author Schutt
  */
-public class SchuttClient {
-
+public class SchuttClient
+{
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String[] args) {
         
         // Local vars/fields
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Schutt/SchuttServerDispatcher.java b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Schutt/SchuttServerDispatcher.java
index e23e63df7a..cd2ffce0fb 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework2/Schutt/SchuttServerDispatcher.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework2/Schutt/SchuttServerDispatcher.java
@@ -9,8 +9,13 @@ import java.net.*;
  *
  * @author Schutt
  */
-public class SchuttServerDispatcher {
+public class SchuttServerDispatcher
+{
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String[] args) // execution starts here
     {
         try{
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Boron/BoronPduReceiver.java b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Boron/BoronPduReceiver.java
index d0fb9650e9..62ad868fb8 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Boron/BoronPduReceiver.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Boron/BoronPduReceiver.java
@@ -18,9 +18,11 @@ import edu.nps.moves.dis7.utilities.*;
 
 public class BoronPduReceiver
 {
-  public static final int DEFAULT_MULTICAST_PORT = BoronPduSender.DEFAULT_MULTICAST_PORT;
-  public static final String DEFAULT_MULTICAST_ADDRESS = BoronPduSender.DEFAULT_MULTICAST_ADDRESS;
-  public static final boolean USE_FAST_ESPDU = false;
+    /** socket parameter of interest */
+    public static final int DEFAULT_MULTICAST_PORT = BoronPduSender.DEFAULT_MULTICAST_PORT;
+    /** socket parameter of interest */
+    public static final String DEFAULT_MULTICAST_ADDRESS = BoronPduSender.DEFAULT_MULTICAST_ADDRESS;
+    static final boolean USE_FAST_ESPDU = false;
 
     /**
      * Program invocation, execution starts here
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Boron/BoronPduSender.java b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Boron/BoronPduSender.java
index e716b530dc..2830627ffe 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Boron/BoronPduSender.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Boron/BoronPduSender.java
@@ -26,7 +26,8 @@ public class BoronPduSender
     private int port;
     InetAddress multicastAddress;
 
-    public BoronPduSender(int port, String multicast) {
+    public BoronPduSender(int port, String multicast)
+    {
         try
         {
             this.port = port;
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Brennenstuhl/BrennenstuhlEspduSender.java b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Brennenstuhl/BrennenstuhlEspduSender.java
index 3523e18982..231aa40177 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Brennenstuhl/BrennenstuhlEspduSender.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Brennenstuhl/BrennenstuhlEspduSender.java
@@ -19,7 +19,7 @@ import edu.nps.moves.dis7.enumerations.PlatformDomain;
  */
 public class BrennenstuhlEspduSender
 {
-	public static final int NUMBER_TO_SEND = 5; // 5000
+	static final int NUMBER_TO_SEND = 5; // 5000
         
 
 	/**
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Brennenstuhl/Version2/AllPduReceiver.java b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Brennenstuhl/Version2/AllPduReceiver.java
index ec33bba46c..96f1df7633 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Brennenstuhl/Version2/AllPduReceiver.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Brennenstuhl/Version2/AllPduReceiver.java
@@ -10,9 +10,11 @@ import java.util.ArrayList;
 
 public class AllPduReceiver
 {
-  public static final int DEFAULT_MULTICAST_PORT = AllPduSender.DEFAULT_MULTICAST_PORT;
-  public static final String DEFAULT_MULTICAST_ADDRESS = AllPduSender.DEFAULT_MULTICAST_ADDRESS;
-  public static final boolean USE_FAST_ESPDU = false;
+    /** socket parameter of interest */
+    public static final int DEFAULT_MULTICAST_PORT = AllPduSender.DEFAULT_MULTICAST_PORT;
+    /** socket parameter of interest */
+    public static final String DEFAULT_MULTICAST_ADDRESS = AllPduSender.DEFAULT_MULTICAST_ADDRESS;
+    static final boolean USE_FAST_ESPDU = false;
 
   public static void main(String args[])
   {
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Knobeloch/Knobeloch_PduReceiver.java b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Knobeloch/Knobeloch_PduReceiver.java
index 3de8c19b07..f5f2f7c5dc 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Knobeloch/Knobeloch_PduReceiver.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Knobeloch/Knobeloch_PduReceiver.java
@@ -11,8 +11,12 @@ public class Knobeloch_PduReceiver
 {
   public static final int DEFAULT_MULTICAST_PORT = Knobeloch_PduSender.DEFAULT_MULTICAST_PORT;
   public static final String DEFAULT_MULTICAST_ADDRESS = Knobeloch_PduSender.DEFAULT_MULTICAST_ADDRESS;
-  public static final boolean USE_FAST_ESPDU = false;
+  static final boolean USE_FAST_ESPDU = false;
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
   public static void main(String args[])
   {
     PduFactory factory;
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Knobeloch/Knobeloch_PduSender.java b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Knobeloch/Knobeloch_PduSender.java
index ca64e3c2c1..626a30555b 100755
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Knobeloch/Knobeloch_PduSender.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Knobeloch/Knobeloch_PduSender.java
@@ -91,6 +91,10 @@ public class Knobeloch_PduSender
         }
     }
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String args[])
     {
         if (args.length == 2)
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework4/McCann/McCannPduReceiver.java b/assignments/src/MV3500Cohort2019JulySeptember/homework4/McCann/McCannPduReceiver.java
index 2bf8e0c912..a64e729f78 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework4/McCann/McCannPduReceiver.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework4/McCann/McCannPduReceiver.java
@@ -10,10 +10,16 @@ import java.util.ArrayList;
 
 public class McCannPduReceiver
 {
-  public static final int DEFAULT_MULTICAST_PORT = McCannPduSender.DEFAULT_MULTICAST_PORT;
-  public static final String DEFAULT_MULTICAST_ADDRESS = McCannPduSender.DEFAULT_MULTICAST_ADDRESS;
-  public static final boolean USE_FAST_ESPDU = false;
+    /** socket parameter of interest */
+    public static final int DEFAULT_MULTICAST_PORT = McCannPduSender.DEFAULT_MULTICAST_PORT;
+    /** socket parameter of interest */
+    public static final String DEFAULT_MULTICAST_ADDRESS = McCannPduSender.DEFAULT_MULTICAST_ADDRESS;
+    static final boolean USE_FAST_ESPDU = false;
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
   public static void main(String args[])
   {
     PduFactory factory;
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework4/McCann/McCannPduSender.java b/assignments/src/MV3500Cohort2019JulySeptember/homework4/McCann/McCannPduSender.java
index f977877f85..3ad2da6423 100755
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework4/McCann/McCannPduSender.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework4/McCann/McCannPduSender.java
@@ -465,6 +465,10 @@ public class McCannPduSender
         }
     }
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String args[])
 	{
         if (args.length == 2)
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Schutt/SchuttESPDUSender.java b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Schutt/SchuttESPDUSender.java
index c84558a28f..c5eea7be57 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Schutt/SchuttESPDUSender.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Schutt/SchuttESPDUSender.java
@@ -26,7 +26,7 @@ import java.nio.ByteBuffer;
  */
 public class SchuttESPDUSender {
 
-    public static final int NUMBER_TO_SEND = 5; // 5000
+    static final int NUMBER_TO_SEND = 5; // 5000
 
     /**
      * Default multicast group address we send on.
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Schutt/SchuttEspduReceiver.java b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Schutt/SchuttEspduReceiver.java
index ef2c11e4e8..c866a1fb5c 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Schutt/SchuttEspduReceiver.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Schutt/SchuttEspduReceiver.java
@@ -28,6 +28,10 @@ public class SchuttEspduReceiver
     /** Default multicast port used, matches Wireshark DIS capture default */
     public static final int    DEFAULT_MULTICAST_PORT    = SchuttESPDUSender.DEFAULT_MULTICAST_PORT;
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String args[])
 	{
 		System.out.println("DisExamplesOpenDis7.EspduReceiver started...");
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Schutt/SchuttPDUSaverListener.java b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Schutt/SchuttPDUSaverListener.java
index b4e9018c36..1260918c3c 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Schutt/SchuttPDUSaverListener.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Schutt/SchuttPDUSaverListener.java
@@ -27,6 +27,10 @@ public class SchuttPDUSaverListener
     PAUSED;
   }
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
   public static void main(String[] args)
   {
     String outDir = DEFAULT_OUTPUTDIR;
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Yurkovich/Yurk_EspduSender.java b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Yurkovich/Yurk_EspduSender.java
index 257f567ba5..68597af2f7 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/homework4/Yurkovich/Yurk_EspduSender.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/homework4/Yurkovich/Yurk_EspduSender.java
@@ -16,7 +16,7 @@ import edu.nps.moves.dis7.utilities.*;
  */
 public class Yurk_EspduSender
 {
-	public static final int NUMBER_TO_SEND = 5; // 5000
+	static final int NUMBER_TO_SEND = 5; // 5000
 
 	/**
 	 * Default multicast group address we send on.
diff --git a/assignments/src/MV3500Cohort2019JulySeptember/projects/BrennenstuhlKnobelochMcCann/BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver.java b/assignments/src/MV3500Cohort2019JulySeptember/projects/BrennenstuhlKnobelochMcCann/BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver.java
index d9a767d946..04f00cadb5 100644
--- a/assignments/src/MV3500Cohort2019JulySeptember/projects/BrennenstuhlKnobelochMcCann/BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver.java
+++ b/assignments/src/MV3500Cohort2019JulySeptember/projects/BrennenstuhlKnobelochMcCann/BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver.java
@@ -17,7 +17,7 @@ import java.util.logging.Logger;
 public class BRE_KNO_MCC_PC2_PC1_MCAST_PduReceiver extends Thread
 {
 
-    public static final boolean USE_FAST_ESPDU = false;
+    static final boolean USE_FAST_ESPDU = false;
     static List<Integer> savedMCASTMessages = new ArrayList();
     static List<Pdu> mcastMessagesToSend = new ArrayList();
     static Mutex mutex = new Mutex();
diff --git a/assignments/src/MV3500Cohort2020JulySeptember/homework2/Cannon/CannonClient.java b/assignments/src/MV3500Cohort2020JulySeptember/homework2/Cannon/CannonClient.java
index af3cddb99a..6885993f37 100644
--- a/assignments/src/MV3500Cohort2020JulySeptember/homework2/Cannon/CannonClient.java
+++ b/assignments/src/MV3500Cohort2020JulySeptember/homework2/Cannon/CannonClient.java
@@ -23,6 +23,7 @@ import java.net.Socket;
 public class CannonClient {
 
     // IPv6 String constant for localhost address, similarly IPv4 127.0.0.1
+    /** socket parameter of interest */
     public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
 
     /**
diff --git a/assignments/src/MV3500Cohort2020JulySeptember/homework2/Mahan/Mahan_Client.java b/assignments/src/MV3500Cohort2020JulySeptember/homework2/Mahan/Mahan_Client.java
index a3bc4bc626..429fc7b3fd 100644
--- a/assignments/src/MV3500Cohort2020JulySeptember/homework2/Mahan/Mahan_Client.java
+++ b/assignments/src/MV3500Cohort2020JulySeptember/homework2/Mahan/Mahan_Client.java
@@ -6,11 +6,16 @@ import java.net.*;
  *
  * @author Bill
  */
-public class Mahan_Client {
-
+public class Mahan_Client
+{
     // IPv6 String constant for localhost address, similarly IPv4 127.0.0.1
+    /** socket parameter of interest */
     public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
 
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String[] args) {
         
         // Local vars/fields
diff --git a/assignments/src/MV3500Cohort2020JulySeptember/homework2/Mahan/Mahan_Server.java b/assignments/src/MV3500Cohort2020JulySeptember/homework2/Mahan/Mahan_Server.java
index 7e8ef6460b..dcc26646da 100644
--- a/assignments/src/MV3500Cohort2020JulySeptember/homework2/Mahan/Mahan_Server.java
+++ b/assignments/src/MV3500Cohort2020JulySeptember/homework2/Mahan/Mahan_Server.java
@@ -7,8 +7,12 @@ import java.net.*;
  *
  * @author Bill
  */
-public class Mahan_Server {
-
+public class Mahan_Server
+{
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     public static void main(String[] args) {
         try {
             
diff --git a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Britt/UdpReceiver.java b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Britt/UdpReceiver.java
index 869bc444d1..e87809cd11 100644
--- a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Britt/UdpReceiver.java
+++ b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Britt/UdpReceiver.java
@@ -18,7 +18,9 @@ import java.net.*;
 public class UdpReceiver 
 {
 //  public static final int       SENDING_PORT = 1414; // port used by UdpSender, unneeded here
+    /** socket parameter of interest */
     public static final int     RECEIVING_PORT = 1415;
+    /** socket parameter of interest */
     public static final String DESINATION_HOST = "localhost";
 
     /**
diff --git a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Britt/UdpSender.java b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Britt/UdpSender.java
index 63480cde71..a98f5e4ca4 100644
--- a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Britt/UdpSender.java
+++ b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Britt/UdpSender.java
@@ -19,12 +19,15 @@ import java.net.*;
  */
 public class UdpSender 
 {
-    public static final String            MY_NAME = System.getProperty("user.name"); // guru incantation   8)
+    static final String            MY_NAME = System.getProperty("user.name"); // guru incantation   8)
 //  public static final int          SENDING_PORT = 1414; // not needed, can let system choose an open local port
+    /** socket parameter of interest */
     public static final int        RECEIVING_PORT = 1415;
+    /** socket parameter of interest */
     public static final int TOTAL_PACKETS_TO_SEND = 100;
     
     // here is what we need for lab comms
+    /** socket parameter of interest */
     public static final String   DESTINATION_HOST = "10.1.105.16"; // localhost 127.0.0.1 or argon 10.1.105.1 or 10.1.105.1 or whatever
     
     @SuppressWarnings("SleepWhileInLoop")
diff --git a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Cannon/CannonUdpSender.java b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Cannon/CannonUdpSender.java
index d43debea15..201edd7488 100644
--- a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Cannon/CannonUdpSender.java
+++ b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Cannon/CannonUdpSender.java
@@ -26,6 +26,7 @@ public class CannonUdpSender
     private static final int TOTAL_PACKETS_TO_SEND = 100;
     
     // here is what we need for lab comms
+    /** socket parameter of interest */
     public static final String   DESTINATION_HOST = "10.1.105.7"; // localhost 127.0.0.1 or argon 10.1.105.1 or 10.1.105.1 or whatever
     
     /**
diff --git a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Mahan/MahanUdpReceiver.java b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Mahan/MahanUdpReceiver.java
index af090a23bd..39f689c8d2 100644
--- a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Mahan/MahanUdpReceiver.java
+++ b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Mahan/MahanUdpReceiver.java
@@ -10,7 +10,9 @@ import java.net.*;
 public class MahanUdpReceiver 
 {
 //  public static final int       SENDING_PORT = 1414; // port used by UdpSender, unneeded here
+    /** socket parameter of interest */
     public static final int     RECEIVING_PORT = 1415;
+    /** socket parameter of interest */
     public static final String DESINATION_HOST = "10.1.105.12";
 
     /**
diff --git a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Mahan/MahanUdpSender.java b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Mahan/MahanUdpSender.java
index 199cbd5217..633ac03b69 100644
--- a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Mahan/MahanUdpSender.java
+++ b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Mahan/MahanUdpSender.java
@@ -10,14 +10,21 @@ import java.net.*;
 public class MahanUdpSender
 {
     // System properties: https://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html
-    public static final String            MY_NAME = System.getProperty("user.name"); // guru incantation   8)
+    private static final String            MY_NAME = System.getProperty("user.name"); // guru incantation   8)
 //  public static final int          SENDING_PORT = 1414; // not needed, can let system choose an open local port
+    /** socket parameter of interest */
     public static final int        RECEIVING_PORT = 1415;
+    /** socket parameter of interest */
     public static final int TOTAL_PACKETS_TO_SEND = 100;
     
     // here is what we need for lab comms
+    /** socket parameter of interest */
     public static final String   DESTINATION_HOST = "10.1.105.12"; // localhost 127.0.0.1 or argon 10.1.105.1 or 10.1.105.1 or whatever
     
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
     @SuppressWarnings("SleepWhileInLoop")
     public static void main(String[] args) throws IOException 
     {
diff --git a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Weissenberger/TCPNumberSender.java b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Weissenberger/TCPNumberSender.java
index 5f00e22ff8..0301696245 100644
--- a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Weissenberger/TCPNumberSender.java
+++ b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Weissenberger/TCPNumberSender.java
@@ -17,18 +17,21 @@ import java.net.Socket;
 public class TCPNumberSender {
     
     // Change this to the IP address of the TCP server 10.1.105.9 (127.0.0.1 just for testing)
+    /** socket parameter of interest */
     public static final String TCP_ARGON_SERVER_IP = "127.0.0.1";
     // Change this to the port where the TCP server is listening
+    /** socket parameter of interest */
     public static final int TCP_ARGON_SERVER_PORT = 2317;
     // Where the result should be posted (port)
+    /** socket parameter of interest */
     public static final int UDP_ARGON_RECEIVING_PORT = 1415;
     
-    public static final int NUMBER1 = 16;
-    public static final int NUMBER2 = 2;
-    public static final String CALCULATION_METHOD = "-";
+    static final int NUMBER1 = 16;
+    static final int NUMBER2 = 2;
+    static final String CALCULATION_METHOD = "-";
     
     // how many times should the number being sent
-    public static final int REPETITION = 1;
+    private static final int REPETITION = 1;
     private static int counter = 0;
     
     public static void main(String[] args) throws InterruptedException {
diff --git a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Weissenberger/UDPResultReceiver.java b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Weissenberger/UDPResultReceiver.java
index 8dc85b0427..939f63f4ef 100644
--- a/assignments/src/MV3500Cohort2020JulySeptember/homework3/Weissenberger/UDPResultReceiver.java
+++ b/assignments/src/MV3500Cohort2020JulySeptember/homework3/Weissenberger/UDPResultReceiver.java
@@ -16,6 +16,7 @@ import java.net.DatagramSocket;
  */
 public class UDPResultReceiver {
 
+    /** socket parameter of interest */
     public static final int    RECEIVING_PORT = 1415;
 
     /**
diff --git a/assignments/src/MV3500Cohort2020JulySeptember/homework3/WeissenbergerGoericke/TCPNumberReceiverUDPResultSender.java b/assignments/src/MV3500Cohort2020JulySeptember/homework3/WeissenbergerGoericke/TCPNumberReceiverUDPResultSender.java
index 30eeb323c6..016bd924e2 100644
--- a/assignments/src/MV3500Cohort2020JulySeptember/homework3/WeissenbergerGoericke/TCPNumberReceiverUDPResultSender.java
+++ b/assignments/src/MV3500Cohort2020JulySeptember/homework3/WeissenbergerGoericke/TCPNumberReceiverUDPResultSender.java
@@ -22,6 +22,7 @@ import java.net.Socket;
 public class TCPNumberReceiverUDPResultSender {
 
     // Change this to the port where the TCP server is listening
+    /** socket parameter of interest */
     public static final int TCP_ARGON_SERVER_PORT = 2317;
 
     /**
diff --git a/assignments/src/MV3500Cohort2020JulySeptember/homework4/White/test/PDUReciever.java b/assignments/src/MV3500Cohort2020JulySeptember/homework4/White/test/PDUReceiver.java
similarity index 97%
rename from assignments/src/MV3500Cohort2020JulySeptember/homework4/White/test/PDUReciever.java
rename to assignments/src/MV3500Cohort2020JulySeptember/homework4/White/test/PDUReceiver.java
index cb0b4929c4..c029215bc3 100755
--- a/assignments/src/MV3500Cohort2020JulySeptember/homework4/White/test/PDUReciever.java
+++ b/assignments/src/MV3500Cohort2020JulySeptember/homework4/White/test/PDUReceiver.java
@@ -1,144 +1,146 @@
-package MV3500Cohort2020JulySeptember.homework4.White.test;
-
-import MV3500Cohort2020JulySeptember.homework4.White.working.*;
-import java.io.*;
-import java.net.*;
-import java.util.*;
-
-import edu.nps.moves.dis7.pdus.*;
-import edu.nps.moves.dis7.utilities.*;
-
-/**
- * Receives PDUs from GermanyEspduReceiverEspduVPNSender in IEEE DIS format.
- *
- * @version 09/05/2020
- * @author Bernd/Stefan
- * @version 0.1
- */
-public class PDUReciever {
-
-    /**
-     * Max size of a PDU in binary format that we can receive. This is actually
-     * somewhat outdated--PDUs can be larger--but this is a reasonable starting
-     * point.
-     */
-    public static final int MAX_PDU_SIZE = 8192;
-
-    /**
-     * Default port used, matches Wireshark DIS capture default
-     */
-    public static final int DEFAULT_PORT = 2317;
-    public static final int SECOND_PORT = 3000;
-    public static final int THIRD_PORT = 2318;
-    
-    
-    /**
-     * Output prefix to identify this class
-     */
-    private final static String TRACE_PREFIX = "[" + PDUReciever.class.getName() + "] ";
-
-    public static void main(String args[]) {
-        System.out.println(TRACE_PREFIX + "started...");
-
-        MulticastSocket socket1;
-        MulticastSocket socket2;
-        MulticastSocket socket3;
-        DatagramPacket packet;
-        DatagramPacket packet2;
-        DatagramPacket packet3;
-        PduFactory pduFactory = new PduFactory();
-        ArrayList<EntityID> knownEntities = new ArrayList<EntityID>();
-        int pduCount = 0;
-
-        try {
-            // Specify the socket to receive data
-            socket1 = new MulticastSocket(DEFAULT_PORT);
-            socket2 = new MulticastSocket(SECOND_PORT);
-            socket3 = new MulticastSocket(THIRD_PORT);
-            
-            System.out.println(TRACE_PREFIX + "listening for PDU packets on port " + DEFAULT_PORT );//+ " " + SECOND_PORT + " " + THIRD_PORT);
-            System.out.println("====================================================");
-
-            while (true) // Loop infinitely, receiving datagrams
-            {
-                byte buffer[] = new byte[MAX_PDU_SIZE];
-                packet = new DatagramPacket(buffer, buffer.length);
-
-                socket1.receive(packet);
-                
-                
-                
-                List<Pdu> pduBundle = pduFactory.getPdusFromBundle(packet.getData(), packet.getLength());
-                if (pduBundle.size() > 1) { // should be 1 for this project
-                    System.out.println("Bundle size is " + pduBundle.size());
-                }
-
-                // end iterator loop through PDU bundle
-                for (Pdu aPdu : pduBundle) {
-                    pduCount++;
-                    String receiptMessage = String.format("%3s", pduCount) // right justify, 3 characters
-                            + ". received PDU type " + aPdu.getPduType().getValue() + "=" + aPdu.getPduType().name() + " " + aPdu.getClass().getName() + "  from " + packet.getAddress();
-                    if (aPdu instanceof EntityStatePdu) {
-                        System.out.println(receiptMessage);
-                        EntityID entityID = ((EntityStatePdu) aPdu).getEntityID();
-                        Vector3Double position = ((EntityStatePdu) aPdu).getEntityLocation();
-                        System.out.println("     entityID triplet: [" + entityID.getSiteID() + ", " + entityID.getApplicationID() + ", " + entityID.getEntityID() + "] ");
-                        if (!knownEntities.contains(entityID)){
-                            knownEntities.add(entityID);
-                            EntityType entityType = ((EntityStatePdu) aPdu).getEntityType();
-                            System.out.println("     New Entity: " +entityType.getEntityKind() + " "+ entityType.getDomain() + " "+ entityType.getCountry() + " "+  entityType.getCategory() + " "+ entityType.getSubCategory() + " "+  entityType.getSpecific() );
-                        }
-                        System.out.println("     Location in DIS coordinates:        [" + position.getX() + ", " + position.getY() + ", " + position.getZ() + "]");
-
-                    }
-                    else if (aPdu instanceof FirePdu){
-                        System.out.println(receiptMessage);
-                        EntityID firingEntityID = ((FirePdu) aPdu).getFiringEntityID();
-                        EntityID targetEntityID = ((FirePdu) aPdu).getTargetEntityID();
-                        MunitionDescriptor munitionDescriptor = ((FirePdu) aPdu).getDescriptor();
-                        System.out.println("     firingEntityID triplet: [" + firingEntityID.getSiteID() + ", " + firingEntityID.getApplicationID() + ", " + firingEntityID.getEntityID() + "] ");
-                        System.out.println("     targetEntityID triplet: [" + targetEntityID.getSiteID() + ", " + targetEntityID.getApplicationID() + ", " + targetEntityID.getEntityID() + "] ");
-                        System.out.println("     Munition Information:   [" + munitionDescriptor.getMunitionType().getDomain() + "."+munitionDescriptor.getMunitionType().getCountry()   + "." + munitionDescriptor.getMunitionType().getCategory() + "."+ munitionDescriptor.getMunitionType().getSubCategory() + "." + munitionDescriptor.getMunitionType().getSpecific() + "]");
-                    }
-                    else if (aPdu instanceof CommentReliablePdu){
-                        System.out.println(receiptMessage);
-                       ArrayList<VariableDatum> payloadList = (ArrayList)((CommentReliablePdu) aPdu).getVariableDatumRecords();
-                        if (!payloadList.isEmpty())
-                            System.out.print  ("     messages: ");
-                        for (VariableDatum variableDatum : payloadList)
-                        {
-                            String nextComment = new String(variableDatum.getVariableDatumValue()); // convert byte[] to String
-                            System.out.print  (" \"" + nextComment + "\"");
-                            System.out.println();
-                        }//
-                    }
-                    else if (aPdu instanceof ResupplyOfferPdu){
-                            System.out.println(receiptMessage);
-                            EntityID receiverID = ((ResupplyOfferPdu) aPdu).getReceivingEntityID();
-                            EntityID supplierID = ((ResupplyOfferPdu) aPdu).getSupplyingEntityID();
-                            List<SupplyQuantity> supplyList = ((ResupplyOfferPdu) aPdu).getSupplies();
-                            System.out.println("     Resupply Offer from Entity [" + supplierID.getSiteID() + ", "+ supplierID.getApplicationID() + ", " + supplierID.getEntityID() + "] to resupply Entity ["+ receiverID.getSiteID() + ", "+ receiverID.getApplicationID() + ", " + receiverID.getEntityID() + "]" );
-                            for (int i = 0; i < supplyList.size(); i++){
-                            SupplyQuantity supplyQ = supplyList.get(i);
-                            EntityType entityType = supplyQ.getSupplyType();
-                            float supplyQuantity = supplyQ.getQuantity();
-                            System.out.println("     Supplies Offered:   [Quantity: " + supplyQuantity + ",   Type: " +entityType.getEntityKind() + " "+ entityType.getDomain() + " "+ entityType.getCountry() + " "+  entityType.getCategory() + " "+ entityType.getSubCategory() + " "+  entityType.getSpecific() + " ]");
-                            
-                            }
-                    }
-                    
-                     //OTHER PDU TYPES
-                    else {
-                        System.out.println(receiptMessage);
-                    }
-                } // end of bundle loop
-                
-            } // end of while loop
-        } // end try block // end try block // end try block // end try block
-        catch (IOException ioe) {
-            System.out.println(TRACE_PREFIX + "Problem with input/output, see exception trace:");
-            System.out.println(ioe);
-        }
-        System.out.println(TRACE_PREFIX + "complete.");
-    } // end main
-} // end class
+package MV3500Cohort2020JulySeptember.homework4.White.test;
+
+import MV3500Cohort2020JulySeptember.homework4.White.working.*;
+import java.io.*;
+import java.net.*;
+import java.util.*;
+
+import edu.nps.moves.dis7.pdus.*;
+import edu.nps.moves.dis7.utilities.*;
+
+/**
+ * Receives PDUs from GermanyEspduReceiverEspduVPNSender in IEEE DIS format.
+ *
+ * @version 09/05/2020
+ * @author Bernd/Stefan
+ * @version 0.1
+ */
+public class PDUReceiver {
+
+    /**
+     * Max size of a PDU in binary format that we can receive. This is actually
+     * somewhat outdated--PDUs can be larger--but this is a reasonable starting
+     * point.
+     */
+    public static final int MAX_PDU_SIZE = 8192;
+
+    /**
+     * Default port used, matches Wireshark DIS capture default
+     */
+    public static final int DEFAULT_PORT = 2317;
+    /** socket parameter of interest */
+    public static final int SECOND_PORT = 3000;
+    /** socket parameter of interest */
+    public static final int THIRD_PORT = 2318;
+    
+    
+    /**
+     * Output prefix to identify this class
+     */
+    private final static String TRACE_PREFIX = "[" + PDUReceiver.class.getName() + "] ";
+
+    public static void main(String args[]) {
+        System.out.println(TRACE_PREFIX + "started...");
+
+        MulticastSocket socket1;
+        MulticastSocket socket2;
+        MulticastSocket socket3;
+        DatagramPacket packet;
+        DatagramPacket packet2;
+        DatagramPacket packet3;
+        PduFactory pduFactory = new PduFactory();
+        ArrayList<EntityID> knownEntities = new ArrayList<EntityID>();
+        int pduCount = 0;
+
+        try {
+            // Specify the socket to receive data
+            socket1 = new MulticastSocket(DEFAULT_PORT);
+            socket2 = new MulticastSocket(SECOND_PORT);
+            socket3 = new MulticastSocket(THIRD_PORT);
+            
+            System.out.println(TRACE_PREFIX + "listening for PDU packets on port " + DEFAULT_PORT );//+ " " + SECOND_PORT + " " + THIRD_PORT);
+            System.out.println("====================================================");
+
+            while (true) // Loop infinitely, receiving datagrams
+            {
+                byte buffer[] = new byte[MAX_PDU_SIZE];
+                packet = new DatagramPacket(buffer, buffer.length);
+
+                socket1.receive(packet);
+                
+                
+                
+                List<Pdu> pduBundle = pduFactory.getPdusFromBundle(packet.getData(), packet.getLength());
+                if (pduBundle.size() > 1) { // should be 1 for this project
+                    System.out.println("Bundle size is " + pduBundle.size());
+                }
+
+                // end iterator loop through PDU bundle
+                for (Pdu aPdu : pduBundle) {
+                    pduCount++;
+                    String receiptMessage = String.format("%3s", pduCount) // right justify, 3 characters
+                            + ". received PDU type " + aPdu.getPduType().getValue() + "=" + aPdu.getPduType().name() + " " + aPdu.getClass().getName() + "  from " + packet.getAddress();
+                    if (aPdu instanceof EntityStatePdu) {
+                        System.out.println(receiptMessage);
+                        EntityID entityID = ((EntityStatePdu) aPdu).getEntityID();
+                        Vector3Double position = ((EntityStatePdu) aPdu).getEntityLocation();
+                        System.out.println("     entityID triplet: [" + entityID.getSiteID() + ", " + entityID.getApplicationID() + ", " + entityID.getEntityID() + "] ");
+                        if (!knownEntities.contains(entityID)){
+                            knownEntities.add(entityID);
+                            EntityType entityType = ((EntityStatePdu) aPdu).getEntityType();
+                            System.out.println("     New Entity: " +entityType.getEntityKind() + " "+ entityType.getDomain() + " "+ entityType.getCountry() + " "+  entityType.getCategory() + " "+ entityType.getSubCategory() + " "+  entityType.getSpecific() );
+                        }
+                        System.out.println("     Location in DIS coordinates:        [" + position.getX() + ", " + position.getY() + ", " + position.getZ() + "]");
+
+                    }
+                    else if (aPdu instanceof FirePdu){
+                        System.out.println(receiptMessage);
+                        EntityID firingEntityID = ((FirePdu) aPdu).getFiringEntityID();
+                        EntityID targetEntityID = ((FirePdu) aPdu).getTargetEntityID();
+                        MunitionDescriptor munitionDescriptor = ((FirePdu) aPdu).getDescriptor();
+                        System.out.println("     firingEntityID triplet: [" + firingEntityID.getSiteID() + ", " + firingEntityID.getApplicationID() + ", " + firingEntityID.getEntityID() + "] ");
+                        System.out.println("     targetEntityID triplet: [" + targetEntityID.getSiteID() + ", " + targetEntityID.getApplicationID() + ", " + targetEntityID.getEntityID() + "] ");
+                        System.out.println("     Munition Information:   [" + munitionDescriptor.getMunitionType().getDomain() + "."+munitionDescriptor.getMunitionType().getCountry()   + "." + munitionDescriptor.getMunitionType().getCategory() + "."+ munitionDescriptor.getMunitionType().getSubCategory() + "." + munitionDescriptor.getMunitionType().getSpecific() + "]");
+                    }
+                    else if (aPdu instanceof CommentReliablePdu){
+                        System.out.println(receiptMessage);
+                       ArrayList<VariableDatum> payloadList = (ArrayList)((CommentReliablePdu) aPdu).getVariableDatumRecords();
+                        if (!payloadList.isEmpty())
+                            System.out.print  ("     messages: ");
+                        for (VariableDatum variableDatum : payloadList)
+                        {
+                            String nextComment = new String(variableDatum.getVariableDatumValue()); // convert byte[] to String
+                            System.out.print  (" \"" + nextComment + "\"");
+                            System.out.println();
+                        }//
+                    }
+                    else if (aPdu instanceof ResupplyOfferPdu){
+                            System.out.println(receiptMessage);
+                            EntityID receiverID = ((ResupplyOfferPdu) aPdu).getReceivingEntityID();
+                            EntityID supplierID = ((ResupplyOfferPdu) aPdu).getSupplyingEntityID();
+                            List<SupplyQuantity> supplyList = ((ResupplyOfferPdu) aPdu).getSupplies();
+                            System.out.println("     Resupply Offer from Entity [" + supplierID.getSiteID() + ", "+ supplierID.getApplicationID() + ", " + supplierID.getEntityID() + "] to resupply Entity ["+ receiverID.getSiteID() + ", "+ receiverID.getApplicationID() + ", " + receiverID.getEntityID() + "]" );
+                            for (int i = 0; i < supplyList.size(); i++){
+                            SupplyQuantity supplyQ = supplyList.get(i);
+                            EntityType entityType = supplyQ.getSupplyType();
+                            float supplyQuantity = supplyQ.getQuantity();
+                            System.out.println("     Supplies Offered:   [Quantity: " + supplyQuantity + ",   Type: " +entityType.getEntityKind() + " "+ entityType.getDomain() + " "+ entityType.getCountry() + " "+  entityType.getCategory() + " "+ entityType.getSubCategory() + " "+  entityType.getSpecific() + " ]");
+                            
+                            }
+                    }
+                    
+                     //OTHER PDU TYPES
+                    else {
+                        System.out.println(receiptMessage);
+                    }
+                } // end of bundle loop
+                
+            } // end of while loop
+        } // end try block // end try block // end try block // end try block
+        catch (IOException ioe) {
+            System.out.println(TRACE_PREFIX + "Problem with input/output, see exception trace:");
+            System.out.println(ioe);
+        }
+        System.out.println(TRACE_PREFIX + "complete.");
+    } // end main
+} // end class
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework1/LeckieTcpExample2.java b/assignments/src/MV3500Cohort2021JulySeptember/homework1/LeckieTcpExample2.java
index 037e875c50..df128ef178 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework1/LeckieTcpExample2.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework1/LeckieTcpExample2.java
@@ -1,103 +1,107 @@
-package pkg3500.leckie;
-
-import java.io.IOException;
-import java.io.OutputStream;
-import java.io.PrintStream;
-import java.net.InetAddress;
-import java.net.ServerSocket;
-import java.net.Socket;
-
-/**
- * Very slightly more complex than example1. The only thing this does
- * differently is introduce a loop into the response, so you don't
- * have to restart the program after one response. Also, it prints
- * out the socket pair the server sees. Run the program via telnet
- * several times and compare the socket pairs.
- * 
- * <code>telnet localhost 2317</code>
- * 
- * If you're sophisticated you can contact the instructor's computer
- * while running this program.
- * 
- * <code>telnet ipOfServersLaptop 2317</code>
- * 
- * And have that machine display the socket pairs received.
- * @author mcgredo
- * @author brutzman
- * @author leckie
- */
-public class LeckieTcpExample2 
-{
- public static void main(String[] args)
-    {
-        try
-        {
-            System.out.println("TcpExample2ConnectionCounting has started and is waiting for a connection.");
-            System.out.println("  help: https://savage.nps.edu/Savage/developers.html#telnet");
-            System.out.println("  enter (nc localhost 2317) or (telnet localhost 2317)..." );
-			
-            // ServerSocket waits for a connection from a client. 
-            // Notice that it is outside the loop; ServerSocket needs to be made only once.
-			
-            int connectionCount = 0; // state variable
-            int totalEntrantCount = 31; // spoofed entrants
-            
-            ServerSocket serverSocket = new ServerSocket(2317); // server decides here what port to listen on.
-			// of interest: often client doesn't care what port it uses locally when connecting to that server port.
-
-            // Loop, infinitely, waiting for client connections.
-            // Stop the program somewhere else.
-            while(true)
-            {
-                // blocks! then proceeds once a connection is "accept"ed
-                try (Socket clientConnection = serverSocket.accept()) {
-                    connectionCount++; // got another one!
-                    
-                    OutputStream os = clientConnection.getOutputStream();
-                    PrintStream ps = new PrintStream(os);
-                    
-                    ps.println("This client response was written by server " + LeckieTcpExample2.class.getName()); // to remote client
-                    System.out.println("This server response was written by server " + LeckieTcpExample2.class.getName()); // to server console
-                    
-                            ps.println("This is your lottery attempt number #" + connectionCount + ", you are aplicant number " + totalEntrantCount + " to try and win. Keep trying!");
-                    
-                    totalEntrantCount = (totalEntrantCount + 79);
-                    // Print some information locally about the Socket connection.
-                    // This includes the port and IP numbers on both sides (the socket pair.)
-                    
-                    InetAddress  localAddress = clientConnection.getLocalAddress();
-                    InetAddress remoteAddress = clientConnection.getInetAddress();
-                    
-                    int  localPort = clientConnection.getLocalPort();
-                    int remotePort = clientConnection.getPort();       // remember the prior question, why are 2 ports different?
-                    
-                    // My socket pair connection looks like this, to localhost:
-                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54876 )) note IPv6
-                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54881 ))
-                    //
-                    // Why is first IP/port the same, while the second set has different ports?
-                    
-                    System.out.println("Socket pair: (( " + localAddress.toString() + ", " + localPort + " ), ( " +
-                            remoteAddress.toString() + ", " + remotePort + " ))");
-                    
-                    System.out.println("got another connection, #" + connectionCount); // report progress
-                    
-                    // Notice the use of flush() and close(). Without
-                    // the close() to Socket object may stay open for
-                    // a while after the client has stopped needing this
-                    // connection. Close() explicitly ends the connection.
-                    ps.flush();
-                }
-            }
-       }
-        catch(IOException e)
-        {
-            System.err.println("Problem with  " + LeckieTcpExample2.class.getName() + " networking:"); // describe what is happening
-            System.err.println("Error: " + e);
-            // Provide more helpful information to user if exception occurs due to running twice at one time
-            if (e instanceof java.net.BindException)
-                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
-        }
-    }
-    
-}
+package pkg3500.leckie;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.io.PrintStream;
+import java.net.InetAddress;
+import java.net.ServerSocket;
+import java.net.Socket;
+
+/**
+ * Very slightly more complex than example1. The only thing this does
+ * differently is introduce a loop into the response, so you don't
+ * have to restart the program after one response. Also, it prints
+ * out the socket pair the server sees. Run the program via telnet
+ * several times and compare the socket pairs.
+ * 
+ * <code>telnet localhost 2317</code>
+ * 
+ * If you're sophisticated you can contact the instructor's computer
+ * while running this program.
+ * 
+ * <code>telnet ipOfServersLaptop 2317</code>
+ * 
+ * And have that machine display the socket pairs received.
+ * @author mcgredo
+ * @author brutzman
+ * @author leckie
+ */
+public class LeckieTcpExample2 
+{
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
+ public static void main(String[] args)
+    {
+        try
+        {
+            System.out.println("TcpExample2ConnectionCounting has started and is waiting for a connection.");
+            System.out.println("  help: https://savage.nps.edu/Savage/developers.html#telnet");
+            System.out.println("  enter (nc localhost 2317) or (telnet localhost 2317)..." );
+			
+            // ServerSocket waits for a connection from a client. 
+            // Notice that it is outside the loop; ServerSocket needs to be made only once.
+			
+            int connectionCount = 0; // state variable
+            int totalEntrantCount = 31; // spoofed entrants
+            
+            ServerSocket serverSocket = new ServerSocket(2317); // server decides here what port to listen on.
+			// of interest: often client doesn't care what port it uses locally when connecting to that server port.
+
+            // Loop, infinitely, waiting for client connections.
+            // Stop the program somewhere else.
+            while(true)
+            {
+                // blocks! then proceeds once a connection is "accept"ed
+                try (Socket clientConnection = serverSocket.accept()) {
+                    connectionCount++; // got another one!
+                    
+                    OutputStream os = clientConnection.getOutputStream();
+                    PrintStream ps = new PrintStream(os);
+                    
+                    ps.println("This client response was written by server " + LeckieTcpExample2.class.getName()); // to remote client
+                    System.out.println("This server response was written by server " + LeckieTcpExample2.class.getName()); // to server console
+                    
+                            ps.println("This is your lottery attempt number #" + connectionCount + ", you are aplicant number " + totalEntrantCount + " to try and win. Keep trying!");
+                    
+                    totalEntrantCount = (totalEntrantCount + 79);
+                    // Print some information locally about the Socket connection.
+                    // This includes the port and IP numbers on both sides (the socket pair.)
+                    
+                    InetAddress  localAddress = clientConnection.getLocalAddress();
+                    InetAddress remoteAddress = clientConnection.getInetAddress();
+                    
+                    int  localPort = clientConnection.getLocalPort();
+                    int remotePort = clientConnection.getPort();       // remember the prior question, why are 2 ports different?
+                    
+                    // My socket pair connection looks like this, to localhost:
+                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54876 )) note IPv6
+                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54881 ))
+                    //
+                    // Why is first IP/port the same, while the second set has different ports?
+                    
+                    System.out.println("Socket pair: (( " + localAddress.toString() + ", " + localPort + " ), ( " +
+                            remoteAddress.toString() + ", " + remotePort + " ))");
+                    
+                    System.out.println("got another connection, #" + connectionCount); // report progress
+                    
+                    // Notice the use of flush() and close(). Without
+                    // the close() to Socket object may stay open for
+                    // a while after the client has stopped needing this
+                    // connection. Close() explicitly ends the connection.
+                    ps.flush();
+                }
+            }
+       }
+        catch(IOException e)
+        {
+            System.err.println("Problem with  " + LeckieTcpExample2.class.getName() + " networking:"); // describe what is happening
+            System.err.println("Error: " + e);
+            // Provide more helpful information to user if exception occurs due to running twice at one time
+            if (e instanceof java.net.BindException)
+                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
+        }
+    }
+    
+}
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework1/TcpExample2_Leckie_Mod_Hw1.java b/assignments/src/MV3500Cohort2021JulySeptember/homework1/TcpExample2_Leckie_Mod_Hw1.java
index 6fed11d3d7..12176c4920 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework1/TcpExample2_Leckie_Mod_Hw1.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework1/TcpExample2_Leckie_Mod_Hw1.java
@@ -1,103 +1,107 @@
-package pkg3500.leckie;
-
-import java.io.IOException;
-import java.io.OutputStream;
-import java.io.PrintStream;
-import java.net.InetAddress;
-import java.net.ServerSocket;
-import java.net.Socket;
-
-/**
- * Very slightly more complex than example1. The only thing this does
- * differently is introduce a loop into the response, so you don't
- * have to restart the program after one response. Also, it prints
- * out the socket pair the server sees. Run the program via telnet
- * several times and compare the socket pairs.
- * 
- * <code>telnet localhost 2317</code>
- * 
- * If you're sophisticated you can contact the instructor's computer
- * while running this program.
- * 
- * <code>telnet ipOfServersLaptop 2317</code>
- * 
- * And have that machine display the socket pairs received.
- * @author mcgredo
- * @author brutzman
- * @author leckie
- */
-public class TcpExample2_Leckie_Mod_Hw1 
-{
- public static void main(String[] args)
-    {
-        try
-        {
-            System.out.println("TcpExample2ConnectionCounting has started and is waiting for a connection.");
-            System.out.println("  help: https://savage.nps.edu/Savage/developers.html#telnet");
-            System.out.println("  enter (nc localhost 2317) or (telnet localhost 2317)..." );
-			
-            // ServerSocket waits for a connection from a client. 
-            // Notice that it is outside the loop; ServerSocket needs to be made only once.
-			
-            int connectionCount = 0; // state variable
-            int totalEntrantCount = 31; // spoofed entrants
-            
-            ServerSocket serverSocket = new ServerSocket(2317); // server decides here what port to listen on.
-			// of interest: often client doesn't care what port it uses locally when connecting to that server port.
-
-            // Loop, infinitely, waiting for client connections.
-            // Stop the program somewhere else.
-            while(true)
-            {
-                // blocks! then proceeds once a connection is "accept"ed
-                try (Socket clientConnection = serverSocket.accept()) {
-                    connectionCount++; // got another one!
-                    
-                    OutputStream os = clientConnection.getOutputStream();
-                    PrintStream ps = new PrintStream(os);
-                    
-                    ps.println("This client response was written by server " + TcpExample2_Leckie_Mod_Hw1.class.getName()); // to remote client
-                    System.out.println("This server response was written by server " + TcpExample2_Leckie_Mod_Hw1.class.getName()); // to server console
-                    
-                            ps.println("This is your lottery attempt number #" + connectionCount + ", you are aplicant number " + totalEntrantCount + " to try and win. Keep trying!");
-                    
-                    totalEntrantCount = (totalEntrantCount + 79);
-                    // Print some information locally about the Socket connection.
-                    // This includes the port and IP numbers on both sides (the socket pair.)
-                    
-                    InetAddress  localAddress = clientConnection.getLocalAddress();
-                    InetAddress remoteAddress = clientConnection.getInetAddress();
-                    
-                    int  localPort = clientConnection.getLocalPort();
-                    int remotePort = clientConnection.getPort();       // remember the prior question, why are 2 ports different?
-                    
-                    // My socket pair connection looks like this, to localhost:
-                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54876 )) note IPv6
-                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54881 ))
-                    //
-                    // Why is first IP/port the same, while the second set has different ports?
-                    
-                    System.out.println("Socket pair: (( " + localAddress.toString() + ", " + localPort + " ), ( " +
-                            remoteAddress.toString() + ", " + remotePort + " ))");
-                    
-                    System.out.println("got another connection, #" + connectionCount); // report progress
-                    
-                    // Notice the use of flush() and close(). Without
-                    // the close() to Socket object may stay open for
-                    // a while after the client has stopped needing this
-                    // connection. Close() explicitly ends the connection.
-                    ps.flush();
-                }
-            }
-       }
-        catch(IOException e)
-        {
-            System.err.println("Problem with  " + TcpExample2_Leckie_Mod_Hw1.class.getName() + " networking:"); // describe what is happening
-            System.err.println("Error: " + e);
-            // Provide more helpful information to user if exception occurs due to running twice at one time
-            if (e instanceof java.net.BindException)
-                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
-        }
-    }
-    
-}
+package pkg3500.leckie;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.io.PrintStream;
+import java.net.InetAddress;
+import java.net.ServerSocket;
+import java.net.Socket;
+
+/**
+ * Very slightly more complex than example1. The only thing this does
+ * differently is introduce a loop into the response, so you don't
+ * have to restart the program after one response. Also, it prints
+ * out the socket pair the server sees. Run the program via telnet
+ * several times and compare the socket pairs.
+ * 
+ * <code>telnet localhost 2317</code>
+ * 
+ * If you're sophisticated you can contact the instructor's computer
+ * while running this program.
+ * 
+ * <code>telnet ipOfServersLaptop 2317</code>
+ * 
+ * And have that machine display the socket pairs received.
+ * @author mcgredo
+ * @author brutzman
+ * @author leckie
+ */
+public class TcpExample2_Leckie_Mod_Hw1 
+{
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     */
+ public static void main(String[] args)
+    {
+        try
+        {
+            System.out.println("TcpExample2ConnectionCounting has started and is waiting for a connection.");
+            System.out.println("  help: https://savage.nps.edu/Savage/developers.html#telnet");
+            System.out.println("  enter (nc localhost 2317) or (telnet localhost 2317)..." );
+			
+            // ServerSocket waits for a connection from a client. 
+            // Notice that it is outside the loop; ServerSocket needs to be made only once.
+			
+            int connectionCount = 0; // state variable
+            int totalEntrantCount = 31; // spoofed entrants
+            
+            ServerSocket serverSocket = new ServerSocket(2317); // server decides here what port to listen on.
+			// of interest: often client doesn't care what port it uses locally when connecting to that server port.
+
+            // Loop, infinitely, waiting for client connections.
+            // Stop the program somewhere else.
+            while(true)
+            {
+                // blocks! then proceeds once a connection is "accept"ed
+                try (Socket clientConnection = serverSocket.accept()) {
+                    connectionCount++; // got another one!
+                    
+                    OutputStream os = clientConnection.getOutputStream();
+                    PrintStream ps = new PrintStream(os);
+                    
+                    ps.println("This client response was written by server " + TcpExample2_Leckie_Mod_Hw1.class.getName()); // to remote client
+                    System.out.println("This server response was written by server " + TcpExample2_Leckie_Mod_Hw1.class.getName()); // to server console
+                    
+                            ps.println("This is your lottery attempt number #" + connectionCount + ", you are aplicant number " + totalEntrantCount + " to try and win. Keep trying!");
+                    
+                    totalEntrantCount = (totalEntrantCount + 79);
+                    // Print some information locally about the Socket connection.
+                    // This includes the port and IP numbers on both sides (the socket pair.)
+                    
+                    InetAddress  localAddress = clientConnection.getLocalAddress();
+                    InetAddress remoteAddress = clientConnection.getInetAddress();
+                    
+                    int  localPort = clientConnection.getLocalPort();
+                    int remotePort = clientConnection.getPort();       // remember the prior question, why are 2 ports different?
+                    
+                    // My socket pair connection looks like this, to localhost:
+                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54876 )) note IPv6
+                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54881 ))
+                    //
+                    // Why is first IP/port the same, while the second set has different ports?
+                    
+                    System.out.println("Socket pair: (( " + localAddress.toString() + ", " + localPort + " ), ( " +
+                            remoteAddress.toString() + ", " + remotePort + " ))");
+                    
+                    System.out.println("got another connection, #" + connectionCount); // report progress
+                    
+                    // Notice the use of flush() and close(). Without
+                    // the close() to Socket object may stay open for
+                    // a while after the client has stopped needing this
+                    // connection. Close() explicitly ends the connection.
+                    ps.flush();
+                }
+            }
+       }
+        catch(IOException e)
+        {
+            System.err.println("Problem with  " + TcpExample2_Leckie_Mod_Hw1.class.getName() + " networking:"); // describe what is happening
+            System.err.println("Error: " + e);
+            // Provide more helpful information to user if exception occurs due to running twice at one time
+            if (e instanceof java.net.BindException)
+                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
+        }
+    }
+    
+}
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework2/AllenTcpExample3Client.java b/assignments/src/MV3500Cohort2021JulySeptember/homework2/AllenTcpExample3Client.java
index ef9b10791b..2184a1be39 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework2/AllenTcpExample3Client.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework2/AllenTcpExample3Client.java
@@ -24,6 +24,7 @@ public class AllenTcpExample3Client {
     /**
      * Program invocation, execution starts here
      * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels execution
      */
     public static void main(String[] args) throws InterruptedException {
         
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework2/Fisher/FisherClient.java b/assignments/src/MV3500Cohort2021JulySeptember/homework2/Fisher/FisherClient.java
index 00de0484e3..ea2fe6d1b8 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework2/Fisher/FisherClient.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework2/Fisher/FisherClient.java
@@ -19,9 +19,10 @@ import java.net.Socket;
  *
  * @author adfis
  */
-public class FisherClient {
-
+public class FisherClient
+{
     // IPv6 String constant for localhost address, similarly IPv4 127.0.0.1
+    /** socket parameter of interest */
     public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
                                             // Sub with someone's IP 
                                             // Got it to work with McNeely in class
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework2/Frank/FrankClient.java b/assignments/src/MV3500Cohort2021JulySeptember/homework2/Frank/FrankClient.java
index 843cb90791..1e8440366c 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework2/Frank/FrankClient.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework2/Frank/FrankClient.java
@@ -1,109 +1,109 @@
-package MV3500Cohort2021JulySeptember.homework2.Frank;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.OutputStream;
-import java.io.PrintStream;
-import java.io.Reader;
-import java.net.Socket;
-
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-/**
- *
- * @author justi
- */
-public class FrankClient {
-
-    /**
-     */
-    public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
-
-    /**
-     * Program invocation, execution starts here
-     *
-     * @param args command-line arguments
-     * @throws java.lang.InterruptedException
-     */
-    public static void main(String[] args) throws InterruptedException {
-
-        // Local variables/fields
-        Socket socket = null;
-        InputStream is;
-        Reader isr;
-        BufferedReader br;
-        String serverMessage;
-        int clientLoopCount = 0;
-        OutputStream os;
-        PrintStream ps;
-        
-
-        try {
-            while (true) {
-                clientLoopCount++; // increment at beginning of loop for reliability
-                System.out.println( "creating socket...");
-
-                // We request an IP to connect to ("localhost") and
-                // port number at that IP (2318). This establishes
-                // a connection to that IP in the form of a Socket
-                // object; the server uses a ServerSocket to wait for
-                // connections.
-                socket = new Socket(LOCALHOST, 2318); // locohost?
-
-                // Now hook everything up (i.e. set up the streams), Java style:
-                is = socket.getInputStream();
-                isr = new InputStreamReader(is);
-                br = new BufferedReader(isr);
-
-                // Read a single line written by the server. We'd
-                // do things a bit differently if there were many lines to be read
-                // from the server instead of one only.
-                serverMessage = br.readLine();
-                System.out.println("*********************************");
-
-                System.out.print( clientLoopCount + ": ");
-                System.out.println("Hola!");
-                System.out.println("The message the server sent was: '" + serverMessage + "'");
-                
-               
-               
-// socket gets closed, either automatically/silently by this code (or possibly by the server)
-                if (serverMessage.equals("this is good bye message from Franks server")) { //if client recieved termanation message stop client
-                    break;
-                }
-                os = socket.getOutputStream();
-                ps = new PrintStream(os);
-                ps.println("I'm doing well!"); // this gets sent back to server
-                ps.flush();
-                
-                Thread.sleep(1000); // turned it down to 1 second
-
-            } // end while(true) // infinite loops are dangerous, be sure to kill this process!
-        } catch (IOException e) {
-            System.err.println("Problem with " + FrankClient.class.getName() + " networking:"); // describe what is happening
-            System.err.println("Error: " + e);
-
-            // Provide more helpful information to user if exception occurs due to running twice at one time
-            if (e instanceof java.net.BindException) {
-                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
-            }
-        } finally // occurs after any other activity when shutting down
-        {
-            try {
-                if (socket != null) {
-                    socket.close();
-                }
-            } catch (IOException e) {
-            }
-
-            // program exit: tell somebody about that happening.  Likely cause: server drops connection.
-            System.out.println();
-            System.out.println("Good Bye!!!");
-        }
-    }
-}
+package MV3500Cohort2021JulySeptember.homework2.Frank;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.OutputStream;
+import java.io.PrintStream;
+import java.io.Reader;
+import java.net.Socket;
+
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+/**
+ *
+ * @author justi
+ */
+public class FrankClient {
+
+    /**
+     */
+    public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
+
+    /**
+     * Program invocation, execution starts here
+     *
+     * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels execution
+     */
+    public static void main(String[] args) throws InterruptedException {
+
+        // Local variables/fields
+        Socket socket = null;
+        InputStream is;
+        Reader isr;
+        BufferedReader br;
+        String serverMessage;
+        int clientLoopCount = 0;
+        OutputStream os;
+        PrintStream ps;
+        
+
+        try {
+            while (true) {
+                clientLoopCount++; // increment at beginning of loop for reliability
+                System.out.println( "creating socket...");
+
+                // We request an IP to connect to ("localhost") and
+                // port number at that IP (2318). This establishes
+                // a connection to that IP in the form of a Socket
+                // object; the server uses a ServerSocket to wait for
+                // connections.
+                socket = new Socket(LOCALHOST, 2318); // locohost?
+
+                // Now hook everything up (i.e. set up the streams), Java style:
+                is = socket.getInputStream();
+                isr = new InputStreamReader(is);
+                br = new BufferedReader(isr);
+
+                // Read a single line written by the server. We'd
+                // do things a bit differently if there were many lines to be read
+                // from the server instead of one only.
+                serverMessage = br.readLine();
+                System.out.println("*********************************");
+
+                System.out.print( clientLoopCount + ": ");
+                System.out.println("Hola!");
+                System.out.println("The message the server sent was: '" + serverMessage + "'");
+                
+               
+               
+// socket gets closed, either automatically/silently by this code (or possibly by the server)
+                if (serverMessage.equals("this is good bye message from Franks server")) { //if client recieved termanation message stop client
+                    break;
+                }
+                os = socket.getOutputStream();
+                ps = new PrintStream(os);
+                ps.println("I'm doing well!"); // this gets sent back to server
+                ps.flush();
+                
+                Thread.sleep(1000); // turned it down to 1 second
+
+            } // end while(true) // infinite loops are dangerous, be sure to kill this process!
+        } catch (IOException e) {
+            System.err.println("Problem with " + FrankClient.class.getName() + " networking:"); // describe what is happening
+            System.err.println("Error: " + e);
+
+            // Provide more helpful information to user if exception occurs due to running twice at one time
+            if (e instanceof java.net.BindException) {
+                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
+            }
+        } finally // occurs after any other activity when shutting down
+        {
+            try {
+                if (socket != null) {
+                    socket.close();
+                }
+            } catch (IOException e) {
+            }
+
+            // program exit: tell somebody about that happening.  Likely cause: server drops connection.
+            System.out.println();
+            System.out.println("Good Bye!!!");
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework2/Frank/FrankServer.java b/assignments/src/MV3500Cohort2021JulySeptember/homework2/Frank/FrankServer.java
index 601dee9877..864516dda7 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework2/Frank/FrankServer.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework2/Frank/FrankServer.java
@@ -1,98 +1,98 @@
-package MV3500Cohort2021JulySeptember.homework2.Frank;
-
-import java.io.*;
-import java.net.*;
-
-
-public class FrankServer {
-
-    /**
-     * Program invocation, execution starts here If already compiled, can run
-     * using console in directory ../../build/classes/ by invoking \ java
-     * -classpath .TcpExamples.TcpExample3Server
-     *
-     * @param args command-line arguments
-     * @throws java.lang.InterruptedException
-     */
-    public static void main(String[] args) throws InterruptedException {
-        try {
-
-            // ServerSocket waits for a connection from a client. 
-            // Notice that it is outside the loop; ServerSocket
-            // needs to be made only once.
-            System.out.println(FrankServer.class.getName() + " has started..."); // it helps debugging to put this on console first
-
-            ServerSocket serverSocket = new ServerSocket(2318); // changed from 2317 to 2318
-            OutputStream os;
-            PrintStream ps;
-            InetAddress localAddress, remoteAddress;
-            int localPort, remotePort;
-            int serverLoopCount = 0;
-            InputStream is;
-            InputStreamReader isr;
-            BufferedReader br;
-            String clientMessage;
-
-            // Server is up and waiting (i.e. "blocked" or paused)
-            // Loop, infinitely, waiting for client connections.
-            // Stop the program somewhere else.
-            while (true) {
-
-                // block until connected to a client
-                try ( Socket clientConnectionSocket = serverSocket.accept()) {
-                    serverLoopCount++; // increment at beginning of loop for reliability
-
-                    // Now hook everything up (i.e. set up the streams), Java style:
-                    os = clientConnectionSocket.getOutputStream();
-                    ps = new PrintStream(os);
-                    if (serverLoopCount <= 10) { // checking if the loop count <= 10
-                        ps.println("How are you doing?"); // this gets sent back to client!
-                    } else {
-                        ps.println("this is good bye message from Franks server"); // termination after 20 messages
-                        break; // Stop server
-                    }
-                    // Print some information locally about the Socket connection.
-                    // This includes the port and IP numbers on both sides (the socket pair).
-                    localAddress = clientConnectionSocket.getLocalAddress();
-                    remoteAddress = clientConnectionSocket.getInetAddress();
-                    localPort = clientConnectionSocket.getLocalPort();
-                    remotePort = clientConnectionSocket.getPort();
-
-                    System.out.print("Server loop " + serverLoopCount + ": ");
-
-                    // My socket pair connection looks like this, to localhost:
-                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54876 ))
-                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54881 ))
-                    // Why is the first IP/port the same, while the second set has different ports?
-                    System.out.println(FrankServer.class.getName() + " socket pair showing host name, address, port:");
-                    System.out.println("  (( "
-                            + localAddress.getHostName() + "=" + localAddress.getHostAddress() + ", " + localPort + " ), ( "
-                            + remoteAddress.getHostName() + "=" + remoteAddress.getHostAddress() + ", " + remotePort + " ))");
-
-                    if (localAddress.getHostName().equals(localAddress.getHostAddress())
-                            || remoteAddress.getHostName().equals(remoteAddress.getHostAddress())) {
-                        System.out.println("  note HostName matches address if host has no DNS name");
-                    }
-                is = clientConnectionSocket.getInputStream();
-                isr = new InputStreamReader(is);
-                br = new BufferedReader(isr);
-                clientMessage = br.readLine();
-                System.out.println("The message the client sent was: '" + clientMessage + "'");// Displaying the message the client sent
-                    // Not/*i*/ce the use of flush() and try w/ resources. Without
-                    // the try w/ resources the Socket object may stay open for
-                    // a while after the client has stopped needing this
-                    // connection. try w/ resources explicitly ends the connection.
-                    ps.flush();
-                    // like it or not, you're outta here!
-                }
-            }
-        } catch (IOException e) {
-            System.err.println("Problem with " + FrankServer.class.getName() + " networking: " + e);
-
-            // Provide more helpful information to user if exception occurs due to running twice at one time
-            if (e instanceof java.net.BindException) {
-                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
-            }
-        }
-    }
-}
+package MV3500Cohort2021JulySeptember.homework2.Frank;
+
+import java.io.*;
+import java.net.*;
+
+
+public class FrankServer {
+
+    /**
+     * Program invocation, execution starts here If already compiled, can run
+     * using console in directory ../../build/classes/ by invoking \ java
+     * -classpath .TcpExamples.TcpExample3Server
+     *
+     * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels execution
+     */
+    public static void main(String[] args) throws InterruptedException {
+        try {
+
+            // ServerSocket waits for a connection from a client. 
+            // Notice that it is outside the loop; ServerSocket
+            // needs to be made only once.
+            System.out.println(FrankServer.class.getName() + " has started..."); // it helps debugging to put this on console first
+
+            ServerSocket serverSocket = new ServerSocket(2318); // changed from 2317 to 2318
+            OutputStream os;
+            PrintStream ps;
+            InetAddress localAddress, remoteAddress;
+            int localPort, remotePort;
+            int serverLoopCount = 0;
+            InputStream is;
+            InputStreamReader isr;
+            BufferedReader br;
+            String clientMessage;
+
+            // Server is up and waiting (i.e. "blocked" or paused)
+            // Loop, infinitely, waiting for client connections.
+            // Stop the program somewhere else.
+            while (true) {
+
+                // block until connected to a client
+                try ( Socket clientConnectionSocket = serverSocket.accept()) {
+                    serverLoopCount++; // increment at beginning of loop for reliability
+
+                    // Now hook everything up (i.e. set up the streams), Java style:
+                    os = clientConnectionSocket.getOutputStream();
+                    ps = new PrintStream(os);
+                    if (serverLoopCount <= 10) { // checking if the loop count <= 10
+                        ps.println("How are you doing?"); // this gets sent back to client!
+                    } else {
+                        ps.println("this is good bye message from Franks server"); // termination after 20 messages
+                        break; // Stop server
+                    }
+                    // Print some information locally about the Socket connection.
+                    // This includes the port and IP numbers on both sides (the socket pair).
+                    localAddress = clientConnectionSocket.getLocalAddress();
+                    remoteAddress = clientConnectionSocket.getInetAddress();
+                    localPort = clientConnectionSocket.getLocalPort();
+                    remotePort = clientConnectionSocket.getPort();
+
+                    System.out.print("Server loop " + serverLoopCount + ": ");
+
+                    // My socket pair connection looks like this, to localhost:
+                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54876 ))
+                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54881 ))
+                    // Why is the first IP/port the same, while the second set has different ports?
+                    System.out.println(FrankServer.class.getName() + " socket pair showing host name, address, port:");
+                    System.out.println("  (( "
+                            + localAddress.getHostName() + "=" + localAddress.getHostAddress() + ", " + localPort + " ), ( "
+                            + remoteAddress.getHostName() + "=" + remoteAddress.getHostAddress() + ", " + remotePort + " ))");
+
+                    if (localAddress.getHostName().equals(localAddress.getHostAddress())
+                            || remoteAddress.getHostName().equals(remoteAddress.getHostAddress())) {
+                        System.out.println("  note HostName matches address if host has no DNS name");
+                    }
+                is = clientConnectionSocket.getInputStream();
+                isr = new InputStreamReader(is);
+                br = new BufferedReader(isr);
+                clientMessage = br.readLine();
+                System.out.println("The message the client sent was: '" + clientMessage + "'");// Displaying the message the client sent
+                    // Not/*i*/ce the use of flush() and try w/ resources. Without
+                    // the try w/ resources the Socket object may stay open for
+                    // a while after the client has stopped needing this
+                    // connection. try w/ resources explicitly ends the connection.
+                    ps.flush();
+                    // like it or not, you're outta here!
+                }
+            }
+        } catch (IOException e) {
+            System.err.println("Problem with " + FrankServer.class.getName() + " networking: " + e);
+
+            // Provide more helpful information to user if exception occurs due to running twice at one time
+            if (e instanceof java.net.BindException) {
+                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
+            }
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankClient.java b/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankClient.java
index 4f7c74c901..7a47fc9139 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankClient.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankClient.java
@@ -1,99 +1,99 @@
-package MV3500Cohort2021JulySeptember.homework2;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.net.Socket;
-
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-/**
- *
- * @author justi
- */
-public class FrankClient {
-
-    /**
-     */
-    public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
-
-    /**
-     * Program invocation, execution starts here
-     *
-     * @param args command-line arguments
-     * @throws java.lang.InterruptedException
-     */
-    public static void main(String[] args) throws InterruptedException {
-
-        // Local variables/fields
-        Socket socket = null;
-        InputStream is;
-        Reader isr;
-        BufferedReader br;
-        String serverMessage;
-        int clientLoopCount = 0;
-
-        try {
-            while (true) {
-                clientLoopCount++; // increment at beginning of loop for reliability
-                System.out.println( "creating socket...");
-
-                // We request an IP to connect to ("localhost") and
-                // port number at that IP (2317). This establishes
-                // a connection to that IP in the form of a Socket
-                // object; the server uses a ServerSocket to wait for
-                // connections.
-                socket = new Socket(LOCALHOST, 2318); // locohost?
-
-                // Now hook everything up (i.e. set up the streams), Java style:
-                is = socket.getInputStream();
-                isr = new InputStreamReader(is);
-                br = new BufferedReader(isr);
-
-                // Read a single line written by the server. We'd
-                // do things a bit differently if there were many lines to be read
-                // from the server instead of one only.
-                serverMessage = br.readLine();
-                System.out.println("*********************************");
-
-                System.out.print( clientLoopCount + ": ");
-                System.out.println("Hola!");
-                System.out.println("The message the server sent was: '" + serverMessage + "'");
-                int count = 0;
-                System.out.println("test");
-                count++;
-// socket gets closed, either automatically/silently by this code (or possibly by the server)
-                if (serverMessage.equals("this is good bye message from Franks server")) { //if client recieved termanation message stop client
-                    break;
-                }
-                Thread.sleep(1000); // turned it down to 1 second
-
-            } // end while(true) // infinite loops are dangerous, be sure to kill this process!
-        } catch (IOException e) {
-            System.err.println("Problem with " + FrankClient.class.getName() + " networking:"); // describe what is happening
-            System.err.println("Error: " + e);
-
-            // Provide more helpful information to user if exception occurs due to running twice at one time
-            if (e instanceof java.net.BindException) {
-                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
-            }
-        } finally // occurs after any other activity when shutting down
-        {
-            try {
-                if (socket != null) {
-                    socket.close();
-                }
-            } catch (IOException e) {
-            }
-
-            // program exit: tell somebody about that happening.  Likely cause: server drops connection.
-            System.out.println();
-            System.out.println("Good Bye!!!");
-        }
-    }
-}
+package MV3500Cohort2021JulySeptember.homework2;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.net.Socket;
+
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+/**
+ *
+ * @author justi
+ */
+public class FrankClient {
+
+    /**
+     */
+    public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
+
+    /**
+     * Program invocation, execution starts here
+     *
+     * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels execution
+     */
+    public static void main(String[] args) throws InterruptedException {
+
+        // Local variables/fields
+        Socket socket = null;
+        InputStream is;
+        Reader isr;
+        BufferedReader br;
+        String serverMessage;
+        int clientLoopCount = 0;
+
+        try {
+            while (true) {
+                clientLoopCount++; // increment at beginning of loop for reliability
+                System.out.println( "creating socket...");
+
+                // We request an IP to connect to ("localhost") and
+                // port number at that IP (2317). This establishes
+                // a connection to that IP in the form of a Socket
+                // object; the server uses a ServerSocket to wait for
+                // connections.
+                socket = new Socket(LOCALHOST, 2318); // locohost?
+
+                // Now hook everything up (i.e. set up the streams), Java style:
+                is = socket.getInputStream();
+                isr = new InputStreamReader(is);
+                br = new BufferedReader(isr);
+
+                // Read a single line written by the server. We'd
+                // do things a bit differently if there were many lines to be read
+                // from the server instead of one only.
+                serverMessage = br.readLine();
+                System.out.println("*********************************");
+
+                System.out.print( clientLoopCount + ": ");
+                System.out.println("Hola!");
+                System.out.println("The message the server sent was: '" + serverMessage + "'");
+                int count = 0;
+                System.out.println("test");
+                count++;
+// socket gets closed, either automatically/silently by this code (or possibly by the server)
+                if (serverMessage.equals("this is good bye message from Franks server")) { //if client recieved termanation message stop client
+                    break;
+                }
+                Thread.sleep(1000); // turned it down to 1 second
+
+            } // end while(true) // infinite loops are dangerous, be sure to kill this process!
+        } catch (IOException e) {
+            System.err.println("Problem with " + FrankClient.class.getName() + " networking:"); // describe what is happening
+            System.err.println("Error: " + e);
+
+            // Provide more helpful information to user if exception occurs due to running twice at one time
+            if (e instanceof java.net.BindException) {
+                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
+            }
+        } finally // occurs after any other activity when shutting down
+        {
+            try {
+                if (socket != null) {
+                    socket.close();
+                }
+            } catch (IOException e) {
+            }
+
+            // program exit: tell somebody about that happening.  Likely cause: server drops connection.
+            System.out.println();
+            System.out.println("Good Bye!!!");
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankServer.java b/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankServer.java
index 6d7fb253e3..aafe9a4a2e 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankServer.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankServer.java
@@ -1,89 +1,90 @@
-package MV3500Cohort2021JulySeptember.homework2;
-
-import java.io.*;
-import java.net.*;
-
-
-public class FrankServer {
-
-    /**
-     * Program invocation, execution starts here If already compiled, can run
-     * using console in directory ../../build/classes/ by invoking \ java
-     * -classpath . TcpExamples.TcpExample3Server
-     *
-     * @param args command-line arguments
-     */
-    public static void main(String[] args) throws InterruptedException {
-        try {
-
-            // ServerSocket waits for a connection from a client. 
-            // Notice that it is outside the loop; ServerSocket
-            // needs to be made only once.
-            System.out.println(FrankServer.class.getName() + " has started..."); // it helps debugging to put this on console first
-
-            ServerSocket serverSocket = new ServerSocket(2318); // changed from 2317 to 2318
-            OutputStream os;
-            PrintStream ps;
-            InetAddress localAddress, remoteAddress;
-            int localPort, remotePort;
-            int serverLoopCount = 0;
-
-            // Server is up and waiting (i.e. "blocked" or paused)
-            // Loop, infinitely, waiting for client connections.
-            // Stop the program somewhere else.
-            while (true) {
-
-                // block until connected to a client
-                try ( Socket clientConnectionSocket = serverSocket.accept()) {
-                    serverLoopCount++; // increment at beginning of loop for reliability
-
-                    // Now hook everything up (i.e. set up the streams), Java style:
-                    os = clientConnectionSocket.getOutputStream();
-                    ps = new PrintStream(os);
-                    if (serverLoopCount <= 10) { // checking if the loop count <= 10
-                        ps.println("How are you doing?"); // this gets sent back to client!
-                    } else {
-                        ps.println("this is good bye message from Franks server"); // termination after 20 messages
-                        break; // Stop server
-                    }
-                    // Print some information locally about the Socket connection.
-                    // This includes the port and IP numbers on both sides (the socket pair).
-                    localAddress = clientConnectionSocket.getLocalAddress();
-                    remoteAddress = clientConnectionSocket.getInetAddress();
-                    localPort = clientConnectionSocket.getLocalPort();
-                    remotePort = clientConnectionSocket.getPort();
-
-                    System.out.print("Server loop " + serverLoopCount + ": ");
-
-                    // My socket pair connection looks like this, to localhost:
-                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54876 ))
-                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54881 ))
-                    // Why is the first IP/port the same, while the second set has different ports?
-                    System.out.println(FrankServer.class.getName() + " socket pair showing host name, address, port:");
-                    System.out.println("  (( "
-                            + localAddress.getHostName() + "=" + localAddress.getHostAddress() + ", " + localPort + " ), ( "
-                            + remoteAddress.getHostName() + "=" + remoteAddress.getHostAddress() + ", " + remotePort + " ))");
-
-                    if (localAddress.getHostName().equals(localAddress.getHostAddress())
-                            || remoteAddress.getHostName().equals(remoteAddress.getHostAddress())) {
-                        System.out.println("  note HostName matches address if host has no DNS name");
-                    }
-
-                    // Not/*i*/ce the use of flush() and try w/ resources. Without
-                    // the try w/ resources the Socket object may stay open for
-                    // a while after the client has stopped needing this
-                    // connection. try w/ resources explicitly ends the connection.
-                    ps.flush();
-                    // like it or not, you're outta here!
-                }
-            }
-        } catch (IOException e) {
-            System.err.println("Problem with " + FrankServer.class.getName() + " networking: " + e);
-
-            // Provide more helpful information to user if exception occurs due to running twice at one time
-            if (e instanceof java.net.BindException) {
-                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
-            }
-        }
-    }
-}
+package MV3500Cohort2021JulySeptember.homework2;
+
+import java.io.*;
+import java.net.*;
+
+
+public class FrankServer {
+
+    /**
+     * Program invocation, execution starts here If already compiled, can run
+     * using console in directory ../../build/classes/ by invoking \ java
+     * -classpath . TcpExamples.TcpExample3Server
+     *
+     * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels execution
+     */
+    public static void main(String[] args) throws InterruptedException {
+        try {
+
+            // ServerSocket waits for a connection from a client. 
+            // Notice that it is outside the loop; ServerSocket
+            // needs to be made only once.
+            System.out.println(FrankServer.class.getName() + " has started..."); // it helps debugging to put this on console first
+
+            ServerSocket serverSocket = new ServerSocket(2318); // changed from 2317 to 2318
+            OutputStream os;
+            PrintStream ps;
+            InetAddress localAddress, remoteAddress;
+            int localPort, remotePort;
+            int serverLoopCount = 0;
+
+            // Server is up and waiting (i.e. "blocked" or paused)
+            // Loop, infinitely, waiting for client connections.
+            // Stop the program somewhere else.
+            while (true) {
+
+                // block until connected to a client
+                try ( Socket clientConnectionSocket = serverSocket.accept()) {
+                    serverLoopCount++; // increment at beginning of loop for reliability
+
+                    // Now hook everything up (i.e. set up the streams), Java style:
+                    os = clientConnectionSocket.getOutputStream();
+                    ps = new PrintStream(os);
+                    if (serverLoopCount <= 10) { // checking if the loop count <= 10
+                        ps.println("How are you doing?"); // this gets sent back to client!
+                    } else {
+                        ps.println("this is good bye message from Franks server"); // termination after 20 messages
+                        break; // Stop server
+                    }
+                    // Print some information locally about the Socket connection.
+                    // This includes the port and IP numbers on both sides (the socket pair).
+                    localAddress = clientConnectionSocket.getLocalAddress();
+                    remoteAddress = clientConnectionSocket.getInetAddress();
+                    localPort = clientConnectionSocket.getLocalPort();
+                    remotePort = clientConnectionSocket.getPort();
+
+                    System.out.print("Server loop " + serverLoopCount + ": ");
+
+                    // My socket pair connection looks like this, to localhost:
+                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54876 ))
+                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54881 ))
+                    // Why is the first IP/port the same, while the second set has different ports?
+                    System.out.println(FrankServer.class.getName() + " socket pair showing host name, address, port:");
+                    System.out.println("  (( "
+                            + localAddress.getHostName() + "=" + localAddress.getHostAddress() + ", " + localPort + " ), ( "
+                            + remoteAddress.getHostName() + "=" + remoteAddress.getHostAddress() + ", " + remotePort + " ))");
+
+                    if (localAddress.getHostName().equals(localAddress.getHostAddress())
+                            || remoteAddress.getHostName().equals(remoteAddress.getHostAddress())) {
+                        System.out.println("  note HostName matches address if host has no DNS name");
+                    }
+
+                    // Not/*i*/ce the use of flush() and try w/ resources. Without
+                    // the try w/ resources the Socket object may stay open for
+                    // a while after the client has stopped needing this
+                    // connection. try w/ resources explicitly ends the connection.
+                    ps.flush();
+                    // like it or not, you're outta here!
+                }
+            }
+        } catch (IOException e) {
+            System.err.println("Problem with " + FrankServer.class.getName() + " networking: " + e);
+
+            // Provide more helpful information to user if exception occurs due to running twice at one time
+            if (e instanceof java.net.BindException) {
+                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
+            }
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankTcpExample3Client.java b/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankTcpExample3Client.java
index 31884977d8..5984241543 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankTcpExample3Client.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankTcpExample3Client.java
@@ -1,96 +1,96 @@
-package MV3500Cohort2021JulySeptember.homework2;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.net.Socket;
-
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-/**
- *
- * @author justi
- */
-public class FrankTcpExample3Client {
-
-    /**
-     */
-    public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
-
-    /**
-     * Program invocation, execution starts here
-     *
-     * @param args command-line arguments
-     * @throws java.lang.InterruptedException
-     */
-    public static void main(String[] args) throws InterruptedException {
-
-        // Local variables/fields
-        Socket socket = null;
-        InputStream is;
-        Reader isr;
-        BufferedReader br;
-        String serverMessage;
-        int clientLoopCount = 0;
-
-        try {
-            while (true) {
-                clientLoopCount++; // increment at beginning of loop for reliability
-                System.out.println( "creating socket...");
-
-                // We request an IP to connect to ("localhost") and
-                // port number at that IP (2317). This establishes
-                // a connection to that IP in the form of a Socket
-                // object; the server uses a ServerSocket to wait for
-                // connections.
-                socket = new Socket(LOCALHOST, 2318); // locohost?
-
-                // Now hook everything up (i.e. set up the streams), Java style:
-                is = socket.getInputStream();
-                isr = new InputStreamReader(is);
-                br = new BufferedReader(isr);
-
-                // Read a single line written by the server. We'd
-                // do things a bit differently if there were many lines to be read
-                // from the server instead of one only.
-                serverMessage = br.readLine();
-                System.out.println("*********************************");
-
-                System.out.print( clientLoopCount + ": ");
-                System.out.println("Hola!");
-                System.out.println("The message the server sent was: '" + serverMessage + "'");
-                // socket gets closed, either automatically/silently by this code (or possibly by the server)
-                if (serverMessage.equals("this is good bye message from Franks server")) { //if client recieved termanation message stop client
-                    break;
-                }
-                Thread.sleep(1000); // turned it down to 1 second
-
-            } // end while(true) // infinite loops are dangerous, be sure to kill this process!
-        } catch (IOException e) {
-            System.err.println("Problem with " + FrankTcpExample3Client.class.getName() + " networking:"); // describe what is happening
-            System.err.println("Error: " + e);
-
-            // Provide more helpful information to user if exception occurs due to running twice at one time
-            if (e instanceof java.net.BindException) {
-                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
-            }
-        } finally // occurs after any other activity when shutting down
-        {
-            try {
-                if (socket != null) {
-                    socket.close();
-                }
-            } catch (IOException e) {
-            }
-
-            // program exit: tell somebody about that happening.  Likely cause: server drops connection.
-            System.out.println();
-            System.out.println("Good Bye!!!");
-        }
-    }
-}
+package MV3500Cohort2021JulySeptember.homework2;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.net.Socket;
+
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+/**
+ *
+ * @author justi
+ */
+public class FrankTcpExample3Client {
+
+    /**
+     */
+    public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
+
+    /**
+     * Program invocation, execution starts here
+     *
+     * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels execution
+     */
+    public static void main(String[] args) throws InterruptedException {
+
+        // Local variables/fields
+        Socket socket = null;
+        InputStream is;
+        Reader isr;
+        BufferedReader br;
+        String serverMessage;
+        int clientLoopCount = 0;
+
+        try {
+            while (true) {
+                clientLoopCount++; // increment at beginning of loop for reliability
+                System.out.println( "creating socket...");
+
+                // We request an IP to connect to ("localhost") and
+                // port number at that IP (2317). This establishes
+                // a connection to that IP in the form of a Socket
+                // object; the server uses a ServerSocket to wait for
+                // connections.
+                socket = new Socket(LOCALHOST, 2318); // locohost?
+
+                // Now hook everything up (i.e. set up the streams), Java style:
+                is = socket.getInputStream();
+                isr = new InputStreamReader(is);
+                br = new BufferedReader(isr);
+
+                // Read a single line written by the server. We'd
+                // do things a bit differently if there were many lines to be read
+                // from the server instead of one only.
+                serverMessage = br.readLine();
+                System.out.println("*********************************");
+
+                System.out.print( clientLoopCount + ": ");
+                System.out.println("Hola!");
+                System.out.println("The message the server sent was: '" + serverMessage + "'");
+                // socket gets closed, either automatically/silently by this code (or possibly by the server)
+                if (serverMessage.equals("this is good bye message from Franks server")) { //if client recieved termanation message stop client
+                    break;
+                }
+                Thread.sleep(1000); // turned it down to 1 second
+
+            } // end while(true) // infinite loops are dangerous, be sure to kill this process!
+        } catch (IOException e) {
+            System.err.println("Problem with " + FrankTcpExample3Client.class.getName() + " networking:"); // describe what is happening
+            System.err.println("Error: " + e);
+
+            // Provide more helpful information to user if exception occurs due to running twice at one time
+            if (e instanceof java.net.BindException) {
+                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
+            }
+        } finally // occurs after any other activity when shutting down
+        {
+            try {
+                if (socket != null) {
+                    socket.close();
+                }
+            } catch (IOException e) {
+            }
+
+            // program exit: tell somebody about that happening.  Likely cause: server drops connection.
+            System.out.println();
+            System.out.println("Good Bye!!!");
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankTcpExample3Server.java b/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankTcpExample3Server.java
index f292beed04..037239a06f 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankTcpExample3Server.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework2/FrankTcpExample3Server.java
@@ -1,89 +1,90 @@
-package MV3500Cohort2021JulySeptember.homework2;
-
-import java.io.*;
-import java.net.*;
-
-
-public class FrankTcpExample3Server {
-
-    /**
-     * Program invocation, execution starts here If already compiled, can run
-     * using console in directory ../../build/classes/ by invoking \ java
-     * -classpath . TcpExamples.TcpExample3Server
-     *
-     * @param args command-line arguments
-     */
-    public static void main(String[] args) throws InterruptedException {
-        try {
-
-            // ServerSocket waits for a connection from a client. 
-            // Notice that it is outside the loop; ServerSocket
-            // needs to be made only once.
-            System.out.println(FrankTcpExample3Server.class.getName() + " has started..."); // it helps debugging to put this on console first
-
-            ServerSocket serverSocket = new ServerSocket(2318); // changed from 2317 to 2318
-            OutputStream os;
-            PrintStream ps;
-            InetAddress localAddress, remoteAddress;
-            int localPort, remotePort;
-            int serverLoopCount = 0;
-
-            // Server is up and waiting (i.e. "blocked" or paused)
-            // Loop, infinitely, waiting for client connections.
-            // Stop the program somewhere else.
-            while (true) {
-
-                // block until connected to a client
-                try ( Socket clientConnectionSocket = serverSocket.accept()) {
-                    serverLoopCount++; // increment at beginning of loop for reliability
-
-                    // Now hook everything up (i.e. set up the streams), Java style:
-                    os = clientConnectionSocket.getOutputStream();
-                    ps = new PrintStream(os);
-                    if (serverLoopCount <= 10) { // checking if the loop count <= 10
-                        ps.println("How are you doing?"); // this gets sent back to client!
-                    } else {
-                        ps.println("this is good bye message from Franks server"); // termination after 20 messages
-                        break; // Stop server
-                    }
-                    // Print some information locally about the Socket connection.
-                    // This includes the port and IP numbers on both sides (the socket pair).
-                    localAddress = clientConnectionSocket.getLocalAddress();
-                    remoteAddress = clientConnectionSocket.getInetAddress();
-                    localPort = clientConnectionSocket.getLocalPort();
-                    remotePort = clientConnectionSocket.getPort();
-
-                    System.out.print("Server loop " + serverLoopCount + ": ");
-
-                    // My socket pair connection looks like this, to localhost:
-                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54876 ))
-                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54881 ))
-                    // Why is the first IP/port the same, while the second set has different ports?
-                    System.out.println(FrankTcpExample3Server.class.getName() + " socket pair showing host name, address, port:");
-                    System.out.println("  (( "
-                            + localAddress.getHostName() + "=" + localAddress.getHostAddress() + ", " + localPort + " ), ( "
-                            + remoteAddress.getHostName() + "=" + remoteAddress.getHostAddress() + ", " + remotePort + " ))");
-
-                    if (localAddress.getHostName().equals(localAddress.getHostAddress())
-                            || remoteAddress.getHostName().equals(remoteAddress.getHostAddress())) {
-                        System.out.println("  note HostName matches address if host has no DNS name");
-                    }
-
-                    // Not/*i*/ce the use of flush() and try w/ resources. Without
-                    // the try w/ resources the Socket object may stay open for
-                    // a while after the client has stopped needing this
-                    // connection. try w/ resources explicitly ends the connection.
-                    ps.flush();
-                    // like it or not, you're outta here!
-                }
-            }
-        } catch (IOException e) {
-            System.err.println("Problem with " + FrankTcpExample3Server.class.getName() + " networking: " + e);
-
-            // Provide more helpful information to user if exception occurs due to running twice at one time
-            if (e instanceof java.net.BindException) {
-                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
-            }
-        }
-    }
-}
+package MV3500Cohort2021JulySeptember.homework2;
+
+import java.io.*;
+import java.net.*;
+
+
+public class FrankTcpExample3Server {
+
+    /**
+     * Program invocation, execution starts here If already compiled, can run
+     * using console in directory ../../build/classes/ by invoking \ java
+     * -classpath . TcpExamples.TcpExample3Server
+     *
+     * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels execution
+     */
+    public static void main(String[] args) throws InterruptedException {
+        try {
+
+            // ServerSocket waits for a connection from a client. 
+            // Notice that it is outside the loop; ServerSocket
+            // needs to be made only once.
+            System.out.println(FrankTcpExample3Server.class.getName() + " has started..."); // it helps debugging to put this on console first
+
+            ServerSocket serverSocket = new ServerSocket(2318); // changed from 2317 to 2318
+            OutputStream os;
+            PrintStream ps;
+            InetAddress localAddress, remoteAddress;
+            int localPort, remotePort;
+            int serverLoopCount = 0;
+
+            // Server is up and waiting (i.e. "blocked" or paused)
+            // Loop, infinitely, waiting for client connections.
+            // Stop the program somewhere else.
+            while (true) {
+
+                // block until connected to a client
+                try ( Socket clientConnectionSocket = serverSocket.accept()) {
+                    serverLoopCount++; // increment at beginning of loop for reliability
+
+                    // Now hook everything up (i.e. set up the streams), Java style:
+                    os = clientConnectionSocket.getOutputStream();
+                    ps = new PrintStream(os);
+                    if (serverLoopCount <= 10) { // checking if the loop count <= 10
+                        ps.println("How are you doing?"); // this gets sent back to client!
+                    } else {
+                        ps.println("this is good bye message from Franks server"); // termination after 20 messages
+                        break; // Stop server
+                    }
+                    // Print some information locally about the Socket connection.
+                    // This includes the port and IP numbers on both sides (the socket pair).
+                    localAddress = clientConnectionSocket.getLocalAddress();
+                    remoteAddress = clientConnectionSocket.getInetAddress();
+                    localPort = clientConnectionSocket.getLocalPort();
+                    remotePort = clientConnectionSocket.getPort();
+
+                    System.out.print("Server loop " + serverLoopCount + ": ");
+
+                    // My socket pair connection looks like this, to localhost:
+                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54876 ))
+                    // Socket pair: (( /0:0:0:0:0:0:0:1, 2317 ), ( /0:0:0:0:0:0:0:1, 54881 ))
+                    // Why is the first IP/port the same, while the second set has different ports?
+                    System.out.println(FrankTcpExample3Server.class.getName() + " socket pair showing host name, address, port:");
+                    System.out.println("  (( "
+                            + localAddress.getHostName() + "=" + localAddress.getHostAddress() + ", " + localPort + " ), ( "
+                            + remoteAddress.getHostName() + "=" + remoteAddress.getHostAddress() + ", " + remotePort + " ))");
+
+                    if (localAddress.getHostName().equals(localAddress.getHostAddress())
+                            || remoteAddress.getHostName().equals(remoteAddress.getHostAddress())) {
+                        System.out.println("  note HostName matches address if host has no DNS name");
+                    }
+
+                    // Not/*i*/ce the use of flush() and try w/ resources. Without
+                    // the try w/ resources the Socket object may stay open for
+                    // a while after the client has stopped needing this
+                    // connection. try w/ resources explicitly ends the connection.
+                    ps.flush();
+                    // like it or not, you're outta here!
+                }
+            }
+        } catch (IOException e) {
+            System.err.println("Problem with " + FrankTcpExample3Server.class.getName() + " networking: " + e);
+
+            // Provide more helpful information to user if exception occurs due to running twice at one time
+            if (e instanceof java.net.BindException) {
+                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
+            }
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework2/Leckie/LeckieClient.java b/assignments/src/MV3500Cohort2021JulySeptember/homework2/Leckie/LeckieClient.java
index 3dac42ae73..a562830b28 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework2/Leckie/LeckieClient.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework2/Leckie/LeckieClient.java
@@ -1,86 +1,87 @@
-package MV3500Cohort2021JulySeptember.homework2.Leckie;
-import java.io.*;
-import java.net.*;
-
-/**
- *
- * @author Jacob Leckie
- */
-public class LeckieClient {
-
-    /** IPv6 String constant for localhost address, similarly IPv4 127.0.0.1
-     * @see <a href="https://en.wikipedia.org/wiki/localhost">https://en.wikipedia.org/wiki/localhost</a>
-     * @see <a href="https://en.wikipedia.org/wiki/IPv6_address">https://en.wikipedia.org/wiki/IPv6_address</a> 
-     */
-    public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
-
-    /**
-     * Program invocation, execution starts here
-     * @param args command-line arguments
-     */
-    public static void main(String[] args) throws InterruptedException {
-        
-        // Local variables/fields
-        Socket socket = null;
-        InputStream is;
-        Reader isr;
-        BufferedReader br;
-        String serverMessage;
-        int clientLoopCount = 0;
-        
-        try {
-            while (true)
-            {
-                clientLoopCount++; // increment at beginning of loop for reliability
-                System.out.println(LeckieClient.class.getName() + " creating socket...");
-
-                // We request an IP to connect to ("localhost") and
-                // port number at that IP (2317). This establishes
-                // a connection to that IP in the form of a Socket
-                // object; the server uses a ServerSocket to wait for
-                // connections.
-                socket = new Socket(LOCALHOST, 2317); // locohost?
-
-                // Now hook everything up (i.e. set up the streams), Java style:
-                is  = socket.getInputStream();
-                isr = new InputStreamReader(is);
-                br  = new BufferedReader(isr);
-
-                // Read a single line written by the server. We'd
-                // do things a bit differently if there were many lines to be read
-                // from the server instead of one only.
-                serverMessage = br.readLine();
-                System.out.println("==================================================");
-                       
-//                System.out.print  ("Client loop " + clientLoopCount + ": ");
-                System.out.println("I dont want to clean my room!");
-                System.out.println("The message the server sent was: '" + serverMessage + "'");
-                // socket gets closed, either automatically/silently by this code (or possibly by the server)
-                
-                Thread.sleep(500l); // slow things down, for example 500l (long) = 500 msec (1/2 second)
-                
-            } // end while(true) // infinite loops are dangerous, be sure to kill this process!
-        } 
-        catch (IOException e)
-        {
-            System.err.println("Problem with " + LeckieClient.class.getName() + " networking:"); // describe what is happening
-            System.err.println("Error: " + e);
-            
-            // Provide more helpful information to user if exception occurs due to running twice at one time
-            if (e instanceof java.net.BindException) {
-                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
-            }
-        }
-        finally // occurs after any other activity when shutting down
-        {
-            try {
-                if (socket != null)
-                    socket.close();
-            } catch (IOException e) {}
-            
-            // program exit: tell somebody about that happening.  Likely cause: server drops connection.
-            System.out.println();
-            System.out.println(LeckieClient.class.getName() + " exit");
-        }
-    }
-}
+package MV3500Cohort2021JulySeptember.homework2.Leckie;
+import java.io.*;
+import java.net.*;
+
+/**
+ *
+ * @author Jacob Leckie
+ */
+public class LeckieClient {
+
+    /** IPv6 String constant for localhost address, similarly IPv4 127.0.0.1
+     * @see <a href="https://en.wikipedia.org/wiki/localhost">https://en.wikipedia.org/wiki/localhost</a>
+     * @see <a href="https://en.wikipedia.org/wiki/IPv6_address">https://en.wikipedia.org/wiki/IPv6_address</a> 
+     */
+    public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
+
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels program
+     */
+    public static void main(String[] args) throws InterruptedException {
+        
+        // Local variables/fields
+        Socket socket = null;
+        InputStream is;
+        Reader isr;
+        BufferedReader br;
+        String serverMessage;
+        int clientLoopCount = 0;
+        
+        try {
+            while (true)
+            {
+                clientLoopCount++; // increment at beginning of loop for reliability
+                System.out.println(LeckieClient.class.getName() + " creating socket...");
+
+                // We request an IP to connect to ("localhost") and
+                // port number at that IP (2317). This establishes
+                // a connection to that IP in the form of a Socket
+                // object; the server uses a ServerSocket to wait for
+                // connections.
+                socket = new Socket(LOCALHOST, 2317); // locohost?
+
+                // Now hook everything up (i.e. set up the streams), Java style:
+                is  = socket.getInputStream();
+                isr = new InputStreamReader(is);
+                br  = new BufferedReader(isr);
+
+                // Read a single line written by the server. We'd
+                // do things a bit differently if there were many lines to be read
+                // from the server instead of one only.
+                serverMessage = br.readLine();
+                System.out.println("==================================================");
+                       
+//                System.out.print  ("Client loop " + clientLoopCount + ": ");
+                System.out.println("I dont want to clean my room!");
+                System.out.println("The message the server sent was: '" + serverMessage + "'");
+                // socket gets closed, either automatically/silently by this code (or possibly by the server)
+                
+                Thread.sleep(500l); // slow things down, for example 500l (long) = 500 msec (1/2 second)
+                
+            } // end while(true) // infinite loops are dangerous, be sure to kill this process!
+        } 
+        catch (IOException e)
+        {
+            System.err.println("Problem with " + LeckieClient.class.getName() + " networking:"); // describe what is happening
+            System.err.println("Error: " + e);
+            
+            // Provide more helpful information to user if exception occurs due to running twice at one time
+            if (e instanceof java.net.BindException) {
+                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
+            }
+        }
+        finally // occurs after any other activity when shutting down
+        {
+            try {
+                if (socket != null)
+                    socket.close();
+            } catch (IOException e) {}
+            
+            // program exit: tell somebody about that happening.  Likely cause: server drops connection.
+            System.out.println();
+            System.out.println(LeckieClient.class.getName() + " exit");
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework2/McNeely/McNeelyTCPExample3Client.java b/assignments/src/MV3500Cohort2021JulySeptember/homework2/McNeely/McNeelyTCPExample3Client.java
index 8e495a0b96..221949b5bc 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework2/McNeely/McNeelyTCPExample3Client.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework2/McNeely/McNeelyTCPExample3Client.java
@@ -1,93 +1,94 @@
-package MV3500Cohort2021JulySeptember.homework2.McNeely;
-
-import java.io.*;
-import java.net.*;
-
-/**
- * Before, we always used telnet (netcat) to connect to the server. Here we are 
- * now writing our own program to do the connection.
- *
- * As you will see, when we run this after we start the server we will see the
- * same string telnet printed, sent by the server. The output at the server will
- * show different socket pairs for each time the loop iterates.
- *
- * @author jrm_u
- */
-public class McNeelyTCPExample3Client {
-
-    /** IPv6 String constant for localhost address, similarly IPv4 127.0.0.1
-     * @see <a href="https://en.wikipedia.org/wiki/localhost">https://en.wikipedia.org/wiki/localhost</a>
-     * @see <a href="https://en.wikipedia.org/wiki/IPv6_address">https://en.wikipedia.org/wiki/IPv6_address</a> 
-     */
-    public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
-
-    /**
-     * Program invocation, execution starts here
-     * @param args command-line arguments
-     */
-    public static void main(String[] args) throws InterruptedException {
-        
-        // Local variables/fields
-        Socket socket = null;
-        InputStream is;
-        Reader isr;
-        BufferedReader br;
-        String serverMessage;
-        int clientLoopCount = 0;
-        
-        try {
-            while (true)
-            {
-                clientLoopCount++; // increment at beginning of loop for reliability
-                System.out.println(McNeelyTCPExample3Client.class.getName() + "McNeely creating socket...");
-
-                // We request an IP to connect to ("localhost") and
-                // port number at that IP (2317). This establishes
-                // a connection to that IP in the form of a Socket
-                // object; the server uses a ServerSocket to wait for
-                // connections.
-                socket = new Socket(LOCALHOST, 2317); // locohost?
-
-                // Now hook everything up (i.e. set up the streams), Java style:
-                is  = socket.getInputStream();
-                isr = new InputStreamReader(is);
-                br  = new BufferedReader(isr);
-
-                // Read a single line written by the server. We'd
-                // do things a bit differently if there were many lines to be read
-                // from the server instead of one only.
-                serverMessage = br.readLine();
-                System.out.println("==================================================");
-                       
-                System.out.print  ("Client loop " + clientLoopCount + ": ");
-                System.out.println("now we're cooking with diesel fuel!");
-                System.out.println("The message the server sent was: '" + serverMessage + "'");
-                // socket gets closed, either automatically/silently by this code (or possibly by the server)
-                
-                Thread.sleep(500l); // slow things down, for example 500l (long) = 500 msec
-                
-            } // end while(true) // infinite loops are dangerous, be sure to kill this process!
-        } 
-        catch (IOException e)
-        {
-            System.err.println("Problem with " + McNeelyTCPExample3Client.class.getName() + " networking:"); // describe what is happening
-            System.err.println("Error: " + e);
-            
-            // Provide more helpful information to user if exception occurs due to running twice at one time
-            if (e instanceof java.net.BindException) {
-                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
-            }
-        }
-        finally // occurs after any other activity when shutting down
-        {
-            try {
-                if (socket != null)
-                    socket.close();
-            } catch (IOException e) {}
-            
-            // program exit: tell somebody about that happening.  Likely cause: server drops connection.
-            System.out.println();
-            System.out.println(McNeelyTCPExample3Client.class.getName() + " exit");
-        }
-    }
-}
+package MV3500Cohort2021JulySeptember.homework2.McNeely;
+
+import java.io.*;
+import java.net.*;
+
+/**
+ * Before, we always used telnet (netcat) to connect to the server. Here we are 
+ * now writing our own program to do the connection.
+ *
+ * As you will see, when we run this after we start the server we will see the
+ * same string telnet printed, sent by the server. The output at the server will
+ * show different socket pairs for each time the loop iterates.
+ *
+ * @author jrm_u
+ */
+public class McNeelyTCPExample3Client {
+
+    /** IPv6 String constant for localhost address, similarly IPv4 127.0.0.1
+     * @see <a href="https://en.wikipedia.org/wiki/localhost">https://en.wikipedia.org/wiki/localhost</a>
+     * @see <a href="https://en.wikipedia.org/wiki/IPv6_address">https://en.wikipedia.org/wiki/IPv6_address</a> 
+     */
+    public final static String LOCALHOST = "0:0:0:0:0:0:0:1";
+
+    /**
+     * Program invocation, execution starts here
+     * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels execution
+     */
+    public static void main(String[] args) throws InterruptedException {
+        
+        // Local variables/fields
+        Socket socket = null;
+        InputStream is;
+        Reader isr;
+        BufferedReader br;
+        String serverMessage;
+        int clientLoopCount = 0;
+        
+        try {
+            while (true)
+            {
+                clientLoopCount++; // increment at beginning of loop for reliability
+                System.out.println(McNeelyTCPExample3Client.class.getName() + "McNeely creating socket...");
+
+                // We request an IP to connect to ("localhost") and
+                // port number at that IP (2317). This establishes
+                // a connection to that IP in the form of a Socket
+                // object; the server uses a ServerSocket to wait for
+                // connections.
+                socket = new Socket(LOCALHOST, 2317); // locohost?
+
+                // Now hook everything up (i.e. set up the streams), Java style:
+                is  = socket.getInputStream();
+                isr = new InputStreamReader(is);
+                br  = new BufferedReader(isr);
+
+                // Read a single line written by the server. We'd
+                // do things a bit differently if there were many lines to be read
+                // from the server instead of one only.
+                serverMessage = br.readLine();
+                System.out.println("==================================================");
+                       
+                System.out.print  ("Client loop " + clientLoopCount + ": ");
+                System.out.println("now we're cooking with diesel fuel!");
+                System.out.println("The message the server sent was: '" + serverMessage + "'");
+                // socket gets closed, either automatically/silently by this code (or possibly by the server)
+                
+                Thread.sleep(500l); // slow things down, for example 500l (long) = 500 msec
+                
+            } // end while(true) // infinite loops are dangerous, be sure to kill this process!
+        } 
+        catch (IOException e)
+        {
+            System.err.println("Problem with " + McNeelyTCPExample3Client.class.getName() + " networking:"); // describe what is happening
+            System.err.println("Error: " + e);
+            
+            // Provide more helpful information to user if exception occurs due to running twice at one time
+            if (e instanceof java.net.BindException) {
+                System.err.println("*** Be sure to stop any other running instances of programs using this port!");
+            }
+        }
+        finally // occurs after any other activity when shutting down
+        {
+            try {
+                if (socket != null)
+                    socket.close();
+            } catch (IOException e) {}
+            
+            // program exit: tell somebody about that happening.  Likely cause: server drops connection.
+            System.out.println();
+            System.out.println(McNeelyTCPExample3Client.class.getName() + " exit");
+        }
+    }
+}
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework2/Morris/MorrisTCPExample3Client.java b/assignments/src/MV3500Cohort2021JulySeptember/homework2/Morris/MorrisTCPExample3Client.java
index 1eb66d23a8..1464b86558 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework2/Morris/MorrisTCPExample3Client.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework2/Morris/MorrisTCPExample3Client.java
@@ -23,6 +23,7 @@ public class MorrisTCPExample3Client {
     /**
      * Program invocation, execution starts here
      * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels execution
      */
     public static void main(String[] args) throws InterruptedException {
         
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework2/Pugh/Pugh3Client_homework2.java b/assignments/src/MV3500Cohort2021JulySeptember/homework2/Pugh/Pugh3Client_homework2.java
index 31734f0c3c..48c6e8de5a 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework2/Pugh/Pugh3Client_homework2.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework2/Pugh/Pugh3Client_homework2.java
@@ -31,6 +31,7 @@ public class Pugh3Client_homework2 {
      * Program invocation, execution starts here
      *
      * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels execution
      */
     public static void main(String[] args) throws InterruptedException {
 
diff --git a/assignments/src/MV3500Cohort2021JulySeptember/homework2/ReynoldsTcpExample3Client.java b/assignments/src/MV3500Cohort2021JulySeptember/homework2/ReynoldsTcpExample3Client.java
index 7d5dbec55a..3ffc35822e 100644
--- a/assignments/src/MV3500Cohort2021JulySeptember/homework2/ReynoldsTcpExample3Client.java
+++ b/assignments/src/MV3500Cohort2021JulySeptember/homework2/ReynoldsTcpExample3Client.java
@@ -26,6 +26,7 @@ public class ReynoldsTcpExample3Client {
     /**
      * Program invocation, execution starts here
      * @param args command-line arguments
+     * @throws java.lang.InterruptedException user cancels execution
      */
     public static void main(String[] args) throws InterruptedException {
         
-- 
GitLab