closes #11, closes #12