diff --git a/projects/Assignments/homework3/Tackett_Assignement3_OpenDisPduSender.java b/projects/Assignments/homework3/Tackett_Assignement3_OpenDisPduSender.java
deleted file mode 100644
index ffed87e5b259445042c0a48ea7347feebc8d909c..0000000000000000000000000000000000000000
--- a/projects/Assignments/homework3/Tackett_Assignement3_OpenDisPduSender.java
+++ /dev/null
@@ -1,182 +0,0 @@
-// 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.*;
-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 Tackett_Assignement3_OpenDisPduSender {
-
-    public static final int    PORT = 3000;
-    public static final String MULTICAST_ADDRESS = "239.1.2.3";
-    private int port;
-    InetAddress multicastAddress;
-
-    public Tackett_Assignement3_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();
-        }
-    }
-}
diff --git a/projects/Assignments/homework3/Tackett_Wireshark.pcapng b/projects/Assignments/homework3/Tackett_Wireshark.pcapng
new file mode 100644
index 0000000000000000000000000000000000000000..6e0277a4267aa4f983d0b68438c1198e7674d99e
Binary files /dev/null and b/projects/Assignments/homework3/Tackett_Wireshark.pcapng differ