Fixes #2
Fixes #3
Fixes #4