private static DaysAdjustment expiryDateOffset(DaysAdjustment spotDateOffset)
        {
            ArgChecker.isTrue(spotDateOffset.Adjustment.Equals(BusinessDayAdjustment.NONE), "BusinessDayAdjustment in spotDateOffset must be NONE if expiryDateOffset is created from spotDateOffset");
            DaysAdjustment adj = spotDateOffset.toBuilder().days(-spotDateOffset.Days).build();

            return(adj);
        }
        public override DaysAdjustment toIborIndexFixingOffset()
        {
            DaysAdjustment @base = FloatingRateName.this.toIborIndexFixingOffset();

            if (fixingDateOffsetDays == null)
            {
                return(@base);
            }
            if (fixingDateOffsetDays == 0)
            {
                return(DaysAdjustment.ofCalendarDays(0, BusinessDayAdjustment.of(PRECEDING, @base.ResultCalendar)));
            }
            return(@base.toBuilder().days(fixingDateOffsetDays.Value).build().normalized());
        }