// Code generated by msgraph.go/gen DO NOT EDIT.

package msgraph

import (
	"context"
	"encoding/json"
	"fmt"
	"io/ioutil"
	"net/http"

	"github.com/yaegashi/msgraph.go/jsonx"
)

// WorkbookChartCollectionAddRequestParameter undocumented
type WorkbookChartCollectionAddRequestParameter struct {
	// Type undocumented
	Type *string `json:"type,omitempty"`
	// SourceData undocumented
	SourceData json.RawMessage `json:"sourceData,omitempty"`
	// SeriesBy undocumented
	SeriesBy *string `json:"seriesBy,omitempty"`
}

// WorkbookNamedItemCollectionAddRequestParameter undocumented
type WorkbookNamedItemCollectionAddRequestParameter struct {
	// Name undocumented
	Name *string `json:"name,omitempty"`
	// Reference undocumented
	Reference json.RawMessage `json:"reference,omitempty"`
	// Comment undocumented
	Comment *string `json:"comment,omitempty"`
}

// WorkbookNamedItemCollectionAddFormulaLocalRequestParameter undocumented
type WorkbookNamedItemCollectionAddFormulaLocalRequestParameter struct {
	// Name undocumented
	Name *string `json:"name,omitempty"`
	// Formula undocumented
	Formula *string `json:"formula,omitempty"`
	// Comment undocumented
	Comment *string `json:"comment,omitempty"`
}

// WorkbookPivotTableCollectionRefreshAllRequestParameter undocumented
type WorkbookPivotTableCollectionRefreshAllRequestParameter struct {
}

// WorkbookTableCollectionAddRequestParameter undocumented
type WorkbookTableCollectionAddRequestParameter struct {
	// Address undocumented
	Address *string `json:"address,omitempty"`
	// HasHeaders undocumented
	HasHeaders *bool `json:"hasHeaders,omitempty"`
}

// WorkbookTableColumnCollectionAddRequestParameter undocumented
type WorkbookTableColumnCollectionAddRequestParameter struct {
	// Index undocumented
	Index *int `json:"index,omitempty"`
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
	// Name undocumented
	Name *string `json:"name,omitempty"`
}

// WorkbookTableRowCollectionAddRequestParameter undocumented
type WorkbookTableRowCollectionAddRequestParameter struct {
	// Index undocumented
	Index *int `json:"index,omitempty"`
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookWorksheetCollectionAddRequestParameter undocumented
type WorkbookWorksheetCollectionAddRequestParameter struct {
	// Name undocumented
	Name *string `json:"name,omitempty"`
}

// WorkbookCreateSessionRequestParameter undocumented
type WorkbookCreateSessionRequestParameter struct {
	// PersistChanges undocumented
	PersistChanges *bool `json:"persistChanges,omitempty"`
}

// WorkbookCloseSessionRequestParameter undocumented
type WorkbookCloseSessionRequestParameter struct {
}

// WorkbookRefreshSessionRequestParameter undocumented
type WorkbookRefreshSessionRequestParameter struct {
}

// WorkbookApplicationCalculateRequestParameter undocumented
type WorkbookApplicationCalculateRequestParameter struct {
	// CalculationType undocumented
	CalculationType *string `json:"calculationType,omitempty"`
}

// WorkbookChartSetDataRequestParameter undocumented
type WorkbookChartSetDataRequestParameter struct {
	// SourceData undocumented
	SourceData json.RawMessage `json:"sourceData,omitempty"`
	// SeriesBy undocumented
	SeriesBy *string `json:"seriesBy,omitempty"`
}

// WorkbookChartSetPositionRequestParameter undocumented
type WorkbookChartSetPositionRequestParameter struct {
	// StartCell undocumented
	StartCell json.RawMessage `json:"startCell,omitempty"`
	// EndCell undocumented
	EndCell json.RawMessage `json:"endCell,omitempty"`
}

// WorkbookChartFillClearRequestParameter undocumented
type WorkbookChartFillClearRequestParameter struct {
}

// WorkbookChartFillSetSolidColorRequestParameter undocumented
type WorkbookChartFillSetSolidColorRequestParameter struct {
	// Color undocumented
	Color *string `json:"color,omitempty"`
}

// WorkbookChartLineFormatClearRequestParameter undocumented
type WorkbookChartLineFormatClearRequestParameter struct {
}

// WorkbookFilterApplyRequestParameter undocumented
type WorkbookFilterApplyRequestParameter struct {
	// Criteria undocumented
	Criteria *WorkbookFilterCriteria `json:"criteria,omitempty"`
}

// WorkbookFilterApplyBottomItemsFilterRequestParameter undocumented
type WorkbookFilterApplyBottomItemsFilterRequestParameter struct {
	// Count undocumented
	Count *int `json:"count,omitempty"`
}

// WorkbookFilterApplyBottomPercentFilterRequestParameter undocumented
type WorkbookFilterApplyBottomPercentFilterRequestParameter struct {
	// Percent undocumented
	Percent *int `json:"percent,omitempty"`
}

// WorkbookFilterApplyCellColorFilterRequestParameter undocumented
type WorkbookFilterApplyCellColorFilterRequestParameter struct {
	// Color undocumented
	Color *string `json:"color,omitempty"`
}

// WorkbookFilterApplyCustomFilterRequestParameter undocumented
type WorkbookFilterApplyCustomFilterRequestParameter struct {
	// Criteria1 undocumented
	Criteria1 *string `json:"criteria1,omitempty"`
	// Criteria2 undocumented
	Criteria2 *string `json:"criteria2,omitempty"`
	// Oper undocumented
	Oper *string `json:"oper,omitempty"`
}

// WorkbookFilterApplyDynamicFilterRequestParameter undocumented
type WorkbookFilterApplyDynamicFilterRequestParameter struct {
	// Criteria undocumented
	Criteria *string `json:"criteria,omitempty"`
}

// WorkbookFilterApplyFontColorFilterRequestParameter undocumented
type WorkbookFilterApplyFontColorFilterRequestParameter struct {
	// Color undocumented
	Color *string `json:"color,omitempty"`
}

// WorkbookFilterApplyIconFilterRequestParameter undocumented
type WorkbookFilterApplyIconFilterRequestParameter struct {
	// Icon undocumented
	Icon *WorkbookIcon `json:"icon,omitempty"`
}

// WorkbookFilterApplyTopItemsFilterRequestParameter undocumented
type WorkbookFilterApplyTopItemsFilterRequestParameter struct {
	// Count undocumented
	Count *int `json:"count,omitempty"`
}

// WorkbookFilterApplyTopPercentFilterRequestParameter undocumented
type WorkbookFilterApplyTopPercentFilterRequestParameter struct {
	// Percent undocumented
	Percent *int `json:"percent,omitempty"`
}

// WorkbookFilterApplyValuesFilterRequestParameter undocumented
type WorkbookFilterApplyValuesFilterRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFilterClearRequestParameter undocumented
type WorkbookFilterClearRequestParameter struct {
}

// WorkbookFunctionsAbsRequestParameter undocumented
type WorkbookFunctionsAbsRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsAccrIntRequestParameter undocumented
type WorkbookFunctionsAccrIntRequestParameter struct {
	// Issue undocumented
	Issue json.RawMessage `json:"issue,omitempty"`
	// FirstInterest undocumented
	FirstInterest json.RawMessage `json:"firstInterest,omitempty"`
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Par undocumented
	Par json.RawMessage `json:"par,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
	// CalcMethod undocumented
	CalcMethod json.RawMessage `json:"calcMethod,omitempty"`
}

// WorkbookFunctionsAccrIntMRequestParameter undocumented
type WorkbookFunctionsAccrIntMRequestParameter struct {
	// Issue undocumented
	Issue json.RawMessage `json:"issue,omitempty"`
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Par undocumented
	Par json.RawMessage `json:"par,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsAcosRequestParameter undocumented
type WorkbookFunctionsAcosRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsAcoshRequestParameter undocumented
type WorkbookFunctionsAcoshRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsAcotRequestParameter undocumented
type WorkbookFunctionsAcotRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsAcothRequestParameter undocumented
type WorkbookFunctionsAcothRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsAmorDegrcRequestParameter undocumented
type WorkbookFunctionsAmorDegrcRequestParameter struct {
	// Cost undocumented
	Cost json.RawMessage `json:"cost,omitempty"`
	// DatePurchased undocumented
	DatePurchased json.RawMessage `json:"datePurchased,omitempty"`
	// FirstPeriod undocumented
	FirstPeriod json.RawMessage `json:"firstPeriod,omitempty"`
	// Salvage undocumented
	Salvage json.RawMessage `json:"salvage,omitempty"`
	// Period undocumented
	Period json.RawMessage `json:"period,omitempty"`
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsAmorLincRequestParameter undocumented
type WorkbookFunctionsAmorLincRequestParameter struct {
	// Cost undocumented
	Cost json.RawMessage `json:"cost,omitempty"`
	// DatePurchased undocumented
	DatePurchased json.RawMessage `json:"datePurchased,omitempty"`
	// FirstPeriod undocumented
	FirstPeriod json.RawMessage `json:"firstPeriod,omitempty"`
	// Salvage undocumented
	Salvage json.RawMessage `json:"salvage,omitempty"`
	// Period undocumented
	Period json.RawMessage `json:"period,omitempty"`
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsAndRequestParameter undocumented
type WorkbookFunctionsAndRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsArabicRequestParameter undocumented
type WorkbookFunctionsArabicRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
}

// WorkbookFunctionsAreasRequestParameter undocumented
type WorkbookFunctionsAreasRequestParameter struct {
	// Reference undocumented
	Reference json.RawMessage `json:"reference,omitempty"`
}

// WorkbookFunctionsAscRequestParameter undocumented
type WorkbookFunctionsAscRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
}

// WorkbookFunctionsAsinRequestParameter undocumented
type WorkbookFunctionsAsinRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsAsinhRequestParameter undocumented
type WorkbookFunctionsAsinhRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsAtanRequestParameter undocumented
type WorkbookFunctionsAtanRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsAtan2RequestParameter undocumented
type WorkbookFunctionsAtan2RequestParameter struct {
	// XNum undocumented
	XNum json.RawMessage `json:"xNum,omitempty"`
	// YNum undocumented
	YNum json.RawMessage `json:"yNum,omitempty"`
}

// WorkbookFunctionsAtanhRequestParameter undocumented
type WorkbookFunctionsAtanhRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsAveDevRequestParameter undocumented
type WorkbookFunctionsAveDevRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsAverageRequestParameter undocumented
type WorkbookFunctionsAverageRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsAverageARequestParameter undocumented
type WorkbookFunctionsAverageARequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsAverageIfRequestParameter undocumented
type WorkbookFunctionsAverageIfRequestParameter struct {
	// Range undocumented
	Range json.RawMessage `json:"range,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
	// AverageRange undocumented
	AverageRange json.RawMessage `json:"averageRange,omitempty"`
}

// WorkbookFunctionsAverageIfsRequestParameter undocumented
type WorkbookFunctionsAverageIfsRequestParameter struct {
	// AverageRange undocumented
	AverageRange json.RawMessage `json:"averageRange,omitempty"`
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsBahtTextRequestParameter undocumented
type WorkbookFunctionsBahtTextRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsBaseRequestParameter undocumented
type WorkbookFunctionsBaseRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Radix undocumented
	Radix json.RawMessage `json:"radix,omitempty"`
	// MinLength undocumented
	MinLength json.RawMessage `json:"minLength,omitempty"`
}

// WorkbookFunctionsBesselIRequestParameter undocumented
type WorkbookFunctionsBesselIRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// N undocumented
	N json.RawMessage `json:"n,omitempty"`
}

// WorkbookFunctionsBesselJRequestParameter undocumented
type WorkbookFunctionsBesselJRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// N undocumented
	N json.RawMessage `json:"n,omitempty"`
}

// WorkbookFunctionsBesselKRequestParameter undocumented
type WorkbookFunctionsBesselKRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// N undocumented
	N json.RawMessage `json:"n,omitempty"`
}

// WorkbookFunctionsBesselYRequestParameter undocumented
type WorkbookFunctionsBesselYRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// N undocumented
	N json.RawMessage `json:"n,omitempty"`
}

// WorkbookFunctionsBeta_DistRequestParameter undocumented
type WorkbookFunctionsBeta_DistRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// Alpha undocumented
	Alpha json.RawMessage `json:"alpha,omitempty"`
	// Beta undocumented
	Beta json.RawMessage `json:"beta,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
	// A undocumented
	A json.RawMessage `json:"A,omitempty"`
	// B undocumented
	B json.RawMessage `json:"B,omitempty"`
}

// WorkbookFunctionsBeta_InvRequestParameter undocumented
type WorkbookFunctionsBeta_InvRequestParameter struct {
	// Probability undocumented
	Probability json.RawMessage `json:"probability,omitempty"`
	// Alpha undocumented
	Alpha json.RawMessage `json:"alpha,omitempty"`
	// Beta undocumented
	Beta json.RawMessage `json:"beta,omitempty"`
	// A undocumented
	A json.RawMessage `json:"A,omitempty"`
	// B undocumented
	B json.RawMessage `json:"B,omitempty"`
}

// WorkbookFunctionsBin2DecRequestParameter undocumented
type WorkbookFunctionsBin2DecRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsBin2HexRequestParameter undocumented
type WorkbookFunctionsBin2HexRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Places undocumented
	Places json.RawMessage `json:"places,omitempty"`
}

// WorkbookFunctionsBin2OctRequestParameter undocumented
type WorkbookFunctionsBin2OctRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Places undocumented
	Places json.RawMessage `json:"places,omitempty"`
}

// WorkbookFunctionsBinom_DistRequestParameter undocumented
type WorkbookFunctionsBinom_DistRequestParameter struct {
	// NumberS undocumented
	NumberS json.RawMessage `json:"numberS,omitempty"`
	// Trials undocumented
	Trials json.RawMessage `json:"trials,omitempty"`
	// ProbabilityS undocumented
	ProbabilityS json.RawMessage `json:"probabilityS,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
}

// WorkbookFunctionsBinom_Dist_RangeRequestParameter undocumented
type WorkbookFunctionsBinom_Dist_RangeRequestParameter struct {
	// Trials undocumented
	Trials json.RawMessage `json:"trials,omitempty"`
	// ProbabilityS undocumented
	ProbabilityS json.RawMessage `json:"probabilityS,omitempty"`
	// NumberS undocumented
	NumberS json.RawMessage `json:"numberS,omitempty"`
	// NumberS2 undocumented
	NumberS2 json.RawMessage `json:"numberS2,omitempty"`
}

// WorkbookFunctionsBinom_InvRequestParameter undocumented
type WorkbookFunctionsBinom_InvRequestParameter struct {
	// Trials undocumented
	Trials json.RawMessage `json:"trials,omitempty"`
	// ProbabilityS undocumented
	ProbabilityS json.RawMessage `json:"probabilityS,omitempty"`
	// Alpha undocumented
	Alpha json.RawMessage `json:"alpha,omitempty"`
}

// WorkbookFunctionsBitandRequestParameter undocumented
type WorkbookFunctionsBitandRequestParameter struct {
	// Number1 undocumented
	Number1 json.RawMessage `json:"number1,omitempty"`
	// Number2 undocumented
	Number2 json.RawMessage `json:"number2,omitempty"`
}

// WorkbookFunctionsBitlshiftRequestParameter undocumented
type WorkbookFunctionsBitlshiftRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// ShiftAmount undocumented
	ShiftAmount json.RawMessage `json:"shiftAmount,omitempty"`
}

// WorkbookFunctionsBitorRequestParameter undocumented
type WorkbookFunctionsBitorRequestParameter struct {
	// Number1 undocumented
	Number1 json.RawMessage `json:"number1,omitempty"`
	// Number2 undocumented
	Number2 json.RawMessage `json:"number2,omitempty"`
}

// WorkbookFunctionsBitrshiftRequestParameter undocumented
type WorkbookFunctionsBitrshiftRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// ShiftAmount undocumented
	ShiftAmount json.RawMessage `json:"shiftAmount,omitempty"`
}

// WorkbookFunctionsBitxorRequestParameter undocumented
type WorkbookFunctionsBitxorRequestParameter struct {
	// Number1 undocumented
	Number1 json.RawMessage `json:"number1,omitempty"`
	// Number2 undocumented
	Number2 json.RawMessage `json:"number2,omitempty"`
}

// WorkbookFunctionsCeiling_MathRequestParameter undocumented
type WorkbookFunctionsCeiling_MathRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Significance undocumented
	Significance json.RawMessage `json:"significance,omitempty"`
	// Mode undocumented
	Mode json.RawMessage `json:"mode,omitempty"`
}

// WorkbookFunctionsCeiling_PreciseRequestParameter undocumented
type WorkbookFunctionsCeiling_PreciseRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Significance undocumented
	Significance json.RawMessage `json:"significance,omitempty"`
}

// WorkbookFunctionsCharRequestParameter undocumented
type WorkbookFunctionsCharRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsChiSq_DistRequestParameter undocumented
type WorkbookFunctionsChiSq_DistRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// DegFreedom undocumented
	DegFreedom json.RawMessage `json:"degFreedom,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
}

