Addresses #53, #49 and #36