code: Method findBridgedMethod() {
      if (!bridgeMethod.isBridge()) {
        return bridgeMethod;
      }
      // Gather all methods with matching name and parameter size.
      List<Method> candidateMethods = reflect().methods().deep()
          .filter(new SimpleBridgeCandidatePredicate())
          .from(bridgeMethod.getDeclaringClass());
  
      if (candidateMethods.isEmpty()) {
        throw new ReflectionException("Unable to locate bridged method for bridge method '" + bridgeMethod + '\'');
      } else if (candidateMethods.size() > 1) {
        Predicate bridgeCandidate = new BridgeCandidatePredicate();
        return (Method) candidateMethods.stream()
            .filter(bridgeCandidate)
            .findAny().orElse(null);
      }
      return candidateMethods.iterator().next();
    }
docs: Find the original method for the supplied {@link Method bridge Method}.
  <p>
  It is safe to call this method passing in a non-bridge {@link Method}
  instance to the constructor. In such a case, the supplied {@link Method}
  instance is returned directly to the caller. Callers are
  <strong>not</strong> required to check for bridging before calling this
  method.
  
  @return the original method for the supplied {@link Method bridge Method}
  @throws ReflectionException if no bridged {@link Method} can be found.