code: private Method[] getMemberMethods() {
  		if (memberMethods == null) {
  			memberMethods = AccessController
  					.doPrivileged(new PrivilegedAction<Method[]>() {
  						public Method[] run() {
  							final Method[] mm = type.getDeclaredMethods();
  							AccessibleObject.setAccessible(mm, true);
  							return mm;
  						}
  					});
  		}
  		return memberMethods;
  	}
docs: Returns the member methods for our annotation type. These are obtained
  lazily and cached, as they're expensive to obtain and we only need them
  if our equals method is invoked (which should be rare).