#
# fontconfig/fc-lang/brx.orth
#
# Copyright © 2012 Parag Nemade
#
# Permission to use, copy, modify, distribute, and sell this software and its
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation, and that the name of Keith Packard not be used in
# advertising or publicity pertaining to distribution of the software without
# specific, written prior permission.  Keith Packard makes no
# representations about the suitability of this software for any purpose.  It
# is provided "as is" without express or implied warranty.
#
# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
#
# Bodo (Devanagari script) (brx)
#
# Source: Enhanced inscript: http://pune.cdac.in/html/gist/down/inscript_d.asp
# Or
# Source: http://malayalam.kerala.gov.in/images/8/80/Qwerty_enhancedinscriptkeyboardlayout.pdf Page No. 44
#
0901-0903       # Various Signs 
0905-090c	# Independent vowels
090f-0910       # Independent vowels
0913-0914       # Independent vowels
0915-0928       # Consonants
092a-0930       # Consonants
0932-0932       # Consonants
0935-0939       # Consonants
093c-0944       # Various and Dependent vowel signs
0947-0948       # Dependent vowel signs
094b-094d       # Dependent vowel signs and virama
0950-0952       # Sign and vedic tone marks
0960-0963       # Additional vowels
0964-0965       # Punctuations
0966-096F       # Digits
0970            # Abbreviation sign

