closes #88, closes #81