<?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">5.0</version>
        <date>2023-06-27</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: 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"/>
        <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="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="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>