resolves #20
resolves #21