Issues: #91, #23, #59