added FunctionDescriptor.toString()