Fix #28
Fix #27
Fix #26
Fix #24