docs: private static void writeMember(ObjectOutputStream out, Executable member)
          throws IOException
      {
          if (member == null) {
              out.writeBoolean(false);
              return;
          }
          out.writeBoolean(true);
          if (!(member instanceof Method || member instanceof Constructor))
              throw new IllegalArgumentException("not Method or Constructor");
          out.writeBoolean(member instanceof Method);
          out.writeObject(member.getName());
          out.writeObject(member.getDeclaringClass());
          writeParameters(out, member.getParameterTypes());
      }