Close #43, close #45 and fix #44
Merge branch 'enhancement-#43' into develop