# Copyright (C) 2016 and later: Unicode, Inc. and others.
# License & terms of use: http://www.unicode.org/copyright.html
#
# Copyright (C) 2001-2005, International Business Machines
# Corporation and others.  All Rights Reserved.
# This is a sample FontMap file for Linux.
# Fonts are specified by file names.

 DEVANAGARI: raghu.ttf
       THAI: angsd___.ttf
	DEFAULT: CODE2000.TTF
