<?xml version="1.0" encoding="utf-8"?>
<ArrayOfContentSearcher xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <ContentSearcher>
    <Name>KeyStoreFile</Name>
    <RuleId>CSCAN0010</RuleId>
    <ResourceMatchPattern>\.keystore$</ResourceMatchPattern>
    <MatchDetails>Found Android app signing keystore file.</MatchDetails>
    <Recommendation>Remove secret file from repo or share, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>1</Severity>
  </ContentSearcher>
  <ContentSearcher>
    <Name>Base64EncodedCertificate</Name>
    <RuleId>CSCAN0020</RuleId>
    <ResourceMatchPattern>\.(cs|ini|json|ps1|publishsettings|template|trd|ts|xml|scala)$</ResourceMatchPattern>
    <ContentPrevalidatePatterns>
      <string>MII[a-zA-Z0-9/+]{200}</string>
    </ContentPrevalidatePatterns>
    <ContentSearchPatterns>
      <string>['"&gt;;=]MII[a-zA-Z0-9/+]{200}</string>
    </ContentSearchPatterns>
    <MatchDetails>Found base64 encoded certificate with private key in source file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>1</Severity>
    <SearchValidatorClassName>Microsoft.Art.ContentSearch.Base64EncodedCertValidator, Microsoft.Art.ContentSearch</SearchValidatorClassName>
  </ContentSearcher>
  <ContentSearcher>
    <Name>PublishSettings</Name>
    <RuleId>CSCAN0030</RuleId>
    <ResourceMatchPattern>\.publishsettings$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>userpwd="[a-z0-9/\\+]{60}"</string>
    </ContentSearchPatterns>
    <MatchDetails>Found app service deployment secrets in publish settings file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
  </ContentSearcher>
  <ContentSearcher>
    <Name>CodeConnString</Name>
    <RuleId>CSCAN0040</RuleId>
    <ResourceMatchPattern>(\.(cs|js|ts|cpp|scala|linq|hql|go|rs|pl|vb)|policy_and_key\.hpp|AccountConfig\.h)$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>\n[ \t]{0,50}(//|/\*)[ \t]{0,10}[a-zA-Z0-9/+]{86}==</string>
      <string>\n[ \t]{0,50}(//|/\*)[ \t]{0,10}[a-zA-Z0-9/+]{43}=[^{@\d%]</string>
      <string>\n[^\r\n]{0,400}[&gt;|'|=|"][a-zA-Z0-9/+]{86}==</string>
      <string>\n[^\r\n]{0,400}[&gt;|'|=|"][a-zA-Z0-9/+]{43}=[^{@\d%]</string>
      <string>\n[^\r\n]{0,400}[&gt;|'|=|"][a-zA-Z0-9%]{43,53}%3d[^{a-zA-Z0-9%]</string>
      <string>\n.*(User ID|uid|UserId).*(Password|[^a-z]pwd)=[^'$%&gt;@";\[\{][^;/"\r\n ]{7,128}(;|")</string>
    </ContentSearchPatterns>
    <ContentSearchFilters>
      <ContentFilter>
        <Name>Key Patterns ContentFilters</Name>
        <Filters>
          <string>AccountKey\s*=\s*MII[a-zA-Z0-9/+]{43,}={0,2}</string>
          <string>(prefix &lt;&lt;|guestaccesstoken|Microsoft\.ApiManagement|skiptoken|cookie|tsm|fake|example|badlyFormatted|Invalid|sha512|sha256|"input"|ENCRYPTED|"EncodedRequestUri"|looks like|myStorageAccountName|(0|x|\*){8,})</string>
        </Filters>
      </ContentFilter>
    </ContentSearchFilters>
    <MatchDetails>Found storage credential in source code file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
    <SearchValidatorClassName>Microsoft.Art.ContentSearch.SymmetricKeyValidator, Microsoft.Art.ContentSearch</SearchValidatorClassName>
  </ContentSearcher>
  <ContentSearcher>
    <Name>PfxFile</Name>
    <RuleId>CSCAN0050</RuleId>
    <ResourceMatchPattern>\.(pfx|p12)$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>^(?&lt;result&gt;)[\u0000-\uFFFF]{20}</string>
    </ContentSearchPatterns>
    <MatchDetails>Found PFX certificate file.</MatchDetails>
    <Recommendation>Remove secret file from repo or share, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
    <SearchValidatorClassName>Microsoft.Art.ContentSearch.EmptyCertValidator, Microsoft.Art.ContentSearch</SearchValidatorClassName>
  </ContentSearcher>
  <ContentSearcher>
    <Name>PemFile</Name>
    <RuleId>CSCAN0060</RuleId>
    <ResourceMatchPattern>\.(pem|key)$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>-----BEGIN\s(RSA\s)?PRIVATE\sKEY-----</string>
    </ContentSearchPatterns>
    <MatchDetails>Found PEM certificate file with private key.</MatchDetails>
    <Recommendation>Remove secret file from repo or share, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
  </ContentSearcher>
  <ContentSearcher>
    <Name>PvkFile</Name>
    <RuleId>CSCAN0070</RuleId>
    <ResourceMatchPattern>\.pvk$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>^(?&lt;result&gt;)[\u0000-\uFFFF]{20}</string>
    </ContentSearchPatterns>
    <MatchDetails>Found PVK certificate file.</MatchDetails>
    <Recommendation>Remove secret file from repo or share, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
    <SearchValidatorClassName>Microsoft.Art.ContentSearch.EmptyCertValidator, Microsoft.Art.ContentSearch</SearchValidatorClassName>
  </ContentSearcher>
  <ContentSearcher>
    <Name>SecurityConfig</Name>
    <RuleId>CSCAN0080</RuleId>
    <ResourceMatchPattern>securityconfig\.xml$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>&lt;password&gt;[^&lt;]+&lt;/password&gt;</string>
    </ContentSearchPatterns>
    <MatchDetails>Found secrets in security config file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
  </ContentSearcher>
  <ContentSearcher>
    <Name>ConfigFile</Name>
    <RuleId>CSCAN0090</RuleId>
    <ResourceMatchPattern>\.(config|cscfg|conf|json|js|txt|cpp|sql|dtsx|md|java|FF|template|settings|ini|BF|ste|isml|test|ts|resx|Azure|sample|backup|rd|hpp|psm1|cshtml|htm|bat|waz|yml|Beta|py|sh|m|php|xaml|keys|cmd|rds|loadtest|properties|vbs|ccf|user)$|(hubot|project.params)</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>&lt;machineKey[^&gt;]+(decryptionKey\s*\=\s*"[a-fA-F0-9]{48,}|validationKey\s*\=\s*"[a-fA-F0-9]{48,})[^&gt;]+&gt;</string>
      <string>(decryptionKey|validationKey)="[a-zA-Z0-9]+"</string>
      <string>(connectionstring|connString)[^=]*=["'][^"']*Password\s*=\s*[^$\s;][^"']*(\x22|\x27)</string>
      <string>&lt;add\skey="[^"]+(key(s|[0-9])?|credential(s)?|secret(s|[0-9])?|password|token|KeyPrimary|KeySecondary|KeyOrSas|KeyEncrypted)"\s*value\s*="[^"]+"[^&gt;]*/&gt;</string>
      <string>&lt;add\skey="[^"]+"\s*value="[^"]*EncryptedSecret:[^"]+"\s*/&gt;</string>
      <string>value\s?=\s?"((([A-Za-z0-9+/]){4}){1,200})=="</string>
      <string>\n[^\r\n]{0,400}(&gt;|'|=|")[a-zA-Z0-9/+]{86}==</string>
      <string>\n[^\r\n]{0,400}(&gt;|'|=|")[a-zA-Z0-9/+]{43}=[^{@]</string>
      <string>\n[^\r\n]{0,400}(&gt;|'|=|")[a-zA-Z0-9%]{43,53}%3d[^a-zA-Z0-9%]</string>
      <string>\n.*(User ID|uid|UserId).*(Password|[^a-z]pwd)=[^'$%&gt;@'";\[\{][^;/"]{7,128}(;|")</string>
      <string>&lt;Credential\sname="[^"]*(key(s|[0-9])?|credential(s)?|secret(s|[0-9])?|password|token|KeyPrimary|KeySecondary|KeyOrSas|KeyEncrypted)"(\s*value\s*="[^"]+".*?/&gt;|[^&gt;]*&gt;.*?&lt;/Credential&gt;)</string>
      <string>&lt;setting\sname="[^"]*Password".*[\r\n]*\s*&lt;value&gt;.+&lt;/value&gt;</string>
      <string>(?s)&lt;SSIS:Parameter\n?\s*SSIS:Name="password"&gt;.*?&lt;SSIS:Property\n?\s*SSIS:Name="Value"&gt;[^&gt;&lt;#$\[\{\(]+&lt;/SSIS:Property&gt;</string>
      <string>&lt;SSIS:Property\n?\s*SSIS:Name="Value"&gt;.*["']password["']:["'][^"']+["']</string>
    </ContentSearchPatterns>
    <ContentSearchFilters>
      <ContentFilter>
        <Name>Key Patterns ContentFilters</Name>
        <Filters>
          <string>key\s*=\s*"[^"]*AppKey[^"]*"\s+value\s*=\s*"[a-z]+"</string>
          <string>key\s*=\s*"(?&lt;keygroup&gt;[^"]*)"\s+value\s*=\s*"[^"]*\k&lt;keygroup&gt;"</string>
          <string>value\s*=\s*"(([a-z]+_[a-z]+)+"|[a-z]+( [a-z]+)+"|_+[a-z]+_+"|[a-z]+-[a-z]+-[a-z]+["-]|[a-z]+-[a-z]+"|[a-z]+\\[a-z]+"|\d+"|[^"]*ConnectionString")</string>
          <string>AccountKey\s*=\s*MII[a-zA-Z0-9/+]{43,}={0,2}</string>
          <string>Credentials?Type|ConnectionStringKey|notasecret|PartitionKey|notreal|insertkey|LookupKey|IgnoreKeys|SecretsService|SecretsTenantId|(Password|pwd|secret|credentials?)(Key|Location)|KeyManager</string>
          <string>value="(true|false|@\(api|ssh\-rsa 2048|invalid|to be|a shared secret|secreturi|clientsecret|Overr?idden by|someValue|SOME\-SIGNING\-KEY|TokenBroker|UNKNOWN|Client Secret of|Junk Credentials|Default\-|__BOOTSTRAPKEY_|CacheSecret|CatalogCert|CosmosCredentials|DeleteServiceCert|EmailCredentials|MetricsConnection|SangamCredentials|SubscriptionConnection|Enter_your_|My_Issuer|ScaleUnitXstoreSharedKey|private_powerapps|TestSecret|foo_|bar_|temp_|__WinfabricTestInfra|configured|SecretFor|Test|XSTORE_KEY|ServiceBusDiagnosticXstoreSharedKey|BoxApplicationKey|googleapps)</string>
          <string>(SecurityHashcode|_AppKey"|((credential|password|token)s?|(Account|access)Key=)"[\s\r\n]*/|username"\s*value="|\.dll|(Secret|Token|Key|Credential)s?(Encryption|From|(Signing)?Certificate|Options|Thumbprint|Contacts|String|UserId)|Key(1;value1|word|s?Path|Index|Id|Store|WillDoWithoutValidation|:NamePattern|Name"|Ref")|(Secret|Credential)s?(Name|Path)"|(StrongName|Chaos\s?Mon|Redis|Registry|Registery|User|Insights?|Instrumentation|Match\()Key|(Certificate|cert)(Issuer|Subject)|rollingdate|skuId|HKEY_|AddServicePrincipalCredentials|Password Resets|SecretStore|(0|x|\*){8,})</string>
        </Filters>
      </ContentFilter>
    </ContentSearchFilters>
    <MatchDetails>Found password, symmetric key or storage credential in source file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
    <SearchValidatorClassName>Microsoft.Art.ContentSearch.SymmetricKeyValidator, Microsoft.Art.ContentSearch</SearchValidatorClassName>
  </ContentSearcher>
  <ContentSearcher>
    <Name>RunnerSvcMds</Name>
    <RuleId>CSCAN0100</RuleId>
    <ResourceMatchPattern>runnersvc\.|\.xml</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>&lt;XstoreAccountInfo[ -~"\s\S\n\r\t]+accountSharedKey\s*=\s*"[^"]{30}[ -~"\s\S\n\r\t]+/&gt;</string>
      <string>&lt;ServiceBusAccountInfo[ -~"\s\S\n\r\t]+connectionString\s*=\s*"[^"]{30}[ -~"\s\S\n\r\t]+/&gt;</string>
    </ContentSearchPatterns>
    <MatchDetails>Found storage credential in config file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
  </ContentSearcher>
  <ContentSearcher>
    <Name>ScriptPassword</Name>
    <RuleId>CSCAN0110</RuleId>
    <ResourceMatchPattern>(\.cmd|\.ps|\.ps1|\.psm1)$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>\s-Password\s+("[^"\r\n]*"|'[^'\r\n]*')</string>
      <string>\s-Password\s+[^$\(\)\[\{&lt;\-\r\n]+\s*(\r\n|\-)</string>
    </ContentSearchPatterns>
    <MatchDetails>Found potential password in script file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
  </ContentSearcher>
  <ContentSearcher>
    <Name>ExternalApiSecret</Name>
    <RuleId>CSCAN0120</RuleId>
    <ResourceMatchPattern>\.cs$|\.cpp$|\.c$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>private\sconst\sstring\sAccessTokenSecret\s=\s".*";</string>
      <string>private\sconst\sstring\saccessToken\s=\s".*";</string>
      <string>private\sconst\sstring\sconsumerSecret\s=\s".*";</string>
      <string>private\sconst\sstring\sconsumerKey\s=\s".*";</string>
      <string>FacebookClient\(pageAccessToken\);</string>
      <string>pageAccessToken\s=\s".*";</string>
      <string>private\sstring\stwilioAccountSid\s=\s".*";</string>
      <string>private\sstring\stwilioAuthToken\s=\s".*";</string>
    </ContentSearchPatterns>
    <MatchDetails>Found potential external API secret in source file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
  </ContentSearcher>
  <ContentSearcher>
    <Name>MonitoringAgent</Name>
    <RuleId>CSCAN0130</RuleId>
    <ResourceMatchPattern>AgentConfig\.xml$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>Account moniker\s?=.*key\s?=.*</string>
    </ContentSearchPatterns>
    <ContentSearchFilters>
      <ContentFilter>
        <Name>Auto Key Patterns ContentFilters</Name>
        <Filters>
          <string>autoKey</string>
          <string>%s</string>
        </Filters>
      </ContentFilter>
    </ContentSearchFilters>
    <MatchDetails>Found storage credential in MonitoringAgent config file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
  </ContentSearcher>
  <ContentSearcher>
    <Name>DefaultPassword</Name>
    <RuleId>CSCAN0140</RuleId>
    <ResourceMatchPattern>\.(cs|xml|config|json|ts|cfg|txt|ps1|bat|cscfg|rdg|linq|publishsettings|cmd|psm1|aspx|asmx|vbs|added_cluster|clean|pubxml|ccf|ini|svd|sql|c|xslt|csv|FF|ExtendedTests|settings|cshtml|template|trd|argfile|scala)$|(config|certificate|publish|UT)\.js$|(commands|user|tests)\.cpp$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>T!T@n1130|P0rsche911|coMmac\!12|pass@word1|rdPa\$\$w0rd|iis6\!dfu|p@ssword1|Pa\$\$word1|\!\!123ab|admin123|P@ssw0rd1|user@123|abc@123|Password@123|rdP@\$\$w0rd|homerrocks|Pa\$\$w0rd1?|\!Password1|Pa55word1|P@\$\$w0rd1|Passw0rd1|J\$p1ter|rdPassW0rd|Y29NbWFjITEy|Pass4Sales|rdPa\$\$word|\!P@ssW0rd1|WS2012R2R0cks\!|DSFS0319Test|March2010M2\!|Password~1|UL0brlXlp_r8vG6iiRvCcsFDfu6bJ6KK|7\-Tdh3Klrec4dJbOyONDOkCQ84BWN1JN|\$mCertPwd|Pa\$\$word!|2012\$erver!|2008\$erver!|#Bugsfor\$|ITG2Install!|rdPa$$w0rd|T!T@n113000|T!T@n1130T!T@n1130|TitanPwd%|ChocoCheese!|n1130@T!T|Micr0s0ft|test1test!|123@tieorg|IWantYouToTripLikeIDo!\?|homerocks|Elvis1|S_MSLocal~!@#</string>
    </ContentSearchPatterns>
    <MatchDetails>Found known password in source file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
  </ContentSearcher>
  <ContentSearcher>
    <Name>AzureSecret</Name>
    <RuleId>CSCAN0150</RuleId>
    <ResourceMatchPattern>\.(xml|pubxml|definitions|ps1|wadcfgx|cmd|ccf)$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>userpwd="[a-z0-9]{60}"</string>
      <string>\n[^\r\n]{0,400}(&gt;|'|=|")[a-zA-Z0-9/+]{43}=[^{@]</string>
      <string>\n[^\r\n]{0,400}(&gt;|'|=|"|#)[a-zA-Z0-9/+]{86}==</string>
      <string>\n[^\r\n]{0,400}(&gt;|'|=|")[a-zA-Z0-9%]{43,53}%3d[^a-zA-Z0-9%]</string>
      <string>\n.*(User ID|uid|UserId).*(Password|[^a-z]pwd)=[^'$%&gt;@";\[\{][^;/"]{7,128}(;|")</string>
    </ContentSearchPatterns>
    <ContentSearchFilters>
      <ContentFilter>
        <Name>Key Patterns ContentFilters</Name>
        <Filters>
          <string>AccountKey\s*=\s*MII[a-zA-Z0-9/+]{43,}={0,2}</string>
        </Filters>
      </ContentFilter>
    </ContentSearchFilters>
    <MatchDetails>Found symmetric key or storage credential in source file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, use an approved secret store.</Recommendation>
    <Severity>3</Severity>
    <SearchValidatorClassName>Microsoft.Art.ContentSearch.SymmetricKeyValidator, Microsoft.Art.ContentSearch</SearchValidatorClassName>
  </ContentSearcher>
  <ContentSearcher>
    <Name>DomainPassword</Name>
    <RuleId>CSCAN0160</RuleId>
    <ResourceMatchPattern>\.cs$|\.c$|\.cpp$|\.ps1$|\.ps$|\.cmd$|\.bat$|\.log$|\.psd$|\.psm1$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>NetworkCredential\(.*,.*,(corp|europe|middleeast|northamerica|southpacific|southamerica|fareast|africa|redmond|exchange|extranet|partners|extranettest|parttest|noe|ntdev|ntwksta|sys\-wingroup|windeploy|wingroup|winse|segroup|xcorp|xrep|phx|gme|usme|cdocidm|mslpa)\\.*</string>
      <string>net\suse.*\/u\:(corp|europe|middleeast|northamerica|southpacific|southamerica|fareast|africa|redmond|exchange|extranet|partners|extranettest|parttest|noe|ntdev|ntwksta|sys\-wingroup|windeploy|wingroup|winse|segroup|xcorp|xrep|phx|gme|usme|cdocidm|mslpa)\\.*</string>
      <string>schtasks.*/ru\s(corp|europe|middleeast|northamerica|southpacific|southamerica|fareast|africa|redmond|exchange|extranet|partners|extranettest|parttest|noe|ntdev|ntwksta|sys\-wingroup|windeploy|wingroup|winse|segroup|xcorp|xrep|phx|gme|usme|cdocidm|mslpa).*/rp.*</string>
      <string>new-object\s*System.Net.NetworkCredential\(.*?,\s*"[^"]+"</string>
    </ContentSearchPatterns>
    <ContentSearchFilters>
      <ContentFilter>
        <Name>Placeholder ContentFilters</Name>
        <Filters>
          <string>%1%</string>
          <string>\$MIGUSER_PASSWORD</string>
          <string>%miguser_pwd%</string>
        </Filters>
      </ContentFilter>
    </ContentSearchFilters>
    <MatchDetails>Found domain credential in source file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
  </ContentSearcher>
  <ContentSearcher>
    <Name>EncryptedPassword</Name>
    <RuleId>CSCAN0200</RuleId>
    <ResourceMatchPattern>\.ini$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>ENC_UserName=[\w]+[\r\n]+ENC_Password=[\w]+</string>
    </ContentSearchPatterns>
    <MatchDetails>Found DevDiv TFVC repo secrets.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>2</Severity>
    <GroupsExtractorClassName>Microsoft.Art.ContentSearch.EncodedUserNameExtractor, Microsoft.Art.ContentSearch</GroupsExtractorClassName>
  </ContentSearcher>
  <ContentSearcher>
    <Name>GitCredential</Name>
    <RuleId>CSCAN0210</RuleId>
    <ResourceMatchPattern>\.gitCredentials$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>https?://.+:.+@\[^/].com</string>
    </ContentSearchPatterns>
    <MatchDetails>Found Git repo credentials.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>2</Severity>
  </ContentSearcher>
  <ContentSearcher>
    <Name>DefaultPasswordContexts</Name>
    <RuleId>CSCAN0220</RuleId>
    <ResourceMatchPattern>\.(cs|xml|config|json|ts|cfg|txt|ps1|bat|cscfg|publishsettings|cmd|psm1|aspx|asmx|vbs|added_cluster|clean|pubxml|ccf|ini|svd|sql|c|xslt|csv|FF|ExtendedTests|settings|cshtml|template|trd|argfile|scala|rdg|linq|hql|go|rs|pl|java|php|py|vb)$|(config|certificate|publish|UT)\.js$|(commands|user|tests)\.cpp$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>ConvertTo-SecureString(\s*-String)?\s*"(?&lt;scoringvalue&gt;[^"\r\n]+)"</string>
      <string>new\sX509Certificate2\([^()]*,\s*"(?&lt;scoringvalue&gt;[^"\r\n]+)"[^)]*\)</string>
      <string>&lt;password&gt;(&lt;value&gt;)?(?&lt;scoringvalue&gt;.+)(&lt;/value&gt;)?&lt;/password&gt;</string>
      <string>ClearTextPassword(")?\s*[:=]\s*"(?&lt;scoringvalue&gt;[^"\r\n]+)"</string>
      <string>certutil(.exe)?\s+(\-[a-z]+\s+)*\-p\s+(?&lt;quote&gt;["'])(?&lt;scoringvalue&gt;[^"'%]+)\k&lt;quote&gt;</string>
      <string>certutil(.exe)?\s+(\-[a-z]+\s+)*\-p\s+(?&lt;scoringvalue&gt;[^"']\S*)\s</string>
      <string>password\s*=\s*N?(?&lt;quote&gt;["'])(?&lt;scoringvalue&gt;[^"'\r\n]{4,})\k&lt;quote&gt;</string>
    </ContentSearchPatterns>
    <ContentSearchFilters>
      <ContentFilter>
        <Name>DefaultPasswordContexts Content Filter</Name>
        <Filters>
          <string>&lt;value&gt;&lt;/value&gt;</string>
        </Filters>
      </ContentFilter>
    </ContentSearchFilters>
    <MatchDetails>Found known password context with password in source file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
    <SearchValidatorClassName>Microsoft.Art.ContentSearch.PasswordContextValidator, Microsoft.Art.ContentSearch</SearchValidatorClassName>
  </ContentSearcher>
  <ContentSearcher>
    <Name>SlackToken</Name>
    <RuleId>CSCAN0230</RuleId>
    <ResourceMatchPattern>\.(ps1|psm1|js|json|coffee|xml|js|md|html|py|php|java|ipynb|rb|scala)$|hubot</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>xoxp-[a-zA-Z0-9]+-[a-zA-Z0-9]+-[a-zA-Z0-9]+-[a-zA-Z0-9]+</string>
      <string>xoxb-[a-zA-Z0-9]+-[a-zA-Z0-9]+</string>
    </ContentSearchPatterns>
    <MatchDetails>Found slack token in source file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
  </ContentSearcher>
  <ContentSearcher>
    <Name>VstsPersonalAccessToken</Name>
    <RuleId>CSCAN0240</RuleId>
    <ResourceMatchPattern>\.(cs|ps1|bat|config|xml|json|md)$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>AccessToken.*?['="](?-i)[a-z2-7]{52}('|"|\s|[\r\n]+)</string>
      <string>[&gt;|'|=|"][a-zA-Z0-9/+]{70}==</string>
      <string>password\s+(?-i)[a-z2-7]{52}(\s|[\r\n]+)</string>
    </ContentSearchPatterns>
    <MatchDetails>Found Vsts personal access token in source file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
    <SearchValidatorClassName>Microsoft.Art.ContentSearch.Base64EncodedVstsAccessTokenValidator, Microsoft.Art.ContentSearch</SearchValidatorClassName>
  </ContentSearcher>
  <ContentSearcher>
    <Name>OAuthToken</Name>
    <RuleId>CSCAN0250</RuleId>
    <ResourceMatchPattern>\.(config|js|json|txt|cs|xml|java|py|scala|linq|md)$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>eyj[a-z0-9\-_%]+\.eyj[a-z0-9\-_%]+\.[a-z0-9\-_%]+</string>
      <string>refresh_token["']?\s*[:=]\s*["']?([a-z0-9_]+-)+[a-z0-9_]+["']?</string>
    </ContentSearchPatterns>
    <ContentSearchFilters>
      <ContentFilter>
        <Name>Key Patterns ContentFilters</Name>
        <Filters>
          <string>[:=]\s*["']?(base64-encoded|([a-z]+-)+[a-z]+)["']?</string>
        </Filters>
      </ContentFilter>
    </ContentSearchFilters>
    <MatchDetails>Found JsonWebToken/RefreshToken in source file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
    <SearchValidatorClassName>Microsoft.Art.ContentSearch.JsonWebTokenValidator, Microsoft.Art.ContentSearch</SearchValidatorClassName>
  </ContentSearcher>
  <ContentSearcher>
    <Name>AnsibleVault</Name>
    <RuleId>CSCAN0260</RuleId>
    <ResourceMatchPattern>\.yml$</ResourceMatchPattern>
    <ContentSearchPatterns>
      <string>\$ANSIBLE_VAULT;[0-9]\.[0-9];AES256[\r\n]+[0-9]+</string>
    </ContentSearchPatterns>
    <MatchDetails>Found ansible vault in source file.</MatchDetails>
    <Recommendation>Validate file contains secrets, remove, roll credential, and use approved store. For additional information on secret remediation see https://aka.ms/credscan </Recommendation>
    <Severity>3</Severity>
  </ContentSearcher>
  <ContentSearcher>
    <RuleId>CSCAN-SKYPE0001</RuleId>
    <Name>BannedNativeAPI</Name>
    <ResourceMatchPattern>\.(cpp|h)$</ResourceMatchPattern>
    <ResourceSearchFilters>
      <ResourceFilter>
        <Filters>
          <!-- Generic test directories (e.g. .git, test*, *test, *tests) -->
          <string>(?i).*\\(\.git|test[^\\]*|[^\\]*tests?)\\.*</string>
          <!-- Generic test files (e.g. mock*.cpp, test*.cpp, *test.cpp)-->
          <string>(?i).*((mock|test)[^\\]*|tests?)\.cpp</string>
          <!-- Windows SDK header files in SBS\dev_rdpkit and similar repos -->
          <string>(?i).*\\sdk\\inc\\.*\.h</string>
          <!-- Excluding selected SlimCore repositories #1792462 -->
          <string>(?i).*\\\d+\\s\\SCC\\(client-shared_framework_roottools|client-shared_framework_slimcore|media_stack_all)\\.*</string>
          <!-- Excluding TPS repositories -->
          <string>(?i).*\\\d+\\s\\TPS\\.*</string>
        </Filters>
      </ResourceFilter>
    </ResourceSearchFilters>
    <ContentSearchPatterns>
      <string>(?-isn)(^|.*[\t ])(CopyMemory|IsBadCodePtr|IsBadHugeReadPtr|IsBadHugeWritePtr|IsBadReadPtr|IsBadStringPtr|IsBadWritePtr|RtlCopyMemory|StrCat|StrCatA|StrCatBuff|StrCatBuffA|StrCatBuffW|StrCatChainW|StrCatN|StrCatNA|StrCatNW|StrCatW|StrCpy|StrCpyA|StrCpyN|StrCpyNA|StrCpyNW|StrCpyW|StrNCat|StrNCatA|StrNCatW|StrNCpy|StrNCpyA|StrNCpyW|_fstrncat|_fstrncpy|_ftcscat|_ftcscpy|_getts|_gettws|_getws|_mbccat|_mbccpy|_mbscat|_mbscpy|_mbsnbcat|_mbsnbcpy|_mbsncat|_mbsncpy|_stprintf|_tccat|_tccpy|_tcscat|_tcscpy|_tcsncat|_tcsncpy|_vstprintf|gets|lstrcat|lstrcatA|lstrcatW|lstrcatn|lstrcatnA|lstrcatnW|lstrcpy|lstrcpyA|lstrcpyW|lstrcpyn|lstrcpynA|lstrcpynW|lstrncat|memcpy|sprintf|sprintfA|sprintfW|strcat|strcatA|strcatW|strcpy|strcpyA|strcpyW|strcpynA|strncat|strncpy|swprintf|vsprintf|vswprintf|wcscat|wcscpy|wcsncat|wcsncpy|wmemcpy|wsprintf|wsprintfA|wsprintfW|wvsprintf|wvsprintfA|wvsprintfW)\(\s*[^)].*\).*</string>
    </ContentSearchPatterns>
    <ContentSearchFilters>
      <ContentFilter>
        <Filters>
          <string>//\s*SEC:REVIEWED</string>
        </Filters>
      </ContentFilter>
      <ContentFilter>
        <Filters>
          <string>^\s*//</string>
        </Filters>
      </ContentFilter>
    </ContentSearchFilters>
    <MatchDetails>Found Security Development Lifecycle (SDL) banned function in native C/C++ code.</MatchDetails>
    <Recommendation>Replace banned function with a more secure version. For additional information on remediation see  https://msdn.microsoft.com/en-us/library/bb288454.aspx</Recommendation>
    <Severity>1</Severity>
  </ContentSearcher>
  <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
    <SignedInfo>
      <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
      <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
      <Reference URI="">
        <Transforms>
          <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
          <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
        </Transforms>
        <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
        <DigestValue>g85rLl0qU0V5FlaDUyY7NI1u5wY=</DigestValue>
      </Reference>
    </SignedInfo>
    <SignatureValue>XFplFsd7jhEbbd201UwoDaUs1Jrj788B3Kt4BVJWo0wOECcBg1O6M88ACUax41ITObTaf3h4kZYVsBZ5/8ruqTeDw46BYG6uI2Nd2AOPwJZpW65HUbz1A5rVteCu5ynLyfI/gpO8VoAoA5xH8WhzYpAJzk+JEC2znyBYPVc9MkXdX1s4vbGrEOgdVZfO6ZzkS4j8MMZOKa+nOCifjypod/o6y2XYko4VHQ3Fmh8rHpXD8xLc/RvusVdyav46j73LQkjQ9Pxaktzl0O/KkDsoi0RP2qNLDhDNFr40wjBwfaOcZ5fDRf6C818hsYkQ9F4cZUoKk+ZCoI6aVlQekkx4Ew==</SignatureValue>
    <KeyInfo>
      <KeyValue>
        <RSAKeyValue>
          <Modulus>svp3YfIuM6ymh8HVef3OjGmqa699QLrnyKcUkvGAPSCKZfLTCEhSzoddvlYAMtWNIcJpa9Di10CeAmHOBOQxhCetJQ6bWQtAnYqO4oVoAE+D/uXBZ11YYWp0Y17GfmjfPXNCNNTI4OsewSatc3Lni5EQql8rT2w9+dyytEWv1N2CXZWEpvLHvfivH+/BgaseVHWzT+pqz1Jzd+RjtoUAFKQLO3pMkl+HYS1K7u2pk4+V3FaX+tO7OvWLIC/SvdzeS0jMKfg+Yfam/lM7iOT2NKt6S5waJaVfYUWQqsERRdsJhGgspd5zsM1gL79bA3SnuGj+/ohBy4N8OjTeYC8fVw==</Modulus>
          <Exponent>AQAB</Exponent>
        </RSAKeyValue>
      </KeyValue>
      <X509Data>
        <X509Certificate>MIIFZjCCBE6gAwIBAgITVwA878IoAK/Bpdmn3gAAADzvwjANBgkqhkiG9w0BAQsFADAVMRMwEQYDVQQDEwpNU0lUIENBIFoxMB4XDTE3MTAxNjIyNTEzNloXDTE4MTAxNjIyNTEzNlowgYgxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xMjAwBgNVBAMTKU1pY3Jvc29mdCBDb3Jwb3JhdGlvbiAoSW50ZXJuYWwgVXNlIE9ubHkpMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsvp3YfIuM6ymh8HVef3OjGmqa699QLrnyKcUkvGAPSCKZfLTCEhSzoddvlYAMtWNIcJpa9Di10CeAmHOBOQxhCetJQ6bWQtAnYqO4oVoAE+D/uXBZ11YYWp0Y17GfmjfPXNCNNTI4OsewSatc3Lni5EQql8rT2w9+dyytEWv1N2CXZWEpvLHvfivH+/BgaseVHWzT+pqz1Jzd+RjtoUAFKQLO3pMkl+HYS1K7u2pk4+V3FaX+tO7OvWLIC/SvdzeS0jMKfg+Yfam/lM7iOT2NKt6S5waJaVfYUWQqsERRdsJhGgspd5zsM1gL79bA3SnuGj+/ohBy4N8OjTeYC8fVwIDAQABo4ICOTCCAjUwCwYDVR0PBAQDAgeAMBMGA1UdJQQMMAoGCCsGAQUFBwMDMB0GA1UdDgQWBBRvYLTtf4mqDUG+qWU/65dn0TFOHzA0BgNVHREELTArpCkwJzENMAsGA1UECxMETU9QUjEWMBQGA1UEBRMNMjMwODU2KzI0Mjc0NzAfBgNVHSMEGDAWgBSQ7g3bRHXdP9q98SQAV63XuSdTozCBtQYDVR0fBIGtMIGqMIGnoIGkoIGhhiVodHRwOi8vY29ycHBraS9jcmwvTVNJVCUyMENBJTIwWjEuY3JshjxodHRwOi8vbXNjcmwubWljcm9zb2Z0LmNvbS9wa2kvbXNjb3JwL2NybC9NU0lUJTIwQ0ElMjBaMS5jcmyGOmh0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2kvbXNjb3JwL2NybC9NU0lUJTIwQ0ElMjBaMS5jcmwwgYUGCCsGAQUFBwEBBHkwdzAxBggrBgEFBQcwAoYlaHR0cDovL2NvcnBwa2kvYWlhL01TSVQlMjBDQSUyMFoxLmNydDBCBggrBgEFBQcwAoY2aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraS9tc2NvcnAvTVNJVCUyMENBJTIwWjEuY3J0MD4GCSsGAQQBgjcVBwQxMC8GJysGAQQBgjcVCIfahnWD7tkBgsmFG4G1nmGF9OtggV2Bm8cnhoyZRwIBZAIBCTAbBgkrBgEEAYI3FQoEDjAMMAoGCCsGAQUFBwMDMA0GCSqGSIb3DQEBCwUAA4IBAQAde7bN5aCfIQXiuYd89vVk7h1Fx2fkIN7OFHPsHXJRewtmm+cKbckMnTKfnMSbhMuqNGm70oBoXElZ+6CMuELLza9C7pT9VuNpj1vJinKFmwcVF0NBvvN4NEV8FIqv/zBb9wRRHm0m8xsD/LN4opjIja+TbcRXW4v5tRQUSEmgyTsFscb+21E1euSkCTVQ17zI/nSGD1DHctRq62gfIjZzQgtEGf4U2z0tOxsfLd5H4ZNNLpXjh/ji+Z4XakqIsJajEXnOe6csOyiuifcQkYvN5peb3GIEY7DtJ0IQawT+UM/vxlwSMPnV8sp/M99BJQ/ELyhPrnJ5GFBA7sSaturN</X509Certificate>
        <X509Certificate>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</X509Certificate>
        <X509Certificate>MIIFsDCCA5igAwIBAgIQCx8BEem5Cp1K2NZtNZ9wADANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDEyFNaWNyb3NvZnQgSW50ZXJuYWwgQ29ycG9yYXRlIFJvb3QwHhcNMTIwNDA1MjE1NDU0WhcNMzcwNDA1MjIwMTA1WjAsMSowKAYDVQQDEyFNaWNyb3NvZnQgSW50ZXJuYWwgQ29ycG9yYXRlIFJvb3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCV2ldlrpoImQLgnSMRmPCan4PHEw+Gxd2JecDmnas8ZF1VMj5M7qhKnahwIJCoasPjnYORprpbkUZrAMM+yp3aQ+Ob7qn2d1EVxRduozSnQ1siu5DStXGIPv1z19h2wJ2T6uZEde59Vy3tyBfekYkaq9+d4Zh+ie+j6mvaufPG0Job7FZsG9B2KfjggLXiT5OnOqGgB/ODk+OtWJQyUCXyCUHgUwg8d+ZhHTZqfKZL5E6riz7ftgo707/EiySCJe8L4uXJSOqfCBgrzQyOik0Uh811DFmGPF0pT42RWUZGLSmAGxuMpSRZcCkvuhfeSczeR/hwCQiiLcoM1c6apoFtipq7B0NhpL29SE9KyGFQ0BwlH+HIU+/ccOZotaO70nte5CuIDCxS3aM8MnhWhCKGdG3UUbw5nQIQOrV7mid31TAmex8pomuqpVfGfnlNJ23orvyWMhbOKC6Gxf+vIiYHf75ZPsW/0+eKGRRh3u/ZwSIzG+CKXxeFO4BngLbkmmVgJDQMHk9KaOfT/Z3gX3G/hpNoOVCds8/eWSFn4XVje8Db+8r0LWPycxAQyT54d9sXBtWkSKLlfKfnntghz04TTmhz6xSt7H1S/Wi2FwmgCX9l3HxU9xAIF5gORk/tQjLgpFx+dj7d5NC+aQA44s1K2YoMOQl1Yd42X6wPsdHk0wIDAQABo4HNMIHKMAsGA1UdDwQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTb7ApkqM7ADumIVA7pyN7EeEt6YTAQBgkrBgEEAYI3FQEEAwIBADB5BgNVHSAEcjBwMG4GBFUdIAAwZjBkBggrBgEFBQcCAjBYHlYAaAB0AHQAcAA6AC8ALwB3AHcAdwAuAG0AaQBjAHIAbwBzAG8AZgB0AC4AYwBvAG0ALwBwAGsAaQAvAG0AcwBjAG8AcgBwAC8AYwBwAHMALgBoAHQAbTANBgkqhkiG9w0BAQsFAAOCAgEANIbFeirCqX6EPqeXqG85j5m9RVfQ/Oklc9WyduELqndZM+IveFHPLw8pVlShCx0s20xnis/EjQvDKB2X8Ht1X6FzqO1hEAnDFR5GLPA63iMMmyNim3HlihSj258MMMOqxD9pGrpcvFA0oTlF5wBcq+9G2n7q7jqcuX/zToReRKiyxSZumZrFhcAjcQNjd/4o8uTCdx8Xzy61qJ+jJlHW4GSEw8VIFhwiilUxTX7qj+T2ovgYR13S8cqfS5GxUL0onU4EO02P6+pODDb4YWKOc2/K8889QSrq4sh399a4kQjpmQbO8E/bkgyvecxCGIXmRQwONG7AS8JAAUa6FONYFh8T6+73xQvl7jTDDZ28mejldK4pcnR/DLosq6vCDvEMRQfOC60UVVRgGzBE5KrrGxtciYb+MTFhQdqbg8YWBErIo/x69pAPFv1iOSjHGyhCKXAhhyCl3XtxhScewqPP7OdhWK8KjvhCpGr9OfBB3aNceTer/hg6XAEaYs46xUBiZzJ3hYltp701PqklhauFJdMA1RnR5ZcNm9k2lCT6tUH1nAXa1/NNwzHIbcAIoLL3zM/TKxPD5HGhMl9FioZFbWgnVH0v7c0rMqeIKLqq8psMfiv4rCs40XT4L8+HHo837L4Il2Wlp21ZqcaefmYdme6j2jHNaIDICL++IJjnzbI=</X509Certificate>
      </X509Data>
    </KeyInfo>
    <Object Id="ts-countersig">
      <X509Data>
        <X509Certificate>MIIEwzCCA6ugAwIBAgITMwAAALfuAa/68MeouwAAAAAAtzANBgkqhkiG9w0BAQUFADB3MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSEwHwYDVQQDExhNaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EwHhcNMTYwOTA3MTc1ODQ1WhcNMTgwOTA3MTc1ODQ1WjCBszELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjENMAsGA1UECxMETU9QUjEnMCUGA1UECxMebkNpcGhlciBEU0UgRVNOOkJCRUMtMzBDQS0yREJFMSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFtcCBTZXJ2aWNlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuCMjQSw3ep1mSndFRK0xgVRgm9wSl3i2llRtDdxzAWN9gQtYAE3hJP0/pV/7HHkshYPfMIRf7Pm/dxSsAN+7ATnNUk+wpe46rfe0FDNxoE6CYaiMSNjKcMXH55bGXNnwrrcsMaZrVXzSIQcmAhUQw1jdLntbdTyCAwJ2UqF/XmVtWV/U466G8JP8VGLddeaucY0YKhgYwMntSp9ElCkVDcUP01L9pgn9JmKUfD3yFt2p1iZ9VKCrlla10JQwe7aNW7xjzXxvcvlVIXeA4QSabo4dq8HUh7JoYMqh3ufr2yNgTs/rSxG6D5ITcI0PZkH4PYjO2GbGIcOFRVOf5RxVrwIDAQABo4IBCTCCAQUwHQYDVR0OBBYEFJZnqouaH5kw+n1zGHTDXjCT5OMAMB8GA1UdIwQYMBaAFCM0+NlSRnAK7UD7dvuzK7DDNbMPMFQGA1UdHwRNMEswSaBHoEWGQ2h0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01pY3Jvc29mdFRpbWVTdGFtcFBDQS5jcmwwWAYIKwYBBQUHAQEETDBKMEgGCCsGAQUFBzAChjxodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpL2NlcnRzL01pY3Jvc29mdFRpbWVTdGFtcFBDQS5jcnQwEwYDVR0lBAwwCgYIKwYBBQUHAwgwDQYJKoZIhvcNAQEFBQADggEBAG7J+Fdd7DgxG6awnA8opmQfW5DHnNDC/JPLof1sA8NqczymcnWIHmlWhqA7TUy4q02lKenO+R/vbmHna1BrC/KkczAyhOzkI2WFU3PeYubv8EjKfYPmrNvS8fCsHJXj3N6fuFwXkHmCVBjTchK93auG09ckBYx5Mt4zW0TUbbw4/QAZX64rbut6Aw/C1bpxqBb8vvMssBB9Hw2m8ApFTApaEVOE/sKemVlq0VIo0fCXqRSTLb6/QOav3S8S+N34RBNx/aKKOFzBDy6Ni45QvtRfBoNX3f4/mm4TFdNs+SeLQA+0oBs7UgdoxGSpX6vsWaH8dtlBw3NZK7SFi9bBMI4=</X509Certificate>
        <X509Certificate>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</X509Certificate>
      </X509Data>
      <CounterSignature ts-format="cms-timestamp-message" xmlns="http://schemas.microsoft.com/xmldsig/timestamp/2003">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</CounterSignature>
    </Object>
  </Signature>
</ArrayOfContentSearcher>