Implemented #21 and #22