closes #4, more for #16