CS408 source code