Update #9
Fix #12
Update #9
Fix #19
Fix #15