I understand there is some backward compatibility issue, and it is not allowed by compiler.
Method has the same erasure as another method in type
how do others achieve this? Is there any other solution than to define them with different function names?