Ejemplo n.º 1
0
        // Token: 0x06002FD4 RID: 12244 RVA: 0x001169D4 File Offset: 0x00114BD4
        private static void AddConflictingAppointmentsInfobarMessage(Infobar infobar, AdjacencyOrConflictInfo[] adjacencyOrConflictInfo, UserContext userContext, CalendarItemType calendarItemType, string receivedRepresentingDisplayName, OwaStoreObjectId folderId)
        {
            List <AdjacencyOrConflictInfo> list  = new List <AdjacencyOrConflictInfo>();
            List <AdjacencyOrConflictInfo> list2 = new List <AdjacencyOrConflictInfo>();
            List <AdjacencyOrConflictInfo> list3 = new List <AdjacencyOrConflictInfo>();

            for (int i = 0; i < adjacencyOrConflictInfo.Length; i++)
            {
                AdjacencyOrConflictType adjacencyOrConflictType = adjacencyOrConflictInfo[i].AdjacencyOrConflictType;
                BusyType freeBusyStatus = adjacencyOrConflictInfo[i].FreeBusyStatus;
                if (freeBusyStatus != BusyType.Free)
                {
                    if ((adjacencyOrConflictType & AdjacencyOrConflictType.Conflicts) != (AdjacencyOrConflictType)0)
                    {
                        list.Add(adjacencyOrConflictInfo[i]);
                    }
                    else if ((adjacencyOrConflictType & AdjacencyOrConflictType.Precedes) != (AdjacencyOrConflictType)0)
                    {
                        list2.Add(adjacencyOrConflictInfo[i]);
                    }
                    else if ((adjacencyOrConflictType & AdjacencyOrConflictType.Follows) != (AdjacencyOrConflictType)0)
                    {
                        list3.Add(adjacencyOrConflictInfo[i]);
                    }
                }
            }
            if (list.Count == 0 && list2.Count == 0 && list3.Count == 0)
            {
                return;
            }
            SanitizedHtmlString sanitizedHtmlString = null;

            if (calendarItemType != CalendarItemType.RecurringMaster)
            {
                SanitizingStringBuilder <OwaHtml> sanitizingStringBuilder = new SanitizingStringBuilder <OwaHtml>();
                Strings.IDs localizedId  = 1786149639;
                Strings.IDs localizedId2 = -669919370;
                if (list.Count > 0)
                {
                    if (string.IsNullOrEmpty(receivedRepresentingDisplayName))
                    {
                        sanitizedHtmlString = SanitizedHtmlString.FromStringId(-812272237);
                    }
                    else
                    {
                        sanitizedHtmlString = SanitizedHtmlString.FromStringId(49937409);
                    }
                }
                else if (list2.Count > 0 && list3.Count > 0)
                {
                    if (string.IsNullOrEmpty(receivedRepresentingDisplayName))
                    {
                        sanitizedHtmlString = SanitizedHtmlString.FromStringId(2138994880);
                    }
                    else
                    {
                        sanitizedHtmlString = SanitizedHtmlString.FromStringId(-1207817018);
                    }
                    localizedId  = -1877110893;
                    localizedId2 = 1083835406;
                }
                else if (list2.Count > 0)
                {
                    if (string.IsNullOrEmpty(receivedRepresentingDisplayName))
                    {
                        sanitizedHtmlString = SanitizedHtmlString.FromStringId(-1508975609);
                    }
                    else
                    {
                        sanitizedHtmlString = SanitizedHtmlString.FromStringId(602898401);
                    }
                    localizedId  = 2029212075;
                    localizedId2 = -1796482192;
                }
                else if (list3.Count > 0)
                {
                    if (string.IsNullOrEmpty(receivedRepresentingDisplayName))
                    {
                        sanitizedHtmlString = SanitizedHtmlString.FromStringId(-1710537313);
                    }
                    else
                    {
                        sanitizedHtmlString = SanitizedHtmlString.FromStringId(-996033031);
                    }
                    localizedId  = -608468101;
                    localizedId2 = -1733349590;
                }
                sanitizingStringBuilder.Append("<span id=spnS class=IbL>");
                sanitizingStringBuilder.Append(LocalizedStrings.GetNonEncoded(localizedId));
                sanitizingStringBuilder.Append("</span>");
                sanitizingStringBuilder.Append("<span id=spnH class=IbL style=\"display:none\">");
                sanitizingStringBuilder.Append(LocalizedStrings.GetNonEncoded(localizedId2));
                sanitizingStringBuilder.Append("</span>");
                SanitizingStringBuilder <OwaHtml> sanitizingStringBuilder2 = new SanitizingStringBuilder <OwaHtml>();
                sanitizingStringBuilder2.Append("<div id=\"divCnf\">");
                if (list.Count > 0)
                {
                    sanitizingStringBuilder2.Append <SanitizedHtmlString>(CalendarUtilities.BuildAdjacencyOrConflictSection(list, LocalizedStrings.GetNonEncoded(-1874853770), userContext, folderId));
                }
                if (list2.Count > 0)
                {
                    sanitizingStringBuilder2.Append <SanitizedHtmlString>(CalendarUtilities.BuildAdjacencyOrConflictSection(list2, LocalizedStrings.GetNonEncoded(2095567903), userContext, folderId));
                }
                if (list3.Count > 0)
                {
                    sanitizingStringBuilder2.Append <SanitizedHtmlString>(CalendarUtilities.BuildAdjacencyOrConflictSection(list3, LocalizedStrings.GetNonEncoded(-51439729), userContext, folderId));
                }
                sanitizingStringBuilder2.Append("</div>");
                if (!string.IsNullOrEmpty(receivedRepresentingDisplayName))
                {
                    sanitizedHtmlString = SanitizedHtmlString.Format(sanitizedHtmlString.ToString(), new object[]
                    {
                        receivedRepresentingDisplayName
                    });
                }
                infobar.AddMessage(sanitizedHtmlString, InfobarMessageType.Expanding, "divIbL", sanitizingStringBuilder.ToSanitizedString <SanitizedHtmlString>(), sanitizingStringBuilder2.ToSanitizedString <SanitizedHtmlString>());
                return;
            }
            if (list.Count > 0)
            {
                sanitizedHtmlString = SanitizedHtmlString.FromStringId(890561325);
            }
            else if (list2.Count > 0 || list3.Count > 0)
            {
                sanitizedHtmlString = SanitizedHtmlString.FromStringId(1923039961);
            }
            infobar.AddMessage(sanitizedHtmlString, InfobarMessageType.Informational);
        }
