lots of summarization of CECS274s homework