for COM580 class, using library data