// WorkbookFunctionsChiSq_Dist_RTRequestParameter undocumented
type WorkbookFunctionsChiSq_Dist_RTRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// DegFreedom undocumented
	DegFreedom json.RawMessage `json:"degFreedom,omitempty"`
}

// WorkbookFunctionsChiSq_InvRequestParameter undocumented
type WorkbookFunctionsChiSq_InvRequestParameter struct {
	// Probability undocumented
	Probability json.RawMessage `json:"probability,omitempty"`
	// DegFreedom undocumented
	DegFreedom json.RawMessage `json:"degFreedom,omitempty"`
}

// WorkbookFunctionsChiSq_Inv_RTRequestParameter undocumented
type WorkbookFunctionsChiSq_Inv_RTRequestParameter struct {
	// Probability undocumented
	Probability json.RawMessage `json:"probability,omitempty"`
	// DegFreedom undocumented
	DegFreedom json.RawMessage `json:"degFreedom,omitempty"`
}

// WorkbookFunctionsChooseRequestParameter undocumented
type WorkbookFunctionsChooseRequestParameter struct {
	// IndexNum undocumented
	IndexNum json.RawMessage `json:"indexNum,omitempty"`
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsCleanRequestParameter undocumented
type WorkbookFunctionsCleanRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
}

// WorkbookFunctionsCodeRequestParameter undocumented
type WorkbookFunctionsCodeRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
}

// WorkbookFunctionsColumnsRequestParameter undocumented
type WorkbookFunctionsColumnsRequestParameter struct {
	// Array undocumented
	Array json.RawMessage `json:"array,omitempty"`
}

// WorkbookFunctionsCombinRequestParameter undocumented
type WorkbookFunctionsCombinRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// NumberChosen undocumented
	NumberChosen json.RawMessage `json:"numberChosen,omitempty"`
}

// WorkbookFunctionsCombinaRequestParameter undocumented
type WorkbookFunctionsCombinaRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// NumberChosen undocumented
	NumberChosen json.RawMessage `json:"numberChosen,omitempty"`
}

// WorkbookFunctionsComplexRequestParameter undocumented
type WorkbookFunctionsComplexRequestParameter struct {
	// RealNum undocumented
	RealNum json.RawMessage `json:"realNum,omitempty"`
	// INum undocumented
	INum json.RawMessage `json:"iNum,omitempty"`
	// Suffix undocumented
	Suffix json.RawMessage `json:"suffix,omitempty"`
}

// WorkbookFunctionsConcatenateRequestParameter undocumented
type WorkbookFunctionsConcatenateRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsConfidence_NormRequestParameter undocumented
type WorkbookFunctionsConfidence_NormRequestParameter struct {
	// Alpha undocumented
	Alpha json.RawMessage `json:"alpha,omitempty"`
	// StandardDev undocumented
	StandardDev json.RawMessage `json:"standardDev,omitempty"`
	// Size undocumented
	Size json.RawMessage `json:"size,omitempty"`
}

// WorkbookFunctionsConfidence_TRequestParameter undocumented
type WorkbookFunctionsConfidence_TRequestParameter struct {
	// Alpha undocumented
	Alpha json.RawMessage `json:"alpha,omitempty"`
	// StandardDev undocumented
	StandardDev json.RawMessage `json:"standardDev,omitempty"`
	// Size undocumented
	Size json.RawMessage `json:"size,omitempty"`
}

// WorkbookFunctionsConvertRequestParameter undocumented
type WorkbookFunctionsConvertRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// FromUnit undocumented
	FromUnit json.RawMessage `json:"fromUnit,omitempty"`
	// ToUnit undocumented
	ToUnit json.RawMessage `json:"toUnit,omitempty"`
}

// WorkbookFunctionsCosRequestParameter undocumented
type WorkbookFunctionsCosRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsCoshRequestParameter undocumented
type WorkbookFunctionsCoshRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsCotRequestParameter undocumented
type WorkbookFunctionsCotRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsCothRequestParameter undocumented
type WorkbookFunctionsCothRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsCountRequestParameter undocumented
type WorkbookFunctionsCountRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsCountARequestParameter undocumented
type WorkbookFunctionsCountARequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsCountBlankRequestParameter undocumented
type WorkbookFunctionsCountBlankRequestParameter struct {
	// Range undocumented
	Range json.RawMessage `json:"range,omitempty"`
}

// WorkbookFunctionsCountIfRequestParameter undocumented
type WorkbookFunctionsCountIfRequestParameter struct {
	// Range undocumented
	Range json.RawMessage `json:"range,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
}

// WorkbookFunctionsCountIfsRequestParameter undocumented
type WorkbookFunctionsCountIfsRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsCoupDayBsRequestParameter undocumented
type WorkbookFunctionsCoupDayBsRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsCoupDaysRequestParameter undocumented
type WorkbookFunctionsCoupDaysRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsCoupDaysNcRequestParameter undocumented
type WorkbookFunctionsCoupDaysNcRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsCoupNcdRequestParameter undocumented
type WorkbookFunctionsCoupNcdRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsCoupNumRequestParameter undocumented
type WorkbookFunctionsCoupNumRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsCoupPcdRequestParameter undocumented
type WorkbookFunctionsCoupPcdRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsCscRequestParameter undocumented
type WorkbookFunctionsCscRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsCschRequestParameter undocumented
type WorkbookFunctionsCschRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsCumIPmtRequestParameter undocumented
type WorkbookFunctionsCumIPmtRequestParameter struct {
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Nper undocumented
	Nper json.RawMessage `json:"nper,omitempty"`
	// Pv undocumented
	Pv json.RawMessage `json:"pv,omitempty"`
	// StartPeriod undocumented
	StartPeriod json.RawMessage `json:"startPeriod,omitempty"`
	// EndPeriod undocumented
	EndPeriod json.RawMessage `json:"endPeriod,omitempty"`
	// Type undocumented
	Type json.RawMessage `json:"type,omitempty"`
}

// WorkbookFunctionsCumPrincRequestParameter undocumented
type WorkbookFunctionsCumPrincRequestParameter struct {
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Nper undocumented
	Nper json.RawMessage `json:"nper,omitempty"`
	// Pv undocumented
	Pv json.RawMessage `json:"pv,omitempty"`
	// StartPeriod undocumented
	StartPeriod json.RawMessage `json:"startPeriod,omitempty"`
	// EndPeriod undocumented
	EndPeriod json.RawMessage `json:"endPeriod,omitempty"`
	// Type undocumented
	Type json.RawMessage `json:"type,omitempty"`
}

// WorkbookFunctionsDaverageRequestParameter undocumented
type WorkbookFunctionsDaverageRequestParameter struct {
	// Database undocumented
	Database json.RawMessage `json:"database,omitempty"`
	// Field undocumented
	Field json.RawMessage `json:"field,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
}

// WorkbookFunctionsDcountRequestParameter undocumented
type WorkbookFunctionsDcountRequestParameter struct {
	// Database undocumented
	Database json.RawMessage `json:"database,omitempty"`
	// Field undocumented
	Field json.RawMessage `json:"field,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
}

// WorkbookFunctionsDcountARequestParameter undocumented
type WorkbookFunctionsDcountARequestParameter struct {
	// Database undocumented
	Database json.RawMessage `json:"database,omitempty"`
	// Field undocumented
	Field json.RawMessage `json:"field,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
}

// WorkbookFunctionsDgetRequestParameter undocumented
type WorkbookFunctionsDgetRequestParameter struct {
	// Database undocumented
	Database json.RawMessage `json:"database,omitempty"`
	// Field undocumented
	Field json.RawMessage `json:"field,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
}

// WorkbookFunctionsDmaxRequestParameter undocumented
type WorkbookFunctionsDmaxRequestParameter struct {
	// Database undocumented
	Database json.RawMessage `json:"database,omitempty"`
	// Field undocumented
	Field json.RawMessage `json:"field,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
}

// WorkbookFunctionsDminRequestParameter undocumented
type WorkbookFunctionsDminRequestParameter struct {
	// Database undocumented
	Database json.RawMessage `json:"database,omitempty"`
	// Field undocumented
	Field json.RawMessage `json:"field,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
}

// WorkbookFunctionsDproductRequestParameter undocumented
type WorkbookFunctionsDproductRequestParameter struct {
	// Database undocumented
	Database json.RawMessage `json:"database,omitempty"`
	// Field undocumented
	Field json.RawMessage `json:"field,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
}

// WorkbookFunctionsDstDevRequestParameter undocumented
type WorkbookFunctionsDstDevRequestParameter struct {
	// Database undocumented
	Database json.RawMessage `json:"database,omitempty"`
	// Field undocumented
	Field json.RawMessage `json:"field,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
}

// WorkbookFunctionsDstDevPRequestParameter undocumented
type WorkbookFunctionsDstDevPRequestParameter struct {
	// Database undocumented
	Database json.RawMessage `json:"database,omitempty"`
	// Field undocumented
	Field json.RawMessage `json:"field,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
}

// WorkbookFunctionsDsumRequestParameter undocumented
type WorkbookFunctionsDsumRequestParameter struct {
	// Database undocumented
	Database json.RawMessage `json:"database,omitempty"`
	// Field undocumented
	Field json.RawMessage `json:"field,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
}

// WorkbookFunctionsDvarRequestParameter undocumented
type WorkbookFunctionsDvarRequestParameter struct {
	// Database undocumented
	Database json.RawMessage `json:"database,omitempty"`
	// Field undocumented
	Field json.RawMessage `json:"field,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
}

// WorkbookFunctionsDvarPRequestParameter undocumented
type WorkbookFunctionsDvarPRequestParameter struct {
	// Database undocumented
	Database json.RawMessage `json:"database,omitempty"`
	// Field undocumented
	Field json.RawMessage `json:"field,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
}

// WorkbookFunctionsDateRequestParameter undocumented
type WorkbookFunctionsDateRequestParameter struct {
	// Year undocumented
	Year json.RawMessage `json:"year,omitempty"`
	// Month undocumented
	Month json.RawMessage `json:"month,omitempty"`
	// Day undocumented
	Day json.RawMessage `json:"day,omitempty"`
}

// WorkbookFunctionsDatevalueRequestParameter undocumented
type WorkbookFunctionsDatevalueRequestParameter struct {
	// DateText undocumented
	DateText json.RawMessage `json:"dateText,omitempty"`
}

// WorkbookFunctionsDayRequestParameter undocumented
type WorkbookFunctionsDayRequestParameter struct {
	// SerialNumber undocumented
	SerialNumber json.RawMessage `json:"serialNumber,omitempty"`
}

// WorkbookFunctionsDaysRequestParameter undocumented
type WorkbookFunctionsDaysRequestParameter struct {
	// EndDate undocumented
	EndDate json.RawMessage `json:"endDate,omitempty"`
	// StartDate undocumented
	StartDate json.RawMessage `json:"startDate,omitempty"`
}

// WorkbookFunctionsDays360RequestParameter undocumented
type WorkbookFunctionsDays360RequestParameter struct {
	// StartDate undocumented
	StartDate json.RawMessage `json:"startDate,omitempty"`
	// EndDate undocumented
	EndDate json.RawMessage `json:"endDate,omitempty"`
	// Method undocumented
	Method json.RawMessage `json:"method,omitempty"`
}

// WorkbookFunctionsDbRequestParameter undocumented
type WorkbookFunctionsDbRequestParameter struct {
	// Cost undocumented
	Cost json.RawMessage `json:"cost,omitempty"`
	// Salvage undocumented
	Salvage json.RawMessage `json:"salvage,omitempty"`
	// Life undocumented
	Life json.RawMessage `json:"life,omitempty"`
	// Period undocumented
	Period json.RawMessage `json:"period,omitempty"`
	// Month undocumented
	Month json.RawMessage `json:"month,omitempty"`
}

// WorkbookFunctionsDbcsRequestParameter undocumented
type WorkbookFunctionsDbcsRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
}

// WorkbookFunctionsDdbRequestParameter undocumented
type WorkbookFunctionsDdbRequestParameter struct {
	// Cost undocumented
	Cost json.RawMessage `json:"cost,omitempty"`
	// Salvage undocumented
	Salvage json.RawMessage `json:"salvage,omitempty"`
	// Life undocumented
	Life json.RawMessage `json:"life,omitempty"`
	// Period undocumented
	Period json.RawMessage `json:"period,omitempty"`
	// Factor undocumented
	Factor json.RawMessage `json:"factor,omitempty"`
}

// WorkbookFunctionsDec2BinRequestParameter undocumented
type WorkbookFunctionsDec2BinRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Places undocumented
	Places json.RawMessage `json:"places,omitempty"`
}

// WorkbookFunctionsDec2HexRequestParameter undocumented
type WorkbookFunctionsDec2HexRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Places undocumented
	Places json.RawMessage `json:"places,omitempty"`
}

// WorkbookFunctionsDec2OctRequestParameter undocumented
type WorkbookFunctionsDec2OctRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Places undocumented
	Places json.RawMessage `json:"places,omitempty"`
}

// WorkbookFunctionsDecimalRequestParameter undocumented
type WorkbookFunctionsDecimalRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Radix undocumented
	Radix json.RawMessage `json:"radix,omitempty"`
}

// WorkbookFunctionsDegreesRequestParameter undocumented
type WorkbookFunctionsDegreesRequestParameter struct {
	// Angle undocumented
	Angle json.RawMessage `json:"angle,omitempty"`
}

// WorkbookFunctionsDeltaRequestParameter undocumented
type WorkbookFunctionsDeltaRequestParameter struct {
	// Number1 undocumented
	Number1 json.RawMessage `json:"number1,omitempty"`
	// Number2 undocumented
	Number2 json.RawMessage `json:"number2,omitempty"`
}

// WorkbookFunctionsDevSqRequestParameter undocumented
type WorkbookFunctionsDevSqRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsDiscRequestParameter undocumented
type WorkbookFunctionsDiscRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Pr undocumented
	Pr json.RawMessage `json:"pr,omitempty"`
	// Redemption undocumented
	Redemption json.RawMessage `json:"redemption,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsDollarRequestParameter undocumented
type WorkbookFunctionsDollarRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Decimals undocumented
	Decimals json.RawMessage `json:"decimals,omitempty"`
}

// WorkbookFunctionsDollarDeRequestParameter undocumented
type WorkbookFunctionsDollarDeRequestParameter struct {
	// FractionalDollar undocumented
	FractionalDollar json.RawMessage `json:"fractionalDollar,omitempty"`
	// Fraction undocumented
	Fraction json.RawMessage `json:"fraction,omitempty"`
}

