<?xml version="1.0" encoding="UTF-8"?>
<!--
  Kixlogic Hero manifest — rendered by scripts/make-manifest.ts, which fills
  ORIGIN, VERSION, TAB, URLS, SHORT and LONG from the
  utility and lens registries, so every utility added in code lands on the
  ribbon without editing this file.

  Everything is pinned to https://hero.kixlogic.com. For a firm deployment only the origin
  changes — the add-in reads the workbook locally either way and sends nothing.

  Element order in OfficeApp is fixed by the schema:
    Id, Version, ProviderName, DefaultLocale, DisplayName, Description,
    IconUrl, HighResolutionIconUrl, SupportUrl, Hosts, Requirements,
    DefaultSettings, Permissions, VersionOverrides
  Getting it wrong makes Office reject the manifest with no visible error.
  Run `npx office-addin-manifest validate addin/hosted/manifest.xml` after any edit.

  The ribbon is a tab of its own (like ASAP Utilities): a Powers group and one
  drop-down menu per utility group. Menu items execute directly through the
  shared runtime — the same page as the task pane, kept loaded — and the pane
  opens only to show the log line. Hosts without SharedRuntime (Excel 2019
  perpetual) load the add-in from Insert > My Add-ins with no ribbon.
-->
<OfficeApp
  xmlns="http://schemas.microsoft.com/office/appforoffice/1.1"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0"
  xmlns:ov="http://schemas.microsoft.com/office/taskpaneappversionoverrides"
  xsi:type="TaskPaneApp">

  <Id>12bd1552-ca23-4b95-93e5-4408b5cabe3c</Id>
  <!-- Office caches manifests by Id AND Version: bump MANIFEST_VERSION in
       scripts/make-manifest.ts on every ribbon change, or Excel keeps the old one. -->
  <Version>1.6.0.0</Version>
  <ProviderName>Kixlogic</ProviderName>
  <DefaultLocale>en-US</DefaultLocale>
  <DisplayName DefaultValue="Kixlogic Hero" />
  <Description DefaultValue="Your Excel superpower: the close and payroll checkers, and the utilities. Runs on this computer; nothing is sent anywhere." />
  <IconUrl DefaultValue="https://hero.kixlogic.com/addin/hero-64.png" />
  <HighResolutionIconUrl DefaultValue="https://hero.kixlogic.com/addin/hero-128.png" />
  <SupportUrl DefaultValue="https://kixlogic.com" />

  <Hosts>
    <Host Name="Workbook" />
  </Hosts>

  <Requirements>
    <Sets DefaultMinVersion="1.7">
      <Set Name="ExcelApi" MinVersion="1.7" />
    </Sets>
  </Requirements>

  <DefaultSettings>
    <SourceLocation DefaultValue="https://hero.kixlogic.com/addin/taskpane.html" />
  </DefaultSettings>

  <Permissions>ReadWriteDocument</Permissions>

  <VersionOverrides xmlns="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="VersionOverridesV1_0">
    <!-- No SharedRuntime requirement set here: the schema validator rejects a
         Requirements element at this level, and a top-level one would shut out
         Excel 2019. The Runtimes element below is what gives Microsoft 365 the
         shared runtime; older hosts run menu items through the function file. -->
    <Hosts>
      <Host xsi:type="Workbook">
        <Runtimes>
          <Runtime resid="Taskpane.Url" lifetime="long" />
        </Runtimes>
        <DesktopFormFactor>
          <GetStarted>
            <Title resid="GetStarted.Title" />
            <Description resid="GetStarted.Description" />
            <LearnMoreUrl resid="GetStarted.LearnMoreUrl" />
          </GetStarted>
          <FunctionFile resid="Taskpane.Url" />
          <ExtensionPoint xsi:type="PrimaryCommandSurface">
          <CustomTab id="Kixlogic.Tab">
            <Group id="Kixlogic.Powers">
              <Label resid="Powers.Label" />
              <Icon>
                <bt:Image size="16" resid="Icon.16" />
                <bt:Image size="32" resid="Icon.32" />
                <bt:Image size="80" resid="Icon.80" />
              </Icon>
              <Control xsi:type="Button" id="Kixlogic.Hero">
                <Label resid="Kixlogic.Hero.Label" />
                <Supertip>
                  <Title resid="Kixlogic.Hero.Label" />
                  <Description resid="Kixlogic.Hero.Tip" />
                </Supertip>
                <Icon>
                  <bt:Image size="16" resid="Icon.16" />
                  <bt:Image size="32" resid="Icon.32" />
                  <bt:Image size="80" resid="Icon.80" />
                </Icon>
                <Action xsi:type="ShowTaskpane">
                  <TaskpaneId>Kixlogic.Taskpane</TaskpaneId>
                  <SourceLocation resid="Taskpane.Url" />
                </Action>
              </Control>
              <Control xsi:type="Button" id="Kixlogic.Power.close">
                <Label resid="Kixlogic.Power.close.Label" />
                <Supertip>
                  <Title resid="Kixlogic.Power.close.Label" />
                  <Description resid="Kixlogic.Power.close.Tip" />
                </Supertip>
                <Icon>
                  <bt:Image size="16" resid="Icon.16" />
                  <bt:Image size="32" resid="Icon.32" />
                  <bt:Image size="80" resid="Icon.80" />
                </Icon>
                <Action xsi:type="ShowTaskpane">
                  <TaskpaneId>Kixlogic.Taskpane</TaskpaneId>
                  <SourceLocation resid="Taskpane.close.Url" />
                </Action>
              </Control>
              <Control xsi:type="Button" id="Kixlogic.Power.payroll">
                <Label resid="Kixlogic.Power.payroll.Label" />
                <Supertip>
                  <Title resid="Kixlogic.Power.payroll.Label" />
                  <Description resid="Kixlogic.Power.payroll.Tip" />
                </Supertip>
                <Icon>
                  <bt:Image size="16" resid="Icon.16" />
                  <bt:Image size="32" resid="Icon.32" />
                  <bt:Image size="80" resid="Icon.80" />
                </Icon>
                <Action xsi:type="ShowTaskpane">
                  <TaskpaneId>Kixlogic.Taskpane</TaskpaneId>
                  <SourceLocation resid="Taskpane.payroll.Url" />
                </Action>
              </Control>
            </Group>
            <Group id="Kixlogic.G.Fix">
              <Label resid="Kixlogic.G.Fix.Label" />
              <Icon>
                <bt:Image size="16" resid="Icon.16" />
                <bt:Image size="32" resid="Icon.32" />
                <bt:Image size="80" resid="Icon.80" />
              </Icon>
              <Control xsi:type="Menu" id="Kixlogic.G.Fix.Menu">
                <Label resid="Kixlogic.G.Fix.Menu.Label" />
                <Supertip>
                  <Title resid="Kixlogic.G.Fix.Menu.Label" />
                  <Description resid="Kixlogic.G.Fix.Menu.Tip" />
                </Supertip>
                <Icon>
                  <bt:Image size="16" resid="Icon.16" />
                  <bt:Image size="32" resid="Icon.32" />
                  <bt:Image size="80" resid="Icon.80" />
                </Icon>
                <Items>
                  <Item id="Kixlogic.U.text-to-numbers">
                    <Label resid="U.text-to-numbers.Label" />
                    <Supertip>
                      <Title resid="U.text-to-numbers.Label" />
                      <Description resid="U.text-to-numbers.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_text_to_numbers</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.text-to-dates">
                    <Label resid="U.text-to-dates.Label" />
                    <Supertip>
                      <Title resid="U.text-to-dates.Label" />
                      <Description resid="U.text-to-dates.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_text_to_dates</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.break-links">
                    <Label resid="U.break-links.Label" />
                    <Supertip>
                      <Title resid="U.break-links.Label" />
                      <Description resid="U.break-links.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_break_links</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.highlight-hardcodes">
                    <Label resid="U.highlight-hardcodes.Label" />
                    <Supertip>
                      <Title resid="U.highlight-hardcodes.Label" />
                      <Description resid="U.highlight-hardcodes.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_highlight_hardcodes</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.select-errors">
                    <Label resid="U.select-errors.Label" />
                    <Supertip>
                      <Title resid="U.select-errors.Label" />
                      <Description resid="U.select-errors.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_select_errors</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.highlight-duplicate-rows">
                    <Label resid="U.highlight-duplicate-rows.Label" />
                    <Supertip>
                      <Title resid="U.highlight-duplicate-rows.Label" />
                      <Description resid="U.highlight-duplicate-rows.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_highlight_duplicate_rows</FunctionName>
                    </Action>
                  </Item>
                </Items>
              </Control>
            </Group>
            <Group id="Kixlogic.G.Reconcile">
              <Label resid="Kixlogic.G.Reconcile.Label" />
              <Icon>
                <bt:Image size="16" resid="Icon.16" />
                <bt:Image size="32" resid="Icon.32" />
                <bt:Image size="80" resid="Icon.80" />
              </Icon>
              <Control xsi:type="Menu" id="Kixlogic.G.Reconcile.Menu">
                <Label resid="Kixlogic.G.Reconcile.Menu.Label" />
                <Supertip>
                  <Title resid="Kixlogic.G.Reconcile.Menu.Label" />
                  <Description resid="Kixlogic.G.Reconcile.Menu.Tip" />
                </Supertip>
                <Icon>
                  <bt:Image size="16" resid="Icon.16" />
                  <bt:Image size="32" resid="Icon.32" />
                  <bt:Image size="80" resid="Icon.80" />
                </Icon>
                <Items>
                  <Item id="Kixlogic.U.match-lists">
                    <Label resid="U.match-lists.Label" />
                    <Supertip>
                      <Title resid="U.match-lists.Label" />
                      <Description resid="U.match-lists.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_match_lists</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.compare-sheets">
                    <Label resid="U.compare-sheets.Label" />
                    <Supertip>
                      <Title resid="U.compare-sheets.Label" />
                      <Description resid="U.compare-sheets.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_compare_sheets</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.summarize-by">
                    <Label resid="U.summarize-by.Label" />
                    <Supertip>
                      <Title resid="U.summarize-by.Label" />
                      <Description resid="U.summarize-by.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_summarize_by</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.unique-values">
                    <Label resid="U.unique-values.Label" />
                    <Supertip>
                      <Title resid="U.unique-values.Label" />
                      <Description resid="U.unique-values.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_unique_values</FunctionName>
                    </Action>
                  </Item>
                </Items>
              </Control>
            </Group>
            <Group id="Kixlogic.G.Audit">
              <Label resid="Kixlogic.G.Audit.Label" />
              <Icon>
                <bt:Image size="16" resid="Icon.16" />
                <bt:Image size="32" resid="Icon.32" />
                <bt:Image size="80" resid="Icon.80" />
              </Icon>
              <Control xsi:type="Menu" id="Kixlogic.G.Audit.Menu">
                <Label resid="Kixlogic.G.Audit.Menu.Label" />
                <Supertip>
                  <Title resid="Kixlogic.G.Audit.Menu.Label" />
                  <Description resid="Kixlogic.G.Audit.Menu.Tip" />
                </Supertip>
                <Icon>
                  <bt:Image size="16" resid="Icon.16" />
                  <bt:Image size="32" resid="Icon.32" />
                  <bt:Image size="80" resid="Icon.80" />
                </Icon>
                <Items>
                  <Item id="Kixlogic.U.list-formulas">
                    <Label resid="U.list-formulas.Label" />
                    <Supertip>
                      <Title resid="U.list-formulas.Label" />
                      <Description resid="U.list-formulas.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_list_formulas</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.fragile-formulas">
                    <Label resid="U.fragile-formulas.Label" />
                    <Supertip>
                      <Title resid="U.fragile-formulas.Label" />
                      <Description resid="U.fragile-formulas.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_fragile_formulas</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.random-sample">
                    <Label resid="U.random-sample.Label" />
                    <Supertip>
                      <Title resid="U.random-sample.Label" />
                      <Description resid="U.random-sample.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_random_sample</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.benford">
                    <Label resid="U.benford.Label" />
                    <Supertip>
                      <Title resid="U.benford.Label" />
                      <Description resid="U.benford.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_benford</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.aging">
                    <Label resid="U.aging.Label" />
                    <Supertip>
                      <Title resid="U.aging.Label" />
                      <Description resid="U.aging.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_aging</FunctionName>
                    </Action>
                  </Item>
                </Items>
              </Control>
            </Group>
            <Group id="Kixlogic.G.HR">
              <Label resid="Kixlogic.G.HR.Label" />
              <Icon>
                <bt:Image size="16" resid="Icon.16" />
                <bt:Image size="32" resid="Icon.32" />
                <bt:Image size="80" resid="Icon.80" />
              </Icon>
              <Control xsi:type="Menu" id="Kixlogic.G.HR.Menu">
                <Label resid="Kixlogic.G.HR.Menu.Label" />
                <Supertip>
                  <Title resid="Kixlogic.G.HR.Menu.Label" />
                  <Description resid="Kixlogic.G.HR.Menu.Tip" />
                </Supertip>
                <Icon>
                  <bt:Image size="16" resid="Icon.16" />
                  <bt:Image size="32" resid="Icon.32" />
                  <bt:Image size="80" resid="Icon.80" />
                </Icon>
                <Items>
                  <Item id="Kixlogic.U.split-by-manager">
                    <Label resid="U.split-by-manager.Label" />
                    <Supertip>
                      <Title resid="U.split-by-manager.Label" />
                      <Description resid="U.split-by-manager.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_split_by_manager</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.workforce-profile">
                    <Label resid="U.workforce-profile.Label" />
                    <Supertip>
                      <Title resid="U.workforce-profile.Label" />
                      <Description resid="U.workforce-profile.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_workforce_profile</FunctionName>
                    </Action>
                  </Item>
                </Items>
              </Control>
            </Group>
            <Group id="Kixlogic.G.Text">
              <Label resid="Kixlogic.G.Text.Label" />
              <Icon>
                <bt:Image size="16" resid="Icon.16" />
                <bt:Image size="32" resid="Icon.32" />
                <bt:Image size="80" resid="Icon.80" />
              </Icon>
              <Control xsi:type="Menu" id="Kixlogic.G.Text.Menu">
                <Label resid="Kixlogic.G.Text.Menu.Label" />
                <Supertip>
                  <Title resid="Kixlogic.G.Text.Menu.Label" />
                  <Description resid="Kixlogic.G.Text.Menu.Tip" />
                </Supertip>
                <Icon>
                  <bt:Image size="16" resid="Icon.16" />
                  <bt:Image size="32" resid="Icon.32" />
                  <bt:Image size="80" resid="Icon.80" />
                </Icon>
                <Items>
                  <Item id="Kixlogic.U.trim-clean">
                    <Label resid="U.trim-clean.Label" />
                    <Supertip>
                      <Title resid="U.trim-clean.Label" />
                      <Description resid="U.trim-clean.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_trim_clean</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.upper">
                    <Label resid="U.upper.Label" />
                    <Supertip>
                      <Title resid="U.upper.Label" />
                      <Description resid="U.upper.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_upper</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.lower">
                    <Label resid="U.lower.Label" />
                    <Supertip>
                      <Title resid="U.lower.Label" />
                      <Description resid="U.lower.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_lower</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.proper">
                    <Label resid="U.proper.Label" />
                    <Supertip>
                      <Title resid="U.proper.Label" />
                      <Description resid="U.proper.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_proper</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.fill-blanks">
                    <Label resid="U.fill-blanks.Label" />
                    <Supertip>
                      <Title resid="U.fill-blanks.Label" />
                      <Description resid="U.fill-blanks.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_fill_blanks</FunctionName>
                    </Action>
                  </Item>
                </Items>
              </Control>
            </Group>
            <Group id="Kixlogic.G.Sheets">
              <Label resid="Kixlogic.G.Sheets.Label" />
              <Icon>
                <bt:Image size="16" resid="Icon.16" />
                <bt:Image size="32" resid="Icon.32" />
                <bt:Image size="80" resid="Icon.80" />
              </Icon>
              <Control xsi:type="Menu" id="Kixlogic.G.Sheets.Menu">
                <Label resid="Kixlogic.G.Sheets.Menu.Label" />
                <Supertip>
                  <Title resid="Kixlogic.G.Sheets.Menu.Label" />
                  <Description resid="Kixlogic.G.Sheets.Menu.Tip" />
                </Supertip>
                <Icon>
                  <bt:Image size="16" resid="Icon.16" />
                  <bt:Image size="32" resid="Icon.32" />
                  <bt:Image size="80" resid="Icon.80" />
                </Icon>
                <Items>
                  <Item id="Kixlogic.U.unhide-all">
                    <Label resid="U.unhide-all.Label" />
                    <Supertip>
                      <Title resid="U.unhide-all.Label" />
                      <Description resid="U.unhide-all.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_unhide_all</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.sheet-index">
                    <Label resid="U.sheet-index.Label" />
                    <Supertip>
                      <Title resid="U.sheet-index.Label" />
                      <Description resid="U.sheet-index.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_sheet_index</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.sort-sheets">
                    <Label resid="U.sort-sheets.Label" />
                    <Supertip>
                      <Title resid="U.sort-sheets.Label" />
                      <Description resid="U.sort-sheets.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_sort_sheets</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.freeze-here">
                    <Label resid="U.freeze-here.Label" />
                    <Supertip>
                      <Title resid="U.freeze-here.Label" />
                      <Description resid="U.freeze-here.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_freeze_here</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.unfreeze-all">
                    <Label resid="U.unfreeze-all.Label" />
                    <Supertip>
                      <Title resid="U.unfreeze-all.Label" />
                      <Description resid="U.unfreeze-all.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_unfreeze_all</FunctionName>
                    </Action>
                  </Item>
                </Items>
              </Control>
            </Group>
            <Group id="Kixlogic.G.Formulas">
              <Label resid="Kixlogic.G.Formulas.Label" />
              <Icon>
                <bt:Image size="16" resid="Icon.16" />
                <bt:Image size="32" resid="Icon.32" />
                <bt:Image size="80" resid="Icon.80" />
              </Icon>
              <Control xsi:type="Menu" id="Kixlogic.G.Formulas.Menu">
                <Label resid="Kixlogic.G.Formulas.Menu.Label" />
                <Supertip>
                  <Title resid="Kixlogic.G.Formulas.Menu.Label" />
                  <Description resid="Kixlogic.G.Formulas.Menu.Tip" />
                </Supertip>
                <Icon>
                  <bt:Image size="16" resid="Icon.16" />
                  <bt:Image size="32" resid="Icon.32" />
                  <bt:Image size="80" resid="Icon.80" />
                </Icon>
                <Items>
                  <Item id="Kixlogic.U.formulas-to-values">
                    <Label resid="U.formulas-to-values.Label" />
                    <Supertip>
                      <Title resid="U.formulas-to-values.Label" />
                      <Description resid="U.formulas-to-values.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_formulas_to_values</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.select-formulas">
                    <Label resid="U.select-formulas.Label" />
                    <Supertip>
                      <Title resid="U.select-formulas.Label" />
                      <Description resid="U.select-formulas.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_select_formulas</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.select-constants">
                    <Label resid="U.select-constants.Label" />
                    <Supertip>
                      <Title resid="U.select-constants.Label" />
                      <Description resid="U.select-constants.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_select_constants</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.select-blanks">
                    <Label resid="U.select-blanks.Label" />
                    <Supertip>
                      <Title resid="U.select-blanks.Label" />
                      <Description resid="U.select-blanks.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_select_blanks</FunctionName>
                    </Action>
                  </Item>
                </Items>
              </Control>
            </Group>
            <Group id="Kixlogic.G.Columns">
              <Label resid="Kixlogic.G.Columns.Label" />
              <Icon>
                <bt:Image size="16" resid="Icon.16" />
                <bt:Image size="32" resid="Icon.32" />
                <bt:Image size="80" resid="Icon.80" />
              </Icon>
              <Control xsi:type="Menu" id="Kixlogic.G.Columns.Menu">
                <Label resid="Kixlogic.G.Columns.Menu.Label" />
                <Supertip>
                  <Title resid="Kixlogic.G.Columns.Menu.Label" />
                  <Description resid="Kixlogic.G.Columns.Menu.Tip" />
                </Supertip>
                <Icon>
                  <bt:Image size="16" resid="Icon.16" />
                  <bt:Image size="32" resid="Icon.32" />
                  <bt:Image size="80" resid="Icon.80" />
                </Icon>
                <Items>
                  <Item id="Kixlogic.U.split-column">
                    <Label resid="U.split-column.Label" />
                    <Supertip>
                      <Title resid="U.split-column.Label" />
                      <Description resid="U.split-column.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_split_column</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.combine-columns">
                    <Label resid="U.combine-columns.Label" />
                    <Supertip>
                      <Title resid="U.combine-columns.Label" />
                      <Description resid="U.combine-columns.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_combine_columns</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.delete-blank-columns">
                    <Label resid="U.delete-blank-columns.Label" />
                    <Supertip>
                      <Title resid="U.delete-blank-columns.Label" />
                      <Description resid="U.delete-blank-columns.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_delete_blank_columns</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.autofit-columns">
                    <Label resid="U.autofit-columns.Label" />
                    <Supertip>
                      <Title resid="U.autofit-columns.Label" />
                      <Description resid="U.autofit-columns.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_autofit_columns</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.swap-columns">
                    <Label resid="U.swap-columns.Label" />
                    <Supertip>
                      <Title resid="U.swap-columns.Label" />
                      <Description resid="U.swap-columns.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_swap_columns</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.number-column">
                    <Label resid="U.number-column.Label" />
                    <Supertip>
                      <Title resid="U.number-column.Label" />
                      <Description resid="U.number-column.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_number_column</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.transpose">
                    <Label resid="U.transpose.Label" />
                    <Supertip>
                      <Title resid="U.transpose.Label" />
                      <Description resid="U.transpose.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_transpose</FunctionName>
                    </Action>
                  </Item>
                </Items>
              </Control>
            </Group>
            <Group id="Kixlogic.G.Rows">
              <Label resid="Kixlogic.G.Rows.Label" />
              <Icon>
                <bt:Image size="16" resid="Icon.16" />
                <bt:Image size="32" resid="Icon.32" />
                <bt:Image size="80" resid="Icon.80" />
              </Icon>
              <Control xsi:type="Menu" id="Kixlogic.G.Rows.Menu">
                <Label resid="Kixlogic.G.Rows.Menu.Label" />
                <Supertip>
                  <Title resid="Kixlogic.G.Rows.Menu.Label" />
                  <Description resid="Kixlogic.G.Rows.Menu.Tip" />
                </Supertip>
                <Icon>
                  <bt:Image size="16" resid="Icon.16" />
                  <bt:Image size="32" resid="Icon.32" />
                  <bt:Image size="80" resid="Icon.80" />
                </Icon>
                <Items>
                  <Item id="Kixlogic.U.remove-blank-rows">
                    <Label resid="U.remove-blank-rows.Label" />
                    <Supertip>
                      <Title resid="U.remove-blank-rows.Label" />
                      <Description resid="U.remove-blank-rows.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_remove_blank_rows</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.rows-blank-in-col">
                    <Label resid="U.rows-blank-in-col.Label" />
                    <Supertip>
                      <Title resid="U.rows-blank-in-col.Label" />
                      <Description resid="U.rows-blank-in-col.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_rows_blank_in_col</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.delete-hidden-rows">
                    <Label resid="U.delete-hidden-rows.Label" />
                    <Supertip>
                      <Title resid="U.delete-hidden-rows.Label" />
                      <Description resid="U.delete-hidden-rows.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_delete_hidden_rows</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.delete-duplicate-rows">
                    <Label resid="U.delete-duplicate-rows.Label" />
                    <Supertip>
                      <Title resid="U.delete-duplicate-rows.Label" />
                      <Description resid="U.delete-duplicate-rows.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_delete_duplicate_rows</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.insert-row-every">
                    <Label resid="U.insert-row-every.Label" />
                    <Supertip>
                      <Title resid="U.insert-row-every.Label" />
                      <Description resid="U.insert-row-every.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_insert_row_every</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.band-rows">
                    <Label resid="U.band-rows.Label" />
                    <Supertip>
                      <Title resid="U.band-rows.Label" />
                      <Description resid="U.band-rows.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_band_rows</FunctionName>
                    </Action>
                  </Item>
                  <Item id="Kixlogic.U.reverse-rows">
                    <Label resid="U.reverse-rows.Label" />
                    <Supertip>
                      <Title resid="U.reverse-rows.Label" />
                      <Description resid="U.reverse-rows.Tip" />
                    </Supertip>
                    <Icon>
                      <bt:Image size="16" resid="Icon.16" />
                      <bt:Image size="32" resid="Icon.32" />
                      <bt:Image size="80" resid="Icon.80" />
                    </Icon>
                    <Action xsi:type="ExecuteFunction">
                      <FunctionName>hero_reverse_rows</FunctionName>
                    </Action>
                  </Item>
                </Items>
              </Control>
            </Group>
            <Label resid="Tab.Label" />
          </CustomTab>
          </ExtensionPoint>
        </DesktopFormFactor>
      </Host>
    </Hosts>

    <Resources>
      <bt:Images>
        <bt:Image id="Icon.16" DefaultValue="https://hero.kixlogic.com/addin/hero-16.png" />
        <bt:Image id="Icon.32" DefaultValue="https://hero.kixlogic.com/addin/hero-32.png" />
        <bt:Image id="Icon.80" DefaultValue="https://hero.kixlogic.com/addin/hero-80.png" />
      </bt:Images>
      <bt:Urls>
        <bt:Url id="Taskpane.Url" DefaultValue="https://hero.kixlogic.com/addin/taskpane.html" />
        <bt:Url id="GetStarted.LearnMoreUrl" DefaultValue="https://kixlogic.com" />
        <bt:Url id="Taskpane.close.Url" DefaultValue="https://hero.kixlogic.com/addin/taskpane.html?power=close" />
        <bt:Url id="Taskpane.payroll.Url" DefaultValue="https://hero.kixlogic.com/addin/taskpane.html?power=payroll" />
      </bt:Urls>
      <bt:ShortStrings>
        <bt:String id="Tab.Label" DefaultValue="Kixlogic Hero" />
        <bt:String id="GetStarted.Title" DefaultValue="Kixlogic Hero is ready." />
        <bt:String id="Kixlogic.Hero.Label" DefaultValue="Hero" />
        <bt:String id="Kixlogic.Power.close.Label" DefaultValue="Close the books" />
        <bt:String id="Kixlogic.Power.payroll.Label" DefaultValue="Payroll register" />
        <bt:String id="Powers.Label" DefaultValue="Powers" />
        <bt:String id="U.text-to-numbers.Label" DefaultValue="Convert numbers stored as text" />
        <bt:String id="U.text-to-dates.Label" DefaultValue="Convert dates stored as text" />
        <bt:String id="U.break-links.Label" DefaultValue="Break links to other workbooks" />
        <bt:String id="U.highlight-hardcodes.Label" DefaultValue="Highlight typed values inside formula ranges" />
        <bt:String id="U.select-errors.Label" DefaultValue="Select all error cells" />
        <bt:String id="U.highlight-duplicate-rows.Label" DefaultValue="Highlight duplicate rows" />
        <bt:String id="Kixlogic.G.Fix.Menu.Label" DefaultValue="Fix" />
        <bt:String id="Kixlogic.G.Fix.Label" DefaultValue="Fix" />
        <bt:String id="U.match-lists.Label" DefaultValue="Match two lists" />
        <bt:String id="U.compare-sheets.Label" DefaultValue="Compare two sheets" />
        <bt:String id="U.summarize-by.Label" DefaultValue="Summarize by a column" />
        <bt:String id="U.unique-values.Label" DefaultValue="List unique values with counts" />
        <bt:String id="Kixlogic.G.Reconcile.Menu.Label" DefaultValue="Reconcile" />
        <bt:String id="Kixlogic.G.Reconcile.Label" DefaultValue="Reconcile" />
        <bt:String id="U.list-formulas.Label" DefaultValue="List every formula" />
        <bt:String id="U.fragile-formulas.Label" DefaultValue="Find fragile formulas" />
        <bt:String id="U.random-sample.Label" DefaultValue="Draw a random sample" />
        <bt:String id="U.benford.Label" DefaultValue="Benford first-digit test" />
        <bt:String id="U.aging.Label" DefaultValue="Add aging buckets" />
        <bt:String id="Kixlogic.G.Audit.Menu.Label" DefaultValue="Audit" />
        <bt:String id="Kixlogic.G.Audit.Label" DefaultValue="Audit" />
        <bt:String id="U.split-by-manager.Label" DefaultValue="Split by manager" />
        <bt:String id="U.workforce-profile.Label" DefaultValue="Workforce profile" />
        <bt:String id="Kixlogic.G.HR.Menu.Label" DefaultValue="HR" />
        <bt:String id="Kixlogic.G.HR.Label" DefaultValue="HR" />
        <bt:String id="U.trim-clean.Label" DefaultValue="Trim spaces and clean text" />
        <bt:String id="U.upper.Label" DefaultValue="UPPER CASE" />
        <bt:String id="U.lower.Label" DefaultValue="lower case" />
        <bt:String id="U.proper.Label" DefaultValue="Proper Case" />
        <bt:String id="U.fill-blanks.Label" DefaultValue="Fill blank cells from above" />
        <bt:String id="Kixlogic.G.Text.Menu.Label" DefaultValue="Text" />
        <bt:String id="Kixlogic.G.Text.Label" DefaultValue="Text" />
        <bt:String id="U.unhide-all.Label" DefaultValue="Unhide everything" />
        <bt:String id="U.sheet-index.Label" DefaultValue="Add a sheet index" />
        <bt:String id="U.sort-sheets.Label" DefaultValue="Sort sheets A → Z" />
        <bt:String id="U.freeze-here.Label" DefaultValue="Freeze panes at the selection" />
        <bt:String id="U.unfreeze-all.Label" DefaultValue="Unfreeze panes on every sheet" />
        <bt:String id="Kixlogic.G.Sheets.Menu.Label" DefaultValue="Sheets" />
        <bt:String id="Kixlogic.G.Sheets.Label" DefaultValue="Sheets" />
        <bt:String id="U.formulas-to-values.Label" DefaultValue="Convert formulas to values" />
        <bt:String id="U.select-formulas.Label" DefaultValue="Select all formulas" />
        <bt:String id="U.select-constants.Label" DefaultValue="Select all typed values" />
        <bt:String id="U.select-blanks.Label" DefaultValue="Select all blank cells" />
        <bt:String id="Kixlogic.G.Formulas.Menu.Label" DefaultValue="Formulas" />
        <bt:String id="Kixlogic.G.Formulas.Label" DefaultValue="Formulas" />
        <bt:String id="U.split-column.Label" DefaultValue="Split a column by delimiter" />
        <bt:String id="U.combine-columns.Label" DefaultValue="Combine columns" />
        <bt:String id="U.delete-blank-columns.Label" DefaultValue="Delete completely blank columns" />
        <bt:String id="U.autofit-columns.Label" DefaultValue="Autofit all columns" />
        <bt:String id="U.swap-columns.Label" DefaultValue="Swap the two selected columns" />
        <bt:String id="U.number-column.Label" DefaultValue="Number the selected cells" />
        <bt:String id="U.transpose.Label" DefaultValue="Transpose to a new sheet" />
        <bt:String id="Kixlogic.G.Columns.Menu.Label" DefaultValue="Columns" />
        <bt:String id="Kixlogic.G.Columns.Label" DefaultValue="Columns" />
        <bt:String id="U.remove-blank-rows.Label" DefaultValue="Delete completely blank rows" />
        <bt:String id="U.rows-blank-in-col.Label" DefaultValue="Delete rows with a blank in the selected column" />
        <bt:String id="U.delete-hidden-rows.Label" DefaultValue="Delete hidden rows" />
        <bt:String id="U.delete-duplicate-rows.Label" DefaultValue="Delete duplicate rows (keep first)" />
        <bt:String id="U.insert-row-every.Label" DefaultValue="Insert a blank row every N rows" />
        <bt:String id="U.band-rows.Label" DefaultValue="Shade alternate rows" />
        <bt:String id="U.reverse-rows.Label" DefaultValue="Reverse row order" />
        <bt:String id="Kixlogic.G.Rows.Menu.Label" DefaultValue="Rows" />
        <bt:String id="Kixlogic.G.Rows.Label" DefaultValue="Rows" />
      </bt:ShortStrings>
      <bt:LongStrings>
        <bt:String id="GetStarted.Description" DefaultValue="Open the Kixlogic Hero tab: the close and payroll checkers, and the utilities. Runs locally; nothing is sent anywhere." />
        <bt:String id="Kixlogic.Hero.Tip" DefaultValue="Open Kixlogic Hero: the powers and every utility. Runs on this computer; nothing is sent anywhere." />
        <bt:String id="Kixlogic.Power.close.Tip" DefaultValue="Every rule in the library: workbook integrity, tie-outs, journal entries, reconciliations, identities, records, dates, payroll and extracts. Runs on this computer; nothing is sent anywhere." />
        <bt:String id="Kixlogic.Power.payroll.Tip" DefaultValue="The rules that test a payroll register and its masters: register cross-foot, hours against the pay period, pay after termination, rate and bank details against the employee master, duplicate and shared identities, FICA and Medicare at the statutor…" />
        <bt:String id="U.text-to-numbers.Tip" DefaultValue="Turns text that reads as a number (&quot;1,200&quot;, &quot;$45.00&quot;, &quot;(300)&quot;, &quot;12%&quot;) into a real number in the selected cells, or the whole sheet when one cell is selected. Formulas are not touched." />
        <bt:String id="U.text-to-dates.Tip" DefaultValue="Turns text that reads as a date (&quot;03/15/2026&quot;, &quot;2026-03-15&quot;) into a real Excel date, formatted m/d/yyyy, in the selected cells or the whole sheet. Month-day-year is assumed unless the year comes first." />
        <bt:String id="U.break-links.Tip" DefaultValue="On every sheet, replaces each formula that reads another workbook ([Book.xlsx]) with its current value, so the workbook stands alone. Formulas that stay inside this workbook are not touched." />
        <bt:String id="U.highlight-hardcodes.Tip" DefaultValue="On the active sheet, shades (light yellow) every typed number whose neighbours above and below, or left and right, are formulas — the cells where a formula was overwritten by hand. Only the fill colour changes." />
        <bt:String id="U.select-errors.Tip" DefaultValue="Selects every cell on the active sheet showing an Excel error (#REF!, #DIV/0!, #VALUE!, …)." />
        <bt:String id="U.highlight-duplicate-rows.Tip" DefaultValue="In the selected cells (or the whole sheet), shades every row whose values are identical to an earlier row, light red. Nothing is deleted; the first occurrence is left unshaded so the pair is visible." />
        <bt:String id="Kixlogic.G.Fix.Menu.Tip" DefaultValue="Fix what the checker finds: each item resolves one kind of finding." />
        <bt:String id="U.match-lists.Tip" DefaultValue="Matches the records of one sheet to another by a key column (an ID, invoice number, employee number) and writes a &quot;Kixlogic Match&quot; sheet: keys only on the first sheet, keys only on the second, and — when an amount column is chosen on each — keys p…" />
        <bt:String id="U.compare-sheets.Tip" DefaultValue="Compares two sheets cell by cell — formulas by their text, values by their value — and writes a &quot;Kixlogic Compare&quot; sheet listing every cell that differs with both versions side by side. Use it on the draft and the reviewed copy of a schedule." />
        <bt:String id="U.summarize-by.Tip" DefaultValue="Groups a sheet’s rows by one column and totals an amount column for each group — what SUMIFS or a pivot would give — onto a &quot;Kixlogic Summary&quot; sheet with a count per group and a grand total." />
        <bt:String id="U.unique-values.Tip" DefaultValue="Lists every distinct value in a column with how many times it appears, most frequent first, on a &quot;Kixlogic Unique&quot; sheet — UNIQUE and COUNTIF in one step, with blanks and case differences called out." />
        <bt:String id="Kixlogic.G.Reconcile.Menu.Tip" DefaultValue="Reconcile utilities. Each says what it changes; none sends anything anywhere." />
        <bt:String id="U.list-formulas.Tip" DefaultValue="Writes a &quot;Kixlogic Formulas&quot; sheet with every formula in the workbook — sheet, cell, formula text and current value — the formula inventory a reviewer reads instead of clicking through cells." />
        <bt:String id="U.fragile-formulas.Tip" DefaultValue="Lists every formula that will not reproduce or cannot be traced — INDIRECT, OFFSET, TODAY, NOW, RAND, CELL(&quot;filename&quot;) — on a &quot;Kixlogic Fragile&quot; sheet with the reason each is a risk in a workpaper." />
        <bt:String id="U.random-sample.Tip" DefaultValue="Copies a random sample of N records from a sheet to a &quot;Kixlogic Sample&quot; sheet, with the seed used written at the top so the same sample can be drawn again by anyone who reviews the work. Leave the seed blank to have one chosen." />
        <bt:String id="U.benford.Tip" DefaultValue="Counts the leading digit of every amount in a column (absolute values of 10 or more) and compares the distribution with Benford’s law on a &quot;Kixlogic Benford&quot; sheet, with the mean absolute deviation and Nigrini’s conformity bands. A population that…" />
        <bt:String id="U.aging.Tip" DefaultValue="Adds two columns to the right of a sheet’s table — days old, and the bucket 0–30 / 31–60 / 61–90 / Over 90 — computed from a date column against an as-of date (today unless one is given). Values are written, not formulas, so the aging is fixed as …" />
        <bt:String id="Kixlogic.G.Audit.Menu.Tip" DefaultValue="Audit utilities. Each says what it changes; none sends anything anywhere." />
        <bt:String id="U.split-by-manager.Tip" DefaultValue="Writes one sheet per manager, named &quot;Kixlogic Mgr &lt;name&gt;&quot;, holding that manager’s direct reports first and then everyone below them in the reporting chain, with a Level column (1 = direct). Built from the employee column and the manager column of …" />
        <bt:String id="U.workforce-profile.Tip" DefaultValue="Writes a &quot;Kixlogic Profile&quot; sheet of descriptive statistics from an employee or payroll sheet — headcount by any status/type/department columns present, tenure and age distributions from hire and birth dates, pay percentiles and mean, overtime inc…" />
        <bt:String id="Kixlogic.G.HR.Menu.Tip" DefaultValue="HR utilities. Each says what it changes; none sends anything anywhere." />
        <bt:String id="U.trim-clean.Tip" DefaultValue="Removes leading and trailing spaces, collapses repeated spaces, and strips non-printing characters and non-breaking spaces from text in the selected cells or the whole sheet." />
        <bt:String id="U.upper.Tip" DefaultValue="Converts text in the selected cells to upper case." />
        <bt:String id="U.lower.Tip" DefaultValue="Converts text in the selected cells to lower case." />
        <bt:String id="U.proper.Tip" DefaultValue="Converts text in the selected cells to Proper Case (first letter of each word capitalised)." />
        <bt:String id="U.fill-blanks.Tip" DefaultValue="In the selected cells, fills each blank cell with the value of the nearest non-blank cell above it in the same column — the classic fix for a report that prints a label once per group." />
        <bt:String id="Kixlogic.G.Text.Menu.Tip" DefaultValue="Text utilities. Each says what it changes; none sends anything anywhere." />
        <bt:String id="U.unhide-all.Tip" DefaultValue="Makes every hidden or very-hidden worksheet visible, and unhides every hidden row and column on every sheet. Nothing is deleted or moved." />
        <bt:String id="U.sheet-index.Tip" DefaultValue="Adds a worksheet named &quot;Index&quot; at the front of the workbook listing every sheet with a hyperlink to it. An existing Index sheet is replaced." />
        <bt:String id="U.sort-sheets.Tip" DefaultValue="Reorders the worksheets alphabetically by name. No sheet is renamed, hidden or deleted." />
        <bt:String id="U.freeze-here.Tip" DefaultValue="Freezes the rows above and the columns to the left of the selected cell on the active sheet, so headers stay put while scrolling." />
        <bt:String id="U.unfreeze-all.Tip" DefaultValue="Removes frozen panes from every worksheet." />
        <bt:String id="Kixlogic.G.Sheets.Menu.Tip" DefaultValue="Sheets utilities. Each says what it changes; none sends anything anywhere." />
        <bt:String id="U.formulas-to-values.Tip" DefaultValue="Replaces every formula in the SELECTED cells with its current value. Acts only on the selection, never the whole sheet, because it cannot be undone from the add-in." />
        <bt:String id="U.select-formulas.Tip" DefaultValue="Selects every formula cell on the active sheet." />
        <bt:String id="U.select-constants.Tip" DefaultValue="Selects every typed (non-formula) value on the active sheet." />
        <bt:String id="U.select-blanks.Tip" DefaultValue="Selects every blank cell inside the used range of the active sheet." />
        <bt:String id="Kixlogic.G.Formulas.Menu.Tip" DefaultValue="Formulas utilities. Each says what it changes; none sends anything anywhere." />
        <bt:String id="U.split-column.Tip" DefaultValue="Splits the text in the selected column at a delimiter (comma, semicolon, pipe, tab, slash or space — detected, or given) into as many new columns as needed, inserted to the right of it. The original column is kept." />
        <bt:String id="U.combine-columns.Tip" DefaultValue="Joins the selected columns, row by row, with a separator (a space unless given) into one new column inserted to the right of the selection. Blanks are skipped so no double separators appear." />
        <bt:String id="U.delete-blank-columns.Tip" DefaultValue="Deletes every column inside the used range of the active sheet that has no value in any row. Columns with any content are kept." />
        <bt:String id="U.autofit-columns.Tip" DefaultValue="Sizes every column on the active sheet to its contents." />
        <bt:String id="U.swap-columns.Tip" DefaultValue="Select cells in exactly two columns (they need not be adjacent — hold Ctrl); the two whole columns trade places, formulas included." />
        <bt:String id="U.number-column.Tip" DefaultValue="Fills the selected cells (one column) with 1, 2, 3 … top to bottom — a row number that survives sorting." />
        <bt:String id="U.transpose.Tip" DefaultValue="Writes the selected cells with rows and columns swapped onto a &quot;Kixlogic Transposed&quot; sheet, as values. The selection is untouched." />
        <bt:String id="Kixlogic.G.Columns.Menu.Tip" DefaultValue="Columns utilities. Each says what it changes; none sends anything anywhere." />
        <bt:String id="U.remove-blank-rows.Tip" DefaultValue="Deletes every row inside the selected cells (or the used range) that has no value in any column. Rows with any content are kept." />
        <bt:String id="U.rows-blank-in-col.Tip" DefaultValue="Select cells in one column; every row whose cell in that column is blank is deleted — the rows a report leaves without an ID or an amount. Rows with a value there are kept." />
        <bt:String id="U.delete-hidden-rows.Tip" DefaultValue="Deletes every hidden row inside the used range of the active sheet — the rows a filter or a manual hide left behind, which SUM still counts." />
        <bt:String id="U.delete-duplicate-rows.Tip" DefaultValue="In the selected cells (or the used range), deletes every row whose values are identical to an earlier row, keeping the first. Cannot be undone from the add-in — run &quot;Highlight duplicate rows&quot; first to see what will go." />
        <bt:String id="U.insert-row-every.Tip" DefaultValue="Inserts a blank row after every N rows of the selection (N given), top to bottom — the spacing a printed schedule wants between groups." />
        <bt:String id="U.band-rows.Tip" DefaultValue="Shades every second row of the selection (or the used range) a light blue, so a wide schedule reads across. Only the fill colour changes." />
        <bt:String id="U.reverse-rows.Tip" DefaultValue="Reverses the order of the rows in the selection, as values. A ledger exported newest-first becomes oldest-first." />
        <bt:String id="Kixlogic.G.Rows.Menu.Tip" DefaultValue="Rows utilities. Each says what it changes; none sends anything anywhere." />
      </bt:LongStrings>
    </Resources>
  </VersionOverrides>
</OfficeApp>
