closes #2, closes #3