added a bunch but program currently hangs