<?xml version='1.0' encoding='utf-8'?>
<lgr xmlns="urn:ietf:params:xml:ns:lgr-1.0">
  <meta>
    <version comment="IDN Reference table for Hindi language">4.1</version>
    <date>2022-04-04</date>
    <language>hi</language> 
    <description type="text/plain">
    <![CDATA[
    # Description:
	# ============
    # This table contains all the single and  sequential code points and 
	# their variants to be used for the registration of Hindi IDNs.
	# The Hindi table also supports the hyphen character and Latin digits.
	#
    # Contact Information:
	# ====================
    # Contact Name: GoDaddy Registry IDN Support
    # Contact Email: registry-help@registry.godaddy
    # Contact Phone: +1 (480) 651-9999
    ]]>
    </description>
    <unicode-version>6.3.0</unicode-version>
  </meta>
  <data>
    <char cp="002D" tag="hyphen" not-when="hyphen-rules"/>
    <char cp="0030" tag="digit">   
       <var cp="0966" type="blocked"/>
	</char>
    <char cp="0031" tag="digit">
       <var cp="0967" type="blocked"/>
	</char>
    <char cp="0032" tag="digit">
       <var cp="0968" type="blocked"/>
	</char>
    <char cp="0033" tag="digit">
       <var cp="0969" type="blocked"/>
	</char>
    <char cp="0034" tag="digit">
       <var cp="096A" type="blocked"/>
	</char>
    <char cp="0035" tag="digit">
       <var cp="096B" type="blocked"/>
	</char>
    <char cp="0036" tag="digit">
       <var cp="096C" type="blocked"/>
	</char>
    <char cp="0037" tag="digit">
       <var cp="096D" type="blocked"/>
	</char>
    <char cp="0038" tag="digit">
       <var cp="096E" type="blocked"/>
	</char>
    <char cp="0039" tag="digit">
       <var cp="096F" type="blocked"/>
	</char>
    <char cp="0901" tag="B variant" when="b-follow-only-c-n-m-v">
      <var cp="0945 0902" type="blocked"/>
	</char>
    <char cp="0945 0902">
      <var cp="0901" type="blocked"/>
    </char>
	<char cp="0902" tag="D" when="d-follow-only-c-n-m-v"/>			
    <char cp="0903" tag="X" when="x-follow-only-c-n-m-v"/>			
    <char cp="0905" tag="V" not-when="v-cannot-be-precded-by-h"/>			
    <char cp="0906" tag="V" not-when="v-cannot-be-precded-by-h"/>			
    <char cp="0907" tag="V" not-when="v-cannot-be-precded-by-h"/>			
    <char cp="0908" tag="V" not-when="v-cannot-be-precded-by-h"/>			
    <char cp="0909" tag="V" not-when="v-cannot-be-precded-by-h"/>			
    <char cp="090A" tag="V" not-when="v-cannot-be-precded-by-h"/>			
    <char cp="090B" tag="V" not-when="v-cannot-be-precded-by-h"/>			
    <char cp="090D" tag="V" not-when="v-cannot-be-precded-by-h"/>			
    <char cp="090F" tag="V" not-when="v-cannot-be-precded-by-h"/>			
    <char cp="0910" tag="V" not-when="v-cannot-be-precded-by-h"/>			
    <char cp="0911" tag="V" not-when="v-cannot-be-precded-by-h"/>			
    <char cp="0913" tag="V" not-when="v-cannot-be-precded-by-h"/>			
    <char cp="0914" tag="V" not-when="v-cannot-be-precded-by-h"/>			
    <char cp="0915" tag="C" not-when="c-rules"/>			
    <char cp="0916" tag="C" not-when="c-rules"/>			
    <char cp="0917" tag="C" not-when="c-rules"/>			
    <char cp="0918" tag="C" not-when="c-rules"/>			
    <char cp="0919" tag="C" not-when="c-rules"/>			
    <char cp="091A" tag="C" not-when="c-rules"/>			
    <char cp="091B" tag="C" not-when="c-rules"/>			
    <char cp="091C" tag="C" not-when="c-rules"/>			
    <char cp="091D" tag="C" not-when="c-rules"/>			
    <char cp="091E" tag="C" not-when="c-rules"/>			
    <char cp="091F" tag="C" not-when="c-rules"/>			
    <char cp="0920" tag="C" not-when="c-rules"/>			
    <char cp="0921" tag="C" not-when="c-rules"/>			
    <char cp="0922" tag="C" not-when="c-rules"/>			
    <char cp="0923" tag="C" not-when="c-rules"/>			
    <char cp="0924" tag="C variant" not-when="c-rules">
      <var cp="0924 094D 0924" type="blocked"/>
	</char>
    <char cp="0924 094D 0924">
      <var cp="0924" type="blocked"/>
	</char>
    <char cp="0925" tag="C" not-when="c-rules"/>			
    <char cp="0926" tag="C" not-when="c-rules"/>			
    <char cp="0927" tag="C" not-when="c-rules"/>			
    <char cp="0928" tag="C" not-when="c-rules"/>			
    <char cp="092A" tag="C" not-when="c-rules"/>			
    <char cp="092B" tag="C" not-when="c-rules"/>			
    <char cp="092C" tag="C" not-when="c-rules"/>			
    <char cp="092D" tag="C" not-when="c-rules"/>			
    <char cp="092E" tag="C" not-when="c-rules"/>			
    <char cp="092F" tag="C" not-when="c-rules"/>			
    <char cp="0930" tag="C" not-when="c-rules"/>			
    <char cp="0932" tag="C" not-when="c-rules"/>			
    <char cp="0935" tag="C" not-when="c-rules"/>			
    <char cp="0936" tag="C" not-when="c-rules"/>			
    <char cp="0937" tag="C" not-when="c-rules"/>			
    <char cp="0938" tag="C" not-when="c-rules"/>			
    <char cp="0939" tag="C" not-when="c-rules"/>			
    <char cp="093E" tag="M" when="m-can-only-follow-c-or-n"/>			
    <char cp="093F" tag="M" when="m-can-only-follow-c-or-n"/>			
    <char cp="0940" tag="M" when="m-can-only-follow-c-or-n"/>			
    <char cp="0941" tag="M" when="m-can-only-follow-c-or-n"/>			
    <char cp="0942" tag="M" when="m-can-only-follow-c-or-n"/>			
    <char cp="0943" tag="M" when="m-can-only-follow-c-or-n"/>			
    <char cp="0945" tag="M" when="m-can-only-follow-c-or-n"/>			
    <char cp="0947" tag="M" when="m-can-only-follow-c-or-n"/>			
    <char cp="0948" tag="M" when="m-can-only-follow-c-or-n"/>			
    <char cp="0949" tag="M" when="m-can-only-follow-c-or-n"/>			
    <char cp="094B" tag="M" when="m-can-only-follow-c-or-n"/>			
    <char cp="094C" tag="M" when="m-can-only-follow-c-or-n"/>			
    <char cp="094D" tag="H" when="h-follow-only-c-or-n"/>			
    <char cp="093C" tag="N" when="nukta-succeeding-consonant"/>			
    <char cp="093D" tag="Y" not-when="y-cannot-follow-digit-or-hyphen"/>
    <char cp="0926 094D 0917">
      <var cp="0926 094D 0930" type="blocked"/>
      <var cp="0926 094D 0928" type="blocked"/>
	</char>
    <char cp="0926 094D 0930">
      <var cp="0926 094D 0917" type="blocked"/>
      <var cp="0926 094D 0928" type="blocked"/>
	</char>
    <char cp="0926 094D 0928">
      <var cp="0926 094D 0917" type="blocked"/>
      <var cp="0926 094D 0930" type="blocked"/>
	</char>
    <char cp="0926 094D 0927">
      <var cp="0926 094D 0918" type="blocked"/>
	</char>
    <char cp="0926 094D 0918">
      <var cp="0926 094D 0927" type="blocked"/>
	</char>
    <char cp="0937 094D 091F">
      <var cp="0937 094D 0920" type="blocked"/>
	</char>
    <char cp="0937 094D 0920">
      <var cp="0937 094D 091F" type="blocked"/>
	</char>
    <char cp="0936 094D 0935">
      <var cp="0936 094D 0930 094D 0935" type="blocked"/>
	</char>
    <char cp="0936 094D 0930 094D 0935">
      <var cp="0936 094D 0935" type="blocked"/>
	</char>
    <char cp="0936 094D 0928">
      <var cp="0936 094D 0930 094D 0928" type="blocked"/>
	</char>
    <char cp="0936 094D 0930 094D 0928">
      <var cp="0936 094D 0928" type="blocked"/>
	</char>
    <char cp="0936 094D 091A">
      <var cp="0936 094D 0930 094D 091A" type="blocked"/>
	</char>
    <char cp="0936 094D 0930 094D 091A">
      <var cp="0936 094D 091A" type="blocked"/>
	</char>
    <char cp="0906 0901">
      <var cp="0911 0902" type="blocked"/>
	</char>
    <char cp="090D 0902">
      <var cp="090F 0901" type="blocked"/>
	</char>
    <char cp="093E 0901">
      <var cp="0949 0902" type="blocked"/>
	</char>
    <char cp="0911 0902">
      <var cp="0906 0901" type="blocked"/>
	</char>
    <char cp="090F 0901">
      <var cp="090D 0902" type="blocked"/>
	</char>
    <char cp="0949 0902">
      <var cp="093E 0901" type="blocked"/>
	</char>
    <char cp="0966" tag="hindi-digits">
	   <var cp="0030" type="blocked"/>
	</char>
    <char cp="0967" tag="hindi-digits">
	   <var cp="0031" type="blocked"/>	
	</char>
    <char cp="0968" tag="hindi-digits">
	   <var cp="0032" type="blocked"/>
	</char>
    <char cp="0969" tag="hindi-digits">
	   <var cp="0033" type="blocked"/>
	</char>
	<char cp="096A" tag="hindi-digits">
	   <var cp="0034" type="blocked"/>
	</char>
	<char cp="096B" tag="hindi-digits">
	   <var cp="0035" type="blocked"/>
	</char>
	<char cp="096C" tag="hindi-digits">
	   <var cp="0036" type="blocked"/>
	</char>
	<char cp="096D" tag="hindi-digits">
	   <var cp="0037" type="blocked"/>
	</char>
	<char cp="096E" tag="hindi-digits">
	   <var cp="0038" type="blocked"/>
	</char>
	<char cp="096F" tag="hindi-digits">
	   <var cp="0039" type="blocked"/>
	</char>
  </data>
  <rules>
     <class name="consonant-subset-nukta">0915-0917 091C 0921 0922 092B</class>
	 <class name="vowel" from-tag="V"/>
	 <class name="consonant" from-tag="C"/>
	 <class name="digit" from-tag="digit"/>
     <class name="nukta" from-tag="N"/>
	 <class name="matra" from-tag="M"/> 
     <class name="digits">0030-0039</class>
     <class name="hindi-digits">0966-096F</class>

	 <rule name="nukta-succeeding-consonant">
		 <look-behind>
		     <class by-ref="consonant-subset-nukta"/>   
		 </look-behind>
		 <anchor/>
	 </rule>	 
	 <rule name="vowel-consonant-digit-starting-label">
	     <start/>
		 <choice>
		    <class by-ref="vowel"/>
	        <class by-ref="consonant"/>
	        <class by-ref="digit"/>
	        <class by-ref="hindi-digits"/>
		 </choice>		
	 </rule>
	<rule name="h-follow-only-c-or-n">
	   <look-behind>
	      <choice>
		     <class by-ref="consonant"/>
			 <class by-ref="nukta"/>
		  </choice>
	   </look-behind>
       <anchor/>
	</rule>	 
	<rule name="m-can-only-follow-c-or-n">
	   <look-behind>
	      <choice>
		     <class by-ref="consonant"/>
			 <class by-ref="nukta"/>
		  </choice>
	   </look-behind>
	   <anchor/>
	</rule>	
	<rule name="d-follow-only-c-n-m-v">
	   <look-behind>
	      <choice>
		     <class by-ref="consonant"/>
			 <class by-ref="nukta"/>
			 <class by-ref="matra"/>
			 <class by-ref="vowel"/>
		  </choice>
	   </look-behind>
	   <anchor/>
	</rule>
	<rule name="x-follow-only-c-n-m-v">
	   <look-behind>
	      <choice>
		     <class by-ref="consonant"/>
			 <class by-ref="nukta"/>
			 <class by-ref="matra"/>
			 <class by-ref="vowel"/>
		  </choice>
	   </look-behind>
	   <anchor/>
	</rule>
	<rule name="b-follow-only-c-n-m-v">
	   <look-behind>
	      <choice>
		     <class by-ref="consonant"/>
			 <class by-ref="nukta"/>
			 <class by-ref="matra"/>
			 <class by-ref="vowel"/>
		  </choice>
	   </look-behind>
	   <anchor/>
	</rule>
    <rule name="v-cannot-be-precded-by-h">
	   <look-behind>
	      <char cp="094D"/>
	   </look-behind>   
	   <anchor/>
	</rule>
	<rule name="y-cannot-follow-digit-or-hyphen">
	   <look-behind>
	      <choice>
		     <class by-ref="digit"/>
			 <class by-ref="hindi-digits"/>
			 <char cp="002D"/>
		  </choice>
	   </look-behind>
	   <anchor/>
	</rule>
	<rule name="c-rules">
	  <choice>
	     <rule comment="no-more-than-3-consecutive-ch">
  	        <look-behind>
	         <class by-ref="consonant"/>
		     <class by-ref="nukta" count="0:1"/>
    		 <char cp="094D"/>
			 <class by-ref="consonant"/>
			 <class by-ref="nukta" count="0:1"/>
			 <char cp="094D"/>
			 <class by-ref="consonant"/>
			 <class by-ref="nukta" count="0:1"/>
			 <char cp="094D"/>
			 <class by-ref="consonant"/>
			 <class by-ref="nukta" count="0:1"/>
			 <char cp="094D"/>
	        </look-behind>
	        <anchor/>
		</rule>
		<rule comment="0915-joined-with-halant-more-than-twice">
		   <char cp="0915"/>
		   <char cp="094D"/>
		   <char cp="0915"/>
		   <char cp="094D"/>
		   <char cp="0915"/>
		</rule>
		<rule comment="0916-joined-with-halant-more-than-twice">
		   <char cp="0916"/>
		   <char cp="094D"/>
		   <char cp="0916"/>
		   <char cp="094D"/>
		   <char cp="0916"/>
		</rule>
		<rule comment="0917-joined-with-halant-more-than-twice">
		   <char cp="0917"/>
		   <char cp="094D"/>
		   <char cp="0917"/>
		   <char cp="094D"/>
		   <char cp="0917"/>
		</rule>
		<rule comment="0918-joined-with-halant-more-than-twice">
		   <char cp="0918"/>
		   <char cp="094D"/>
		   <char cp="0918"/>
		   <char cp="094D"/>
		   <char cp="0918"/>
		</rule>
		<rule comment="0919-joined-with-halant-more-than-twice">
		   <char cp="0919"/>
		   <char cp="094D"/>
		   <char cp="0919"/>
		   <char cp="094D"/>
		   <char cp="0919"/>
		</rule>
		<rule comment="091A-joined-with-halant-more-than-twice">
		   <char cp="091A"/>
		   <char cp="094D"/>
		   <char cp="091A"/>
		   <char cp="094D"/>
		   <char cp="091A"/>
		</rule>
		<rule comment="091B-joined-with-halant-more-than-twice">
		   <char cp="091B"/>
		   <char cp="094D"/>
		   <char cp="091B"/>
		   <char cp="094D"/>
		   <char cp="091B"/>
		</rule>
		<rule comment="091C-joined-with-halant-more-than-twice">
		   <char cp="091C"/>
		   <char cp="094D"/>
		   <char cp="091C"/>
		   <char cp="094D"/>
		   <char cp="091C"/>
		</rule>		
		<rule comment="091D-joined-with-halant-more-than-twice">
		   <char cp="091D"/>
		   <char cp="094D"/>
		   <char cp="091D"/>
		   <char cp="094D"/>
		   <char cp="091D"/>
		</rule>				
		<rule comment="091E-joined-with-halant-more-than-twice">
		   <char cp="091E"/>
		   <char cp="094D"/>
		   <char cp="091E"/>
		   <char cp="094D"/>
		   <char cp="091E"/>
		</rule>				
		<rule comment="091F-joined-with-halant-more-than-twice">
		   <char cp="091F"/>
		   <char cp="094D"/>
		   <char cp="091F"/>
		   <char cp="094D"/>
		   <char cp="091F"/>
		</rule>				
		<rule comment="0920-joined-with-halant-more-than-twice">
		   <char cp="0920"/>
		   <char cp="094D"/>
		   <char cp="0920"/>
		   <char cp="094D"/>
		   <char cp="0920"/>
		</rule>			
		<rule comment="0921-joined-with-halant-more-than-twice">
		   <char cp="0921"/>
		   <char cp="094D"/>
		   <char cp="0921"/>
		   <char cp="094D"/>
		   <char cp="0921"/>
		</rule>	
		<rule comment="0922-joined-with-halant-more-than-twice">
		   <char cp="0922"/>
		   <char cp="094D"/>
		   <char cp="0922"/>
		   <char cp="094D"/>
		   <char cp="0922"/>
		</rule>	
		<rule comment="0923-joined-with-halant-more-than-twice">
		   <char cp="0923"/>
		   <char cp="094D"/>
		   <char cp="0923"/>
		   <char cp="094D"/>
		   <char cp="0923"/>
		</rule>	
		<rule comment="0924-joined-with-halant-more-than-twice">
		   <char cp="0924"/>
		   <char cp="094D"/>
		   <char cp="0924"/>
		   <char cp="094D"/>
		   <char cp="0924"/>
		</rule>	
		<rule comment="0925-joined-with-halant-more-than-twice">
		   <char cp="0925"/>
		   <char cp="094D"/>
		   <char cp="0925"/>
		   <char cp="094D"/>
		   <char cp="0925"/>
		</rule>	
		<rule comment="0926-joined-with-halant-more-than-twice">
		   <char cp="0926"/>
		   <char cp="094D"/>
		   <char cp="0926"/>
		   <char cp="094D"/>
		   <char cp="0926"/>
		</rule>	
		<rule comment="0927-joined-with-halant-more-than-twice">
		   <char cp="0927"/>
		   <char cp="094D"/>
		   <char cp="0927"/>
		   <char cp="094D"/>
		   <char cp="0927"/>
		</rule>	
		<rule comment="0928-joined-with-halant-more-than-twice">
		   <char cp="0928"/>
		   <char cp="094D"/>
		   <char cp="0928"/>
		   <char cp="094D"/>
		   <char cp="0928"/>
		</rule>			
		<rule comment="092A-joined-with-halant-more-than-twice">
		   <char cp="092A"/>
		   <char cp="094D"/>
		   <char cp="092A"/>
		   <char cp="094D"/>
		   <char cp="092A"/>
		</rule>			
		<rule comment="092B-joined-with-halant-more-than-twice">
		   <char cp="092B"/>
		   <char cp="094D"/>
		   <char cp="092B"/>
		   <char cp="094D"/>
		   <char cp="092B"/>
		</rule>			
		<rule comment="092C-joined-with-halant-more-than-twice">
		   <char cp="092C"/>
		   <char cp="094D"/>
		   <char cp="092C"/>
		   <char cp="094D"/>
		   <char cp="092C"/>
		</rule>			
		<rule comment="092D-joined-with-halant-more-than-twice">
		   <char cp="092D"/>
		   <char cp="094D"/>
		   <char cp="092D"/>
		   <char cp="094D"/>
		   <char cp="092D"/>
		</rule>			
		<rule comment="092E-joined-with-halant-more-than-twice">
		   <char cp="092E"/>
		   <char cp="094D"/>
		   <char cp="092E"/>
		   <char cp="094D"/>
		   <char cp="092E"/>
		</rule>			
		<rule comment="092F-joined-with-halant-more-than-twice">
		   <char cp="092F"/>
		   <char cp="094D"/>
		   <char cp="092F"/>
		   <char cp="094D"/>
		   <char cp="092F"/>
		</rule>			
		<rule comment="0930-joined-with-halant-more-than-twice">
		   <char cp="0930"/>
		   <char cp="094D"/>
		   <char cp="0930"/>
		   <char cp="094D"/>
		   <char cp="0930"/>
		</rule>				
		<rule comment="0932-joined-with-halant-more-than-twice">
		   <char cp="0932"/>
		   <char cp="094D"/>
		   <char cp="0932"/>
		   <char cp="094D"/>
		   <char cp="0932"/>
		</rule>		
		<rule comment="0935-joined-with-halant-more-than-twice">
		   <char cp="0935"/>
		   <char cp="094D"/>
		   <char cp="0935"/>
		   <char cp="094D"/>
		   <char cp="0935"/>
		</rule>		
		<rule comment="0936-joined-with-halant-more-than-twice">
		   <char cp="0936"/>
		   <char cp="094D"/>
		   <char cp="0936"/>
		   <char cp="094D"/>
		   <char cp="0936"/>
		</rule>		
		<rule comment="0937-joined-with-halant-more-than-twice">
		   <char cp="0937"/>
		   <char cp="094D"/>
		   <char cp="0937"/>
		   <char cp="094D"/>
		   <char cp="0937"/>
		</rule>		
		<rule comment="0938-joined-with-halant-more-than-twice">
		   <char cp="0938"/>
		   <char cp="094D"/>
		   <char cp="0938"/>
		   <char cp="094D"/>
		   <char cp="0938"/>
		</rule>		
		<rule comment="0939-joined-with-halant-more-than-twice">
		   <char cp="0939"/>
		   <char cp="094D"/>
		   <char cp="0939"/>
		   <char cp="094D"/>
		   <char cp="0939"/>
		</rule>							
	  </choice>
	</rule>
    <rule name="no-digit-mixing">
        <choice>
            <rule>
                <class by-ref="digits"/>
                <any count="0+"/>
                <class by-ref="hindi-digits"/>
            </rule>
            <rule>
                <class by-ref="hindi-digits"/>
                <any count="0+"/>
                <class by-ref="digits"/>
            </rule>
        </choice>
    </rule>
	<rule name="hyphen-rules">
      <choice>
        <rule comment="no leading hyphen">
          <look-behind>
            <start/>
          </look-behind>
          <anchor/>
        </rule>
        <rule comment="no trailing hyphen">
          <anchor/>
          <look-ahead>
            <end/>
          </look-ahead>
        </rule>
        <rule comment="no consecutive hyphens in third and fourth">
          <look-behind>
            <start/>
            <any/>
            <any/>
            <char cp="002D" comment="hyphen-minus"/>
          </look-behind>
          <anchor/>
        </rule>
		<rule comment="no consecutive hyphens">
		  <anchor/>
		  <look-ahead>
		     <char cp="002D"/>
		  </look-ahead>
		</rule>
      </choice>
	</rule>
    <action disp="invalid" match="no-digit-mixing"/>
	<action disp="invalid" not-match="vowel-consonant-digit-starting-label"/>
    <action disp="blocked" any-variant="blocked" comment="any variant label containing blocked variants is blocked"/>
    <action disp="allocatable" all-variants="allocatable" comment="variant labels with all variants allocatable are allocatable"/>
    <action disp="valid" comment="catch all (default action)"/>
  </rules>
</lgr>