handler.addMethodLevelDeclaration(attribute, method.get());
} else {
// method name already declared
List<MethodAttribute> list = existingDeclarations.get(method.get().getName());
for (MethodAttribute mtx : list) {
MethodParams methodParams = mtx.getMethodParams();
if (methodParams == null) {
// params not specified, so this is more specific
handler.addMethodLevelDeclaration(attribute, method.get());
} else {
List<String> params1 = methodParams.getMethodParam();
String[] params2 = asStrings(method.get().getParameterTypes());
if (params1.size() != params2.length) {
// params not the same
handler.addMethodLevelDeclaration(attribute, method.get());
} else {