class TencentCloud::Thpc::V20211109::CreateClusterRequest

def deserialize(params)

def deserialize(params)
  unless params['Placement'].nil?
    @Placement = Placement.new
    @Placement.deserialize(params['Placement'])
  end
  unless params['ManagerNode'].nil?
    @ManagerNode = ManagerNode.new
    @ManagerNode.deserialize(params['ManagerNode'])
  end
  @ManagerNodeCount = params['ManagerNodeCount']
  unless params['ComputeNode'].nil?
    @ComputeNode = ComputeNode.new
    @ComputeNode.deserialize(params['ComputeNode'])
  end
  @ComputeNodeCount = params['ComputeNodeCount']
  @SchedulerType = params['SchedulerType']
  @ImageId = params['ImageId']
  unless params['VirtualPrivateCloud'].nil?
    @VirtualPrivateCloud = VirtualPrivateCloud.new
    @VirtualPrivateCloud.deserialize(params['VirtualPrivateCloud'])
  end
  unless params['LoginSettings'].nil?
    @LoginSettings = LoginSettings.new
    @LoginSettings.deserialize(params['LoginSettings'])
  end
  @SecurityGroupIds = params['SecurityGroupIds']
  @ClientToken = params['ClientToken']
  @DryRun = params['DryRun']
  @AccountType = params['AccountType']
  @ClusterName = params['ClusterName']
  unless params['StorageOption'].nil?
    @StorageOption = StorageOption.new
    @StorageOption.deserialize(params['StorageOption'])
  end
  unless params['LoginNode'].nil?
    @LoginNode = []
    params['LoginNode'].each do |i|
      loginnode_tmp = LoginNode.new
      loginnode_tmp.deserialize(i)
      @LoginNode << loginnode_tmp
    end
  end
  @LoginNodeCount = params['LoginNodeCount']
  unless params['Tags'].nil?
    @Tags = []
    params['Tags'].each do |i|
      tag_tmp = Tag.new
      tag_tmp.deserialize(i)
      @Tags << tag_tmp
    end
  end
end