<?xml version="1.0" encoding="utf-8"?>
<grit-part>

  <message name="IDS_POLICY_DM_STATUS_SUCCESS" desc="Message indicating a successful device management server call.">
    Request succeeded
  </message>
  <message name="IDS_POLICY_DM_STATUS_REQUEST_INVALID" desc="Message indicating a bad request to the enterprise server.">
    Invalid request or request parameters
  </message>
  <message name="IDS_POLICY_DM_STATUS_REQUEST_FAILED" desc="Message indicating the request to the enterprise server failed in the network.">
    Network error
  </message>
  <message name="IDS_POLICY_DM_STATUS_TEMPORARY_UNAVAILABLE" desc="Message indicating a temporary problem on the enterprise server.">
    Temporary server error
  </message>
  <message name="IDS_POLICY_DM_STATUS_HTTP_STATUS_ERROR" desc="Message indicating an abnormal response code from the enterprise server.">
    HTTP error
  </message>
  <message name="IDS_POLICY_DM_STATUS_RESPONSE_DECODING_ERROR" desc="Message indicating a problem decoding a response from the enterprise server.">
    Failed to decode response
  </message>
  <message name="IDS_POLICY_DM_STATUS_SERVICE_MANAGEMENT_NOT_SUPPORTED" desc="Message indicating that enterprise management is not applicable to the user/device.">
    Management not supported
  </message>
  <message name="IDS_POLICY_DM_STATUS_SERVICE_DEVICE_NOT_FOUND" desc="Message indicating the enterprise server is missing a device record.">
    Missing device record
  </message>
  <message name="IDS_POLICY_DM_STATUS_SERVICE_MANAGEMENT_TOKEN_INVALID" desc="Message indicating the token used to authenticate to the enterprise server is invalid.">
    Invalid device management token
  </message>
  <message name="IDS_POLICY_DM_STATUS_SERVICE_ACTIVATION_PENDING" desc="Message indicating enterprise management must first be activated for this user/device.">
    Activation is pending on the server
  </message>
  <message name="IDS_POLICY_DM_STATUS_SERVICE_INVALID_SERIAL_NUMBER" desc="Message indicating the provided device serial number is invalid.">
    Device serial number is invalid
  </message>
  <message name="IDS_POLICY_DM_STATUS_SERVICE_DEVICE_ID_CONFLICT" desc="Message indicating the chosen device identifier is already used.">
    Conflicting device identifier
  </message>
  <message name="IDS_POLICY_DM_STATUS_SERVICE_MISSING_LICENSES" desc="Message indicating the enterprise server doesn't have enough licenses to allow management.">
    Licenses exhausted
  </message>
  <message name="IDS_POLICY_DM_STATUS_SERVICE_DEPROVISIONED" desc="Message indicating the administrator has deprovisioned this client on the server.">
    Deprovisioned
  </message>
  <message name="IDS_POLICY_DM_STATUS_SERVICE_POLICY_NOT_FOUND" desc="Message indicating that the enterprise server failed to find the policy to be applied to the device.">
    Policy not found
  </message>
  <message name="IDS_POLICY_DM_STATUS_UNKNOWN_ERROR" desc="Message indicating an unknown error from the enterprise server.">
    Unknown error
  </message>
  <message name="IDS_POLICY_DM_STATUS_INVALID_PACKAGED_DEVICE_FOR_KIOSK" desc="Message to show when the user tries to enroll a device with a packaged license into Kiosk.">
    This is a bundled device and can not be enrolled with Kiosk and Signage Upgrade.
  </message>
  <message name="IDS_POLICY_DM_STATUS_ORG_UNIT_ENROLLMENT_LIMIT_EXCEEDED" desc="Error message to show when the user tries to enroll a device but the initial enrollment limit for the organization unit has been reached.">
    This device can't be enrolled right now because your organization unit has reached its initial enrollment limit. Contact your administrator for assistance.
  </message>
  <message name="IDS_POLICY_DM_STATUS_SERVICE_DOMAIN_MISMATCH" desc="Message indicating this client cannot be registered with the specified domain.">
    Domain mismatch
  </message>
  <message name="IDS_POLICY_DM_STATUS_CANNOT_SIGN_REQUEST" desc="Message indicating a failure to sign a request.">
    Request could not be signed
  </message>
  <message name="IDS_POLICY_DM_STATUS_REQUEST_TOO_LARGE" desc="Message indicating a request to enterprise server is too large.">
    Request is too large
  </message>
  <message name="IDS_POLICY_DM_STATUS_SERVICE_TOO_MANY_REQUESTS" desc="Message indicating the enterprise server receives too many requests in a short time period.">
    Too many requests
  </message>
  <message name="IDS_POLICY_DM_STATUS_SERVICE_DEVICE_NEEDS_RESET" desc="Message indicating that the device should be reset.">
    Device reset required
  </message>
  <message name="IDS_POLICY_DM_STATUS_CONSUMER_ACCOUNT_WITH_PACKAGED_LICENSE" desc="Message to show when the user tries to enroll a device with a packaged license using a consumer account.">
    Can't enroll with consumer account (packaged license available).
  </message>
  <message name="IDS_POLICY_DM_STATUS_ENTERPRISE_ACCOUNT_IS_NOT_ELIGIBLE_TO_ENROLL" desc="Message to show when the user tries to enroll a device with an ineligible enterprise account.">
    Can't enroll with enterprise account (enterprise account is not eligible).
  </message>
  <message name="IDS_POLICY_ACTION_BLOCKED_BY_ORGANIZATION" desc="Text to be shown to the user to inform them that an action they initiated was blocked by the organization.">
    Blocked by your organization
  </message>
  <message name="IDS_POLICY_ACTION_FORCED_SAVE_TO_CLOUD" desc="Text to be shown to the user to inform them that a local download they initiated was blocked and will proceed to Cloud">
    Local download blocked
  </message>
  <message name="IDS_POLICY_VALIDATION_OK" desc="Message indicating successful policy validation.">
    Validation successful
  </message>
  <message name="IDS_POLICY_VALIDATION_BAD_INITIAL_SIGNATURE" desc="Message indicating a bad signature on policy validation using the initial key.">
    Bad initial signature
  </message>
  <message name="IDS_POLICY_VALIDATION_BAD_SIGNATURE" desc="Message indicating a bad signature on policy validation.">
    Bad signature
  </message>
  <message name="IDS_POLICY_VALIDATION_ERROR_CODE_PRESENT" desc="Message indicating policy validation failure due to an error code in the policy.">
    Error code present in the policy response
  </message>
  <message name="IDS_POLICY_VALIDATION_PAYLOAD_PARSE_ERROR" desc="Message indicating a policy parse error during policy validation.">
    Error parsing policy
  </message>
  <message name="IDS_POLICY_VALIDATION_WRONG_POLICY_TYPE" desc="Message indicating the policy did not have the expected type.">
    Wrong policy type
  </message>
  <message name="IDS_POLICY_VALIDATION_WRONG_SETTINGS_ENTITY_ID" desc="Message indicating the policy did not have the expected entity identifier.">
    Wrong entity identifier
  </message>
  <message name="IDS_POLICY_VALIDATION_BAD_TIMESTAMP" desc="Message indicating the policy timestamp is bad.">
    Bad policy timestamp
  </message>
  <message name="IDS_POLICY_VALIDATION_BAD_DM_TOKEN" desc="Message indicating the policy token is empty or different from the one expected.">
    Returned policy token is empty or doesn't match current token
  </message>
  <message name="IDS_POLICY_VALIDATION_BAD_DEVICE_ID" desc="Message indicating the policy device id is empty or different from the one expected.">
    Returned policy device id is empty or doesn't match current device id
  </message>
  <message name="IDS_POLICY_VALIDATION_BAD_USER" desc="Message indicating policy validation failed due to bad user/domain id.">
    Wrong policy subject
  </message>
  <message name="IDS_POLICY_VALIDATION_POLICY_PARSE_ERROR" desc="Message indicating a parse error in policy.">
    Error parsing policy settings
  </message>
  <message name="IDS_POLICY_VALIDATION_BAD_KEY_VERIFICATION_SIGNATURE" desc="Message indicating a policy key had an invalid verification signature.">
    Bad verification signature
  </message>
  <message name="IDS_POLICY_VALIDATION_VALUE_WARNING" desc="Message indicating the policy value validation succeeded with non-fatal warnings.">
    Validation of policy values has raised warnings
  </message>
  <message name="IDS_POLICY_VALIDATION_VALUE_ERROR" desc="Message indicating the policy value validation failed with fatal errors.">
    Validation of policy values has failed with errors
  </message>
  <message name="IDS_POLICY_VALIDATION_UNKNOWN_ERROR" desc="Message indicating unknown error in policy validation.">
    Unknown error
  </message>

  <message name="IDS_POLICY_STORE_STATUS_OK" desc="Message indicating a healthy policy store.">
    Policy cache OK
  </message>
  <message name="IDS_POLICY_STORE_STATUS_LOAD_ERROR" desc="Message indicating a failure to load policy.">
    Failed to load policy settings
  </message>
  <message name="IDS_POLICY_STORE_STATUS_STORE_ERROR" desc="Message indicating a failure to store policy.">
    Failed to store policy settings
  </message>
  <message name="IDS_POLICY_STORE_STATUS_PARSE_ERROR" desc="Message indicating a parse error on loading policy.">
    Policy parse error
  </message>
  <message name="IDS_POLICY_STORE_STATUS_SERIALIZE_ERROR" desc="Message indicating an error preparing policy for storage.">
    Serialization error
  </message>
  <message name="IDS_POLICY_STORE_STATUS_VALIDATION_ERROR" desc="Message indicating policy validation on store/load failed.">
    Validation error: <ph name="VALIDATION_ERROR">$1<ex>Bad signature</ex></ph>
  </message>
  <message name="IDS_POLICY_STORE_STATUS_BAD_STATE" desc="Message indicating policy cannot be stored/loaded due to the backend being in bad state.">
    Backing store in bad state
  </message>
  <message name="IDS_POLICY_STORE_STATUS_UNKNOWN_ERROR" desc="Message indicating an unknown error with the policy cache.">
    Unknown error
  </message>

  <message name="IDS_POLICY_ASSOCIATION_STATE_ACTIVE" desc="Message indicating that the server actively manages the client.">
    Active
  </message>
  <message name="IDS_POLICY_ASSOCIATION_STATE_UNMANAGED" desc="Message indicating that the server is currently not willing to manage this client.">
    Unmanaged
  </message>
  <message name="IDS_POLICY_ASSOCIATION_STATE_DEPROVISIONED" desc="Message indicating that the server has deprovisioned the client.">
    Deprovisioned
  </message>

  <message name="IDS_POLICY_TYPE_ERROR" desc="The text displayed in the status column when a policy value has the wrong type.">
    Expected <ph name="VALUE_TYPE">$1<ex>boolean</ex></ph> value.
  </message>
  <message name="IDS_POLICY_OUT_OF_RANGE_ERROR" desc="The text displayed in the status column when a policy value is out of range.">
    Value is out of range <ph name="VALUE">$1<ex>10</ex></ph>.
  </message>
  <message name="IDS_POLICY_VALUE_FORMAT_ERROR" desc="The text displayed in the status column when a policy value doesn't match the expected format.">
    Value doesn't match format.
  </message>
  <message name="IDS_POLICY_INVALID_FILE_EXTENSION_ERROR" desc="The text displayed in the status column when the file extension is invalid.">
    File extension is empty or malformed.
  </message>
  <message name="IDS_POLICY_INVALID_HASH_ERROR" desc="The text displayed in the status column when the hash string is not of type SHA-256.">
    Hash must be of format SHA-256.
  </message>
  <message name="IDS_POLICY_INVALID_SELECTION_ERROR" desc="The text displayed in the status column when the policy value is not in a list of selectable modes.">
    The inserted <ph name="VALUE_NAME">$1<ex>paper size</ex></ph> couldn't be found.
  </message>
  <message name="IDS_POLICY_PAPER_SIZE_CUSTOM_NO_SIZE_ERROR" desc="The text displayed in the status column when the paper size name is 'custom' but the property 'custom_size' is empty or invalid.">
    Found paper size name "custom", but the "custom_size" property is empty or invalid.
  </message>
  <message name="IDS_POLICY_PAPER_SIZE_NOT_CUSTOM_ERROR" desc="The text displayed in the status column when the property 'custom_size' is set but property 'name' is not set to 'custom'.">
    The property "custom_size" is set, expected name to be "custom".
  </message>
  <message name="IDS_POLICY_INVALID_ACCOUNT_PATTERN_FORMAT_ERROR" desc="The text displayed in the status column for the policy RestrictAccountsToPatterns when the inserted value is not a list of patterns.">
    Invalid format: Expected a list of patterns.
  </message>
  <message name="IDS_POLICY_INVALID_PROTOCOL_ERROR" desc="The text displayed in the status column for the policy AutoLaunchProtocolsFromOrigins when the protocol format is invalid">
    Invalid protocol format.
  </message>
  <message name="IDS_POLICY_INVALID_ORIGIN_ERROR" desc="The text displayed in the status column for the policy AutoLaunchProtocolsFromOrigins when the origin format is invalid">
    Invalid origin format.
  </message>
  <message name="IDS_POLICY_EMPTY_ORIGIN_LIST_ERROR" desc="The text displayed in the status column for the policy AutoLaunchProtocolsFromOrigins when the origin list is empty">
    Origin list is empty.
  </message>
  <if expr="is_chromeos">
    <message name="IDS_POLICY_DUPLICATE_FILE_EXTENSION_ERROR" desc="The text displayed in the status column for the policy DefaultHandlersForFileExtensions when a file extension is assigned to more than one handler.">
      Duplicate handlers for file_extension "<ph name="FILE_EXTENSION">$1<ex>txt</ex></ph>" referenced by apps "<ph name="POLICY_IDS_LIST">$2<ex>https://google.com/maps, pnomlkjighijklmnopabcdefghijklff</ex></ph>".
    </message>
  </if>
  <message name="IDS_POLICY_INVALID_EXTENSION_ID_ERROR" desc="The text displayed in the status column when the extension ID doesn't match the expected format.">
    Invalid extension ID.
  </message>
  <message name="IDS_POLICY_INVALID_UPDATE_URL_ERROR" desc="The text displayed in the status column when the extension update url is invalid or uses an unsupported scheme.">
    Update URL for extension with ID "<ph name="EXTENSION_ID">$1<ex>abcdefghijklmnopabcdefghijklmnop</ex></ph>" is invalid or uses an unsupported scheme. Supported schemes are: <ph name="HTTP_SCHEME">http</ph>, <ph name="HTTPS_SCHEME">https</ph> and <ph name="FILE_SCHEME">file</ph>.
  </message>
  <message name="IDS_POLICY_URL_PATH_SPECIFIED_ERROR" desc="The text displayed in the status column when a path is specified for an URL, which is not supported">
    The URL pattern "<ph name="URL_PATTERN">$1<ex>*://example.com/</ex></ph>" has a path specified. Paths are not supported for this key, please remove the path and try again. e.g. *://example.com/ => *://example.com",
  </message>
  <message name="IDS_POLICY_MISSING_VENDOR_ID_ERROR" desc="The text displayed in the status column for the policy WebUsbAllowDevicesForUrls when an entry has specified a 'product_id' without a the 'vendor_id'">
    The attribute "vendor_id" must also be specified.
  </message>
  <message name="IDS_POLICY_INVALID_NUMBER_OF_URLS_ERROR" desc="The text displayed in the status column for the policy WebUsbAllowDevicesForUrls when an entry has either 0 or more than 2 URLs">
    Each urls string entry must contain between 1 to 2 URLs.
  </message>
  <message name="IDS_POLICY_BRUSCHETTA_UNINSTALLABLE_ERROR" desc="The text displayed in the status column when a VM config is marked as installable, but no image is available to install for this archetecture">
    This configuration is marked as installable, but no image is provided for this archetecture, so it cannot be installed.
  </message>
  <message name="IDS_POLICY_CLOUD_SOURCE_ONLY_ERROR" desc="The text displayed in the status column when a policy that should only be set in the cloud is set from another source.">
    Ignored because the policy is not set by a cloud source.
  </message>
  <message name="IDS_POLICY_CLOUD_USER_ONLY_ERROR" desc="The text displayed in the status column when a policy should only be set from cloud user is set from another source.">
    Ignored because the policy can only be set as a cloud user policy.
  </message>
  <message name="IDS_POLICY_CLOUD_MANAGEMENT_ENROLLMENT_ONLY_ERROR" desc="The text displayed in the status column when a policy that is effective only when the machine is enrolled with the Chrome Browser Cloud Management.">
    Ignored because the machine is not enrolled with Chrome Browser Cloud Management.
  </message>
  <message name="IDS_POLICY_DEFAULT_SEARCH_DISABLED" desc="The text displayed in the status column when a policy value has been ignored because default search has not been enabled.">
    Ignored because default search is not enabled by policy.
  </message>
  <message name="IDS_POLICY_NOT_SPECIFIED_ERROR" desc="The text displayed in the status column when a policy value should have been specified but wasn't.">
    Must be specified.
  </message>
  <message name="IDS_POLICY_EXTENSION_SETTINGS_ORIGIN_LIMIT_WARNING" desc="The text displayed in the status column of the 'Extension Settings' policy when more than 100 origins are specified.">
    This field should not have more than <ph name="MAX_ITEMS_LIMIT">$1<ex>100</ex></ph> entries. All further entries will be discarded.
  </message>
  <message name="IDS_POLICY_URL_ALLOW_BLOCK_LIST_MAX_FILTERS_LIMIT_WARNING" desc="The text displayed in the status column of the URLAllowlist and URLBlocklist policies when the max number of filters is exceeded.">
    This field should not have more than <ph name="MAX_ITEMS_LIMIT">$1<ex>1000</ex></ph> entries. All further entries will be ignored.
  </message>
  <message name="IDS_POLICY_ERROR_WITH_PATH" desc="The text displayed in the status column when a policy error message contains an error path.">
    Error at <ph name="ERROR_PATH">$1<ex>AC.Delays.ScreenOff</ex></ph>: <ph name="ERROR_MESSAGE">$2<ex>Value is out of range.</ex></ph>
  </message>
  <message name="IDS_POLICY_SCHEMA_VALIDATION_ERROR" desc="The text displayed in the status column when the policy value doesn't conform to the policy schema.">
    Schema validation error: <ph name="ERROR">$1<ex>Value is out of range.</ex></ph>
  </message>
  <message name="IDS_POLICY_INVALID_JSON_ERROR" desc="The text displayed in the status column when the policy value should be a valid JSON string, but it cannot be parsed as JSON.">
    Error while parsing JSON value: <ph name="ERROR">$1<ex>Line 2, Column 3: Map keys must be quoted.</ex></ph>
  </message>
  <message name="IDS_POLICY_INVALID_URL_ERROR" desc="The text displayed in the status column when the URL given is invalid.">
    Invalid URL.
  </message>
  <message name="IDS_POLICY_URL_NOT_HTTPS_ERROR" desc="The text displayed in the status column when the URL given isn't using the https scheme, but needs to be.">
    URL must be https.
  </message>
  <message name="IDS_POLICY_INVALID_SEARCH_URL_ERROR" desc="The text displayed in the status column when a the URL given for DefaultSearchProviderSearchURL is invalid.">
    Invalid search URL.
  </message>
  <message name="IDS_POLICY_INVALID_SECURE_DNS_MODE_ERROR" desc="The text displayed in the status column when the value for DnsOverHttpsMode is invalid.">
    Invalid DnsOverHttps mode.
  </message>
  <message name="IDS_POLICY_SECURE_DNS_TEMPLATES_INVALID_ERROR" desc="The text displayed in the status column when one or more of the DnsOverHttpsTemplates server template URIs is invalid.">
    One or more of the DnsOverHttpsTemplates server template URIs is invalid and will not be used.
  </message>
  <message name="IDS_POLICY_SECURE_DNS_SALT_INVALID_ERROR" desc="The text displayed in the status column when the value of DnsOverHttpsSalt is invalid.">
    The <ph name="SECURE_DNS_SALT">DnsOverHttpsSalt</ph> value is invalid and will not be used.
  </message>
  <message name="IDS_POLICY_SECURE_DNS_SALT_INVALID_SIZE_ERROR" desc="The text displayed in the status column when the size of DnsOverHttpsSalt is invalid.">
    The <ph name="SECURE_DNS_SALT">DnsOverHttpsSalt</ph> value does not meet the size requirements.
  </message>
  <message name="IDS_POLICY_SECURE_DNS_TEMPLATES_IRRELEVANT_MODE_ERROR" desc="The text displayed in the status column when the DnsOverHttpsTemplate policy is specified but DnsOverHttpsMode is not set to a value that makes the templates relevant.">
    The DnsOverHttpsTemplates value is not relevant, and will not be used, unless the DnsOverHttpsMode policy is set to either <ph name="SECURE_DNS_MODE_AUTOMATIC">'automatic'</ph> or <ph name="SECURE_DNS_MODE_SECURE">'secure'</ph>.
  </message>
  <message name="IDS_POLICY_SECURE_DNS_TEMPLATES_INVALID_MODE_ERROR" desc="The text displayed in the status column when the DnsOverHttpsTemplate policy is specified but DnsOverHttpsMode is not valid.">
    The templates you've specified may not be applied due to an error with the DnsOverHttpsMode policy.
  </message>
  <message name="IDS_POLICY_SECURE_DNS_TEMPLATES_UNSET_MODE_ERROR" desc="The text displayed in the status column when the DnsOverHttpsTemplate policy is specified but DnsOverHttpsMode is unset.">
    The templates you've specified may not be applied due to the DnsOverHttpsMode policy not being set.
  </message>
  <message name="IDS_POLICY_SECURE_DNS_TEMPLATES_NOT_SPECIFIED_ERROR" desc="The text displayed in the status column when the DnsOverHttpsTemplate policy is not specified but the DnsOverHttpsMode is secure.">
    Must be specified and a valid string when DnsOverHttpsMode is <ph name="SECURE_DNS_MODE_SECURE">'secure'</ph>.
  </message>
  <message name="IDS_POLICY_INVALID_PROXY_MODE_ERROR" desc="The text displayed in the status column when the value for ProxyMode is invalid.">
    Invalid proxy mode.
  </message>
  <if expr="is_chromeos">
    <message name="IDS_POLICY_UNKNOWN_ARC_MANAGED_CONFIGURATION_VARIABLE" desc="The warning text displayed in the status column when the managed configuration of an ARC application contains an unknown variable.">
      Unknown variable "<ph name="VARIABLE">$1<ex>${UNKNOWN_VARIABLE}</ex></ph>" in the managed configuration of "<ph name="APPLICATION_ID">$2<ex>com.dropbox.android</ex></ph>".
    </message>
  </if>
  <message name="IDS_POLICY_OFF_CWS_URL_ERROR" desc="The text displayed in the status column when the update URL points to a location other than the Chrome Webstore and the machine is not enterprise managed.">
    This computer is not detected as enterprise managed so policy can only automatically install extensions hosted on the Chrome Webstore. The Chrome Webstore update URL is "<ph name="CWS_UPDATE_URL">$1<ex>https://clients2.google.com/service/update2/crx</ex></ph>".
  </message>
  <message name="IDS_POLICY_HOMEPAGE_LOCATION_ERROR" desc="The text displayed in the status column when the homepage URL given by the HomepageLocation policy is invalid.">
    Invalid URL. Must be a URL with a standard scheme, e.g http://example.com or https://example.com.
  </message>
  <message name="IDS_POLICY_PROXY_MODE_DISABLED_ERROR" desc="The text displayed in the status column when use of a proxy is disabled but a proxy configuration is given.">
    Use of a proxy is disabled but an explicit proxy configuration is specified.
  </message>
  <message name="IDS_POLICY_PROXY_MODE_AUTO_DETECT_ERROR" desc="The text displayed in the status column when the proxy is set to auto configured but a proxy configuration is given.">
    Proxy is set to auto configured.
  </message>
  <message name="IDS_POLICY_PROXY_MODE_PAC_URL_ERROR" desc="The text displayed in the status column when the proxy configuration is set to use a .pac script URL but policies only for fixed proxy servers are also specified.">
    Proxy configuration is set to use a .pac script URL, not fixed proxy servers.
  </message>
  <message name="IDS_POLICY_PROXY_MODE_FIXED_SERVERS_ERROR" desc="The text displayed in the status column when the proxy configuration is set to use fixed proxy servers but an alternate configuration is given.">
    Proxy is set to use fixed proxy servers, not a .pac script URL.
  </message>
  <message name="IDS_POLICY_PROXY_MODE_SYSTEM_ERROR" desc="The text displayed in the status column when the proxy configuration is set to use system settings but an alternate configuration is given.">
    System proxy settings are set to be used but an explicit proxy configuration is also specified.
  </message>
  <message name="IDS_POLICY_PROXY_BOTH_SPECIFIED_ERROR" desc="The text displayed in the status column when both fixed proxy servers and .pac url are specified.">
    Both fixed proxy servers and a .pac script URL are specified.
  </message>
  <message name="IDS_POLICY_PROXY_NEITHER_SPECIFIED_ERROR" desc="The text displayed in the status column when neither a fixed proxy servers or a .pac url are specified.">
    Neither fixed proxy servers nor a .pac script URL are specified.
  </message>
  <message name="IDS_POLICY_PROXY_UNKNOWN_CONDITION" desc="The text displayed in the status column when a proxy condition uses an unknown value.">
    "<ph name="PROXY_UNKNOWN_CONDITION">$1<ex>DnsProbe</ex></ph>" is not a known condition type.
  </message>
  <message name="IDS_POLICY_PROXY_INVALID_SCHEME_HOST_PORT" desc="The text displayed in the status column when a proxy scheme-host-port triplet has an invalid value.">
    "<ph name="PROXY_INVALID_SCHEME_HOST_PORT">$1<ex>example.com</ex></ph>" is not a valid value.
  </message>
  <message name="IDS_POLICY_PROXY_INVALID_PROXY" desc="The text displayed in the status column when a proxy has an invalid value.">
    "<ph name="PROXY_INVALID_PROXY">$1<ex>example.com</ex></ph>" is not a valid proxy.
  </message>
  <message name="IDS_POLICY_PROXY_INVALID_DESTINATION" desc="The text displayed in the status column when a proxy destination has an invalid value.">
    "<ph name="PROXY_INVALID_DESTINATION">$1<ex>example.com</ex></ph>" is not a valid destination pattern.
  </message>
  <message name="IDS_POLICY_UNAFFILIATED_USER_ERROR" desc="The text displayed in the status column when a policy is set from an unaffiliated user.">
    This policy value is ignored since the user is not affiliated.
  </message>
  <message name="IDS_POLICY_DEVELOPER_TOOLS_EXTENSIONS_CONFLICT_MESSAGE" desc="The text displayed in the status column when the value of DeveloperToolsAvailability conflicts with ExtensionDeveloperModeSettings.">
    <ph name="EXTENSION_DEVELOPER_MODE_SETTINGS_POLICY_NAME">$1<ex>ExtensionDeveloperModeSettings</ex></ph> policy is set. <ph name="DEVELOPER_TOOLS_AVAILABILITY_POLICY_NAME">$2<ex>DeveloperToolsAvailability</ex></ph> will not control the availability of developer mode on extensions page.
  </message>
  <message name="IDS_POLICY_OVERRIDDEN" desc="The text displayed in the status column when the corresponding policy is being ignored because another policy is overriding it.">
    Ignored because it was overridden by <ph name="POLICY_NAME">$1<ex>ProxyMode</ex></ph>.
  </message>
  <message name="IDS_POLICY_VALUE_DEPRECATED" desc="The text displayed in the status column when a specific value for a policy is deprecated.">
    This value is deprecated for this policy.
  </message>
  <message name="IDS_POLICY_DEPENDENCY_ERROR" desc="The text displayed in the status column when a policy is ignored as another policies is not set properly.">
    Ignored because <ph name="POLICY_NAME">$1<ex>CloudReportingEnabled</ex></ph> is not set to <ph name="VALUE">$2<ex>Enabled</ex></ph>.
  </message>
  <message name="IDS_POLICY_DEPENDENCY_ERROR_ANY_VALUE" desc="The text displayed in the status column when a policy is ignored as another policies is not set at all.">
    Ignored because <ph name="POLICY_NAME">$1<ex>CloudReportingEnabled</ex></ph> is not set.
  </message>
  <message name="IDS_POLICY_IDLE_TIMEOUT_ACTIONS_DEPENDENCY_ERROR" desc="The text displayed in the status column when the IdleTimeoutActions policy is ignored because it requires another policy .">
    These actions require the <ph name="POLICY_NAME">$1<ex>SyncDisabled</ex></ph> policy to be set to <ph name="POLICY_VALUE">$2<ex>Enabled</ex></ph>: <ph name="ACTION_LIST">$3<ex>clear_browsing_history, clear_autofill</ex></ph>.
  </message>
  <message name="IDS_POLICY_USER_IS_NOT_AFFILIATED_ERROR" desc="The text displayed in the status column when a user cloud policy is ignored due to user is not affiliated to the machine management.">
    Ignored because user is not affiliated to the machine management or the machine is not managed.
  </message>
  <if expr="is_chromeos">
    <message name="IDS_POLICY_NETWORK_CONFIG_PARSE_FAILED" desc="The text displayed in the status column when the corresponding network configuration policy failed to parse.">
      Network configuration failed to be parsed (invalid JSON).
    </message>
    <message name="IDS_POLICY_NETWORK_CONFIG_IMPORT_PARTIAL" desc="The text displayed in the status column when the corresponding network configuration policy is not standard conform and was imported partially. DEBUG_INFO contains non-localized detailed information about existing warnings.">
      The network configuration doesn't comply to the ONC standard. Parts of the configuration may not be imported.
