Cool design, not so useful for assignment though