<?xml version="1.0" encoding="UTF-8"?>
<!--

 Author: haven200 <haven200@gmail.com>
 Copyright (C) 2013 haven200

 This library is free software; you can redistribute it and/or
 modify it under the terms of the GNU Library General Public
 License as published by the Free Software Foundation; either
 version 2 of the License, or (at your option) any later version.

 This library is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 Library General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
 MA 02110-1301, USA.

-->
<language id="powershell" _name="PowerShell" version="2.0" _section="Sources">
  <metadata>
    <property name="mimetypes">text/x-powershell;text/x-ps</property>
    <property name="globs">*.ps1;*.psm1;*.psd1</property>
    <property name="line-comment-start">#</property>
    <property name="block-comment-start">&lt;#</property>
    <property name="block-comment-end">#&gt;</property>
  </metadata>

  <styles>
    <style id="comment" _name="Comment" map-to="def:comment"/>
    <style id="multiline-comment" _name="Comment" map-to="def:doc-comment-element"/>
    <style id="string" _name="String" map-to="def:string"/>
    <style id="char" _name="Character" map-to="def:special-char"/>
    <style id="keyword" _name="Keyword" map-to="def:keyword"/>
    <style id="function-param" _name="Parameter Attribute" map-to="def:statement"/>
    <style id="operator" _name="Operator" map-to="def:keyword"/>
    <style id="symbol" _name="Symbol" map-to="def:identifier"/>
    <style id="variable" _name="Variable" map-to="def:shebang"/>
    <style id="builtin-function" _name="Builtin Function" map-to="def:builtin"/>
    <style id="user-function" _name="User Function" map-to="def:constant"/>
    <style id="builtin-parameters" _name="CmdLet Parameters" map-to="def:preprocessor"/>
    <style id="datatype" _name="Data Type" map-to="def:type"/>
    <style id="number" _name="Number" map-to="def:special-char"/>
  </styles>

  <default-regex-options case-sensitive="false"/>

  <definitions>

    <context id="line-comment" style-ref="comment" end-at-line-end="true" class="comment" class-disabled="no-spell-check">
      <start>#</start>
      <include>
        <context ref="def:in-line-comment"/>
      </include>
    </context>

    <context id="multiline-comment" style-ref="multiline-comment" class="comment" class-disabled="no-spell-check">
      <start>&lt;#</start>
      <end>#&gt;</end>
      <include>
        <context ref="def:in-comment"/>
      </include>
    </context>

    <context id="string" style-ref="string" class="string" class-disabled="no-spell-check">
      <start>"</start>
      <end>"</end>
    </context>

    <context id="char" style-ref="char" class-disabled="no-spell-check">
      <start>'</start>
      <end>'</end>
    </context>

    <context id="keywords" style-ref="keyword">
      <keyword>begin</keyword>
      <keyword>break</keyword>
      <keyword>case</keyword>
      <keyword>Continue</keyword>
      <keyword>Catch</keyword>
      <keyword>Default</keyword>
      <keyword>Do</keyword>
      <keyword>Else</keyword>
      <keyword>Elseif</keyword>
      <keyword>End</keyword>
      <keyword>Exit</keyword>
      <keyword>Filter</keyword>
      <keyword>For</keyword>
      <keyword>Foreach</keyword>
      <keyword>Function</keyword>
      <keyword>Finally</keyword>
      <keyword>If</keyword>
      <keyword>In</keyword>
      <keyword>Param</keyword>
      <keyword>Process</keyword>
      <keyword>Prompt</keyword>
      <keyword>Parameter</keyword>
      <keyword>Return</keyword>
      <keyword>Switch</keyword>
      <keyword>Then</keyword>
      <keyword>Throw</keyword>
      <keyword>Trap</keyword>
      <keyword>Try</keyword>
      <keyword>Until</keyword>
      <keyword>While</keyword>
      <keyword>Workflow</keyword>
      <keyword>Parallel</keyword>
    </context>

    <context id="Function-Param" style-ref="function-param">
        <keyword>DefaultParameterSetName</keyword>
        <keyword>ConfirmImpact</keyword>
        <keyword>SupportsShouldProcess</keyword>
        <keyword>CmdletBinding</keyword>
        <keyword>Mandatory</keyword>
        <keyword>Position</keyword>
        <keyword>ParameterSetName</keyword>
        <keyword>ValueFromPipeline</keyword>
        <keyword>ValueFromPipelineByPropertyName</keyword>
        <keyword>ValueFromPipelineByPropertyName</keyword>
        <keyword>Alias</keyword>
        <keyword>AllowNull</keyword>
        <keyword>AllowEmptyString</keyword>
        <keyword>AllowEmptyCollection</keyword>
        <keyword>ValidateCount</keyword>
        <keyword>ValidateSet</keyword>
        <keyword>ValidatePattern</keyword>
        <keyword>ValidateRange</keyword>
        <keyword>ValidateScript</keyword>
        <keyword>ValidateNotNull</keyword>
        <keyword>ValidateNotNullOrEmpty</keyword>
    </context>

    <define-regex id="operator" extended="true">
    \-
    (   b?and | b?not | b?or | b?xor | (I|C)?eq | (I|C)?ge | (I|C)?gt |
        (I|C)?le | (I|C)?lt | (I|C)?ne |
        (I|C)?(not)?contains | (I|C)?(not)?like | (I|C)?(not)?match | (I|C)?replace |
        shr | shl | (not)?in |      # add in powershell 3.0
        (not)?is | as
    )
    \b
    </define-regex>

    <context id="operator" style-ref="operator">
      <match>\%{operator}</match>
    </context>

    <define-regex id="symbol" extended="true">
      \! | \` | \\ |
      \+ | \- | \* | / | % |
      \? | : |
      = |
      \b
    </define-regex>

    <context id="symbol" style-ref="operator">
      <match>\%{symbol}</match>
    </context>

    <define-regex id="variable" extended="true">
        \$
        ([scriptglobacve]{5,7}:)?   #script:, global:, local:, private:
        [a-z0-9_]+
        \b
    </define-regex>

    <!-- FixMe $? isn't correct displayed -->
    <context id="Variable" style-ref="variable">
        <match>\%{variable}</match>
    </context>

    <context id="BuiltIn-Function" style-ref="builtin-function">
        <keyword>Add-Computer</keyword>
        <keyword>Add-Content</keyword>
        <keyword>Add-History</keyword>
        <keyword>Add-Member</keyword>
        <keyword>Add-PSSnapin</keyword>
        <keyword>Add-Type</keyword>
        <keyword>Checkpoint-Computer</keyword>
        <keyword>Clear-Content</keyword>
        <keyword>Clear-EventLog</keyword>
        <keyword>Clear-History</keyword>
        <keyword>Clear-Item</keyword>
        <keyword>Clear-ItemProperty</keyword>
        <keyword>Clear-Variable</keyword>
        <keyword>Compare-Object</keyword>
        <keyword>Complete-Transaction</keyword>
        <keyword>Connect-WSMan</keyword>
        <keyword>Convert-Path</keyword>
        <keyword>ConvertFrom-CSV</keyword>
        <keyword>ConvertFrom-SecureString</keyword>
        <keyword>ConvertFrom-StringData</keyword>
        <keyword>ConvertTo-CSV</keyword>
        <keyword>ConvertTo-Html</keyword>
        <keyword>ConvertTo-SecureString</keyword>
        <keyword>ConvertTo-XML</keyword>
        <keyword>Copy-Item</keyword>
        <keyword>Copy-ItemProperty</keyword>
        <keyword>Debug-Process</keyword>
        <keyword>Disable-ComputerRestore</keyword>
        <keyword>Disable-PSBreakpoint</keyword>
        <keyword>Disable-PSSessionConfiguration</keyword>
        <keyword>Disable-WSManCredSSP</keyword>
        <keyword>Disconnect-WSMan</keyword>
        <keyword>Enable-ComputerRestore</keyword>
        <keyword>Enable-PSBreakpoint</keyword>
        <keyword>Enable-PSRemoting</keyword>
        <keyword>Enable-PSSessionConfiguration</keyword>
        <keyword>Enable-WSManCredSSP</keyword>
        <keyword>Enter-PSSession</keyword>
        <keyword>Exit-PSSession</keyword>
        <keyword>Export-Alias</keyword>
        <keyword>Export-CSV</keyword>
        <keyword>Export-Clixml</keyword>
        <keyword>Export-Console</keyword>
        <keyword>Export-Counter</keyword>
        <keyword>Export-FormatData</keyword>
        <keyword>Export-ModuleMember</keyword>
        <keyword>Export-PSSession</keyword>
        <keyword>ForEach-Object</keyword>
        <keyword>Format-Custom</keyword>
        <keyword>Format-List</keyword>
        <keyword>Format-Table</keyword>
        <keyword>Format-Wide</keyword>
        <keyword>Get-Acl</keyword>
        <keyword>Get-Alias</keyword>
        <keyword>Get-AuthenticodeSignature</keyword>
        <keyword>Get-ChildItem</keyword>
        <keyword>Get-Command</keyword>
        <keyword>Get-ComputerRestorePoint</keyword>
        <keyword>Get-Content</keyword>
        <keyword>Get-Counter</keyword>
        <keyword>Get-Credential</keyword>
        <keyword>Get-Culture</keyword>
        <keyword>Get-Date</keyword>
        <keyword>Get-Event</keyword>
        <keyword>Get-EventLog</keyword>
        <keyword>Get-EventSubscriber</keyword>
        <keyword>Get-ExecutionPolicy</keyword>
        <keyword>Get-FormatData</keyword>
        <keyword>Get-Help</keyword>
        <keyword>Get-History</keyword>
        <keyword>Get-Host</keyword>
        <keyword>Get-HotFix</keyword>
        <keyword>Get-Item</keyword>
        <keyword>Get-ItemProperty</keyword>
        <keyword>Get-Job</keyword>
        <keyword>Get-Location</keyword>
        <keyword>Get-Member</keyword>
        <keyword>Get-Module</keyword>
        <keyword>Get-PSBreakpoint</keyword>
        <keyword>Get-PSCallStack</keyword>
        <keyword>Get-PSDrive</keyword>
        <keyword>Get-PSProvider</keyword>
        <keyword>Get-PSSession</keyword>
        <keyword>Get-PSSessionConfiguration</keyword>
        <keyword>Get-PSSnapin</keyword>
        <keyword>Get-PfxCertificate</keyword>
        <keyword>Get-Process</keyword>
        <keyword>Get-Random</keyword>
        <keyword>Get-Service</keyword>
        <keyword>Get-TraceSource</keyword>
        <keyword>Get-Transaction</keyword>
        <keyword>Get-UICulture</keyword>
        <keyword>Get-Unique</keyword>
        <keyword>Get-Variable</keyword>
        <keyword>Get-WSManCredSSP</keyword>
        <keyword>Get-WSManInstance</keyword>
        <keyword>Get-WinEvent</keyword>
        <keyword>Get-WmiObject</keyword>
        <keyword>Group-Object</keyword>
        <keyword>Get-Services</keyword>
        <keyword>Import-Alias</keyword>
        <keyword>Import-CSV</keyword>
        <keyword>Import-Clixml</keyword>
        <keyword>Import-Counter</keyword>
        <keyword>Import-LocalizedData</keyword>
        <keyword>Import-Module</keyword>
        <keyword>Import-PSSession</keyword>
        <keyword>Invoke-Command</keyword>
        <keyword>Invoke-Expression</keyword>
        <keyword>Invoke-History</keyword>
        <keyword>Invoke-Item</keyword>
        <keyword>Invoke-WSManAction</keyword>
        <keyword>Invoke-WmiMethod</keyword>
        <keyword>Join-Path</keyword>
        <keyword>Limit-EventLog</keyword>
        <keyword>Measure-Command</keyword>
        <keyword>Measure-Object</keyword>
        <keyword>Move-Item</keyword>
        <keyword>Move-ItemProperty</keyword>
        <keyword>New-Alias</keyword>
        <keyword>New-Event</keyword>
        <keyword>New-EventLog</keyword>
        <keyword>New-Item</keyword>
        <keyword>New-ItemProperty</keyword>
        <keyword>New-Module</keyword>
        <keyword>New-ModuleManifest</keyword>
        <keyword>New-Object</keyword>
        <keyword>New-PSDrive</keyword>
        <keyword>New-PSSession</keyword>
        <keyword>New-PSSessionOption</keyword>
        <keyword>New-Service</keyword>
        <keyword>New-TimeSpan</keyword>
        <keyword>New-Variable</keyword>
        <keyword>New-WSManInstance</keyword>
        <keyword>New-WSManSessionOption</keyword>
        <keyword>New-WebServiceProxy</keyword>
        <keyword>Out-Default</keyword>
        <keyword>Out-File</keyword>
        <keyword>Out-GridView</keyword>
        <keyword>Out-Host</keyword>
        <keyword>Out-Null</keyword>
        <keyword>Out-Printer</keyword>
        <keyword>Out-String</keyword>
        <keyword>Pop-Location</keyword>
        <keyword>Push-Location</keyword>
        <keyword>Read-Host</keyword>
        <keyword>Receive-Job</keyword>
        <keyword>Register-EngineEvent</keyword>
        <keyword>Register-ObjectEvent</keyword>
        <keyword>Register-PSSessionConfiguration</keyword>
        <keyword>Register-WmiEvent</keyword>
        <keyword>Remove-Computer</keyword>
        <keyword>Remove-Event</keyword>
        <keyword>Remove-EventLog</keyword>
        <keyword>Remove-Item</keyword>
        <keyword>Remove-ItemProperty</keyword>
        <keyword>Remove-Job</keyword>
        <keyword>Remove-Module</keyword>
        <keyword>Remove-PSBreakpoint</keyword>
        <keyword>Remove-PSDrive</keyword>
        <keyword>Remove-PSSession</keyword>
        <keyword>Remove-PSSnapin</keyword>
        <keyword>Remove-Variable</keyword>
        <keyword>Remove-WSManInstance</keyword>
        <keyword>Remove-WmiObject</keyword>
        <keyword>Rename-Item</keyword>
        <keyword>Rename-ItemProperty</keyword>
        <keyword>Reset-ComputerMachinePassword</keyword>
        <keyword>Resolve-Path</keyword>
        <keyword>Restart-Computer</keyword>
        <keyword>Restart-Service</keyword>
        <keyword>Restore-Computer</keyword>
        <keyword>Resume-Service</keyword>
        <keyword>Select-Object</keyword>
        <keyword>Select-String</keyword>
        <keyword>Select-XML</keyword>
        <keyword>Send-MailMessage</keyword>
        <keyword>Set-Acl</keyword>
        <keyword>Set-Alias</keyword>
        <keyword>Set-AuthenticodeSignature</keyword>
        <keyword>Set-Content</keyword>
        <keyword>Set-Date</keyword>
        <keyword>Set-ExecutionPolicy</keyword>
        <keyword>Set-Item</keyword>
        <keyword>Set-ItemProperty</keyword>
        <keyword>Set-Location</keyword>
        <keyword>Set-PSBreakpoint</keyword>
        <keyword>Set-PSDebug</keyword>
        <keyword>Set-PSSessionConfiguration</keyword>
        <keyword>Set-Service</keyword>
        <keyword>Set-StrictMode</keyword>
        <keyword>Set-TraceSource</keyword>
        <keyword>Set-Variable</keyword>
        <keyword>Set-WSManInstance</keyword>
        <keyword>Set-WSManQuickConfig</keyword>
        <keyword>Set-WmiInstance</keyword>
        <keyword>Show-EventLog</keyword>
        <keyword>Sort-Object</keyword>
        <keyword>Split-Path</keyword>
        <keyword>Start-Job</keyword>
        <keyword>Start-Process</keyword>
        <keyword>Start-Service</keyword>
        <keyword>Start-Sleep</keyword>
        <keyword>Start-Transaction</keyword>
        <keyword>Start-Transcript</keyword>
        <keyword>Stop-Computer</keyword>
        <keyword>Stop-Job</keyword>
        <keyword>Stop-Process</keyword>
        <keyword>Stop-Service</keyword>
        <keyword>Stop-Transcript</keyword>
        <keyword>Suspend-Service</keyword>
        <keyword>Tee-Object</keyword>
        <keyword>Test-ComputerSecureChannel</keyword>
        <keyword>Test-Connection</keyword>
        <keyword>Test-ModuleManifest</keyword>
        <keyword>Test-Path</keyword>
        <keyword>Test-WSMan</keyword>
        <keyword>Trace-Command</keyword>
        <keyword>Undo-Transaction</keyword>
        <keyword>Unregister-Event</keyword>
        <keyword>Unregister-PSSessionConfiguration</keyword>
        <keyword>Update-FormatData</keyword>
        <keyword>Update-List</keyword>
        <keyword>Update-TypeData</keyword>
        <keyword>Use-Transaction</keyword>
        <keyword>Wait-Event</keyword>
        <keyword>Wait-Job</keyword>
        <keyword>Wait-Process</keyword>
        <keyword>Where-Object</keyword>
        <keyword>Write-Debug</keyword>
        <keyword>Write-Error</keyword>
        <keyword>Write-EventLog</keyword>
        <keyword>Write-Host</keyword>
        <keyword>Write-Output</keyword>
        <keyword>Write-Progress</keyword>
        <keyword>Write-Verbose</keyword>
        <keyword>Write-Warning</keyword>
    </context>

    <context id="BuiltIn-Alias" style-ref="builtin-function">
        <keyword>ac</keyword>
        <keyword>asnp</keyword>
        <keyword>cat</keyword>
        <keyword>cd</keyword>
        <keyword>chdir</keyword>
        <keyword>clc</keyword>
        <keyword>clear</keyword>
        <keyword>clhy</keyword>
        <keyword>cli</keyword>
        <keyword>clp</keyword>
        <keyword>cls</keyword>
        <keyword>clv</keyword>
        <keyword>compare</keyword>
        <keyword>copy</keyword>
        <keyword>cp</keyword>
        <keyword>cpi</keyword>
        <keyword>cpp</keyword>
        <keyword>cvpa</keyword>
        <keyword>dbp</keyword>
        <keyword>del</keyword>
        <keyword>diff</keyword>
        <keyword>dir</keyword>
        <keyword>ebp</keyword>
        <keyword>echo</keyword>
        <keyword>epal</keyword>
        <keyword>epcsv</keyword>
        <keyword>epsn</keyword>
        <keyword>erase</keyword>
        <keyword>etsn</keyword>
        <keyword>exsn</keyword>
        <keyword>fc</keyword>
        <keyword>fl</keyword>
        <keyword>foreach</keyword>
        <keyword>ft</keyword>
        <keyword>fw</keyword>
        <keyword>gal</keyword>
        <keyword>gbp</keyword>
        <keyword>gc</keyword>
        <keyword>gci</keyword>
        <keyword>gcm</keyword>
        <keyword>gcs</keyword>
        <keyword>gdr</keyword>
        <keyword>ghy</keyword>
        <keyword>gi</keyword>
        <keyword>gjb</keyword>
        <keyword>gl</keyword>
        <keyword>gm</keyword>
        <keyword>gmo</keyword>
        <keyword>gp</keyword>
        <keyword>gps</keyword>
        <keyword>group</keyword>
        <keyword>gsn</keyword>
        <keyword>gsnp</keyword>
        <keyword>gsv</keyword>
        <keyword>gu</keyword>
        <keyword>gv</keyword>
        <keyword>gwmi</keyword>
        <keyword>h</keyword>
        <keyword>history</keyword>
        <keyword>icm</keyword>
        <keyword>iex</keyword>
        <keyword>ihy</keyword>
        <keyword>ii</keyword>
        <keyword>ipal</keyword>
        <keyword>ipcsv</keyword>
        <keyword>ipmo</keyword>
        <keyword>ipsn</keyword>
        <keyword>ise</keyword>
        <keyword>iwmi</keyword>
        <keyword>kill</keyword>
        <keyword>lp</keyword>
        <keyword>ls</keyword>
        <keyword>man</keyword>
        <keyword>md</keyword>
        <keyword>measure</keyword>
        <keyword>mi</keyword>
        <keyword>mount</keyword>
        <keyword>move</keyword>
        <keyword>mp</keyword>
        <keyword>mv</keyword>
        <keyword>nal</keyword>
        <keyword>ndr</keyword>
        <keyword>ni</keyword>
        <keyword>nmo</keyword>
        <keyword>nsn</keyword>
        <keyword>nv</keyword>
        <keyword>ogv</keyword>
        <keyword>oh</keyword>
        <keyword>popd</keyword>
        <keyword>ps</keyword>
        <keyword>pushd</keyword>
        <keyword>pwd</keyword>
        <keyword>r</keyword>
        <keyword>rbp</keyword>
        <keyword>rcjb</keyword>
        <keyword>rd</keyword>
        <keyword>rdr</keyword>
        <keyword>ren</keyword>
        <keyword>ri</keyword>
        <keyword>rjb</keyword>
        <keyword>rm</keyword>
        <keyword>rmdir</keyword>
        <keyword>rmo</keyword>
        <keyword>rni</keyword>
        <keyword>rnp</keyword>
        <keyword>rp</keyword>
        <keyword>rsn</keyword>
        <keyword>rsnp</keyword>
        <keyword>rv</keyword>
        <keyword>rvpa</keyword>
        <keyword>rwmi</keyword>
        <keyword>sajb</keyword>
        <keyword>sal</keyword>
        <keyword>saps</keyword>
        <keyword>sasv</keyword>
        <keyword>sbp</keyword>
        <keyword>sc</keyword>
        <keyword>select</keyword>
        <keyword>set</keyword>
        <keyword>si</keyword>
        <keyword>sl</keyword>
        <keyword>sleep</keyword>
        <keyword>sort</keyword>
        <keyword>sp</keyword>
        <keyword>spjb</keyword>
        <keyword>spps</keyword>
        <keyword>spsv</keyword>
        <keyword>start</keyword>
        <keyword>sv</keyword>
        <keyword>swmi</keyword>
        <keyword>tee</keyword>
        <keyword>type</keyword>
        <keyword>where</keyword>
        <keyword>wjb</keyword>
        <keyword>write</keyword>
    </context>

    <context id="BuiltIn-Parameters" style-ref="builtin-parameters">
        <prefix>\-</prefix>
        <!--in common use-->
        <keyword>ErrorAction</keyword>
        <keyword>ErrorVariable</keyword>
        <keyword>WarningAction</keyword>
        <keyword>WarningVariable</keyword>
        <keyword>Verbose</keyword>
        <keyword>OutVariable</keyword>
        <keyword>OutBuffer</keyword>
        <keyword>Debug</keyword>
        <keyword>PipelineVariable</keyword>
        <!--Other-->
        <keyword>ForegroundColor</keyword>
        <keyword>BackgroundColor</keyword>
        <keyword>TypeName</keyword>
        <keyword>Object</keyword>
        <keyword>ComObject</keyword>
        <keyword>NoNewline</keyword>
        <keyword>Certificate</keyword>
        <keyword>InputObject</keyword>
        <keyword>MemberType</keyword>
        <keyword>Name</keyword>
        <keyword>Value</keyword>
        <keyword>PassThru</keyword>
        <keyword>Version</keyword>
        <keyword>Seconds</keyword>
        <keyword>PassThru</keyword>
    </context>

    <context id="User-Function" style-ref="user-function">
        <match>\b[a-z0-9_-]+\-[a-z0-9_]+\b</match>
    </context>

    <context id="Number" style-ref="number">
        <match>\b(0x[0-9a-f]+[L]?|[0-9]+(\.[0-9]+)?[d]?)\b</match>
    </context>

    <context id="DataTypes" style-ref="datatype">
      <keyword>array</keyword>
      <keyword>bool</keyword>
      <keyword>byte</keyword>
      <keyword>char</keyword>
      <keyword>decimal</keyword>
      <keyword>double</keyword>
      <keyword>hashtable</keyword>
      <keyword>int</keyword>
      <keyword>int32</keyword>
      <keyword>long</keyword>
      <keyword>single</keyword>
      <keyword>string</keyword>
      <keyword>void</keyword>
      <keyword>xml</keyword>
    </context>

    <context id="powershell" class="no-spell-check">
      <include>
        <context ref="line-comment"/>
        <context ref="multiline-comment"/>
        <context ref="string"/>
        <context ref="char"/>
        <context ref="BuiltIn-Function"/>
        <context ref="BuiltIn-Alias"/>
        <context ref="keywords"/>
        <context ref="BuiltIn-Parameters"/>
        <context ref="Function-Param"/>
        <context ref="User-Function"/>
        <context ref="Variable"/>
        <context ref="DataTypes"/>
        <context ref="operator"/>
        <context ref="Number"/>
        <context ref="symbol"/>
      </include>
    </context>

  </definitions>

</language>