Additional details:
<ph name="DEBUG_INFO">$1<ex>WARNING: Field name 'SomeRandomField' is unknown. (at toplevel)</ex></ph>
    </message>
    <message name="IDS_POLICY_NETWORK_CONFIG_IMPORT_FAILED" desc="The text displayed in the status column when the corresponding network configuration policy is invalid. DEBUG_INFO contains non-localized detailed information about existing errors/warnings.">
      The network configuration is invalid and couldn't be imported.
Additional details:
<ph name="DEBUG_INFO">$1<ex>ERROR: Field name 'SomeRandomField' is unknown. (at toplevel)</ex></ph>
    </message>
  </if>
  <if expr="is_chromeos">
    <message name="IDS_POLICY_SCOPE_ERROR" desc="Text displayed in the status column when a policy is set in an unsupported scope.">
      Policy scope is not supported.
    </message>
  </if>
  <message name="IDS_POLICY_LEVEL_ERROR" desc="Text displayed in the status column when a policy is set at an unsupported level.">
    Policy level is not supported.
  </message>
  <message name="IDS_POLICY_OK" desc="Text displayed in the status column when a valid value is set for a policy." meaning="Policy is working as expected.">
    OK
  </message>
  <message name="IDS_POLICY_UNSET" desc="Text displayed in the status column when no value is set for a policy.">
    Not set.
  </message>
  <message name="IDS_POLICY_UNKNOWN" desc="Text displayed in the status column when a policy name is not recognized.">
    Unknown policy.
  </message>
  <message name="IDS_POLICY_PROTO_PARSING_ERROR" desc="Text displayed when error is encountered during policy parsing/decoding.">
    Policy parsing error: <ph name="ERROR">$1<ex>Invalid JSON string: Line: 1, column: 14</ex></ph>
  </message>
  <message name="IDS_POLICY_HEX_COLOR_ERROR" desc="Error message in the policy summary page for the BrowserThemeColor policy when the policy value is an invalid hex color.">
    Value "<ph name="VALUE">$1<ex>#zzzzzz</ex></ph>" is an invalid hex color.
  </message>
  <message name="IDS_POLICY_SITE_SEARCH_SETTINGS_MAX_PROVIDERS_LIMIT_ERROR" desc="The text displayed in the status column of the SiteSearchSettings policy when the max number of search providers is exceeded.">
    This policy should not have more than <ph name="MAX_ITEMS_LIMIT">$1<ex>1000</ex></ph> entries.
  </message>
  <message name="IDS_POLICY_SITE_SEARCH_SETTINGS_MAX_FEATURED_PROVIDERS_LIMIT_ERROR" desc="The text displayed in the status column of the SiteSearchSettings policy when the max number of featured search providers is exceeded.">
    This policy should not have more than <ph name="MAX_ITEMS_LIMIT">$1<ex>10</ex></ph> featured entries.
  </message>
  <message name="IDS_POLICY_SITE_SEARCH_SETTINGS_DUPLICATED_SHORTCUT" desc="The text displayed in the status column of the SiteSearchSettings policy when there is more than one entry using the same shortcut.">
    Ignored non-unique shortcut: <ph name="SHORTCUT_NAME">$1<ex>shortcut</ex></ph>
  </message>
  <message name="IDS_SEARCH_POLICY_SETTINGS_SHORTCUT_CONTAINS_SPACE" desc="The text displayed in the status column of the SiteSearchSettings or EnterpriseSearchAggregatorSettings policy when a shortcut contains a space character.">
    Shortcut can't contain spaces: "<ph name="SHORTCUT_NAME">$1<ex>shortcut</ex></ph>"
  </message>
  <message name="IDS_SEARCH_POLICY_SETTINGS_SHORTCUT_STARTS_WITH_AT" desc="The text displayed in the status column of the SiteSearchSettings or EnterpriseSearchAggregatorSettings policy when a shortcut starts with the @ character.">
    Shortcut can't start with the @ character: "<ph name="SHORTCUT_NAME">$1<ex>shortcut</ex></ph>"
  </message>
  <message name="IDS_SEARCH_POLICY_SETTINGS_NO_VALID_PROVIDER" desc="The text displayed in the status column of the SiteSearchSettings or EnterpriseSearchAggregatorSettings policy when there is no valid entry in the policy.">
    The list contains no valid search provider.
  </message>
  <message name="IDS_SEARCH_POLICY_SETTINGS_SHORTCUT_IS_EMPTY" desc="The text displayed in the status column of the SiteSearchSettings or EnterpriseSearchAggregatorSettings policy when a shortcut is defined as an empty string.">
    Shortcut can't be empty
  </message>
  <message name="IDS_SEARCH_POLICY_SETTINGS_NAME_IS_EMPTY" desc="The text displayed in the status column of the SiteSearchSettings, EnterpriseSearchAggregatorSettings, or NTPShortcuts policy when a name is defined as an empty string.">
    Name can't be empty
  </message>
  <message name="IDS_SEARCH_POLICY_SETTINGS_URL_IS_EMPTY" desc="The text displayed in the status column of the SiteSearchSettings, EnterpriseSearchAggregatorSettings, or NTPShortcuts policy when a URL is defined as an empty string.">
    URL can't be empty
  </message>
  <message name="IDS_SEARCH_POLICY_SETTINGS_URL_DOESNT_SUPPORT_REPLACEMENT" desc="The text displayed in the status column of the SiteSearchSettings or EnterpriseSearchAggregatorSettings policy when a URL doesn't contain the replacement string '{searchTerms}'. Please do not translate '{searchTerms}' because it's part of the expected syntax.">
    URL doesn't include required replacement string <ph name="SEARCH_TERMS_REPLACEMENT">"{searchTerms}"</ph>: <ph name="SEARCH_URL">$1<ex>https://www.example.com</ex></ph>
  </message>
  <message name="IDS_SEARCH_POLICY_SETTINGS_SHORTCUT_EQUALS_DSP_KEYWORD" desc="The text displayed in the status column of the SiteSearchSettings or EnterpriseSearchAggregatorSettings policy when a shortcut is the same as the keyword defined by the DefaultSearchProviderKeyword policy.">
    Shortcut can't be the same as the default search provider keyword defined by <ph name="DEFAULT_SEARCH_PROVIDER_KEYWORD_POLICY_NAME">DefaultSearchProviderKeyword</ph>: <ph name="SHORTCUT_NAME">$1<ex>shortcut</ex></ph>
  </message>
  <message name="IDS_POLICY_SITE_SEARCH_SETTINGS_SHORTCUT_EQUALS_SEARCH_AGGREGATOR_KEYWORD" desc="The text displayed in the status column of the SiteSearchSettings policy when a shortcut is the same as the keyword defined by the SearchAggregatorSettings policy.">
    Shortcut can't be the same as the search aggregator keyword defined by <ph name="SEARCH_AGGREGATOR_SETTINGS_POLICY">SearchAggregatorSettings</ph>: <ph name="SHORTCUT_NAME">$1<ex>shortcut</ex></ph>
  </message>
  <message name="IDS_SEARCH_POLICY_SETTINGS_URL_NOT_HTTPS" desc="The text displayed in the status column of the SiteSearchSettings or EnterpriseSearchAggregatorSettings policy when a URL scheme is not HTTPS.">
    HTTPS scheme recommended for search URL: <ph name="SEARCH_URL">$1<ex>https://www.example.com</ex></ph>
  </message>
  <message name="IDS_POLICY_DATA_CONTROLS_MUTUALLY_EXCLUSIVE_KEYS" desc="The text displayed in the status column of the DataControlsRules policy when one of its rules contains incoherent values">
    Keys "<ph name="DATA_CONTROLS_KEYS">$1<ex>"and", "or"</ex></ph>" cannot be set in the same dictionary
  </message>
  <message name="IDS_POLICY_DATA_CONTROLS_MUTUALLY_EXCLUSIVE_KEY_SETS" desc="The text displayed in the status column of the DataControlsRules policy when one of its rules contains incoherent values">
    Keys "<ph name="DATA_CONTROLS_FIRST_KEY_SET">$1<ex>"destinations", "sources"</ex></ph>" cannot be set in the same dictionary as the "<ph name="DATA_CONTROLS_SECOND_KEY_SET">$2<ex>"and", "or"</ex></ph>" keys
  </message>
  <message name="IDS_POLICY_DATA_CONTROLS_UNSUPPORTED_CONDITION" desc="The text displayed in the status column of the DataControlsRules policy when one of its rules contains an unsupported condition">
    "<ph name="DATA_CONTROLS_ATTRIBUTE">$1<ex>destination</ex></ph>" is not a supported condition for "<ph name="DATA_CONTROLS_RESTRICTION">$2<ex>SCREENSHOT</ex></ph>"
  </message>
  <message name="IDS_POLICY_DATA_CONTROLS_UNSUPPORTED_RESTRICTION" desc="The text displayed in the status column of the DataControlsRules policy when one of its rules contains an unsupported restriction">
    "<ph name="DATA_CONTROLS_RESTRICTION">$1<ex>SCREENSHARE</ex></ph>" is not a supported restriction on this platform
  </message>
  <message name="IDS_POLICY_DATA_CONTROLS_UNSUPPORTED_LEVEL" desc="The text displayed in the status column of the DataControlsRules policy when one of its rules contains an unsupported restriction level">
    "<ph name="DATA_CONTROLS_RESTRICTION">$1<ex>SCREENSHOT</ex></ph>" cannot be set to "<ph name="DATA_CONTROLS_LEVEL">$2<ex>WARN</ex></ph>"
  </message>
  <message name="IDS_POLICY_NTP_SHORTCUTS_MAX_SHORTCUTS_LIMIT_ERROR" desc="The text displayed in the status column of the NTPShortcuts policy when the max number of shortcuts is exceeded.">
    This policy should not have more than <ph name="MAX_ITEMS_LIMIT">$1<ex>10</ex></ph> shortcuts.
  </message>
  <message name="IDS_POLICY_NTP_SHORTCUTS_NO_VALID_PROVIDER" desc="The text displayed in the status column of the NTPShortcuts policy when there is no valid entry in the policy.">
    The list contains no valid shortcuts.
  </message>
  <message name="IDS_POLICY_NTP_SHORTCUTS_DUPLICATED_URL" desc="The text displayed in the status column of the NTPShortcuts policy when there is more than one entry using the same URL.">
    Ignored non-unique URL: <ph name="URL_NAME">$1<ex>https://www.shortcut.com</ex></ph>
  </message>
  <message name="IDS_POLICY_NTP_SHORTCUTS_NAME_TOO_LONG" desc="The text displayed in the status column of the NTPShortcuts policy when there is an entry with a name that is too long.">
    The name of the shortcut exceeds the maximum allowed length of <ph name="MAX_LENGTH">$1<ex>1000</ex></ph> characters.
  </message>
  <message name="IDS_POLICY_NTP_SHORTCUTS_URL_TOO_LONG" desc="The text displayed in the status column of the NTPShortcuts policy when there is an entry with a url that is too long.">
    The URL of the shortcut exceeds the maximum allowed length of <ph name="MAX_LENGTH">$1<ex>1000</ex></ph> characters.
  </message>

  <!-- chrome://policy -->
  <message name="IDS_POLICY_TITLE" desc="Page title and the title of the section that lists policies.">
    Policies
  </message>
  <message name="IDS_POLICY_FILTER_PLACEHOLDER" desc="Placeholder for the input field that lets the user filter policies by name.">
    Filter policies by name
  </message>
  <message name="IDS_POLICY_RELOAD_POLICIES" desc="Label for the button that reloads policies.">
    Reload policies
  </message>
  <message name="IDS_POLICY_RELOADING_POLICIES" desc="Toast notification message indicating policies are being loaded.">
    Reloading policies
  </message>
  <message name="IDS_POLICY_RELOAD_POLICIES_DONE" desc="Toast notification message indicating policies have been reloaded.">
    Policies reloaded
  </message>
  <message name="IDS_EXPORT_POLICIES_JSON" desc="Label for the button that exports policies in JSON format.">
    Export to JSON
  </message>
  <message name="IDS_EXPORT_POLICIES_JSON_DONE" desc="Toast notification message indicating policies are exported.">
    Exported
  </message>
  <message name="IDS_UPLOAD_REPORT" desc="Label for the button that uplaod Chrome usage report">
    Upload Report
  </message>
  <message name="IDS_REPORT_UPLOADING" desc="Toast notification message indicating data is being sent to admin console.">
    Sending data to admin console
  </message>
  <message name="IDS_REPORT_UPLOADED" desc="Toast notification message indicating data has been sent to admin console.">
    Data sent to admin console
  </message>
  <message name="IDS_POLICY_STATUS" desc="Title of the status section.">
    Status
  </message>
  <message name="IDS_POLICY_STATUS_DEVICE" desc="Title for the device policy status box.">
    Device policies
  </message>
  <message name="IDS_POLICY_STATUS_USER" desc="Title for the user policy status box.">
    User policies
  </message>
