@awulkiew Regarding the first comment. I would like to think a bit more about this and see the code examples you wrote. Most probably I will change it as you describe.

Regarding the second comment, this is a very good point. I need to change the return type accordingly, given that we know beforehand the fundamental types. I will fix this.