public static class PositionMaintenanceRequest.NoUnderlyings extends Group
Modifier and Type | Class and Description |
---|---|
static class |
PositionMaintenanceRequest.NoUnderlyings.NoUnderlyingSecurityAltID |
static class |
PositionMaintenanceRequest.NoUnderlyings.NoUnderlyingStips |
static class |
PositionMaintenanceRequest.NoUnderlyings.NoUndlyInstrumentParties |
Constructor and Description |
---|
NoUnderlyings() |
delim, getFieldTag
addGroup, addGroupRef, calculateString, clear, getBoolean, getChar, getChars, getComponent, getDecimal, getDouble, getField, getField, getField, getField, getField, getField, getField, getField, getField, getField, getFieldOrder, getGroup, getGroup, getGroupCount, getGroups, getInt, getOptionalDecimal, getOptionalString, getString, getUtcDateOnly, getUtcTimeOnly, getUtcTimeStamp, groupKeyIterator, hasGroup, hasGroup, hasGroup, hasGroup, indexOf, initializeFrom, isEmpty, isSetField, isSetField, iterator, removeField, removeGroup, removeGroup, removeGroup, removeGroup, replaceGroup, reset, setBoolean, setBytes, setChar, setChars, setComponent, setDecimal, setDecimal, setDouble, setDouble, setField, setField, setField, setField, setField, setField, setField, setField, setField, setField, setField, setFields, setGroupCount, setGroups, setGroups, setInt, setString, setUtcDateOnly, setUtcTimeOnly, setUtcTimeOnly, setUtcTimeOnly, setUtcTimeStamp, setUtcTimeStamp, setUtcTimeStamp
public void set(UnderlyingInstrument component)
public UnderlyingInstrument get(UnderlyingInstrument component) throws FieldNotFound
FieldNotFound
public UnderlyingInstrument getUnderlyingInstrument() throws FieldNotFound
FieldNotFound
public void set(UnderlyingSymbol value)
public UnderlyingSymbol get(UnderlyingSymbol value) throws FieldNotFound
FieldNotFound
public UnderlyingSymbol getUnderlyingSymbol() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingSymbol field)
public boolean isSetUnderlyingSymbol()
public void set(UnderlyingSymbolSfx value)
public UnderlyingSymbolSfx get(UnderlyingSymbolSfx value) throws FieldNotFound
FieldNotFound
public UnderlyingSymbolSfx getUnderlyingSymbolSfx() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingSymbolSfx field)
public boolean isSetUnderlyingSymbolSfx()
public void set(UnderlyingSecurityID value)
public UnderlyingSecurityID get(UnderlyingSecurityID value) throws FieldNotFound
FieldNotFound
public UnderlyingSecurityID getUnderlyingSecurityID() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingSecurityID field)
public boolean isSetUnderlyingSecurityID()
public void set(UnderlyingSecurityIDSource value)
public UnderlyingSecurityIDSource get(UnderlyingSecurityIDSource value) throws FieldNotFound
FieldNotFound
public UnderlyingSecurityIDSource getUnderlyingSecurityIDSource() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingSecurityIDSource field)
public boolean isSetUnderlyingSecurityIDSource()
public void set(UndSecAltIDGrp component)
public UndSecAltIDGrp get(UndSecAltIDGrp component) throws FieldNotFound
FieldNotFound
public UndSecAltIDGrp getUndSecAltIDGrp() throws FieldNotFound
FieldNotFound
public void set(NoUnderlyingSecurityAltID value)
public NoUnderlyingSecurityAltID get(NoUnderlyingSecurityAltID value) throws FieldNotFound
FieldNotFound
public NoUnderlyingSecurityAltID getNoUnderlyingSecurityAltID() throws FieldNotFound
FieldNotFound
public boolean isSet(NoUnderlyingSecurityAltID field)
public boolean isSetNoUnderlyingSecurityAltID()
public void set(UnderlyingProduct value)
public UnderlyingProduct get(UnderlyingProduct value) throws FieldNotFound
FieldNotFound
public UnderlyingProduct getUnderlyingProduct() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingProduct field)
public boolean isSetUnderlyingProduct()
public void set(UnderlyingCFICode value)
public UnderlyingCFICode get(UnderlyingCFICode value) throws FieldNotFound
FieldNotFound
public UnderlyingCFICode getUnderlyingCFICode() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingCFICode field)
public boolean isSetUnderlyingCFICode()
public void set(UnderlyingSecurityType value)
public UnderlyingSecurityType get(UnderlyingSecurityType value) throws FieldNotFound
FieldNotFound
public UnderlyingSecurityType getUnderlyingSecurityType() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingSecurityType field)
public boolean isSetUnderlyingSecurityType()
public void set(UnderlyingSecuritySubType value)
public UnderlyingSecuritySubType get(UnderlyingSecuritySubType value) throws FieldNotFound
FieldNotFound
public UnderlyingSecuritySubType getUnderlyingSecuritySubType() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingSecuritySubType field)
public boolean isSetUnderlyingSecuritySubType()
public void set(UnderlyingMaturityMonthYear value)
public UnderlyingMaturityMonthYear get(UnderlyingMaturityMonthYear value) throws FieldNotFound
FieldNotFound
public UnderlyingMaturityMonthYear getUnderlyingMaturityMonthYear() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingMaturityMonthYear field)
public boolean isSetUnderlyingMaturityMonthYear()
public void set(UnderlyingMaturityDate value)
public UnderlyingMaturityDate get(UnderlyingMaturityDate value) throws FieldNotFound
FieldNotFound
public UnderlyingMaturityDate getUnderlyingMaturityDate() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingMaturityDate field)
public boolean isSetUnderlyingMaturityDate()
public void set(UnderlyingCouponPaymentDate value)
public UnderlyingCouponPaymentDate get(UnderlyingCouponPaymentDate value) throws FieldNotFound
FieldNotFound
public UnderlyingCouponPaymentDate getUnderlyingCouponPaymentDate() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingCouponPaymentDate field)
public boolean isSetUnderlyingCouponPaymentDate()
public void set(UnderlyingIssueDate value)
public UnderlyingIssueDate get(UnderlyingIssueDate value) throws FieldNotFound
FieldNotFound
public UnderlyingIssueDate getUnderlyingIssueDate() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingIssueDate field)
public boolean isSetUnderlyingIssueDate()
public void set(UnderlyingRepoCollateralSecurityType value)
public UnderlyingRepoCollateralSecurityType get(UnderlyingRepoCollateralSecurityType value) throws FieldNotFound
FieldNotFound
public UnderlyingRepoCollateralSecurityType getUnderlyingRepoCollateralSecurityType() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingRepoCollateralSecurityType field)
public boolean isSetUnderlyingRepoCollateralSecurityType()
public void set(UnderlyingRepurchaseTerm value)
public UnderlyingRepurchaseTerm get(UnderlyingRepurchaseTerm value) throws FieldNotFound
FieldNotFound
public UnderlyingRepurchaseTerm getUnderlyingRepurchaseTerm() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingRepurchaseTerm field)
public boolean isSetUnderlyingRepurchaseTerm()
public void set(UnderlyingRepurchaseRate value)
public UnderlyingRepurchaseRate get(UnderlyingRepurchaseRate value) throws FieldNotFound
FieldNotFound
public UnderlyingRepurchaseRate getUnderlyingRepurchaseRate() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingRepurchaseRate field)
public boolean isSetUnderlyingRepurchaseRate()
public void set(UnderlyingFactor value)
public UnderlyingFactor get(UnderlyingFactor value) throws FieldNotFound
FieldNotFound
public UnderlyingFactor getUnderlyingFactor() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingFactor field)
public boolean isSetUnderlyingFactor()
public void set(UnderlyingCreditRating value)
public UnderlyingCreditRating get(UnderlyingCreditRating value) throws FieldNotFound
FieldNotFound
public UnderlyingCreditRating getUnderlyingCreditRating() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingCreditRating field)
public boolean isSetUnderlyingCreditRating()
public void set(UnderlyingInstrRegistry value)
public UnderlyingInstrRegistry get(UnderlyingInstrRegistry value) throws FieldNotFound
FieldNotFound
public UnderlyingInstrRegistry getUnderlyingInstrRegistry() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingInstrRegistry field)
public boolean isSetUnderlyingInstrRegistry()
public void set(UnderlyingCountryOfIssue value)
public UnderlyingCountryOfIssue get(UnderlyingCountryOfIssue value) throws FieldNotFound
FieldNotFound
public UnderlyingCountryOfIssue getUnderlyingCountryOfIssue() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingCountryOfIssue field)
public boolean isSetUnderlyingCountryOfIssue()
public void set(UnderlyingStateOrProvinceOfIssue value)
public UnderlyingStateOrProvinceOfIssue get(UnderlyingStateOrProvinceOfIssue value) throws FieldNotFound
FieldNotFound
public UnderlyingStateOrProvinceOfIssue getUnderlyingStateOrProvinceOfIssue() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingStateOrProvinceOfIssue field)
public boolean isSetUnderlyingStateOrProvinceOfIssue()
public void set(UnderlyingLocaleOfIssue value)
public UnderlyingLocaleOfIssue get(UnderlyingLocaleOfIssue value) throws FieldNotFound
FieldNotFound
public UnderlyingLocaleOfIssue getUnderlyingLocaleOfIssue() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingLocaleOfIssue field)
public boolean isSetUnderlyingLocaleOfIssue()
public void set(UnderlyingRedemptionDate value)
public UnderlyingRedemptionDate get(UnderlyingRedemptionDate value) throws FieldNotFound
FieldNotFound
public UnderlyingRedemptionDate getUnderlyingRedemptionDate() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingRedemptionDate field)
public boolean isSetUnderlyingRedemptionDate()
public void set(UnderlyingStrikePrice value)
public UnderlyingStrikePrice get(UnderlyingStrikePrice value) throws FieldNotFound
FieldNotFound
public UnderlyingStrikePrice getUnderlyingStrikePrice() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingStrikePrice field)
public boolean isSetUnderlyingStrikePrice()
public void set(UnderlyingStrikeCurrency value)
public UnderlyingStrikeCurrency get(UnderlyingStrikeCurrency value) throws FieldNotFound
FieldNotFound
public UnderlyingStrikeCurrency getUnderlyingStrikeCurrency() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingStrikeCurrency field)
public boolean isSetUnderlyingStrikeCurrency()
public void set(UnderlyingOptAttribute value)
public UnderlyingOptAttribute get(UnderlyingOptAttribute value) throws FieldNotFound
FieldNotFound
public UnderlyingOptAttribute getUnderlyingOptAttribute() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingOptAttribute field)
public boolean isSetUnderlyingOptAttribute()
public void set(UnderlyingContractMultiplier value)
public UnderlyingContractMultiplier get(UnderlyingContractMultiplier value) throws FieldNotFound
FieldNotFound
public UnderlyingContractMultiplier getUnderlyingContractMultiplier() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingContractMultiplier field)
public boolean isSetUnderlyingContractMultiplier()
public void set(UnderlyingCouponRate value)
public UnderlyingCouponRate get(UnderlyingCouponRate value) throws FieldNotFound
FieldNotFound
public UnderlyingCouponRate getUnderlyingCouponRate() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingCouponRate field)
public boolean isSetUnderlyingCouponRate()
public void set(UnderlyingSecurityExchange value)
public UnderlyingSecurityExchange get(UnderlyingSecurityExchange value) throws FieldNotFound
FieldNotFound
public UnderlyingSecurityExchange getUnderlyingSecurityExchange() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingSecurityExchange field)
public boolean isSetUnderlyingSecurityExchange()
public void set(UnderlyingIssuer value)
public UnderlyingIssuer get(UnderlyingIssuer value) throws FieldNotFound
FieldNotFound
public UnderlyingIssuer getUnderlyingIssuer() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingIssuer field)
public boolean isSetUnderlyingIssuer()
public void set(EncodedUnderlyingIssuerLen value)
public EncodedUnderlyingIssuerLen get(EncodedUnderlyingIssuerLen value) throws FieldNotFound
FieldNotFound
public EncodedUnderlyingIssuerLen getEncodedUnderlyingIssuerLen() throws FieldNotFound
FieldNotFound
public boolean isSet(EncodedUnderlyingIssuerLen field)
public boolean isSetEncodedUnderlyingIssuerLen()
public void set(EncodedUnderlyingIssuer value)
public EncodedUnderlyingIssuer get(EncodedUnderlyingIssuer value) throws FieldNotFound
FieldNotFound
public EncodedUnderlyingIssuer getEncodedUnderlyingIssuer() throws FieldNotFound
FieldNotFound
public boolean isSet(EncodedUnderlyingIssuer field)
public boolean isSetEncodedUnderlyingIssuer()
public void set(UnderlyingSecurityDesc value)
public UnderlyingSecurityDesc get(UnderlyingSecurityDesc value) throws FieldNotFound
FieldNotFound
public UnderlyingSecurityDesc getUnderlyingSecurityDesc() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingSecurityDesc field)
public boolean isSetUnderlyingSecurityDesc()
public void set(EncodedUnderlyingSecurityDescLen value)
public EncodedUnderlyingSecurityDescLen get(EncodedUnderlyingSecurityDescLen value) throws FieldNotFound
FieldNotFound
public EncodedUnderlyingSecurityDescLen getEncodedUnderlyingSecurityDescLen() throws FieldNotFound
FieldNotFound
public boolean isSet(EncodedUnderlyingSecurityDescLen field)
public boolean isSetEncodedUnderlyingSecurityDescLen()
public void set(EncodedUnderlyingSecurityDesc value)
public EncodedUnderlyingSecurityDesc get(EncodedUnderlyingSecurityDesc value) throws FieldNotFound
FieldNotFound
public EncodedUnderlyingSecurityDesc getEncodedUnderlyingSecurityDesc() throws FieldNotFound
FieldNotFound
public boolean isSet(EncodedUnderlyingSecurityDesc field)
public boolean isSetEncodedUnderlyingSecurityDesc()
public void set(UnderlyingCPProgram value)
public UnderlyingCPProgram get(UnderlyingCPProgram value) throws FieldNotFound
FieldNotFound
public UnderlyingCPProgram getUnderlyingCPProgram() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingCPProgram field)
public boolean isSetUnderlyingCPProgram()
public void set(UnderlyingCPRegType value)
public UnderlyingCPRegType get(UnderlyingCPRegType value) throws FieldNotFound
FieldNotFound
public UnderlyingCPRegType getUnderlyingCPRegType() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingCPRegType field)
public boolean isSetUnderlyingCPRegType()
public void set(UnderlyingCurrency value)
public UnderlyingCurrency get(UnderlyingCurrency value) throws FieldNotFound
FieldNotFound
public UnderlyingCurrency getUnderlyingCurrency() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingCurrency field)
public boolean isSetUnderlyingCurrency()
public void set(UnderlyingQty value)
public UnderlyingQty get(UnderlyingQty value) throws FieldNotFound
FieldNotFound
public UnderlyingQty getUnderlyingQty() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingQty field)
public boolean isSetUnderlyingQty()
public void set(UnderlyingPx value)
public UnderlyingPx get(UnderlyingPx value) throws FieldNotFound
FieldNotFound
public UnderlyingPx getUnderlyingPx() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingPx field)
public boolean isSetUnderlyingPx()
public void set(UnderlyingDirtyPrice value)
public UnderlyingDirtyPrice get(UnderlyingDirtyPrice value) throws FieldNotFound
FieldNotFound
public UnderlyingDirtyPrice getUnderlyingDirtyPrice() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingDirtyPrice field)
public boolean isSetUnderlyingDirtyPrice()
public void set(UnderlyingEndPrice value)
public UnderlyingEndPrice get(UnderlyingEndPrice value) throws FieldNotFound
FieldNotFound
public UnderlyingEndPrice getUnderlyingEndPrice() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingEndPrice field)
public boolean isSetUnderlyingEndPrice()
public void set(UnderlyingStartValue value)
public UnderlyingStartValue get(UnderlyingStartValue value) throws FieldNotFound
FieldNotFound
public UnderlyingStartValue getUnderlyingStartValue() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingStartValue field)
public boolean isSetUnderlyingStartValue()
public void set(UnderlyingCurrentValue value)
public UnderlyingCurrentValue get(UnderlyingCurrentValue value) throws FieldNotFound
FieldNotFound
public UnderlyingCurrentValue getUnderlyingCurrentValue() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingCurrentValue field)
public boolean isSetUnderlyingCurrentValue()
public void set(UnderlyingEndValue value)
public UnderlyingEndValue get(UnderlyingEndValue value) throws FieldNotFound
FieldNotFound
public UnderlyingEndValue getUnderlyingEndValue() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingEndValue field)
public boolean isSetUnderlyingEndValue()
public void set(UnderlyingStipulations component)
public UnderlyingStipulations get(UnderlyingStipulations component) throws FieldNotFound
FieldNotFound
public UnderlyingStipulations getUnderlyingStipulations() throws FieldNotFound
FieldNotFound
public void set(NoUnderlyingStips value)
public NoUnderlyingStips get(NoUnderlyingStips value) throws FieldNotFound
FieldNotFound
public NoUnderlyingStips getNoUnderlyingStips() throws FieldNotFound
FieldNotFound
public boolean isSet(NoUnderlyingStips field)
public boolean isSetNoUnderlyingStips()
public void set(UnderlyingAllocationPercent value)
public UnderlyingAllocationPercent get(UnderlyingAllocationPercent value) throws FieldNotFound
FieldNotFound
public UnderlyingAllocationPercent getUnderlyingAllocationPercent() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingAllocationPercent field)
public boolean isSetUnderlyingAllocationPercent()
public void set(UnderlyingSettlementType value)
public UnderlyingSettlementType get(UnderlyingSettlementType value) throws FieldNotFound
FieldNotFound
public UnderlyingSettlementType getUnderlyingSettlementType() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingSettlementType field)
public boolean isSetUnderlyingSettlementType()
public void set(UnderlyingCashAmount value)
public UnderlyingCashAmount get(UnderlyingCashAmount value) throws FieldNotFound
FieldNotFound
public UnderlyingCashAmount getUnderlyingCashAmount() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingCashAmount field)
public boolean isSetUnderlyingCashAmount()
public void set(UnderlyingCashType value)
public UnderlyingCashType get(UnderlyingCashType value) throws FieldNotFound
FieldNotFound
public UnderlyingCashType getUnderlyingCashType() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingCashType field)
public boolean isSetUnderlyingCashType()
public void set(UnderlyingUnitOfMeasure value)
public UnderlyingUnitOfMeasure get(UnderlyingUnitOfMeasure value) throws FieldNotFound
FieldNotFound
public UnderlyingUnitOfMeasure getUnderlyingUnitOfMeasure() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingUnitOfMeasure field)
public boolean isSetUnderlyingUnitOfMeasure()
public void set(UnderlyingTimeUnit value)
public UnderlyingTimeUnit get(UnderlyingTimeUnit value) throws FieldNotFound
FieldNotFound
public UnderlyingTimeUnit getUnderlyingTimeUnit() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingTimeUnit field)
public boolean isSetUnderlyingTimeUnit()
public void set(UnderlyingCapValue value)
public UnderlyingCapValue get(UnderlyingCapValue value) throws FieldNotFound
FieldNotFound
public UnderlyingCapValue getUnderlyingCapValue() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingCapValue field)
public boolean isSetUnderlyingCapValue()
public void set(UndlyInstrumentParties component)
public UndlyInstrumentParties get(UndlyInstrumentParties component) throws FieldNotFound
FieldNotFound
public UndlyInstrumentParties getUndlyInstrumentParties() throws FieldNotFound
FieldNotFound
public void set(NoUndlyInstrumentParties value)
public NoUndlyInstrumentParties get(NoUndlyInstrumentParties value) throws FieldNotFound
FieldNotFound
public NoUndlyInstrumentParties getNoUndlyInstrumentParties() throws FieldNotFound
FieldNotFound
public boolean isSet(NoUndlyInstrumentParties field)
public boolean isSetNoUndlyInstrumentParties()
public void set(UnderlyingSettlMethod value)
public UnderlyingSettlMethod get(UnderlyingSettlMethod value) throws FieldNotFound
FieldNotFound
public UnderlyingSettlMethod getUnderlyingSettlMethod() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingSettlMethod field)
public boolean isSetUnderlyingSettlMethod()
public void set(UnderlyingAdjustedQuantity value)
public UnderlyingAdjustedQuantity get(UnderlyingAdjustedQuantity value) throws FieldNotFound
FieldNotFound
public UnderlyingAdjustedQuantity getUnderlyingAdjustedQuantity() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingAdjustedQuantity field)
public boolean isSetUnderlyingAdjustedQuantity()
public void set(UnderlyingFXRate value)
public UnderlyingFXRate get(UnderlyingFXRate value) throws FieldNotFound
FieldNotFound
public UnderlyingFXRate getUnderlyingFXRate() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingFXRate field)
public boolean isSetUnderlyingFXRate()
public void set(UnderlyingFXRateCalc value)
public UnderlyingFXRateCalc get(UnderlyingFXRateCalc value) throws FieldNotFound
FieldNotFound
public UnderlyingFXRateCalc getUnderlyingFXRateCalc() throws FieldNotFound
FieldNotFound
public boolean isSet(UnderlyingFXRateCalc field)
public boolean isSetUnderlyingFXRateCalc()
Copyright © 2021. All rights reserved.