Ejemplo n.º 2
0
        public PreFormActionResponse Execute(OwaContext owaContext, out ApplicationElement applicationElement, out string type, out string state, out string action)
        {
            if (owaContext == null)
            {
                throw new ArgumentNullException("owaContext");
            }
            applicationElement = ApplicationElement.NotSet;
            type   = string.Empty;
            action = string.Empty;
            state  = string.Empty;
            PreFormActionResponse preFormActionResponse = new PreFormActionResponse();
            Item        item        = null;
            Item        item2       = null;
            MessageItem messageItem = null;

            try
            {
                HttpContext          httpContext        = owaContext.HttpContext;
                UserContext          userContext        = owaContext.UserContext;
                PropertyDefinition[] prefetchProperties = new PropertyDefinition[]
                {
                    ItemSchema.SentTime
                };
                item        = Utilities.GetItemForRequest <MessageItem>(owaContext, out item2, prefetchProperties);
                messageItem = ((ReportMessage)item).CreateSendAgain(userContext.DraftsFolderId);
                if (messageItem is RightsManagedMessageItem)
                {
                    SanitizedHtmlString sanitizedHtmlString = SanitizedHtmlString.Format(LocalizedStrings.GetHtmlEncoded(1049269714), new object[]
                    {
                        Utilities.GetOfficeDownloadAnchor(BodyFormat.TextPlain, userContext.UserCulture)
                    });
                    throw new OwaCannotEditIrmDraftException(sanitizedHtmlString.ToString());
                }
                messageItem.Save(SaveMode.ResolveConflicts);
                messageItem.Load();
                preFormActionResponse.ApplicationElement = ApplicationElement.Item;
                preFormActionResponse.Type   = messageItem.ClassName;
                preFormActionResponse.Action = "Open";
                preFormActionResponse.State  = "Draft";
                preFormActionResponse.AddParameter("id", messageItem.Id.ObjectId.ToBase64String());
            }
            finally
            {
                if (item != null)
                {
                    item.Dispose();
                    item = null;
                }
                if (messageItem != null)
                {
                    messageItem.Dispose();
                    messageItem = null;
                }
                if (item2 != null)
                {
                    item2.Dispose();
                    item2 = null;
                }
            }
            return(preFormActionResponse);
        }
