docs: private List<Type> executeCall(
              Function function) throws IOException {
          String encodedFunction = FunctionEncoder.encode(function);
          org.web3j.protocol.core.methods.response.EthCall ethCall = web3j.ethCall(
                  Transaction.createEthCallTransaction(
                          transactionManager.getFromAddress(), contractAddress, encodedFunction),
                  defaultBlockParameter)
                  .send();
  
          String value = ethCall.getValue();
          return FunctionReturnDecoder.decode(value, function.getOutputParameters());
      }