docs: public void marshall(RequestCancelExternalWorkflowExecutionFailedEventAttributes requestCancelExternalWorkflowExecutionFailedEventAttributes,
              ProtocolMarshaller protocolMarshaller) {
  
          if (requestCancelExternalWorkflowExecutionFailedEventAttributes == null) {
              throw new SdkClientException("Invalid argument passed to marshall(...)");
          }
  
          try {
              protocolMarshaller.marshall(requestCancelExternalWorkflowExecutionFailedEventAttributes.getWorkflowId(), WORKFLOWID_BINDING);
              protocolMarshaller.marshall(requestCancelExternalWorkflowExecutionFailedEventAttributes.getRunId(), RUNID_BINDING);
              protocolMarshaller.marshall(requestCancelExternalWorkflowExecutionFailedEventAttributes.getCause(), CAUSE_BINDING);
              protocolMarshaller.marshall(requestCancelExternalWorkflowExecutionFailedEventAttributes.getInitiatedEventId(), INITIATEDEVENTID_BINDING);
              protocolMarshaller.marshall(requestCancelExternalWorkflowExecutionFailedEventAttributes.getDecisionTaskCompletedEventId(),
                      DECISIONTASKCOMPLETEDEVENTID_BINDING);
              protocolMarshaller.marshall(requestCancelExternalWorkflowExecutionFailedEventAttributes.getControl(), CONTROL_BINDING);
          } catch (Exception e) {
              throw new SdkClientException("Unable to marshall request to JSON: " + e.getMessage(), e);
          }
      }