closed #6 closed #4 closed #3