// WorkbookFunctionsDollarFrRequestParameter undocumented
type WorkbookFunctionsDollarFrRequestParameter struct {
	// DecimalDollar undocumented
	DecimalDollar json.RawMessage `json:"decimalDollar,omitempty"`
	// Fraction undocumented
	Fraction json.RawMessage `json:"fraction,omitempty"`
}

// WorkbookFunctionsDurationRequestParameter undocumented
type WorkbookFunctionsDurationRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Coupon undocumented
	Coupon json.RawMessage `json:"coupon,omitempty"`
	// Yld undocumented
	Yld json.RawMessage `json:"yld,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsEcma_CeilingRequestParameter undocumented
type WorkbookFunctionsEcma_CeilingRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Significance undocumented
	Significance json.RawMessage `json:"significance,omitempty"`
}

// WorkbookFunctionsEdateRequestParameter undocumented
type WorkbookFunctionsEdateRequestParameter struct {
	// StartDate undocumented
	StartDate json.RawMessage `json:"startDate,omitempty"`
	// Months undocumented
	Months json.RawMessage `json:"months,omitempty"`
}

// WorkbookFunctionsEffectRequestParameter undocumented
type WorkbookFunctionsEffectRequestParameter struct {
	// NominalRate undocumented
	NominalRate json.RawMessage `json:"nominalRate,omitempty"`
	// Npery undocumented
	Npery json.RawMessage `json:"npery,omitempty"`
}

// WorkbookFunctionsEoMonthRequestParameter undocumented
type WorkbookFunctionsEoMonthRequestParameter struct {
	// StartDate undocumented
	StartDate json.RawMessage `json:"startDate,omitempty"`
	// Months undocumented
	Months json.RawMessage `json:"months,omitempty"`
}

// WorkbookFunctionsErfRequestParameter undocumented
type WorkbookFunctionsErfRequestParameter struct {
	// LowerLimit undocumented
	LowerLimit json.RawMessage `json:"lowerLimit,omitempty"`
	// UpperLimit undocumented
	UpperLimit json.RawMessage `json:"upperLimit,omitempty"`
}

// WorkbookFunctionsErfCRequestParameter undocumented
type WorkbookFunctionsErfCRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
}

// WorkbookFunctionsErfC_PreciseRequestParameter undocumented
type WorkbookFunctionsErfC_PreciseRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"X,omitempty"`
}

// WorkbookFunctionsErf_PreciseRequestParameter undocumented
type WorkbookFunctionsErf_PreciseRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"X,omitempty"`
}

// WorkbookFunctionsError_TypeRequestParameter undocumented
type WorkbookFunctionsError_TypeRequestParameter struct {
	// ErrorVal undocumented
	ErrorVal json.RawMessage `json:"errorVal,omitempty"`
}

// WorkbookFunctionsEvenRequestParameter undocumented
type WorkbookFunctionsEvenRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsExactRequestParameter undocumented
type WorkbookFunctionsExactRequestParameter struct {
	// Text1 undocumented
	Text1 json.RawMessage `json:"text1,omitempty"`
	// Text2 undocumented
	Text2 json.RawMessage `json:"text2,omitempty"`
}

// WorkbookFunctionsExpRequestParameter undocumented
type WorkbookFunctionsExpRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsExpon_DistRequestParameter undocumented
type WorkbookFunctionsExpon_DistRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// Lambda undocumented
	Lambda json.RawMessage `json:"lambda,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
}

// WorkbookFunctionsFvscheduleRequestParameter undocumented
type WorkbookFunctionsFvscheduleRequestParameter struct {
	// Principal undocumented
	Principal json.RawMessage `json:"principal,omitempty"`
	// Schedule undocumented
	Schedule json.RawMessage `json:"schedule,omitempty"`
}

// WorkbookFunctionsF_DistRequestParameter undocumented
type WorkbookFunctionsF_DistRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// DegFreedom1 undocumented
	DegFreedom1 json.RawMessage `json:"degFreedom1,omitempty"`
	// DegFreedom2 undocumented
	DegFreedom2 json.RawMessage `json:"degFreedom2,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
}

// WorkbookFunctionsF_Dist_RTRequestParameter undocumented
type WorkbookFunctionsF_Dist_RTRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// DegFreedom1 undocumented
	DegFreedom1 json.RawMessage `json:"degFreedom1,omitempty"`
	// DegFreedom2 undocumented
	DegFreedom2 json.RawMessage `json:"degFreedom2,omitempty"`
}

// WorkbookFunctionsF_InvRequestParameter undocumented
type WorkbookFunctionsF_InvRequestParameter struct {
	// Probability undocumented
	Probability json.RawMessage `json:"probability,omitempty"`
	// DegFreedom1 undocumented
	DegFreedom1 json.RawMessage `json:"degFreedom1,omitempty"`
	// DegFreedom2 undocumented
	DegFreedom2 json.RawMessage `json:"degFreedom2,omitempty"`
}

// WorkbookFunctionsF_Inv_RTRequestParameter undocumented
type WorkbookFunctionsF_Inv_RTRequestParameter struct {
	// Probability undocumented
	Probability json.RawMessage `json:"probability,omitempty"`
	// DegFreedom1 undocumented
	DegFreedom1 json.RawMessage `json:"degFreedom1,omitempty"`
	// DegFreedom2 undocumented
	DegFreedom2 json.RawMessage `json:"degFreedom2,omitempty"`
}

// WorkbookFunctionsFactRequestParameter undocumented
type WorkbookFunctionsFactRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsFactDoubleRequestParameter undocumented
type WorkbookFunctionsFactDoubleRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsFalseRequestParameter undocumented
type WorkbookFunctionsFalseRequestParameter struct {
}

// WorkbookFunctionsFindRequestParameter undocumented
type WorkbookFunctionsFindRequestParameter struct {
	// FindText undocumented
	FindText json.RawMessage `json:"findText,omitempty"`
	// WithinText undocumented
	WithinText json.RawMessage `json:"withinText,omitempty"`
	// StartNum undocumented
	StartNum json.RawMessage `json:"startNum,omitempty"`
}

// WorkbookFunctionsFindBRequestParameter undocumented
type WorkbookFunctionsFindBRequestParameter struct {
	// FindText undocumented
	FindText json.RawMessage `json:"findText,omitempty"`
	// WithinText undocumented
	WithinText json.RawMessage `json:"withinText,omitempty"`
	// StartNum undocumented
	StartNum json.RawMessage `json:"startNum,omitempty"`
}

// WorkbookFunctionsFisherRequestParameter undocumented
type WorkbookFunctionsFisherRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
}

// WorkbookFunctionsFisherInvRequestParameter undocumented
type WorkbookFunctionsFisherInvRequestParameter struct {
	// Y undocumented
	Y json.RawMessage `json:"y,omitempty"`
}

// WorkbookFunctionsFixedRequestParameter undocumented
type WorkbookFunctionsFixedRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Decimals undocumented
	Decimals json.RawMessage `json:"decimals,omitempty"`
	// NoCommas undocumented
	NoCommas json.RawMessage `json:"noCommas,omitempty"`
}

// WorkbookFunctionsFloor_MathRequestParameter undocumented
type WorkbookFunctionsFloor_MathRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Significance undocumented
	Significance json.RawMessage `json:"significance,omitempty"`
	// Mode undocumented
	Mode json.RawMessage `json:"mode,omitempty"`
}

// WorkbookFunctionsFloor_PreciseRequestParameter undocumented
type WorkbookFunctionsFloor_PreciseRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Significance undocumented
	Significance json.RawMessage `json:"significance,omitempty"`
}

// WorkbookFunctionsFvRequestParameter undocumented
type WorkbookFunctionsFvRequestParameter struct {
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Nper undocumented
	Nper json.RawMessage `json:"nper,omitempty"`
	// Pmt undocumented
	Pmt json.RawMessage `json:"pmt,omitempty"`
	// Pv undocumented
	Pv json.RawMessage `json:"pv,omitempty"`
	// Type undocumented
	Type json.RawMessage `json:"type,omitempty"`
}

// WorkbookFunctionsGammaRequestParameter undocumented
type WorkbookFunctionsGammaRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
}

// WorkbookFunctionsGammaLnRequestParameter undocumented
type WorkbookFunctionsGammaLnRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
}

// WorkbookFunctionsGammaLn_PreciseRequestParameter undocumented
type WorkbookFunctionsGammaLn_PreciseRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
}

// WorkbookFunctionsGamma_DistRequestParameter undocumented
type WorkbookFunctionsGamma_DistRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// Alpha undocumented
	Alpha json.RawMessage `json:"alpha,omitempty"`
	// Beta undocumented
	Beta json.RawMessage `json:"beta,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
}

// WorkbookFunctionsGamma_InvRequestParameter undocumented
type WorkbookFunctionsGamma_InvRequestParameter struct {
	// Probability undocumented
	Probability json.RawMessage `json:"probability,omitempty"`
	// Alpha undocumented
	Alpha json.RawMessage `json:"alpha,omitempty"`
	// Beta undocumented
	Beta json.RawMessage `json:"beta,omitempty"`
}

// WorkbookFunctionsGaussRequestParameter undocumented
type WorkbookFunctionsGaussRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
}

// WorkbookFunctionsGcdRequestParameter undocumented
type WorkbookFunctionsGcdRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsGeStepRequestParameter undocumented
type WorkbookFunctionsGeStepRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Step undocumented
	Step json.RawMessage `json:"step,omitempty"`
}

// WorkbookFunctionsGeoMeanRequestParameter undocumented
type WorkbookFunctionsGeoMeanRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsHlookupRequestParameter undocumented
type WorkbookFunctionsHlookupRequestParameter struct {
	// LookupValue undocumented
	LookupValue json.RawMessage `json:"lookupValue,omitempty"`
	// TableArray undocumented
	TableArray json.RawMessage `json:"tableArray,omitempty"`
	// RowIndexNum undocumented
	RowIndexNum json.RawMessage `json:"rowIndexNum,omitempty"`
	// RangeLookup undocumented
	RangeLookup json.RawMessage `json:"rangeLookup,omitempty"`
}

// WorkbookFunctionsHarMeanRequestParameter undocumented
type WorkbookFunctionsHarMeanRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsHex2BinRequestParameter undocumented
type WorkbookFunctionsHex2BinRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Places undocumented
	Places json.RawMessage `json:"places,omitempty"`
}

// WorkbookFunctionsHex2DecRequestParameter undocumented
type WorkbookFunctionsHex2DecRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsHex2OctRequestParameter undocumented
type WorkbookFunctionsHex2OctRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Places undocumented
	Places json.RawMessage `json:"places,omitempty"`
}

// WorkbookFunctionsHourRequestParameter undocumented
type WorkbookFunctionsHourRequestParameter struct {
	// SerialNumber undocumented
	SerialNumber json.RawMessage `json:"serialNumber,omitempty"`
}

// WorkbookFunctionsHypGeom_DistRequestParameter undocumented
type WorkbookFunctionsHypGeom_DistRequestParameter struct {
	// SampleS undocumented
	SampleS json.RawMessage `json:"sampleS,omitempty"`
	// NumberSample undocumented
	NumberSample json.RawMessage `json:"numberSample,omitempty"`
	// PopulationS undocumented
	PopulationS json.RawMessage `json:"populationS,omitempty"`
	// NumberPop undocumented
	NumberPop json.RawMessage `json:"numberPop,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
}

// WorkbookFunctionsHyperlinkRequestParameter undocumented
type WorkbookFunctionsHyperlinkRequestParameter struct {
	// LinkLocation undocumented
	LinkLocation json.RawMessage `json:"linkLocation,omitempty"`
	// FriendlyName undocumented
	FriendlyName json.RawMessage `json:"friendlyName,omitempty"`
}

// WorkbookFunctionsIso_CeilingRequestParameter undocumented
type WorkbookFunctionsIso_CeilingRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Significance undocumented
	Significance json.RawMessage `json:"significance,omitempty"`
}

// WorkbookFunctionsIfRequestParameter undocumented
type WorkbookFunctionsIfRequestParameter struct {
	// LogicalTest undocumented
	LogicalTest json.RawMessage `json:"logicalTest,omitempty"`
	// ValueIfTrue undocumented
	ValueIfTrue json.RawMessage `json:"valueIfTrue,omitempty"`
	// ValueIfFalse undocumented
	ValueIfFalse json.RawMessage `json:"valueIfFalse,omitempty"`
}

// WorkbookFunctionsImAbsRequestParameter undocumented
type WorkbookFunctionsImAbsRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImArgumentRequestParameter undocumented
type WorkbookFunctionsImArgumentRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImConjugateRequestParameter undocumented
type WorkbookFunctionsImConjugateRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImCosRequestParameter undocumented
type WorkbookFunctionsImCosRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImCoshRequestParameter undocumented
type WorkbookFunctionsImCoshRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImCotRequestParameter undocumented
type WorkbookFunctionsImCotRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImCscRequestParameter undocumented
type WorkbookFunctionsImCscRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImCschRequestParameter undocumented
type WorkbookFunctionsImCschRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImDivRequestParameter undocumented
type WorkbookFunctionsImDivRequestParameter struct {
	// Inumber1 undocumented
	Inumber1 json.RawMessage `json:"inumber1,omitempty"`
	// Inumber2 undocumented
	Inumber2 json.RawMessage `json:"inumber2,omitempty"`
}

// WorkbookFunctionsImExpRequestParameter undocumented
type WorkbookFunctionsImExpRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImLnRequestParameter undocumented
type WorkbookFunctionsImLnRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImLog10RequestParameter undocumented
type WorkbookFunctionsImLog10RequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImLog2RequestParameter undocumented
type WorkbookFunctionsImLog2RequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImPowerRequestParameter undocumented
type WorkbookFunctionsImPowerRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsImProductRequestParameter undocumented
type WorkbookFunctionsImProductRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsImRealRequestParameter undocumented
type WorkbookFunctionsImRealRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImSecRequestParameter undocumented
type WorkbookFunctionsImSecRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImSechRequestParameter undocumented
type WorkbookFunctionsImSechRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImSinRequestParameter undocumented
type WorkbookFunctionsImSinRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImSinhRequestParameter undocumented
type WorkbookFunctionsImSinhRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImSqrtRequestParameter undocumented
type WorkbookFunctionsImSqrtRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImSubRequestParameter undocumented
type WorkbookFunctionsImSubRequestParameter struct {
	// Inumber1 undocumented
	Inumber1 json.RawMessage `json:"inumber1,omitempty"`
	// Inumber2 undocumented
	Inumber2 json.RawMessage `json:"inumber2,omitempty"`
}

// WorkbookFunctionsImSumRequestParameter undocumented
type WorkbookFunctionsImSumRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsImTanRequestParameter undocumented
type WorkbookFunctionsImTanRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsImaginaryRequestParameter undocumented
type WorkbookFunctionsImaginaryRequestParameter struct {
	// Inumber undocumented
	Inumber json.RawMessage `json:"inumber,omitempty"`
}

// WorkbookFunctionsIntRequestParameter undocumented
type WorkbookFunctionsIntRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsIntRateRequestParameter undocumented
type WorkbookFunctionsIntRateRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Investment undocumented
	Investment json.RawMessage `json:"investment,omitempty"`
	// Redemption undocumented
	Redemption json.RawMessage `json:"redemption,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsIpmtRequestParameter undocumented
type WorkbookFunctionsIpmtRequestParameter struct {
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Per undocumented
	Per json.RawMessage `json:"per,omitempty"`
	// Nper undocumented
	Nper json.RawMessage `json:"nper,omitempty"`
	// Pv undocumented
	Pv json.RawMessage `json:"pv,omitempty"`
	// Fv undocumented
	Fv json.RawMessage `json:"fv,omitempty"`
	// Type undocumented
	Type json.RawMessage `json:"type,omitempty"`
}

// WorkbookFunctionsIrrRequestParameter undocumented
type WorkbookFunctionsIrrRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
	// Guess undocumented
	Guess json.RawMessage `json:"guess,omitempty"`
}

