Thanks for fixing this.
So I'm wondering what happens if we don't pass hash and don't use it? It's gonna be undef, or what? I'm just concerned on such if..else clauses for every such parameter; it's gonna be headache for the long run. In Ruby it would be just nil, and we can easily work with this...