I wonder why you add `()` to the function names? In case of overloaded functions I guess it could make sense to add the argument types to the signature, but an empty `()` seems unnecessary.