// WorkbookFunctionsIsErrRequestParameter undocumented
type WorkbookFunctionsIsErrRequestParameter struct {
	// Value undocumented
	Value json.RawMessage `json:"value,omitempty"`
}

// WorkbookFunctionsIsErrorRequestParameter undocumented
type WorkbookFunctionsIsErrorRequestParameter struct {
	// Value undocumented
	Value json.RawMessage `json:"value,omitempty"`
}

// WorkbookFunctionsIsEvenRequestParameter undocumented
type WorkbookFunctionsIsEvenRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsIsFormulaRequestParameter undocumented
type WorkbookFunctionsIsFormulaRequestParameter struct {
	// Reference undocumented
	Reference json.RawMessage `json:"reference,omitempty"`
}

// WorkbookFunctionsIsLogicalRequestParameter undocumented
type WorkbookFunctionsIsLogicalRequestParameter struct {
	// Value undocumented
	Value json.RawMessage `json:"value,omitempty"`
}

// WorkbookFunctionsIsNARequestParameter undocumented
type WorkbookFunctionsIsNARequestParameter struct {
	// Value undocumented
	Value json.RawMessage `json:"value,omitempty"`
}

// WorkbookFunctionsIsNonTextRequestParameter undocumented
type WorkbookFunctionsIsNonTextRequestParameter struct {
	// Value undocumented
	Value json.RawMessage `json:"value,omitempty"`
}

// WorkbookFunctionsIsNumberRequestParameter undocumented
type WorkbookFunctionsIsNumberRequestParameter struct {
	// Value undocumented
	Value json.RawMessage `json:"value,omitempty"`
}

// WorkbookFunctionsIsOddRequestParameter undocumented
type WorkbookFunctionsIsOddRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsIsTextRequestParameter undocumented
type WorkbookFunctionsIsTextRequestParameter struct {
	// Value undocumented
	Value json.RawMessage `json:"value,omitempty"`
}

// WorkbookFunctionsIsoWeekNumRequestParameter undocumented
type WorkbookFunctionsIsoWeekNumRequestParameter struct {
	// Date undocumented
	Date json.RawMessage `json:"date,omitempty"`
}

// WorkbookFunctionsIspmtRequestParameter undocumented
type WorkbookFunctionsIspmtRequestParameter struct {
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Per undocumented
	Per json.RawMessage `json:"per,omitempty"`
	// Nper undocumented
	Nper json.RawMessage `json:"nper,omitempty"`
	// Pv undocumented
	Pv json.RawMessage `json:"pv,omitempty"`
}

// WorkbookFunctionsIsrefRequestParameter undocumented
type WorkbookFunctionsIsrefRequestParameter struct {
	// Value undocumented
	Value json.RawMessage `json:"value,omitempty"`
}

// WorkbookFunctionsKurtRequestParameter undocumented
type WorkbookFunctionsKurtRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsLargeRequestParameter undocumented
type WorkbookFunctionsLargeRequestParameter struct {
	// Array undocumented
	Array json.RawMessage `json:"array,omitempty"`
	// K undocumented
	K json.RawMessage `json:"k,omitempty"`
}

// WorkbookFunctionsLcmRequestParameter undocumented
type WorkbookFunctionsLcmRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsLeftRequestParameter undocumented
type WorkbookFunctionsLeftRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
	// NumChars undocumented
	NumChars json.RawMessage `json:"numChars,omitempty"`
}

// WorkbookFunctionsLeftbRequestParameter undocumented
type WorkbookFunctionsLeftbRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
	// NumBytes undocumented
	NumBytes json.RawMessage `json:"numBytes,omitempty"`
}

// WorkbookFunctionsLenRequestParameter undocumented
type WorkbookFunctionsLenRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
}

// WorkbookFunctionsLenbRequestParameter undocumented
type WorkbookFunctionsLenbRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
}

// WorkbookFunctionsLnRequestParameter undocumented
type WorkbookFunctionsLnRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsLogRequestParameter undocumented
type WorkbookFunctionsLogRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Base undocumented
	Base json.RawMessage `json:"base,omitempty"`
}

// WorkbookFunctionsLog10RequestParameter undocumented
type WorkbookFunctionsLog10RequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsLogNorm_DistRequestParameter undocumented
type WorkbookFunctionsLogNorm_DistRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// Mean undocumented
	Mean json.RawMessage `json:"mean,omitempty"`
	// StandardDev undocumented
	StandardDev json.RawMessage `json:"standardDev,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
}

// WorkbookFunctionsLogNorm_InvRequestParameter undocumented
type WorkbookFunctionsLogNorm_InvRequestParameter struct {
	// Probability undocumented
	Probability json.RawMessage `json:"probability,omitempty"`
	// Mean undocumented
	Mean json.RawMessage `json:"mean,omitempty"`
	// StandardDev undocumented
	StandardDev json.RawMessage `json:"standardDev,omitempty"`
}

// WorkbookFunctionsLookupRequestParameter undocumented
type WorkbookFunctionsLookupRequestParameter struct {
	// LookupValue undocumented
	LookupValue json.RawMessage `json:"lookupValue,omitempty"`
	// LookupVector undocumented
	LookupVector json.RawMessage `json:"lookupVector,omitempty"`
	// ResultVector undocumented
	ResultVector json.RawMessage `json:"resultVector,omitempty"`
}

// WorkbookFunctionsLowerRequestParameter undocumented
type WorkbookFunctionsLowerRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
}

// WorkbookFunctionsMdurationRequestParameter undocumented
type WorkbookFunctionsMdurationRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Coupon undocumented
	Coupon json.RawMessage `json:"coupon,omitempty"`
	// Yld undocumented
	Yld json.RawMessage `json:"yld,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsMirrRequestParameter undocumented
type WorkbookFunctionsMirrRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
	// FinanceRate undocumented
	FinanceRate json.RawMessage `json:"financeRate,omitempty"`
	// ReinvestRate undocumented
	ReinvestRate json.RawMessage `json:"reinvestRate,omitempty"`
}

// WorkbookFunctionsMroundRequestParameter undocumented
type WorkbookFunctionsMroundRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Multiple undocumented
	Multiple json.RawMessage `json:"multiple,omitempty"`
}

// WorkbookFunctionsMatchRequestParameter undocumented
type WorkbookFunctionsMatchRequestParameter struct {
	// LookupValue undocumented
	LookupValue json.RawMessage `json:"lookupValue,omitempty"`
	// LookupArray undocumented
	LookupArray json.RawMessage `json:"lookupArray,omitempty"`
	// MatchType undocumented
	MatchType json.RawMessage `json:"matchType,omitempty"`
}

// WorkbookFunctionsMaxRequestParameter undocumented
type WorkbookFunctionsMaxRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsMaxARequestParameter undocumented
type WorkbookFunctionsMaxARequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsMedianRequestParameter undocumented
type WorkbookFunctionsMedianRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsMidRequestParameter undocumented
type WorkbookFunctionsMidRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
	// StartNum undocumented
	StartNum json.RawMessage `json:"startNum,omitempty"`
	// NumChars undocumented
	NumChars json.RawMessage `json:"numChars,omitempty"`
}

// WorkbookFunctionsMidbRequestParameter undocumented
type WorkbookFunctionsMidbRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
	// StartNum undocumented
	StartNum json.RawMessage `json:"startNum,omitempty"`
	// NumBytes undocumented
	NumBytes json.RawMessage `json:"numBytes,omitempty"`
}

// WorkbookFunctionsMinRequestParameter undocumented
type WorkbookFunctionsMinRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsMinARequestParameter undocumented
type WorkbookFunctionsMinARequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsMinuteRequestParameter undocumented
type WorkbookFunctionsMinuteRequestParameter struct {
	// SerialNumber undocumented
	SerialNumber json.RawMessage `json:"serialNumber,omitempty"`
}

// WorkbookFunctionsModRequestParameter undocumented
type WorkbookFunctionsModRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Divisor undocumented
	Divisor json.RawMessage `json:"divisor,omitempty"`
}

// WorkbookFunctionsMonthRequestParameter undocumented
type WorkbookFunctionsMonthRequestParameter struct {
	// SerialNumber undocumented
	SerialNumber json.RawMessage `json:"serialNumber,omitempty"`
}

// WorkbookFunctionsMultiNomialRequestParameter undocumented
type WorkbookFunctionsMultiNomialRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsNRequestParameter undocumented
type WorkbookFunctionsNRequestParameter struct {
	// Value undocumented
	Value json.RawMessage `json:"value,omitempty"`
}

// WorkbookFunctionsNperRequestParameter undocumented
type WorkbookFunctionsNperRequestParameter struct {
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Pmt undocumented
	Pmt json.RawMessage `json:"pmt,omitempty"`
	// Pv undocumented
	Pv json.RawMessage `json:"pv,omitempty"`
	// Fv undocumented
	Fv json.RawMessage `json:"fv,omitempty"`
	// Type undocumented
	Type json.RawMessage `json:"type,omitempty"`
}

// WorkbookFunctionsNaRequestParameter undocumented
type WorkbookFunctionsNaRequestParameter struct {
}

// WorkbookFunctionsNegBinom_DistRequestParameter undocumented
type WorkbookFunctionsNegBinom_DistRequestParameter struct {
	// NumberF undocumented
	NumberF json.RawMessage `json:"numberF,omitempty"`
	// NumberS undocumented
	NumberS json.RawMessage `json:"numberS,omitempty"`
	// ProbabilityS undocumented
	ProbabilityS json.RawMessage `json:"probabilityS,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
}

// WorkbookFunctionsNetworkDaysRequestParameter undocumented
type WorkbookFunctionsNetworkDaysRequestParameter struct {
	// StartDate undocumented
	StartDate json.RawMessage `json:"startDate,omitempty"`
	// EndDate undocumented
	EndDate json.RawMessage `json:"endDate,omitempty"`
	// Holidays undocumented
	Holidays json.RawMessage `json:"holidays,omitempty"`
}

// WorkbookFunctionsNetworkDays_IntlRequestParameter undocumented
type WorkbookFunctionsNetworkDays_IntlRequestParameter struct {
	// StartDate undocumented
	StartDate json.RawMessage `json:"startDate,omitempty"`
	// EndDate undocumented
	EndDate json.RawMessage `json:"endDate,omitempty"`
	// Weekend undocumented
	Weekend json.RawMessage `json:"weekend,omitempty"`
	// Holidays undocumented
	Holidays json.RawMessage `json:"holidays,omitempty"`
}

// WorkbookFunctionsNominalRequestParameter undocumented
type WorkbookFunctionsNominalRequestParameter struct {
	// EffectRate undocumented
	EffectRate json.RawMessage `json:"effectRate,omitempty"`
	// Npery undocumented
	Npery json.RawMessage `json:"npery,omitempty"`
}

// WorkbookFunctionsNorm_DistRequestParameter undocumented
type WorkbookFunctionsNorm_DistRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// Mean undocumented
	Mean json.RawMessage `json:"mean,omitempty"`
	// StandardDev undocumented
	StandardDev json.RawMessage `json:"standardDev,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
}

// WorkbookFunctionsNorm_InvRequestParameter undocumented
type WorkbookFunctionsNorm_InvRequestParameter struct {
	// Probability undocumented
	Probability json.RawMessage `json:"probability,omitempty"`
	// Mean undocumented
	Mean json.RawMessage `json:"mean,omitempty"`
	// StandardDev undocumented
	StandardDev json.RawMessage `json:"standardDev,omitempty"`
}

// WorkbookFunctionsNorm_S_DistRequestParameter undocumented
type WorkbookFunctionsNorm_S_DistRequestParameter struct {
	// Z undocumented
	Z json.RawMessage `json:"z,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
}

// WorkbookFunctionsNorm_S_InvRequestParameter undocumented
type WorkbookFunctionsNorm_S_InvRequestParameter struct {
	// Probability undocumented
	Probability json.RawMessage `json:"probability,omitempty"`
}

// WorkbookFunctionsNotRequestParameter undocumented
type WorkbookFunctionsNotRequestParameter struct {
	// Logical undocumented
	Logical json.RawMessage `json:"logical,omitempty"`
}

// WorkbookFunctionsNowRequestParameter undocumented
type WorkbookFunctionsNowRequestParameter struct {
}

// WorkbookFunctionsNpvRequestParameter undocumented
type WorkbookFunctionsNpvRequestParameter struct {
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsNumberValueRequestParameter undocumented
type WorkbookFunctionsNumberValueRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
	// DecimalSeparator undocumented
	DecimalSeparator json.RawMessage `json:"decimalSeparator,omitempty"`
	// GroupSeparator undocumented
	GroupSeparator json.RawMessage `json:"groupSeparator,omitempty"`
}

// WorkbookFunctionsOct2BinRequestParameter undocumented
type WorkbookFunctionsOct2BinRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Places undocumented
	Places json.RawMessage `json:"places,omitempty"`
}

// WorkbookFunctionsOct2DecRequestParameter undocumented
type WorkbookFunctionsOct2DecRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsOct2HexRequestParameter undocumented
type WorkbookFunctionsOct2HexRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Places undocumented
	Places json.RawMessage `json:"places,omitempty"`
}

// WorkbookFunctionsOddRequestParameter undocumented
type WorkbookFunctionsOddRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsOddFPriceRequestParameter undocumented
type WorkbookFunctionsOddFPriceRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Issue undocumented
	Issue json.RawMessage `json:"issue,omitempty"`
	// FirstCoupon undocumented
	FirstCoupon json.RawMessage `json:"firstCoupon,omitempty"`
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Yld undocumented
	Yld json.RawMessage `json:"yld,omitempty"`
	// Redemption undocumented
	Redemption json.RawMessage `json:"redemption,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsOddFYieldRequestParameter undocumented
type WorkbookFunctionsOddFYieldRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Issue undocumented
	Issue json.RawMessage `json:"issue,omitempty"`
	// FirstCoupon undocumented
	FirstCoupon json.RawMessage `json:"firstCoupon,omitempty"`
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Pr undocumented
	Pr json.RawMessage `json:"pr,omitempty"`
	// Redemption undocumented
	Redemption json.RawMessage `json:"redemption,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsOddLPriceRequestParameter undocumented
type WorkbookFunctionsOddLPriceRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// LastInterest undocumented
	LastInterest json.RawMessage `json:"lastInterest,omitempty"`
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Yld undocumented
	Yld json.RawMessage `json:"yld,omitempty"`
	// Redemption undocumented
	Redemption json.RawMessage `json:"redemption,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsOddLYieldRequestParameter undocumented
type WorkbookFunctionsOddLYieldRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// LastInterest undocumented
	LastInterest json.RawMessage `json:"lastInterest,omitempty"`
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Pr undocumented
	Pr json.RawMessage `json:"pr,omitempty"`
	// Redemption undocumented
	Redemption json.RawMessage `json:"redemption,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsOrRequestParameter undocumented
type WorkbookFunctionsOrRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsPdurationRequestParameter undocumented
type WorkbookFunctionsPdurationRequestParameter struct {
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Pv undocumented
	Pv json.RawMessage `json:"pv,omitempty"`
	// Fv undocumented
	Fv json.RawMessage `json:"fv,omitempty"`
}

// WorkbookFunctionsPercentRank_ExcRequestParameter undocumented
type WorkbookFunctionsPercentRank_ExcRequestParameter struct {
	// Array undocumented
	Array json.RawMessage `json:"array,omitempty"`
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// Significance undocumented
	Significance json.RawMessage `json:"significance,omitempty"`
}

// WorkbookFunctionsPercentRank_IncRequestParameter undocumented
type WorkbookFunctionsPercentRank_IncRequestParameter struct {
	// Array undocumented
	Array json.RawMessage `json:"array,omitempty"`
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// Significance undocumented
	Significance json.RawMessage `json:"significance,omitempty"`
}

// WorkbookFunctionsPercentile_ExcRequestParameter undocumented
type WorkbookFunctionsPercentile_ExcRequestParameter struct {
	// Array undocumented
	Array json.RawMessage `json:"array,omitempty"`
	// K undocumented
	K json.RawMessage `json:"k,omitempty"`
}

// WorkbookFunctionsPercentile_IncRequestParameter undocumented
type WorkbookFunctionsPercentile_IncRequestParameter struct {
	// Array undocumented
	Array json.RawMessage `json:"array,omitempty"`
	// K undocumented
	K json.RawMessage `json:"k,omitempty"`
}

// WorkbookFunctionsPermutRequestParameter undocumented
type WorkbookFunctionsPermutRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// NumberChosen undocumented
	NumberChosen json.RawMessage `json:"numberChosen,omitempty"`
}

// WorkbookFunctionsPermutationaRequestParameter undocumented
type WorkbookFunctionsPermutationaRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// NumberChosen undocumented
	NumberChosen json.RawMessage `json:"numberChosen,omitempty"`
}

// WorkbookFunctionsPhiRequestParameter undocumented
type WorkbookFunctionsPhiRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
}

// WorkbookFunctionsPiRequestParameter undocumented
type WorkbookFunctionsPiRequestParameter struct {
}

// WorkbookFunctionsPmtRequestParameter undocumented
type WorkbookFunctionsPmtRequestParameter struct {
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Nper undocumented
	Nper json.RawMessage `json:"nper,omitempty"`
	// Pv undocumented
	Pv json.RawMessage `json:"pv,omitempty"`
	// Fv undocumented
	Fv json.RawMessage `json:"fv,omitempty"`
	// Type undocumented
	Type json.RawMessage `json:"type,omitempty"`
}

// WorkbookFunctionsPoisson_DistRequestParameter undocumented
type WorkbookFunctionsPoisson_DistRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// Mean undocumented
	Mean json.RawMessage `json:"mean,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
}

