Resolves #3
Resolves #5