docs: public void marshall(Cluster cluster, ProtocolMarshaller protocolMarshaller) {
  
          if (cluster == null) {
              throw new SdkClientException("Invalid argument passed to marshall(...)");
          }
  
          try {
              protocolMarshaller.marshall(cluster.getId(), ID_BINDING);
              protocolMarshaller.marshall(cluster.getName(), NAME_BINDING);
              protocolMarshaller.marshall(cluster.getStatus(), STATUS_BINDING);
              protocolMarshaller.marshall(cluster.getEc2InstanceAttributes(), EC2INSTANCEATTRIBUTES_BINDING);
              protocolMarshaller.marshall(cluster.getInstanceCollectionType(), INSTANCECOLLECTIONTYPE_BINDING);
              protocolMarshaller.marshall(cluster.getLogUri(), LOGURI_BINDING);
              protocolMarshaller.marshall(cluster.getRequestedAmiVersion(), REQUESTEDAMIVERSION_BINDING);
              protocolMarshaller.marshall(cluster.getRunningAmiVersion(), RUNNINGAMIVERSION_BINDING);
              protocolMarshaller.marshall(cluster.getReleaseLabel(), RELEASELABEL_BINDING);
              protocolMarshaller.marshall(cluster.getAutoTerminate(), AUTOTERMINATE_BINDING);
              protocolMarshaller.marshall(cluster.getTerminationProtected(), TERMINATIONPROTECTED_BINDING);
              protocolMarshaller.marshall(cluster.getVisibleToAllUsers(), VISIBLETOALLUSERS_BINDING);
              protocolMarshaller.marshall(cluster.getApplications(), APPLICATIONS_BINDING);
              protocolMarshaller.marshall(cluster.getTags(), TAGS_BINDING);
              protocolMarshaller.marshall(cluster.getServiceRole(), SERVICEROLE_BINDING);
              protocolMarshaller.marshall(cluster.getNormalizedInstanceHours(), NORMALIZEDINSTANCEHOURS_BINDING);
              protocolMarshaller.marshall(cluster.getMasterPublicDnsName(), MASTERPUBLICDNSNAME_BINDING);
              protocolMarshaller.marshall(cluster.getConfigurations(), CONFIGURATIONS_BINDING);
              protocolMarshaller.marshall(cluster.getSecurityConfiguration(), SECURITYCONFIGURATION_BINDING);
              protocolMarshaller.marshall(cluster.getAutoScalingRole(), AUTOSCALINGROLE_BINDING);
              protocolMarshaller.marshall(cluster.getScaleDownBehavior(), SCALEDOWNBEHAVIOR_BINDING);
              protocolMarshaller.marshall(cluster.getCustomAmiId(), CUSTOMAMIID_BINDING);
              protocolMarshaller.marshall(cluster.getEbsRootVolumeSize(), EBSROOTVOLUMESIZE_BINDING);
              protocolMarshaller.marshall(cluster.getRepoUpgradeOnBoot(), REPOUPGRADEONBOOT_BINDING);
              protocolMarshaller.marshall(cluster.getKerberosAttributes(), KERBEROSATTRIBUTES_BINDING);
          } catch (Exception e) {
              throw new SdkClientException("Unable to marshall request to JSON: " + e.getMessage(), e);
          }
      }