[week3] copy app from week1