Closed #9, closed #8, closed #6