caching method signature (thanks to @kpu)