Ejemplo n.º 3
0
 protected override void OnLoad(EventArgs e)
 {
     base.OnLoad(e);
     if (this.IsPageCacheable)
     {
         Utilities.MakePageCacheable(base.Response);
     }
     else
     {
         Utilities.MakePageNoCacheNoStore(base.Response);
     }
     this.InitializeMessage();
     if (this.PageSupportSmime && this.message != null && Utilities.IsSMime(this.message))
     {
         if (!Utilities.IsSMimeFeatureUsable(base.OwaContext))
         {
             throw new OwaNeedsSMimeControlToEditDraftException(LocalizedStrings.GetNonEncoded(-1507367759));
         }
         if (Utilities.IsFlagSet((int)base.ClientSMimeControlStatus, 1))
         {
             throw new OwaNeedsSMimeControlToEditDraftException(LocalizedStrings.GetNonEncoded(-872682934));
         }
         if (Utilities.IsFlagSet((int)base.ClientSMimeControlStatus, 2))
         {
             throw new OwaNeedsSMimeControlToEditDraftException(LocalizedStrings.GetNonEncoded(-1103993212));
         }
         if (!Utilities.CheckSMimeEditFormBasicRequirement(base.ClientSMimeControlStatus, base.OwaContext))
         {
             throw new OwaNeedsSMimeControlToEditDraftException(LocalizedStrings.GetNonEncoded(-1507367759));
         }
     }
     if (!base.UserContext.IsIrmEnabled && this.message != null && Utilities.IsIrmRestricted(this.message))
     {
         SanitizedHtmlString sanitizedHtmlString = SanitizedHtmlString.Format(LocalizedStrings.GetHtmlEncoded(1049269714), new object[]
         {
             Utilities.GetOfficeDownloadAnchor(Microsoft.Exchange.Data.Storage.BodyFormat.TextPlain, base.UserContext.UserCulture)
         });
         throw new OwaCannotEditIrmDraftException(sanitizedHtmlString.ToString());
     }
     if (this.message != null)
     {
         string action = base.OwaContext.FormsRegistryContext.Action;
         string state  = base.OwaContext.FormsRegistryContext.State;
         if (string.CompareOrdinal(action, "Reply") == 0 || string.CompareOrdinal(action, "ReplyAll") == 0)
         {
             this.newItemType = NewItemType.Reply;
         }
         else if (string.CompareOrdinal(action, "Forward") == 0)
         {
             this.newItemType = NewItemType.Forward;
         }
         else if (string.Equals(action, "Open", StringComparison.OrdinalIgnoreCase) && string.Equals(state, "Draft", StringComparison.OrdinalIgnoreCase))
         {
             this.newItemType = NewItemType.ExplicitDraft;
             if (this.message.GetValueOrDefault <bool>(MessageItemSchema.HasBeenSubmitted))
             {
                 this.message.AbortSubmit();
             }
         }
         else
         {
             this.newItemType         = NewItemType.ImplicitDraft;
             base.DeleteExistingDraft = true;
         }
     }
     else
     {
         this.CreateDraftMessage();
     }
     if (this.message != null && Utilities.IsPublic(this.message))
     {
         throw new OwaInvalidRequestException("No way to open a public message in edit form");
     }
     if (this.IsSMimeControlNeeded && this.PageSupportSmime)
     {
         this.bodyMarkup = Markup.Html;
     }
     else
     {
         this.bodyMarkup = BodyConversionUtilities.GetBodyFormatOfEditItem(base.Item, this.newItemType, base.UserContext.UserOptions);
     }
     this.SetIsOtherFolder();
     this.infobar.SetInfobarClass("infobarEdit");
     this.infobar.SetShouldHonorHideByDefault(true);
     if (this.newItemType != NewItemType.New)
     {
         if (this.newItemType == NewItemType.ExplicitDraft)
         {
             this.infobar.AddMessage(SanitizedHtmlString.FromStringId(-1981719796), InfobarMessageType.Informational);
         }
         InfobarMessageBuilder.AddSensitivity(this.infobar, this.message);
         if (this.newItemType != NewItemType.ImplicitDraft)
         {
             InfobarMessageBuilder.AddCompliance(base.UserContext, this.infobar, this.message, true);
         }
         if (base.UserContext.IsIrmEnabled && this.message != null)
         {
             InfobarMessageBuilder.AddIrmInformation(this.infobar, this.message, false, true, false, this.IsIrmAsAttachment);
         }
         this.recipientWell       = new MessageRecipientWell(this.message);
         this.showBcc             = (this.recipientWell.HasRecipients(RecipientWellType.Bcc) || base.UserContext.UserOptions.AlwaysShowBcc);
         this.showFrom            = (this.recipientWell.HasRecipients(RecipientWellType.From) || base.UserContext.UserOptions.AlwaysShowFrom || this.isOtherFolder);
         this.toolbar             = this.BuildToolbar();
         this.toolbar.ToolbarType = (base.IsPreviewForm ? ToolbarType.Preview : ToolbarType.Form);
         this.addSignatureToBody  = base.ShouldAddSignatureToBody(this.bodyMarkup, this.newItemType);
     }
     else
     {
         this.recipientWell       = new MessageRecipientWell();
         this.showBcc             = base.UserContext.UserOptions.AlwaysShowBcc;
         this.showFrom            = (base.UserContext.UserOptions.AlwaysShowFrom || this.isOtherFolder);
         this.toolbar             = new EditMessageToolbar(Importance.Normal, this.bodyMarkup, this.IsSMimeControlMustUpdate, this.IsSMimeControlNeeded, false, false);
         this.toolbar.ToolbarType = (base.IsPreviewForm ? ToolbarType.Preview : ToolbarType.Form);
     }
     if (base.OwaContext.UserContext.IsFeatureEnabled(Feature.SMime) && this.PageSupportSmime)
     {
         if (this.IsSMimeControlNeeded && Utilities.IsFlagSet((int)base.ClientSMimeControlStatus, 4))
         {
             this.infobar.AddMessage(SanitizedHtmlString.FromStringId(330022834), InfobarMessageType.Informational);
         }
         else if (this.IsSMimeControlMustUpdate)
         {
             this.infobar.AddMessage(SanitizedHtmlString.FromStringId(1697878138), InfobarMessageType.Informational);
         }
         if (Utilities.IsSMimeControlNeededForEditForm(base.ClientSMimeControlStatus, base.OwaContext) && this.ShowFrom)
         {
             this.infobar.AddMessage(SanitizedHtmlString.FromStringId(-1863471683), InfobarMessageType.Informational);
         }
         if (!Utilities.IsFlagSet((int)base.ClientSMimeControlStatus, 1) && !Utilities.IsFlagSet((int)base.ClientSMimeControlStatus, 16) && !base.OwaContext.UserContext.IsExplicitLogonOthersMailbox)
         {
             this.infobar.AddMessage(SanitizedHtmlString.FromStringId(-1908761042), InfobarMessageType.Warning);
         }
     }
     if (this.Message != null && this.IsRemoveRestricted)
     {
         this.toolbar.IsComplianceButtonEnabledInForm = false;
     }
     if (this.ShowFrom && this.IsFromWellRestricted)
     {
         this.infobar.AddMessage(SanitizedHtmlString.FromStringId(885106754), InfobarMessageType.Informational);
     }
     if (this.message != null && this.newItemType == NewItemType.ExplicitDraft && Utilities.IsInArchiveMailbox(base.Item))
     {
         this.toolbar.IsSendButtonEnabledInForm = false;
     }
 }
        internal static bool GetReminderItemsInternal(UserContext userContext, ExDateTime actualizationTime, TextWriter output)
        {
            bool            result = false;
            string          name   = userContext.UserCulture.Name;
            List <object[]> list   = RemindersRenderingUtilities.QueryReminders(actualizationTime, userContext);

            if (list.Count == 0)
            {
                return(false);
            }
            foreach (object[] reminder in list)
            {
                ExDateTime exDateTime  = RemindersRenderingUtilities.GetItemProperty <ExDateTime>(reminder, ItemSchema.ReminderDueBy, ExDateTime.MinValue);
                ExDateTime exDateTime2 = RemindersRenderingUtilities.GetItemProperty <ExDateTime>(reminder, ItemSchema.ReminderNextTime, ExDateTime.MinValue);
                if (!(exDateTime == ExDateTime.MinValue) && !(exDateTime2 == ExDateTime.MinValue) && !(exDateTime2 == RemindersRenderingUtilities.MaxOutlookDate))
                {
                    string itemProperty  = RemindersRenderingUtilities.GetItemProperty <string>(reminder, StoreObjectSchema.ItemClass, string.Empty);
                    bool   itemProperty2 = RemindersRenderingUtilities.GetItemProperty <bool>(reminder, MessageItemSchema.IsDraft, false);
                    int    itemProperty3 = RemindersRenderingUtilities.GetItemProperty <int>(reminder, MessageItemSchema.SwappedToDoStore, -1);
                    if (itemProperty.IndexOf("IPM.Schedule.Meeting", StringComparison.OrdinalIgnoreCase) == -1 && (itemProperty.IndexOf("IPM.Note", StringComparison.OrdinalIgnoreCase) == -1 || !itemProperty2) && itemProperty3 == -1)
                    {
                        ExDateTime itemProperty4 = RemindersRenderingUtilities.GetItemProperty <ExDateTime>(reminder, CalendarItemInstanceSchema.StartTime, ExDateTime.MinValue);
                        ExDateTime itemProperty5 = RemindersRenderingUtilities.GetItemProperty <ExDateTime>(reminder, CalendarItemInstanceSchema.EndTime, ExDateTime.MinValue);
                        int        num           = (int)(itemProperty5 - itemProperty4).TotalMinutes;
                        if (num < 0)
                        {
                            num = 0;
                        }
                        bool        flag          = ObjectClass.IsCalendarItem(itemProperty);
                        VersionedId itemProperty6 = RemindersRenderingUtilities.GetItemProperty <VersionedId>(reminder, ItemSchema.Id);
                        bool        flag2         = false;
                        if (flag)
                        {
                            CalendarItemType itemProperty7 = RemindersRenderingUtilities.GetItemProperty <CalendarItemType>(reminder, CalendarItemBaseSchema.CalendarItemType, CalendarItemType.Single);
                            flag2 = (itemProperty7 == CalendarItemType.RecurringMaster);
                        }
                        VersionedId versionedId = null;
                        string      text;
                        string      text2;
                        if (flag2)
                        {
                            CalendarItemOccurrence calendarItemOccurrence = null;
                            Item item = null;
                            try
                            {
                                try
                                {
                                    item = Utilities.GetItem <Item>(userContext, itemProperty6.ObjectId, new PropertyDefinition[0]);
                                    if (item.Reminder != null)
                                    {
                                        calendarItemOccurrence = (item.Reminder.GetPertinentItem(actualizationTime) as CalendarItemOccurrence);
                                    }
                                    if (calendarItemOccurrence == null)
                                    {
                                        continue;
                                    }
                                    object obj  = calendarItemOccurrence.Reminder.DueBy;
                                    object obj2 = calendarItemOccurrence.Reminder.ReminderNextTime;
                                    if (obj == null || obj2 == null)
                                    {
                                        continue;
                                    }
                                    exDateTime2 = (ExDateTime)obj2;
                                    exDateTime  = (ExDateTime)obj;
                                    versionedId = calendarItemOccurrence.Id;
                                    text        = calendarItemOccurrence.Subject;
                                    text2       = calendarItemOccurrence.Location;
                                }
                                catch (StoragePermanentException ex)
                                {
                                    ExTraceGlobals.CalendarDataTracer.TraceDebug <string>(0L, "Unable to retrieve calendar item occurence for this reminder.  Exception: {0}", ex.Message);
                                    result = true;
                                    continue;
                                }
                                catch (StorageTransientException ex2)
                                {
                                    ExTraceGlobals.CalendarDataTracer.TraceDebug <string>(0L, "Unable to retrieve calendar item occurence for this reminder.  Exception: {0}", ex2.Message);
                                    result = true;
                                    continue;
                                }
                                goto IL_289;
                            }
                            finally
                            {
                                if (item != null)
                                {
                                    item.Dispose();
                                    item = null;
                                }
                                if (calendarItemOccurrence != null)
                                {
                                    calendarItemOccurrence.Dispose();
                                    calendarItemOccurrence = null;
                                }
                            }
                            goto IL_26D;
                        }
                        goto IL_26D;
IL_289:
                        using (StringWriter stringWriter = new StringWriter())
                        {
                            stringWriter.Write("<div _lnk=1 class=\"divNotificationsItem\" id=\"b");
                            Utilities.HtmlEncode(itemProperty6.ObjectId.ToBase64String(), stringWriter);
                            stringWriter.Write("\" ck=\"");
                            Utilities.HtmlEncode(itemProperty6.ChangeKeyAsBase64String(), stringWriter);
                            if (flag2)
                            {
                                stringWriter.Write("\" oid=\"");
                                Utilities.HtmlEncode(versionedId.ObjectId.ToBase64String(), stringWriter);
                            }
                            stringWriter.Write("\" t=\"");
                            Utilities.HtmlEncode(DateTimeUtilities.GetJavascriptDate(exDateTime), stringWriter);
                            stringWriter.Write("\" c=\"");
                            Utilities.HtmlEncode(itemProperty, stringWriter);
                            stringWriter.Write("\" r=\"");
                            Utilities.HtmlEncode(DateTimeUtilities.GetJavascriptDate(exDateTime2), stringWriter);
                            stringWriter.Write("\" d=\"");
                            stringWriter.Write(num);
                            SanitizedHtmlString sanitizedHtmlString = null;
                            if (!string.IsNullOrEmpty(text))
                            {
                                sanitizedHtmlString = Utilities.SanitizeHtmlEncode(text);
                            }
                            SanitizedHtmlString sanitizedHtmlString2 = null;
                            if (!string.IsNullOrEmpty(text2))
                            {
                                sanitizedHtmlString2 = Utilities.SanitizeHtmlEncode(text2);
                            }
                            stringWriter.Write("\" subj=\"");
                            stringWriter.Write(sanitizedHtmlString);
                            stringWriter.Write("\" loc=\"");
                            stringWriter.Write(sanitizedHtmlString2);
                            string text3 = string.Format(userContext.UserCulture, LocalizedStrings.GetHtmlEncodedFromKey(name, 580192567), new object[]
                            {
                                Utilities.HtmlEncode(exDateTime.ToString(DateTimeFormatInfo.CurrentInfo.LongDatePattern)),
                                Utilities.HtmlEncode(exDateTime.ToString(userContext.UserOptions.TimeFormat))
                            });
                            stringWriter.Write("\" due=\"");
                            stringWriter.Write(text3);
                            stringWriter.Write("\" tabindex=0>");
                            SmallIconManager.RenderItemIcon(stringWriter, userContext, itemProperty, false, -1, string.Empty, new string[]
                            {
                                "id=\"imgNtfyEnt\""
                            });
                            stringWriter.Write("<DIV id=\"c3\" class=\"divNotificationsColumn3\"><div id=\"c3Time\" class=\"divRemindersDueInTime\"></div><div id=\"c3Text\" class=\"divRemindersDueInText\"></div></div>");
                            stringWriter.Write("<DIV id=\"c2\" class=\"divNotificationsColumn2\"><div id=\"c2Time\" class=\"divRemindersDueInTime\"></div><div id=\"c2Text\" class=\"divRemindersDueInText\"></div></div>");
                            stringWriter.Write("<DIV id=\"c1\" class=\"divNotificationsColumn1\"><div id=\"c1Row1\" class=\"divNotificationsColumn1Row1\">{0}</div><div id=\"c1Row2\" class=\"divNotificationsColumn1Row2\">{1}</div>", (sanitizedHtmlString != null) ? sanitizedHtmlString.ToString() : string.Empty, text3);
                            if (sanitizedHtmlString2 != null)
                            {
                                stringWriter.Write("<div id=\"c1Row3\" class=\"divNotificationsColumn1Row3\">");
                                stringWriter.Write(sanitizedHtmlString2);
                                stringWriter.Write("</div>");
                            }
                            stringWriter.Write("</div></div>");
                            Utilities.JavascriptEncode(stringWriter.ToString(), output);
                        }
                        continue;
IL_26D:
                        text  = RemindersRenderingUtilities.GetItemProperty <string>(reminder, ItemSchema.Subject, null);
                        text2 = RemindersRenderingUtilities.GetItemProperty <string>(reminder, CalendarItemBaseSchema.Location, null);
                        goto IL_289;
                    }
                }
            }
            return(result);
        }