closes #75, closes #57