<message name="IDS_POLICY_STATUS_MACHINE" desc="Title for the machine policy status box.">
    Machine policies
  </message>
 <if expr="is_win">
  <message name="IDS_POLICY_STATUS_UPDATER" desc="Title for the updater policy status box on windows.">
    Google Update
  </message>
 </if>
  <message name="IDS_POLICY_STATUS_ERROR_MANAGED_NO_POLICY" desc="Message to display when a managed device does not have a policy loaded.">
    Managed user or device has no policy loaded.
  </message>
  <message name="IDS_POLICY_STATUS_FLEX_ORG_NO_POLICY" desc="Message to display when a managed account does not have a policy loaded because the account if from a flex org.">
    No user policies applied. To add user policies, your organization must <ph name="LINK_BEGIN">&lt;a target="_blank" href="https://support.google.com/chrome/a/answer/9122284"&gt;</ph>verify your domain<ph name="LINK_END">&lt;/a&gt;</ph>.
  </message>
  <message name="IDS_POLICY_LABEL_MACHINE_ENROLLMENT_DOMAIN" desc="Label for the enrollment domain in the machine policy status box.">
    Enrollment domain:
  </message>
  <message name="IDS_POLICY_LABEL_MACHINE_ENROLLMENT_TOKEN" desc="Label for the enrollment token in the machine policy status box.">
    Enrollment Token:
  </message>
  <message name="IDS_POLICY_LABEL_MACHINE_ENROLLMENT_DEVICE_ID" desc="Label for the device ID in the machine policy status box.">
    Device ID:
  </message>
    <message name="IDS_POLICY_LABEL_MACHINE_ENROLLMENT_MACHINE_NAME" desc="Label for the machine name in the machine policy status box.">
    Machine Name:
  </message>
  <message name="IDS_POLICY_LABEL_USERNAME" desc="Label for the username in the user policy status box.">
    User:
  </message>
  <message name="IDS_POLICY_LABEL_GAIA_ID" desc="Label for the user GAIA ID in the user policy status box.">
    Gaia ID:
  </message>
  <message name="IDS_POLICY_LABEL_CLIENT_ID" desc="Label for the client IDs in the policy status boxes.">
    Client ID:
  </message>
  <message name="IDS_POLICY_LABEL_PROFILE_ID" desc="Label for the user profile ID in the user policy status box.">
    Profile ID:
  </message>
  <message name="IDS_POLICY_LABEL_ASSET_ID" desc="Label for the asset ID in the device policy status box.">
    Asset ID:
  </message>
  <message name="IDS_POLICY_LABEL_LOCATION" desc="Label for the device location in the device policy status box.">
    Assigned Location:
  </message>
  <message name="IDS_POLICY_LABEL_DIRECTORY_API_ID" desc="Label for the directory API ID in the device policy status box.">
    Directory API ID:
  </message>
  <message name="IDS_POLICY_LABEL_MANAGED_BY" desc="Label for the manager in the policy status boxes. Manager can be a domain or an email address.">
    Managed by:
  </message>
  <message name="IDS_POLICY_LABEL_TIME_SINCE_LAST_FETCH_ATTEMPT" desc="Label for the time since the last fetch attempt in the policy status boxes.">
    Last fetch attempted:
  </message>
  <message name="IDS_POLICY_LABEL_TIME_SINCE_LAST_REFRESH" desc="Label for the time since the last refresh in the policy status boxes.">
    Last policy timestamp:
  </message>
  <message name="IDS_POLICY_LABEL_POLICY_FETCH" desc="Label for the policy fetch section.">
    Policy fetch
  </message>
  <message name="IDS_POLICY_LABEL_EXTENSION_INSTALL_POLICY_FETCH" desc="Label for the extension install policy fetch section.">
    Extension install policy fetch
  </message>
  <message name="IDS_POLICY_LABEL_LAST_CLOUD_REPORT_SENT_TIMESTAMP" desc="Label for the time when the last cloud report is sent successfully.">
    Report sent:
  </message>
  <message name="IDS_POLICY_NOT_SPECIFIED" desc="Indicates if that device attribute has not specified yet.">
    Not Specified
  </message>
  <message name="IDS_POLICY_LABEL_PUSH_POLICIES" desc="Label to indicates the policies can be pushed or not to chrome.">
    Policies push:
  </message>
  <message name="IDS_POLICY_PUSH_POLICIES_ON" desc="Label in the chrome://policy information page." meaning="Policies can be pushed to chrome.">
    On
  </message>
  <message name="IDS_POLICY_PUSH_POLICIES_OFF" desc="Label in the chrome://policy information page." meaning="Policies cannot be pushed to chrome.">
    Off
  </message>
  <message name="IDS_POLICY_NEVER_FETCHED" desc="Indicates that a policy fetch was never performed before.">
    Never
  </message>
  <message name="IDS_POLICY_LABEL_REFRESH_INTERVAL" desc="Label for the refresh interval in the policy status boxes.">
    Fetch interval:
  </message>
  <message name="IDS_POLICY_LABEL_CONFLICT" desc="Label for the conflict status column in the policy table.">
    Conflict
  </message>
  <message name="IDS_POLICY_LABEL_SUPERSEDING" desc="Label for the superseding status column in the policy table.">
    Superseding
  </message>
  <message name="IDS_POLICY_LABEL_CONFLICT_VALUE" desc="Label for the conflict row in the policy table.">
    Value (conflict)
  </message>
  <message name="IDS_POLICY_LABEL_SUPERSEDED_VALUE" desc="Label for the superseded row in the policy table.">
    Value (superseded)
  </message>
  <message name="IDS_POLICY_LABEL_ERROR" desc="Label for the error row in the policy table.">
    Error
  </message>
  <message name="IDS_POLICY_LABEL_DEPRECATED" desc="Label for the status of a deprecated policy.">
    Deprecated
  </message>
  <message name="IDS_POLICY_LABEL_FUTURE" desc="Label for the status of an unreleased policy.">
    Unreleased
  </message>
  <message name="IDS_POLICY_LABEL_IGNORED" desc="Label for the ignored row in the policy table.">
    Ignored
  </message>
  <message name="IDS_POLICY_LABEL_VALUE" desc="Label for the value row in the policy table.">
    Value
  </message>
  <message name="IDS_POLICY_LABEL_VERSION" desc="Label for the version in the policy status box.">
    Version:
  </message>
  <message name="IDS_POLICY_LABEL_STATUS" desc="Label for the actual status in the policy status boxes.">
    Status:
  </message>
  <message name="IDS_POLICY_LABEL_INFO" desc="Label for the info row in the policy table.">
    Info
  </message>
  <message name="IDS_POLICY_LABEL_PRECEDENCE" desc="Label for the precedence order row in the policy precedence table.">
    Current precedence order
  </message>
  <message name="IDS_POLICY_SHOW_UNSET" desc="Label for the checkbox that determines whether policies whose value has not been set are shown.">
    Show policies with no value set
  </message>
  <message name="IDS_POLICY_NO_POLICIES_SET" desc="Text displayed when none of the policies have been set.">
    No policies set
  </message>
  <message name="IDS_POLICY_HEADER_SCOPE" desc="Table header for the column in the policy table that details whether a policy is a user or a device policy.">
    Applies to
  </message>
  <message name="IDS_POLICY_HEADER_LEVEL" desc="Table header for the column in the policy table that details whether a policy is mandatory or recommended.">
    Level
  </message>
  <message name="IDS_POLICY_HEADER_NAMESPACE" desc="Table header for the column in the policy table that contains the policy namespace (either 'Chrome', or an extension ID).">
    Namespace
  </message>
  <message name="IDS_POLICY_HEADER_NAME" desc="Table header for the column in the policy table that contains the policy name.">
    Policy name
  </message>
  <message name="IDS_POLICY_HEADER_VALUE" desc="Table header for the column in the policy table that contains the policy value.">
    Policy value
  </message>
  <message name="IDS_POLICY_HEADER_STATUS" desc="Table header for the column in policy table that contains the policy status.">
    Status
  </message>
  <message name="IDS_POLICY_HEADER_SOURCE" desc="Table header for the column in policy table that contains the policy source.">
    Source
  </message>
  <message name="IDS_POLICY_HEADER_WARNING" desc="Table header for the column in the policy table that contains the policy warnings.">
    Warning
  </message>
  <message name="IDS_POLICY_SHOW_MORE" desc="Text for the link that expands and shows the are full value, conflicts and warnings rows of a policy.">
    Show more
  </message>
  <message name="IDS_POLICY_SHOW_LESS" desc="Text for the link that collapses and hides the are full value, conflicts and warnings rows of a policy.">
    Show less
  </message>
  <message name="IDS_POLICY_LEARN_MORE" desc="Help text for learn-more link for known chrome policies.">
    Learn more about <ph name="POLICY_NAME">$1<ex>AllowDinosaurEasterEgg</ex></ph> policy
  </message>
  <message name="IDS_POLICY_SCOPE_USER" desc="Text displayed in the Applies to column when a policy applies to the current user only.">
    Current user
  </message>
  <message name="IDS_POLICY_SCOPE_ALL_USERS" desc="Text displayed in the Applies to column when a policy applies to all the users in the current session.">
    All users
  </message>
  <if expr="not is_android and not is_chromeos">
    <message name="IDS_POLICY_SCOPE_DEVICE" desc="Text displayed in the Applies to column when a policy applies to everyone on the machine.">
      Machine
    </message>
  </if>
  <if expr="is_chromeos or is_android">
    <message name="IDS_POLICY_SCOPE_DEVICE" desc="Mobile: Text displayed in the Applies To column when a policy applies to everyone on the device.">
      Device
    </message>
  </if>
  <message name="IDS_POLICY_LEVEL_RECOMMENDED" desc="Text displayed in the Level column when a policy is recommended.">
    Recommended
  </message>
  <message name="IDS_POLICY_LEVEL_MANDATORY" desc="Text displayed in the Level column when a policy is mandatory.">
    Mandatory
  </message>
  <message name="IDS_POLICY_SOURCE_ENTERPRISE_DEFAULT" desc="Indicates that a policy is set by default in an enterprise environment and can be overridden (for ChromeOS only).">
    Enterprise default
  </message>
  <message name="IDS_POLICY_SOURCE_DEFAULT" desc="Indicates that a policy is set by default and can be overridden.">
    Default
  </message>
  <message name="IDS_POLICY_SOURCE_COMMAND_LINE" desc="Indicates that a policy is set by command line switch for testing purpose.">
    Command line
  </message>
  <message name="IDS_POLICY_SOURCE_CLOUD" desc="Indicates that the policy originates from the cloud.">
    Cloud
  </message>
  <message name="IDS_POLICY_SOURCE_MERGED" desc="Indicates that the policy is a merged values from multiple sources.">
    Merged
  </message>
  <message name="IDS_POLICY_SOURCE_CLOUD_FROM_ASH" desc="Indicates that the policy originates from the cloud in Ash and piped to Lacros.">
    Cloud (Ash)
  </message>
  <message name="IDS_POLICY_SOURCE_RESTRICTED_MANAGED_GUEST_SESSION_OVERRIDE" desc="Indicates that the policy originates from the restricted managed guest session override.">
    Restricted managed guest session override
  </message>
  <message name="IDS_POLICY_SOURCE_ACTIVE_DIRECTORY" desc="Indicates that the policy originates from a local server, e.g. Samba or Active Directory.">
    <ph name="MICROSOFT_ACTIVE_DIRECTORY">Local Server</ph>
  </message>
  <message name="IDS_POLICY_SOURCE_PLATFORM" desc="Indicates that the policy is obtained from the local OS.">
    Platform
  </message>
  <message name="IDS_POLICY_SOURCE_DEVICE_LOCAL_ACCOUNT_OVERRIDE" desc="Indicates that the policy is set programmatically because of an active device-local account session: managed session or Kiosk app (both for ChromeOS only). It could have overridden other sources that set this policy.">
    Device local account override
  </message>
  <message name="IDS_POLICY_RISK_TAG_FULL_ADMIN_ACCESS" desc="Title of a group/tag whose policies potentially allow the administrator to access all of a user's data.">
    Full Admin Access
  </message>
  <message name="IDS_POLICY_RISK_TAG_SYSTEM_SECURITY" desc="Title of a group/tag whose policies might influence the system's security.">
    System Security
  </message>
  <message name="IDS_POLICY_RISK_TAG_WEBSITE_SHARING" desc="Title of a group/tag whose policies might lead to information sharing with other websites.">
    Sharing with Websites
  </message>
  <message name="IDS_POLICY_RISK_TAG_ADMIN_SHARING" desc="Title of a group/tag whose policies potentially allow sending information about the user (like activity times) to an administrator.">
    Sharing with Administrator
  </message>
  <message name="IDS_POLICY_RISK_TAG_FILTERING" desc="Title of a group/tag whose policies might restrict web contents which would be visible otherwise (e.g. forced SafeSearch).">
    Filtering
  </message>
  <message name="IDS_POLICY_RISK_TAG_LOCAL_DATA_ACCESS" desc="Title of a group/tag whose policies might allow storage of user data to local drives where others might access them.">
    Local Data Access
  </message>
  <message name="IDS_POLICY_RISK_TAG_GOOGLE_SHARING" desc="Title of a group/tag whose policies enable functionality that might share user data with trusted Google services.">
    Sharing with Google
  </message>
  <message name="IDS_POLICY_SHOW_EXPANDED_STATUS" desc="Text for the link that shows the policy status. Used when the policy status is too long to be always visible.">
    Show status
  </message>
  <message name="IDS_POLICY_HIDE_EXPANDED_STATUS" desc="Text for the link that hides the policy status. Used when the policy status is too long to be always visible.">
    Hide status
  </message>
  <message name="IDS_POLICY_LIST_MERGING_WRONG_POLICY_TYPE_SPECIFIED" desc="Text explaining that a policy specified to be merged as a list is not a list.">
    Warning: This policy was not merged as a list as specified by policy because it is not a list.
  </message>
  <message name="IDS_POLICY_DICTIONARY_MERGING_WRONG_POLICY_TYPE_SPECIFIED" desc="Text explaining that a policy specified to be merged as a dictionary is not a dictionary.">
    Warning: This policy was not merged as a dictionary as specified by policy because it is not a dictionary.
  </message>
  <message name="IDS_POLICY_DICTIONARY_MERGING_POLICY_NOT_ALLOWED" desc="Text explaining that a policy specified to be merged as a dictionary is not allowed to be merged.">
    Warning: This policy was not merged as specified in PolicyDictionaryMultipleSourceMergeList policy because it is not part of the dictionary policies that can be merged.
  </message>
  <message name="IDS_POLICY_CONFLICT_SAME_VALUE" desc="Text explaining that a policy had conflicting sources, but with the same values.">
    This policy is working as intended but the same value is set elsewhere and is superseded by this policy.
  </message>
  <message name="IDS_POLICY_CONFLICT_DIFF_VALUE" desc="Text explaining that a policy had conflicting sources and values.">
    This policy is working as intended but a conflicting value is set elsewhere and is overridden by this policy.
  </message>
  <message name="IDS_POLICY_USES_SAME_LOCAL_STATE_AND_PROFILE_PREFS" desc="Text explaining that a policy has the same value for machine and user.">
    This policy has the same value applied at the machine and user levels. The policy is working as intended.
  </message>
  <message name="IDS_POLICY_USES_LOCAL_STATE_AND_PROFILE_PREFS" desc="Text explaining that a policy had conflicting sources and values from both machine and user scopes and they were merged.">
    This policy has different values applied at the machine and user levels. The policy is working as intended.
  </message>
  <message name="IDS_POLICY_MIGRATED_OLD_POLICY" desc="Text explaining that a policy is deprecated, and that admins should use the new policy instead">
    This policy is deprecated. You should use the <ph name="NEW_POLICY">$1<ex>AllowDinosaurEasterEgg</ex></ph> policy instead.
  </message>
  <message name="IDS_POLICY_MIGRATED_NEW_POLICY" desc="Text explaining that the policy value was automatically copied from a deprecated policy's value">
    This policy was automatically copied from the deprecated <ph name="OLD_POLICY">$1<ex>AllowDinosaurEasterEgg</ex></ph> policy. You should use this policy instead.
  </message>
  <message name="IDS_POLICY_BLOCKED" desc="Text explaining that a policy is blocked, therefore ignored.">
    This policy is blocked, its value will be ignored.
  </message>
  <message name="IDS_POLICY_INVALID" desc="Text explaining that a policy failed to validate against a schema, and therefore ignored.">
    This policy value failed to validate against its schema and will be ignored.
  </message>
  <message name="IDS_POLICY_IGNORED_BY_GROUP_MERGING" desc="Text explaining that a policy is ignored because another policy of the same group has a higher priority">
    This policy is ignored because another policy from the same policy group has a higher priority.
  </message>
  <message name="IDS_POLICY_INVALID_VALUE"  desc="Text explaining that the policy value is invalid">
    Policy value is not valid.
  </message>
  <message name="IDS_POLICY_IGNORED_MANDATORY_REPORTING_POLICY" desc="Text explaining that the policy MetricsReportingEnabled can not be forced to enabled anymore">
    This policy cannot be set to "True" and be mandatory, therefore it was changed to recommended.
  </message>
  <message name="IDS_POLICY_IGNORED_CHROME_PROFILE" desc="Text explaining that the policy cannot be set at the Chrome profile level and is therefore ignored.">
    This policy cannot be set at the Chrome profile level and will be ignored.
  </message>
  <message name="IDS_POLICY_IGNORED_UNAFFILIATED" desc="Text describing that the policy value is not applied because the user is unaffiliated.">
    This policy is ignored because the user is unaffiliated. For this policy to be applied, the Chrome browser and profile must be managed through the Admin console by the same organization.
  </message>
  <message name="IDS_POLICY_IGNORED_EXTENSION" desc="Text explaining that extension policies are likely ignored by the extension.">
    Likely ignored by the extension.
  </message>
  <message name="IDS_POLICY_PRECEDENCE_PLATFORM_MACHINE" desc="Text describing the platform machine precedence value.">
    Platform machine
  </message>
  <message name="IDS_POLICY_PRECEDENCE_PLATFORM_USER" desc="Text describing the platform user precedence value.">
    Platform user
  </message>
  <message name="IDS_POLICY_PRECEDENCE_CLOUD_MACHINE" desc="Text describing the cloud machine precedence value.">
    Cloud machine
  </message>
  <message name="IDS_POLICY_PRECEDENCE_CLOUD_USER" desc="Text describing the cloud user precedence value.">
    Cloud user
  </message>
  <if expr="not is_macosx">
    <message name="IDS_POLICY_SPELLCHECK_UNKNOWN_LANGUAGE" desc="Warning message in the policy summary page for the spellcheck policies when a language is unrecognized or unsupported.">
      List entry "<ph name="LANGUAGE_ID">$1<ex>xx-YY</ex></ph>": Unknown or unsupported language.
    </message>
    <message name="IDS_POLICY_SPELLCHECK_BLOCKLIST_IGNORE" desc="Warning message in the policy summary page for the spellcheck blocklist policy when a language is both force-enabled and force-disabled. 'SpellcheckLanguage' is a policy name and shouldn't be translated.">
    List entry "<ph name="LANGUAGE_ID">$1<ex>en-GB</ex></ph>": Entry ignored because it is also included in the SpellcheckLanguage policy.
    </message>
  </if>
  <message name="IDS_POLICY_DEFAULT_GEO_POLICY_ARC_CONFLICT" desc="Warning message for the DefaultGeolocationSetting policy, when the GoogleLocationServicesEnabled policy is set. The former will no longer affect the ARC, when the latter is set.">
    Warning: This policy is conflicting with the <ph name="POLICY_NAME">$1<ex>GoogleLocationServicesEnabled</ex></ph> and will have no effect on Android apps. Otherwise, this policy is working as intended.
  </message>
  <message name="IDS_POLICY_LABEL_IS_AFFILIATED" desc="Label to indicate if the user is affiliated or not.">
    Is affiliated:
  </message>
  <message name="IDS_POLICY_IS_AFFILIATED_YES" desc="Indicates the user is affiliated.">
    Yes
  </message>
  <message name="IDS_POLICY_IS_AFFILIATED_NO" desc="Indicates the user is not affiliated.">
    No
  </message>
  <message name="IDS_POLICY_LABEL_IS_OFFHOURS_ACTIVE" desc="Label to indicate if the off-hours policy is active or not.">
    Off-Hours Policy:
  </message>
  <message name="IDS_POLICY_OFFHOURS_ACTIVE" desc="Indicates the off-hours policy is active.">
    Active
  </message>
  <message name="IDS_POLICY_OFFHOURS_NOT_ACTIVE" desc="Indicates the off-hours policy is not active.">
    Not active
  </message>
  <message name="IDS_POLICY_SIGNIN_PROFILE" desc="Label to indicate that the policy is for the sign-in screen profile.">
    sign-in screen profile
  </message>
  <message name ="IDS_POLICY_COPY_VALUE" desc="Help text for link that copies the value of a policy.">
    Copy the value of <ph name="POLICY_NAME">$1<ex>AllowDinosaurEasterEgg</ex></ph> policy
  </message>
  <message name="IDS_COPY_POLICIES_JSON" desc="Label for the button that copies policies in JSON format.">
    Copy as JSON
  </message>
  <message name="IDS_COPY_POLICIES_DONE" desc="Toast notification message indicating policies are copied to clipboard.">
    Copied to clipboard
  </message>
  <message name="IDS_VIEW_POLICY_LOGS" desc="Label for the button that redirects from chrome://policy to chrome://policy/logs.">
    View logs
  </message>
  <message name="IDS_POLICY_MORE_ACTIONS" desc="Label for the dropdown menu on the chrome://policy page that offers additional actions such as downloading policy data as a JSON file, uploading report or showing policy logs.">
    More actions
  </message>
  <message name="IDS_POLICY_TABLE_COLUMN_SORT" desc="Part of the label for policy table sorting arrows.">
    Sort
  </message>
  <message name="IDS_POLICY_TABLE_COLUMN_SORT_ASCENDING" desc="Part of the label for policy table sorting arrows denoting ascending sort order.">
    in ascending order
  </message>
  <message name="IDS_POLICY_TABLE_COLUMN_SORT_DESCENDING" desc="Part of the label for policy table sorting arrows denoting descending sort order.">
    in descending order
  </message>
  <message name="IDS_POLICY_BANNER_PROMOTION_TITLE" desc="Title for Chrome Enterprise Core (CEC) promotion banner">
    Streamline how your organization manages policies
  </message>
  <message name="IDS_POLICY_BANNER_PROMOTION_DESC" desc="Description for Chrome Enterprise Core (CEC) promotion banner">
    Chrome Enterprise Core gives you a centralized tool for configuring browser policies from the cloud
  </message>
  <message name="IDS_POLICY_BANNER_PROMOTION_BTN" desc="Button for Chrome Enterprise Core (CEC) promotion banner">
    Try Chrome Enterprise Core
  </message>
  <message name="IDS_DEVTOOLS_BLOCKED_BY_POLICY" desc="Message shown when DevTools is blocked by policy.">
    Your organization has blocked the use of DevTools on this page
  </message>
  <message name="IDS_DEVTOOLS_NOT_ALLOWED" desc="Message shown when DevTools is not allowed.">
    DevTools not allowed on this page
  </message>

  <!-- Strings for chrome://policy/logs -->
  <message name="IDS_POLICY_LOGS_TITLE" desc="Title for the page.">
    Policy Logs
  </message>
  <message name="IDS_POLICY_LOGS_FILTER_PLACEHOLDER" desc="Placeholder for the input field that lets the user filter policy logs by substring.">
    Filter logs
  </message>
  <message name="IDS_VERSION_INFO" desc="Label for the section showing the version Information.">
    Version Information
  </message>
  <message name="IDS_EXPORT_POLICY_LOGS_JSON" desc="Label for the button that exports the policy logs as a JSON file.">
    Export Logs to JSON
  </message>
  <message name="IDS_REFRESH_POLICY_LOGS" desc="Label for the button that reloads the logs to add any new logs to the page.">
    Refresh Logs
  </message>

