close issues #1, #2, #16