Fixes #121
Fixes #118
Fixes #128