<!-- Strings for chrome://policy/test -->
  <message name="IDS_POLICY_TEST_TITLE" desc="Title for the page.">
    Policy Tests
  </message>
  <message name="IDS_POLICY_TEST_RESTART_AND_APPLY" desc="Label for the restart-browser button">
    Restart and apply policies
  </message>
  <message name="IDS_POLICY_TEST_APPLY" desc="Label for the apply-policies button.">
    Apply policies
  </message>
  <message name="IDS_POLICY_TEST_IMPORT" desc="Label for the import-policies-json button.">
    Import from JSON
  </message>
  <message name="IDS_POLICY_TEST_DESC" desc="Text for the page description.">
    You cannot use this page from a managed acount on this unmanaged device. All managed accounts will be locked if you use this page, except accounts managed by the same entity as this device (affiliated accounts).
  </message>
  <message name="IDS_POLICY_TEST_REVERT" desc="Text for the Reset policies button.">
    Revert applied policies
  </message>
  <message name="IDS_POLICY_TEST_TABLE_SCOPE" desc="Text for the column of the policy table for the policy scope.">
    Scope
  </message>
  <message name="IDS_POLICY_TEST_ADD" desc="Label for the add-policy-btn button.">
    Add policy
  </message>
  <message name="IDS_POLICY_SELECT_NAME" desc="Text for the default option in the policy name dropdown menu.">
    Select policy name
  </message>
  <message name="IDS_POLICY_TEST_TABLE_PRESET" desc="Text for the preset column of the policy test table.">
    Preset
  </message>
  <message name="IDS_LOCAL_TEST_POLICIES_ENABLED" desc="Text for banner warning user of test policies being applied">
    Test policies have been applied. Review and reset them at chrome://policy/test. Admin policies will not be applied.
  </message>
  <message name="IDS_POLICY_TEST_PRESET_CUSTOM" desc="Text for the custom option of the preset dropdown in the policy test table.">
    Custom
  </message>
  <message name="IDS_POLICY_TEST_PRESET_LOCAL_MACHINE" desc="Text for the local machine option of the preset dropdown in the policy test table.">
    Local machine
  </message>
  <message name="IDS_POLICY_TEST_PRESET_CLOUD_ACCOUNT" desc="Text for the cloud account option of the preset dropdown in the policy test table.">
    Cloud account
  </message>
  <message name="IDS_POLICY_TEST_USER_AFFILIATED" desc="Text for checkbox to select user affiliation in the policy test table.">
  User affiliated
  </message>

  <!-- Strings for Disabled chrome://.* screen -->
  <message name="IDS_CHROME_URLS_DISABLED_PAGE_HEADER" desc="A heading for the user when the application is blocked.">
    Application is blocked
  </message>
  <message name="IDS_CHROME_URLS_DISABLED_PAGE_TITLE" desc="The title for the blocked chrome URLs page.">
    Application blocked by your administrator
  </message>
  <message name="IDS_CHROME_URLS_DISABLED_PAGE_MESSAGE" desc="A paragraph informing the user that the application is blocked.">
    This application has been blocked by your administrator
  </message>

  <!-- Strings for Data Leak Prevention -->
  <message name="IDS_POLICY_DLP_CLIPBOARD_BLOCKED_ON_PASTE" desc="A notification informing the user that paste is blocked.">
    Pasting from <ph name="ORIGIN_NAME">$1<ex>corp.google.com</ex></ph> to this location is blocked by administrator policy
  </message>
  <message name="IDS_POLICY_DLP_CLIPBOARD_BLOCKED_ON_COPY_VM" desc="A toast informing the user that sharing clipboard data to VMs is blocked.">
    Sharing from <ph name="ORIGIN_NAME">$1<ex>corp.google.com</ex></ph> to <ph name="VM_NAME">$2<ex>Linux</ex></ph> has been blocked by administrator policy
  </message>
  <message name="IDS_POLICY_DLP_CLIPBOARD_BLOCK_TOAST_BUTTON" desc="Dismiss toast button label for disabled paste notification.">
    View details
  </message>
  <message name="IDS_POLICY_DLP_ANDROID_APPS" desc="Name shown for ARC in data leak prevention toasts.">
    Android apps
  </message>
  <message name="IDS_POLICY_DLP_CLIPBOARD_BLOCK_DISMISS_BUTTON" desc="Dismiss dialog button label for disabled paste notification.">
    Got it
  </message>
  <message name="IDS_POLICY_DLP_CLIPBOARD_WARN_ON_PASTE" desc="A notification warning the user that paste is not recommended.">
    Pasting from <ph name="ORIGIN_NAME">$1<ex>corp.google.com</ex></ph> to this location is not recommended by administrator policy
  </message>
  <message name="IDS_POLICY_DLP_CLIPBOARD_WARN_PROCEED_BUTTON" desc="Proceed dialog button label for warning before paste.">
    Paste anyway
  </message>
  <message name="IDS_POLICY_DLP_CLIPBOARD_WARN_ON_COPY_VM" desc="A toast informing the user that pasting the clipboard data to VMs is not recommended.">
    Copying and pasting this content to <ph name="VM_NAME">$1<ex>Linux</ex></ph> is not recommended by administrator policy
  </message>
  <message name="IDS_POLICY_DLP_PRINTING_BLOCKED_TITLE" desc="The title for notification informing the user that printing is blocked.">
    Printing is blocked
  </message>
  <message name="IDS_POLICY_DLP_PRINTING_BLOCKED_MESSAGE" desc="The message for notification informing the user that printing is blocked.">
    Printing this content is blocked by administrator policy
  </message>
  <message name="IDS_POLICY_DLP_PRINTING_WARN_TITLE" desc="The title for notification informing the user that printing is not recommended.">
    Print confidential file?
  </message>
  <message name="IDS_POLICY_DLP_PRINTING_WARN_MESSAGE" desc="The message for notification informing the user that printing is not recommended.">
    Administrator policy doesn’t recommend printing this content
  </message>
  <message name="IDS_POLICY_DLP_PRINTING_WARN_CONTINUE_BUTTON" desc="Continue dialog button label for warning before printing.">
    Print anyway
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_SHARE_BLOCKED_TITLE" desc="The title for notification informing the user that screen share is blocked.">
    Can’t share confidential content
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_SHARE_BLOCKED_MESSAGE" desc="The message for notification informing the user that screen share is blocked.">
    Administrator policy disables screen sharing with <ph name="APPLICATION_TITLE">$1<ex>example.com</ex></ph> when confidential content is visible
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_SHARE_PAUSED_TITLE" desc="The title for notification informing the user that screen share is paused.">
    Screen share paused
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_SHARE_PAUSED_MESSAGE" desc="The message for notification informing the user that screen share is paused.">
    Administrator policy disables screen sharing with <ph name="APPLICATION_TITLE">$1<ex>example.com</ex></ph> when confidential content is visible
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_SHARE_RESUMED_TITLE" desc="The title for notification informing the user that screen share is resumed.">
    Screen share resumed
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_SHARE_RESUMED_MESSAGE" desc="The message for notification informing the user that screen share is resumed.">
    Screen sharing with <ph name="APPLICATION_TITLE">$1<ex>example.com</ex></ph> was resumed
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_CAPTURE_DISABLED_TITLE" desc="The title of the notification when capture mode is disabled because of confidential content.">
    Can't capture confidential content
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_CAPTURE_DISABLED_MESSAGE" desc="The text of the notification when capture mode is disabled because of confidential content.">
    Administrator policy disables screen capture when confidential content is visible
  </message>
  <message name="IDS_POLICY_DLP_VIDEO_CAPTURE_STOPPED_TITLE" desc="The title of the notification when video capture is stopped because of confidential content.">
    Can't record confidential content
  </message>
  <message name="IDS_POLICY_DLP_VIDEO_CAPTURE_STOPPED_MESSAGE" desc="The text of the notification when video capture is stopped because of confidential content.">
    Administrator policy disables screen recording when confidential content is visible
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_SHARE_WARN_TITLE" desc="The title for notification informing the user that screen sharing is not recommended.">
    Share confidential content?
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_SHARE_WARN_MESSAGE" desc="The message for notification informing the user that screen sharing is not recommended.">
   Administrator policy doesn’t recommend sharing your screen with <ph name="APPLICATION_TITLE">$1<ex>example.com</ex></ph> when confidential content is visible:
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_SHARE_WARN_CONTINUE_BUTTON" desc="Continue dialog button label for warning before screen sharing.">
    Share anyway
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_CAPTURE_WARN_TITLE" desc="The title for notification informing the user that screen capture is not recommended.">
    Capture confidential content?
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_CAPTURE_WARN_MESSAGE" desc="The message for notification informing the user that screen capture is not recommended.">
    Administrator policy doesn’t recommend taking screenshots or recordings when confidential content is visible:
  </message>
  <message name="IDS_POLICY_DLP_SCREEN_CAPTURE_WARN_CONTINUE_BUTTON" desc="Continue dialog button label for warning before screen capture.">
    Capture anyway
  </message>
  <message name="IDS_POLICY_DLP_VIDEO_CAPTURE_WARN_TITLE" desc="The title for notification informing the user that there was confidential information revealed during screen recording.">
    Capture confidential content?
  </message>
  <message name="IDS_POLICY_DLP_VIDEO_CAPTURE_WARN_MESSAGE" desc="The message for notification informing the user that there was confidential information revealed during screen recording.">
    Administrator policy doesn’t recommend taking screenshots or recordings when confidential content is visible:
  </message>
  <message name="IDS_POLICY_DLP_VIDEO_CAPTURE_WARN_CONTINUE_BUTTON" desc="Continue dialog button label for warning before saving a screen recording.">
    Save anyway
  </message>
  <message name="IDS_POLICY_DLP_VIDEO_CAPTURE_WARN_CANCEL_BUTTON" desc="Cancel dialog button label for warning before saving a screen recording.">
    Delete recording
  </message>
  <message name="IDS_POLICY_DLP_FILES_DOWNLOAD_WARN_TITLE" desc="The title for notification informing the user that downloading selected files is not recommended.">
        {0, plural,
          =1 {Download confidential file?}
          other {Download confidential files?}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_TRANSFER_WARN_TITLE" desc="The title for notification informing the user that transferring selected files is not recommended.">
        {0, plural,
          =1 {Transfer confidential file?}
          other {Transfer confidential files?}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_UPLOAD_WARN_TITLE" desc="The title for notification informing the user that uploading selected files is not recommended.">
        {0, plural,
          =1 {Upload confidential file?}
          other {Upload confidential files?}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_MOVE_WARN_TITLE" desc="The title for notification informing the user that moving selected files is not recommended.">
        {0, plural,
          =1 {Move confidential file?}
          other {Move confidential files?}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_COPY_WARN_TITLE" desc="The title for notification informing the user that copying selected files is not recommended.">
        {0, plural,
          =1 {Copy confidential file?}
          other {Copy confidential files?}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_OPEN_WARN_TITLE" desc="The title for notification informing the user that opening selected files is not recommended.">
        {0, plural,
          =1 {Open confidential file?}
          other {Open confidential files?}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_DOWNLOAD_REVIEW_TITLE" desc="The title for notification/dialog informing the user that downloading selected files is not recommended.">
    Review is required before downloading
  </message>
  <message name="IDS_POLICY_DLP_FILES_TRANSFER_REVIEW_TITLE" desc="The title for notification/dialog informing the user that transferring selected files is not recommended.">
    Review is required before transferring
  </message>
  <message name="IDS_POLICY_DLP_FILES_UPLOAD_REVIEW_TITLE" desc="The title for notification/dialog informing the user that uploading selected files is not recommended.">
    Review is required before uploading
  </message>
  <message name="IDS_POLICY_DLP_FILES_MOVE_REVIEW_TITLE" desc="The title for notification/dialog informing the user that moving selected files is not recommended.">
    Review is required before moving
  </message>
  <message name="IDS_POLICY_DLP_FILES_COPY_REVIEW_TITLE" desc="The title for notification/dialog informing the user that copying selected files is not recommended.">
    Review is required before copying
  </message>
  <message name="IDS_POLICY_DLP_FILES_OPEN_REVIEW_TITLE" desc="The title for notification/dialog informing the user that opening selected files is not recommended.">
    Review is required before opening
  </message>
  <message name="IDS_POLICY_DLP_FILES_DOWNLOAD_WARN_MESSAGE" desc="The message for notification informing the user that downloading files is not recommended.">
        {0, plural,
                =1 {Administrator policy doesn’t recommend downloading this file to <ph name="DESTINATION_NAME">$1<ex>External storage</ex></ph>}
                other {Administrator policy doesn’t recommend downloading these files to <ph name="DESTINATION_NAME">$1<ex>External storage</ex></ph>}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_TRANSFER_WARN_MESSAGE" desc="The message for notification informing the user that transferring files is not recommended.">
        {0, plural,
                =1 {Administrator policy doesn’t recommend transferring this file to <ph name="DESTINATION_NAME">$1<ex>External storage</ex></ph>}
                other {Administrator policy doesn’t recommend transferring these files to <ph name="DESTINATION_NAME">$1<ex>External storage</ex></ph>}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_UPLOAD_WARN_MESSAGE" desc="The message for notification informing the user that uploading files is not recommended.">
        {0, plural,
                =1 {Administrator policy doesn’t recommend uploading this file to <ph name="DESTINATION_NAME">$1<ex>External storage</ex></ph>}
                other {Administrator policy doesn’t recommend uploading these files to <ph name="DESTINATION_NAME">$1<ex>External storage</ex></ph>}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_MOVE_WARN_MESSAGE" desc="The message for notification informing the user that moving files is not recommended.">
        {0, plural,
                =1 {Administrator policy doesn’t recommend moving this file to <ph name="DESTINATION_NAME">$1<ex>External storage</ex></ph>}
                other {Administrator policy doesn’t recommend moving these files to <ph name="DESTINATION_NAME">$1<ex>External storage</ex></ph>}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_COPY_WARN_MESSAGE" desc="The message for notification informing the user that copying files is not recommended.">
        {0, plural,
                =1 {Administrator policy doesn’t recommend copying this file to <ph name="DESTINATION_NAME">$1<ex>External storage</ex></ph>}
                other {Administrator policy doesn’t recommend copying these files to <ph name="DESTINATION_NAME">$1<ex>External storage</ex></ph>}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_OPEN_WARN_MESSAGE" desc="The message for notification informing the user that opening files is not recommended.">
        {0, plural,
                =1 {Administrator policy doesn’t recommend opening this file in <ph name="DESTINATION_NAME">$1<ex>External storage</ex></ph>}
                other {Administrator policy doesn’t recommend opening these files in <ph name="DESTINATION_NAME">$1<ex>External storage</ex></ph>}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_WARN_MESSAGE" desc="The message for notification/dialog warning the user that the selected file(s) might contain sensitive content and need to be reviewed before performing an action (e.g. open, upload).">
        {0, plural,
                =1 {<ph name="FILE_NAME">$1<ex>Example.txt</ex></ph> may contain sensitive content}
                other {<ph name="FILE_COUNT">$1<ex>5</ex></ph> files may contain sensitive content}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_DOWNLOAD_WARN_CONTINUE_BUTTON" desc="Continue dialog button label for warning before downloading files.">
    Download anyway
  </message>
  <message name="IDS_POLICY_DLP_FILES_TRANSFER_WARN_CONTINUE_BUTTON" desc="Continue dialog button label for warning before transferring files.">
    Transfer anyway
  </message>
  <message name="IDS_POLICY_DLP_FILES_UPLOAD_WARN_CONTINUE_BUTTON" desc="Continue dialog button label for warning before uploading files.">
    Upload anyway
  </message>
  <message name="IDS_POLICY_DLP_FILES_MOVE_WARN_CONTINUE_BUTTON" desc="Continue dialog button label for warning before moving files.">
    Move anyway
  </message>
  <message name="IDS_POLICY_DLP_FILES_COPY_WARN_CONTINUE_BUTTON" desc="Continue dialog button label for warning before copying files.">
    Copy anyway
  </message>
  <message name="IDS_POLICY_DLP_FILES_OPEN_WARN_CONTINUE_BUTTON" desc="Continue dialog button label for warning before opening files.">
    Open anyway
  </message>
  <message name="IDS_POLICY_DLP_FILES_DESTINATION_REMOVABLE_STORAGE" desc="A label for the 'Removable storage' files transfer destination.">
    Removable storage
  </message>
  <message name="IDS_POLICY_DLP_FILES_REVIEW_BUTTON" desc="The label of the warn or block notification 'Review' button, shown when some files action is under a policy restriction, that allows the user to open a dialog with more information.">
    Review
  </message>
  <message name="IDS_POLICY_DLP_FILES_DISMISS_BUTTON" desc="The label of the block notification 'Dismiss' button, shown when some files action was blocked due to policy.">
    Dismiss
  </message>
  <message name="IDS_POLICY_DLP_FILES_OK_BUTTON" desc="The label of the block dialog 'OK' button, shown when some files action was blocked due to policy.">
    OK
  </message>
  <message name="IDS_POLICY_DLP_WARN_CANCEL_BUTTON" desc="Cancel dialog button label for warning.">
    Cancel
  </message>
  <message name="IDS_POLICY_DLP_CLIPBOARD_BUBBLE_MESSAGE" desc="Text for a bubble that informs the user that their copy and paste action has been blocked/warned with a link to a help center article about Data Leak Prevention.">
    <ph name="BUBBLE_MESSAGE">$1<ex>Pasting from corp.google.com to this location is blocked by administrator policy</ex></ph>. <ph name="LEARN_MORE_TEXT">$2<ex>Learn more</ex></ph>
  </message>
  <message name="IDS_POLICY_DLP_FROM_YOUR_ADMIN_MESSAGE" desc="Introductory text specifying to users that the following message comes from their administrator.">
    From your administrator: "<ph name="ADMIN_MESSAGE">$1<ex>Files transfer is blocked by a company policy.</ex></ph>"
  </message>
  <message name="IDS_POLICY_DLP_FILES_DOWNLOAD_BLOCK_TITLE" desc="The title of the notification informing the user that downloading files is blocked.">
    Blocked download
  </message>
  <message name="IDS_POLICY_DLP_FILES_DOWNLOAD_BLOCK_MESSAGE" desc="The message of the notification informing the user that downloading files is blocked.">
    Downloading this file is blocked by administrator policy
  </message>
  <message name="IDS_POLICY_DLP_FILES_UPLOAD_BLOCK_TITLE" desc="The title of the notification informing the user that uploading files is blocked.">
    Blocked upload
  </message>
  <message name="IDS_POLICY_DLP_FILES_UPLOAD_BLOCK_MESSAGE" desc="The title of the notification informing the user that uploading files is blocked.">
     {0, plural,
                =1 {Uploading this file is blocked by administrator policy}
                other {Uploading # files is blocked by administrator policy}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_OPEN_BLOCK_TITLE" desc="The title of the notification informing the user that opening files is blocked.">
    Blocked open
  </message>
  <message name="IDS_POLICY_DLP_FILES_OPEN_BLOCK_MESSAGE" desc="The title of the notification informing the user that opening files is blocked.">
     {0, plural,
                =1 {Opening this file is blocked by administrator policy}
                other {Opening # files is blocked by administrator policy}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_DOWNLOAD_BLOCKED_TITLE" desc="The title of the notification/dialog informing the user that downloading files is blocked.">
     {0, plural,
                =1 {File blocked from downloading}
                other {<ph name="FILE_COUNT">$1<ex>5</ex></ph> files blocked from downloading}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_TRANSFER_BLOCKED_TITLE" desc="The title of the notification/dialog informing the user that transferring files is blocked.">
     {0, plural,
                =1 {File blocked from transferring}
                other {<ph name="FILE_COUNT">$1<ex>5</ex></ph> files blocked from transferring}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_UPLOAD_BLOCKED_TITLE" desc="The title of the notification/dialog informing the user that uploading files is blocked.">
     {0, plural,
                =1 {File blocked from uploading}
                other {<ph name="FILE_COUNT">$1<ex>5</ex></ph> files blocked from uploading}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_MOVE_BLOCKED_TITLE" desc="The title of the notification/dialog informing the user that moving files is blocked.">
     {0, plural,
                =1 {File blocked from moving}
                other {<ph name="FILE_COUNT">$1<ex>5</ex></ph> files blocked from moving}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_COPY_BLOCKED_TITLE" desc="The title of the notification/dialog informing the user that copying files is blocked.">
     {0, plural,
                =1 {File blocked from copying}
                other {<ph name="FILE_COUNT">$1<ex>5</ex></ph> files blocked from copying}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_OPEN_BLOCKED_TITLE" desc="The title of the notification/dialog informing the user that opening files is blocked.">
     {0, plural,
                =1 {File blocked from opening}
                other {<ph name="FILE_COUNT">$1<ex>5</ex></ph> files blocked from opening}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_POLICY_BLOCK_SINGLE_FILE_MESSAGE" desc="The message for notification/dialog informing the user an action (e.g. open, upload) of the selected file is blocked because of policy.">
    1 file was blocked because of policy
  </message>
  <message name="IDS_POLICY_DLP_FILES_POLICY_BLOCK_MESSAGE" desc="The message for notification/dialog informing the user an action (e.g. open, upload) of the selected file(s) is blocked because of policy.">
        {0, plural,
                =1 {<ph name="FILE_NAME">$1<ex>Example.txt</ex></ph> was blocked because of policy}
                other {<ph name="FILE_COUNT">$1<ex>5</ex></ph> files were blocked because of policy}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_CONTENT_BLOCK_SINGLE_FILE_MESSAGE" desc="The message for notification/dialog informing the user an action (e.g. open, upload) of the selected file is blocked because of sensitive content.">
    1 file was blocked because of content
  </message>
  <message name="IDS_POLICY_DLP_FILES_CONTENT_BLOCK_MESSAGE" desc="The message for notification/dialog informing the user an action (e.g. open, upload) of the selected file(s) is blocked because of sensitive content.">
        {0, plural,
                =1 {<ph name="FILE_NAME">$1<ex>Example.txt</ex></ph> was blocked because of content}
                other {<ph name="FILE_COUNT">$1<ex>5</ex></ph> files were blocked because of content}}
  </message>
  <message name="IDS_POLICY_DLP_FILES_BLOCK_MESSAGE" desc="The message for notification shown when an action (e.g. open, upload) of several files was blocked, that the user can review in more detail by opening a dialog.">
    Review for further details
  </message>
  <message name="IDS_POLICY_DLP_FILES_DOWNLOAD_JUSTIFICATION_LABEL" desc="Text shown in a label above an input area where the user should provide a justification before downlading a file.">
    Provide reason for downloading (required)
  </message>
  <message name="IDS_POLICY_DLP_FILES_UPLOAD_JUSTIFICATION_LABEL" desc="Text shown in a label above an input area where the user should provide a justification before uploading a file.">
    Provide reason for uploading (required)
  </message>
  <message name="IDS_POLICY_DLP_FILES_COPY_JUSTIFICATION_LABEL" desc="Text shown in a label above an input area where the user should provide a justification before copying a file.">
    Provide reason for copying (required)
  </message>
  <message name="IDS_POLICY_DLP_FILES_MOVE_JUSTIFICATION_LABEL" desc="Text shown in a label above an input area where the user should provide a justification before moving a file.">
    Provide reason for moving (required)
  </message>
  <message name="IDS_POLICY_DLP_FILES_OPEN_JUSTIFICATION_LABEL" desc="Text shown in a label above an input area where the user should provide a justification before opening a file.">
    Provide reason for opening (required)
  </message>
  <message name="IDS_POLICY_DLP_FILES_TRANSFER_JUSTIFICATION_LABEL" desc="Text shown in a label above an input area where the user should provide a justification before transferring a file.">
    Provide reason for transferring (required)
  </message>
  <message name="IDS_POLICY_DLP_FILES_DOWNLOAD_TIMEOUT_TITLE" desc="The title for notification shown after a DLP files warning times out.">
    Downloading timed out
  </message>
  <message name="IDS_POLICY_DLP_FILES_TRANSFER_TIMEOUT_TITLE" desc="The title for notification shown after a DLP files warning times out.">
    Transferring timed out
  </message>
  <message name="IDS_POLICY_DLP_FILES_UPLOAD_TIMEOUT_TITLE" desc="The title for notification shown after a DLP files warning times out.">
    Uploading timed out
  </message>
  <message name="IDS_POLICY_DLP_FILES_MOVE_TIMEOUT_TITLE" desc="The title for notification shown after a DLP files warning times out.">
    Moving timed out
  </message>
  <message name="IDS_POLICY_DLP_FILES_COPY_TIMEOUT_TITLE" desc="The title for notification shown after a DLP files warning times out.">
    Copying timed out
  </message>
  <message name="IDS_POLICY_DLP_FILES_OPEN_TIMEOUT_TITLE" desc="The title for notification shown after a DLP files warning times out.">
    Opening timed out
  </message>
  <message name="IDS_POLICY_DLP_FILES_DOWNLOAD_TIMEOUT_MESSAGE" desc="The message for notification shown after a DLP files warning times out.">
    Try downloading your files again
  </message>
  <message name="IDS_POLICY_DLP_FILES_TRANSFER_TIMEOUT_MESSAGE" desc="The message for notification shown after a DLP files warning times out.">
    Try transferring your files again
  </message>
  <message name="IDS_POLICY_DLP_FILES_UPLOAD_TIMEOUT_MESSAGE" desc="The message for notification shown after a DLP files warning times out.">
    Try uploading your files again
  </message>
  <message name="IDS_POLICY_DLP_FILES_MOVE_TIMEOUT_MESSAGE" desc="The message for notification shown after a DLP files warning times out.">
    Try moving your files again
  </message>
  <message name="IDS_POLICY_DLP_FILES_COPY_TIMEOUT_MESSAGE" desc="The message for notification shown after a DLP files warning times out.">
    Try copying your files again
  </message>
  <message name="IDS_POLICY_DLP_FILES_OPEN_TIMEOUT_MESSAGE" desc="The message for notification shown after a DLP files warning times out.">
    Try opening your files again
  </message>
 <message name="IDS_POLICY_DLP_FILES_LEARN_MORE_ABOUT_DATA_CONTROLS_ACCESSIBLE_NAME" desc="The message is read to ChromeVox users when they focus a generic learn more link related to data controls.">
    Learn more about Data Controls
  </message>
 <message name="IDS_POLICY_DLP_FILES_LEARN_MORE_ABOUT_MALWARE_PROTECTION_ACCESSIBLE_NAME" desc="The message is read to ChromeVox users when they focus a generic learn more link related to enterprise connector's malware protection.">
    Learn more about Malware protection
  </message>
 <message name="IDS_POLICY_DLP_FILES_LEARN_MORE_ABOUT_SENSITIVE_DATA_PROTECTION_ACCESSIBLE_NAME" desc="The message is read to ChromeVox users when they focus a generic learn more link related to enterprise connector's sensitive data protection.">
    Learn more about Sensitive Data protection
  </message>
  <message name="IDS_POLICY_DLP_FILES_JUSTIFICATION_TEXTAREA_ACCESSIBLE_DESCRIPTION" desc="The message is read to ChromeVox users when they focus the justification text area.">
    Please enter a justification message having at most <ph name="MAX_CHAR_COUNT">$2<ex>280</ex></ph> characters. Used <ph name="ACTUAL_CHAR_COUNT">$1<ex>10</ex></ph> out of <ph name="MAX_CHAR_COUNT">$2<ex>280</ex></ph> characters.
  </message>
  <message name="IDS_POLICY_DEVICE_SCHEDULED_REBOOT_TITLE" desc="The title for notification informing the user that the device will restart soon.">
    Device will restart very soon
  </message>
  <message name="IDS_POLICY_DEVICE_SCHEDULED_REBOOT_MESSAGE" desc="The message for notification informing the user that the device will restart soon.">
    Your administrator will restart your device at <ph name="TIME">$1<ex>3:20 PM</ex></ph> on <ph name="DATE">$2<ex>Nov 29, 2021</ex></ph>
  </message>
  <message name="IDS_POLICY_REBOOT_BUTTON" desc="Notification button label for restarting the device.">
    Restart now
  </message>
  <message name="IDS_POLICY_DEVICE_SCHEDULED_REBOOT_DIALOG_MESSAGE" desc="The message of the dialog informing the user that the device will restart soon.">
    Your administrator will restart your device automatically at <ph name="TIME">$1<ex>3:20 PM</ex></ph> on <ph name="DATE">$2<ex>Nov 29, 2021</ex></ph>. Save any open items before your device restarts.
  </message>
  <message name="IDS_REBOOT_SCHEDULED_TITLE_MINUTES" desc="The title of a dialog that tells users the device will be restarted within one or more minutes.">
        {0, plural,
          =1 {Your device will restart in 1 minute}
          other {Your device will restart in # minutes}}
  </message>
  <message name="IDS_REBOOT_SCHEDULED_TITLE_SECONDS" desc="The title of a dialog that tells users the device will be restarted within some number of seconds.">
        {0, plural,
          =0 {Your device will restart now}
          =1 {Your device will restart in 1 second}
          other {Your device will restart in # seconds}}
  </message>
  <message name="IDS_POLICY_DEVICE_POST_REBOOT_TITLE" desc="The title for notification informing the user that the device was restarted by the administrator.">
    Your administrator restarted your device
  </message>
  <message name="IDS_POLICY_DEVICE_LOCATED_TITLE" desc="The title for notification informing the user that the device was located by the administrator.">
    Device unlocked
  </message>
  <message name="IDS_POLICY_DEVICE_LOCATED_MESSAGE" desc="The body for notification informing the user that the device was located by the administrator.">
    Your administrator located this device while it was disabled. It has been re-enabled and is ready to use.
  </message>
  <message name="IDS_POLICY_BROWSING_DATA_DEPENDENCY_APPLIED_INFO" desc="The text displayed in the status column when a browsing data policy is applied for types for which sync will be automatically disabled.">
    This policy automatically disables syncing across devices for: <ph name="ACTION_LIST">$1<ex>passwords, autofill</ex></ph>.
  </message>
  <message name="IDS_POLICY_BROWSING_DATA_PLATFORM_UNSUPPORTED" desc="Warning message displayed on chrome://policy page when policies controlling browser data duration include data types that are not supported on the current platform.">
    This policy specifies data types that are not supported on your current platform: <ph name="TYPE_LIST">$1<ex>hosted_app_data, download_history</ex></ph>.
  </message>
  <message name="IDS_POLICY_NOT_SUPPORTED_AS_USER_POLICY_ON_IOS" desc="The text displayed in the status column when a policy is not supported as a user policy on ios.">
    This policy is not yet supported as a user policy on iOS.
  </message>
  <message name="IDS_POLICY_GEN_AI_DEFAULT_SETTINGS_CONTROL_MESSAGE" desc="Text listing all GenAI policies whose default behavior is controlled by GenAiDefaultSettings.">
    This policy is controlling the default behavior of the following policies: <ph name="POLICIES">$1<ex>Policy1, Policy2</ex></ph>
  </message>
  <message name="IDS_POLICY_GEN_AI_DEFAULT_SETTINGS_NO_CONTROL_MESSAGE" desc="Text stating that no GenAI policies have their default behavior controlled by GenAiDefaultSettings.">
    This policy is not controlling the default behavior of any other policies.
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SIGN_IN_DISPLAY_SOURCE"
                 desc="The name of the notification source, which is camera. Shown in the notification header.">
          Camera
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SIGN_IN_TITLE_PHOTO" desc="The title for the notification asking the user to sign-in to Microsoft OneDrive to complete the camera upload.">
    Can't save photo to OneDrive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SIGN_IN_TITLE_VIDEO" desc="The title for the notification asking the user to sign-in to Microsoft OneDrive to complete the camera upload.">
    Can't save video to OneDrive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SIGN_IN_TITLE_SCAN" desc="The title for the notification asking the user to sign-in to Microsoft OneDrive to complete the camera upload.">
    Can't save scan to OneDrive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SIGN_IN_MESSAGE_PHOTO" desc="The title for the notification asking the user to sign-in to Microsoft OneDrive to complete the camera upload.">
    Sign in to save your photo
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SIGN_IN_MESSAGE_VIDEO" desc="The title for the notification asking the user to sign-in to Microsoft OneDrive to complete the camera upload.">
    Sign in to save your video
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SIGN_IN_MESSAGE_SCAN" desc="The title for the notification asking the user to sign-in to Microsoft OneDrive to complete the camera upload.">
    Sign in to save your scan
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SIGN_IN_BUTTON" desc="Label for the button that starts the sign-in flow to Microsoft OneDrive.">
    Sign in
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SIGN_IN_CANCEL_BUTTON" desc="Cancel button for the notification asking the user to sign-in to Microsoft OneDrive.">
    Cancel
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_UPLOAD_DISPLAY_SOURCE"
                 desc="The name of the notification source for camera uploads. Shown in the notification header.">
          Camera
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_UPLOAD_CANCEL_BUTTON" desc="Cancel button on the notification that shows up informing the user that a file is being saved to the cloud.">
    Cancel
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_UPLOAD_TITLE" desc="The title of the notification which shows while file is saved to cloud storage.">
    Saving camera file
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_MULTI_UPLOAD_TITLE" desc="The title of the notification which shows while files are saved to cloud storage.">
    Saving camera files
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_UPLOAD_ONEDRIVE_MESSAGE" desc="The message of the notification which shows up informing the user that a file is being saved to OneDrive.">
    Uploading file to Microsoft OneDrive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_MULTI_UPLOAD_ONEDRIVE_MESSAGE" desc="The message of the notification which shows up informing the user that multiple files are being saved to OneDrive.">
    Uploading <ph name="COUNT">$1<ex>2</ex></ph> files to Microsoft OneDrive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_UPLOAD_GOOGLE_DRIVE_MESSAGE" desc="The message of the notification which shows up informing the user that a file is being saved to Google Drive.">
    Uploading file to Google Drive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_MULTI_UPLOAD_GOOGLE_DRIVE_MESSAGE" desc="The message of the notification which shows up informing the user that multiple files are being saved to Google Drive.">
    Uploading <ph name="COUNT">$1<ex>2</ex></ph> files to Google Drive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_CANCEL_UPLOAD_TITLE" desc="The title of the notification dialog which asks the user whether to cancel upload to cloud storage.">
    Cancel saving file?
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_CANCEL_UPLOAD_MESSAGE" desc="The message of the notification dialog which asks the user whether to cancel upload to cloud storage.">
    You will lose the file permanently
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_CANCEL_UPLOAD_SKIP_CHECKBOX" desc="The checkbox to skip the notification dialog which asks the user whether to cancel upload to cloud storage next time.">
    Do not show this dialog next time
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_CANCEL_UPLOAD_CANCEL_BUTTON" desc="The cancel button in the notification dialog which asks the user whether to cancel upload to cloud storage.">
    Yes, I want to cancel
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_CANCEL_UPLOAD_CLOSE_BUTTON" desc="The close button in the notification dialog which asks the user whether to cancel upload to cloud storage.">
    Close
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_PHOTO_UPLOAD_DONE_TITLE_ONEDRIVE" desc="The title of the notification which shows when the file is successfully saved to cloud storage.">
    Photo saved to OneDrive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_VIDEO_UPLOAD_DONE_TITLE_ONEDRIVE" desc="The title of the notification which shows when the file is successfully saved to cloud storage.">
    Video saved to OneDrive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SCAN_UPLOAD_DONE_TITLE_ONEDRIVE" desc="The title of the notification which shows when the file is successfully saved to cloud storage.">
    Scan saved to OneDrive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_PHOTO_UPLOAD_DONE_TITLE_GOOGLE_DRIVE" desc="The title of the notification which shows when the file is successfully saved to cloud storage.">
    Photo saved to Google Drive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_VIDEO_UPLOAD_DONE_TITLE_GOOGLE_DRIVE" desc="The title of the notification which shows when the file is successfully saved to cloud storage.">
    Video saved to Google Drive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SCAN_UPLOAD_DONE_TITLE_GOOGLE_DRIVE" desc="The title of the notification which shows when the file is successfully saved to cloud storage.">
    Scan saved to Google Drive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_UPLOAD_DONE_MESSAGE" desc="The message of the notification which shows when the file is successfully saved to cloud storage.">
    You can find it in the Camera folder
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_UPLOAD_DONE_EDIT_BUTTON" desc="The edit button in the notification which shows when the file is successfully saved to cloud storage.">
    Edit
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_UPLOAD_DONE_DELETE_BUTTON" desc="The delete button in the notification which shows when the file is successfully saved to cloud storage.">
    Delete
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_PHOTO_UPLOAD_ERROR_TITLE" desc="The title of the notification which shows when the file upload to cloud storage failed.">
    Unable to save photo
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_PHOTO_UPLOAD_ERROR_MESSAGE" desc="The message of the notification which shows when the file upload to cloud storage failed.">
    Photo is lost due to an unknown error
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_PHOTO_UPLOAD_ERROR_RETAKE_BUTTON" desc="The message of the notification which shows when the file upload to cloud storage failed.">
    Retake photo
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_VIDEO_UPLOAD_ERROR_TITLE" desc="The title of the notification which shows when the file upload to cloud storage failed.">
    Unable to save video
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_VIDEO_UPLOAD_ERROR_MESSAGE" desc="The message of the notification which shows when the file upload to cloud storage failed.">
    Video is lost due to an unknown error
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_VIDEO_UPLOAD_ERROR_RETAKE_BUTTON" desc="The message of the notification which shows when the file upload to cloud storage failed.">
    Retake video
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SCAN_UPLOAD_ERROR_TITLE" desc="The title of the notification which shows when the file upload to cloud storage failed.">
    Unable to save scan
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SCAN_UPLOAD_ERROR_MESSAGE" desc="The message of the notification which shows when the file upload to cloud storage failed.">
    Scan is lost due to an unknown error
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_SCAN_UPLOAD_ERROR_RETAKE_BUTTON" desc="The message of the notification which shows when the file upload to cloud storage failed.">
    Retake scan
  </message>
  <message name="IDS_POLICY_SKYVAULT_CAMERA_UPLOAD_ERROR_DISMISS_BUTTON" desc="The message of the notification which shows when the file upload to cloud storage failed.">
    Dismiss
  </message>
  <message name="IDS_POLICY_SKYVAULT_DOWNLOAD_SIGN_IN_TITLE" desc="The title for the notification asking the user to sign-in to Microsoft OneDrive to complete the camera upload.">
    Sign in to OneDrive to continue downloading
  </message>
  <message name="IDS_POLICY_SKYVAULT_DOWNLOAD_SIGN_IN_BUTTON" desc="Label for the button that starts the sign-in flow to Microsoft OneDrive.">
    Sign in
  </message>
  <message name="IDS_POLICY_SKYVAULT_DOWNLOAD_SIGN_IN_CANCEL_BUTTON" desc="Cancel button for the notification asking the user to sign-in to Microsoft OneDrive.">
    Cancel
  </message>
  <message name="IDS_POLICY_SKYVAULT_DOWNLOAD_SIGN_IN_DISPLAY_SOURCE"
                 desc="The name of the notification source, which is download manager. Shown in the notification header.">
          Download manager
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_BANNER" desc="The Files App banner displayed in local folders while SkyVault migration is ongoing.">
    Your administrator is moving your files to <ph name="CLOUD_PROVIDER">$1<ex>Google Drive</ex></ph>. You can modify these files once the upload is complete.
  </message>
  <message name="IDS_POLICY_SKYVAULT_MISCONFIGURED_POLICY_MESSAGE" desc="The message informing the user that SkyVault policies aren't configured propely. It can be shown as an error inside the Files App or as a system notification.">
    The file system has been disabled by your administrator
  </message>
  <message name="IDS_POLICY_SKYVAULT_SCREENCAPTURE_UPLOAD_TITLE" desc="The title of the notification which shows while screenshot is saved to cloud storage.">
    Saving screenshot
  </message>
  <message name="IDS_POLICY_SKYVAULT_SCREENCAPTURE_RECORDING_UPLOAD_TITLE" desc="The title of the notification which shows while screen recording is saved to cloud storage.">
    Saving screen recording
  </message>
  <message name="IDS_POLICY_SKYVAULT_SCREENCAPTURE_UPLOAD_ONEDRIVE_MESSAGE" desc="The message of the notification which shows up informing the user that screenshot is being saved to OneDrive.">
    Saving file to Microsoft OneDrive
  </message>
  <message name="IDS_POLICY_SKYVAULT_SCREENCAPTURE_UPLOAD_CANCEL_BUTTON" desc="The for the cancel button on the notification that shows up informing the user that screenshot is being saved to OneDrive.">
    Cancel
  </message>
  <message name="IDS_POLICY_SKYVAULT_SCREENCAPTURE_SIGN_IN_TITLE" desc="The title for the notification asking the user to sign-in to Microsoft OneDrive to complete the screen capture flow.">
    Sign in to Microsoft OneDrive to save screenshot
  </message>
  <message name="IDS_POLICY_SKYVAULT_SCREENCAPTURE_SIGN_IN_BUTTON" desc="Label for the button that starts the sign-in flow to Microsoft OneDrive.">
    Sign in
  </message>
  <message name="IDS_POLICY_SKYVAULT_SCREENCAPTURE_SIGN_IN_CANCEL_BUTTON" desc="Cancel button for the notification asking the user to sign-in to Microsoft OneDrive.">
    Dismiss
  </message>
  <message name="IDS_POLICY_SKYVAULT_CLOUD_PROVIDER_GOOGLE_DRIVE" desc="The title for the notification showing that local files are being moved to the cloud due to SkyVault policies.">
    Google Drive
  </message>
  <message name="IDS_POLICY_SKYVAULT_CLOUD_PROVIDER_ONEDRIVE" desc="The title for the notification showing that local files are being moved to the cloud due to SkyVault policies.">
    Microsoft OneDrive
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_PROGRESS_TITLE" desc="The title for the notification showing that local files are being moved to the cloud due to SkyVault policies.">
    Your files are being uploaded to <ph name="CLOUD_PROVIDER">$1<ex>Google Drive</ex></ph>
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_PROGRESS_MESSAGE" desc="The message for the notification showing that local files are being moved to the cloud due to SkyVault policies.">
    If you can’t find a file on your device, look for it on <ph name="CLOUD_PROVIDER">$1<ex>Google Drive</ex></ph>.
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_COMPLETED_TITLE" desc="The title for the notification showing that SkyVault migration completed successfully and all local files have been moved to the cloud.">
    Files were successfully uploaded to <ph name="FOLDER_NAME">$1<ex>ChromeOS Device 123456</ex></ph> on <ph name="CLOUD_PROVIDER">$2<ex>Google Drive</ex></ph>
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_COMPLETED_MESSAGE" desc="The message for the notification showing that SkyVault migration completed successfully and all local files have been moved to the cloud.">
    From now on, save your files to <ph name="CLOUD_PROVIDER">$1<ex>Google Drive</ex></ph>.
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_COMPLETED_BUTTON" desc="The button for the notification showing that SkyVault migration completed successfully - clicking the button opens the location to which all local files have been moved.">
    View files in <ph name="CLOUD_PROVIDER">$1<ex>Google Drive</ex></ph>
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_CONFIG_ERROR_TITLE" desc="The title for the notification showing that local files SkyVault migration is paused due to misconfigured policies, e.g. disabled cloud storage.">
    File upload to <ph name="CLOUD_PROVIDER">$1<ex>Google Drive</ex></ph> has been paused
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_CONFIG_ERROR_MESSAGE" desc="The message for the notification showing that local files SkyVault migration is paused due to misconfigured policies, e.g. disabled cloud storage.">
    Ask your administrator to verify their <ph name="CLOUD_PROVIDER">$1<ex>Google Drive</ex></ph> configuration settings.
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_ERROR_TITLE" desc="The title for the notification showing that SkyVault migration completed with errors, i.e. some files couldn't be moved to the cloud.">
    File upload to <ph name="CLOUD_PROVIDER">$1<ex>Google Drive</ex></ph> completed with errors
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_ERROR_MESSAGE" desc="The message for the notification showing that SkyVault migration completed with errors, i.e. some files couldn't be moved to the cloud.">
    One or more files were not uploaded to <ph name="FOLDER_NAME">$1<ex>ChromeOS Device 123456</ex></ph> on <ph name="CLOUD_PROVIDER">$2<ex>Google Drive</ex></ph>
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_ERROR_BUTTON" desc="The button for the notification showing that SkyVault migration completed with errors - clicking the button opens a file with the error summary.">
    Review error log
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_SIGN_IN_TITLE" desc="The title for the notification asking the user to sign-in to Microsoft OneDrive to complete the download flow.">
    File upload to Microsoft OneDrive has been paused
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_SIGN_IN_MESSAGE" desc="The title for the notification asking the user to sign-in to Microsoft OneDrive to complete the download flow.">
    Files can only be uploaded if you are signed in to Microsoft OneDrive
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_SIGN_IN_BUTTON" desc="Label for the button that starts the sign-in flow to Microsoft OneDrive.">
    Sign in to Microsoft OneDrive
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_DIALOG_TITLE_HOURS" desc="The title for the dialog informing the user that migration will start in some 2 or more hours.">
    Your file upload to <ph name="CLOUD_PROVIDER">$1<ex>Microsoft OneDrive</ex></ph> will begin in <ph name="HOURS">$2<ex>24</ex></ph> hours
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_DIALOG_TITLE_HOUR" desc="The title for the dialog informing the user that migration will start in 1 hour.">
    Your file upload to <ph name="CLOUD_PROVIDER">$1<ex>Microsoft OneDrive</ex></ph> will begin in 1 hour
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_DIALOG_TITLE_MINUTES" desc="The title for the dialog informing the user that migration will start in 2 or more minutes.">
    Your file upload to <ph name="CLOUD_PROVIDER">$1<ex>Microsoft OneDrive</ex></ph> will begin in <ph name="MINUTES">$2<ex>36</ex></ph> minutes
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_DIALOG_TITLE_MINUTE" desc="The title for the dialog informing the user that migration will start in 1 minute.">
    Your file upload to <ph name="CLOUD_PROVIDER">$1<ex>Microsoft OneDrive</ex></ph> will begin in 1 minute
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_DIALOG_UPLOAD_START_MESSAGE" desc="The message for the dialog body informing the user that file upload to the cloud provider will start at a specified time.">
    Your administrator will start uploading your files to <ph name="CLOUD_PROVIDER">$1<ex>Microsoft OneDrive</ex></ph> at <ph name="DATE_TIME">$2<ex>8/25/24 2:44:30 PM PST</ex></ph>. Keep your device connected until your file upload is complete. During the upload, you will only be able to read local files.
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_DIALOG_UPLOAD_START_ON_MESSAGE" desc="The message for the dialog body informing the user that file upload to the cloud provider will start at a specified time.">
    Your administrator will start uploading your files to <ph name="CLOUD_PROVIDER">$1<ex>Microsoft OneDrive</ex></ph> on <ph name="DATE_TIME">$2<ex>8/25/24 2:44:30 PM PST</ex></ph>. Keep your device connected until your file upload is complete. During the upload, you will only be able to read local files.
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_DIALOG_UPLOAD_DONE_MESSAGE" desc="The message for the dialog body informing the user that local storage will be disabled once the migration of existing files to the cloud provider completes.">
   Once the upload is complete, you can modify your files in <ph name="CLOUD_PROVIDER">$1<ex>Microsoft OneDrive</ex></ph>. Local storage, including any files in Trash, will be automatically removed.
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_DIALOG_UPLOAD_NOW_BUTTON" desc="Label for the dialog button that starts the file upload to cloud storage.">
    Upload now
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_DIALOG_UPLOAD_IN_HOURS_BUTTON" desc="Label for the dialog button to ackowledge that the file upload to cloud storage will start at the scheduled time, in some number of hours.">
    Upload in <ph name="HOURS">$1<ex>24</ex></ph> hr
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_DIALOG_UPLOAD_IN_MINUTES_BUTTON" desc="Label for the dialog button to ackowledge that the file upload to cloud storage will start at the scheduled time, in some number of minutes.">
    Upload in <ph name="MINUTES">$1<ex>36</ex></ph> min
  </message>
  <message name="IDS_POLICY_SKYVAULT_DELETION_DIALOG_TITLE_HOURS" desc="The title for the dialog informing the user that their local files will be deleted in some number of hours.">
    Your local files will be deleted in <ph name="HOURS">$1<ex>24</ex></ph> hours
  </message>
  <message name="IDS_POLICY_SKYVAULT_DELETION_DIALOG_TITLE_HOUR" desc="The title for the dialog informing the user that their local files will be deleted in 1 hour.">
    Your local files will be deleted in 1 hour
  </message>
  <message name="IDS_POLICY_SKYVAULT_DELETION_DIALOG_TITLE_MINUTES" desc="The title for the dialog informing the user that their local files will be deleted in some number of minutes.">
    Your local files will be deleted in <ph name="MINUTES">$1<ex>24</ex></ph> minutes
  </message>
  <message name="IDS_POLICY_SKYVAULT_DELETION_DIALOG_TITLE_MINUTE" desc="The title for the dialog informing the user that their local files will be deleted in 1 minute.">
    Your local files will be deleted in 1 minute
  </message>
  <message name="IDS_POLICY_SKYVAULT_DELETION_DIALOG_START_MESSAGE" desc="The message for the dialog body informing the user that their local files will be deleted at a specified time.">
    Your administrator will delete your local files, including any files in the Trash, on <ph name="DATE_TIME">$1<ex>8/25/24 2:44:30 PM PST</ex></ph>.
  </message>
  <message name="IDS_POLICY_SKYVAULT_DELETION_DIALOG_STORE_MESSAGE" desc="The message for the dialog body informing the user to ensure their critical data is stored before deletion starts.">
    Make sure any critical business or personal data is stored externally.
  </message>
  <message name="IDS_POLICY_SKYVAULT_DELETION_DIALOG_DELETE_NOW_BUTTON" desc="Label for the dialog button that starts the deletion of local files.">
    Delete files now
  </message>
  <message name="IDS_POLICY_SKYVAULT_DELETION_DIALOG_DELETE_IN_HOURS_BUTTON" desc="Label for the dialog button to ackowledge that the deletion of local files will start at the scheduled time, in some number of hours.">
    Delete files in <ph name="HOURS">$1<ex>24</ex></ph> hr
  </message>
  <message name="IDS_POLICY_SKYVAULT_DELETION_DIALOG_DELETE_IN_MINUTES_BUTTON" desc="Label for the dialog button to ackowledge that the deletion of local files will start at the scheduled time, in some number of minutes.">
    Delete files in <ph name="MINUTES">$1<ex>36</ex></ph> min
  </message>
  <message name="IDS_POLICY_SKYVAULT_DELETION_COMPLETED_TITLE" desc="The title for the notification informing the user that their local files were removed due to SkyVault policy.">
    Files were successfully deleted
  </message>
  <message name="IDS_POLICY_SKYVAULT_DELETION_COMPLETED_MESSAGE" desc="The message for the notification informing the user that their local files were removed due to SkyVault policy.">
    From now on, save your files to cloud storage
  </message>
  <message name="IDS_POLICY_SKYVAULT_DELETION_BANNER" desc="The Files App banner displayed in local folders before local files are removed due to SkyVault policies.">
    Local files will be deleted on <ph name="DATE_TIME">$1<ex>8/25/24 2:44:30 PM PST</ex></ph>. Make sure any critical business or personal data is stored externally.
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_UPLOAD_ERROR_NO_SPACE" desc="Error message logged along the affected file name in the SkyVault migration error log, indicating that the user needs to free up space before uploading files to OneDrive/Google Drive.">
    Free up space in <ph name="CLOUD_PROVIDER">$1<ex>Microsoft OneDrive</ex></ph> before trying again
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_UPLOAD_ERROR_FILE_NOT_EXIST" desc="Error message logged along the affected file name in the SkyVault migration error log, indicating that the file wasn't moved because it no longer exists.">
    This file wasn’t moved because it no longer exists
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_UPLOAD_ERROR_ODFS_SIGN_IN" desc="Error message logged along the affected file name in the SkyVault migration error log, indicating that the file wasn't moved because the user needs to authenticate with OneDrive.">
    Sign in to your Microsoft account before trying again
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_UPLOAD_ERROR_NO_INTERNET" desc="Error message logged along the affected file name in the SkyVault migration error log, indicating that the file wasn't moved because of lost internet connection.">
    Make sure you have stable internet connection before trying again
  </message>
  <message name="IDS_POLICY_SKYVAULT_MIGRATION_UPLOAD_ERROR_GENERIC" desc="A generic error message logged along the affected file name in the SkyVault migration error log.">
   Something went wrong. Try again later.
  </message>
</grit-part>
