closes #76  closes #31