resolved #23 and #24