diff --git a/build/source/actors/summa_actor/client.cpp b/build/source/actors/summa_actor/client.cpp
index 46c06d1e6563e8c4c3afed2088169f7e49126c4e..b3af062480462abd517ccb5c9ccec91e44a25ce3 100644
--- a/build/source/actors/summa_actor/client.cpp
+++ b/build/source/actors/summa_actor/client.cpp
@@ -153,10 +153,6 @@ int Client_Container::findClientByID(int client_id) {
     throw "Cannot Find Client";
 }
 
-// void Client_Container::removeLostClient(int index) {
-//     this->client_list.erase(this->client_list.begin() + index);
-//     this->num_clients--;
-// }
 
 std::optional<Client> Client_Container::findIdleClient() {
     for(int i = 0; i < this->num_clients; i++) {
@@ -184,7 +180,11 @@ bool Client_Container::checkForLostClients() {
 
 
 void Client_Container::reconcileLostBatches(Batch_Container* batch_container) {
-    std::cout << "HERE\n";
+    for(auto client = begin(this->lost_client_list); client != end(this->lost_client_list); ++client) {
+        batch_container->updateBatchStatus_LostClient(client->getCurrentBatchID());
+    }
+
+    this->lost_client_list.clear();
 }
 
 std::string Client_Container::connectedClientsToString() {
@@ -203,10 +203,6 @@ std::string Client_Container::lostClientsToString() {
     return out_string.str();
 }
 
-// void Client_Container::sendAllClientsHeartbeat(stateful_actor<summa_server_state>* self) {
-//     for (auto client = begin(this->connected_client_list); client != end(this->connected_client_list); ++client)
-//         self->send(client->getActor(), heartbeat_v);
-// }
 
 
 
diff --git a/build/source/actors/summa_actor/summa_server.cpp b/build/source/actors/summa_actor/summa_server.cpp
index 482ea6ced155751d4ec20e26967f7f1ce97ceceb..ee08cccc5447a8eb0c336a12bfc83b74b53c2c3f 100644
--- a/build/source/actors/summa_actor/summa_server.cpp
+++ b/build/source/actors/summa_actor/summa_server.cpp
@@ -121,6 +121,18 @@ behavior summa_server(stateful_actor<summa_server_state>* self, Distributed_Sett
             // Loop Through All Clients To see if any are lost
             if (self->state.client_container->checkForLostClients()) {
                 self->state.client_container->reconcileLostBatches(self->state.batch_container);
+                std::optional<Client> client = self->state.client_container->findIdleClient();
+                if(client.has_value()) {
+                    std::optional<Batch> new_batch = self->state.batch_container->assignBatch(
+                        self->state.client_container->getHostname_ByClientID(client.value().getID()), 
+                        client.value().getActor());
+            
+                    if (new_batch.has_value()) {
+            
+                        self->send(client.value().getActor(), new_batch.value());
+            
+                    }
+                }
             }
            sendClientsHeartbeat(self);