work in progress, addressing #12