Issue #25 fully functional