closes #32
closes #30