// WorkbookFunctionsPowerRequestParameter undocumented
type WorkbookFunctionsPowerRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Power undocumented
	Power json.RawMessage `json:"power,omitempty"`
}

// WorkbookFunctionsPpmtRequestParameter undocumented
type WorkbookFunctionsPpmtRequestParameter struct {
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Per undocumented
	Per json.RawMessage `json:"per,omitempty"`
	// Nper undocumented
	Nper json.RawMessage `json:"nper,omitempty"`
	// Pv undocumented
	Pv json.RawMessage `json:"pv,omitempty"`
	// Fv undocumented
	Fv json.RawMessage `json:"fv,omitempty"`
	// Type undocumented
	Type json.RawMessage `json:"type,omitempty"`
}

// WorkbookFunctionsPriceRequestParameter undocumented
type WorkbookFunctionsPriceRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Yld undocumented
	Yld json.RawMessage `json:"yld,omitempty"`
	// Redemption undocumented
	Redemption json.RawMessage `json:"redemption,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsPriceDiscRequestParameter undocumented
type WorkbookFunctionsPriceDiscRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Discount undocumented
	Discount json.RawMessage `json:"discount,omitempty"`
	// Redemption undocumented
	Redemption json.RawMessage `json:"redemption,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsPriceMatRequestParameter undocumented
type WorkbookFunctionsPriceMatRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Issue undocumented
	Issue json.RawMessage `json:"issue,omitempty"`
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Yld undocumented
	Yld json.RawMessage `json:"yld,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsProductRequestParameter undocumented
type WorkbookFunctionsProductRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsProperRequestParameter undocumented
type WorkbookFunctionsProperRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
}

// WorkbookFunctionsPvRequestParameter undocumented
type WorkbookFunctionsPvRequestParameter struct {
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Nper undocumented
	Nper json.RawMessage `json:"nper,omitempty"`
	// Pmt undocumented
	Pmt json.RawMessage `json:"pmt,omitempty"`
	// Fv undocumented
	Fv json.RawMessage `json:"fv,omitempty"`
	// Type undocumented
	Type json.RawMessage `json:"type,omitempty"`
}

// WorkbookFunctionsQuartile_ExcRequestParameter undocumented
type WorkbookFunctionsQuartile_ExcRequestParameter struct {
	// Array undocumented
	Array json.RawMessage `json:"array,omitempty"`
	// Quart undocumented
	Quart json.RawMessage `json:"quart,omitempty"`
}

// WorkbookFunctionsQuartile_IncRequestParameter undocumented
type WorkbookFunctionsQuartile_IncRequestParameter struct {
	// Array undocumented
	Array json.RawMessage `json:"array,omitempty"`
	// Quart undocumented
	Quart json.RawMessage `json:"quart,omitempty"`
}

// WorkbookFunctionsQuotientRequestParameter undocumented
type WorkbookFunctionsQuotientRequestParameter struct {
	// Numerator undocumented
	Numerator json.RawMessage `json:"numerator,omitempty"`
	// Denominator undocumented
	Denominator json.RawMessage `json:"denominator,omitempty"`
}

// WorkbookFunctionsRadiansRequestParameter undocumented
type WorkbookFunctionsRadiansRequestParameter struct {
	// Angle undocumented
	Angle json.RawMessage `json:"angle,omitempty"`
}

// WorkbookFunctionsRandRequestParameter undocumented
type WorkbookFunctionsRandRequestParameter struct {
}

// WorkbookFunctionsRandBetweenRequestParameter undocumented
type WorkbookFunctionsRandBetweenRequestParameter struct {
	// Bottom undocumented
	Bottom json.RawMessage `json:"bottom,omitempty"`
	// Top undocumented
	Top json.RawMessage `json:"top,omitempty"`
}

// WorkbookFunctionsRank_AvgRequestParameter undocumented
type WorkbookFunctionsRank_AvgRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Ref undocumented
	Ref json.RawMessage `json:"ref,omitempty"`
	// Order undocumented
	Order json.RawMessage `json:"order,omitempty"`
}

// WorkbookFunctionsRank_EqRequestParameter undocumented
type WorkbookFunctionsRank_EqRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Ref undocumented
	Ref json.RawMessage `json:"ref,omitempty"`
	// Order undocumented
	Order json.RawMessage `json:"order,omitempty"`
}

// WorkbookFunctionsRateRequestParameter undocumented
type WorkbookFunctionsRateRequestParameter struct {
	// Nper undocumented
	Nper json.RawMessage `json:"nper,omitempty"`
	// Pmt undocumented
	Pmt json.RawMessage `json:"pmt,omitempty"`
	// Pv undocumented
	Pv json.RawMessage `json:"pv,omitempty"`
	// Fv undocumented
	Fv json.RawMessage `json:"fv,omitempty"`
	// Type undocumented
	Type json.RawMessage `json:"type,omitempty"`
	// Guess undocumented
	Guess json.RawMessage `json:"guess,omitempty"`
}

// WorkbookFunctionsReceivedRequestParameter undocumented
type WorkbookFunctionsReceivedRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Investment undocumented
	Investment json.RawMessage `json:"investment,omitempty"`
	// Discount undocumented
	Discount json.RawMessage `json:"discount,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsReplaceRequestParameter undocumented
type WorkbookFunctionsReplaceRequestParameter struct {
	// OldText undocumented
	OldText json.RawMessage `json:"oldText,omitempty"`
	// StartNum undocumented
	StartNum json.RawMessage `json:"startNum,omitempty"`
	// NumChars undocumented
	NumChars json.RawMessage `json:"numChars,omitempty"`
	// NewText undocumented
	NewText json.RawMessage `json:"newText,omitempty"`
}

// WorkbookFunctionsReplaceBRequestParameter undocumented
type WorkbookFunctionsReplaceBRequestParameter struct {
	// OldText undocumented
	OldText json.RawMessage `json:"oldText,omitempty"`
	// StartNum undocumented
	StartNum json.RawMessage `json:"startNum,omitempty"`
	// NumBytes undocumented
	NumBytes json.RawMessage `json:"numBytes,omitempty"`
	// NewText undocumented
	NewText json.RawMessage `json:"newText,omitempty"`
}

// WorkbookFunctionsReptRequestParameter undocumented
type WorkbookFunctionsReptRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
	// NumberTimes undocumented
	NumberTimes json.RawMessage `json:"numberTimes,omitempty"`
}

// WorkbookFunctionsRightRequestParameter undocumented
type WorkbookFunctionsRightRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
	// NumChars undocumented
	NumChars json.RawMessage `json:"numChars,omitempty"`
}

// WorkbookFunctionsRightbRequestParameter undocumented
type WorkbookFunctionsRightbRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
	// NumBytes undocumented
	NumBytes json.RawMessage `json:"numBytes,omitempty"`
}

// WorkbookFunctionsRomanRequestParameter undocumented
type WorkbookFunctionsRomanRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Form undocumented
	Form json.RawMessage `json:"form,omitempty"`
}

// WorkbookFunctionsRoundRequestParameter undocumented
type WorkbookFunctionsRoundRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// NumDigits undocumented
	NumDigits json.RawMessage `json:"numDigits,omitempty"`
}

// WorkbookFunctionsRoundDownRequestParameter undocumented
type WorkbookFunctionsRoundDownRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// NumDigits undocumented
	NumDigits json.RawMessage `json:"numDigits,omitempty"`
}

// WorkbookFunctionsRoundUpRequestParameter undocumented
type WorkbookFunctionsRoundUpRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// NumDigits undocumented
	NumDigits json.RawMessage `json:"numDigits,omitempty"`
}

// WorkbookFunctionsRowsRequestParameter undocumented
type WorkbookFunctionsRowsRequestParameter struct {
	// Array undocumented
	Array json.RawMessage `json:"array,omitempty"`
}

// WorkbookFunctionsRriRequestParameter undocumented
type WorkbookFunctionsRriRequestParameter struct {
	// Nper undocumented
	Nper json.RawMessage `json:"nper,omitempty"`
	// Pv undocumented
	Pv json.RawMessage `json:"pv,omitempty"`
	// Fv undocumented
	Fv json.RawMessage `json:"fv,omitempty"`
}

// WorkbookFunctionsSecRequestParameter undocumented
type WorkbookFunctionsSecRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsSechRequestParameter undocumented
type WorkbookFunctionsSechRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsSecondRequestParameter undocumented
type WorkbookFunctionsSecondRequestParameter struct {
	// SerialNumber undocumented
	SerialNumber json.RawMessage `json:"serialNumber,omitempty"`
}

// WorkbookFunctionsSeriesSumRequestParameter undocumented
type WorkbookFunctionsSeriesSumRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// N undocumented
	N json.RawMessage `json:"n,omitempty"`
	// M undocumented
	M json.RawMessage `json:"m,omitempty"`
	// Coefficients undocumented
	Coefficients json.RawMessage `json:"coefficients,omitempty"`
}

// WorkbookFunctionsSheetRequestParameter undocumented
type WorkbookFunctionsSheetRequestParameter struct {
	// Value undocumented
	Value json.RawMessage `json:"value,omitempty"`
}

// WorkbookFunctionsSheetsRequestParameter undocumented
type WorkbookFunctionsSheetsRequestParameter struct {
	// Reference undocumented
	Reference json.RawMessage `json:"reference,omitempty"`
}

// WorkbookFunctionsSignRequestParameter undocumented
type WorkbookFunctionsSignRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsSinRequestParameter undocumented
type WorkbookFunctionsSinRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsSinhRequestParameter undocumented
type WorkbookFunctionsSinhRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsSkewRequestParameter undocumented
type WorkbookFunctionsSkewRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsSkew_pRequestParameter undocumented
type WorkbookFunctionsSkew_pRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsSlnRequestParameter undocumented
type WorkbookFunctionsSlnRequestParameter struct {
	// Cost undocumented
	Cost json.RawMessage `json:"cost,omitempty"`
	// Salvage undocumented
	Salvage json.RawMessage `json:"salvage,omitempty"`
	// Life undocumented
	Life json.RawMessage `json:"life,omitempty"`
}

// WorkbookFunctionsSmallRequestParameter undocumented
type WorkbookFunctionsSmallRequestParameter struct {
	// Array undocumented
	Array json.RawMessage `json:"array,omitempty"`
	// K undocumented
	K json.RawMessage `json:"k,omitempty"`
}

// WorkbookFunctionsSqrtRequestParameter undocumented
type WorkbookFunctionsSqrtRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsSqrtPiRequestParameter undocumented
type WorkbookFunctionsSqrtPiRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsStDevARequestParameter undocumented
type WorkbookFunctionsStDevARequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsStDevPARequestParameter undocumented
type WorkbookFunctionsStDevPARequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsStDev_PRequestParameter undocumented
type WorkbookFunctionsStDev_PRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsStDev_SRequestParameter undocumented
type WorkbookFunctionsStDev_SRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsStandardizeRequestParameter undocumented
type WorkbookFunctionsStandardizeRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// Mean undocumented
	Mean json.RawMessage `json:"mean,omitempty"`
	// StandardDev undocumented
	StandardDev json.RawMessage `json:"standardDev,omitempty"`
}

// WorkbookFunctionsSubstituteRequestParameter undocumented
type WorkbookFunctionsSubstituteRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
	// OldText undocumented
	OldText json.RawMessage `json:"oldText,omitempty"`
	// NewText undocumented
	NewText json.RawMessage `json:"newText,omitempty"`
	// InstanceNum undocumented
	InstanceNum json.RawMessage `json:"instanceNum,omitempty"`
}

// WorkbookFunctionsSubtotalRequestParameter undocumented
type WorkbookFunctionsSubtotalRequestParameter struct {
	// FunctionNum undocumented
	FunctionNum json.RawMessage `json:"functionNum,omitempty"`
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsSumRequestParameter undocumented
type WorkbookFunctionsSumRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsSumIfRequestParameter undocumented
type WorkbookFunctionsSumIfRequestParameter struct {
	// Range undocumented
	Range json.RawMessage `json:"range,omitempty"`
	// Criteria undocumented
	Criteria json.RawMessage `json:"criteria,omitempty"`
	// SumRange undocumented
	SumRange json.RawMessage `json:"sumRange,omitempty"`
}

// WorkbookFunctionsSumIfsRequestParameter undocumented
type WorkbookFunctionsSumIfsRequestParameter struct {
	// SumRange undocumented
	SumRange json.RawMessage `json:"sumRange,omitempty"`
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsSumSqRequestParameter undocumented
type WorkbookFunctionsSumSqRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsSydRequestParameter undocumented
type WorkbookFunctionsSydRequestParameter struct {
	// Cost undocumented
	Cost json.RawMessage `json:"cost,omitempty"`
	// Salvage undocumented
	Salvage json.RawMessage `json:"salvage,omitempty"`
	// Life undocumented
	Life json.RawMessage `json:"life,omitempty"`
	// Per undocumented
	Per json.RawMessage `json:"per,omitempty"`
}

// WorkbookFunctionsTRequestParameter undocumented
type WorkbookFunctionsTRequestParameter struct {
	// Value undocumented
	Value json.RawMessage `json:"value,omitempty"`
}

// WorkbookFunctionsTbillEqRequestParameter undocumented
type WorkbookFunctionsTbillEqRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Discount undocumented
	Discount json.RawMessage `json:"discount,omitempty"`
}

// WorkbookFunctionsTbillPriceRequestParameter undocumented
type WorkbookFunctionsTbillPriceRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Discount undocumented
	Discount json.RawMessage `json:"discount,omitempty"`
}

// WorkbookFunctionsTbillYieldRequestParameter undocumented
type WorkbookFunctionsTbillYieldRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Pr undocumented
	Pr json.RawMessage `json:"pr,omitempty"`
}

