This document describes an algorithm for simulating customer wait times at a bank. It defines classes for a Queue, Bank, and Client. The Bank class tracks the average wait time and current customer. The tick method decreases the timeRemaining if a customer is being served. The Client class stores the arrival time stamp and wait time. The main function runs a simulation, adding new client tasks and updating banks over time.