Homework #1 submission by Weicong Liao