// WorkbookFunctionsT_DistRequestParameter undocumented
type WorkbookFunctionsT_DistRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// DegFreedom undocumented
	DegFreedom json.RawMessage `json:"degFreedom,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
}

// WorkbookFunctionsT_Dist_2TRequestParameter undocumented
type WorkbookFunctionsT_Dist_2TRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// DegFreedom undocumented
	DegFreedom json.RawMessage `json:"degFreedom,omitempty"`
}

// WorkbookFunctionsT_Dist_RTRequestParameter undocumented
type WorkbookFunctionsT_Dist_RTRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// DegFreedom undocumented
	DegFreedom json.RawMessage `json:"degFreedom,omitempty"`
}

// WorkbookFunctionsT_InvRequestParameter undocumented
type WorkbookFunctionsT_InvRequestParameter struct {
	// Probability undocumented
	Probability json.RawMessage `json:"probability,omitempty"`
	// DegFreedom undocumented
	DegFreedom json.RawMessage `json:"degFreedom,omitempty"`
}

// WorkbookFunctionsT_Inv_2TRequestParameter undocumented
type WorkbookFunctionsT_Inv_2TRequestParameter struct {
	// Probability undocumented
	Probability json.RawMessage `json:"probability,omitempty"`
	// DegFreedom undocumented
	DegFreedom json.RawMessage `json:"degFreedom,omitempty"`
}

// WorkbookFunctionsTanRequestParameter undocumented
type WorkbookFunctionsTanRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsTanhRequestParameter undocumented
type WorkbookFunctionsTanhRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsTextRequestParameter undocumented
type WorkbookFunctionsTextRequestParameter struct {
	// Value undocumented
	Value json.RawMessage `json:"value,omitempty"`
	// FormatText undocumented
	FormatText json.RawMessage `json:"formatText,omitempty"`
}

// WorkbookFunctionsTimeRequestParameter undocumented
type WorkbookFunctionsTimeRequestParameter struct {
	// Hour undocumented
	Hour json.RawMessage `json:"hour,omitempty"`
	// Minute undocumented
	Minute json.RawMessage `json:"minute,omitempty"`
	// Second undocumented
	Second json.RawMessage `json:"second,omitempty"`
}

// WorkbookFunctionsTimevalueRequestParameter undocumented
type WorkbookFunctionsTimevalueRequestParameter struct {
	// TimeText undocumented
	TimeText json.RawMessage `json:"timeText,omitempty"`
}

// WorkbookFunctionsTodayRequestParameter undocumented
type WorkbookFunctionsTodayRequestParameter struct {
}

// WorkbookFunctionsTrimRequestParameter undocumented
type WorkbookFunctionsTrimRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
}

// WorkbookFunctionsTrimMeanRequestParameter undocumented
type WorkbookFunctionsTrimMeanRequestParameter struct {
	// Array undocumented
	Array json.RawMessage `json:"array,omitempty"`
	// Percent undocumented
	Percent json.RawMessage `json:"percent,omitempty"`
}

// WorkbookFunctionsTrueRequestParameter undocumented
type WorkbookFunctionsTrueRequestParameter struct {
}

// WorkbookFunctionsTruncRequestParameter undocumented
type WorkbookFunctionsTruncRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// NumDigits undocumented
	NumDigits json.RawMessage `json:"numDigits,omitempty"`
}

// WorkbookFunctionsTypeRequestParameter undocumented
type WorkbookFunctionsTypeRequestParameter struct {
	// Value undocumented
	Value json.RawMessage `json:"value,omitempty"`
}

// WorkbookFunctionsUsdollarRequestParameter undocumented
type WorkbookFunctionsUsdollarRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
	// Decimals undocumented
	Decimals json.RawMessage `json:"decimals,omitempty"`
}

// WorkbookFunctionsUnicharRequestParameter undocumented
type WorkbookFunctionsUnicharRequestParameter struct {
	// Number undocumented
	Number json.RawMessage `json:"number,omitempty"`
}

// WorkbookFunctionsUnicodeRequestParameter undocumented
type WorkbookFunctionsUnicodeRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
}

// WorkbookFunctionsUpperRequestParameter undocumented
type WorkbookFunctionsUpperRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
}

// WorkbookFunctionsVlookupRequestParameter undocumented
type WorkbookFunctionsVlookupRequestParameter struct {
	// LookupValue undocumented
	LookupValue json.RawMessage `json:"lookupValue,omitempty"`
	// TableArray undocumented
	TableArray json.RawMessage `json:"tableArray,omitempty"`
	// ColIndexNum undocumented
	ColIndexNum json.RawMessage `json:"colIndexNum,omitempty"`
	// RangeLookup undocumented
	RangeLookup json.RawMessage `json:"rangeLookup,omitempty"`
}

// WorkbookFunctionsValueRequestParameter undocumented
type WorkbookFunctionsValueRequestParameter struct {
	// Text undocumented
	Text json.RawMessage `json:"text,omitempty"`
}

// WorkbookFunctionsVarARequestParameter undocumented
type WorkbookFunctionsVarARequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsVarPARequestParameter undocumented
type WorkbookFunctionsVarPARequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsVar_PRequestParameter undocumented
type WorkbookFunctionsVar_PRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsVar_SRequestParameter undocumented
type WorkbookFunctionsVar_SRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsVdbRequestParameter undocumented
type WorkbookFunctionsVdbRequestParameter struct {
	// Cost undocumented
	Cost json.RawMessage `json:"cost,omitempty"`
	// Salvage undocumented
	Salvage json.RawMessage `json:"salvage,omitempty"`
	// Life undocumented
	Life json.RawMessage `json:"life,omitempty"`
	// StartPeriod undocumented
	StartPeriod json.RawMessage `json:"startPeriod,omitempty"`
	// EndPeriod undocumented
	EndPeriod json.RawMessage `json:"endPeriod,omitempty"`
	// Factor undocumented
	Factor json.RawMessage `json:"factor,omitempty"`
	// NoSwitch undocumented
	NoSwitch json.RawMessage `json:"noSwitch,omitempty"`
}

// WorkbookFunctionsWeekNumRequestParameter undocumented
type WorkbookFunctionsWeekNumRequestParameter struct {
	// SerialNumber undocumented
	SerialNumber json.RawMessage `json:"serialNumber,omitempty"`
	// ReturnType undocumented
	ReturnType json.RawMessage `json:"returnType,omitempty"`
}

// WorkbookFunctionsWeekdayRequestParameter undocumented
type WorkbookFunctionsWeekdayRequestParameter struct {
	// SerialNumber undocumented
	SerialNumber json.RawMessage `json:"serialNumber,omitempty"`
	// ReturnType undocumented
	ReturnType json.RawMessage `json:"returnType,omitempty"`
}

// WorkbookFunctionsWeibull_DistRequestParameter undocumented
type WorkbookFunctionsWeibull_DistRequestParameter struct {
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// Alpha undocumented
	Alpha json.RawMessage `json:"alpha,omitempty"`
	// Beta undocumented
	Beta json.RawMessage `json:"beta,omitempty"`
	// Cumulative undocumented
	Cumulative json.RawMessage `json:"cumulative,omitempty"`
}

// WorkbookFunctionsWorkDayRequestParameter undocumented
type WorkbookFunctionsWorkDayRequestParameter struct {
	// StartDate undocumented
	StartDate json.RawMessage `json:"startDate,omitempty"`
	// Days undocumented
	Days json.RawMessage `json:"days,omitempty"`
	// Holidays undocumented
	Holidays json.RawMessage `json:"holidays,omitempty"`
}

// WorkbookFunctionsWorkDay_IntlRequestParameter undocumented
type WorkbookFunctionsWorkDay_IntlRequestParameter struct {
	// StartDate undocumented
	StartDate json.RawMessage `json:"startDate,omitempty"`
	// Days undocumented
	Days json.RawMessage `json:"days,omitempty"`
	// Weekend undocumented
	Weekend json.RawMessage `json:"weekend,omitempty"`
	// Holidays undocumented
	Holidays json.RawMessage `json:"holidays,omitempty"`
}

// WorkbookFunctionsXirrRequestParameter undocumented
type WorkbookFunctionsXirrRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
	// Dates undocumented
	Dates json.RawMessage `json:"dates,omitempty"`
	// Guess undocumented
	Guess json.RawMessage `json:"guess,omitempty"`
}

// WorkbookFunctionsXnpvRequestParameter undocumented
type WorkbookFunctionsXnpvRequestParameter struct {
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
	// Dates undocumented
	Dates json.RawMessage `json:"dates,omitempty"`
}

// WorkbookFunctionsXorRequestParameter undocumented
type WorkbookFunctionsXorRequestParameter struct {
	// Values undocumented
	Values json.RawMessage `json:"values,omitempty"`
}

// WorkbookFunctionsYearRequestParameter undocumented
type WorkbookFunctionsYearRequestParameter struct {
	// SerialNumber undocumented
	SerialNumber json.RawMessage `json:"serialNumber,omitempty"`
}

// WorkbookFunctionsYearFracRequestParameter undocumented
type WorkbookFunctionsYearFracRequestParameter struct {
	// StartDate undocumented
	StartDate json.RawMessage `json:"startDate,omitempty"`
	// EndDate undocumented
	EndDate json.RawMessage `json:"endDate,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsYieldRequestParameter undocumented
type WorkbookFunctionsYieldRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Pr undocumented
	Pr json.RawMessage `json:"pr,omitempty"`
	// Redemption undocumented
	Redemption json.RawMessage `json:"redemption,omitempty"`
	// Frequency undocumented
	Frequency json.RawMessage `json:"frequency,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsYieldDiscRequestParameter undocumented
type WorkbookFunctionsYieldDiscRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Pr undocumented
	Pr json.RawMessage `json:"pr,omitempty"`
	// Redemption undocumented
	Redemption json.RawMessage `json:"redemption,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsYieldMatRequestParameter undocumented
type WorkbookFunctionsYieldMatRequestParameter struct {
	// Settlement undocumented
	Settlement json.RawMessage `json:"settlement,omitempty"`
	// Maturity undocumented
	Maturity json.RawMessage `json:"maturity,omitempty"`
	// Issue undocumented
	Issue json.RawMessage `json:"issue,omitempty"`
	// Rate undocumented
	Rate json.RawMessage `json:"rate,omitempty"`
	// Pr undocumented
	Pr json.RawMessage `json:"pr,omitempty"`
	// Basis undocumented
	Basis json.RawMessage `json:"basis,omitempty"`
}

// WorkbookFunctionsZ_TestRequestParameter undocumented
type WorkbookFunctionsZ_TestRequestParameter struct {
	// Array undocumented
	Array json.RawMessage `json:"array,omitempty"`
	// X undocumented
	X json.RawMessage `json:"x,omitempty"`
	// Sigma undocumented
	Sigma json.RawMessage `json:"sigma,omitempty"`
}

// WorkbookPivotTableRefreshRequestParameter undocumented
type WorkbookPivotTableRefreshRequestParameter struct {
}

// WorkbookRangeClearRequestParameter undocumented
type WorkbookRangeClearRequestParameter struct {
	// ApplyTo undocumented
	ApplyTo *string `json:"applyTo,omitempty"`
}

// WorkbookRangeDeleteRequestParameter undocumented
type WorkbookRangeDeleteRequestParameter struct {
	// Shift undocumented
	Shift *string `json:"shift,omitempty"`
}

// WorkbookRangeInsertRequestParameter undocumented
type WorkbookRangeInsertRequestParameter struct {
	// Shift undocumented
	Shift *string `json:"shift,omitempty"`
}

// WorkbookRangeMergeRequestParameter undocumented
type WorkbookRangeMergeRequestParameter struct {
	// Across undocumented
	Across *bool `json:"across,omitempty"`
}

// WorkbookRangeUnmergeRequestParameter undocumented
type WorkbookRangeUnmergeRequestParameter struct {
}

// WorkbookRangeFillClearRequestParameter undocumented
type WorkbookRangeFillClearRequestParameter struct {
}

// WorkbookRangeFormatAutofitColumnsRequestParameter undocumented
type WorkbookRangeFormatAutofitColumnsRequestParameter struct {
}

// WorkbookRangeFormatAutofitRowsRequestParameter undocumented
type WorkbookRangeFormatAutofitRowsRequestParameter struct {
}

// WorkbookRangeSortApplyRequestParameter undocumented
type WorkbookRangeSortApplyRequestParameter struct {
	// Fields undocumented
	Fields []WorkbookSortField `json:"fields,omitempty"`
	// MatchCase undocumented
	MatchCase *bool `json:"matchCase,omitempty"`
	// HasHeaders undocumented
	HasHeaders *bool `json:"hasHeaders,omitempty"`
	// Orientation undocumented
	Orientation *string `json:"orientation,omitempty"`
	// Method undocumented
	Method *string `json:"method,omitempty"`
}

// WorkbookTableClearFiltersRequestParameter undocumented
type WorkbookTableClearFiltersRequestParameter struct {
}

// WorkbookTableConvertToRangeRequestParameter undocumented
type WorkbookTableConvertToRangeRequestParameter struct {
}

// WorkbookTableReapplyFiltersRequestParameter undocumented
type WorkbookTableReapplyFiltersRequestParameter struct {
}

// WorkbookTableSortApplyRequestParameter undocumented
type WorkbookTableSortApplyRequestParameter struct {
	// Fields undocumented
	Fields []WorkbookSortField `json:"fields,omitempty"`
	// MatchCase undocumented
	MatchCase *bool `json:"matchCase,omitempty"`
	// Method undocumented
	Method *string `json:"method,omitempty"`
}

// WorkbookTableSortClearRequestParameter undocumented
type WorkbookTableSortClearRequestParameter struct {
}

// WorkbookTableSortReapplyRequestParameter undocumented
type WorkbookTableSortReapplyRequestParameter struct {
}

// WorkbookWorksheetProtectionProtectRequestParameter undocumented
type WorkbookWorksheetProtectionProtectRequestParameter struct {
	// Options undocumented
	Options *WorkbookWorksheetProtectionOptions `json:"options,omitempty"`
}

// WorkbookWorksheetProtectionUnprotectRequestParameter undocumented
type WorkbookWorksheetProtectionUnprotectRequestParameter struct {
}

// Application is navigation property
func (b *WorkbookRequestBuilder) Application() *WorkbookApplicationRequestBuilder {
	bb := &WorkbookApplicationRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/application"
	return bb
}

// Comments returns request builder for WorkbookComment collection
func (b *WorkbookRequestBuilder) Comments() *WorkbookCommentsCollectionRequestBuilder {
	bb := &WorkbookCommentsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/comments"
	return bb
}

