@Override
 public StrategicLink linkGetMethod(
     StrategyChain chain, Object receiver, String methodName, Binder binder, Binder guardBinder)
     throws NoSuchMethodException, IllegalAccessException {
   StrategicLink link = super.linkGetMethod(chain, receiver, methodName, binder, guardBinder);
   if (link != null) {
     MethodHandle target = link.getTarget();
     return new StrategicLink(
         Binder.from(target.type()).filterReturn(FILTER_HANDLE).invoke(target), link.getGuard());
   }
   return null;
 }
 @Override
 public StrategicLink linkCall(
     StrategyChain chain,
     Object receiver,
     Object self,
     Object[] args,
     Binder binder,
     Binder guardBinder)
     throws NoSuchMethodException, IllegalAccessException {
   // TODO Auto-generated method stub
   StrategicLink link = super.linkCall(chain, receiver, self, args, binder, guardBinder);
   if (link != null) {
     MethodHandle target = link.getTarget();
     return new StrategicLink(
         Binder.from(target.type()).filterReturn(FILTER_HANDLE).invoke(target), link.getGuard());
   }
   return null;
 }