closes #14, closes #15