// WorkbookCommentsCollectionRequestBuilder is request builder for WorkbookComment collection
type WorkbookCommentsCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookComment collection
func (b *WorkbookCommentsCollectionRequestBuilder) Request() *WorkbookCommentsCollectionRequest {
	return &WorkbookCommentsCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookComment item
func (b *WorkbookCommentsCollectionRequestBuilder) ID(id string) *WorkbookCommentRequestBuilder {
	bb := &WorkbookCommentRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookCommentsCollectionRequest is request for WorkbookComment collection
type WorkbookCommentsCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookComment collection
func (r *WorkbookCommentsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookComment, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookComment
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookComment
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookComment collection, max N pages
func (r *WorkbookCommentsCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookComment, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookComment collection
func (r *WorkbookCommentsCollectionRequest) Get(ctx context.Context) ([]WorkbookComment, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookComment collection
func (r *WorkbookCommentsCollectionRequest) Add(ctx context.Context, reqObj *WorkbookComment) (resObj *WorkbookComment, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// Functions is navigation property
func (b *WorkbookRequestBuilder) Functions() *WorkbookFunctionsRequestBuilder {
	bb := &WorkbookFunctionsRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/functions"
	return bb
}

// Names returns request builder for WorkbookNamedItem collection
func (b *WorkbookRequestBuilder) Names() *WorkbookNamesCollectionRequestBuilder {
	bb := &WorkbookNamesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/names"
	return bb
}

// WorkbookNamesCollectionRequestBuilder is request builder for WorkbookNamedItem collection
type WorkbookNamesCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookNamedItem collection
func (b *WorkbookNamesCollectionRequestBuilder) Request() *WorkbookNamesCollectionRequest {
	return &WorkbookNamesCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookNamedItem item
func (b *WorkbookNamesCollectionRequestBuilder) ID(id string) *WorkbookNamedItemRequestBuilder {
	bb := &WorkbookNamedItemRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookNamesCollectionRequest is request for WorkbookNamedItem collection
type WorkbookNamesCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookNamedItem collection
func (r *WorkbookNamesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookNamedItem, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookNamedItem
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookNamedItem
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookNamedItem collection, max N pages
func (r *WorkbookNamesCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookNamedItem, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookNamedItem collection
func (r *WorkbookNamesCollectionRequest) Get(ctx context.Context) ([]WorkbookNamedItem, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookNamedItem collection
func (r *WorkbookNamesCollectionRequest) Add(ctx context.Context, reqObj *WorkbookNamedItem) (resObj *WorkbookNamedItem, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// Tables returns request builder for WorkbookTable collection
func (b *WorkbookRequestBuilder) Tables() *WorkbookTablesCollectionRequestBuilder {
	bb := &WorkbookTablesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/tables"
	return bb
}

// WorkbookTablesCollectionRequestBuilder is request builder for WorkbookTable collection
type WorkbookTablesCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookTable collection
func (b *WorkbookTablesCollectionRequestBuilder) Request() *WorkbookTablesCollectionRequest {
	return &WorkbookTablesCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookTable item
func (b *WorkbookTablesCollectionRequestBuilder) ID(id string) *WorkbookTableRequestBuilder {
	bb := &WorkbookTableRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookTablesCollectionRequest is request for WorkbookTable collection
type WorkbookTablesCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookTable collection
func (r *WorkbookTablesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookTable, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookTable
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookTable
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookTable collection, max N pages
func (r *WorkbookTablesCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookTable, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookTable collection
func (r *WorkbookTablesCollectionRequest) Get(ctx context.Context) ([]WorkbookTable, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookTable collection
func (r *WorkbookTablesCollectionRequest) Add(ctx context.Context, reqObj *WorkbookTable) (resObj *WorkbookTable, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// Worksheets returns request builder for WorkbookWorksheet collection
func (b *WorkbookRequestBuilder) Worksheets() *WorkbookWorksheetsCollectionRequestBuilder {
	bb := &WorkbookWorksheetsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/worksheets"
	return bb
}

// WorkbookWorksheetsCollectionRequestBuilder is request builder for WorkbookWorksheet collection
type WorkbookWorksheetsCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookWorksheet collection
func (b *WorkbookWorksheetsCollectionRequestBuilder) Request() *WorkbookWorksheetsCollectionRequest {
	return &WorkbookWorksheetsCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookWorksheet item
func (b *WorkbookWorksheetsCollectionRequestBuilder) ID(id string) *WorkbookWorksheetRequestBuilder {
	bb := &WorkbookWorksheetRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookWorksheetsCollectionRequest is request for WorkbookWorksheet collection
type WorkbookWorksheetsCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookWorksheet collection
func (r *WorkbookWorksheetsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookWorksheet, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookWorksheet
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookWorksheet
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookWorksheet collection, max N pages
func (r *WorkbookWorksheetsCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookWorksheet, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookWorksheet collection
func (r *WorkbookWorksheetsCollectionRequest) Get(ctx context.Context) ([]WorkbookWorksheet, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookWorksheet collection
func (r *WorkbookWorksheetsCollectionRequest) Add(ctx context.Context, reqObj *WorkbookWorksheet) (resObj *WorkbookWorksheet, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// Axes is navigation property
func (b *WorkbookChartRequestBuilder) Axes() *WorkbookChartAxesRequestBuilder {
	bb := &WorkbookChartAxesRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/axes"
	return bb
}

// DataLabels is navigation property
func (b *WorkbookChartRequestBuilder) DataLabels() *WorkbookChartDataLabelsRequestBuilder {
	bb := &WorkbookChartDataLabelsRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/dataLabels"
	return bb
}

// Format is navigation property
func (b *WorkbookChartRequestBuilder) Format() *WorkbookChartAreaFormatRequestBuilder {
	bb := &WorkbookChartAreaFormatRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/format"
	return bb
}

// Legend is navigation property
func (b *WorkbookChartRequestBuilder) Legend() *WorkbookChartLegendRequestBuilder {
	bb := &WorkbookChartLegendRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/legend"
	return bb
}

// Series returns request builder for WorkbookChartSeries collection
func (b *WorkbookChartRequestBuilder) Series() *WorkbookChartSeriesCollectionRequestBuilder {
	bb := &WorkbookChartSeriesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/series"
	return bb
}

// WorkbookChartSeriesCollectionRequestBuilder is request builder for WorkbookChartSeries collection
type WorkbookChartSeriesCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookChartSeries collection
func (b *WorkbookChartSeriesCollectionRequestBuilder) Request() *WorkbookChartSeriesCollectionRequest {
	return &WorkbookChartSeriesCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookChartSeries item
func (b *WorkbookChartSeriesCollectionRequestBuilder) ID(id string) *WorkbookChartSeriesRequestBuilder {
	bb := &WorkbookChartSeriesRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookChartSeriesCollectionRequest is request for WorkbookChartSeries collection
type WorkbookChartSeriesCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookChartSeries collection
func (r *WorkbookChartSeriesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookChartSeries, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookChartSeries
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookChartSeries
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookChartSeries collection, max N pages
func (r *WorkbookChartSeriesCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookChartSeries, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookChartSeries collection
func (r *WorkbookChartSeriesCollectionRequest) Get(ctx context.Context) ([]WorkbookChartSeries, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookChartSeries collection
func (r *WorkbookChartSeriesCollectionRequest) Add(ctx context.Context, reqObj *WorkbookChartSeries) (resObj *WorkbookChartSeries, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// Title is navigation property
func (b *WorkbookChartRequestBuilder) Title() *WorkbookChartTitleRequestBuilder {
	bb := &WorkbookChartTitleRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/title"
	return bb
}

// Worksheet is navigation property
func (b *WorkbookChartRequestBuilder) Worksheet() *WorkbookWorksheetRequestBuilder {
	bb := &WorkbookWorksheetRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/worksheet"
	return bb
}

// Fill is navigation property
func (b *WorkbookChartAreaFormatRequestBuilder) Fill() *WorkbookChartFillRequestBuilder {
	bb := &WorkbookChartFillRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/fill"
	return bb
}

// Font is navigation property
func (b *WorkbookChartAreaFormatRequestBuilder) Font() *WorkbookChartFontRequestBuilder {
	bb := &WorkbookChartFontRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/font"
	return bb
}

// CategoryAxis is navigation property
func (b *WorkbookChartAxesRequestBuilder) CategoryAxis() *WorkbookChartAxisRequestBuilder {
	bb := &WorkbookChartAxisRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/categoryAxis"
	return bb
}

// SeriesAxis is navigation property
func (b *WorkbookChartAxesRequestBuilder) SeriesAxis() *WorkbookChartAxisRequestBuilder {
	bb := &WorkbookChartAxisRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/seriesAxis"
	return bb
}

// ValueAxis is navigation property
func (b *WorkbookChartAxesRequestBuilder) ValueAxis() *WorkbookChartAxisRequestBuilder {
	bb := &WorkbookChartAxisRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/valueAxis"
	return bb
}

// Format is navigation property
func (b *WorkbookChartAxisRequestBuilder) Format() *WorkbookChartAxisFormatRequestBuilder {
	bb := &WorkbookChartAxisFormatRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/format"
	return bb
}

// MajorGridlines is navigation property
func (b *WorkbookChartAxisRequestBuilder) MajorGridlines() *WorkbookChartGridlinesRequestBuilder {
	bb := &WorkbookChartGridlinesRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/majorGridlines"
	return bb
}

// MinorGridlines is navigation property
func (b *WorkbookChartAxisRequestBuilder) MinorGridlines() *WorkbookChartGridlinesRequestBuilder {
	bb := &WorkbookChartGridlinesRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/minorGridlines"
	return bb
}

// Title is navigation property
func (b *WorkbookChartAxisRequestBuilder) Title() *WorkbookChartAxisTitleRequestBuilder {
	bb := &WorkbookChartAxisTitleRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/title"
	return bb
}

// Font is navigation property
func (b *WorkbookChartAxisFormatRequestBuilder) Font() *WorkbookChartFontRequestBuilder {
	bb := &WorkbookChartFontRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/font"
	return bb
}

// Line is navigation property
func (b *WorkbookChartAxisFormatRequestBuilder) Line() *WorkbookChartLineFormatRequestBuilder {
	bb := &WorkbookChartLineFormatRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/line"
	return bb
}

// Format is navigation property
func (b *WorkbookChartAxisTitleRequestBuilder) Format() *WorkbookChartAxisTitleFormatRequestBuilder {
	bb := &WorkbookChartAxisTitleFormatRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/format"
	return bb
}

// Font is navigation property
func (b *WorkbookChartAxisTitleFormatRequestBuilder) Font() *WorkbookChartFontRequestBuilder {
	bb := &WorkbookChartFontRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/font"
	return bb
}

// Fill is navigation property
func (b *WorkbookChartDataLabelFormatRequestBuilder) Fill() *WorkbookChartFillRequestBuilder {
	bb := &WorkbookChartFillRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/fill"
	return bb
}

// Font is navigation property
func (b *WorkbookChartDataLabelFormatRequestBuilder) Font() *WorkbookChartFontRequestBuilder {
	bb := &WorkbookChartFontRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/font"
	return bb
}

// Format is navigation property
func (b *WorkbookChartDataLabelsRequestBuilder) Format() *WorkbookChartDataLabelFormatRequestBuilder {
	bb := &WorkbookChartDataLabelFormatRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/format"
	return bb
}

// Format is navigation property
func (b *WorkbookChartGridlinesRequestBuilder) Format() *WorkbookChartGridlinesFormatRequestBuilder {
	bb := &WorkbookChartGridlinesFormatRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/format"
	return bb
}

// Line is navigation property
func (b *WorkbookChartGridlinesFormatRequestBuilder) Line() *WorkbookChartLineFormatRequestBuilder {
	bb := &WorkbookChartLineFormatRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/line"
	return bb
}

// Format is navigation property
func (b *WorkbookChartLegendRequestBuilder) Format() *WorkbookChartLegendFormatRequestBuilder {
	bb := &WorkbookChartLegendFormatRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/format"
	return bb
}

// Fill is navigation property
func (b *WorkbookChartLegendFormatRequestBuilder) Fill() *WorkbookChartFillRequestBuilder {
	bb := &WorkbookChartFillRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/fill"
	return bb
}

// Font is navigation property
func (b *WorkbookChartLegendFormatRequestBuilder) Font() *WorkbookChartFontRequestBuilder {
	bb := &WorkbookChartFontRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/font"
	return bb
}

// Format is navigation property
func (b *WorkbookChartPointRequestBuilder) Format() *WorkbookChartPointFormatRequestBuilder {
	bb := &WorkbookChartPointFormatRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/format"
	return bb
}

// Fill is navigation property
func (b *WorkbookChartPointFormatRequestBuilder) Fill() *WorkbookChartFillRequestBuilder {
	bb := &WorkbookChartFillRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/fill"
	return bb
}

// Format is navigation property
func (b *WorkbookChartSeriesRequestBuilder) Format() *WorkbookChartSeriesFormatRequestBuilder {
	bb := &WorkbookChartSeriesFormatRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/format"
	return bb
}

// Points returns request builder for WorkbookChartPoint collection
func (b *WorkbookChartSeriesRequestBuilder) Points() *WorkbookChartSeriesPointsCollectionRequestBuilder {
	bb := &WorkbookChartSeriesPointsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/points"
	return bb
}

// WorkbookChartSeriesPointsCollectionRequestBuilder is request builder for WorkbookChartPoint collection
type WorkbookChartSeriesPointsCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookChartPoint collection
func (b *WorkbookChartSeriesPointsCollectionRequestBuilder) Request() *WorkbookChartSeriesPointsCollectionRequest {
	return &WorkbookChartSeriesPointsCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookChartPoint item
func (b *WorkbookChartSeriesPointsCollectionRequestBuilder) ID(id string) *WorkbookChartPointRequestBuilder {
	bb := &WorkbookChartPointRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookChartSeriesPointsCollectionRequest is request for WorkbookChartPoint collection
type WorkbookChartSeriesPointsCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookChartPoint collection
func (r *WorkbookChartSeriesPointsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookChartPoint, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookChartPoint
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookChartPoint
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookChartPoint collection, max N pages
func (r *WorkbookChartSeriesPointsCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookChartPoint, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookChartPoint collection
func (r *WorkbookChartSeriesPointsCollectionRequest) Get(ctx context.Context) ([]WorkbookChartPoint, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookChartPoint collection
func (r *WorkbookChartSeriesPointsCollectionRequest) Add(ctx context.Context, reqObj *WorkbookChartPoint) (resObj *WorkbookChartPoint, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// Fill is navigation property
func (b *WorkbookChartSeriesFormatRequestBuilder) Fill() *WorkbookChartFillRequestBuilder {
	bb := &WorkbookChartFillRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/fill"
	return bb
}

// Line is navigation property
func (b *WorkbookChartSeriesFormatRequestBuilder) Line() *WorkbookChartLineFormatRequestBuilder {
	bb := &WorkbookChartLineFormatRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/line"
	return bb
}

// Format is navigation property
func (b *WorkbookChartTitleRequestBuilder) Format() *WorkbookChartTitleFormatRequestBuilder {
	bb := &WorkbookChartTitleFormatRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/format"
	return bb
}

// Fill is navigation property
func (b *WorkbookChartTitleFormatRequestBuilder) Fill() *WorkbookChartFillRequestBuilder {
	bb := &WorkbookChartFillRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/fill"
	return bb
}

// Font is navigation property
func (b *WorkbookChartTitleFormatRequestBuilder) Font() *WorkbookChartFontRequestBuilder {
	bb := &WorkbookChartFontRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/font"
	return bb
}

// Replies returns request builder for WorkbookCommentReply collection
func (b *WorkbookCommentRequestBuilder) Replies() *WorkbookCommentRepliesCollectionRequestBuilder {
	bb := &WorkbookCommentRepliesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/replies"
	return bb
}

// WorkbookCommentRepliesCollectionRequestBuilder is request builder for WorkbookCommentReply collection
type WorkbookCommentRepliesCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookCommentReply collection
func (b *WorkbookCommentRepliesCollectionRequestBuilder) Request() *WorkbookCommentRepliesCollectionRequest {
	return &WorkbookCommentRepliesCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookCommentReply item
func (b *WorkbookCommentRepliesCollectionRequestBuilder) ID(id string) *WorkbookCommentReplyRequestBuilder {
	bb := &WorkbookCommentReplyRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookCommentRepliesCollectionRequest is request for WorkbookCommentReply collection
type WorkbookCommentRepliesCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookCommentReply collection
func (r *WorkbookCommentRepliesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookCommentReply, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookCommentReply
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookCommentReply
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookCommentReply collection, max N pages
func (r *WorkbookCommentRepliesCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookCommentReply, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookCommentReply collection
func (r *WorkbookCommentRepliesCollectionRequest) Get(ctx context.Context) ([]WorkbookCommentReply, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookCommentReply collection
func (r *WorkbookCommentRepliesCollectionRequest) Add(ctx context.Context, reqObj *WorkbookCommentReply) (resObj *WorkbookCommentReply, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// Worksheet is navigation property
func (b *WorkbookNamedItemRequestBuilder) Worksheet() *WorkbookWorksheetRequestBuilder {
	bb := &WorkbookWorksheetRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/worksheet"
	return bb
}

// Worksheet is navigation property
func (b *WorkbookPivotTableRequestBuilder) Worksheet() *WorkbookWorksheetRequestBuilder {
	bb := &WorkbookWorksheetRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/worksheet"
	return bb
}

// Format is navigation property
func (b *WorkbookRangeRequestBuilder) Format() *WorkbookRangeFormatRequestBuilder {
	bb := &WorkbookRangeFormatRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/format"
	return bb
}

// Sort is navigation property
func (b *WorkbookRangeRequestBuilder) Sort() *WorkbookRangeSortRequestBuilder {
	bb := &WorkbookRangeSortRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/sort"
	return bb
}

// Worksheet is navigation property
func (b *WorkbookRangeRequestBuilder) Worksheet() *WorkbookWorksheetRequestBuilder {
	bb := &WorkbookWorksheetRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/worksheet"
	return bb
}

// Borders returns request builder for WorkbookRangeBorder collection
func (b *WorkbookRangeFormatRequestBuilder) Borders() *WorkbookRangeFormatBordersCollectionRequestBuilder {
	bb := &WorkbookRangeFormatBordersCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/borders"
	return bb
}

// WorkbookRangeFormatBordersCollectionRequestBuilder is request builder for WorkbookRangeBorder collection
type WorkbookRangeFormatBordersCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookRangeBorder collection
func (b *WorkbookRangeFormatBordersCollectionRequestBuilder) Request() *WorkbookRangeFormatBordersCollectionRequest {
	return &WorkbookRangeFormatBordersCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookRangeBorder item
func (b *WorkbookRangeFormatBordersCollectionRequestBuilder) ID(id string) *WorkbookRangeBorderRequestBuilder {
	bb := &WorkbookRangeBorderRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookRangeFormatBordersCollectionRequest is request for WorkbookRangeBorder collection
type WorkbookRangeFormatBordersCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookRangeBorder collection
func (r *WorkbookRangeFormatBordersCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookRangeBorder, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookRangeBorder
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookRangeBorder
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookRangeBorder collection, max N pages
func (r *WorkbookRangeFormatBordersCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookRangeBorder, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookRangeBorder collection
func (r *WorkbookRangeFormatBordersCollectionRequest) Get(ctx context.Context) ([]WorkbookRangeBorder, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookRangeBorder collection
func (r *WorkbookRangeFormatBordersCollectionRequest) Add(ctx context.Context, reqObj *WorkbookRangeBorder) (resObj *WorkbookRangeBorder, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// Fill is navigation property
func (b *WorkbookRangeFormatRequestBuilder) Fill() *WorkbookRangeFillRequestBuilder {
	bb := &WorkbookRangeFillRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/fill"
	return bb
}

// Font is navigation property
func (b *WorkbookRangeFormatRequestBuilder) Font() *WorkbookRangeFontRequestBuilder {
	bb := &WorkbookRangeFontRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/font"
	return bb
}

// Protection is navigation property
func (b *WorkbookRangeFormatRequestBuilder) Protection() *WorkbookFormatProtectionRequestBuilder {
	bb := &WorkbookFormatProtectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/protection"
	return bb
}

// Rows returns request builder for WorkbookRangeView collection
func (b *WorkbookRangeViewRequestBuilder) Rows() *WorkbookRangeViewRowsCollectionRequestBuilder {
	bb := &WorkbookRangeViewRowsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/rows"
	return bb
}

// WorkbookRangeViewRowsCollectionRequestBuilder is request builder for WorkbookRangeView collection
type WorkbookRangeViewRowsCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookRangeView collection
func (b *WorkbookRangeViewRowsCollectionRequestBuilder) Request() *WorkbookRangeViewRowsCollectionRequest {
	return &WorkbookRangeViewRowsCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookRangeView item
func (b *WorkbookRangeViewRowsCollectionRequestBuilder) ID(id string) *WorkbookRangeViewRequestBuilder {
	bb := &WorkbookRangeViewRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookRangeViewRowsCollectionRequest is request for WorkbookRangeView collection
type WorkbookRangeViewRowsCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookRangeView collection
func (r *WorkbookRangeViewRowsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookRangeView, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookRangeView
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookRangeView
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookRangeView collection, max N pages
func (r *WorkbookRangeViewRowsCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookRangeView, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookRangeView collection
func (r *WorkbookRangeViewRowsCollectionRequest) Get(ctx context.Context) ([]WorkbookRangeView, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookRangeView collection
func (r *WorkbookRangeViewRowsCollectionRequest) Add(ctx context.Context, reqObj *WorkbookRangeView) (resObj *WorkbookRangeView, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// Columns returns request builder for WorkbookTableColumn collection
func (b *WorkbookTableRequestBuilder) Columns() *WorkbookTableColumnsCollectionRequestBuilder {
	bb := &WorkbookTableColumnsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/columns"
	return bb
}

// WorkbookTableColumnsCollectionRequestBuilder is request builder for WorkbookTableColumn collection
type WorkbookTableColumnsCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookTableColumn collection
func (b *WorkbookTableColumnsCollectionRequestBuilder) Request() *WorkbookTableColumnsCollectionRequest {
	return &WorkbookTableColumnsCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookTableColumn item
func (b *WorkbookTableColumnsCollectionRequestBuilder) ID(id string) *WorkbookTableColumnRequestBuilder {
	bb := &WorkbookTableColumnRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookTableColumnsCollectionRequest is request for WorkbookTableColumn collection
type WorkbookTableColumnsCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookTableColumn collection
func (r *WorkbookTableColumnsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookTableColumn, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookTableColumn
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookTableColumn
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookTableColumn collection, max N pages
func (r *WorkbookTableColumnsCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookTableColumn, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookTableColumn collection
func (r *WorkbookTableColumnsCollectionRequest) Get(ctx context.Context) ([]WorkbookTableColumn, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookTableColumn collection
func (r *WorkbookTableColumnsCollectionRequest) Add(ctx context.Context, reqObj *WorkbookTableColumn) (resObj *WorkbookTableColumn, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// Rows returns request builder for WorkbookTableRow collection
func (b *WorkbookTableRequestBuilder) Rows() *WorkbookTableRowsCollectionRequestBuilder {
	bb := &WorkbookTableRowsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/rows"
	return bb
}

// WorkbookTableRowsCollectionRequestBuilder is request builder for WorkbookTableRow collection
type WorkbookTableRowsCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookTableRow collection
func (b *WorkbookTableRowsCollectionRequestBuilder) Request() *WorkbookTableRowsCollectionRequest {
	return &WorkbookTableRowsCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookTableRow item
func (b *WorkbookTableRowsCollectionRequestBuilder) ID(id string) *WorkbookTableRowRequestBuilder {
	bb := &WorkbookTableRowRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookTableRowsCollectionRequest is request for WorkbookTableRow collection
type WorkbookTableRowsCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookTableRow collection
func (r *WorkbookTableRowsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookTableRow, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookTableRow
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookTableRow
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookTableRow collection, max N pages
func (r *WorkbookTableRowsCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookTableRow, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookTableRow collection
func (r *WorkbookTableRowsCollectionRequest) Get(ctx context.Context) ([]WorkbookTableRow, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookTableRow collection
func (r *WorkbookTableRowsCollectionRequest) Add(ctx context.Context, reqObj *WorkbookTableRow) (resObj *WorkbookTableRow, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// Sort is navigation property
func (b *WorkbookTableRequestBuilder) Sort() *WorkbookTableSortRequestBuilder {
	bb := &WorkbookTableSortRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/sort"
	return bb
}

// Worksheet is navigation property
func (b *WorkbookTableRequestBuilder) Worksheet() *WorkbookWorksheetRequestBuilder {
	bb := &WorkbookWorksheetRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/worksheet"
	return bb
}

// Filter is navigation property
func (b *WorkbookTableColumnRequestBuilder) Filter() *WorkbookFilterRequestBuilder {
	bb := &WorkbookFilterRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/filter"
	return bb
}

// Charts returns request builder for WorkbookChart collection
func (b *WorkbookWorksheetRequestBuilder) Charts() *WorkbookWorksheetChartsCollectionRequestBuilder {
	bb := &WorkbookWorksheetChartsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/charts"
	return bb
}

// WorkbookWorksheetChartsCollectionRequestBuilder is request builder for WorkbookChart collection
type WorkbookWorksheetChartsCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookChart collection
func (b *WorkbookWorksheetChartsCollectionRequestBuilder) Request() *WorkbookWorksheetChartsCollectionRequest {
	return &WorkbookWorksheetChartsCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookChart item
func (b *WorkbookWorksheetChartsCollectionRequestBuilder) ID(id string) *WorkbookChartRequestBuilder {
	bb := &WorkbookChartRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookWorksheetChartsCollectionRequest is request for WorkbookChart collection
type WorkbookWorksheetChartsCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookChart collection
func (r *WorkbookWorksheetChartsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookChart, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookChart
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookChart
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookChart collection, max N pages
func (r *WorkbookWorksheetChartsCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookChart, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookChart collection
func (r *WorkbookWorksheetChartsCollectionRequest) Get(ctx context.Context) ([]WorkbookChart, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookChart collection
func (r *WorkbookWorksheetChartsCollectionRequest) Add(ctx context.Context, reqObj *WorkbookChart) (resObj *WorkbookChart, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// Names returns request builder for WorkbookNamedItem collection
func (b *WorkbookWorksheetRequestBuilder) Names() *WorkbookWorksheetNamesCollectionRequestBuilder {
	bb := &WorkbookWorksheetNamesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/names"
	return bb
}

// WorkbookWorksheetNamesCollectionRequestBuilder is request builder for WorkbookNamedItem collection
type WorkbookWorksheetNamesCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookNamedItem collection
func (b *WorkbookWorksheetNamesCollectionRequestBuilder) Request() *WorkbookWorksheetNamesCollectionRequest {
	return &WorkbookWorksheetNamesCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookNamedItem item
func (b *WorkbookWorksheetNamesCollectionRequestBuilder) ID(id string) *WorkbookNamedItemRequestBuilder {
	bb := &WorkbookNamedItemRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookWorksheetNamesCollectionRequest is request for WorkbookNamedItem collection
type WorkbookWorksheetNamesCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookNamedItem collection
func (r *WorkbookWorksheetNamesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookNamedItem, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookNamedItem
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookNamedItem
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookNamedItem collection, max N pages
func (r *WorkbookWorksheetNamesCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookNamedItem, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookNamedItem collection
func (r *WorkbookWorksheetNamesCollectionRequest) Get(ctx context.Context) ([]WorkbookNamedItem, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookNamedItem collection
func (r *WorkbookWorksheetNamesCollectionRequest) Add(ctx context.Context, reqObj *WorkbookNamedItem) (resObj *WorkbookNamedItem, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// PivotTables returns request builder for WorkbookPivotTable collection
func (b *WorkbookWorksheetRequestBuilder) PivotTables() *WorkbookWorksheetPivotTablesCollectionRequestBuilder {
	bb := &WorkbookWorksheetPivotTablesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/pivotTables"
	return bb
}

// WorkbookWorksheetPivotTablesCollectionRequestBuilder is request builder for WorkbookPivotTable collection
type WorkbookWorksheetPivotTablesCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookPivotTable collection
func (b *WorkbookWorksheetPivotTablesCollectionRequestBuilder) Request() *WorkbookWorksheetPivotTablesCollectionRequest {
	return &WorkbookWorksheetPivotTablesCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookPivotTable item
func (b *WorkbookWorksheetPivotTablesCollectionRequestBuilder) ID(id string) *WorkbookPivotTableRequestBuilder {
	bb := &WorkbookPivotTableRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookWorksheetPivotTablesCollectionRequest is request for WorkbookPivotTable collection
type WorkbookWorksheetPivotTablesCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookPivotTable collection
func (r *WorkbookWorksheetPivotTablesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookPivotTable, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookPivotTable
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookPivotTable
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookPivotTable collection, max N pages
func (r *WorkbookWorksheetPivotTablesCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookPivotTable, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookPivotTable collection
func (r *WorkbookWorksheetPivotTablesCollectionRequest) Get(ctx context.Context) ([]WorkbookPivotTable, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookPivotTable collection
func (r *WorkbookWorksheetPivotTablesCollectionRequest) Add(ctx context.Context, reqObj *WorkbookPivotTable) (resObj *WorkbookPivotTable, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}

// Protection is navigation property
func (b *WorkbookWorksheetRequestBuilder) Protection() *WorkbookWorksheetProtectionRequestBuilder {
	bb := &WorkbookWorksheetProtectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/protection"
	return bb
}

// Tables returns request builder for WorkbookTable collection
func (b *WorkbookWorksheetRequestBuilder) Tables() *WorkbookWorksheetTablesCollectionRequestBuilder {
	bb := &WorkbookWorksheetTablesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/tables"
	return bb
}

// WorkbookWorksheetTablesCollectionRequestBuilder is request builder for WorkbookTable collection
type WorkbookWorksheetTablesCollectionRequestBuilder struct{ BaseRequestBuilder }

// Request returns request for WorkbookTable collection
func (b *WorkbookWorksheetTablesCollectionRequestBuilder) Request() *WorkbookWorksheetTablesCollectionRequest {
	return &WorkbookWorksheetTablesCollectionRequest{
		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
	}
}

// ID returns request builder for WorkbookTable item
func (b *WorkbookWorksheetTablesCollectionRequestBuilder) ID(id string) *WorkbookTableRequestBuilder {
	bb := &WorkbookTableRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
	bb.baseURL += "/" + id
	return bb
}

// WorkbookWorksheetTablesCollectionRequest is request for WorkbookTable collection
type WorkbookWorksheetTablesCollectionRequest struct{ BaseRequest }

// Paging perfoms paging operation for WorkbookTable collection
func (r *WorkbookWorksheetTablesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]WorkbookTable, error) {
	req, err := r.NewJSONRequest(method, path, obj)
	if err != nil {
		return nil, err
	}
	if ctx != nil {
		req = req.WithContext(ctx)
	}
	res, err := r.client.Do(req)
	if err != nil {
		return nil, err
	}
	var values []WorkbookTable
	for {
		if res.StatusCode != http.StatusOK {
			b, _ := ioutil.ReadAll(res.Body)
			res.Body.Close()
			errRes := &ErrorResponse{Response: res}
			err := jsonx.Unmarshal(b, errRes)
			if err != nil {
				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
			}
			return nil, errRes
		}
		var (
			paging Paging
			value  []WorkbookTable
		)
		err := jsonx.NewDecoder(res.Body).Decode(&paging)
		res.Body.Close()
		if err != nil {
			return nil, err
		}
		err = jsonx.Unmarshal(paging.Value, &value)
		if err != nil {
			return nil, err
		}
		values = append(values, value...)
		if n >= 0 {
			n--
		}
		if n == 0 || len(paging.NextLink) == 0 {
			return values, nil
		}
		req, err = http.NewRequest("GET", paging.NextLink, nil)
		if ctx != nil {
			req = req.WithContext(ctx)
		}
		res, err = r.client.Do(req)
		if err != nil {
			return nil, err
		}
	}
}

// GetN performs GET request for WorkbookTable collection, max N pages
func (r *WorkbookWorksheetTablesCollectionRequest) GetN(ctx context.Context, n int) ([]WorkbookTable, error) {
	var query string
	if r.query != nil {
		query = "?" + r.query.Encode()
	}
	return r.Paging(ctx, "GET", query, nil, n)
}

// Get performs GET request for WorkbookTable collection
func (r *WorkbookWorksheetTablesCollectionRequest) Get(ctx context.Context) ([]WorkbookTable, error) {
	return r.GetN(ctx, 0)
}

// Add performs POST request for WorkbookTable collection
func (r *WorkbookWorksheetTablesCollectionRequest) Add(ctx context.Context, reqObj *WorkbookTable) (resObj *WorkbookTable, err error) {
	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
	return
}