summaryrefslogtreecommitdiff
path: root/macros/omega/latex/contrib/bengali-omega
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/omega/latex/contrib/bengali-omega
Initial commit
Diffstat (limited to 'macros/omega/latex/contrib/bengali-omega')
-rw-r--r--macros/omega/latex/contrib/bengali-omega/README34
-rw-r--r--macros/omega/latex/contrib/bengali-omega/doc/Manual-Bengali-omega-tex.pdfbin0 -> 152353 bytes
-rw-r--r--macros/omega/latex/contrib/bengali-omega/examples/ExampleV.tex56
-rw-r--r--macros/omega/latex/contrib/bengali-omega/examples/exampleU.tex66
-rw-r--r--macros/omega/latex/contrib/bengali-omega/examples/exampleu.pdfbin0 -> 42042 bytes
-rw-r--r--macros/omega/latex/contrib/bengali-omega/examples/examplev.pdfbin0 -> 48219 bytes
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/map/Bangla/bang.map4
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bang10.mf100
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangbase.mf49
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangconso.mf483
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangdefs.mf876
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangfala.mf133
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/banghalf.mf198
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/banghl10.mf99
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangjuk.mf802
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangkaar.mf146
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/banglig.mf183
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangmac.mf286
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangnum.mf209
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangpunc.mf248
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangsl10.mf86
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangvow.mf227
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangwd10.mf85
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/type1/bangla/bang10.pfbbin0 -> 79100 bytes
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/type1/bangla/bangsl10.pfbbin0 -> 78122 bytes
-rw-r--r--macros/omega/latex/contrib/bengali-omega/fonts/type1/bangla/bangwd10.pfbbin0 -> 74405 bytes
-rw-r--r--macros/omega/latex/contrib/bengali-omega/omega/ocp/bangla-uni01.ocpbin0 -> 15380 bytes
-rw-r--r--macros/omega/latex/contrib/bengali-omega/omega/ocp/bangla-uni01forDevanagari.ocpbin0 -> 6824 bytes
-rw-r--r--macros/omega/latex/contrib/bengali-omega/omega/ocp/bangla-uni2bang.ocpbin0 -> 35708 bytes
-rw-r--r--macros/omega/latex/contrib/bengali-omega/omega/ocp/beng-uni2cuni.ocpbin0 -> 20152 bytes
-rw-r--r--macros/omega/latex/contrib/bengali-omega/omega/ocp/beng-uni2cuni2.ocpbin0 -> 7848 bytes
-rw-r--r--macros/omega/latex/contrib/bengali-omega/omega/ocp/bengvelthuis2unicode.ocpbin0 -> 2716 bytes
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/Ubang.fd81
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/autobm.tex42
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/bangfont.tex132
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/barticle.cls732
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/barticle.sty80
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/bbk10.clo305
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/bbk11.clo303
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/bbk12.clo305
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/bbook.cls814
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/beng-uni.sty42
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/bletter.cls439
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/bletter.sty81
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/bsize10.clo312
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/bsize11.clo311
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/bsize12.clo311
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/mathbang.sty79
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/obeng.sty47
-rw-r--r--macros/omega/latex/contrib/bengali-omega/tex/latex/odev.sty111
50 files changed, 8897 insertions, 0 deletions
diff --git a/macros/omega/latex/contrib/bengali-omega/README b/macros/omega/latex/contrib/bengali-omega/README
new file mode 100644
index 0000000000..5e4009ce6c
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/README
@@ -0,0 +1,34 @@
+
+Bengali-Omega
+-------------------
+
+This is Bengali-Omega version 1.0, a Omega Typesetting system for
+Bengali language. You can use either the Velthuis transliteration scheme
+or directly Unicode Bengali Text in your Tex document. The package has
+been tested using MikTex 2.5 on a Windows XP platform. It should work
+fine with other Tex distributions. Installation instructions and how to
+usage the package are described in the short Manual which is available
+in the doc directory of the package.
+
+
+Copyright
+---------
+
+Copyright 2006 Lakshmi K. Raut, RautSoft, <rautsoft@yahoo.com>
+
+
+% This program may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.2
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.2 or later is part of all distributions of LaTeX
+% version 1999/12/01 or later.
+%
+
+
+Lakshmi K. Raut, RautSoft, <rautsoft@yahoo.com>
+
+homepage: http://www2.hawaii.edu/~lakshmi
+
+%EOF
diff --git a/macros/omega/latex/contrib/bengali-omega/doc/Manual-Bengali-omega-tex.pdf b/macros/omega/latex/contrib/bengali-omega/doc/Manual-Bengali-omega-tex.pdf
new file mode 100644
index 0000000000..4c95cd7166
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/doc/Manual-Bengali-omega-tex.pdf
Binary files differ
diff --git a/macros/omega/latex/contrib/bengali-omega/examples/ExampleV.tex b/macros/omega/latex/contrib/bengali-omega/examples/ExampleV.tex
new file mode 100644
index 0000000000..cc40d11049
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/examples/ExampleV.tex
@@ -0,0 +1,56 @@
+
+\documentclass[10pt]{barticle}
+\usepackage{obeng}
+\usepackage{beng-uni}
+\begin{document}
+
+
+\begin{center}
+{\Large \bengali galpa na.y}
+
+{\bengali - lak.smii kaanta raa{}uT}
+\end{center}
+
+{\bengali aamaar janma pa"scim banger ek graame. aamaar graamer naam
+dhane"sbar pur. anek ka.s.te aamaar graamer } High School {\bengali e aami
+paRaa"sunaa kari. du bachar aamaake tin maa{}il he~m.te skule yete h't.
+ekadin pracan.da bar.saa. maa.the pracur jal. maa.ther caaradike jale bharaa
+jamir madhya di.ye eka.taa saru raastaa di.ye skule yete ha.y. aami khub
+hanta-danta ha.ye ek mane he~m.te calechi skuler yaate naa deri ha.ye yaa.y.
+h.thaaT sa-sa-sa-sa "sabda "sune pichan phire dekhi, eka.taa kobraa saap
+taar ma.ni-bhU.san-pha.ni tule aamaake aalingan karache. praa.y ek haat dur
+theke. ek mini.t ni"sbaas bandha kare ra{}ilaam daa~mRi.ye. taarapar kono dike
+naa taaki.ye dilaam chu.t. sebaarer mata be~mce gechi. }
+
+If you are still curious, {\bengali taar par, taar par}... write to me.
+I will tell you the rest, which is very long. You may have to keep in touch with me
+for a long long time.
+
+
+
+\begin{center}
+{\Large \bengali chu.ti}
+
+{\bengali rabIndra naath .thaakur}
+
+Typeset using Bengali-omega for \TeX{} by Lakshmi K. Raut
+\end{center}
+{\bengali
+baalakadiger sarddAr pha.tik cakrabartir maathaa.y ca.t kari.yaa eka.taa bhaaboda.y ha{}il; nadiir
+dhaare eka.taa prakaan.da "saalkaa.s.ta maastule rUpaantarita ha{}ibaar pratIk.saa.y paRi.yaa chila;
+sthir ha{}ila, se.taa sakale mili.yaa gaRaa{}i.yaa la{}i.yaa yaa{}ibe.
+
+ye byaktir kaa.th, aaba"syak-kaale taahaar ye katakhaani bisma.y birakti eba.m asubidhaa bodh ha{}ibe,
+taahaa{}i upalabdhi kariyaa baalakeraa e prastaabe sampur.na anumodan karila.
+
+komar baa~mdhi.yaa sakale{}i yakhan manoyoger sahit kaarye prab.rtta ha{}ibaar upakram kariteche
+eman sama.ye pha.tiker ka.ni.s.th maakhanalaal gambhIr bhaabe sei gu~mRir upare gi.yaa basila; cheleraa
+taahaar eirUp udaar oudaasinya dekhi.yaa kichu bimar.sa ha{}i.yaa gel.
+
+}
+
+
+
+\end{document}
+
+
diff --git a/macros/omega/latex/contrib/bengali-omega/examples/exampleU.tex b/macros/omega/latex/contrib/bengali-omega/examples/exampleU.tex
new file mode 100644
index 0000000000..f100de9165
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/examples/exampleU.tex
@@ -0,0 +1,66 @@
+
+\documentclass[10pt]{barticle}
+\usepackage{obeng}
+\usepackage{beng-uni}
+\begin{document}
+
+
+
+
+
+
+\beng
+
+\begin{center}
+{\Large ছুটি}
+
+-রবীন্দ্রনাথ ঠাকুর
+
+{\tt Typeset in this format by Lakshmi K. Raut}
+
+\end{center}
+
+বালকদিগের সর্দার ফটিক
+চক্রবর্তির মাথায় চট্‌
+করিয়া একটা নূতন ভাবোদয় হইল;
+নদীর ধারে একটা প্রকান্ড
+শালকাষ্ট মাস্তুলে
+রুপান্তরিত হইবার
+প্রতীক্ষায় পড়িয়া ছিল;
+স্থির হইল, সেটা সকলে মিলিয়া
+গড়াইয়া লইয়া যাইবে।
+
+যে ব্যক্তির কাঠ,
+আবশ্যক-কালে তাহার যে
+কতখানি বিস্ময় বিরক্তি এবং
+অসুবিথা বোথ হইবে, তাহাই
+উপলব্ধি করিয়াই বালকেরা এ
+প্রস্তাবে সম্পূর্ণ
+অনুমোদন করিল।
+
+কোমোর বাঁধিয়া সকলেই যখন
+মনোযোগের সহিত কার্যে
+প্রবৃত্ত হইবার উপক্রম
+করিতেছে এমন সময়ে ফটিকের
+কনিষ্ট মাখন লাল গম্ভীরভাভে
+সেই গুঁড়ির ঊপরে গিয়া বসিল;
+ছেলেরা তাহার এইরূপ উদার
+ঔদাসীন্য দেখিয়া কিছু
+বিমর্ষ হইয়া গেল।
+
+একজন আসিয়া ভয়ে ভয়ে তাহাকে
+একটু-আধটু ঠেলিল, কিন্তু সে
+তাহাতে কিছুমাত্র বিচলিত
+হইল না; এই
+অকাল-তত্ত্বজ্ঞানী মানব
+সকলপ্রকার ক্রীড়ার অসারতা
+সম্বন্ধে নীরবে চিন্তা
+করিতে লাগিল।
+
+ফটিক আসিয়া আস্ফালন করিয়া
+কহিল, "দেখ্‌ , মার খাবি।
+এবেলা ওঠ্‌।"
+
+
+
+\end{document}
diff --git a/macros/omega/latex/contrib/bengali-omega/examples/exampleu.pdf b/macros/omega/latex/contrib/bengali-omega/examples/exampleu.pdf
new file mode 100644
index 0000000000..29d66a315e
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/examples/exampleu.pdf
Binary files differ
diff --git a/macros/omega/latex/contrib/bengali-omega/examples/examplev.pdf b/macros/omega/latex/contrib/bengali-omega/examples/examplev.pdf
new file mode 100644
index 0000000000..c61b8b5a7d
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/examples/examplev.pdf
Binary files differ
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/map/Bangla/bang.map b/macros/omega/latex/contrib/bengali-omega/fonts/map/Bangla/bang.map
new file mode 100644
index 0000000000..737826ae72
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/map/Bangla/bang.map
@@ -0,0 +1,4 @@
+bang10 < bang10.pfb
+bangwd10 <bangwd10.pfb
+bangsl10 <bangsl10.pfb
+
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bang10.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bang10.mf
new file mode 100644
index 0000000000..5e6bba0689
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bang10.mf
@@ -0,0 +1,100 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bang10.mf: METAFONT file that defines the Bengali alphabet (regular)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+def makebox(text rule) =
+ for y=0,h,matra_f*h,matra_f*h/2,-d:
+ rule((0,y)t_,(w,y)t_);
+ endfor % horizontals
+ for x=0,w:
+ rule((x,-d)t_,(x,h)t_);
+ endfor % verticals
+ for rv=1 upto floor(w/1pt):
+ for x=1pt*rv:
+ rule((x,-d)t_,(x,h)t_);
+ endfor
+ endfor% more verticals
+enddef;
+
+
+
+mode_setup;
+font_size 10pt#;
+u# = 1/3pt#;
+s# = 1/3pt#;
+em# := 20pt#; cap# := 20pt#;
+thin# := 1/3pt#; thick# := 5/6pt#;
+o# := 1/5pt#;
+define_pixels(em,cap);
+define_blacker_pixels(thin,thick);
+define_corrected_pixels(o);
+numeric stwd, stht, stdp, penth;
+numeric stem_width, stem_slope;
+numeric matra_thickness, matra_f, matra_h,matra_t, matra_slope;
+numeric dot_diam, ball_hang, ha_dip;
+numeric lindent, rindent;
+numeric xmag; xmag = 1;
+%%%%%%%%%%%%%%%%%%%%%%%%%
+%% matra_thickness should be removed at the end
+%%%%%%%%%%%%%%%%%%%%%%%%%
+stwd# = 10pt#; stht# = 8pt#; stdp# = 2pt#;
+penth# = 0.4pt; dflt_pen := savepen;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+stem_width = xmag*.55pt;
+stem_slope = 45;
+dot_diam = 1pt; % diameter of dots in "ra", "ya" etc.
+matra_thickness = .75pt;
+matra_slope = 115;
+matra_f = .75; % fraction of h where normally the top end of matras rest
+matra_t = 3/50; % thickness of matras as a fraction of matra_f
+matra_h = matra_f-.5matra_t;
+ball_hang = .7pt;
+ha_dip = .7pt; % the depth by which the end of "ha" dips below baseline
+lindent = 1.5stem_width;
+rindent = 1.5stem_width;
+numball_one = 9/50*8pt; % large balls used in numerals
+numball_two = 0.8*numball_one; % small balls used in numerals
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_quad 18u#+2s#;
+font_normal_space 9u#+3s#;
+font_normal_stretch 3u#;
+font_normal_shrink 2u#;
+numeric slantval; slantval = 0;
+
+
+
+input bangbase;
+end;
+
+%%% End of bang10.mf
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangbase.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangbase.mf
new file mode 100644
index 0000000000..b6c7d25796
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangbase.mf
@@ -0,0 +1,49 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bangbase.mf: METAFONT file that calls the base files
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+input bangmac;
+input bangdefs;
+
+input bangvow;
+input bangkaar;
+input bangconso;
+input bangfala;
+input bangnum;
+input bangpunc;
+input banghalf;
+input bangjuk;
+input banglig;
+
+%% End of the file bangbase.mf
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangconso.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangconso.mf
new file mode 100644
index 0000000000..0ce49b670b
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangconso.mf
@@ -0,0 +1,483 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bangconso.mf: METAFONT file that defines bangla consonants
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+beginchar("k", 19u#, stht#,stdp#); "The letter ka";
+ numeric wba; wba = 14/19w;
+ ka(0,0,wba,h);
+ matra(0,w);
+endchar;
+
+
+beginchar("x", 16u#, stht#,stdp#); "The letter kha";
+ numeric xstem,height,balld,phi;
+ xstem=w-rindent; height=matra_f*h; balld=.18h; phi=-90;
+ matra(xstem,w);
+ z2l = (7.5/43w,43/50height);
+ z2r = z2l + .5balld * dir(phi) + .02w * dir(phi+90);
+ z3l = (.5w,matra_f*h);
+ z3r = (.52w,.63h);
+ z4r = (26.5/43w,41/50height);
+ z4l = (30/43w,38/50height);
+ z5r = (6/43w,30/50height);
+ z6l = (13/43w,22/50height);
+ z5l = .7[z5r,z6l];
+ z6r = z5r;
+ z7 = (xstem,height);
+ fill fullcircle scaled balld shifted (z2l);
+ penstroke z2e{right}..z3e;
+ penstroke z3e..z4e{down}..{left}z5e;
+ Hookstem(z6r,z6l,z7,0,0,0);
+ penlabels(1,2,3,4,5,6,7);
+endchar;
+
+beginchar("g", 14u#, stht#,stdp#); "The letter ga";
+ numeric xstem,hh,hrise; hh = .9h; hrise = matra_f*(h-hh);
+ xstem=w-rindent;
+ stem(xstem);
+ matra(xstem,w);
+ ga_(0,hrise,xstem,hh);
+endchar;
+
+beginchar("G", 15u#, stht#,stdp#); "The letter gha";
+ numeric xstem,height; xstem = w-rindent; height = matra_f*h;
+ matra(0,w);
+% The upper left portion
+ z1l = (4/42w,matra_h*h); penpos1(11/42w,0);
+ z2l = (22/42w,37/50height);
+ z2r = (28/42w,34/50height);
+ z3 = (12.5/42w,20/50height);
+ fill z1l..{z2r-z3}z2r--z2l{z3-z2r}..z1r--cycle;
+% The portion going towards lower left
+ cwbar(z2l,z2r,z3,angle(z1r-z2r));
+% The hook and the stem
+ z4 = 7/21[z3,z2r];
+ z5 = (xstem,matra_h*h);
+ Hookstem(z4,z3,z5,0,0,angle(z2r-z2l));
+ penlabels(1,2,3,4,5);
+endchar;
+
+beginchar(130, 17u#, stht#,stdp#); "The letter unga";
+ unga(0,0,w,matra_f*h);
+endchar;
+
+beginchar("c", 13u#, stht#,stdp#); "The letter ca";
+ ca(0,0,w,h);
+ matra(0,w);
+endchar;
+
+beginchar("q",15.5u#,stht#,stdp#); "The letter cha";
+ numeric hh,hrise; hh=h;
+ hrise = matra_f*(h-hh);
+ cha(0,hrise,w,hh);
+ currenttransform := identity slanted slantval;
+ matra(0,w);
+endchar;
+
+beginchar("j", 20u#, stht#,stdp#); "The letter ja";
+ ja_full(0,0,w,h);
+ matra(0,w);
+endchar;
+
+beginchar("C", 18u#, stht#,stdp#); "The letter jha";
+ numeric wba,xstem; wba = 14/18w; xstem = wba-rindent;
+ ba(0,0,xstem,h);
+ matra(0,xstem);
+% Now the part to the right
+ z6 = (.87w,matra_f*h);
+ z7 = (xstem,.43h);
+ z8 = (x7,.35h);
+ Hookstem(z7,z8,z6,.12h,0,0);
+ matra(x6,w);
+ penlabels (1,2,3,4,5,6,7,8);
+endchar;
+
+beginchar(131, 26u#, stht#,stdp#); "The letter ina";
+ ina(0,0,w,h);
+endchar;
+
+beginchar("T", 13u#, stht#,stdp#); "The letter Ta";
+ numeric balld; balld = .19h;
+ matra(0,w);
+ Dha(0,0,w,h);
+% The Tiki
+ Tiki (.9w,.1w);
+endchar;
+
+beginchar("F", 13u#, stht#,stdp#); "The letter Tha";
+ numeric width; width = .13w;
+% The bag
+ z1 = (.61w,matra_f*h-.5matra_thickness); penpos1(width,0);
+ z2 = (.23w,.3h); penpos2(1.4width,-45);
+ z3l= (.5w,.06h); penpos3(.8width,90);
+ z4l= (.93w,.32h); penpos4(.8width,180);
+ z5 = z1; z5l = z1r; z5r = z1l;
+ penstroke z1e..{left}z2e;
+ penstroke z2e..{right}z3e;
+ penstroke z3e{right}..z4e{up}..z5e;
+% The antenna
+ numeric antwid; antwid = length(z1l-z1r);
+ z6 = (x1l,h);
+ pickup pencircle xscaled antwid yscaled 1.4antwid rotated 0;
+ draw z1{z1-z4}..{dir 45}z6;
+ picture shape_Tha; shape_Tha = currentpicture;
+% matra
+ matra(0,w);
+ penlabels(1,2,3,4,5,6);
+endchar;
+
+beginchar("D", 18u#, stht#,stdp#); "The letter Da";
+ numeric height; height = matra_f*h;
+ matra(0,w);
+ Da(0,0,w,height,.88);
+endchar;
+
+beginchar("Z", 13u#, stht#,stdp#); "The letter Dha";
+ matra(0,w);
+ Dha(0,0,w,h);
+endchar;
+
+beginchar("N", 13.5u#, stht#,stdp#); "The letter murdhanya na";
+ numeric xstem;
+ xstem = w - rindent;
+ matra (xstem,w);
+ stem(xstem);
+ Na_(0,0,xstem,h);
+endchar;
+
+beginchar("t", 19u#, stht#,stdp#); "The letter ta";
+ numeric height; height = matra_f*h;
+ ta(0,0,w,height);
+ matra(0,w);
+endchar;
+
+beginchar("Q", 15u#, stht#,stdp#); "The letter tha";
+ numeric xstem,balld,phi,height;
+ xstem=w-rindent; balld=.18h; height = matra_f*h;
+ matra(xstem,w);
+ z1l = (.5lindent,.6h); penpos1(.5balld,0);
+ z2r = (.4w,.68h);
+ z2l = (.33w,height);
+ z3r = (23.5/42w,36/50height); penpos3(3.5/42w,180);
+ z4r = (5/42w,27/50height);
+ z4l = (8.5/42w,20/50height);
+ z5 = (xstem,height);
+ fill fullcircle scaled balld shifted (z1r);
+ penstroke z1e{up}..{right}z2e..{down}z3e..tension1.2..{left}z4e;
+ Hookstem(z4r,z4l,z5,0,0,0);
+ penlabels(1,2,3,4,5);
+endchar;
+
+
+beginchar("d", 14u#, stht#,stdp#); "The letter da";
+ matra(0,w);
+ da(0,0,w,h);
+endchar;
+
+beginchar("z", 14u#, stht#,stdp#); "The letter dha";
+ numeric xstem,height,theta;
+ xstem = w - rindent; height = matra_f*h; theta = 20;
+ ba(0,0,xstem,h);
+ matra(xstem,w);
+ z8l = point 16/34 of ba_pl;
+ z8r = point 22/34 of ba_pl;
+ z9l = (10.5/39w,43/50height);
+ z9r = (7/39w,43/50height);
+ z10l = (17/39w,(matra_f-matra_t)*h); penpos10(.5dot_diam,theta);
+ fill fullcircle scaled dot_diam shifted z10l;
+ fill z10r{dir (theta+90)}..z9r..{right}z8r--z8l{left}..z9l..z10l--cycle;
+ picture shape_dha;
+ currentpicture = shape_dha;
+ penlabels(8,9,10);
+endchar;
+
+
+beginchar("n", 15.5u#, stht#,stdp#); "The letter na";
+ numeric ww,xstem,height; xstem = ww = w-rindent; height = matra_f*h;
+ na(0,0,w,height,1);
+ matra(0,w);
+endchar;
+
+beginchar("p", 17u#, stht#,stdp#); "The letter pa";
+ numeric xstem,height; xstem=w-rindent; height = matra_f*h;
+ matra(xstem,w);
+ stem(xstem);
+ pa_(0,0,xstem,h);
+endchar;
+
+beginchar("f", 18.5u#, stht#,stdp#); "The letter pha";
+ numeric xstem,wJa,balld,fracrise;
+ wJa = 28/37w; xstem = wJa-rindent; balld = .16h; fracrise=.8;
+ matra(0,w);
+% The upper left portion
+ Ja(0,0,wJa,h,fracrise);
+ z6r = (xstem+.5stem_width,fracrise*matra_h*h); penpos6(stem_width,90);
+% This part is for the ball at the end of the hook
+ z7 = (.83w,.38h);
+ fill fullcircle scaled balld shifted (z7);
+% The hook
+ z8r = z7 + .5balld * dir(0); penpos8(.2balld,0);
+ penstroke z6e{right}..{down}z8e;
+ penlabels(6,7,8);
+ picture shape_pha; shape_pha = currentpicture;
+endchar;
+
+beginchar("b", 14u#, stht#,stdp#); "The letter ba";
+ numeric xstem; xstem = w - rindent;
+ matra(0,w);
+ ba(0,0,xstem,h);
+endchar;
+
+beginchar("v", 20u#, stht#,stdp#); "The letter bha";
+ numeric balld; balld = .25h;
+ matra(0,w);
+ bha(0,0,w,matra_f*h);
+endchar;
+
+beginchar("m", 15.5u#, stht#,stdp#); "The letter ma";
+ numeric xstem,theta,balld,height;
+ xstem = w-rindent; theta = -30; balld = .25h; height = matra_f*h;
+ matra(0,w);
+% The part leading to the dot
+ z1l = (4/43w,matra_h*h); penpos1(7/43w,0);
+ z2l = (21.5/43w,31/50height);
+ z2r = (26/43w,28/50height);
+ z3l = (16/43w,21/50height); penpos3(.5balld,theta);
+ fill z1l{down}..{down}z2l{down}..z3l--z3r{dir (theta+90)}..z2r..tension1.3..z1r--cycle;
+% The dot
+ fill fullcircle scaled balld shifted z3l;
+% The part to the lower right of the dot
+ z4r = z3l;
+ z4l = z3l + .5balld * dir 90;
+ z5 = (xstem,matra_h*h);
+ Hookstem(z4l,z4r,z5,0,0,0);
+ penlabels(1,2,3,4,5);
+endchar;
+
+
+beginchar("J",15u#,stht#,stdp#); "The letter antasthya ja";
+ Ja(0,0,w,h,1);
+% The matra
+ matra(0,w);
+endchar;
+
+beginchar("r",14u#,stht#,stdp#); "The letter ra";
+ numeric xstem; xstem = w-rindent;
+ matra(0,w);
+ z6 = (.32w,.15h);
+ fill fullcircle scaled dot_diam shifted (z6);
+ ba(0,0,xstem,h);
+ penlabels (1,2,3,4,5,6);
+endchar;
+
+beginchar("l",18u#,stht#,stdp#); "The letter la";
+ numeric xstem; xstem = w - rindent;
+ la_(0,0,xstem,h);
+ stem(xstem);
+ matra(0,w);
+endchar;
+
+beginchar("H",14.5u#,stht#,stdp#); "The letter ha";
+ numeric height; height = matra_f*h;
+ Ha(0,0,w,height);
+ matra(0,w);
+endchar;
+
+beginchar("X",22u#,stht#,stdp#); "The letter khiyo";
+ khiyo(0,0,w,h);
+ matra(0,w);
+endchar;
+
+beginchar("S", 18u#, stht#,stdp#); "The letter talabya sha";
+ numeric xstem; xstem = w-rindent;
+ stem(xstem);
+ matra(xstem,w);
+ sha_(0,0,xstem,h);
+endchar;
+
+
+beginchar("P", 15u#, stht#,stdp#); "The letter murdhanya sha";
+ numeric xstem; xstem = w-rindent;
+% The upper left portion
+ z1l = (4/42w,matra_h*h); penpos1(11/42w,0);
+ z2l = (22/42w,37.5/50height);
+ z2r = (28/42w,34/50height);
+ fill z1l{down}..{z2l-z1l}z2l--z2r--z1r--cycle;
+% The portion going towards lower left
+ z3 = (12.5/42w,20/50height);
+ cwbar(z2l,z2r,z3,angle(z1r-z2r));
+% The hook
+ z4 = .33[z3,z2r];
+ z5 = (xstem,matra_h*h);
+ Hookstem(z4,z3,z5,0,0,angle(z2r-z2l));
+% The cross through the belly
+ x6 = xstem;
+ numeric fy; fy = (x6-x1r)/(x2r-x1r);
+ y6 = fy[y1r,y2r];
+ z7 = .13[z2r,z3];
+ cwbar (z7,z2r,z6,-90);
+ penlabels(1,2,3,4,5,6,7);
+ picture shape_Sha; shape_Sha = currentpicture;
+ matra(0,w);
+endchar;
+
+beginchar("s",17.5u#,stht#,stdp#); "The letter dantya-sa";
+ numeric xstem,height; xstem = w-rindent; height=matra_h*h;
+ matra(0,w);
+ stem(xstem);
+ sa_(0,0,xstem,height);
+endchar;
+
+beginchar(136, 16u#, stht#,stdp#); "The letter Da-y shunyo Ra";
+ numeric height; height = matra_f*h;
+ Da(0,0,w,height,.88);
+ matra(0,w);
+% The dot
+ z9 = (.61w,-ha_dip);
+ fill fullcircle scaled dot_diam shifted (z9);
+ penlabels(9);
+endchar;
+
+beginchar(137, 13u#, stht#,stdp#); "The letter Dha-y shunyo Ra";
+ numeric balld; balld = .19h;
+ matra(0,w);
+ z1 = (lindent-.5stem_width,matra_f*h-.5matra_thickness);
+ z2 = (lindent+.5stem_width,matra_f*h-.5matra_thickness);
+ z3 = (x1,.25h);
+ z4 = (x2,y3);
+ z5 = (.35w,.09h);
+ z6 = (.39w,.2h);
+ z8 = (.69w,.41h);
+ z7 = (max(.88w,x8+.5balld),.43h);
+ fill z1{down}..{down}z3..z5{right}..tension1.5..z7--z8{down}..z6..z4{up}--z2--cycle;
+ z9 = (x8,y8+.5balld);
+ hookcirc(z9,z7,z8,balld,30);
+% The dot at the bottom
+ z10= (x6,-ha_dip);
+ fill fullcircle scaled dot_diam shifted (z10);
+ penlabels (1,2,3,4,5,6,7,8,9,10);
+endchar;
+
+beginchar("y",14u#,stht#,stdp#); "The letter antasthya ya";
+ matra(0,w);
+ Ja(0,0,w,h,1);
+% The ball
+ z8 = (.42w,.13h);
+ fill fullcircle scaled dot_diam shifted (z8);
+ penlabels(8);
+endchar;
+
+beginchar(133,14u#,stht#,stdp#); "The letter khanda ta";
+% The dot
+ z1r = (.5w,matra_f*h); penpos1(.09h,90);
+ z2r = (.3w,.59h); penpos2(.04h,-150);
+ z3r = (.54w,.39h); penpos3(.1h,-90);
+ z4r = (.75w,.54h); penpos4(.06h,0);
+ penstroke z1e..z2e..z3e..z4e..cycle;
+% The hanging part
+ z5r = (.7lindent,.48h); penpos5(.08h,180);
+ z6l = (x1,.3h);
+ z6r= (.5w,.19h);
+ z7l = (w,0); penpos7(.1w,180);
+ z8l = (.2[x7l,x7r],-ha_dip);
+ z8r = z7r;
+ penstroke z1e..z5e..z6e..{down}z7e..z8e;
+ penlabels(1,2,3,4,5,6,7,8);
+endchar;
+
+
+beginchar("K",9u#,stht#,stdp#); "The letter anuswar";
+ numeric vdiam; vdiam = .3h;
+ x1 = .5w; y1= matra_f*h - .5vdiam;
+ golla (z1,vdiam);
+ z9l = (.07w,.41h); z9r = (.24w,.23h);
+ z10 = (.96w,-.04h);
+ hookjt(z9r,z9l,z10,.03h,.1,45);
+ penlabels(1,2,3,4,5,6,7,8,9,10);
+endchar;
+
+beginchar("h",9u#,stht#,stdp#); "The letter bisargo";
+ numeric balld; balld = .3h;
+ z1 = (.5w,.6h);
+ z2 = (x1,matra_f*h-y1);
+ golla (z1,balld);
+ golla (z2,balld);
+ penlabels(1,2,3,4,5,6,7,8,9,10);
+endchar;
+
+beginchar(132,0stwd#,stht#,stdp#); "The letter candra-bindu";
+ rt z1 = (w,h);
+ z1'= (x1+8,y1);
+ z2 = (-2rindent,matra_f*h+.5matra_thickness);
+ z3 = (-4rindent,h);
+% baTi(z1,z1',z2,z3);
+ pickup Tiki_pen; draw flex(z1,z2,z3);
+ z5 = (x2,h);
+ fill fullcircle scaled dot_diam shifted (z5);
+ penlabels(1,1',2,3,4,5);
+endchar;
+
+beginchar("B",14u#,stht#,stdp#); "The Asamiya letter ra";
+ numeric wba; wba = w - rindent;
+ z1l = (4/39wba,29/50height);
+ z3r = (8.5/39wba,23.5/50height);
+ z2l = (wba,43/50height); penpos2(5.5/50height,-90);
+ z1r = z1l + length(z2r-z2l) * dir angle(z3r-z1l);
+ path rra_pr; rra_pr = z1r{z2l-z1r}..z2r;
+ path rra_pl; rra_pl = z2l..{z1r-z2l}z1l;
+ penstroke z1e{z2l-z1r}..z2e;
+ z3l = point .2 of rra_pr;
+ fill z1l--z3l--z3r--cycle;
+ z4 = (wba,height);
+ Hookstem(z3l,z3r,z4,0,angle(z3l-z1l),2*angle(z3l-z1l));
+ pickup pencircle scaled .6length(z3l-z3r);
+ lft top z5 = point .65 of rra_pl;
+ rt z6 = (wba,.35h);
+ draw z5--z6;
+ matra(0,w);
+ penlabels (1,2,3,4,5,6);
+endchar;
+
+beginchar("w", 14u#, stht#,stdp#); "The Asamiya letter wa";
+ numeric xstem; xstem = w - rindent;
+ matra(0,w);
+ ba(0,0,xstem,h);
+ pickup pencircle xscaled 0.1pt yscaled 0.4pt;
+ z6 = (.14w,.22h);
+ z7 = (w-2rindent, 0);
+ draw z6{right}..z7;
+ penlabels(6,7);
+endchar;
+
+%%% End of bangconso.mf \ No newline at end of file
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangdefs.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangdefs.mf
new file mode 100644
index 0000000000..26a523aa56
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangdefs.mf
@@ -0,0 +1,876 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bangdefs.mf: METAFONT file that defines various shapes
+% for use in various bangla fonts
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+def E(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,balld,ypen,currenttransform; transform currenttransform;
+ currenttransform := identity shifted (xoff,yoff) slanted slantval;
+ numeric balld,ypen,height,theta;
+ balld = .3w; ypen = .9pt; height = matra_f*h; theta = 220;
+% The circle
+ z1l = (.5w,.43h); penpos1(.5balld,theta);
+ fill fullcircle scaled balld shifted (z1l);
+% The connector between the circle and the stem
+ z2r = (.7w,height); penpos2(matra_t*h,90);
+ z3 = (w-rindent,.6h); penpos3 (stem_width,0);
+ fill z1r{dir (theta-90)}..tension1.3..{right}z2r..tension1.2..{down}z3r--z3l{up}..{left}z2l..tension1.6..{dir (theta+90)}z1l--cycle;
+% The wavy line
+ x4= w-rindent-.5stem_width;
+ y4 = ypen; penpos4(.07h,90);
+ z5 = (.51w,.18h); penpos5(6/50height,90);
+ z6 = (.27w,.21h); penpos6(6/50height,90);
+ z7 = (4/48w,26/50height); penpos7(3/50height,0);
+ z8 = (6.5/48w,36/50height); penpos8(2/50height,-30);
+ penstroke z5e{left}..z6e..z7e..tension1.2..z8e;
+% The stem
+ Hookstem(z5r,z5l,z3,0,0,0);
+ penlabels(1,2,3,4,5,6,7,8);
+ endgroup
+enddef;
+
+def Estem(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,balld,currenttransform; transform currenttransform;
+ currenttransform := identity shifted (xoff,yoff) slanted slantval;
+ numeric balld,height,theta;
+ balld = .7(w-.5stem_width); height = matra_f*h; theta = 180;
+% The circle
+ z1r = (0,.6height); penpos1(.5balld,theta);
+ fill fullcircle scaled balld shifted (z1l);
+% The connector between the circle and the stem
+ x2r = .75[x1l,x3l]; y2r = height;
+ penpos2(matra_t*h,90);
+ z3 = (w,.8height); penpos3 (stem_width,0);
+ z4 = (x3,0); penpos4(stem_width,0);
+ fill z1r{dir (theta-90)}..{right}z2r..tension1.2..{down}z3r--z4r--z4l--z3l{up}..z2l..tension1.6..{dir (theta+90)}z1l--cycle;
+ penlabels(1,2,3,4);
+ endgroup
+enddef;
+
+def O(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,balld,smalld,phia,phib,currenttransform;
+ transform currenttransform;
+ currenttransform := identity shifted (xoff,yoff) slanted slantval;
+ numeric balld,phia,phib,height,rballx,rbally;
+ phia=150; phib=-45; height = matra_f*h; % smalld,balld defined later
+% The two circles
+ z1r = (21/52w,33/50height);
+ z4r = z5l = (37/52w,29/50height);
+ balld = .7 * length(z1r-z4r);
+ smalld = .9balld;
+ fill fullcircle scaled smalld shifted (z1r);
+ fill fullcircle scaled balld shifted (z4r);
+% Line between the two circles
+ z2l = (44/52w,45/50height);
+ z3l = (45/52w,36/50height);
+ z3r = (43/52w,40/50height);
+ z2r = (37/52w,46/50height);
+ z1l= z1r + .5smalld * dir (phia);
+ z4l= z4r + .5balld * dir (phib);
+ fill z1l{dir (phia-90)}..z2l..z3l..z4l--z4r..z3r..z2r..tension1.5..z1r--cycle;
+%% The line connecting to the cup
+ z5r= z5l + .5balld * dir (phib+90);
+ z6l = (45/52w,20/50height);
+ z6r = (47.5/52w,19/50height);
+ fill z5l..{down}z6l--z6r{up}..z5r--cycle;
+%% The cup
+ z7r = (35/52w,6.5/50height); penpos7(6/50height,-90);
+ z8r = (2.5/52w,45/50height);
+ z8l = (5.2/52w,43/50height);
+ z9 = (0,63/50height);
+ penstroke z6e{down}..{left}z7e..{z9-z8l}z8e;
+ penlabels(1,2,3,4,5,6,7,8,9);
+%% We now define the x and y co-ordinates for the right ball.
+%% These are not protected. They need to be used sometimes.
+ rballx = x4r; rbally = y4r;
+ endgroup
+enddef;
+
+
+def ka(expr xoff,yoff,wba,h) =
+ begingroup
+ save x,y,xstem,theta,balld,wbar,currenttransform;
+ numeric xstem,theta,balld,height;
+ xstem=wba-rindent; theta=-30; balld=.2height; height = matra_f*h;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+% The first part is equivalent to the definition of "ba"
+ ba(xoff,yoff,xstem,h);
+ z2l = (xstem,43/50height); penpos2(5.5/50height,-90);
+% This part is for the ball at the end of the hook
+ z6 = (43/32xstem,21/50height);
+ fill fullcircle scaled balld shifted (z6);
+% This part is the hook
+ z7l = z6 + .5balld * dir(theta);
+ z7r = z6 + .5balld * dir(theta+70);
+ penstroke z2e{right}..z7e;
+ penlabels(1,2,3,3',4,5,6,7,8,8',9,10);
+ endgroup
+enddef;
+
+def ga_(expr xoff, yoff, w, h) =
+ begingroup
+ numeric xstem,height;
+ xstem=w-rindent; height = matra_f*h;
+ save x,y,currenttransform;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ z1l = (11/35w,18/50height);
+ z1r = (15.5/35w,15/50height);
+ z2l = (19/35w,30/50height);
+ z2r = (24/35w,29/50height);
+ z3l = (19/35w,34/50height);
+ z3r = (21/35w,37/50height);
+ z4l = (16/35w,35.5/50height);
+ z4r = (13.5/35w,39/50height);
+ z5l = (4/35w,31/50height);
+ z5r = (8/35w,38/50height);
+ z6l = (1.5/35w,38/50height);
+ z6r = z5r;
+ z7l = (17/35w,height);
+ z7r = (18/35w,46/50height);
+ z8l = (w,35/50height); penpos8(stem_width,-90);
+ fill z1l..z2l..z3l..z4l{left}..tension1.2..{left}z5l..tension2..{up}z6l--z6r--z5r{z4l-z5l}..z4r..z3r..z2r..tension1.3..z1r--cycle;
+ fill z6l{up}..{right}z7l..tension1.5..z8l--z8r..tension1.42..z7r..z6r--cycle;
+ penlabels (1,2,3,4,5,6,7,8);
+ endgroup
+enddef;
+
+
+def unga(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,currenttransform;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+% The vertical part
+ z2 = (18.5/47w,36/50h); penpos2(stem_width,0);
+ z3l = (25.5/47w,18/50h);
+ z3r= (23/47w,23/50h);
+ z3 = .5[z3l,z3r];
+% The part going up
+ z4l = (36/47w,26/50h);
+ z4r = (34/47w,33/50h);
+ fill z2l{down}..tension0.8..{right}z3l{right}..tension1.5..z4l--z4r..tension1.8..{left}z3r..{up}z2r--cycle;
+% The lower cup
+ z5l = (40/47w,22/50h); penpos5(3/47w,-10);
+ z6l = (28/47w,10/50h);
+ z6r = (29/47w,3/50h);
+ z7l = (6/47w,42/50h);
+ z7r = (4/47w,43/50h);
+ z8 = (0,63/50h);
+ fill z4l..{down}z5l..{left}z6l{left}..{z8-z7l}z7l--z7r{z7r-z8}..{right}z6r{right}..z5r{up}..z4r--cycle;
+% The upper part with the dot
+ z9l = (31/47w,h); penpos9(stem_width,-90);
+ z10l = (38/47w,43/50h); penpos10(.6stem_width,180);
+ z11l = z2r; penpos11(stem_width,90);
+ x12l = x7l; y12r = h; penpos12(.12w,10);
+ penstroke z2e{up}..{right}z9e..z10e{down}..z11e..{z12-z3}z12e;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12);
+ endgroup
+enddef;
+
+def ca(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,height,currenttransform;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric height; height = matra_f*h;
+ z1 = (lindent,matra_h*h); penpos1(stem_width,180);
+ z2r = (x1r,41.5/50height); penpos2(stem_width,180);
+ z3r = (x1r,.24h);
+ z3l = (x2l,.26h);
+ z5r = (33/37w,29/50height);
+ z5l = (27/37w,26.5/50height);
+ z4r = (.3[x3r,x5r],4/50height);
+ z4l = (.3[x3l,x5l],9/50height);
+ z6r = (x1l,.45[y1,y2]);
+ z6l = z2r; z6 = .5[z6l,z6r];
+ penstroke z1e--z2e--z3e{down}..{right}z4e;
+ penstroke z4e{right}..{up}z5e;
+ penstroke z5e{up}..{up}z6e;
+ penlabels(1,2,3,4,5,6);
+ endgroup
+enddef;
+
+
+def cha(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,currenttransform,ww,hh,hrise;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric ww,hh,hrise,height;
+ height = matra_f*h;
+% The rounded part
+ z7r = (25/44w,39/50height);
+ z7l = (x7r,y7r-matra_t*height);
+ z8l = (35/44w,30/50height);
+ z8r = (39/44w,28/50height);
+ z9l = (16.5/44w,15/50height);
+ z9r = (x9l,11/50height);
+ z10l = (7/44w,17/50height);
+ z10r = (12/44w,10/50height);
+ penstroke z7e{right}..{down}z8e{down}..{left}z9e..z10e;
+% The part that goes down
+ z11= (w,-ha_dip);
+ hookjt(z10r,z10l,z11,.06h,.2,45);
+% The part that looks like a small "ca"
+ ww = x7l+.8rindent; hrise - y10l = y10l - y9l;
+% hrise = matra_h*(h-hh);
+ hh = h-(hrise/matra_h);
+ ca(xoff,hrise+yoff,ww,hh);
+ penlabels(7,8,9,10);
+ endgroup
+enddef;
+
+def ja_bare(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,currenttransform;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric height;
+ height = matra_f*h;
+% The upper part
+ z1 = (27/37w,matra_h*h); penpos1(10/37w,0);
+ z2l = (13/37w,35/50height);
+ z2r = (16/37w,32/50height);
+ z3l = (23.5/37w,23/50height);
+ z3r = (20/37w,28/50height);
+ z4r = (30/37w,33.5/50height);
+ z4l = (32.5/37w,28/50height);
+ penstroke z1e{z2l-z1r}..{down}z2e{down}..{right}z3e..z4e;
+% The lower cup
+ z5r = (w,y3l); penpos5(2.5/37w,0);
+ z6r = (26/37w,9/50height); penpos6(7/50height,-90);
+ z7r = (4.5/37w,43/50height);
+ z7l = (6/37w,42/50height);
+ penstroke z5e{down}..{left}z6e..{up}z7e;
+% The part joining the above two parts
+ penstroke z5e{up}..z4e;
+ penlabels(1,2,3,4,5,6,7);
+% NO HOOK FOR THIS VERSION
+% Definitions to export
+ numeric topl_ja,topr_ja,midlx_ja,midrx_ja,midly_ja,midry_ja;
+ topl_ja = x1l; topr_ja = x1;
+ z91 = .5[z4r,z5r]; penpos91(.3length(z4l-z5r), angle(z5r-z4l));
+ midlx_ja = x91r; midrx_ja = x91l;
+ midly_ja = y91r; midry_ja = y91l;
+ endgroup
+enddef;
+
+def ja_(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,currenttransform;
+ numeric wbare,height;
+ wbare = 37/53w; height = matra_f*h;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ ja_bare(xoff,yoff,wbare,h);
+ z8l = (topl_ja,matra_h*h);
+ z8r = (topr_ja,matra_h*h);
+ z9l = (w,35/50height);
+ z9r = (47/53w,40/50height);
+ z3' = (midlx_ja,midly_ja);
+ penstroke z8e{z3'-z8r}..z9e;
+ penlabels(3',8,9);
+% Definitions to export
+ numeric ja_tiplx,ja_tiply,ja_tiprx,ja_tipry;
+ ja_tiplx = x9l; ja_tiply = y9l+yoff;
+ ja_tiprx = x9r; ja_tipry = y9r;
+ endgroup
+enddef;
+
+def ja_full(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,currenttransform;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric height; height = matra_f*h;
+ ja_(xoff,yoff,w-.5rindent,h);
+ z10l = (ja_tiplx,ja_tiply);
+ z10' = (ja_tiprx,ja_tipry); z10r = .7[z10l,z10'];
+ z11l = (x10r,0);
+ z11r = (x11l-2/56w,1/50height);
+ penstroke z10e{z10r-(w,height)}..{down}z11e;
+ penlabels(10,11);
+ endgroup
+enddef;
+
+def ina(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,currenttransform,theta,wE;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric theta,wE; theta = 60; wE=18.5/26w;
+ z1 = (wE-rindent,.41h) + (xoff,yoff);
+ E(xoff,yoff,wE,h);
+ clover(z1,w-wE,.25h,.08h);
+ endgroup
+enddef;
+
+def Da(expr xoff,yoff,w,h,fracrise) =
+ begingroup
+ save x,y,xstem,currenttransform; transform currenttransform;
+ currenttransform := identity shifted (xoff,yoff) slanted slantval;
+ numeric xstem; xstem = .5w;
+% The vertical part
+ z1 = (xstem,h); penpos1(stem_width,0);
+ z2 = (x1,31/50h); penpos2(stem_width,0);
+ z3l = (27.5/49w,21.5/50h);
+ z3r= (x3l+1/49w,28/50h);
+ fill z1l..{down}z2l..{right}z3l--z3r{left}..{up}z2r--z1r--cycle;
+% The part going up
+ z4l = (42.5/49w,30/50h);
+ z4r = (40/49w,38/50h);
+ fill z3l{right}..tension1.5..z4l--z4r..tension1.8..{left}z3r--cycle;
+% The lower cup
+ z5l = (44/49w,27/50h); penpos5(3/50w,0);
+ z6l = (29.5/49w,12/50h);
+ z6r = (31/49w,5/50h);
+ z7l = (7/49w,(fracrise-.02)*h);
+ z7r = (5/49w,fracrise*h);
+ z8 = (0,(63/44)*fracrise*h);
+ fill z4l..{down}z5l..{left}z6l{left}..{z8-z7l}z7l--z7r{z7r-z8}..{right}z6r{right}..z5r{up}..z4r--cycle;
+ penlabels(1,2,3,4,5,6,7,8);
+ endgroup
+enddef;
+
+def Dha(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,balld,currenttransform;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric balld; balld = .19h;
+ z1 = (lindent,matra_f*h); penpos1(stem_width,0);
+ z2 = (lindent,.27h); penpos2(stem_width,0);
+ z3l = (.35w,.08h);
+ z3r = (.39w,.2h);
+ z4r = (.69w,.41h);
+ z4l = (max(.88w,x4r+.5balld),.47h);
+ penstroke z1e{down}..{down}z2e..tension1.2..z3e{right}..tension1.2..{up}z4e;
+ z5 = (x4l-.5balld,y4l);
+ fill fullcircle scaled (balld) shifted (z5);
+ penlabels (1,2,3,4,5);
+ endgroup
+enddef;
+
+def Na_(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,xstem,balld,currenttransform;
+ numeric xstem,balld,height;
+ xstem = w - rindent; height = matra_f*h; balld = max(9/50height,.3w);
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) xscaled(w/xstem) slanted slantval;
+ z1r = (16.5/37w,31/50height);
+% penpos1(.5balld * xstem/w,180);
+ penpos1(.5balld,180);
+ fill fullcircle scaled balld shifted (z1r);
+ z2l = z1r - (0,.75balld);
+ penpos2(.5balld,90);
+ z3l = (3.5/37w,36/50height); penpos3(6/37w,0);
+ z4l = (15.5/37w,height);
+ z4r = (17/37w,45/50height);
+ z5r = (xstem,y3); penpos5(.08h,-90);
+ penstroke z1e{down}..z2e..{up}z3e..z4e{right}..{z5r-z4l}z5e;
+ penlabels(1,2,3,4,5);
+ endgroup
+enddef;
+
+def ta(expr xoff,yoff,ww,hh) =
+ begingroup
+ save x,y,balld,currenttransform;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric balld; balld = 14/50hh;
+% The ball
+ z1l = (30/52ww,32/50hh); penpos1(.5balld,180);
+ fill fullcircle scaled balld shifted (z1l);
+% Joining the ball and the cup
+ z2r = (33.5/52ww,43/50hh);
+ z2l = z1l + .5balld * dir(45);
+% The cup at the bottom
+% z3l = (46.4/52ww,27/50hh);
+ z3r = (50/52ww,26/50hh); penpos3(max(3.7/52ww,.4pt),0);
+ z4l = (33/52ww,13.5/50hh);
+ z4r = (35/52ww,7/50hh);
+ z5l = (6/52ww,43/50hh);
+ z5r = (4/52ww,44/50hh);
+ z6 = (0,62/50hh);
+ fill z1l..z2l{right}..{down}z3l{down}..z4l{left}..tension1.2..{z6-z5l}z5l--z5r{z5r-z6}..tension1.2..{right}z4r{right}..{up}z3r{up}..{left}z2r..z1r--cycle;
+ penlabels(range 1 thru 6);
+% Definitions to export
+ numeric top_ta;
+ top_ta = y2l;
+ endgroup
+enddef;
+
+def da(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,height,currenttransform;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric height; height=matra_f*h;
+%% The vertical bar at the left
+ z1 = (lindent,height); penpos1(stem_width,0);
+ z2l = (x1l,20/50height);
+ z2r = (x1r,15/50height);
+ penstroke z1e..z2e;
+%% The diagonal line
+ y4r = .52h;
+ y4l-y4r=y2l-y2r;
+ x4r-x4l=stem_width;
+ .5[x4r,x4l] = w - rindent;
+ z3 = (x4l,height);
+ penstroke z2e{z3-z2l}..z4e;
+%% Calculation for the upper end of the diagonal line
+ x5r = x4l;
+ y5 = y2r;
+ penpos5(.6*length(z4r-z4l),0);
+ x6r = x4r; y6r = 0;
+ penpos6(.4*length(z4r-z4l),-25);
+ penstroke z4e..z5e..z6e;
+ penlabels(1,2,3,4,5,6);
+% Co-ordinates to export
+ numeric da_tiplx, da_tiply, da_tiprx, da_tipry;
+ da_tiplx = x6l; da_tiply = y6l; da_tiprx = x6r; da_tipry = y6r;
+ endgroup
+enddef;
+
+
+def na(expr xoff,yoff,w,h,frach) =
+ begingroup
+ save x,y,xstem,balld,currenttransform;
+ numeric xstem,balld; xstem=w-rindent;
+ balld = max(15/50h,1/3w);
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ z1r = (13/42w,21.5/50h); penpos1(.5balld,0);
+ z2r = z1r + .5balld * dir 45;
+ z2l = z1r + .5balld * (.4 dir 0 + 1.5 dir 90);
+ fill fullcircle scaled balld shifted (z1r);
+ fill z1l{up}..{right}z2l--z2r{left}..z1r--cycle;
+ if frach>0:
+ z3 = (xstem,frach*h);
+ Hookstem(z2l,z2r,z3,0,0,0);
+ else:
+ z3 = (w,0);
+ hookjt(z2r,z2l,z3,0.2h,1,90);
+ fi;
+ penlabels(1,2,3,4);
+ endgroup
+enddef;
+
+
+def na_(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,xstem,vdiam,ecc,currenttransform;
+ numeric xstem,balld;
+ xstem=w-rindent; balld = .25h;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ z1r = (13/32w,21.5/50h); penpos1(.5balld,0);
+ z2r = z1r + .5balld * dir 45;
+ z2l = z1r + .5balld * (.4 dir 0 + 1.5 dir 90);
+ z3l = (w,y1); penpos3(.5*length(z2l-z2r),-90);
+ fill fullcircle scaled balld shifted (z1r);
+ fill z1l{up}..{right}z2l--z2r{left}..z1r--cycle;
+ penstroke z2e{right}..tension1.2..z3e;
+ penlabels(1,2,3,4);
+ endgroup
+enddef;
+
+def pa_(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,height,full_w,currenttransform; transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric height;
+ height = matra_f*h;
+% The upper curve
+ z1l = (3/39w,35/50height);
+ z1r= (11/39w,38/50height);
+ z2l = (20/39w,matra_h*h);
+ z2r = (22/39w,43/50height);
+ z3l = (w-.5stem_width,34/50height);
+ z3r = (x3l,y3l+y2r-y2l);
+ path p; p = z3r{z2l-z3r}..z2r..z1r;
+ penstroke z1e{up}..z2e..tension1.1..z3e;
+% The lower bar
+ z4l = (10.5/39w,21/50height);
+ z4r = (17/39w,19/50height);
+ z5= p intersectionpoint (z4l--(w,matra_f*h));
+ cwbar(z4r,z4l,z5,angle(z3l-z5));
+% The connector
+ z6l= (6.5/39w,32/50height);
+ z6r = z1r;
+ z7r = (16.3/39w,34/50height);
+ z7l = (14.5/39w,33/50height);
+ z8r = .4[z4l,z5];
+ y8l = y8r;
+ x8r - x8l = length(z7r - z7l);
+ penstroke z1e{down}..{right}z6e;
+ penstroke z6e{right}..z7e..{down}z8e;
+ fill z8l..{z4l-z8r}z4l--z4r--z8r--cycle;
+ penlabels (1,2,3,4,5,6,7,8);
+ endgroup
+enddef;
+
+def ba(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,height,currenttransform;
+ numeric height; height = matra_f*h;
+ transform currenttransform;
+ currenttransform := identity shifted (xoff,yoff) slanted slantval;
+ z1l = (4/39w,29/50height);
+ z3r = (8.5/39w,23.5/50height);
+ z2l = (w,43/50height); penpos2(5.5/50height,-90);
+ z1r = z1l + length(z2r-z2l) * dir angle(z3r-z1l);
+ path ba_pr; ba_pr = z1r{z2l-z1r}..z2r;
+ path ba_pl; ba_pl = z2l..{z1r-z2l}z1l;
+ penstroke z1e{z2l-z1r}..z2e;
+ z3l = point .2 of ba_pr;
+ fill z1l--z3l--z3r--cycle;
+ z4 = (w,height);
+ Hookstem(z3l,z3r,z4,0,angle(z3l-z1l),2*angle(z3l-z1l));
+ penlabels (1,2,3,4);
+ currenttransform := identity slanted slantval;
+% definitions to export
+ numeric ba_topxl, ba_topxr, ba_topy;
+ ba_topxl = x4 - .5stem_width + xoff;
+ ba_topxr = x4 + .5stem_width + xoff;
+ ba_topy = height + yoff;
+ endgroup
+enddef;
+
+def ba_remove(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,height,currenttransform;
+ numeric height; height = matra_f*h;
+ transform currenttransform;
+ currenttransform := identity shifted (xoff,yoff) slanted slantval;
+ z1l = (4/39w,29/50height);
+ z3r = (8.5/39w,23.5/50height);
+ z2l = (w,43/50height); penpos2(5.5/50height,-90);
+ z1r = z1l + length(z2r-z2l) * dir angle(z3r-z1l);
+ path ba_pr; ba_pr = z1r{z2l-z1r}..z2r;
+ path ba_pl; ba_pl = z2l..{z1r-z2l}z1l;
+ z3l = point .2 of ba_pr;
+ z4r = (w+.5stem_width,0); penpos4(.5stem_width,-stem_slope);
+ z5 = z2 + (.5stem_width,0); penpos5(5.5/50height,-90);
+ z7 = (x5,0);
+ unfill z5l--ba_pl--z3r{z3l-z1l}..{down}z4l--z4r--cycle withweight -2;
+ endgroup
+enddef;
+
+
+def bha(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,balld,currenttransform;
+ numeric balld; balld = 12/54w;
+ transform currenttransform;
+ currenttransform := identity shifted (xoff,yoff) slanted slantval;
+% The cup at the bottom
+ z4l = (48/54w,28/50h); z4r = (51/54w,25/50h);
+ z5l = (33/54w,13/50h); z5r = (34/54w,6/50h);
+ z6l = (7/54w,43/50h); z6r = (5/54w,44/50h);
+% The ball
+ z1r = (26/54w,34/50h); penpos1(.5balld,0);
+ fill fullcircle scaled balld shifted z1r;
+% Joining the ball and the cup
+ z2l = (31/54w,24/50h); z2r = (32/54w,30/50h);
+ z3l = (45.5/54w,32.5/50h); z3r = (42/54w,39.5/50h);
+ fill z1r..z2r{right}..z3r--z3l..{left}z2l..{up}z1l--cycle;
+ fill z3r..z4r{down}..{left}z5r..tension1.4..{(0,63/50h)-z6r}z6r--z6l{z6l-(0,63/50h)}..tension1.4..z5l{right}..{up}z4l..z3l--cycle;
+ penlabels(1,2,3,4,5,6,7,8);
+ endgroup
+enddef;
+
+
+def ma_(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,xstem,theta,balld,height, currenttransform;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric xstem,theta,balld,height;
+ xstem = w-rindent; theta = -30; balld = .25h; height = matra_f*h;
+% The part leading to the dot
+ z1l = (4/43w,matra_h*h); penpos1(7/43w,0);
+ z2l = (21.5/43w,31/50height);
+ z2r = (26/43w,28/50height);
+ z3l = (16/43w,21/50height); penpos3(.5balld,theta);
+ fill z1l{down}..{down}z2l{down}..z3l--z3r{dir (theta+90)}..z2r..tension1.3..z1r--cycle;
+% The dot
+ fill fullcircle scaled balld shifted z3l;
+% The part to the lower right of the dot
+ z4r = z3l;
+ z4l = z3l + .5balld * dir 90;
+ z5 = (xstem,matra_h*h);
+ Hookstem(z4l,z4r,z5,0,0,0);
+ penlabels(1,2,3,4,5);
+ endgroup
+enddef;
+
+
+
+def Ja(expr xoff,yoff,w,h,topfrac) =
+ begingroup
+ save x,y,xstem,currenttransform;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric xstem,height; xstem = w-rindent; height = matra_f*h;
+% The upper left portion
+ z1l = (4/42w,matra_h*h); penpos1(11/42w,0);
+ z2l = (22/42w,37/50height);
+ z2r = (28/42w,34/50height);
+ fill z1l{down}..{z2l-z1l}z2l--z2r--z1r--cycle;
+ z3 = (12.5/42w,20/50height);
+% The portion going towards lower left
+ cwbar(z2l,z2r,z3,angle(z1r-z2r));
+% The hook and the stem
+ z4 = 7/21[z3,z2r];
+ z5 = (xstem,topfrac*matra_h*h);
+ Hookstem(z4,z3,z5,0,0,angle(z2r-z2l));
+ penlabels(1,2,3,4,5);
+ endgroup
+enddef;
+
+
+def la_(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,xstem,balld,xecc,currenttransform;
+ numeric xstem,balld,xecc,height;
+ height = matra_f*h;
+ xstem = w-rindent; balld = 13/50height; xecc = xstem/w;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) xscaled (1/xecc) slanted slantval;
+% The ball
+ z1 = (.41w,.33h);
+ fill fullcircle scaled balld xscaled (xecc) shifted (z1);
+% The first wavy line coming out of the ball
+ z2l = z1 + .5balld * dir (-90); penpos2(.3balld,90);
+ z3l = (5.8/50w,28/50height);
+ z3r = (9/50w,26/50height);
+ z4l = (16/50w,41.5/50height);
+ z4r = (18/50w,36/50height);
+ z5l = (26.5/50w,36/50height);
+ z5r = (29/50w,27/50height);
+ penstroke z2e..z3e{up}..{right}z4e..{z5r-z4l}z5e;
+% The second wavy line connecting to the stem
+ z6l = (33/50w,y4l-1/100height);
+ z6r= (35/50w,y4r);
+ z7l = (xstem,31/50height);
+ z7r= (xstem,26/50height);
+ penstroke z5e{up}..z6e..tension1.4..{z6r-z6l}z7e;
+ penlabels(1,2,3,4,5,6,7);
+ endgroup
+enddef;
+
+
+def sha_(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,height,currenttransform;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric height; height = matra_f*h;
+% The balls
+ z1l = (14.5/40w,40/50height);
+ z1r = (17/40w,42/50height);
+ z2 = (5.5/40w,30/50height);
+ z3 = (11.5/40w,25/50height);
+ z4 = (19/40w,y2);
+ x5 -x4 = x4 - x3; y5 = y3;
+ x6 - x4 = x4 - x2; y6=y2;
+ z7l = z1r;
+ x7r - x4 = x4 - x1l; y7r = y1l;
+ fill z1r--z1l..tension1.4..{down}z2{down}..z3{right}..z4--cycle;
+ fill z7l--z7r..tension1.4..{down}z6{down}..z5{left}..z4--cycle;
+% The antenna to the left
+ z8r = (0,matra_f*h);
+ x8l = abs(cosd(matra_slope))*matra_thickness;
+ y8r-y8l = matra_thickness;
+ penstroke z8e{right}..tension0.9..{z4-z1l}z1e;
+% The line connecting the balls with the stem
+ z9l = (27/40w,y8r);
+ z9r = (29/40w,44.5/50height);
+ z10l = (w,40/50height);
+ z10r = (w,35/50height);
+ penstroke z7e..{right}z9e{right}..tension1.5..{z10r-z9r}z10e;
+ penlabels(1,2,3,4,5,6,7,8,9,10);
+ endgroup
+enddef;
+
+
+def Sha_(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,xstem, currenttransform;
+ numeric xstem,height; xstem = w-rindent; height=matra_f*h;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) xscaled (w/xstem) slanted slantval;
+% The upper left portion
+ z1l = (4/42w,matra_h*h); penpos1(11/42w,0);
+ z2l = (22/42w,37.5/50height);
+ z2r = (28/42w,34/50height);
+ fill z1l{down}..{z2l-z1l}z2l--z2r--z1r--cycle;
+% The portion going towards lower left
+ z3 = (12.5/42w,20/50height);
+ cwbar(z2l,z2r,z3,angle(z1r-z2r));
+% The hook
+ z4 = .33[z3,z2r];
+ z5 = (xstem,.5stem_width*sind(stem_slope));
+ hookjt(z3,z4,z5,.05h,.5,90);
+% The cross through the belly
+ x6 = xstem;
+ numeric fy; fy = (x6-x1r)/(x2r-x1r);
+ y6 = fy[y1r,y2r];
+ z7 = .13[z2r,z3];
+ cwbar (z7,z2r,z6,90);
+ penlabels(1,2,3,4,5,6,7);
+ endgroup
+enddef;
+
+
+def sa_(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,currenttransform;
+ numeric xstem; xstem = w-rindent;
+ numeric midxl_sa,midyl_sa,midxr_sa,midyr_sa;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) xscaled(w/xstem) slanted slantval;
+% The wavy line
+ z5l = (5/46w,26/50h);
+ z5r = (7/46w,27/50h);
+ z6l = (14.5/46w,15/50h);
+ z6r = (12/46w,22/50h);
+ z8r= (xstem,28/50h);
+ z8l= (x8r,22.5/50h);
+ x7r = 2/3[x6r,x8r]; y7r = 38.5/50h;
+ x7l = 2/3[x6l,x8l]; y7l = 31.5/50h;
+ path pr; pr = z7r{left}..tension2..{left}z6r{left}..tension5..z5r;
+ path pl; pl = z5l..tension5..{right}z6l{right}..tension2..{right}z7l;
+ fill pl--pr--cycle;
+ penstroke z7e{right}..{z8l-z7r}z8e;
+% The upper left part
+ z1l = (3.5/46w,h); penpos1(12.5/46w,0);
+ z2 = (11/46w,43/50h);
+ z3l = ((21/46w,0)--(21/46w,h)) intersectionpoint pr;
+ z3r = ((23/46w,0)--(23/46w,h)) intersectionpoint pr;
+ fill z1l{down}..{right}z2{right}..{down}z3l--z3r{up}..tension1.2..z1r--cycle;
+% Exporting co-ordinates
+ midxl_sa = (x3l+xoff)*(w/xstem); midyl_sa = y3l+yoff;
+ midxr_sa = (x3r+xoff)*(w/xstem); midyr_sa = y3r+yoff;
+ penlabels(1,2,3,4,5,6,7,8);
+ endgroup
+enddef;
+
+def Ha(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,currenttransform;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric balld,phi; balld = 13/50h; phi=-60;
+%% The ball
+ z1r = (14.5/40w,34/50h); penpos1(.5balld,phi);
+ fill fullcircle scaled balld shifted z1r;
+%% The connector
+ z2 = (16/40w,h); penpos2(6.5/40w,0);
+ z3l = (19.5/40w,42/50h);
+ z3r = (23/40w,42/50h);
+ z4 = z1r + .5balld * dir(-90);
+ fill z4{right}..{up}z3r..z2r--z2l..{down}z3l..z1r--cycle;
+ z5 = (26/40w,37/50h);
+ z6l = (37/40w,31/50h);
+ z6r = (34/40w,32.5/50h);
+ z7l = (19/40w,13.5/50h);
+ z7r = (16.5/40w,19/50h);
+ fill z1l..{right}z3l..{down}z6l--z6r{up}..{left}z5..z1r--cycle;
+%% The swordlike line at the bottom
+ z9l = (10.5/40w,13/50h);
+ z9r = (5/40w,23/50h);
+ z10 = (46/40w,-ha_dip);
+ fill z6l{down}..{left}z7l..z9l--z9r..{right}z7r..{up}z6r--cycle;
+ hookjt(z9l,z9r,z10,.08h,.5,angle(z9r-z9l));
+ penlabels(1,2,3,4,5,6,7,9,10);
+ endgroup
+enddef;
+
+def khiyo(expr xoff,yoff,w,h) =
+ begingroup
+ save x,y,currenttransform;
+ transform currenttransform;
+ currenttransform = identity shifted (xoff,yoff) slanted slantval;
+ numeric xstem,balld,thinness,height,theta;
+ xstem=42/63w; thinness=.45; height = matra_f*h; balld=11/50height;
+ theta = -60;
+% The two balls
+ z0 = (xstem,height);
+ z1= (11/63w,34.5/50height);
+ z2= (24/63w,20/50height);
+ fill fullcircle scaled balld shifted (z1);
+ fill fullcircle scaled balld shifted (z2);
+% Points on the two circles
+ z1a = z1 + .5 * balld * dir(0);
+ z1b = thinness[z1a,z1];
+ z1c = z1 + .5balld * dir(90);
+ z2a = z2 + .5balld * dir(0);
+ z2b = thinness[z2a,z2];
+ z2c = z2 + .5balld * dir(90);
+% The line from the matra to the first dot
+ z6l = (7/63w,matra_h*h); penpos6(6.5/63w,0);
+ fill z6l..{down}z1b--z1a{up}..z6r--cycle;
+% The line between the two dots
+ fill z1c{right}..{down}z2a--z2b{up}..tension0.8..{left}z1b--cycle;
+% The stem
+ Hookstem(z2c,z2a,z0,0,0,0);
+% This part is for the ball at the end of the hook
+ z3 = (51/63w,23/50height);
+ fill fullcircle scaled balld shifted z3;
+% The hook
+ z4l = (xstem,34.5/50height); penpos4(.5balld,90);
+ z5 = (x3,y4); penpos5(.45balld,90);;
+ z7 = (24/63w,matra_h*h); penpos7(4/63w,0);
+ z3a = z3 + .5balld * dir(theta);
+ z3b = thinness[z3a,z3];
+ fill z3a{dir (theta+90)}..tension1.4..{left}z5r..z4r{left}..tension0.8..{up}z7r--z7l..{right}z4l..z5l{right}..{dir (theta-90)}z3--cycle;
+ penlabels (0,1,1a,1b,1c,2,2a,2b,2c,3,3',3a,3b,4,5,6,7);
+% definitions to export
+ numeric ballx, bally;
+ ballx = x3; bally = y3;
+ endgroup
+enddef;
+
+
+
+%%% End of bangdefs.mf
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangfala.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangfala.mf
new file mode 100644
index 0000000000..0adef6a13d
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangfala.mf
@@ -0,0 +1,133 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bangfala.mf: METAFONT file that defines various "fala"s that
+% typically go below another consonant
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+beginchar(175,0u#,stht#,stdp#); "ref";
+ z1l = (4lindent,matra_f*h+.5matra_thickness);
+ penpos1(1.4stem_width,145);
+ z2l = (6.5lindent,h);
+ penpos2(.7stem_width,70);
+ penstroke z1e--z2e;
+ penlabels(1,2);
+endchar;
+
+beginchar("R", 0, stht#,stdp#); "ra-fala";
+ numeric Ewidth; Ewidth = .06h;
+ x1 = -rindent; y1=0;
+ z3 = (-5.5rindent,.2h);
+ Ebase(z1,z3,Ewidth);
+ halfstem(x1,y3,y1-.5Ewidth);
+endchar;
+
+
+beginchar("Y", 7.3u#, stht#,stdp#); "Ja-fala";
+ matra(0,w);
+ z1 = (14/20w,matra_h*h); penpos1(4/20w,0);
+ z2l = (8/20w,matra_f*35/50h);
+ z2r = (13/20w,matra_f*38/50h);
+ z3l = (11/20w,matra_f*10/50h); penpos3(4.7/20w,0);
+ z4l = (0,0); z4r = (1.5/20w,-matra_h*2/50h);
+ pickup penrazor scaled 1.3stem_width rotated 40;
+ fill z1l..{down}z2l..{down}z3l..tension1.2..z4l--z4r..tension1.2..z3r{up}..{up}z2r..{(w,y1)-z2l}z1r--cycle;
+ penlabels(1,2,3,4);
+endchar;
+
+beginchar("W",0u#, stht#,stdp#); "Ba-fala, or Wa-fala";
+ numeric ww,hh,xstem,xshift;
+ ww=3rindent; hh=.6h; xstem=ww; xshift = ww+rindent;
+ ba(-xshift,0,ww,hh);
+endchar;
+
+beginchar(153,6u#, stht#,stdp#); "Ba-fala, or Wa-fala (with matra)";
+ numeric ww,hh,xstem,xshift;
+ ww=2.5rindent; hh=.5h; xstem=ww; xshift = ww+rindent-w;
+ ba(-xshift,-ha_dip,ww,hh);
+ matra(0,w);
+endchar;
+
+beginchar("M", 9u#, stht#, stdp#); "Ma-fala";
+ numeric xstem,balld;
+ xstem = w - rindent; balld = .5w;
+ matra(0,w);
+ z1 = (lindent,.3h);
+ x2 = x1 + .5(stem_width - balld); y2 = y1;
+ z3 = z2 + .5balld * dir(90);
+ z4 = (xstem,matra_f*h);
+ halfstem(x1,matra_f*h,y1);
+ fill fullcircle scaled balld shifted z2;
+ Hookstem(z3,z2,z4,0,0,0);
+ penlabels(1,2,3,4);
+endchar;
+
+beginchar("L", 0u#, stht#,stdp#); "la-fala";
+ numeric ww,hh; ww=5rindent; hh=.7h;
+ la_(-ww,-.15h,ww,hh);
+ halfstem(-rindent,.2h,0);
+endchar;
+
+beginchar(25, 0u#, stht#,stdp#); "murdhanya na-fala";
+ numeric ww,hh; ww=3rindent; hh=.5h;
+ Na_(-4rindent,-.15h,ww,hh);
+endchar;
+
+beginchar(26, 0u#, stht#,stdp#); "na-fala";
+ numeric ww,hh; ww = 5rindent; hh = .25h;
+ na(-ww,0,ww,hh,.7);
+endchar;
+
+beginchar(27, 5u#, stht#, stdp#); "special form for Ma-fala";
+ numeric xstem,balld,ww,lshift; lshift = 2rindent; ww = w + lshift;
+ xstem = ww - rindent; balld = .4ww;
+ z1 = (lindent,.27h);
+ x2 = x1 + .5(stem_width - balld); y2 = y1;
+ z3 = z2 + .5balld * dir(90);
+ z4 = (xstem,matra_f*h);
+ fill fullcircle scaled balld shifted z2;
+ Hookstem(z3,z2,z4,0,0,0);
+ matra(0,ww);
+ picture sp_ma_fala; sp_ma_fala = currentpicture;
+ currentpicture := currentpicture shifted (-lshift,0);
+ penlabels(1,2,3,4);
+endchar;
+
+beginchar(13,0stwd#, stht#, stdp#); "hass (consonant) sign";
+ numeric width; width = stem_width/abs(sind(stem_slope));
+ z1r = (-rindent,0); penpos1(.8width,stem_slope);
+ z2r = (+1.1rindent,-d); penpos2(.5width,-20);
+ penstroke z1e..z2e;
+ penlabels(1,2);
+endchar;
+
+%%% End of bangfala.mf \ No newline at end of file
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/banghalf.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/banghalf.mf
new file mode 100644
index 0000000000..2e32152247
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/banghalf.mf
@@ -0,0 +1,198 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% banghalf.mf: METAFONT file that defines the broken form for
+% consonants to be used in conjuncts
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+beginchar(160,12u#,stht#,stdp#); "k+";
+ numeric hh,hrise; hh=.6h;
+ hrise = matra_f*h-.75hh;
+ ka(0,hrise,w-rindent,hh);
+ matra(0,w);
+endchar;
+
+beginchar(161,8u#,stht#,stdp#); "g+";
+ numeric hh,hrise; hh = .75h; hrise = matra_f*(h-hh);
+ ga_(0,hrise,w+lindent,hh);
+endchar;
+
+beginchar(162,9u#,stht#,stdp#); "unga+";
+ numeric ww,hh,hrise; ww=w+lindent; hh=.5h;
+ hrise = (matra_f+.5matra_t)*h-hh;
+ unga(0,hrise,ww,hh);
+endchar;
+
+beginchar(163,7u#,stht#,stdp#); "c+";
+ numeric ww,hh,hrise; ww = w+lindent; hh=.65h;
+ hrise = matra_h*(h-hh);
+ matra(0,w);
+ ca(0,hrise,ww,hh);
+endchar;
+
+beginchar(164,10u#,stht#,stdp#); "j+";
+ numeric hh,hrise; hh=.7h; hrise=matra_f*(h-hh);
+ ja_(0,hrise,w+lindent,hh);
+ matra(0,w);
+endchar;
+
+beginchar(165,12u#,stht#,stdp#); "ina+";
+ numeric hE,hrise; hE=.5h; hrise = matra_f*(h-hE);
+ ina(0,hrise,w+lindent,hE);
+endchar;
+
+beginchar(166,12u#,stht#,stdp#); "T+";
+ numeric hh,hrise; hh = .9h; hrise = matra_f*(h-hh);
+ Dha(0,hrise,w,hh);
+ matra(0,w);
+ Tiki(.9w,.1w);
+endchar;
+
+beginchar(167,14u#,stht#,stdp#); "D+";
+ numeric hrise,hh; hh = .75matra_f*h; hrise = matra_f*h-hh;
+ Da(0,hrise,w,hh,.88);
+ matra(0,w);
+endchar;
+
+beginchar(168,6u#,stht#,stdp#); "N+";
+ numeric hrise,hh; hh = .7h; hrise = matra_f*(h - hh)-matra_thickness;
+ Na_(.001w,hrise,w+lindent,hh);
+endchar;
+
+beginchar(169,14u#,stht#,stdp#); "t+";
+ numeric hrise,hta; hta = .65h; hrise = matra_f*(h - hta);
+ ta(.04w,hrise,.9w,matra_f*hta);
+ matra(0,w);
+endchar;
+
+beginchar(170,8u#,stht#,stdp#); "d+";
+ numeric hh,hrise; hh = .7h; hrise = matra_f*(h-hh);
+ matra(0,w);
+ da(0,hrise,w+lindent,hh);
+endchar;
+
+beginchar(171,5u#,stht#,stdp#); "n+";
+ numeric ww,hh,hrise; ww = w+lindent; hh=.8h;
+ matra(0,w);
+ hrise = matra_f*(h-hh);
+ na_(0,1.5hrise,ww,matra_f*hh);
+endchar;
+
+beginchar(172,10u#,stht#,stdp#); "p+";
+ numeric hh,hrise; hh = .8h; hrise = matra_h*(h-hh);
+ pa_(0,hrise,w+lindent,hh);
+endchar;
+
+beginchar(173,9u#,stht#,stdp#); "b+";
+ numeric hh,hrise,ww;
+ hh = .7h; hrise = matra_f*(h-hh); ww = w - .5stem_width;
+ ba(0,hrise,ww,hh);
+ matra(0,w);
+endchar;
+
+beginchar(174,11u#,stht#,stdp#); "m+";
+ numeric balld,height;
+ balld = .35w; height = matra_f*h;
+ y1 = matra_h*h; x1r = x2l;
+ penpos1(.3balld,0);
+ z2l = (16/43w,37/50height); penpos2(.5balld,0);
+ fill z1l..{down}z2--z2r{up}..z1r--cycle;
+% The dot
+ fill fullcircle scaled balld shifted z2l;
+% The part to the right of the dot
+ pickup pencircle xscaled .5balld yscaled .25balld rotated -50;
+ top z3 = z2l + .5balld*dir 90;
+ z4 = (.75[x2l,w],30/50height);
+ rt z5 = (w+lindent,y3);
+ top z6 = (w,height);
+ draw z3{right}..{right}z4..{up}z5..z6;
+ penlabels(1,2,3,4,5,6);
+ picture shape_halfma; shape_halfma = currentpicture;
+ matra(0,w);
+endchar;
+
+beginchar(176,10u#,stht#,stdp#); "l+";
+ numeric hh,hrise; hh=.8h;
+ hrise = matra_f*h-.75hh;
+ matra(0,w);
+ la_(0,hrise,w+lindent,hh);
+endchar;
+
+beginchar(177,9u#,stht#,stdp#); "sh+";
+ numeric hh,hrise; hh = .8h; hrise = matra_f*(h-hh);
+ sha_(0,hrise,w+lindent,hh);
+endchar;
+
+beginchar(178,8u#,stht#,stdp#); "Sh+";
+ numeric balld; balld = w;
+ z1 = (w+rindent-.5balld,matra_f*h-.5balld);
+ golla(z1,balld);
+ matra(0,w);
+ pickup pencircle scaled .1w;
+ lft top z2 = z1 + .5balld * dir (135);
+ rt bot z3 = z1 + .5balld * dir (-45);
+ draw z2--z3;
+ penlabels(1,2,3);
+endchar;
+
+beginchar(179,9u#,stht#,stdp#); "s+";
+ numeric ww,hh,hrise; ww = w+lindent; hh=.55h;
+ hrise = matra_h*h-hh;
+ sa_(0,hrise,ww,hh);
+ matra(0,w);
+endchar;
+
+beginchar(154,13u#,stht#,stdp#); "small bha";
+ numeric ww,hh,hrise; ww = w; hh=.7h;
+ hrise = matra_f*(h-hh);
+ bha(0,hrise,ww,matra_f*hh);
+ matra(0,w);
+endchar;
+
+beginchar(155,14u#,stht#,stdp#); "small ma";
+ numeric hh,hrise;
+ hh=.85h; hrise = matra_f*(h-hh);
+ ma_(0,hrise,w,hh);
+ matra(0,w);
+endchar;
+
+beginchar(156,14u#,stht#,stdp#); "small sa";
+ numeric hh,hrise,xstem;
+ hh=.5h; hrise = matra_h*h-hh; xstem = w - rindent;
+ sa_(0,hrise,xstem,hh);
+ matra(0,w);
+ stem(w-rindent);
+endchar;
+
+
+%%% End of banghalf.mf
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/banghl10.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/banghl10.mf
new file mode 100644
index 0000000000..36027e810e
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/banghl10.mf
@@ -0,0 +1,99 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% banghl10.mf: METAFONT file that defines the Bengali alphabet (hollow)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% First release of this file: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+
+mode_setup;
+font_size 10pt#;
+u# = 1/3pt#;
+s# = 1/3pt#;
+em# := 20pt#; cap# := 20pt#;
+thin# := 1/3pt#; thick# := 5/6pt#;
+o# := 1/5pt#;
+define_pixels(em,cap);
+define_blacker_pixels(thin,thick);
+define_corrected_pixels(o);
+numeric stwd, stht, stdp, penth;
+numeric stem_width, stem_slope;
+numeric matra_thickness, matra_f, matra_h,matra_t, matra_slope;
+numeric dot_diam, ball_hang, ha_dip;
+numeric lindent, rindent;
+numeric xmag; xmag = 1;
+%%%%%%%%%%%%%%%%%%%%%%%%%
+%% matra_thickness should be removed at the end
+%%%%%%%%%%%%%%%%%%%%%%%%%
+stwd# = 10pt#; stht# = 8pt#; stdp# = 2pt#;
+penth# = 0.4pt; dflt_pen := savepen;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+stem_width = xmag*.55pt;
+stem_slope = 45;
+dot_diam = 1pt; % diameter of dots in "ra", "ya" etc.
+matra_thickness = .75pt;
+matra_slope = 115;
+matra_f = .75; % fraction of h where normally the top end of matras rest
+matra_t = 3/50; % thickness of matras as a fraction of matra_f
+matra_h = matra_f-.5matra_t;
+ball_hang = .7pt;
+ha_dip = .7pt; % the depth by which the end of "ha" dips below baseline
+lindent = 1.5stem_width;
+rindent = 1.5stem_width;
+numball_one = 9/50*8pt; % large balls used in numerals
+numball_two = 0.8*numball_one; % small balls used in numerals
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_quad 18u#+2s#;
+font_normal_space 9u#+3s#;
+font_normal_stretch 3u#;
+font_normal_shrink 2u#;
+numeric slantval; slantval = 0;
+currenttransform := identity slanted slantval;
+
+
+let ENDCHAR = endchar;
+
+def endchar =
+cull currentpicture keeping (1,infinity);
+picture vvv; vvv := currentpicture;
+cull currentpicture keeping (1,1) withweight 3;
+addto currentpicture also vvv - vvv shifted right - vvv shifted left
+- vvv shifted up - vvv shifted down;
+cull currentpicture keeping (1,4);
+ENDCHAR;
+enddef;
+
+
+input bangbase;
+end;
+
+%%% End of bangsl10.mf
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangjuk.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangjuk.mf
new file mode 100644
index 0000000000..8aab1918b2
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangjuk.mf
@@ -0,0 +1,802 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bangjuk.mf: METAFONT file that defines jukto byanjons
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+beginchar(22,16u#, stht#,stdp#); "d+R";
+ numeric wda; wda = 14/16w;
+ da(w-wda,0,wda,h);
+ z1 = (da_tiplx+w-wda,da_tiply);
+ z2 = (.05w,.25h);
+ Ebase(z1,z2,.06h);
+ matra(0,w);
+endchar;
+
+
+beginchar(23,18u#, stht#,stdp#); "p+R";
+ numeric xstem,wpa; wpa = 17/18w; xstem = w-rindent;
+ stem(xstem);
+ matra(xstem,w);
+ pa_(w-wpa,0,wpa-rindent,h);
+ z1 = (xstem+.5stem_width,0);
+ z2 = (.05w,.3h);
+ Ebase(z1,z2,.06h);
+endchar;
+
+
+beginchar(24,18u#, stht#,stdp#); "sh+R";
+ numeric xstem,wsha; wsha=w; xstem = w-rindent;
+ sha_(w-wsha,0,wsha-rindent,h);
+ stem(xstem);
+ matra(xstem,w);
+ z1 = (xstem+.5stem_width,0); z2 = (.05w,.3h);
+ Ebase(z1,z2,.06h);
+ z3r = (0,matra_f*h); penpos3(matra_t*h,90);
+ z4r = z3r + (w-wsha,0); penpos4(matra_t*h,matra_slope);
+ penstroke z3e--z4e;
+endchar;
+
+beginchar(180,17u#, stht#,stdp#); "k+k";
+ numeric hrise,hh,xstem;
+ xstem = .75w; hh = .75h; hrise = matra_f*(h-hh);
+ ka(0,hrise,xstem,hh);
+ ba_remove(0,0,xstem-rindent,hh);
+ ka(0,0,xstem,hh);
+ ka(0,0,xstem,hh);
+ ka(0,0,xstem,hh);
+ matra(0,w);
+endchar;
+
+beginchar(181,16u#, stht#,stdp#); "k+t";
+ numeric hka,wka,rise_ka,hta,wta,rise_ta;
+ hka = .65h; rise_ka = matra_f*(h - hka); wka = .7w;
+ hta = .65matra_f*h; wta = .9w; rise_ta = -.035h;
+ ka(.05w,rise_ka,wka,hka);
+ ta(-.04w,rise_ta,wta,hta);
+ unfill (0,0)--(0,top_ta)--(w,top_ta)--(w,0)--cycle;
+ unfill (0,0)--(0,top_ta)--(w,top_ta)--(w,0)--cycle;
+ ta(-.04w,rise_ta,wta,hta);
+ ta(-.04w,rise_ta,wta,hta);
+ matra(0,w);
+endchar;
+
+beginchar(182,14u#, stht#,stdp#); "k+t+r";
+ numeric hka,wka,hrise;
+ hka = .55h; hrise = matra_f*(h - hka); wka = .75w;
+ ka(0,hrise,wka,hka);
+ E(.04w,-.02h,.9w,.6h);
+ matra(0,w);
+endchar;
+
+beginchar(183,19u#, stht#,stdp#); "k+n";
+ numeric xstem,hh,hrise,nashift;
+ xstem = 14/19w; hh = .9h; hrise = matra_f*(h-hh);
+ z1 = (xstem-rindent+.5stem_width,0);
+ nashift = 0.2x1;
+ ka(0,hrise,xstem,hh);
+ na(nashift,0,xstem-nashift,.3h,1);
+ matra(0,w);
+endchar;
+
+beginchar(184,19u#, stht#,stdp#); "k+r";
+ numeric xstem,hh,hrise;
+ xstem = 14/19w; hh = h; hrise = matra_f*(h-hh);
+ z1 = (xstem-rindent+.5stem_width,0); z2 = (.02w,.23h);
+ ka(0,hrise,xstem,hh);
+ Ebase(z1,z2,.06h);
+ matra(0,w);
+ stem(x1-.5stem_width);
+endchar;
+
+beginchar(185,19u#, stht#,stdp#); "k+l";
+ numeric xstem,hh,hrise;
+ xstem = 14/19w; hh = .86h; hrise = matra_f*(h-hh);
+ z1 = (xstem-rindent,0);
+ ka(0,hrise,xstem,hh);
+ la_(-.03w,-.18h,x1+.5stem_width,.7h);
+ matra(0,w);
+ stem(x1);
+endchar;
+
+beginchar(186,17u#, stht#,stdp#); "k+w";
+ numeric hrise,hh,xstem;
+ xstem = 13/17w; hh = .75h; hrise = matra_f*(h-hh);
+ ka(0,hrise,xstem,hh);
+ ba_remove(0,0,xstem-rindent,hh);
+ ba(0,0,xstem-rindent,hh);
+ ba(0,0,xstem-rindent,hh);
+ ba(0,0,xstem-rindent,hh);
+ matra(0,w);
+endchar;
+
+beginchar(187,18u#, stht#,stdp#); "k+s";
+ numeric xstem;
+ xstem = w-rindent;
+ matra(0,w);
+ stem(xstem);
+% The wavy line
+ sa_(0,-.15h,xstem,.75matra_f*h);
+ z11l = (midxl_sa,midyl_sa);
+ z11r = (midxr_sa,midyr_sa);
+ unfill z11l--z11r--(x11r,(matra_f-matra_t)*h)--(0,(matra_f-matra_t)*h)--(0,y11l)--cycle;
+ numeric ww,hh,hrise;
+ ww=x11l+rindent; hh=h-y11r; hrise = matra_f*(h-hh);
+ ka(0,hrise,ww,hh);
+ ka(0,hrise,ww,hh);
+ penlabels(11);
+endchar;
+
+beginchar(189,27u#,stht#,stdp#); "khiyo + m";
+ numeric ww,th; ww = 22/27w; th = 60;
+ khiyo(0,0,ww,h);
+ matra(0,w);
+ z11l = (ballx,bally); penpos11(.5balld,th);
+ z12 = (w-rindent,matra_h*h);
+ Hookstem(z11r,z11l,z12,0,th-70,th-90);
+ penlabels(11,12);
+endchar;
+
+
+beginchar(190,13u#,stht#,stdp#); "g + g";
+ numeric xstem,ww,hh,hrise;
+ xstem = ww = w-rindent; hh = .67h; hrise = matra_h*(h-hh);
+ matra(xstem,w);
+ stem(xstem);
+ ga_(0,hrise,ww,hh);
+ ga_(0,-.1h,ww,hh);
+endchar;
+
+beginchar(192,14u#,stht#,stdp#); "ch + r";
+ numeric hh,hrise; hh=.8h;
+ hrise = matra_f*(h-hh);
+ cha(0,hrise,w,hh);
+ matra(0,w);
+ z1 = (w-rindent,0); z2 = (0,.2h);
+ Ebase(z1,z2,.06h);
+ halfstem(x1,0,.18h);
+endchar;
+
+beginchar(193,13u#,stht#,stdp#); "ch + W";
+ numeric hh,hrise,hb,wb,shxb;
+ hh=.7h; hrise = matra_f*(h-hh);
+ hb = .4h; wb = .5w; shxb = .15w;
+ cha(0,hrise,w,hh);
+ matra(0,w);
+ ba(shxb,0,wb,hb);
+endchar;
+
+beginchar(194,24u#, stht#,stdp#); "j+j";
+ numeric hrise,hha,hhb,ww,width,xshift,yshift;
+ ww = .7w; hha = .7h; hrise = matra_h*(h-hha); width = .18ww;
+ xshift = .25w; hhb = .75h; yshift = matra_f*(h-hhb);
+ matra(0,w);
+ ja_bare(0,hrise,7/8*37/56ww,hha);
+ z1'l = (topl_ja,matra_h*h);
+ z1'r = (topr_ja,matra_h*h);
+ ja_full(xshift,0,ww,hhb);
+ z2'l = (topl_ja+xshift,matra_h*hhb);
+ z2'r = (topr_ja+xshift,matra_h*hhb);
+ penstroke z1'e..tension1.2..{right}z2'e;
+ penlabels(1',2');
+endchar;
+
+beginchar(195,24u#, stht#,stdp#); "j+j+W";
+ numeric hrise,hha,hhb,ww,width,xshift,yshift;
+ ww = .7w; hha = .6h; hrise = matra_f*(h-hha-.5matra_thickness);
+ width = .18ww;
+ xshift = .25w; hhb = .8h; yshift = matra_f*(h-hhb);
+ matra(0,w);
+ ja_bare(0,hrise,7/8*37/56ww,hha);
+ ja_(xshift,yshift,.9ww,3/4hhb);
+ z21r = (ja_tiplx+xshift,ja_tiply);
+ z21l = (ja_tiprx+xshift,ja_tipry+yshift);
+ ba(.5w,0,.3w,.45h);
+ z14l = (ba_topxl,ba_topy);
+ z14r = (ba_topxr,ba_topy);
+ penstroke z21e..{down}z14e;
+ z11r = (.5ww,matra_f*h-.5matra_thickness); penpos11(.5width,0);
+ z12 = z11 + (xshift,-yshift); penpos12(width,0);
+ z13 = .5[z11,z12] + (0,-.04h); penpos13(.8width,0);
+ penstroke z11e..z13e..z12e;
+ penlabels(11,12,13,14,21);
+endchar;
+
+beginchar(196,20u#, stht#,stdp#); "j+ina";
+ numeric ww; ww = 37/56w;
+ ja_bare(0,0,ww,h);
+ matra(0,w);
+ z11l = (topl_ja,matra_h*h);
+ z11r = (topr_ja,matra_h*h);
+ z12r = (midlx_ja,midly_ja);
+ z12l = (midrx_ja,midry_ja); z12 = .5[z12l,z12r];
+ penstroke z11e..z12e;
+ clover(z12,w-ww,.23h,.08h);
+ penlabels(11,12,13);
+endchar;
+
+beginchar(197,18u#, stht#,stdp#); "j+r";
+ numeric width,hrise,hh,ww;
+ hh = .84h; hrise = matra_f*(h-hh); width = .18w;
+ ja_bare(0,hrise,37/56w,hh);
+ matra(0,w);
+ z7r = (.5w,matra_f*h-.5matra_thickness); penpos7(.5width,0);
+ z8 = (.68w,.54hh+hrise); penpos8(.5width,90);
+ z9 = (.84w,.54hh+hrise); penpos9(.7width,80);
+ penstroke z7e..z8e..z9e;
+ z10= (.79w,.18h); penpos10(.5length(z9l-z9r),-45);
+ z11= (.84w,0);penpos11(.5length(z9l-z9r),-30);
+ x12r = .96w; y12r = y9l;
+ z12l = z9r;
+ penstroke z12e..z10e{down}..z11e;
+ z13 = (.03w,.22h);
+ Ebase(z11,z13,.07h);
+ penlabels(7,8,9,10,11,12,13);
+endchar;
+
+beginchar(198,18u#, stht#,stdp#); "j+W";
+ numeric width,hrise,hj,hb,wb,ofxb;
+ hj = .8h; hrise = matra_f*(h-hj); width = .18w;
+ hb = .5h; wb = .4w; ofxb = x10-wb;
+ ja_bare(0,hrise,37/56w,hj);
+ matra(0,w);
+ z7r = (.5w,matra_f*h-.5matra_thickness); penpos7(.5width,0);
+ z8 = (.68w,.54hj+hrise); penpos8(.5width,90);
+ z9 = (.84w,.54hj+hrise); penpos9(.7width,80);
+ penstroke z7e..z8e..z9e;
+ z10= (w-1.3rindent,matra_f*hb); penpos10(stem_width,0);
+ x11r = .96w; y11r = y9l;
+ z11l = z9r;
+ penstroke z11e..z10e{down};
+ ba(x10-wb,0,wb,hb);
+ penlabels(7,8,9,10,11);
+endchar;
+
+beginchar(199,17u#, stht#,stdp#); "ina+ca";
+ numeric hrise,hh,xstem,ww,clovh;
+ xstem = .35w; hh = .4h; hrise = matra_f*(h-hh); ww = w-xstem;
+ clovh = .18h;
+ Estem(lindent,hrise,xstem,hh);
+ ca(xstem,0,ww,matra_f*h);
+ z11 = (xstem+lindent,matra_f*h-clovh);
+ clover(z11,.6ww,clovh,.13hh);
+ penlabels(11);
+endchar;
+
+beginchar(200,16u#, stht#,stdp#); "ina+cha";
+ numeric hrise,hh,xstem,ww,clovh;
+ xstem = .3w; hh = .4h; hrise = matra_f*(h-hh); ww = w-xstem;
+ clovh = .2h;
+ Estem(lindent,hrise,xstem,hh);
+ cha(xstem,0,ww,matra_f*(h-hh)/matra_h);
+ z11 = (xstem+lindent,matra_f*h-clovh);
+ clover(z11,.6ww,clovh,.12hh);
+ penlabels(11);
+endchar;
+
+beginchar(201,18u#, stht#,stdp#); "ina+ja";
+ numeric hrise,hh,hja,xshift,clovh;
+ xshift = .1w; clovh = .18h;
+ hh = .35h; hrise = matra_f*(h-hh);
+ hja = hrise/matra_h; wina = xstem-xshift;
+% The ja at the bottom
+ ja_full(0,0,w,hja);
+% The E-like stem at the top
+ numeric xstem,wina;
+ xstem = .5[topl_ja,topr_ja];
+ wina = xstem - xshift;
+ Estem(xshift,hrise,wina,hh);
+% The clover
+ z11 = (xstem,matra_f*h-.5hh);
+ clover(z11,.65(w-xstem),clovh,.12hh);
+ penlabels(11);
+endchar;
+
+beginchar(202,16u#, stht#,stdp#); "ina+jha";
+% I decided not to use a separate form for this.
+endchar;
+
+beginchar(203,12u#, stht#,stdp#); "Ta+Ta";
+ numeric hh,hrise; hh = .9h; hrise = matra_f*(h-hh);
+ Dha(0,hrise,w,hh);
+ matra(0,w);
+ Tiki(.9w,.1w);
+ z11 = (.65w,.3h);
+ z12 = (.4w,0);
+ z13 = (.05w,.1h);
+ pickup pencircle xscaled stem_width yscaled .6stem_width rotated 120;
+ draw z11..z12..z13;
+ penlabels(11,12,13);
+endchar;
+
+beginchar(204,20u#, stht#,stdp#); "Na+Ta";
+ numeric wNa,wTa,hh,hrise;
+ wNa=9/20w; hh = .7h; hrise = matra_f*(h-hh); wTa = 13/20w;
+ Dha(wNa-lindent,0,wTa,h);
+ Na_(0,hrise,wNa,hh);
+ pickup penrazor scaled matra_thickness rotated matra_slope;
+ draw (wNa-.5stem_width,matra_f*h)..(w,matra_f*h);
+ Tiki(.9w,.3w);
+endchar;
+
+beginchar(205,15u#, stht#,stdp#); "Na+Tha";
+ numeric ww,hh,hrise; ww=.65w; hh = .7h; hrise = matra_f*(h-hh);
+ currentpicture := currentpicture + shape_Tha;
+ currentpicture := currentpicture shifted (.1w,0);
+ Na_(0,hrise,ww,hh);
+ pickup penrazor scaled matra_thickness rotated matra_slope;
+ draw (ww,matra_f*h)..(w,matra_f*h);
+endchar;
+
+beginchar(206,18u#, stht#,stdp#); "N+D";
+ numeric hh,hrise;
+ hh = .65h; hrise = matra_f*(h-hh);
+ Da(0,0,w,matra_f*h,.6);
+ Na_(0,hrise,.5w,hh);
+ matra(.5w,w);
+endchar;
+
+beginchar(207,17u#, stht#,stdp#); "N+D+R";
+ numeric wDa,hDa,hNa,Darise,Narise;
+ hNa = .65h; wDa = w; hDa = .9h;
+ Narise = matra_f*(h-hNa); Darise = matra_f*(h-hDa);
+ numeric Ewidth; Ewidth = .05h;
+ Da(w-wDa,Darise,wDa,matra_f*hDa,.6);
+ Na_(0,Narise,.5w,hNa);
+ x1 = w-rindent; y1=0;
+ z3 = (.05w,.15h);
+ Ebase(z1,z3,Ewidth);
+ halfstem(x1,.28h,y1-.5Ewidth);
+ matra(.5wDa,w);
+endchar;
+
+beginchar(208,13u#, stht#,stdp#); "N+N";
+ numeric ww,hh,hrise; ww = w-rindent; hh=.8h; hrise = matra_f*(h-hh);
+ matra(ww,w);
+ stem(ww);
+ Na_(0,hrise,ww,hh);
+ Na_(0,-.18h,ww,hh);
+endchar;
+
+beginchar(209,17u#, stht#,stdp#); "t+t";
+ O(0,0,w,h);
+ matra(0,w);
+endchar;
+
+beginchar(210,14u#, stht#,stdp#); "t+t+W";
+ numeric hh,hrise,wba,hba,shiftba;
+ hh = .6h; hrise = (matra_h-matra_t)*(h-hh);
+ wba = .5w; hba = .48h; shiftba = .2w;
+ O(0,hrise,w,hh);
+ ba(shiftba,0,wba,hba);
+ matra(0,w);
+endchar;
+
+beginchar(211,15u#, stht#,stdp#); "t+th";
+ numeric xstem,balld,phi,height;
+ balld = .18h; phi=65; xstem=w-rindent; height = matra_f*h;
+ z1 = (.17w,.56h);
+ fill fullcircle scaled balld shifted (z1);
+ z2l = z1 + .5balld * dir (-179); z2r = z1;
+ z3l = (.05w,.63h);
+ z3r = (.1w,.6h);
+ z4l = (.28w,matra_h*h); penpos4(.08h,-90);
+ z6l = (.56w,y4l); penpos6(length(z4r-z4l),-90);
+ y5l = y4l-.5balld; x5l = .5[x4l,x6l]; penpos5(.09h,-90);
+ penstroke z2e{up}..{right}z4e..{dir -phi}z5e;
+%
+ z7r = (.64w,.52h); penpos7(.08w,180);
+ z8r = (5/42w,27/50height);
+ z8l = (8.5/42w,20/50height);
+ penstroke z5e{dir phi}..z6e{right}..z7e..{left}z8e;
+ z9 = (xstem,height);
+ Hookstem(z8r,z8l,z9,0,0,0);
+ matra(xstem,w);
+ penlabels(1,2,3,4,5,6,7,8,9,10);
+endchar;
+
+beginchar(212,15u#, stht#,stdp#); "t+n";
+ numeric xstem,xshift,hh,hrise,nafrac;
+ xstem = w-rindent; xshift = .15w; hh = .7h; hrise = matra_f*(h-hh);
+ nafrac = .42;
+ matra(0,w);
+ ta(.05w,hrise,.9w,matra_f*hh);
+ na(xshift,0,.9w-xshift,nafrac*h,.35/nafrac);
+endchar;
+
+beginchar(213,17.5u#, stht#,stdp#); "t+r";
+ E(0,0,w,.94h);
+ matra(0,w);
+endchar;
+
+beginchar(214,18u#, stht#,stdp#); "d+d";
+ numeric wbar;
+%% Initial definitions
+ z1 = (lindent,matra_f*h); penpos1(stem_width,0);
+ z2l = (x1l,.33h);
+ z2r = (x1r,.25h);
+ wbar = length(z2r-z2l);
+%% The first diagonal line
+ z3l = (.5w,.63h); z3l-z3r=z2l-z2r; z3 = .5[z3l,z3r];
+ penstroke z2e{(x3l,y1)-z2r}..z3e;
+%% The first hanging line
+ x4 = .16[x3l,x2l]; y4l = .5y2l;
+ penpos4(.5wbar,angle(z2r-z2l));
+ penstroke z3e..{down}z4e;
+ currentpicture := currentpicture + currentpicture shifted (z4l-z2l - ((y2l/h)*slantval*w,0));
+%% The vertical bar at the left
+ penstroke z1e..z2e;
+ matra(0,w);
+ penlabels(1,2,3,4,5);
+endchar;
+
+beginchar(215,12u#, stht#,stdp#); "d+bh";
+ numeric hh,hrise; hh = .65h; hrise = matra_f*(h-hh);
+ da(0,hrise,w,hh);
+ bha(0,-.1hh,w,matra_f*hh);
+ matra(0,w);
+endchar;
+
+beginchar(216,13u#, stht#,stdp#); "d+W";
+ matra(0,w);
+%% The vertical bar at the left
+ z1 = (lindent,matra_f*h); penpos1(stem_width,0);
+ z2l = (x1l,.4h);
+ z2r = (x1r,.32h);
+ penstroke z1e..z2e;
+%% The diagonal line
+ x3 = w-rindent; y3l=.63h;
+ z3l-z3r=z2l-z2r; z3 = .5[z3l,z3r];
+ penstroke z2e{(x3l,y1)-z2r}..z3e;
+%% The "ba"
+ ba(x2l,0,w-rindent-lindent,.55h);
+% Connecting the ba-part and the da-part
+ z4l = (ba_topxl,ba_topy);
+ z4r = (ba_topxr,ba_topy);
+ penstroke z3e..{down}z4e;
+ penlabels(1,2,3,4,5);
+endchar;
+
+beginchar(217,14u#, stht#,stdp#); "dh+W";
+ numeric hh,ba_shift; hh = .7h; ba_shift = 2/14w;
+ currentpicture := currentpicture + shape_dha;
+ ba_remove(ba_shift,0,w-rindent-ba_shift,hh);
+ ba(ba_shift,0,w-rindent-ba_shift,hh);
+ ba(ba_shift,0,w-rindent-ba_shift,hh);
+ ba(ba_shift,0,w-rindent-ba_shift,hh);
+endchar;
+
+beginchar(218,15u#, stht#,stdp#); "n+t";
+ numeric xstem,xshift,hh,hrise,fracrise,wna;
+ xstem = w-rindent; xshift = .1w; hh = .5h; hrise = .3h;
+ fracrise = (matra_f*h-hh)/hrise; wna = .8w;
+ matra(0,w);
+ na(xshift,hrise,wna-xshift,hh,fracrise);
+ ta(.1w,-.03h,xstem,.7matra_f*h);
+endchar;
+
+beginchar(219,13u#, stht#,stdp#); "n+t+r";
+ numeric xshift,hna,hrise,stem_frac;
+ xshift = .06w; hna = .6h;
+ hrise = matra_f*h-(hna*stem_frac); stem_frac = .8;
+ matra(0,w);
+ na(xshift,hrise,w-xshift,hna,stem_frac);
+ E(0,0,w,.6h);
+endchar;
+
+beginchar(220,13u#, stht#,stdp#); "n+t+W";
+ numeric hh,hrise,xstem,xshift,bashift;
+ hh = .8h; hrise = matra_f*(h-hh); xstem = w-rindent; xshift = .06w;
+ bashift = .3w;
+ matra(0,w);
+ na(xshift,.25hh+hrise,w-xshift,.6hh,.8);
+ ta(0,hrise,xstem+.1w,.5hh);
+ ba(.7bashift,-.05h,xstem-bashift,.4h);
+endchar;
+
+beginchar(221,21u#, stht#,stdp#); "n+d";
+ numeric wna,hna,hrise;
+ wna=1/3w; hna = 33/50matra_f*h;
+ hrise = matra_f*h-hna;
+ matra(0,w);
+ na(0,hrise,wna+lindent+rindent,hna,1);
+ da(wna,0,w-wna,h);
+ matra(0,w);
+ picture shape_nd; shape_nd = currentpicture;
+endchar;
+
+beginchar(222,21u#, stht#,stdp#); "n+d+R";
+ currentpicture := currentpicture + shape_nd;
+ z1 = (w-rindent+.5stem_width,0); z2 = (.04w,.3h);
+ Ebase(z1,z2,.06h);
+endchar;
+
+
+beginchar(223,14.5u#, stht#,stdp#); "n+n";
+ numeric xstem,ww,hh; xstem = ww = w-rindent; hh=.6h;
+ matra(0,w);
+ na(0,0,w,hh,.8);
+ na(0,.25h,w,hh,.8);
+endchar;
+
+beginchar(224,13u#, stht#,stdp#); "n+W";
+ numeric xstem,ww,hh,hrise,bashift;
+ xstem = ww = w-rindent; hh=.5h; hrise = matra_f*h-hh; bashift = .15w;
+ matra(0,w);
+ na(0,hrise,w,hh,1);
+ ba(bashift,0,ww-bashift,.6h);
+endchar;
+
+beginchar(225,14u#, stht#,stdp#); "p+t";
+ numeric hrise,hh,xstem,xshift; xstem = w-rindent; xshift = .08xstem;
+ hh = .68h; hrise = matra_f*(h-hh);
+ pa_(xshift,hrise,xstem-xshift,hh);
+ ta(.09w,-.03h,.9w,.49h);
+ halfstem(xstem,matra_f*h,.33h);
+ matra(xstem,w);
+endchar;
+
+beginchar(226,14u#, stht#,stdp#); "p+p";
+ numeric ww,hh,hrise; ww=w-rindent; hh=.7h;
+ hrise = matra_f*(h-hh);
+ pa_(0,hrise,ww,hh);
+ pa_(0,-.08h,ww,hh);
+ matra(ww,w);
+ stem(ww);
+endchar;
+
+beginchar(227,18.5u#, stht#,stdp#); "ph+r";
+ numeric wpha; wpha = 28/37w;
+ currentpicture := currentpicture + shape_pha;
+ z1 = (wpha-rindent+.5stem_width,0);
+ z2 = (0,.2h);
+ Ebase(z1,z2,.06h);
+endchar;
+
+beginchar(228,18.5u#, stht#,stdp#); "ph+l";
+ numeric wpha; wpha = 28/37w;
+ currentpicture := currentpicture + shape_pha;
+ z1 = (wpha-rindent,0);
+ z2 = (0,.2h);
+ la_(0,-.2h,wpha-rindent,.6h);
+endchar;
+
+beginchar(229,20u#, stht#,stdp#); "b+j";
+ numeric ww, hh, hrise; ww = .4w; hh = .54h; hrise = matra_f*(h-hh);
+ ja_full(0,0,w,h);
+ ba_remove(0,hrise,ww,hh);
+ ba(0,hrise,ww,hh);
+ ba(0,hrise,ww,hh);
+ ba(0,hrise,ww,hh);
+ matra(0,w);
+endchar;
+
+
+
+beginchar(230,14u#, stht#,stdp#); "b+b";
+ numeric xstem,hh,hrise;
+ xstem = w - rindent; hh = .75h; hrise = matra_f*(h-hh);
+ ba(0,hrise,xstem,hh);
+ ba_remove(0,0,xstem,hh);
+ ba(0,0,xstem,hh);
+ ba(0,0,xstem,hh);
+ ba(0,0,xstem,hh);
+ matra(0,w);
+endchar;
+
+beginchar(231,17.5u#, stht#,stdp#); "bh+r";
+ numeric balld,height;
+ balld = .25w; height=matra_f*h;
+% The circle
+ z4 = (w-rindent,25/50height); penpos4(stem_width,0);
+ x1r = .5x4; y1r = 34/50height; penpos1(.5balld,60);
+ fill fullcircle scaled balld shifted (z1r);
+% The connector between the circle and the stem
+ z2l = (.7x4,26/50height); z2r = (32/54w,31/50height);
+ x3r = 42/54w; y3r = 39.5/50height; penpos3(stem_width,100);
+ penstroke z1e..z2e..z3e;
+ fill z3r{right}..{down}z4r--z4l{up}..z3l--cycle;
+% The wavy line
+ z5 = (.51w,.18h); penpos5(6/50height,90);
+ z6 = (.27w,.21h); penpos6(6/50height,90);
+ z7 = (4/48w,24/50height); penpos7(3/50height,0);
+ z8 = (6.5/48w,33/50height); penpos8(2/50height,-30);
+ penstroke z5e{left}..z6e..z7e..tension1.2..z8e;
+ Hookstem(z5r,z5l,z4,0,0,0);
+ penlabels(1,2,3,4,5,6,7,8);
+ matra(0,w);
+endchar;
+
+beginchar(232,13u#, stht#,stdp#); "m+b";
+ numeric xstem,hh,hrise,bashift;
+ xstem = w - rindent; hh = .65h; hrise = matra_f*(h-hh); bashift = .1w;
+ ba(bashift,0,xstem-bashift,hh);
+ ma_(0,hrise,xstem+rindent,hh);
+ matra(0,w);
+endchar;
+
+beginchar(233,16u#, stht#,stdp#); "m+bh";
+ numeric hh; hh = .52h;
+ bha(0,0,w,hh);
+ currentpicture := currentpicture + shape_halfma shifted (.08w,0);
+ matra(0,w);
+endchar;
+
+beginchar(234,17u#, stht#,stdp#); "l+l";
+ numeric hh,xstem;
+ xstem = w-rindent; hh = .85h;
+ la_(0,.15h,xstem,hh);
+ la_(0,-.2h,xstem,hh);
+ stem(xstem);
+ matra(0,w);
+endchar;
+
+beginchar(235,20u#, stht#,stdp#); "Sh+T";
+ numeric hh,hrise,Tashift;
+ hh = .75h; hrise = matra_f*(h-hh); Tashift = .4w;
+ Sha_(0,hrise,Tashift+lindent-.5stem_width,hh);
+ Dha(Tashift,0,w-Tashift,h);
+ matra(0,w);
+ Tiki(.9w,Tashift);
+endchar;
+
+beginchar(236,15u#, stht#,stdp#); "Sh+Th";
+ numeric hh,hrise;
+ hh = .65h; hrise = matra_f*(h-hh);
+ Sha_(0,hrise,.55w,hh);
+ currentpicture := currentpicture + shape_Tha shifted (.08w,0);
+ matra(0,w);
+endchar;
+
+beginchar(237,22u#, stht#,stdp#); "Sh+N";
+ numeric wSha; wSha = 15/22w;
+ currentpicture := currentpicture + shape_Sha;
+ matra(0,wSha-rindent+.5stem_width);
+ z1 = (wSha-rindent+.25stem_width,.5h);
+ clover(z1,w-wSha,matra_f*h-y1,.08h);
+endchar;
+
+beginchar(238,16u#, stht#,stdp#); "s+k";
+ numeric hrise,hh,xstem,xshift;
+ xstem = w-2rindent; hh = .5h; hrise = matra_h*h-hh; xshift=.2w;
+ halfstem(xstem,matra_f*h,.35h);
+ sa_(0,hrise,xstem,hh);
+ ka(xshift,0,xstem+2rindent-xshift,.65h);
+ matra(0,w);
+endchar;
+
+beginchar(239,15u#, stht#,stdp#); "s+t";
+ numeric hrise,hh,xstem,xshift;
+ xstem = w-rindent; hh = .45h; hrise = matra_h*h-hh;
+ xshift=0w;
+ halfstem(xstem,matra_f*h,.33h);
+ sa_(xshift,hrise,xstem-xshift,hh);
+ ta(.09w,-.03h,.9w,.65matra_f*h);
+ matra(0,w);
+endchar;
+
+beginchar(240,14u#, stht#,stdp#); "s+t+r";
+ numeric hrise,hh,xstem,xshift;
+ xstem = w-rindent; hh = .45h; hrise = matra_h*h-hh; xshift=-.04w;
+ halfstem(xstem,matra_f*h,.33h);
+ sa_(xshift,hrise,xstem-xshift,hh);
+ E(0,0,w,.6h);
+ matra(0,w);
+endchar;
+
+beginchar(241,14u#, stht#,stdp#); "H+N";
+ numeric ww,shiftNa,hHa,hrise;
+ ww = .6w; shiftNa = .06w; hHa = .85h; hrise = matra_f*(h-hHa);
+ Na_(shiftNa,-.22h,ww,.6h);
+ Ha(0,hrise,w,matra_f*hHa);
+ halfstem(ww+shiftNa,.25h,-ha_dip);
+ matra(0,w);
+endchar;
+
+beginchar(242,21u#, stht#,stdp#); "H+n";
+ numeric ww,hh;
+ ww = .4w; hh = .7h;
+ na_(-.0w,.2h,ww,hh);
+ currentpicture := currentpicture reflectedabout ((w/2,0),(w/2,h)) shifted (1.2w*slantval,0);
+ Ha(0,0,14.5/21w,matra_f*h);
+ matra(0,w);
+endchar;
+
+beginchar(243,22u#, stht#,stdp#); "H+m";
+ numeric xstem,balld,thinness,height,theta;
+ xstem=42/63w; thinness=.45; height = matra_f*h; balld=11/50height;
+ theta = -60;
+ matra(0,w);
+% The two balls
+ z0 = (xstem,height);
+ z1= (11/63w,34.5/50height);
+ z2= (24/63w,20/50height);
+ fill fullcircle scaled balld shifted (z1);
+ fill fullcircle scaled balld shifted (z2);
+% Points on the two circles
+ z1a = z1 + .5 * balld * dir(0);
+ z1b = thinness[z1a,z1];
+ z1c = z1 + .5balld * dir(90);
+ z2a = z2 + .5balld * dir(0);
+ z2b = thinness[z2a,z2];
+ z2c = z2 + .5balld * dir(90);
+% The line from the matra to the first dot
+ z6l = (7/63w,matra_h*h); penpos6(6.5/63w,0);
+ fill z6l..{down}z1b--z1a{up}..z6r--cycle;
+% The line between the two dots
+ fill z1c{right}..{down}z2a--z2b{up}..tension0.8..{left}z1b--cycle;
+% The stem
+ Hookstem(z2c,z2a,z0,0,0,0);
+% This part is for the ball at the end of the hook
+ z3r = (w-rindent,0);
+ x3l = x5l;
+ y3l = stem_width/sind(stem_slope);
+% The hook
+ z4l = (xstem,34.5/50height); penpos4(.5balld,90);
+ z5r = (w-rindent,.9[y3l,y4l]); penpos5(stem_width,0);
+ z7 = (24/63w,matra_h*h); penpos7(4/63w,0);
+ penstroke z3e{up}..{up}z5e..z4e{left};
+ fill z4l--z1a--z1c--z4r--cycle;
+ penlabels (0,1,1a,1b,1c,2,2a,2b,2c,3,4,5,6,7);
+endchar;
+
+beginchar(244,14u#, stht#,stdp#); "H+r";
+ numeric hHa,hrise;
+ hHa = .85h; hrise = matra_f*(h-hHa);
+ Ha(0,hrise,w,matra_f*hHa);
+ z1 = (w-rindent,0); z2 = (.02w,.23h);
+ Ebase(z1,z2,.06h);
+ halfstem(x1-.5stem_width,.2h,0);
+ matra(0,w);
+endchar;
+
+beginchar(245,14u#, stht#,stdp#); "H+l";
+ numeric ww,hh,hHa,hrise,lashift;
+ ww = w-rindent; hh = .6h; hHa = .85h; hrise = matra_f*(h-hHa);
+ lashift = -.07w;
+ la_(lashift,-.18h,ww-lashift,hh);
+ Ha(0,hrise,w,matra_f*hHa);
+ halfstem(ww,.2h,-ha_dip);
+ matra(0,w);
+endchar;
+
+beginchar(246,14u#, stht#,stdp#); "H+W";
+ numeric hrise,hHa;
+ hHa = .85h; hrise = matra_f*(h-hHa);
+ matra(0,w);
+ Ha(0,hrise,w,matra_f*hHa);
+ ba(.13w,0,.5w,.42h);
+endchar;
+
+
+%%% End of bangjuk.mf
+
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangkaar.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangkaar.mf
new file mode 100644
index 0000000000..95b9493135
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangkaar.mf
@@ -0,0 +1,146 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bangkaar.mf: METAFONT file that defines the Bangla conjunct vowels
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+beginchar("a",7u#, stht#,stdp#); "A-kar";
+ numeric xstem; xstem=.45w;
+ matra(0,w);
+ stem(xstem);
+endchar;
+
+
+beginchar("i",7u#, stht#, stdp#); "hraswa i-kar";
+ numeric xstem,height; xstem = .5w; height = matra_f*h;
+ matra(0,w);
+ stem(xstem);
+ pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 45;
+ z1 = (xstem,matra_h*h);
+ bot z6 = (25/20w,68/50*matra_f*h);
+ x5 = .5[0,x1]; y5=.3[y1,y6];
+ z7 = (53/20w,57/50height);
+ draw z1..z5..{right}z6..tension1.2..z7;
+ penlabels(range 5 thru 7);
+endchar;
+
+beginchar(140, 6u#,stht#,stdp#); "dirgha i-kar";
+ numeric xstem,height; xstem = w-rindent; height = matra_f*h;
+ matra(-rindent,w);
+ stem(xstem);
+ pickup pencircle xscaled stem_width yscaled 0.7stem_width rotated 0;
+ z3 = (xstem,matra_h*h);
+ z5 = (-20/17w,73/50height);
+ z6 = (-33/17w,65/50height);
+ z7 = (-21/17w,59/50height);
+ bot lft z8 = (-rindent,matra_h*h);
+ draw z3{up}..z5..{down}z6{down}..z7{right}..{dir -120}z8;
+ penlabels(range 1 thru 8);
+endchar;
+
+beginchar("u",0stwd#,stht#,stdp#); "hraswa-u-kar";
+ numeric width; width = stem_width/abs(sind(stem_slope));
+ z1l = (-rindent-.5stem_width,stem_width*sind(stem_slope));
+ z1r = (-rindent+.5stem_width,0);
+ z1 = .5[z1l,z1r];
+ z2 = (-2rindent,-.6d); penpos2(.5width,-90);
+ z3 = (-3rindent,-.3d); penpos3(.5width,180);
+ z4 = (-2.2rindent,0); penpos4(.8width,90);
+ z5 = (+1.1rindent,-d); penpos5(.8width,-20);
+ penstroke z1e{down}..{left}z2e..z3e..{right}z4e..{z5-z1}z5e;
+ penlabels(range 1 thru 5);
+endchar;
+
+beginchar(142,0stwd#,stht#,stdp#); "dirgha-u-kar";
+ numeric width; width = stem_width/abs(sind(stem_slope));
+ z1 = (-1.5rindent,.5stem_width*sind(stem_slope));
+ z2 = (-2.2rindent,0);
+ z3 = (-2.7rindent,-.3d);
+ z4 = (-1.5rindent,-.6d);
+ z5 = (0,-.25d);
+ z6 = (+1.5rindent,-d);
+ pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 0;
+ draw z1..z2..{down}z3..z4..z5;
+ draw z5--z6;
+ penlabels(range 1 thru 6);
+endchar;
+
+beginchar(144,0stwd#,stht#,stdp#); "ri-kar";
+ z1 = (w-0.9pt,0); z2 = (w-2.1pt,-1/3d); z3 = (w,-d);
+ pickup pencircle xscaled 0.3pt yscaled 0.6pt rotated 30;
+ draw z1--z2--z3;
+ penlabels(range 1 thru 3);
+endchar;
+
+beginchar(146,8u#,stht#,stdp#); "ae-kar";
+ numeric balld; balld = 1.5dot_diam;
+ z1 = (w-.5balld,.5balld);
+ fill fullcircle scaled balld shifted z1;
+ z3l = (.5w,matra_f*h-.5matra_thickness); z3r = (w,y3l);
+ z4l = (.15w,.5matra_f*h); z4r = z4l + (.15w,0);
+ z5l = (x1,0); z5r = z1;
+ penstroke z3e..{down}z4e..{right}z5e;
+ picture shape_ekar; shape_ekar = currentpicture;
+ matra(0,w);
+ z9 = (0,.4h); z10 = (.8w,y9);
+ pickup penrazor xscaled 1.5stem_width rotated 90;
+ draw z9--z10;
+ matra(0,w);
+ penlabels (1,3,4,5,9,10);
+endchar;
+
+beginchar("e",8u#,stht#,stdp#); "e-kar";
+ currentpicture := shape_ekar;
+ matra(0,w);
+endchar;
+
+beginchar(148,8u#,stht#,stdp#); "oi-kar";
+ currentpicture := shape_ekar;
+ Tiki(.9w,0);
+ matra(0,w);
+endchar;
+
+
+beginchar("o",0,stht#,stdp#); "o-kar";
+endchar;
+
+beginchar(150,6u#,stht#,stdp#); "ou-kar";
+ numeric xstem; xstem=.5w;
+ Tiki(xstem,-3rindent);
+ matra(0,w);
+ stem(xstem);
+endchar;
+
+
+%%% End of bangkaar.mf
+
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/banglig.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/banglig.mf
new file mode 100644
index 0000000000..14fac1cbc6
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/banglig.mf
@@ -0,0 +1,183 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% banglig.mf: METAFONT file defining ligature tables for Bangla
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+%% double dNNarhi
+ligtable ".": "." =: 14;
+
+%% dot dot dot
+ligtable 14 : "." =: 15;
+
+%% peT-kaTa "e"
+ligtable "a": "a" =: 146;
+ligtable "A": "A" =: 147;
+
+%% bha
+ligtable "b": "h" =: "v", "/" =: 173;
+
+%% cha
+ligtable "c": "h" =: "q", "/" =: 163;
+
+%% dha, da + (fala)
+ligtable "d": "h" =: "z", "R" =: 22, "W" =: 216, "M"=:| 170, "/" =: 170;
+
+%% Dha, Da + (fala)
+ligtable "D": "h" =: "Z", "/" =: 167, "L" =:| 167, "R" =:| 167, "W" =:| 167;
+
+%% pha + (fala)
+ligtable "f": "R" =: 227, "L" =: 228;
+
+%% gha
+ligtable "g": "h" =: "G", "/" =: 161, "M" =:| 161;
+
+%% Ha + (fala)
+ligtable "H": "R" =: 244, "W" =: 246, "M" =: 243, "L" =: 245;
+
+%% dirgha-i
+ligtable "i": "i" =: 140;
+ligtable "I": "I" =: 141;
+
+%% jha, ja + (fala)
+ligtable "j": "h" =: "C", "R" =: 197, "W" =: 198, "/" =: 164;
+
+%% kha, khiyo, ka + (fala)
+ligtable "k": "h" =: "x", "K" =: "X", "W" =: 186, "R" =: 184, "L" =: 185, "M" =:| 160, "/" =: 160;
+
+%% la +
+ligtable "l": "/" =: 176, "M" =:| 176;
+
+%% ma +
+ligtable "m": "/" =: 174, "M" =:| 174, "L" =:| 155, "W" =: 232;
+
+%% anuswar, unga, ina, candro-bindu
+ligtable "N": "G" =: 130, "J" =: 131, "N" =: 132, "/" =: 168;
+
+%% na +
+ligtable "n": "/" =: 171, "M" =:| 171, "W" =: 224;
+
+%% OI, OU
+ligtable "o": "i" =: 148, "u" =: 150;
+ligtable "O": "I" =: 149, "U" =: 151;
+
+%% pha, pa + (fala)
+ligtable "p": "R" =: 23, "h" =: "f", "/" =: 172, "M" =:| 172;
+
+%% murdhanya Sha +
+ligtable "P": "/" =: 178, "M" =:| 178;
+
+%% cha + (fala)
+ligtable "q": "R" =: 192, "W" =: 193;
+
+%% ref, day-shunyo ra, ri, asamiya ra
+ligtable "r": "/" =: 175, "h" =: 136, "R" =: 144, "W" =: "B";
+ligtable "R": "R" =: 145;
+
+%% talabya sha, dantyo sa + (fala)
+ligtable "s": "h" =: "S", "/" =: 179, "M" =:| 179, "L" =:| 156, "W" =:| 156, "|" =:| 156;
+
+%% sha + (fala), murdhonyo sha
+ligtable "S": "R" =: 24, "h" =: "P", "/" =: 177, "M" =:| 177, "|" =: "S";
+
+%% tha, ta + (fala)
+ligtable "t": "h" =: "Q", "R" =: 213, "W" =:| 169, "L" =:| 169, "M" =:| 169, "/" =: 169;
+
+%% Tha, Ta + (fala)
+ligtable "T": "h" =: "F", "R" =:| 166, "W" =:| 166, "/" =: 166, "i" kern 3u#;
+
+%% dirgho-u
+ligtable "u": "u" =: 142;
+ligtable "U": "U" =: 143;
+
+%% bha + (fala)
+ligtable "v": "R" =: 231, "L" =:| 154, "W" =:| 154;
+
+%% khiyo + (fala)
+ligtable "X": "M" =: 189;
+
+%% dha + wa
+ligtable "z": "W" =: 217;
+
+%% double quotation
+ligtable "`": "`" =: 2;
+ligtable "'": "'" =: 1;
+
+%% endash, emdash
+ligtable "-": "-" =: 8;
+ligtable 8: "-" =: 9;
+
+ligtable 47: "n" =: 26, "N" =:25;
+ligtable 58: "/" =: 13;
+ligtable 124: "W" =: 153;
+ligtable 130: "/" =: 162;
+ligtable 131: "/" =: 165;
+ligtable 132: "G" =: "K";
+ligtable 136: "h" =: 137, "u" kern 5u#;
+ligtable 137: "u" kern 5u#;
+ligtable 155: "n" |=: 26;
+ligtable 160: "k" =: 180, "t" =: 181, "T" kern -7u#, "n" =: 183, "M" kern -7u#, "s"=: 187;
+ligtable 161: "g" =: 190, "Y" =: 196, "m" |=: "M", "n" |=: 26, 26 =:| "g";
+ligtable 164: "j" =: 194;
+ligtable 165: "c" =: 199, "j" =: 201;
+ligtable 166: "T" =: 203, "W" kern 4.5u#;
+ligtable 167: "D" kern -3u#;
+ligtable 168: "T" =: 204, "D" =: 206, "N" =: 208, "H" =: 241;
+ligtable 169: "t" =: 209, "n" =: 212, "r" =: 213, "M" |=: 27,
+27 kern -1u#, "/" =: 133;
+ligtable 170: "d" =: 214, "b" =: 216, "M" |=: 27, 27 kern1u#, "h" |=: 122;
+ligtable 171: "H" =: 242, "t" =: 218, "d" =: 221, "n" =: 223, "h" |=: "Q", "k" =:| 162, "g" =:| 162, "c" =: 199, "j" =: 201;
+ligtable 172: "t" =: 225, "p" =: 226, "l" |=: "L", "L" =:| "p", "n" |=: 26, 26 =:| "p";
+ligtable 173: "j" =: 229, "d" kern -3u#, "b" =: 230;
+ligtable 174: "b" =: 232, "n" |=: 26, 26 =:| 155, "m" |=: 77, "l" |=: "L", "L" =:| 155;
+ligtable 176: "l" =: 234, "g" kern 1.5u#, "p" kern .5u#, "m" |=: "M";
+ligtable 177: "l" |=: "L", "L" =:| "S", "n" |=: 26, 26 =:| "S", "m" |=: "M";
+ligtable 178: "T" =: 235, "N" =:237, "m" |=: 77;
+ligtable 179: "t" =: 239, "h" |=: "Q", "k" =: 238, "n" |=: 26, 26 =:| 156;
+ligtable 181: "R" =: 182;
+ligtable 194: "W" =: 195;
+ligtable 199: "h" =: 200;
+ligtable 201: "h" |=: 67, 67 =:| 165;
+ligtable 204: "h" =: 205;
+ligtable 206: "R" =: 207;
+ligtable 209: "W" =: 210, "h" =: 211;
+ligtable 214: "h" =:| 170;
+ligtable 216: "h" =: 215;
+ligtable 218: "R" =: 219, "W" =: 220, "h" =:| 171;
+ligtable 221: "h" |=: 122, 122 =:| 171, "R" =: 222, "W" |=: 216, 216 =:| 171;
+ligtable 232: "h" =: 233;
+ligtable 233: "R" |=: 231, 231 =:| 174;
+ligtable 235: "h" =: 236;
+ligtable 238: "h" |=: "x", "x" =:| 179, "R" |=: 184, 184 =:| 179;
+ligtable 239: "h" =:| 179, "R" =: 240;
+
+%%% End of banglig.mf
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangmac.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangmac.mf
new file mode 100644
index 0000000000..72912dacda
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangmac.mf
@@ -0,0 +1,286 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bangmac.mf: METAFONT file that defines various macros
+% for use in bangla fonts
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+def matra(expr wa,wb) =
+ begingroup
+ save x,y,lslope,rslope;
+ lslope = matra_slope;
+ rslope = matra_slope;
+ z1'r = (wa,matra_f*h);
+ z2'r = (wb,matra_f*h);
+ if wa>0: x1'r := x1'r - 0.5*stem_width; lslope := 90;
+ x12=x1'r + stem_width;
+ y12 = matra_h*h + .5matra_t*h/sind(lslope);
+ x13=x1'r;
+ y13=y12;
+ x11=x1'r;
+ y11 = y12 + stem_width/sind(lslope);
+ fill z13--z11--z12--cycle;
+ fi
+ if wb<w: x2' := x2' + 0.5*stem_width; rslope := 90; fi
+ penpos1'(matra_t*h/sind(lslope),lslope);
+ penpos2'(matra_t*h/sind(rslope),rslope);
+ penstroke z1'e--z2'e;
+ penlabels(11,12,13);
+ endgroup
+enddef;
+
+
+def stem(expr xstem) =
+ begingroup
+ save x,y;
+ z1' = (xstem,matra_f*h);
+ penpos1'(stem_width,0);
+ x2'r = x1'r; y2'r = 0;
+ x2'l = x1'l; y2'l = y2'r + stem_width * sind(stem_slope);
+ penstroke z1'e--z2'e;
+ penlabels(1',2');
+ endgroup
+enddef;
+
+
+def halfstem(expr xstem,a,b) =
+ begingroup
+ save x,y;
+ z1 = (xstem,a);
+ penpos1(stem_width,0);
+ x2r = x1r; y2r = b;
+ x2l = x1l; y2l = b + stem_width * sind(stem_slope);
+ fill z1l--z2l--z2r--z1r--cycle;
+ endgroup
+enddef;
+
+
+def cwbar(expr za,zb,zc,th) =
+ begingroup
+ save x,y,phiab,phibc,width,lab,lcd;
+ phiab = angle(za-zb);
+ phibc = angle(zb-zc);
+ lab = length(za-zb);
+ width = lab * sind(abs(phibc - phiab));
+ lcd = width / sind(abs(th - phibc));
+ z4' = zc + dir(th) * lcd;
+ z1l = za; z1r = zb; z2l = z4'; z2r = zc;
+ penstroke z1e--z2e;
+ endgroup
+enddef;
+
+
+%% Macro for a hook hanging from two points, with a curvature at the
+%% middle. The two upper points are za and zb.
+def hookjt(expr za,zb,zc,lift,thinness,thf) =
+ begingroup
+ save x,y,lab,lcd,thab,thcd,lmid,thmid,dist;
+ dist = 0.8;
+ z4 = zc + thinness*length(za-zb) * dir(thf);
+ z11' = .5[za,zb]; z12' = .5[zc,z4];
+ lab = length(za-zb); lcd = length(zc-z4);
+ thab = angle(zb-za); thcd = angle(z4-zc);
+ lmid = (1-dist)*lab + dist*lcd;
+ thmid = (1-dist)*thab + dist*thcd;
+ penpos11'(lab,thab); penpos12'(lcd,thcd);
+ z13'l = dist[za,zc] + (0,dist*lift);
+ penpos13'(lmid,thmid);
+ penstroke z11'e..z13'e..z12'e;
+ penlabels(11',12',13');
+ endgroup
+enddef;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%
+%% macro for a hook with a stem attached to it.
+
+def Hookstem(expr za,zb,zc,yd,phia,phib) =
+ begingroup
+ save x,y;
+ z1r = za;
+ z1l = zb;
+ zc = z3; penpos3(stem_width,0);
+% z2l = (x3,.5stem_width*sind(stem_slope));
+ z2r = (x3+.5stem_width,yd);
+ x2l = x3; y2l = y2r + .5stem_width*sind(stem_slope);
+ path hs_pl; hs_pl = z1l{dir phia}..tension1.2..{down}z2l;
+ path hs_pr; hs_pr = z2r{up}..tension1.2..{dir (180+phib)}z1r;
+ fill hs_pl--hs_pr--cycle;
+ z4l = hs_pl intersectionpoint (z3l--(x3l,yd));
+ z4r = z2r;
+ penstroke z3e--z4e;
+ penlabels(1,2,3,4);
+ endgroup
+enddef;
+
+% def hookstem(expr za,zb,zc,phia,phib) =
+% begingroup
+% save x,y;
+% z1r = za;
+% z1l = zb;
+% zc = z3; penpos3(stem_width,0);
+% z2l = (x3,.5stem_width*sind(stem_slope));
+% z2r = (x3+.5stem_width,0);
+% path hs_pl; hs_pl = z1l{dir phia}..tension1.2..{down}z2l;
+% path hs_pr; hs_pr = z2r{up}..tension1.2..{dir (180+phib)}z1r;
+% fill hs_pl--hs_pr--cycle;
+% z4r = z2r;
+% z4l = hs_pl intersectionpoint (z3l--(x3l,0));
+% penstroke z3e--z4e;
+% penlabels(1,2,3,4);
+% endgroup
+% enddef;
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%
+% macro for a ball with a hook attached to it. The ball is centered at
+% za, with radius rad. The points zb and zc are the two end points of
+% the hook. The angle `th' is the angular co-ordinate of the point on
+% the circumference of the circle where the hook attaches to the
+% circle.
+
+def hookcirc(expr za,zb,zc,rad,th) =
+ begingroup
+ save x,y,phi,psi,chdir,thickness;
+ z1 = za;
+ fill fullcircle scaled rad shifted (z1);
+ thickness = length(zb-zc);
+ z5 = z1 + .5rad * dir(th);
+ z4 = z5 - thickness * dir(th);
+ z2=zb; z3=zc;
+ chdir:=1;
+ if angle(z5-z1)>angle(z2-z1): chdir:=-1; fi
+ phi = th + chdir*90;
+ if phi>0: psi=phi-180; else: psi=phi+180; fi
+ fill z2--z3..{dir psi}z4--z5{dir phi}..cycle;
+ endgroup
+enddef;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% macro for the Tiki to be used for the letters "Ta", hraswa i and u
+%% etc. xa is the x-coordinate of the right end of the Tiki and xb is
+%% the same for the left end.
+
+def Tiki(expr xa,xb) =
+ begingroup
+ save x,y;
+ bot z1 = (xa,matra_f*h);
+ z2 = (xb,h);
+ z1'= (.5[x1,x2],.5[y1,y2]);
+ pickup pencircle xscaled .7pt yscaled .3pt rotated 90;
+ Tiki_pen := savepen;
+ draw z1{up}..{left}z1'{left}..{dir 60}z2;
+ penlabels(1,2);
+ endgroup
+enddef;
+
+
+def baTi(expr za,zb,zc,zd) =
+ begingroup
+ save x,y,lab,phi;
+ z1 = za; z2 = zb; z3 = zc; z4 = zd;
+ lab = length(z1-z2);
+ phi = 100;
+ x3' = x3; y3'-y3 = min(2.3*lab,.3[y2,y3]);
+ z4' = z4 + .4*lab * dir (phi-120);
+ fill z2{down}..{left}z3{left}..{dir 100}z4--z4'{dir (phi-180)}..{right}z3'{right}..{up}z1--cycle;
+ penlabels(1,2,3,4);
+ endgroup
+enddef;
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% This is the golla to be used for bisarga, anuswar etc.
+
+def golla(expr za,balld) =
+ begingroup
+ save x,y;
+ z1r = za + .5balld * dir (45);
+ z2r = za + .5balld * dir (135);
+ z3r = za + .5balld * dir (-135);
+ z4r = za + .5balld * dir (-45);
+ penpos1(.15balld,45);
+ penpos2(.25balld,135);
+ penpos3(.15balld,-135);
+ penpos4(.25balld,-45);
+ penstroke z1e..z2e..z3e..z4e..cycle;
+ endgroup
+enddef;
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% The base of E, also used as ra-fala
+
+def Ebase(expr za,zb,t) =
+ begingroup
+ save x,y,w,h;
+ numeric w,h;
+ w=abs(xpart(za) - xpart(zb)); h=abs(ypart(za) - ypart(zb));
+ x1 = xpart(za); y1l= ypart(za); penpos1(t,90);
+ z2l = z1 + (-.3w,.13h); penpos2(1.4t,90);
+ y3 = y2; x3 = x2 -.4w; penpos3(1.4t,90);
+ z4l = zb; penpos4(t/3,-40);
+ penstroke z1e..{left}z2e{left}..z3e;%..z4e;
+ fill z3l{left}..z4l--z4l--z4l..{right}z3r--cycle;
+ penlabels(1,2,3,4);
+ endgroup
+enddef;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% The shape at the right of ina, Sh+N etc.
+%% The starting point is za, the x-distance between za and the
+%% highest/lowest point is w, the total height is 2h, and t is the
+%% thickness of the lines.
+
+def clover(expr za,w,h,t) =
+ begingroup
+ save x,y,currenttransform;
+ transform currenttransform;
+ currenttransform := identity shifted za slanted slantval;
+ numeric theta,balld; theta = 60; balld = .7w-.7t;
+ z1 = (0,0); penpos1(0,-90);
+ z2r = (x1+.5w,y1-h); penpos2(t,-90);
+ z3r = (w,y1-.5h); penpos3(.7t,0);
+ z4l = (x2,y1); penpos4(.5balld,theta);
+ fill fullcircle scaled (balld) shifted z4l;
+ penstroke z1e..z2e..{up}z3e{up}..{dir (theta+90)}z4e;
+ z4'l = z4l; penpos4'(.5balld,-theta);
+ x3' = x3; y3' - y4l = y4l - y3; penpos3'(.7t,0);
+ x2' = x2; y2' -y4l = y4l - y2; penpos2'(t,90);
+ penstroke z1e..z2'e..{down}z3'e{down}..{dir (-theta-90)}z4'e;
+ penlabels(1,2,2',3,3',4,4');
+ endgroup
+enddef;
+
+
+
+%% End of file bangmac.mf \ No newline at end of file
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangnum.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangnum.mf
new file mode 100644
index 0000000000..564bbbb3de
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangnum.mf
@@ -0,0 +1,209 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bangnum.mf: METAFONT file that defines the Bangla numerals
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+beginchar("0",16u#,stht#,stdp#); "The number 0";
+ numeric balld; balld = .55h;
+ z1 = (.5w,matra_f*h/2);
+ golla (z1,balld);
+ penlabels(1);
+endchar;
+
+beginchar("1",16u#,stht#,stdp#); "The number 1";
+ numeric phi,xs,ys; xs = 20/45w; ys = 10/50h;
+ z1 = (13/45w,matra_f*45/50h);
+ z2l = z1 - (.5numball_two,0); penpos2(.8numball_two,0);
+ z3 = (34/45w,matra_f*18/50h); penpos3(3/45w,0);
+ z4 = .5[z3r,(w,y3r)];
+ z5l = (22/45w,matra_f*7/50h);
+ phi = angle(z4-z5l);
+ penpos5(.5ys,phi-90);
+ fill fullcircle scaled numball_two shifted z1;
+ fill z2l{down}..z3l..z5l--z5r..z3r{up}..{up}z2r--cycle;
+ fill fullcircle xscaled xs yscaled ys rotated phi shifted z5l;
+ penlabels(1,2,3,4,5,6);
+endchar;
+
+beginchar("2",16u#,stht#,stdp#); "The number 2";
+ z1 = (17/45w,matra_f*45/50h);
+ z2l = z1 - (.5numball_two,0); penpos2(.8numball_two,0);
+ z3 = (34/45w,matra_f*26/50h); penpos3(3/45w,0);
+ z4l = (22/45w,matra_f*20/50h);
+ z4r = (19/45w,matra_f*14/50h);
+ z5l = (6/45w,matra_f*26/50h);
+ z5r = (10/45w,matra_f*16/50h);
+ z6 = (43/45w,-ha_dip); penpos6(length(z3l-z3r),angle(z5r-z5l));
+ fill fullcircle scaled numball_two shifted z1;
+ fill z2l{down}..{down}z3l..{left}z4l..z5l--z5r..z4r{right}..z3r{up}..{up}z2r--cycle;
+ fill z5l..{z6l-z4l}z6l--z6r{z4r-z6r}..z5r--cycle;
+ penlabels(1,2,3,4,5,6);
+endchar;
+
+beginchar("3",16u#,stht#,stdp#); "The number 3";
+ numeric balld; balld = 1.2numball_one;
+ z1r = (21/45w,matra_f*33/50h); penpos1(.5balld,0);
+ z2l = (25/45w,matra_f*44/50h);
+ z2r = (28/45w,matra_f*39/50h);
+ z5r = (38/45w,matra_f*25/50h);
+ z5l = (41/45w,matra_f*23/50h);
+ z6r = (26/45w,matra_f*12/50h);
+ z6l = (26/45w,matra_f*5.5/50h);
+ z7r = (3.5/45w,matra_f*39/50h);
+ z7l = (1/45w,matra_f*40/50h);
+ fill fullcircle scaled balld shifted z1r;
+ fill z1l{up}..tension0.95..z2l{right}..{down}z5l--z5r{up}..z2r{left}..z1r--cycle;
+ fill z5r{down}..{left}z6r..{z7l-(x2l,0)}z7r--z7l{(x1r,0)-z7r}..tension1.2..z6l{right}..{up}z5l--cycle;
+ penlabels(1,2,3,4,5,6,7);
+endchar;
+
+beginchar("4",16u#,stht#,stdp#); "The number 4";
+ numeric w_one, w_two; w_one = matra_f*2.5/50h; w_two = 5/45w;
+ z1l = (22/45w,matra_f*48/50h); penpos1(w_one,-90);
+ z2 = (11/45w,matra_f*36/50h); penpos2(w_two,0);
+ z3l = (18/45w,matra_f*24/50h);
+ z3r = (28/45w,matra_f*26/50h); z3 = .5[z3l,z3r];
+ z4 = (35/45w,matra_f*13/50h); penpos4(w_two,0);
+ z5r = (x1,matra_f*h-y1l); penpos5(w_one,-90);
+ z6 = (11/45w,y4); penpos6(w_two,180);
+ z7l = (21/45w,matra_f*22/50h);
+ z7r = (24.5/45w,matra_f*27/50h); z7 = z3;
+ z8 = (34/45w,y2); penpos8(w_two,180);
+ pickup pencircle xscaled (length(z3l-z3r)) yscaled (matra_f*3/50h) rotated (angle(z3r-z3l));
+ penstroke z1e..z2e..z3e..z4e..z5e..z6e..z7e..z8e..cycle;
+ penlabels(1,2,3,4,5,6,7,8);
+endchar;
+
+beginchar("5",16u#,stht#,stdp#); "The number 5";
+ z1l = (30/45w,matra_f*48/50h);
+ z1r = (23.5/45w,matra_f*41/50h);
+ z2 = (6.5/45w,matra_f*20/50h); penpos2(4/45w,0);
+ z3l = (22/45w,matra_f*2.5/50h);
+ z3r = (26/45w,matra_f*5/50h);
+ z4l = (35/45w,matra_f*4.5/50h);
+ z5l = (31/45w,matra_f*7/50h);
+ z4r = z5l;
+ z5r = z3r;
+ penstroke z1e..{down}z2e..z3e..z4e;
+ fill z5l--z4l--z3r--cycle;
+ z6l = (24/45w,matra_f*14/50h);
+ z6r = (19/45w,matra_f*18/50h);
+ z7l = (29/45w,matra_f*27/50h);
+ z7r = (x6l,matra_f*30/50h);
+ z8l = (40/45w,matra_f*33/50h);
+ z8r = (x7l,matra_f*33/50h);
+ z9l = (31/45w,matra_f*40/50h);
+ z9r = (25/45w,matra_f*36/50h);
+ penstroke z5e..z6e{up}..z7e..z8e;
+ penstroke z8e..z9e..{up}z1e;
+ penlabels(1,2,3,4,5,6,7,8,9);
+endchar;
+
+beginchar("6",16u#,stht#,stdp#); "The number 6";
+ z1l = (14/45w,matra_f*43/50h); penpos1(.5numball_two,0);
+ z2l = (16/45w,matra_f*31/50h); penpos2(4/45w,0);
+ z3l = (25/45w,matra_f*21/50h);
+ z3r = (22.5/45w,matra_f*26/50h);
+ z4l = (36/45w,matra_f*29/50h);
+ z4r = (33.5/45w,matra_f*37/50h);
+ z5l = (39/45w,matra_f*22/50h);
+ z5r = (41.5/45w,matra_f*22/50h);
+ z6l = (26/45w,matra_f*10.5/50h);
+ z6r = (26/45w,matra_f*4.5/50h);
+ z7l = (3.5/45w,matra_f*39/50h);
+ z7r = (1/45w,matra_f*40/50h);
+ fill fullcircle scaled numball_two shifted z1l;
+ fill z1l--z2l{z2l-z1l}..z3l..tension2..z4l--z4r..tension2..z3r..z2r..tension3..z1r--cycle;
+ fill z4r..{down}z5r--z5l{up}..z4l--cycle;
+% baTi(z5l,z5r,z6r,z7r);
+ fill z5r{down}..{left}z6r..{z7l-(x2l,y6l)}z7r--z7l{(x2l,y6r)-z7r}..z6l{right}..{up}z5l--cycle;
+ penlabels(1,2,3,4,5,6,7);
+endchar;
+
+
+beginchar("7",16u#,stht#,stdp#); "The number 7";
+ z5r = (33/45w,matra_f*7/50h); penpos5(.5numball_two,0);
+ z4l = (28/45w,matra_f*26/50h); penpos4(stem_width,0);
+ z3' = (x4l,matra_f*30/50h);
+ z3l = (16/45w,y4l);
+ z3r = (x3l,y3');
+ z2l = (6.5/45w,matra_f*34/50h);
+ z2r = (11/45w,matra_f*31/50h);
+ z1l = (19/45w,matra_f*47/50h);
+ z1r = (22/45w,matra_f*43/50h);
+ fill fullcircle scaled numball_two shifted z5r;
+ fill z5l..z4l--z4l{left}..z3l..z2l{up}..{right}z1l..{down}z4r..z5r--cycle;
+ unfill z3'{left}..{left}z3r..z2r..tension1.5..z1r..tension2..cycle;
+ penlabels(1,2,3,3',4,5);
+endchar;
+
+beginchar("8",16u#,stht#,stdp#); "The number 8";
+ z1l = (6/45w,matra_f*43/50h); penpos1(.5numball_two,0);
+ z2r = (x1r,matra_f*27/50h); penpos2(stem_width,0);
+ z4l = (14/45w,matra_f*4/50h);
+ z4r = (x4l,matra_f*9/50h); z4 = .5[z4l,z4r];
+ z3r = (x1r,.7[y2,y4]); penpos3(stem_width,0);
+ z5l = (30/45w,matra_f*20/50h);
+ z5r = (26/45w,matra_f*23.5/50h);
+ z6l = (18/45w,matra_f*32/50h);
+ z6r = (x2r,matra_f*25/50h);
+ z7 = (32/45w,matra_f*28/50h);
+ z8 = (40/45w,matra_f*28.7/50h);
+ z9 = (43/45w,matra_f*33/50h);
+ fill fullcircle scaled numball_two shifted z1l;
+ path p; p = z4l..{up}z5l..tension1.2..{left}z6l{left};
+ fill z1l..{down}z2l..z3l{down}..{right}z4l..p..z2r--z1r--cycle;
+ unfill z6r{down}..{down}z3r..{right}z4r..tension1.8..z5r..tension2..z6r--cycle;
+ z10 = p intersectionpoint (z5r--z7);
+ pickup Tiki_pen;
+ draw z10..z7..z8..z9;
+ penlabels(1,2,3,4,5,6,7,8,9,10);
+endchar;
+
+beginchar("9",16u#,stht#,stdp#); "The number 9";
+ z1r = (15/45w,matra_f*7/50h); penpos1(.5numball_one,90);
+ z2l = (17/45w,matra_f*1/2h);
+ z2r = (16/45w,matra_f*22/50h);
+ z3l = (30/45w,matra_f*10/50h);
+ z3r = (25/45w,matra_f*3.5/50h);
+ z4 = (37.5/45w,matra_f*18/50h); penpos4(3/45w,0);
+ z5 = (x3r,matra_f*34/50h); penpos5(matra_f*5/50h,90);
+ z6l = (5/45w,matra_f*43/50h); penpos6(.5numball_two,0);
+ fill z1l{left}..{right}z2l..{down}z3l--z3r{up}..z2r{left}..z1r--cycle;
+ fill z3l..{up}z4l..z5l..{up}z6l--z6r{z4-z6}..z5r..z4r{down}..z3r--cycle;
+ fill fullcircle scaled numball_one shifted z1r;
+ fill fullcircle scaled numball_two shifted z6r;
+ penlabels(1,2,3,4,5,6,7);
+endchar;
+
+%%% End of bangnum.mf
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangpunc.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangpunc.mf
new file mode 100644
index 0000000000..897d2a0f77
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangpunc.mf
@@ -0,0 +1,248 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bangpunc.mf: METAFONT file that defines the Bangla punctuation symbols
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+beginchar(".",12u#,stht#,stdp#); "dnari (period)";
+ z1 = (w-rindent,0);
+ stem(x1);
+ matra(x1,x1);
+ picture shape_dnari; shape_dnari:=currentpicture;
+ penlabels(1);
+endchar;
+
+beginchar(14,15u#,stht#,stdp#); "double dnari";
+ currentpicture := shape_dnari;
+ currentpicture := currentpicture + currentpicture shifted (2stem_width,0);
+endchar;
+
+beginchar(15,25u#, stht#, stdp#); "Three dots";
+ numeric weff; weff = 3/4w;
+ z1 = (1/4weff,0); z2 = (1/2weff,0); z3 = (weff-x1,0);
+ fill fullcircle scaled dot_diam shifted z1;
+ fill fullcircle scaled dot_diam shifted z2;
+ fill fullcircle scaled dot_diam shifted z3;
+endchar;
+
+beginchar("!",12u#,stht#,stdp#); "exclamation mark";
+ numeric xx; xx = w - rindent;
+ z1 = (xx,matra_f*h); penpos1(.05w,0);
+ z2 = (xx,.65h); penpos2(.2w,0);
+ z3 = (xx,0); penpos3(.01w,0);
+ z0 = (xx,-ha_dip);
+ filldraw z1..z1l..{down}z2l{down}..z3l--cycle;
+ filldraw z1..z1r..{down}z2r{down}..z3r--cycle;
+ fill fullcircle scaled dot_diam shifted z0;
+ penlabels(1,2,3,0);
+endchar;
+
+beginchar(",",0.3stwd#,stht#,stdp#); "comma";
+ pickup pencircle scaled 0.5pt;
+ z1 = (2/3w,1/9h); z2 = (2/5w,-d);
+ draw z1{dir -60}..{dir -130}z2;
+ fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,-0.22pt));
+endchar;
+
+beginchar(":",0.3stwd#,stht#,stdp#); "colon";
+ z1 = (1/2w,1/6h); z2 = (1/2w,(3/4-1/6)*h);
+ fill fullcircle scaled 1.5pt shifted z1;
+ fill fullcircle scaled 1.5pt shifted z2;
+endchar;
+
+beginchar(";",0.3stwd#,stht#,stdp#); "semi colon";
+ pickup pencircle scaled 0.5pt;
+ z1 = (2/3w,1/9h); z2 = (2/5w,-d);
+ draw z1{dir -60}..{dir -130}z2;
+ fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,-0.22pt));
+ fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,1.8pt));
+endchar;
+
+beginchar("`",0.3stwd#,stht#,stdp#); "backquote";
+ pickup pencircle scaled 0.5pt;
+ z1 = (1/3w,(3/4-1/9)*h); z2 = (3/5w,h);
+ draw z1{dir 120}..{dir 50}z2;
+ fill fullcircle scaled 1.5pt shifted (z1 + (0.50pt,0.22pt));
+endchar;
+
+beginchar("'",0.3stwd#,stht#,stdp#); "quote";
+ pickup pencircle scaled 0.5pt;
+ z1 = (2/3w,24/25h); z2 = (2/5w,(3/4-1/9-1/25)*h);
+ draw z1{dir -60}..{dir -130}z2;
+ fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,-0.22pt));
+endchar;
+
+beginchar(1,0.45stwd#,stht#,stdp#); "double quote";
+ pickup pencircle scaled 0.5pt;
+ z1 = (2/5w,29/30h); z2 = (1/5w,(3/4-1/9-1/30)*h);
+ z1' = (4/5w,29/30h); z2' = (3/5w,(3/4-1/9-1/30)*h);
+ draw z1{dir -60}..{dir -130}z2;
+ draw z1'{dir -60}..{dir -130}z2';
+ fill fullcircle scaled 1.5pt shifted (z1 + (-0.50pt,-0.22pt));
+ fill fullcircle scaled 1.5pt shifted (z1' + (-0.50pt,-0.22pt));
+endchar;
+
+beginchar(2,0.45stwd#,stht#,stdp#); "double backquote";
+ pickup pencircle scaled 0.5pt;
+ z1 = (1/5w,(3/4-1/9)*h); z2 = (2/5w,h);
+ z1' = (3/5w,(3/4-1/9)*h); z2' = (4/5w,h);
+ draw z1{dir 120}..{dir 50}z2;
+ draw z1'{dir 120}..{dir 50}z2';
+ fill fullcircle scaled 1.5pt shifted (z1 + (0.50pt,0.22pt));
+ fill fullcircle scaled 1.5pt shifted (z1' + (0.50pt,0.22pt));
+endchar;
+
+beginchar("/",0.3stwd#,stht#,stdp#); "forward slash";
+ pickup pencircle scaled 0.5pt;
+ z1 = (7/8w,3/4h+2/3d); z2 = (1/8w,-2/3d);
+ draw z1--z2;
+endchar;
+
+beginchar("=",0.7stwd#,stht#,stdp#); "equality sign";
+ pickup pencircle scaled 0.5pt;
+ z3 = (1/10w,(1/4-1/30)*h); z4 = (9/10w,(1/4-1/30)*h);
+ z3' = (1/10w,(1/2-1/100)*h); z4' = (9/10w,(1/2-1/100)*h);
+ draw z3--z4; draw z3'--z4';
+endchar;
+
+beginchar("[",0.20stwd#,stht#,stdp#); "left square bracket";
+ pickup pencircle scaled 0.1pt;
+ z1=(w,h); z2 = (1/3w,h); z3 = (1/3w,-d); z4 = (w,-d);
+ z1 - z1' = (0,0.5pt); z2 - z2' = (-0.5pt,0.5pt);
+ z4 - z4' = (0,-0.5pt); z3 - z3' = (-0.5pt,-0.5pt);
+ filldraw z1--z2--z3--z4--z4'--z3'--z2'--z1'--cycle;
+endchar;
+
+beginchar("]",0.20stwd#,stht#,stdp#); "right square bracket";
+ pickup pencircle scaled 0.1pt;
+ z1=(0,h); z2 = (2/3w,h); z3 = (2/3w,-d); z4 = (0,-d);
+ z1 - z1' = (0,0.5pt); z2 - z2' = (0.5pt,0.5pt);
+ z4 - z4' = (0,-0.5pt); z3 - z3' = (0.5pt,-0.5pt);
+ filldraw z1--z2--z3--z4--z4'--z3'--z2'--z1'--cycle;
+endchar;
+
+beginchar("(",0.28stwd#,stht#,stdp#); "left parenthesis";
+ pickup pencircle scaled 0.1pt;
+ z1 = (8/9w,h); z3 = (8/9w,-d);
+ z2 = (1/4w,1/3h); z2' = z2 + (0.5pt,0);
+ filldraw z2'{up}..{dir 60}z1{dir -130}..{down}z2{down}
+ ..{dir -50}z3{dir 120}..cycle;
+ endchar;
+
+beginchar(")",0.28stwd#,stht#,stdp#); "right parenthesis";
+ pickup pencircle scaled 0.1pt;
+ z1 = (1/9w,h); z3 = (1/9w,-d);
+ z2 = (3/4w,1/3h); z2' = z2 - (0.5pt,0);
+ filldraw z2'{up}..{dir 120}z1{dir -50}..{down}z2{down}
+ ..{dir -130}z3{dir 60}..cycle;
+endchar;
+
+beginchar("*",0.48stwd#,stht#,stdp#); "asterisk";
+ numeric frac; frac = 1/8h;
+ z1 = (1/2w,h); z2 = (1/2w,3/7h);
+ z3 = (1/6w,h-frac); z4 = (5/6w,3/7h + frac);
+ z5 = (1/6w,3/7h+frac); z6 = (5/6w,h - frac);
+ pickup pencircle scaled 0.5pt;
+ draw z1--z2; draw z3--z4; draw z5--z6;
+endchar;
+
+beginchar("+",0.68stwd#,stht#,stdp#); "plus sign";
+ pickup pencircle scaled 0.5pt;
+ z1 = (.1w,.5matra_f*h); z2 = (w-x1,y1);
+ top z3 = (1/2w,matra_f*h); bot z4 = (x3,0);
+ draw z1--z2; draw z3--z4;
+ penlabels(1,2,3,4);
+endchar;
+
+beginchar("-",0.4stwd#,stht#,stdp#); "hyphen";
+ z1 = (1/9w,3/8h); penpos1(matra_t*h,90);
+ z2 = (w-x1,y1); penpos2(matra_t*h,90);
+ penstroke z1e--z2e;
+ penlabels(1,2);
+endchar;
+
+beginchar(8,0.60stwd#,stht#,stdp#); "endash";
+ pickup pencircle scaled (matra_t*h);
+ lft z1 = (0,3/8h); rt z2 = (w,3/8h);
+ draw z1--z2;
+ penlabels(1,2);
+endchar;
+
+beginchar(9,1.10stwd#,stht#,stdp#); "emdash";
+ pickup pencircle scaled (matra_t*h);
+ lft z1 = (0,3/8h); rt z2 = (w,3/8h);
+ draw z1--z2;
+ penlabels(1,2);
+endchar;
+
+beginchar("%",0.70stwd#,stht#,stdp#); "percent sign";
+ z1 = (5/6w,h); z2 = (1/6w,-1/3d);
+ pickup pencircle scaled 0.5pt;
+ draw z1--z2;
+ pickup pencircle xscaled 0.4pt yscaled 0.2pt;
+ draw fullcircle xscaled 11/40w yscaled 1/2h shifted (1/4w,3/4h);
+ draw fullcircle xscaled 11/40w yscaled 1/2h shifted (3/4w,-1/3d + 1/4h);
+ z3 = (11/40w,h);
+ pickup pencircle scaled 0.25pt;
+ draw z3{dir -45}..{dir 45}z1;
+endchar;
+
+beginchar("?",17u#,stht#,stdp#); "question mark";
+ numeric ww; ww=12/17w;
+ x3 = w - rindent;
+ z0 = (x0,3/5h);
+ pickup pencircle xscaled 0.5pt yscaled 0.25pt rotated -25;
+ lft z1=(x0-.5dot_diam,3/5h);
+ top z2=(x1+1/3ww,matra_f*h);
+ z3=(x2+1/3ww,3/5h);
+ z4=(x2,11/30h);
+ z5=(x2,1/7h);
+ z6 = (x5,0);
+ fill fullcircle scaled dot_diam shifted z0;
+ draw z1{up}..{right}z2{right}..{down}z3{down}..{dir -135}z4..{down}z5;
+ fill fullcircle scaled dot_diam shifted z6;
+ penlabels(0,1,2,3,4,5,6);
+endchar;
+
+beginchar("$",0.65stwd#,stht#,stdp#); "bucks";
+ z1 = (4/7w,h); z2 = (1/7w,-1/3d);
+ pickup pencircle scaled 0.5pt;
+ draw z1--z2;
+ z3 = (4/7w,3/7h); z4 = (8/9w,3/7h);
+ draw z3--z4;
+endchar;
+
+beginchar("|", 8u#, stht#, stdp#); "The pipe line";
+endchar;
+
+
+%%% End of bangpunc.mf
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangsl10.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangsl10.mf
new file mode 100644
index 0000000000..d25c843084
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangsl10.mf
@@ -0,0 +1,86 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bangsl10.mf: METAFONT file that defines the Bengali alphabet (slanted)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+
+mode_setup;
+font_size 10pt#;
+u# = 1/3pt#;
+s# = 1/3pt#;
+em# := 20pt#; cap# := 20pt#;
+thin# := 1/3pt#; thick# := 5/6pt#;
+o# := 1/5pt#;
+define_pixels(em,cap);
+define_blacker_pixels(thin,thick);
+define_corrected_pixels(o);
+numeric stwd, stht, stdp, penth;
+numeric stem_width, stem_slope;
+numeric matra_thickness, matra_f, matra_h,matra_t, matra_slope;
+numeric dot_diam, ball_hang, ha_dip;
+numeric lindent, rindent;
+numeric xmag; xmag = 1;
+%%%%%%%%%%%%%%%%%%%%%%%%%
+%% matra_thickness should be removed at the end
+%%%%%%%%%%%%%%%%%%%%%%%%%
+stwd# = 10pt#; stht# = 8pt#; stdp# = 2pt#;
+penth# = 0.4pt; dflt_pen := savepen;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+stem_width = xmag*.55pt;
+stem_slope = 45;
+dot_diam = 1pt; % diameter of dots in "ra", "ya" etc.
+matra_thickness = .75pt;
+matra_slope = 115;
+matra_f = .75; % fraction of h where normally the top end of matras rest
+matra_t = 3/50; % thickness of matras as a fraction of matra_f
+matra_h = matra_f-.5matra_t;
+ball_hang = .7pt;
+ha_dip = .7pt; % the depth by which the end of "ha" dips below baseline
+lindent = 1.5stem_width;
+rindent = 1.5stem_width;
+numball_one = 9/50*8pt; % large balls used in numerals
+numball_two = 0.8*numball_one; % small balls used in numerals
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_quad 18u#+2s#;
+font_normal_space 9u#+3s#;
+font_normal_stretch 3u#;
+font_normal_shrink 2u#;
+numeric slantval; slantval = .15;
+currenttransform := identity slanted slantval;
+
+
+input bangbase;
+end;
+
+%%% End of bangsl10.mf
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangvow.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangvow.mf
new file mode 100644
index 0000000000..4eec510dab
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangvow.mf
@@ -0,0 +1,227 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bangvow.mf: METAFONT file that defines bangla vowels
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+beginchar("A", 21u#, stht#, stdp#); "The letter a";
+ numeric xstem,balld,wta,height;
+ wta=31/40w; height = matra_f*h;
+ xstem = w-rindent; balld = 14/50height;
+ matra(0,w);
+% The ball
+ z1l = (25/57w,35/50height); penpos1(.5balld,120);
+ fill fullcircle scaled balld shifted (z1l);
+% Joining the ball and the cup
+ z2r = z1l + .5balld * (1.1dir(90) + .5 dir(0)) ;
+ z2l = z1l + .5balld * dir(35); z2 = .5[z2l,z2r];
+% The cup at the bottom
+ z3l = (40/57w,28/50height);
+ z3r = (43/57w,26.5/50height);
+ z4l = (29/57w,18/50height);
+ z4r = (32/57w,11/50height);
+ z5l = (5/57w,42/50height);
+ z5r = (3/57w,43/50height);
+ z6 = (0,63/50height);
+ path p; p = z4r{right}..{up}z3r{up}..{left}z2r;
+ fill z1l..z2l{right}..{down}z3l{down}..z4l{left}..tension1.4..{z6-z5l}z5l--z5r{z5r-z6}..tension1.4..{right}p{left}..z1r--cycle;
+% The stem and the hook
+ z7 = p intersectionpoint ((0,25/50height)--(w,25/50height));
+ z8 = p intersectionpoint ((0,20/50height)--(w,20/50height));
+ z9 = (xstem,height);
+ phil = angle(z3l-z2r); phir = angle(z3l-z2l);
+ Hookstem(z7,z8,z9,0,phil,phir);
+% The little Tiki at the top
+ z12l = (18/57w,matra_h*h); penpos12(6/57w,0);
+ fill z2r{z2r-z2l}..z12r--z12l{z2r-z12l}..z2l--cycle;
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12);
+endchar;
+
+beginchar("I", 14.5u#, stht#, stdp#); "The letter hraswa i";
+ numeric height; height = matra_f*h;
+ Ha(0,0,w,height);
+% The matra and the Tiki
+ matra(0,w);
+ Tiki(.9w,.07w);
+endchar;
+
+beginchar(141,18u#, stht#,stdp#); "The letter dirgha I";
+ numeric balld,height,phii,phiii;
+ height=matra_f*h; balld = 13/50height; phii=0; phiii = 120;
+ matra(0,w);
+%% The ball
+ z2l = (12/50w,35/50height); penpos2(.5balld,phii);
+ fill fullcircle scaled balld shifted z2l;
+%% The line from matra to ball
+ z1l = (6/50w,(matra_h-.5matra_t)*h); penpos1(8/50w,0);
+ fill z1l{right}..z2l--z2r{dir (phii+90)}..z1r--cycle;
+%% The upward going part
+ z5l = (8.5/50w,23/50height);
+ z5r = (7.5/50w,22/50height); z5 = .5[z5l,z5r];
+ z6l = (14/50w,19/50height);
+ z6r = (17/50w,12/50height); z6 = .5[z6l,z6r];
+ penstroke z5e..{right}z6e;
+ z7l = (41/50w,41/50height);
+ z7r = (46/50w,37/50height); z7 = .5[z7l,z7r];
+ path ptop,pbot;
+ ptop = z6l{right}..tension1.5..{z7r-z5l}z7l;
+ pbot = z7r{z5l-z7r}..tension1.5..{left}z6r;
+ fill ptop--pbot--cycle;
+%% The part connecting the ball with the upward going line
+ z3l = z2l; penpos3(.5balld,phiii);
+ z4r = (ptop intersectionpoint ((28/50w,height)--(28/50w,0))) - .05(0,y6l-y6r);
+ z4l = (ptop intersectionpoint ((19/50w,height)--(19/50w,0))) - .05(0,y6l-y6r);
+ fill z3r{dir (phiii-90)}..{down}z4r--z6r--z4l{z4r-z4l}..z3l--cycle;
+%% The downward going part at the right end
+ z8l = (34/50w,24/50height);
+ z8r = (37.5/50w,23/50height);
+ z9l = (38/50w,2/50height);
+ z9r = (41/50w,0);
+ fill flex(z7l,z8l,z9l)--flex(z9r,z8r,z7r)--cycle;
+%% The Tiki
+ Tiki(x7,.05w);
+ penlabels(1,2,3,4,5,6,7,8,9);
+endchar;
+
+
+beginchar("U",18u#, stht#,stdp#); "The letter hraswa u";
+ numeric height; height = matra_f*h;
+ Da(0,0,w,height,.88);
+ matra(0,w);
+ Tiki(.9w,.1w);
+endchar;
+
+beginchar(143,19u#, stht#,stdp#); "The letter dirgha u";
+% %%% The first part is the definition of "Da"
+ numeric xstem,height,shift;
+ xstem = .5w; height=matra_f*h; shift = .06w;
+% The vertical part
+ z1 = (xstem,height); penpos1(stem_width,0);
+ z2 = (x1,31/50height); penpos2(stem_width,0);
+ z3l = (27.5/49w,21.5/50height);
+ z3r= (x3l+1/49w,28/50height);
+ fill z1l..{down}z2l..{right}z3l--z3r{left}..{up}z2r--z1r--cycle;
+% The part going up
+ z4l = (42.5/49w,30/50height);
+ z4r = (40/49w,38/50height);
+ fill z3l{right}..tension1.5..z4l--z4r..tension1.8..{left}z3r--cycle;
+% The first cup
+ z5l = (44/49w,27/50height); penpos5(3/50w,0);
+ z6l = (29.5/49w,12/50height);
+ z6r = (31/49w,5/50height);
+ z7l = (7/49w,43/50height) + (shift,0);
+ z7r = (5/49w,44/50height) + (shift,0);
+ z8 = (0,63/50height); penpos8(shift,0);
+ fill z4l..{down}z5l..{left}z6l{left}..{z8r-z7l}z7l--z7r{z7r-z8r}..{right}z6r{right}..z5r{up}..z4r--cycle;
+% The second cup
+ z8' = (0,height);
+ z7'l = (7/49w,43/50height) - (shift,0);
+ z7'r = (5/49w,44/50height) - (shift,0);
+ fill z4l..{down}z5l..{left}z6l{left}..{z8l-z7'l}z7'l--z7'r{z7'r-z8l}..{right}z6r{right}..z5r{up}..z4r--cycle;
+% matra and tiki
+ matra(0,w);
+ Tiki(.9w,.1w);
+ penlabels(1,2,3,4,5,6,7,7',8,8');
+endchar;
+
+beginchar(145,20u#, stht#,stdp#); "The letter RI";
+ numeric xstem,height,balld,phi,wkha; wkha = 16/20w;
+ xstem=wkha-rindent; height=matra_f*h; balld=.18h; phi=-90;
+ matra(xstem,xstem);
+ z2l = (7.5/43wkha,43/50height);
+ z2r = z2l + .5balld * dir(phi) + .02wkha * dir(phi+90);
+ z3l = (.5wkha,matra_f*h);
+ z3r = (.52wkha,.63h);
+ z4l = (wkha-rindent-.5stem_width,38/50height);
+ penpos4(stem_width,180);
+ z5r = (6/43wkha,30/50height);
+ z6l = (13/43wkha,22/50height);
+ z5l = .7[z5r,z6l];
+ z6r = z5r;
+ z7 = (xstem,height);
+ fill fullcircle scaled balld shifted (z2l);
+ penstroke z2e{right}..z3e;
+ penstroke z3e--z4e;
+ penstroke z4e{down}..{left}z5e;
+ Hookstem(z6r,z6l,z7,0,0,0);
+% The right stem and the connector
+ z12 = (w-rindent,height);
+ z13 = (xstem,.43h);
+ z14 = (x13,.35h);
+ Hookstem(z13,z14,z12,.1h,0,0);
+ matra(x12,x12);
+ penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14);
+endchar;
+
+
+
+beginchar(147,17.5u#, stht#,stdp#); "The letter peT-kaTa e (ae)";
+ E(0,0,w,h);
+% The cross line
+ z9 = (w,.4h); z10 = (w-2rindent,y9);
+ pickup penrazor xscaled 1.5stem_width rotated 90;
+ draw z9--z10;
+ penlabels(9,10);
+endchar;
+
+beginchar("E",17.5u#, stht#,stdp#); "The letter e";
+ E(0,0,w,h);
+endchar;
+
+beginchar(149,17.5u#, stht#,stdp#); "The letter oi";
+ numeric height; height = matra_f*h;
+ pickup Tiki_pen;
+ z1 = (w-rindent,38/50height);
+ rt x2 = w; y2 = height;
+ z3 = (19/48w,1.1h);
+ draw z1..{up}z2{up}..{dir 60}z3;
+ penlabels(1,2,3);
+ E(0,0,w,h);
+endchar;
+
+beginchar("O",18.5u#,stht#,stdp#); "The letter o";
+ O(0,0,w,h);
+endchar;
+
+beginchar(151,18.5u#, stht#,stdp#); "The letter ou";
+ numeric height; height = matra_f*h;
+ pickup Tiki_pen;
+ z1 = (rballx,rbally);
+ rt x2 = w; y2 = height;
+ z3 = (18/52w,1.1h);
+ draw z1..{up}z2..{dir 60}z3;
+ penlabels(1,2,3,4,5,6,7,8,9);
+ O(0,0,w,h);
+endchar;
+
+%% end of bangvow.mf \ No newline at end of file
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangwd10.mf b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangwd10.mf
new file mode 100644
index 0000000000..04fa04c4de
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/source/bangla/bangwd10.mf
@@ -0,0 +1,85 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bang10.mf: METAFONT file that defines the Bengali alphabet (wide)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+mode_setup;
+font_size 10pt#;
+u# = .4pt#;
+s# = 1/3pt#;
+em# := 20pt#; cap# := 20pt#;
+thin# := 1/3pt#; thick# := 5/6pt#;
+o# := 1/5pt#;
+define_pixels(em,cap);
+define_blacker_pixels(thin,thick);
+define_corrected_pixels(o);
+numeric stwd, stht, stdp, penth;
+numeric stem_width, stem_slope;
+numeric matra_thickness, matra_f, matra_h,matra_t, matra_slope;
+numeric dot_diam, ball_hang, ha_dip;
+numeric lindent, rindent;
+numeric xmag; xmag=.4/.33;
+%%%%%%%%%%%%%%%%%%%%%%%%%
+%% matra_thickness should be removed at the end
+%%%%%%%%%%%%%%%%%%%%%%%%%
+stwd# = 10pt#; stht# = 8pt#; stdp# = 2pt#;
+penth# = 0.4pt; dflt_pen := savepen;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+stem_width = xmag*.55pt;
+stem_slope = 45;
+dot_diam = 1pt; % diameter of dots in "ra", "ya" etc.
+matra_thickness = .75pt;
+matra_slope = 115;
+matra_f = .75; % fraction of h where normally the top end of matras rest
+matra_t = 3/50; % thickness of matras as a fraction of matra_f
+matra_h = matra_f-.5matra_t;
+ball_hang = .7pt;
+ha_dip = .7pt; % the depth by which the end of "ha" dips below baseline
+lindent = 1.5stem_width;
+rindent = 1.5stem_width;
+numball_one = 9/50*8pt; % large balls used in numerals
+numball_two = 0.8*numball_one; % small balls used in numerals
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+font_quad 18u#+2s#;
+font_normal_space 9u#+3s#;
+font_normal_stretch 3u#;
+font_normal_shrink 2u#;
+numeric slantval; slantval = 0;
+
+
+
+input bangbase;
+end;
+
+%%% End of bangwd10.mf
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/type1/bangla/bang10.pfb b/macros/omega/latex/contrib/bengali-omega/fonts/type1/bangla/bang10.pfb
new file mode 100644
index 0000000000..8a31182adf
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/type1/bangla/bang10.pfb
Binary files differ
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/type1/bangla/bangsl10.pfb b/macros/omega/latex/contrib/bengali-omega/fonts/type1/bangla/bangsl10.pfb
new file mode 100644
index 0000000000..983a7a56b9
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/type1/bangla/bangsl10.pfb
Binary files differ
diff --git a/macros/omega/latex/contrib/bengali-omega/fonts/type1/bangla/bangwd10.pfb b/macros/omega/latex/contrib/bengali-omega/fonts/type1/bangla/bangwd10.pfb
new file mode 100644
index 0000000000..65d4f93dc4
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/fonts/type1/bangla/bangwd10.pfb
Binary files differ
diff --git a/macros/omega/latex/contrib/bengali-omega/omega/ocp/bangla-uni01.ocp b/macros/omega/latex/contrib/bengali-omega/omega/ocp/bangla-uni01.ocp
new file mode 100644
index 0000000000..fa4ff1dd49
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/omega/ocp/bangla-uni01.ocp
Binary files differ
diff --git a/macros/omega/latex/contrib/bengali-omega/omega/ocp/bangla-uni01forDevanagari.ocp b/macros/omega/latex/contrib/bengali-omega/omega/ocp/bangla-uni01forDevanagari.ocp
new file mode 100644
index 0000000000..806d8d2da3
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/omega/ocp/bangla-uni01forDevanagari.ocp
Binary files differ
diff --git a/macros/omega/latex/contrib/bengali-omega/omega/ocp/bangla-uni2bang.ocp b/macros/omega/latex/contrib/bengali-omega/omega/ocp/bangla-uni2bang.ocp
new file mode 100644
index 0000000000..5cf8b9acae
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/omega/ocp/bangla-uni2bang.ocp
Binary files differ
diff --git a/macros/omega/latex/contrib/bengali-omega/omega/ocp/beng-uni2cuni.ocp b/macros/omega/latex/contrib/bengali-omega/omega/ocp/beng-uni2cuni.ocp
new file mode 100644
index 0000000000..a5083e78b6
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/omega/ocp/beng-uni2cuni.ocp
Binary files differ
diff --git a/macros/omega/latex/contrib/bengali-omega/omega/ocp/beng-uni2cuni2.ocp b/macros/omega/latex/contrib/bengali-omega/omega/ocp/beng-uni2cuni2.ocp
new file mode 100644
index 0000000000..1c09b50695
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/omega/ocp/beng-uni2cuni2.ocp
Binary files differ
diff --git a/macros/omega/latex/contrib/bengali-omega/omega/ocp/bengvelthuis2unicode.ocp b/macros/omega/latex/contrib/bengali-omega/omega/ocp/bengvelthuis2unicode.ocp
new file mode 100644
index 0000000000..b920f52833
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/omega/ocp/bengvelthuis2unicode.ocp
Binary files differ
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/Ubang.fd b/macros/omega/latex/contrib/bengali-omega/tex/latex/Ubang.fd
new file mode 100644
index 0000000000..4ff6d46611
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/Ubang.fd
@@ -0,0 +1,81 @@
+%%
+%% This is file `Ubang.fd',
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Permission is granted to copy this file to another file with a
+%% clearly different name and to customize the declarations in that
+%% copy to serve the needs of your installation.
+%%
+%% However, NO PERMISSION is granted to generate or to distribute a
+%% modified version of this file under its original name.
+%%
+%% You are NOT ALLOWED to change this file.
+%%
+%%
+%% MODIFICATION ADVICE:
+%%
+%% If you want to customize this file, it is best to make a copy of
+%% the source file(s) from which it was produced. Use a different
+%% name for your copy(ies) and modify the copy(ies); this will ensure
+%% that your modifications do not get overwritten when you install a
+%% new release of the standard system. You should also ensure that
+%% your modified source file does not generate any modified file with
+%% the same name as a standard file.
+%%
+%% You can then easily distribute your modifications by distributing
+%% the modified and renamed copy of the source file. This will ensure
+%% that other users can safely use your modifications.
+%%
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+
+\ProvidesFile{Ubang.fd}[2002/06/01 Bangla font definition file (pbp)]
+\DeclareFontFamily{U}{bang}{}
+\DeclareFontShape{U}{bang}{m}{n}
+{ <-10> bang10
+ <10-> bang10
+}{}\endinput
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/autobm.tex b/macros/omega/latex/contrib/bengali-omega/tex/latex/autobm.tex
new file mode 100644
index 0000000000..28a620ea4f
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/autobm.tex
@@ -0,0 +1,42 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% Defining the bangla numerals for default in math mode
+%%
+\textfont0=\bngx \scriptfont0=\bngvii \scriptscriptfont0=\bngv
+\textfont1=\bnsx \scriptfont1=\bnsvii \scriptscriptfont1=\bnsv
+\textfont2=\tensy \scriptfont2=\sevensy \scriptscriptfont2=\fivesy
+\textfont3=\tenex \scriptfont3=\tenex \scriptscriptfont3=\tenex
+\textfont4=\tenrm \scriptfont4=\sevenrm \scriptscriptfont4=\fiverm
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/bangfont.tex b/macros/omega/latex/contrib/bengali-omega/tex/latex/bangfont.tex
new file mode 100644
index 0000000000..d1e4c5d70b
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/bangfont.tex
@@ -0,0 +1,132 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% Defining the standard (normal, upright) bangla fonts
+%%
+\font\bngv=bang10 scaled 500
+\font\bngvi=bang10 scaled 600
+\font\bngvii=bang10 scaled 700
+\font\bngviii=bang10 scaled 800
+\font\bngix=bang10 scaled 900
+\font\bngx=bang10
+\font\bngxi=bang10 scaled 1100
+\font\bngxii=bang10 scaled 1200
+\font\bngxiv=bang10 scaled 1400
+\font\bngxviii=bang10 scaled 1800
+\font\bngxxii=bang10 scaled 2200
+\font\bngxxv=bang10 scaled 2500
+\font\bngxxx=bang10 scaled 3000
+
+%%
+%% Defining the slanted bangla fonts
+%%
+\font\bnsv=bangsl10 scaled 500
+\font\bnsvi=bangsl10 scaled 600
+\font\bnsvii=bangsl10 scaled 700
+\font\bnsviii=bangsl10 scaled 800
+\font\bnsix=bangsl10 scaled 900
+\font\bnsx=bangsl10
+\font\bnsxi=bangsl10 scaled 1100
+\font\bnsxii=bangsl10 scaled 1200
+\font\bnsxiv=bangsl10 scaled 1400
+\font\bnsxviii=bangsl10 scaled 1800
+\font\bnsxxii=bangsl10 scaled 2200
+\font\bnsxxv=bangsl10 scaled 2500
+\font\bnsxxx=bangsl10 scaled 3000
+
+%%
+%% Defining the wide bangla fonts
+%%
+\font\bnwv=bangwd10 scaled 500
+\font\bnwvi=bangwd10 scaled 600
+\font\bnwvii=bangwd10 scaled 700
+\font\bnwviii=bangwd10 scaled 800
+\font\bnwix=bangwd10 scaled 900
+\font\bnwx=bangwd10
+\font\bnwxi=bangwd10 scaled 1100
+\font\bnwxii=bangwd10 scaled 1200
+\font\bnwxiv=bangwd10 scaled 1400
+\font\bnwxviii=bangwd10 scaled 1800
+\font\bnwxxii=bangwd10 scaled 2200
+\font\bnwxxv=bangwd10 scaled 2500
+\font\bnwxxx=bangwd10 scaled 3000
+
+
+%%
+%% Defining the hollow bangla fonts
+%%
+\font\bnhv=banghl10 scaled 500
+\font\bnhvi=banghl10 scaled 600
+\font\bnhvii=banghl10 scaled 700
+\font\bnhviii=banghl10 scaled 800
+\font\bnhix=banghl10 scaled 900
+\font\bnhx=banghl10
+\font\bnhxi=banghl10 scaled 1100
+\font\bnhxii=banghl10 scaled 1200
+\font\bnhxiv=banghl10 scaled 1400
+\font\bnhxviii=banghl10 scaled 1800
+\font\bnhxxii=banghl10 scaled 2200
+\font\bnhxxv=banghl10 scaled 2500
+\font\bnhxxx=banghl10 scaled 3000
+
+
+%%
+%% Inhibiting linebreak within words
+%%
+\hyphenpenalty=10000 \pretolerance=-1 \tolerance=10000
+
+%%
+%% Defining the macro for e-kar, i-kar etc
+%%
+\def\*#1*#2{o\null{#2}{#1}}
+
+%%
+%% Redefining some macros to make them consistent with bangla fonts
+%%
+\def\d#1{\oalign{\smash{#1}\crcr\hidewidth{$\!$\rm.}\hidewidth}}
+
+
+%%
+%% Page number in bangla
+%%
+%\footline{\hss\bngxi\folio\hss}
+%\headline{\hfil}
+
+%%
+%% Emulating the bold font
+%%
+\def\sh#1{\setbox0=\hbox{#1}%
+ \kern-.02em\copy0\kern-\wd0
+ \kern.04em\copy0\kern-\wd0
+ \kern-.02em\raise.0433em\box0 }
+
+
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/barticle.cls b/macros/omega/latex/contrib/bengali-omega/tex/latex/barticle.cls
new file mode 100644
index 0000000000..051d7e394d
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/barticle.cls
@@ -0,0 +1,732 @@
+%%
+%% This is file `barticle.cls',
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Permission is granted to copy this file to another file with a
+%% clearly different name and to customize the declarations in that
+%% copy to serve the needs of your installation.
+%%
+%% However, NO PERMISSION is granted to generate or to distribute a
+%% modified version of this file under its original name.
+%%
+%% You are NOT ALLOWED to change this file.
+%%
+%%
+%% MODIFICATION ADVICE:
+%%
+%% If you want to customize this file, it is best to make a copy of
+%% the source file(s) from which it was produced. Use a different
+%% name for your copy(ies) and modify the copy(ies); this will ensure
+%% that your modifications do not get overwritten when you install a
+%% new release of the standard system. You should also ensure that
+%% your modified source file does not generate any modified file with
+%% the same name as a standard file.
+%%
+%% You can then easily distribute your modifications by distributing
+%% the modified and renamed copy of the source file. This will ensure
+%% that other users can safely use your modifications.
+%%
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesClass{barticle}
+ [2001/04/15 v1.2
+ LaTeX document class for bangtex]
+\newcommand\@ptsize{}
+\newif\if@restonecol
+\newif\if@titlepage
+\@titlepagefalse
+\if@compatibility\else
+\DeclareOption{a4paper}
+ {\setlength\paperheight {297mm}%
+ \setlength\paperwidth {210mm}}
+\DeclareOption{a5paper}
+ {\setlength\paperheight {210mm}%
+ \setlength\paperwidth {148mm}}
+\DeclareOption{b5paper}
+ {\setlength\paperheight {250mm}%
+ \setlength\paperwidth {176mm}}
+\DeclareOption{letterpaper}
+ {\setlength\paperheight {11in}%
+ \setlength\paperwidth {8.5in}}
+\DeclareOption{legalpaper}
+ {\setlength\paperheight {14in}%
+ \setlength\paperwidth {8.5in}}
+\DeclareOption{executivepaper}
+ {\setlength\paperheight {10.5in}%
+ \setlength\paperwidth {7.25in}}
+\DeclareOption{landscape}
+ {\setlength\@tempdima {\paperheight}%
+ \setlength\paperheight {\paperwidth}%
+ \setlength\paperwidth {\@tempdima}}
+\fi
+\if@compatibility
+ \renewcommand\@ptsize{0}
+\else
+\DeclareOption{10pt}{\renewcommand\@ptsize{0}}
+\fi
+\DeclareOption{11pt}{\renewcommand\@ptsize{1}}
+\DeclareOption{12pt}{\renewcommand\@ptsize{2}}
+\if@compatibility\else
+\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
+\fi
+\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
+\DeclareOption{draft}{\setlength\overfullrule{5pt}}
+\if@compatibility\else
+\DeclareOption{final}{\setlength\overfullrule{0pt}}
+\fi
+\DeclareOption{titlepage}{\@titlepagetrue}
+\if@compatibility\else
+\DeclareOption{notitlepage}{\@titlepagefalse}
+\fi
+\if@compatibility\else
+\DeclareOption{onecolumn}{\@twocolumnfalse}
+\fi
+\DeclareOption{twocolumn}{\@twocolumntrue}
+\DeclareOption{leqno}{\input{leqno.clo}}
+\DeclareOption{fleqn}{\input{fleqn.clo}}
+\DeclareOption{openbib}{%
+ \AtEndOfPackage{%
+ \renewcommand\@openbib@code{%
+ \advance\leftmargin\bibindent
+ \itemindent -\bibindent
+ \listparindent \itemindent
+ \parsep \z@
+ }%
+ \renewcommand\newblock{\par}}%
+}
+\ExecuteOptions{letterpaper,10pt,oneside,onecolumn,final}
+\ProcessOptions
+\input bangfont
+\input{bsize1\@ptsize.clo}
+\setlength\lineskip{1\p@}
+\setlength\normallineskip{1\p@}
+\renewcommand\baselinestretch{}
+\setlength\parskip{0\p@ \@plus \p@}
+\@lowpenalty 51
+\@medpenalty 151
+\@highpenalty 301
+\setcounter{topnumber}{2}
+\renewcommand\topfraction{.7}
+\setcounter{bottomnumber}{1}
+\renewcommand\bottomfraction{.3}
+\setcounter{totalnumber}{3}
+\renewcommand\textfraction{.2}
+\renewcommand\floatpagefraction{.5}
+\setcounter{dbltopnumber}{2}
+\renewcommand\dbltopfraction{.7}
+\renewcommand\dblfloatpagefraction{.5}
+\if@twoside
+ \def\ps@headings{%
+ \let\@oddfoot\@empty\let\@evenfoot\@empty
+ \def\@evenhead{\thepage\hfil\slshape\leftmark}%
+ \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+ \let\@mkboth\markboth
+ \def\sectionmark##1{%
+ \markboth {{%
+ \ifnum \c@secnumdepth >\z@
+ \thesection\quad
+ \fi
+ ##1}}{}}%
+ \def\subsectionmark##1{%
+ \markright {%
+ \ifnum \c@secnumdepth >\@ne
+ \thesubsection\quad
+ \fi
+ ##1}}}
+\else
+ \def\ps@headings{%
+ \let\@oddfoot\@empty
+ \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+ \let\@mkboth\markboth
+ \def\sectionmark##1{%
+ \markright {\MakeUppercase{%
+ \ifnum \c@secnumdepth >\m@ne
+ \thesection\quad
+ \fi
+ ##1}}}}
+\fi
+\def\ps@myheadings{%
+ \let\@oddfoot\@empty\let\@evenfoot\@empty
+ \def\@evenhead{\thepage\hfil\slshape\leftmark}%
+ \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+ \let\@mkboth\@gobbletwo
+ \let\sectionmark\@gobble
+ \let\subsectionmark\@gobble
+ }
+ \if@titlepage
+ \newcommand\maketitle{\begin{titlepage}%
+ \let\footnotesize\small
+ \let\footnoterule\relax
+ \let \footnote \thanks
+ \null\vfil
+ \vskip 60\p@
+ \begin{center}%
+ {\LARGE \@title \par}%
+ \vskip 3em%
+ {\large
+ \lineskip .75em%
+ \begin{tabular}[t]{c}%
+ \@author
+ \end{tabular}\par}%
+ \vskip 1.5em%
+ {\lbng \@date \par}% % Set date in \large size.
+ \end{center}\par
+ \@thanks
+ \vfil\null
+ \end{titlepage}%
+ \setcounter{footnote}{0}%
+ \global\let\thanks\relax
+ \global\let\maketitle\relax
+ \global\let\@thanks\@empty
+ \global\let\@author\@empty
+ \global\let\@date\@empty
+ \global\let\@title\@empty
+ \global\let\title\relax
+ \global\let\author\relax
+ \global\let\date\relax
+ \global\let\and\relax
+}
+\else
+\newcommand\maketitle{\par
+ \begingroup
+ \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
+ \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}%
+ \long\def\@makefntext##1{\parindent 1em\noindent
+ \hb@xt@1.8em{%
+ \hss\@textsuperscript{\normalfont\@thefnmark}}##1}%
+ \if@twocolumn
+ \ifnum \col@number=\@ne
+ \@maketitle
+ \else
+ \twocolumn[\@maketitle]%
+ \fi
+ \else
+ \newpage
+ \global\@topnum\z@ % Prevents figures from going at top of page.
+ \@maketitle
+ \fi
+ \thispagestyle{plain}\@thanks
+ \endgroup
+ \setcounter{footnote}{0}%
+ \global\let\thanks\relax
+ \global\let\maketitle\relax
+ \global\let\@maketitle\relax
+ \global\let\@thanks\@empty
+ \global\let\@author\@empty
+ \global\let\@date\@empty
+ \global\let\@title\@empty
+ \global\let\title\relax
+ \global\let\author\relax
+ \global\let\date\relax
+ \global\let\and\relax
+}
+\def\@maketitle{%
+ \newpage
+ \null
+ \vskip 2em%
+ \begin{center}%
+ \let \footnote \thanks
+ {\LBng \@title \par}%
+ \vskip 1.5em%
+ {\large
+ \lineskip .5em%
+ \begin{tabular}[t]{c}%
+ \Lbng\@author
+ \end{tabular}\par}%
+ \vskip 1em%
+ {\lbng \@date}%
+ \end{center}%
+ \par
+ \vskip 1.5em}
+\fi
+\setcounter{secnumdepth}{5}
+\newcounter {part}
+\newcounter {section}
+\newcounter {subsection}[section]
+\newcounter {subsubsection}[subsection]
+\newcounter {paragraph}[subsubsection]
+\newcounter {subparagraph}[paragraph]
+\renewcommand \thepart {\@Roman\c@part}
+\renewcommand \thesection {\@arabic\c@section}
+\renewcommand\thesubsection {\thesection$\cdot$\@arabic\c@subsection}
+\renewcommand\thesubsubsection{\thesubsection .\@arabic\c@subsubsection}
+\renewcommand\theparagraph {\thesubsubsection.\@arabic\c@paragraph}
+\renewcommand\thesubparagraph {\theparagraph.\@arabic\c@subparagraph}
+
+
+\newcommand\part{%
+ \if@noskipsec \leavevmode \fi
+ \par
+ \addvspace{4ex}%
+ \@afterindentfalse
+ \secdef\@part\@spart}
+
+\def\@part[#1]#2{%
+ \ifnum \c@secnumdepth >\m@ne
+ \refstepcounter{part}%
+ \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
+ \else
+ \addcontentsline{toc}{part}{#1}%
+ \fi
+ {\parindent \z@ \raggedright
+ \interlinepenalty \@M
+ \normalfont
+ \ifnum \c@secnumdepth >\m@ne
+ \Large\bfseries \partname~\thepart
+ \par\nobreak
+ \fi
+ \huge \bfseries #2%
+ \markboth{}{}\par}%
+ \nobreak
+ \vskip 3ex
+ \@afterheading}
+\def\@spart#1{%
+ {\parindent \z@ \raggedright
+ \interlinepenalty \@M
+ \normalfont
+ \huge \bfseries #1\par}%
+ \nobreak
+ \vskip 3ex
+ \@afterheading}
+\newcommand\section{\@startsection {section}{1}{\z@}%
+ {-25pt \@plus -10pt \@minus -2pt}%
+ {13pt \@plus2pt}%
+ {\LBng}}
+\newcommand\subsection{\@startsection{subsection}{2}{\z@}%
+ {-15pt\@plus -8pt \@minus -2pt}%
+ {10pt \@plus 2pt}%
+ {\Lbng}}
+\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
+ {-10pt\@plus -5pt \@minus -1pt}%
+ {8pt \@plus 2pt}%
+ {\lbng}}
+\newcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
+ {-8pt \@plus 3pt \@minus 1pt}%
+ {-1em}%
+ {\lbng}}
+\newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
+ {-8pt \@plus 3pt \@minus 1pt}%
+ {-1em}%
+ {\bng}}
+\if@twocolumn
+ \setlength\leftmargini {2em}
+\else
+ \setlength\leftmargini {2.5em}
+\fi
+\leftmargin \leftmargini
+\setlength\leftmarginii {2.2em}
+\setlength\leftmarginiii {1.87em}
+\setlength\leftmarginiv {1.7em}
+\if@twocolumn
+ \setlength\leftmarginv {.5em}
+ \setlength\leftmarginvi {.5em}
+\else
+ \setlength\leftmarginv {1em}
+ \setlength\leftmarginvi {1em}
+\fi
+\setlength \labelsep {.5em}
+\setlength \labelwidth{\leftmargini}
+\addtolength\labelwidth{-\labelsep}
+\@beginparpenalty -\@lowpenalty
+\@endparpenalty -\@lowpenalty
+\@itempenalty -\@lowpenalty
+\renewcommand\theenumi{\@arabic\c@enumi}
+\renewcommand\theenumii{\@alph\c@enumii}
+\renewcommand\theenumiii{\@roman\c@enumiii}
+\renewcommand\theenumiv{\@Alph\c@enumiv}
+\newcommand\labelenumi{\theenumi.}
+\newcommand\labelenumii{(\theenumii)}
+\newcommand\labelenumiii{\theenumiii.}
+\newcommand\labelenumiv{\theenumiv.}
+\renewcommand\p@enumii{\theenumi}
+\renewcommand\p@enumiii{\theenumi(\theenumii)}
+\renewcommand\p@enumiv{\p@enumiii\theenumiii}
+\newcommand\labelitemi{\textbullet}
+\newcommand\labelitemii{\normalfont\bfseries \textendash}
+\newcommand\labelitemiii{\textasteriskcentered}
+\newcommand\labelitemiv{\textperiodcentered}
+\newenvironment{description}
+ {\list{}{\labelwidth\z@ \itemindent-\leftmargin
+ \let\makelabel\descriptionlabel}}
+ {\endlist}
+\newcommand*\descriptionlabel[1]{\hspace\labelsep
+ \normalfont\bfseries #1}
+\if@titlepage
+ \newenvironment{abstract}{%
+ \titlepage
+ \null\vfil
+ \@beginparpenalty\@lowpenalty
+ \begin{center}%
+ \lbnw \abstractname
+ \@endparpenalty\@M
+ \end{center}}%
+ {\par\vfil\null\endtitlepage}
+\else
+ \newenvironment{abstract}{%
+ \if@twocolumn
+ \section*{\abstractname}%
+ \else
+ \small
+ \begin{center}%
+ {\lbnw \abstractname\vspace{-.5em}\vspace{\z@}}%
+ \end{center}%
+ \quotation\sbng
+ \fi}
+ {\if@twocolumn\else\endquotation\fi}
+\fi
+\newenvironment{verse}
+ {\let\\\@centercr
+ \list{}{\itemsep \z@
+ \itemindent -1.5em%
+ \listparindent\itemindent
+ \rightmargin \leftmargin
+ \advance\leftmargin 1.5em}%
+ \item\relax}
+ {\endlist}
+\newenvironment{quotation}
+ {\list{}{\listparindent 1.5em%
+ \itemindent \listparindent
+ \rightmargin \leftmargin
+ \parsep \z@ \@plus\p@}%
+ \item\relax}
+ {\endlist}
+\newenvironment{quote}
+ {\list{}{\rightmargin\leftmargin}%
+ \item\relax}
+ {\endlist}
+\if@compatibility
+\newenvironment{titlepage}
+ {%
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse\newpage
+ \fi
+ \thispagestyle{empty}%
+ \setcounter{page}\z@
+ }%
+ {\if@restonecol\twocolumn \else \newpage \fi
+ }
+\else
+\newenvironment{titlepage}
+ {%
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse\newpage
+ \fi
+ \thispagestyle{empty}%
+ \setcounter{page}\@ne
+ }%
+ {\if@restonecol\twocolumn \else \newpage \fi
+ \if@twoside\else
+ \setcounter{page}\@ne
+ \fi
+ }
+\fi
+\newcommand\appendix{\par
+ \setcounter{section}{0}%
+ \setcounter{subsection}{0}%
+ \gdef\thesection{\@Alph\c@section}}
+\setlength\arraycolsep{5\p@}
+\setlength\tabcolsep{6\p@}
+\setlength\arrayrulewidth{.4\p@}
+\setlength\doublerulesep{2\p@}
+\setlength\tabbingsep{\labelsep}
+\skip\@mpfootins = \skip\footins
+\setlength\fboxsep{3\p@}
+\setlength\fboxrule{.4\p@}
+\renewcommand \theequation {\@arabic\c@equation}
+\newcounter{figure}
+\renewcommand \thefigure {\@arabic\c@figure}
+\def\fps@figure{tbp}
+\def\ftype@figure{1}
+\def\ext@figure{lof}
+\def\fnum@figure{\bng\thefigure~noNNG~\figurename}
+\newenvironment{figure}
+ {\@float{figure}}
+ {\end@float}
+\newenvironment{figure*}
+ {\@dblfloat{figure}}
+ {\end@dblfloat}
+\newcounter{table}
+\renewcommand\thetable{\@arabic\c@table}
+\def\fps@table{tbp}
+\def\ftype@table{2}
+\def\ext@table{lot}
+\def\fnum@table{\bng\thetable~noNNG~\tablename}
+\newenvironment{table}
+ {\@float{table}}
+ {\end@float}
+\newenvironment{table*}
+ {\@dblfloat{table}}
+ {\end@dblfloat}
+\newlength\abovecaptionskip
+\newlength\belowcaptionskip
+\setlength\abovecaptionskip{10\p@}
+\setlength\belowcaptionskip{0\p@}
+\long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1~.. #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1~.. #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}
+\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
+\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
+\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
+\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
+\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
+\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
+\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
+\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
+\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
+\newcommand\@pnumwidth{1.55em}
+\newcommand\@tocrmarg{2.55em}
+\newcommand\@dotsep{4.5}
+\setcounter{tocdepth}{3}
+\newcommand\tableofcontents{%
+ \section*{\Lbng\contentsname
+ \@mkboth{%
+ \contentsname}{\contentsname}}%
+ \@starttoc{toc}%
+ }
+\newcommand*\l@part[2]{%
+ \ifnum \c@tocdepth >-2\relax
+ \addpenalty\@secpenalty
+ \addvspace{2.25em \@plus\p@}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ {\leavevmode
+% \large \bfseries
+ \LBng #1\hfil \hb@xt@\@pnumwidth{\hss #2}}\par
+ \nobreak
+ \if@compatibility
+ \global\@nobreaktrue
+ \everypar{\global\@nobreakfalse\everypar{}}%
+ \fi
+ \endgroup
+ \fi}
+\newcommand*\l@section[2]{%
+ \ifnum \c@tocdepth >\z@
+ \addpenalty\@secpenalty
+ \addvspace{1.0em \@plus\p@}%
+ \setlength\@tempdima{2.0em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode %\bfseries
+ \advance\leftskip\@tempdima
+ \hskip -\leftskip
+ \bng #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ \endgroup
+ \fi}
+%\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
+\newcommand*\l@subsection[2]{%
+ \ifnum \c@tocdepth >\m@ne
+ \addpenalty{-\@highpenalty}%
+ \vskip 0.3em \@plus\p@
+ \setlength\@tempdima{3.0em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode \bfseries
+ \advance\leftskip\@tempdima
+% \hskip \leftskip
+ \bng #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ \penalty\@highpenalty
+ \endgroup
+ \fi}
+%\newcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
+\newcommand*\l@subsubsection[2]{%
+ \ifnum \c@tocdepth >\m@ne
+ \addpenalty{-\@highpenalty}%
+ \vskip 0.2em \@plus\p@
+ \setlength\@tempdima{4.5em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode \bfseries
+ \advance\leftskip\@tempdima
+% \hskip \leftskip
+ \bng #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ \penalty\@highpenalty
+ \endgroup
+ \fi}
+%\newcommand*\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}
+\newcommand*\l@paragraph[2]{%
+ \ifnum \c@tocdepth >\m@ne
+ \addpenalty{-\@highpenalty}%
+ \vskip 0.1em \@plus\p@
+ \setlength\@tempdima{6.0em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode \bfseries
+ \advance\leftskip\@tempdima
+ \bng #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ \penalty\@highpenalty
+ \endgroup
+ \fi}
+%\newcommand*\l@subparagraph{\@dottedtocline{5}{10em}{5em}}
+\newcommand*\l@subparagraph[2]{%
+ \ifnum \c@tocdepth >\m@ne
+ \addpenalty{-\@highpenalty}%
+ \vskip 0.1em \@plus\p@
+ \setlength\@tempdima{7.5em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode \bfseries
+ \advance\leftskip\@tempdima
+ \bng #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ \penalty\@highpenalty
+ \endgroup
+ \fi}
+\newcommand\listoffigures{%
+ \section*{\listfigurename
+ \@mkboth{\MakeUppercase\listfigurename}%
+ {\MakeUppercase\listfigurename}}%
+ \@starttoc{lof}%
+ }
+\newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}
+\newcommand\listoftables{%
+ \section*{\listtablename
+ \@mkboth{%
+ \MakeUppercase\listtablename}{\MakeUppercase\listtablename}}%
+ \@starttoc{lot}%
+ }
+\let\l@table\l@figure
+\newdimen\bibindent
+\setlength\bibindent{1.5em}
+\newenvironment{thebibliography}[1]
+ {\section*{\refname
+ \@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}}%
+ \list{\@biblabel{\@arabic\c@enumiv}}%
+ {\settowidth\labelwidth{\@biblabel{#1}}%
+ \leftmargin\labelwidth
+ \advance\leftmargin\labelsep
+ \@openbib@code
+ \usecounter{enumiv}%
+ \let\p@enumiv\@empty
+ \renewcommand\theenumiv{\@arabic\c@enumiv}}%
+ \sloppy
+ \clubpenalty4000
+ \@clubpenalty \clubpenalty
+ \widowpenalty4000%
+ \sfcode`\.\@m}
+ {\def\@noitemerr
+ {\@latex@warning{Empty `thebibliography' environment}}%
+ \endlist}
+\newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em}
+\let\@openbib@code\@empty
+\newenvironment{theindex}
+ {\if@twocolumn
+ \@restonecolfalse
+ \else
+ \@restonecoltrue
+ \fi
+ \columnseprule \z@
+ \columnsep 35\p@
+ \twocolumn[\section*{\indexname}]%
+ \@mkboth{\MakeUppercase\indexname}%
+ {\MakeUppercase\indexname}%
+ \thispagestyle{plain}\parindent\z@
+ \parskip\z@ \@plus .3\p@\relax
+ \let\item\@idxitem}
+ {\if@restonecol\onecolumn\else\clearpage\fi}
+\newcommand\@idxitem{\par\hangindent 40\p@}
+\newcommand\subitem{\@idxitem \hspace*{20\p@}}
+\newcommand\subsubitem{\@idxitem \hspace*{30\p@}}
+\newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}
+\renewcommand\footnoterule{%
+ \kern-3\p@
+ \hrule\@width.4\columnwidth
+ \kern2.6\p@}
+\newcommand\@makefntext[1]{%
+ \parindent 1em%
+ \noindent
+ \hb@xt@1.8em{\hss\@makefnmark}#1}
+\newcommand\contentsname{suu\*c*i}
+\newcommand\listfigurename{cho\*b*ir ta\*l*ika}
+\newcommand\listtablename{cho\*k*er ta\*l*ika}
+\newcommand\refname{U\*l/l*ekhpoNJ/jii}
+\newcommand\indexname{bor/NokRo\*m*ik suu\*c*i}
+\newcommand\figurename{cho\*b*i}
+\newcommand\tablename{chok}
+\newcommand\partname{bhag}
+\newcommand\appendixname{po\*r*i\*sh*iSh/To}
+\newcommand\abstractname{soNNG\*kK*ip/tosar}
+\def\today{\number\day\space \ifcase\month\or
+ januya\*r*i\or \*f*ebRuya\*r*i\or mar/c\or E\*pR*il\or \*m*e\or jun\or
+ julaI\or Aagos/T\or \*s*e\*p/T*em/bor\or A\*k/T*eabor\or
+ no\*bh*em/bor\or \*D*i\*s*em/bor\fi \space
+ \number\year}
+\setlength\columnsep{10\p@}
+\setlength\columnseprule{0\p@}
+\pagestyle{plain}
+\pagenumbering{arabic}
+\def\thepage{\bng\arabic{page}}
+\if@twoside
+\else
+ \raggedbottom
+\fi
+\if@twocolumn
+ \twocolumn
+ \sloppy
+ \flushbottom
+\else
+ \onecolumn
+\fi
+\endinput
+%%
+%% End of file `barticle.cls'.
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/barticle.sty b/macros/omega/latex/contrib/bengali-omega/tex/latex/barticle.sty
new file mode 100644
index 0000000000..a91a9b8dc8
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/barticle.sty
@@ -0,0 +1,80 @@
+%%
+%% This is file `barticle.sty',
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Permission is granted to copy this file to another file with a
+%% clearly different name and to customize the declarations in that
+%% copy to serve the needs of your installation.
+%%
+%% However, NO PERMISSION is granted to generate or to distribute a
+%% modified version of this file under its original name.
+%%
+%% You are NOT ALLOWED to change this file.
+%%
+%%
+%% MODIFICATION ADVICE:
+%%
+%% If you want to customize this file, it is best to make a copy of
+%% the source file(s) from which it was produced. Use a different
+%% name for your copy(ies) and modify the copy(ies); this will ensure
+%% that your modifications do not get overwritten when you install a
+%% new release of the standard system. You should also ensure that
+%% your modified source file does not generate any modified file with
+%% the same name as a standard file.
+%%
+%% You can then easily distribute your modifications by distributing
+%% the modified and renamed copy of the source file. This will ensure
+%% that other users can safely use your modifications.
+%%
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+\NeedsTeXFormat{LaTeX2e}
+\@obsoletefile{barticle.cls}{barticle.sty}
+\LoadClass{barticle}
+\endinput
+%%
+%% End of file `barticle.sty'.
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/bbk10.clo b/macros/omega/latex/contrib/bengali-omega/tex/latex/bbk10.clo
new file mode 100644
index 0000000000..fe578d12dd
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/bbk10.clo
@@ -0,0 +1,305 @@
+%%
+%% This is file `bbk10.clo',
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Permission is granted to copy this file to another file with a
+%% clearly different name and to customize the declarations in that
+%% copy to serve the needs of your installation.
+%%
+%% However, NO PERMISSION is granted to generate or to distribute a
+%% modified version of this file under its original name.
+%%
+%% You are NOT ALLOWED to change this file.
+%%
+%%
+%% MODIFICATION ADVICE:
+%%
+%% If you want to customize this file, it is best to make a copy of
+%% the source file(s) from which it was produced. Use a different
+%% name for your copy(ies) and modify the copy(ies); this will ensure
+%% that your modifications do not get overwritten when you install a
+%% new release of the standard system. You should also ensure that
+%% your modified source file does not generate any modified file with
+%% the same name as a standard file.
+%%
+%% You can then easily distribute your modifications by distributing
+%% the modified and renamed copy of the source file. This will ensure
+%% that other users can safely use your modifications.
+%%
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+\ProvidesFile{bbk10.clo}
+ [2001/04/15 v1.2
+ LaTeX document size file for bangtex]
+\renewcommand\normalsize{%
+ \@setfontsize\normalsize\@xpt\@xiipt
+ \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
+ \belowdisplayskip \abovedisplayskip
+ \let\@listi\@listI}
+\normalsize
+\newcommand\small{%
+ \@setfontsize\small\@ixpt{11}%
+ \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
+ \abovedisplayshortskip \z@ \@plus2\p@
+ \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 4\p@ \@plus2\p@ \@minus2\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\newcommand\footnotesize{%
+ \@setfontsize\footnotesize\@viiipt{9.5}%
+ \abovedisplayskip 6\p@ \@plus2\p@ \@minus4\p@
+ \abovedisplayshortskip \z@ \@plus\p@
+ \belowdisplayshortskip 3\p@ \@plus\p@ \@minus2\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 3\p@ \@plus\p@ \@minus\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\newcommand\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt}
+\newcommand\tiny{\@setfontsize\tiny\@vpt\@vipt}
+\newcommand\large{\@setfontsize\large\@xiipt{14}}
+\newcommand\Large{\@setfontsize\Large\@xivpt{18}}
+\newcommand\LARGE{\@setfontsize\LARGE\@xviipt{22}}
+\newcommand\huge{\@setfontsize\huge\@xxpt{25}}
+\newcommand\Huge{\@setfontsize\Huge\@xxvpt{30}}
+%
+\def\sbng{\bngviii}
+\def\tbng{\bngvi}
+\def\bng{\bngx}
+\def\lbng{\bngxiv}
+\def\Lbng{\bngxviii}
+\def\LBng{\bngxxii}
+\def\hbng{\bngxxv}
+\def\Hbng{\bngxxx}
+%
+\def\sbns{\bnsviii}
+\def\tbns{\bnsvi}
+\def\bns{\bnsx}
+\def\lbns{\bnsxiv}
+\def\Lbns{\bnsxviii}
+\def\LBns{\bnsxxii}
+\def\hbns{\bnsxxv}
+\def\Hbns{\bnsxxx}
+%
+\def\sbnw{\bnwviii}
+\def\tbnw{\bnwvi}
+\def\bnw{\bnwx}
+\def\lbnw{\bnwxiv}
+\def\Lbnw{\bnwxviii}
+\def\LBnw{\bnwxxii}
+\def\hbnw{\bnwxxv}
+\def\Hbnw{\bnwxxx}
+%
+\def\sbnh{\bnhviii}
+\def\tbnh{\bnhvi}
+\def\bnh{\bnhx}
+\def\lbnh{\bnhxiv}
+\def\Lbnh{\bnhxviii}
+\def\LBnh{\bnhxxii}
+\def\hbnh{\bnhxxv}
+\def\Hbnh{\bnhxxx}
+%
+\if@twocolumn
+ \setlength\parindent{1em}
+\else
+ \setlength\parindent{15\p@}
+\fi
+\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@}
+\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@}
+\setlength\headheight{12\p@}
+\setlength\headsep {.25in}
+\setlength\topskip {10\p@}
+\setlength\footskip{.35in}
+\if@compatibility \setlength\maxdepth{4\p@} \else
+\setlength\maxdepth{.5\topskip} \fi
+\if@compatibility
+ \if@twocolumn
+ \setlength\textwidth{410\p@}
+ \else
+ \setlength\textwidth{4.5in}
+ \fi
+\else
+ \setlength\@tempdima{\paperwidth}
+ \addtolength\@tempdima{-2in}
+ \setlength\@tempdimb{345\p@}
+ \if@twocolumn
+ \ifdim\@tempdima>2\@tempdimb\relax
+ \setlength\textwidth{2\@tempdimb}
+ \else
+ \setlength\textwidth{\@tempdima}
+ \fi
+ \else
+ \ifdim\@tempdima>\@tempdimb\relax
+ \setlength\textwidth{\@tempdimb}
+ \else
+ \setlength\textwidth{\@tempdima}
+ \fi
+ \fi
+\fi
+\if@compatibility\else
+ \@settopoint\textwidth
+\fi
+\if@compatibility
+ \setlength\textheight{41\baselineskip}
+\else
+ \setlength\@tempdima{\paperheight}
+ \addtolength\@tempdima{-2in}
+ \addtolength\@tempdima{-1.5in}
+ \divide\@tempdima\baselineskip
+ \@tempcnta=\@tempdima
+ \setlength\textheight{\@tempcnta\baselineskip}
+\fi
+\addtolength\textheight{\topskip}
+\if@twocolumn
+ \setlength\marginparsep {10\p@}
+\else
+ \setlength\marginparsep{7\p@}
+\fi
+\setlength\marginparpush{5\p@}
+\if@compatibility
+ \setlength\oddsidemargin {.5in}
+ \setlength\evensidemargin {1.5in}
+ \setlength\marginparwidth {.75in}
+ \if@twocolumn
+ \setlength\oddsidemargin {30\p@}
+ \setlength\evensidemargin {30\p@}
+ \setlength\marginparwidth {48\p@}
+ \fi
+\else
+ \if@twoside
+ \setlength\@tempdima {\paperwidth}
+ \addtolength\@tempdima {-\textwidth}
+ \setlength\oddsidemargin {.4\@tempdima}
+ \addtolength\oddsidemargin {-1in}
+ \setlength\marginparwidth {.6\@tempdima}
+ \addtolength\marginparwidth {-\marginparsep}
+ \addtolength\marginparwidth {-0.4in}
+ \else
+ \setlength\@tempdima {\paperwidth}
+ \addtolength\@tempdima {-\textwidth}
+ \setlength\oddsidemargin {.5\@tempdima}
+ \addtolength\oddsidemargin {-1in}
+ \setlength\marginparwidth {.5\@tempdima}
+ \addtolength\marginparwidth {-\marginparsep}
+ \addtolength\marginparwidth {-0.4in}
+ \addtolength\marginparwidth {-.4in}
+ \fi
+ \ifdim \marginparwidth >2in
+ \setlength\marginparwidth{2in}
+ \fi
+ \@settopoint\oddsidemargin
+ \@settopoint\marginparwidth
+ \setlength\evensidemargin {\paperwidth}
+ \addtolength\evensidemargin{-2in}
+ \addtolength\evensidemargin{-\textwidth}
+ \addtolength\evensidemargin{-\oddsidemargin}
+ \@settopoint\evensidemargin
+\fi
+\if@compatibility
+ \setlength\topmargin{.75in}
+\else
+ \setlength\topmargin{\paperheight}
+ \addtolength\topmargin{-2in}
+ \addtolength\topmargin{-\headheight}
+ \addtolength\topmargin{-\headsep}
+ \addtolength\topmargin{-\textheight}
+ \addtolength\topmargin{-\footskip} % this might be wrong!
+ \addtolength\topmargin{-.5\topmargin}
+ \@settopoint\topmargin
+\fi
+\setlength\footnotesep{6.65\p@}
+\setlength{\skip\footins}{9\p@ \@plus 4\p@ \@minus 2\p@}
+\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\intextsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\@fptop{0\p@ \@plus 1fil}
+\setlength\@fpsep{8\p@ \@plus 2fil}
+\setlength\@fpbot{0\p@ \@plus 1fil}
+\setlength\@dblfptop{0\p@ \@plus 1fil}
+\setlength\@dblfpsep{8\p@ \@plus 2fil}
+\setlength\@dblfpbot{0\p@ \@plus 1fil}
+\setlength\partopsep{2\p@ \@plus 1\p@ \@minus 1\p@}
+\def\@listi{\leftmargin\leftmargini
+ \parsep 4\p@ \@plus2\p@ \@minus\p@
+ \topsep 8\p@ \@plus2\p@ \@minus4\p@
+ \itemsep4\p@ \@plus2\p@ \@minus\p@}
+\let\@listI\@listi
+\@listi
+\def\@listii {\leftmargin\leftmarginii
+ \labelwidth\leftmarginii
+ \advance\labelwidth-\labelsep
+ \topsep 4\p@ \@plus2\p@ \@minus\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}
+\def\@listiii{\leftmargin\leftmarginiii
+ \labelwidth\leftmarginiii
+ \advance\labelwidth-\labelsep
+ \topsep 2\p@ \@plus\p@\@minus\p@
+ \parsep \z@
+ \partopsep \p@ \@plus\z@ \@minus\p@
+ \itemsep \topsep}
+\def\@listiv {\leftmargin\leftmarginiv
+ \labelwidth\leftmarginiv
+ \advance\labelwidth-\labelsep}
+\def\@listv {\leftmargin\leftmarginv
+ \labelwidth\leftmarginv
+ \advance\labelwidth-\labelsep}
+\def\@listvi {\leftmargin\leftmarginvi
+ \labelwidth\leftmarginvi
+ \advance\labelwidth-\labelsep}
+\endinput
+%%
+%% End of file `bbk10.clo'.
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/bbk11.clo b/macros/omega/latex/contrib/bengali-omega/tex/latex/bbk11.clo
new file mode 100644
index 0000000000..683353bbec
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/bbk11.clo
@@ -0,0 +1,303 @@
+%%
+%% This is file `bbk11.clo',
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Permission is granted to copy this file to another file with a
+%% clearly different name and to customize the declarations in that
+%% copy to serve the needs of your installation.
+%% However, NO PERMISSION is granted to generate or to distribute a
+%% modified version of this file under its original name.
+%% You are NOT ALLOWED to change this file.
+%%
+%%
+%% MODIFICATION ADVICE:
+%%
+%% If you want to customize this file, it is best to make a copy of
+%% the source file(s) from which it was produced. Use a different
+%% name for your copy(ies) and modify the copy(ies); this will ensure
+%% that your modifications do not get overwritten when you install a
+%% new release of the standard system. You should also ensure that
+%% your modified source file does not generate any modified file with
+%% the same name as a standard file.
+%%
+%% You can then easily distribute your modifications by distributing
+%% the modified and renamed copy of the source file. This will ensure
+%% that other users can safely use your modifications.
+%%
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+\ProvidesFile{bk11.clo}
+ [1999/01/07 v1.4a
+ Standard LaTeX file (size option)]
+\renewcommand\normalsize{%
+ \@setfontsize\normalsize\@xipt{13.6}%
+ \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
+ \belowdisplayskip \abovedisplayskip
+ \let\@listi\@listI}
+\normalsize
+\newcommand\small{%
+ \@setfontsize\small\@xpt\@xiipt
+ \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 6\p@ \@plus2\p@ \@minus2\p@
+ \parsep 3\p@ \@plus2\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\newcommand\footnotesize{%
+ \@setfontsize\footnotesize\@ixpt{11}%
+ \abovedisplayskip 8\p@ \@plus2\p@ \@minus4\p@
+ \abovedisplayshortskip \z@ \@plus\p@
+ \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 4\p@ \@plus2\p@ \@minus2\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\newcommand\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}}
+\newcommand\tiny{\@setfontsize\tiny\@vipt\@viipt}
+\newcommand\large{\@setfontsize\large\@xiipt{14}}
+\newcommand\Large{\@setfontsize\Large\@xivpt{18}}
+\newcommand\LARGE{\@setfontsize\LARGE\@xviipt{22}}
+\newcommand\huge{\@setfontsize\huge\@xxpt{25}}
+\newcommand\Huge{\@setfontsize\Huge\@xxvpt{30}}
+%
+\def\sbng{\bngviii}
+\def\tbng{\bngvii}
+\def\bng{\bngxi}
+\def\lbng{\bngxiv}
+\def\Lbng{\bngxviii}
+\def\LBng{\bngxxii}
+\def\hbng{\bngxxv}
+\def\Hbng{\bngxxx}
+%
+\def\sbns{\bnsviii}
+\def\tbns{\bnsvii}
+\def\bns{\bnsxi}
+\def\lbns{\bnsxiv}
+\def\Lbns{\bnsxviii}
+\def\LBns{\bnsxxii}
+\def\hbns{\bnsxxv}
+\def\Hbns{\bnsxxx}
+%
+\def\sbnw{\bnwviii}
+\def\tbnw{\bnwvii}
+\def\bnw{\bnwxi}
+\def\lbnw{\bnwxiv}
+\def\Lbnw{\bnwxviii}
+\def\LBnw{\bnwxxii}
+\def\hbnw{\bnwxxv}
+\def\Hbnw{\bnwxxx}
+%
+\def\sbnh{\bnhviii}
+\def\tbnh{\bnhvii}
+\def\bnh{\bnhxi}
+\def\lbnh{\bnhxiv}
+\def\Lbnh{\bnhxviii}
+\def\LBnh{\bnhxxii}
+\def\hbnh{\bnhxxv}
+\def\Hbnh{\bnhxxx}
+%
+\if@twocolumn
+ \setlength\parindent{1em}
+\else
+ \setlength\parindent{17\p@}
+\fi
+\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@}
+\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@}
+\setlength\headheight{12\p@}
+\setlength\headsep {.275in}
+\setlength\topskip {11\p@}
+\setlength\footskip{.38in}
+\if@compatibility \setlength\maxdepth{4\p@} \else
+\setlength\maxdepth{.5\topskip} \fi
+\if@compatibility
+ \if@twocolumn
+ \setlength\textwidth{410\p@}
+ \else
+ \setlength\textwidth{5in}
+ \fi
+\else
+ \setlength\@tempdima{\paperwidth}
+ \addtolength\@tempdima{-2in}
+ \setlength\@tempdimb{360\p@}
+ \if@twocolumn
+ \ifdim\@tempdima>2\@tempdimb\relax
+ \setlength\textwidth{2\@tempdimb}
+ \else
+ \setlength\textwidth{\@tempdima}
+ \fi
+ \else
+ \ifdim\@tempdima>\@tempdimb\relax
+ \setlength\textwidth{\@tempdimb}
+ \else
+ \setlength\textwidth{\@tempdima}
+ \fi
+ \fi
+\fi
+\if@compatibility\else
+ \@settopoint\textwidth
+\fi
+\if@compatibility
+ \setlength\textheight{38\baselineskip}
+\else
+ \setlength\@tempdima{\paperheight}
+ \addtolength\@tempdima{-2in}
+ \addtolength\@tempdima{-1.5in}
+ \divide\@tempdima\baselineskip
+ \@tempcnta=\@tempdima
+ \setlength\textheight{\@tempcnta\baselineskip}
+\fi
+\addtolength\textheight{\topskip}
+\if@twocolumn
+ \setlength\marginparsep {10\p@}
+\else
+ \setlength\marginparsep{7\p@}
+\fi
+\setlength\marginparpush{5\p@}
+\if@compatibility
+ \setlength\oddsidemargin {.25in}
+ \setlength\evensidemargin {1.25in}
+ \setlength\marginparwidth {1in}
+ \if@twocolumn
+ \setlength\oddsidemargin {30\p@}
+ \setlength\evensidemargin {30\p@}
+ \setlength\marginparwidth {48\p@}
+ \fi
+\else
+ \if@twoside
+ \setlength\@tempdima {\paperwidth}
+ \addtolength\@tempdima {-\textwidth}
+ \setlength\oddsidemargin {.4\@tempdima}
+ \addtolength\oddsidemargin {-1in}
+ \setlength\marginparwidth {.6\@tempdima}
+ \addtolength\marginparwidth {-\marginparsep}
+ \addtolength\marginparwidth {-0.4in}
+ \else
+ \setlength\@tempdima {\paperwidth}
+ \addtolength\@tempdima {-\textwidth}
+ \setlength\oddsidemargin {.5\@tempdima}
+ \addtolength\oddsidemargin {-1in}
+ \setlength\marginparwidth {.5\@tempdima}
+ \addtolength\marginparwidth {-\marginparsep}
+ \addtolength\marginparwidth {-0.4in}
+ \addtolength\marginparwidth {-.4in}
+ \fi
+ \ifdim \marginparwidth >2in
+ \setlength\marginparwidth{2in}
+ \fi
+ \@settopoint\oddsidemargin
+ \@settopoint\marginparwidth
+ \setlength\evensidemargin {\paperwidth}
+ \addtolength\evensidemargin{-2in}
+ \addtolength\evensidemargin{-\textwidth}
+ \addtolength\evensidemargin{-\oddsidemargin}
+ \@settopoint\evensidemargin
+\fi
+\if@compatibility
+ \setlength\topmargin{.73in}
+\else
+ \setlength\topmargin{\paperheight}
+ \addtolength\topmargin{-2in}
+ \addtolength\topmargin{-\headheight}
+ \addtolength\topmargin{-\headsep}
+ \addtolength\topmargin{-\textheight}
+ \addtolength\topmargin{-\footskip} % this might be wrong!
+ \addtolength\topmargin{-.5\topmargin}
+ \@settopoint\topmargin
+\fi
+\setlength\footnotesep{7.7\p@}
+\setlength{\skip\footins}{10\p@ \@plus 4\p@ \@minus 2\p@}
+\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\intextsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\@fptop{0\p@ \@plus 1fil}
+\setlength\@fpsep{8\p@ \@plus 2fil}
+\setlength\@fpbot{0\p@ \@plus 1fil}
+\setlength\@dblfptop{0\p@ \@plus 1fil}
+\setlength\@dblfpsep{8\p@ \@plus 2fil}
+\setlength\@dblfpbot{0\p@ \@plus 1fil}
+\setlength\partopsep{3\p@ \@plus 1\p@ \@minus 1\p@}
+\def\@listi{\leftmargin\leftmargini
+ \parsep 4.5\p@ \@plus2\p@ \@minus\p@
+ \topsep 9\p@ \@plus3\p@ \@minus5\p@
+ \itemsep4.5\p@ \@plus2\p@ \@minus\p@}
+\let\@listI\@listi
+\@listi
+\def\@listii {\leftmargin\leftmarginii
+ \labelwidth\leftmarginii
+ \advance\labelwidth-\labelsep
+ \topsep 4.5\p@ \@plus2\p@ \@minus\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}
+\def\@listiii{\leftmargin\leftmarginiii
+ \labelwidth\leftmarginiii
+ \advance\labelwidth-\labelsep
+ \topsep 2\p@ \@plus\p@\@minus\p@
+ \parsep \z@
+ \partopsep \p@ \@plus\z@ \@minus\p@
+ \itemsep \topsep}
+\def\@listiv {\leftmargin\leftmarginiv
+ \labelwidth\leftmarginiv
+ \advance\labelwidth-\labelsep}
+\def\@listv {\leftmargin\leftmarginv
+ \labelwidth\leftmarginv
+ \advance\labelwidth-\labelsep}
+\def\@listvi {\leftmargin\leftmarginvi
+ \labelwidth\leftmarginvi
+ \advance\labelwidth-\labelsep}
+\endinput
+%%
+%% End of file `bk11.clo'.
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/bbk12.clo b/macros/omega/latex/contrib/bengali-omega/tex/latex/bbk12.clo
new file mode 100644
index 0000000000..21289f7c45
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/bbk12.clo
@@ -0,0 +1,305 @@
+%%
+%% This is file `bbk12.clo',
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Permission is granted to copy this file to another file with a
+%% clearly different name and to customize the declarations in that
+%% copy to serve the needs of your installation.
+%%
+%% However, NO PERMISSION is granted to generate or to distribute a
+%% modified version of this file under its original name.
+%%
+%% You are NOT ALLOWED to change this file.
+%%
+%%
+%% MODIFICATION ADVICE:
+%%
+%% If you want to customize this file, it is best to make a copy of
+%% the source file(s) from which it was produced. Use a different
+%% name for your copy(ies) and modify the copy(ies); this will ensure
+%% that your modifications do not get overwritten when you install a
+%% new release of the standard system. You should also ensure that
+%% your modified source file does not generate any modified file with
+%% the same name as a standard file.
+%%
+%% You can then easily distribute your modifications by distributing
+%% the modified and renamed copy of the source file. This will ensure
+%% that other users can safely use your modifications.
+%%
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+\ProvidesFile{bk12.clo}
+ [1999/01/07 v1.4a
+ Standard LaTeX file (size option)]
+\renewcommand\normalsize{%
+ \@setfontsize\normalsize\@xiipt{14.5}%
+ \abovedisplayskip 12\p@ \@plus3\p@ \@minus7\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
+ \belowdisplayskip \abovedisplayskip
+ \let\@listi\@listI}
+\normalsize
+\newcommand\small{%
+ \@setfontsize\small\@xipt{13.6}%
+ \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 9\p@ \@plus3\p@ \@minus5\p@
+ \parsep 4.5\p@ \@plus2\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\newcommand\footnotesize{%
+ \@setfontsize\footnotesize\@xpt\@xiipt
+ \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 6\p@ \@plus2\p@ \@minus2\p@
+ \parsep 3\p@ \@plus2\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\newcommand\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}}
+\newcommand\tiny{\@setfontsize\tiny\@vipt\@viipt}
+\newcommand\large{\@setfontsize\large\@xivpt{18}}
+\newcommand\Large{\@setfontsize\Large\@xviipt{22}}
+\newcommand\LARGE{\@setfontsize\LARGE\@xxpt{25}}
+\newcommand\huge{\@setfontsize\huge\@xxvpt{30}}
+\let\Huge=\huge
+%
+\def\sbng{\bngviii}
+\def\tbng{\bngvii}
+\def\bng{\bngxii}
+\def\lbng{\bngxviii}
+\def\Lbng{\bngxxii}
+\def\LBng{\bngxxv}
+\def\hbng{\bngxxx}
+\def\Hbng{\bngxxx}
+%
+\def\sbns{\bnsviii}
+\def\tbns{\bnsvii}
+\def\bns{\bnsxii}
+\def\lbns{\bnsxviii}
+\def\Lbns{\bnsxxii}
+\def\LBns{\bnsxxv}
+\def\hbns{\bnsxxx}
+\def\Hbns{\bnsxxx}
+%
+\def\sbnw{\bnwviii}
+\def\tbnw{\bnwvii}
+\def\bnw{\bnwxii}
+\def\lbnw{\bnwxviii}
+\def\Lbnw{\bnwxxii}
+\def\LBnw{\bnwxxv}
+\def\hbnw{\bnwxxx}
+\def\Hbnw{\bnwxxx}
+%
+\def\sbnh{\bnhviii}
+\def\tbnh{\bnhvii}
+\def\bnh{\bnhxii}
+\def\lbnh{\bnhxviii}
+\def\Lbnh{\bnhxxii}
+\def\LBnh{\bnhxxv}
+\def\hbnh{\bnhxxx}
+\def\Hbnh{\bnhxxx}
+%
+\if@twocolumn
+ \setlength\parindent{1em}
+\else
+ \setlength\parindent{1.5em}
+\fi
+\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@}
+\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@}
+\setlength\headheight{12\p@}
+\setlength\headsep {.275in}
+\setlength\topskip {12\p@}
+\setlength\footskip{30\p@}
+\if@compatibility \setlength\maxdepth{4\p@} \else
+\setlength\maxdepth{.5\topskip} \fi
+\if@compatibility
+ \if@twocolumn
+ \setlength\textwidth{410\p@}
+ \else
+ \setlength\textwidth{5in}
+ \fi
+\else
+ \setlength\@tempdima{\paperwidth}
+ \addtolength\@tempdima{-2in}
+ \setlength\@tempdimb{390\p@}
+ \if@twocolumn
+ \ifdim\@tempdima>2\@tempdimb\relax
+ \setlength\textwidth{2\@tempdimb}
+ \else
+ \setlength\textwidth{\@tempdima}
+ \fi
+ \else
+ \ifdim\@tempdima>\@tempdimb\relax
+ \setlength\textwidth{\@tempdimb}
+ \else
+ \setlength\textwidth{\@tempdima}
+ \fi
+ \fi
+\fi
+\if@compatibility\else
+ \@settopoint\textwidth
+\fi
+\if@compatibility
+ \setlength\textheight{36\baselineskip}
+\else
+ \setlength\@tempdima{\paperheight}
+ \addtolength\@tempdima{-2in}
+ \addtolength\@tempdima{-1.5in}
+ \divide\@tempdima\baselineskip
+ \@tempcnta=\@tempdima
+ \setlength\textheight{\@tempcnta\baselineskip}
+\fi
+\addtolength\textheight{\topskip}
+\if@twocolumn
+ \setlength\marginparsep {10\p@}
+\else
+ \setlength\marginparsep{7\p@}
+\fi
+\setlength\marginparpush{7\p@}
+\if@compatibility
+ \setlength\oddsidemargin {.25in}
+ \setlength\evensidemargin {1.25in}
+ \setlength\marginparwidth {1in}
+ \if@twocolumn
+ \setlength\oddsidemargin {30\p@}
+ \setlength\evensidemargin {30\p@}
+ \setlength\marginparwidth {48\p@}
+ \fi
+\else
+ \if@twoside
+ \setlength\@tempdima {\paperwidth}
+ \addtolength\@tempdima {-\textwidth}
+ \setlength\oddsidemargin {.4\@tempdima}
+ \addtolength\oddsidemargin {-1in}
+ \setlength\marginparwidth {.6\@tempdima}
+ \addtolength\marginparwidth {-\marginparsep}
+ \addtolength\marginparwidth {-0.4in}
+ \else
+ \setlength\@tempdima {\paperwidth}
+ \addtolength\@tempdima {-\textwidth}
+ \setlength\oddsidemargin {.5\@tempdima}
+ \addtolength\oddsidemargin {-1in}
+ \setlength\marginparwidth {.5\@tempdima}
+ \addtolength\marginparwidth {-\marginparsep}
+ \addtolength\marginparwidth {-0.4in}
+ \addtolength\marginparwidth {-.4in}
+ \fi
+ \ifdim \marginparwidth >2in
+ \setlength\marginparwidth{2in}
+ \fi
+ \@settopoint\oddsidemargin
+ \@settopoint\marginparwidth
+ \setlength\evensidemargin {\paperwidth}
+ \addtolength\evensidemargin{-2in}
+ \addtolength\evensidemargin{-\textwidth}
+ \addtolength\evensidemargin{-\oddsidemargin}
+ \@settopoint\evensidemargin
+\fi
+\if@compatibility
+ \setlength\topmargin{.73in}
+\else
+ \setlength\topmargin{\paperheight}
+ \addtolength\topmargin{-2in}
+ \addtolength\topmargin{-\headheight}
+ \addtolength\topmargin{-\headsep}
+ \addtolength\topmargin{-\textheight}
+ \addtolength\topmargin{-\footskip} % this might be wrong!
+ \addtolength\topmargin{-.5\topmargin}
+ \@settopoint\topmargin
+\fi
+\setlength\footnotesep{8.4\p@}
+\setlength{\skip\footins}{10.8\p@ \@plus 4\p@ \@minus 2\p@}
+\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\intextsep {14\p@ \@plus 4\p@ \@minus 4\p@}
+\setlength\dblfloatsep {14\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\@fptop{0\p@ \@plus 1fil}
+\setlength\@fpsep{10\p@ \@plus 2fil}
+\setlength\@fpbot{0\p@ \@plus 1fil}
+\setlength\@dblfptop{0\p@ \@plus 1fil}
+\setlength\@dblfpsep{10\p@ \@plus 2fil}
+\setlength\@dblfpbot{0\p@ \@plus 1fil}
+\setlength\partopsep{3\p@ \@plus 2\p@ \@minus 2\p@}
+\def\@listi{\leftmargin\leftmargini
+ \parsep 5\p@ \@plus2.5\p@ \@minus\p@
+ \topsep 10\p@ \@plus4\p@ \@minus6\p@
+ \itemsep5\p@ \@plus2.5\p@ \@minus\p@}
+\let\@listI\@listi
+\@listi
+\def\@listii {\leftmargin\leftmarginii
+ \labelwidth\leftmarginii
+ \advance\labelwidth-\labelsep
+ \topsep 5\p@ \@plus2.5\p@ \@minus\p@
+ \parsep 2.5\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}
+\def\@listiii{\leftmargin\leftmarginiii
+ \labelwidth\leftmarginiii
+ \advance\labelwidth-\labelsep
+ \topsep 2.5\p@\@plus\p@\@minus\p@
+ \parsep \z@
+ \partopsep \p@ \@plus\z@ \@minus\p@
+ \itemsep \topsep}
+\def\@listiv {\leftmargin\leftmarginiv
+ \labelwidth\leftmarginiv
+ \advance\labelwidth-\labelsep}
+\def\@listv {\leftmargin\leftmarginv
+ \labelwidth\leftmarginv
+ \advance\labelwidth-\labelsep}
+\def\@listvi {\leftmargin\leftmarginvi
+ \labelwidth\leftmarginvi
+ \advance\labelwidth-\labelsep}
+\endinput
+%%
+%% End of file `bbk12.clo'.
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/bbook.cls b/macros/omega/latex/contrib/bengali-omega/tex/latex/bbook.cls
new file mode 100644
index 0000000000..1c9ec03370
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/bbook.cls
@@ -0,0 +1,814 @@
+%%
+%% This is file `bbook.cls',
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Permission is granted to copy this file to another file with a
+%% clearly different name and to customize the declarations in that
+%% copy to serve the needs of your installation.
+%%
+%% However, NO PERMISSION is granted to generate or to distribute a
+%% modified version of this file under its original name.
+%%
+%% You are NOT ALLOWED to change this file.
+%%
+%%
+%% MODIFICATION ADVICE:
+%%
+%% If you want to customize this file, it is best to make a copy of
+%% the source file(s) from which it was produced. Use a different
+%% name for your copy(ies) and modify the copy(ies); this will ensure
+%% that your modifications do not get overwritten when you install a
+%% new release of the standard system. You should also ensure that
+%% your modified source file does not generate any modified file with
+%% the same name as a standard file.
+%%
+%% You can then easily distribute your modifications by distributing
+%% the modified and renamed copy of the source file. This will ensure
+%% that other users can safely use your modifications.
+%%
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesClass{bbook}
+ [2001/04/15 v1.2
+ LaTeX document class for bangtex]
+\newcommand\@ptsize{}
+\newif\if@restonecol
+\newif\if@titlepage
+\@titlepagetrue
+\newif\if@openright
+\newif\if@mainmatter \@mainmattertrue
+\if@compatibility\else
+\DeclareOption{a4paper}
+ {\setlength\paperheight {297mm}%
+ \setlength\paperwidth {210mm}}
+\DeclareOption{a5paper}
+ {\setlength\paperheight {210mm}%
+ \setlength\paperwidth {148mm}}
+\DeclareOption{b5paper}
+ {\setlength\paperheight {250mm}%
+ \setlength\paperwidth {176mm}}
+\DeclareOption{letterpaper}
+ {\setlength\paperheight {11in}%
+ \setlength\paperwidth {8.5in}}
+\DeclareOption{legalpaper}
+ {\setlength\paperheight {14in}%
+ \setlength\paperwidth {8.5in}}
+\DeclareOption{executivepaper}
+ {\setlength\paperheight {10.5in}%
+ \setlength\paperwidth {7.25in}}
+\DeclareOption{landscape}
+ {\setlength\@tempdima {\paperheight}%
+ \setlength\paperheight {\paperwidth}%
+ \setlength\paperwidth {\@tempdima}}
+\fi
+\if@compatibility
+ \renewcommand\@ptsize{0}
+\else
+\DeclareOption{10pt}{\renewcommand\@ptsize{0}}
+\fi
+\DeclareOption{11pt}{\renewcommand\@ptsize{1}}
+\DeclareOption{12pt}{\renewcommand\@ptsize{2}}
+\if@compatibility\else
+\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
+\fi
+\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
+\DeclareOption{draft}{\setlength\overfullrule{5pt}}
+\if@compatibility\else
+\DeclareOption{final}{\setlength\overfullrule{0pt}}
+\fi
+\DeclareOption{titlepage}{\@titlepagetrue}
+\if@compatibility\else
+\DeclareOption{notitlepage}{\@titlepagefalse}
+\fi
+\if@compatibility
+\@openrighttrue
+\else
+\DeclareOption{openright}{\@openrighttrue}
+\DeclareOption{openany}{\@openrightfalse}
+\fi
+\if@compatibility\else
+\DeclareOption{onecolumn}{\@twocolumnfalse}
+\fi
+\DeclareOption{twocolumn}{\@twocolumntrue}
+\DeclareOption{leqno}{\input{leqno.clo}}
+\DeclareOption{fleqn}{\input{fleqn.clo}}
+\DeclareOption{openbib}{%
+ \AtEndOfPackage{%
+ \renewcommand\@openbib@code{%
+ \advance\leftmargin\bibindent
+ \itemindent -\bibindent
+ \listparindent \itemindent
+ \parsep \z@
+ }%
+ \renewcommand\newblock{\par}}%
+}
+\ExecuteOptions{letterpaper,10pt,twoside,onecolumn,final,openright}
+\ProcessOptions
+\input bangfont
+\input{bbk1\@ptsize.clo}
+\setlength\lineskip{1\p@}
+\setlength\normallineskip{1\p@}
+\renewcommand\baselinestretch{}
+\setlength\parskip{0\p@ \@plus \p@}
+\@lowpenalty 51
+\@medpenalty 151
+\@highpenalty 301
+\setcounter{topnumber}{2}
+\renewcommand\topfraction{.7}
+\setcounter{bottomnumber}{1}
+\renewcommand\bottomfraction{.3}
+\setcounter{totalnumber}{3}
+\renewcommand\textfraction{.2}
+\renewcommand\floatpagefraction{.5}
+\setcounter{dbltopnumber}{2}
+\renewcommand\dbltopfraction{.7}
+\renewcommand\dblfloatpagefraction{.5}
+\if@twoside
+ \def\ps@headings{%
+ \let\@oddfoot\@empty\let\@evenfoot\@empty
+ \def\@evenhead{\bng\thepage\hfil\bng\leftmark}%
+ \def\@oddhead{{\bng\leftmark}\hfil\bng\thepage}%
+ \let\@mkboth\markboth
+ \def\chaptermark##1{%
+ \markboth {%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+% \@chapapp\ \thechapter. \ %
+ \fi
+ \fi
+ ##1}{}}%
+ \def\sectionmark##1{%
+ \markright {%
+ \ifnum \c@secnumdepth >\z@
+ \thesection. \ %
+ \fi
+ ##1}}}
+\else
+ \def\ps@headings{%
+ \let\@oddfoot\@empty
+ \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+ \let\@mkboth\markboth
+ \def\chaptermark##1{%
+ \markright {%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+% \@chapapp\ \thechapter. \ %
+ \fi
+ \fi
+ ##1}}}
+\fi
+\def\ps@myheadings{%
+ \let\@oddfoot\@empty\let\@evenfoot\@emptyhead
+ \def\@evenhead{\bng\thepage\hfil\slshape\leftmark}%
+ \def\@oddhead{{\slshape\rightmark}\hfil\bng\thepage}%
+ \let\@mkboth\@gobbletwo
+ \let\chaptermark\@gobble
+ \let\sectionmark\@gobble
+ }
+ \if@titlepage
+ \newcommand\maketitle{\begin{titlepage}%
+ \let\footnotesize\small
+ \let\footnoterule\relax
+ \let \footnote \thanks
+ \null\vfil
+ \vskip 60\p@
+ \begin{center}%
+ {\LARGE \@title \par}%
+ \vskip 3em%
+ {\large
+ \lineskip .75em%
+ \begin{tabular}[t]{c}%
+ \@author
+ \end{tabular}\par}%
+ \vskip 1.5em%
+ {\large \@date \par}% % Set date in \large size.
+ \end{center}\par
+ \@thanks
+ \vfil\null
+ \end{titlepage}%
+ \setcounter{footnote}{0}%
+ \global\let\thanks\relax
+ \global\let\maketitle\relax
+ \global\let\@thanks\@empty
+ \global\let\@author\@empty
+ \global\let\@date\@empty
+ \global\let\@title\@empty
+ \global\let\title\relax
+ \global\let\author\relax
+ \global\let\date\relax
+ \global\let\and\relax
+}
+\else
+\newcommand\maketitle{\par
+ \begingroup
+ \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
+ \def\@makefnmark{\rlap{\@textsuperscript{\sbng\@thefnmark}}}%
+ \long\def\@makefntext##1{\parindent 1em\noindent
+ \hb@xt@1.8em{%
+ \hss\@textsuperscript{\sbng\@thefnmark}}##1}%
+ \if@twocolumn
+ \ifnum \col@number=\@ne
+ \@maketitle
+ \else
+ \twocolumn[\@maketitle]%
+ \fi
+ \else
+ \newpage
+ \global\@topnum\z@ % Prevents figures from going at top of page.
+ \@maketitle
+ \fi
+ \thispagestyle{plain}\@thanks
+ \endgroup
+ \setcounter{footnote}{0}%
+ \global\let\thanks\relax
+ \global\let\maketitle\relax
+ \global\let\@maketitle\relax
+ \global\let\@thanks\@empty
+ \global\let\@author\@empty
+ \global\let\@date\@empty
+ \global\let\@title\@empty
+ \global\let\title\relax
+ \global\let\author\relax
+ \global\let\date\relax
+ \global\let\and\relax
+}
+\def\@maketitle{%
+ \newpage
+ \null
+ \vskip 2em%
+ \begin{center}%
+ \let \footnote \thanks
+ {\LARGE \@title \par}%
+ \vskip 1.5em%
+ {\large
+ \lineskip .5em%
+ \begin{tabular}[t]{c}%
+ \@author
+ \end{tabular}\par}%
+ \vskip 1em%
+ {\large \@date}%
+ \end{center}%
+ \par
+ \vskip 1.5em}
+\fi
+\newcommand*\chaptermark[1]{}
+\setcounter{secnumdepth}{5}
+\newcounter {part}
+\newcounter {chapter}
+\newcounter {section}[chapter]
+\newcounter {subsection}[section]
+\newcounter {subsubsection}[subsection]
+\newcounter {paragraph}[subsubsection]
+\newcounter {subparagraph}[paragraph]
+\renewcommand\thepart {\@arabic\c@part}
+\renewcommand\thechapter {\@arabic\c@chapter}
+\renewcommand\thesection {\thechapter.\@arabic\c@section}
+\renewcommand\thesubsection {\thesection.\@arabic\c@subsection}
+\renewcommand\thesubsubsection{\thesubsection .\@arabic\c@subsubsection}
+\renewcommand\theparagraph {\thesubsubsection.\@arabic\c@paragraph}
+\renewcommand\thesubparagraph {\theparagraph.\@arabic\c@subparagraph}
+\newcommand\@chapapp{\chaptername}
+\newcommand\frontmatter{%
+ \if@openright
+ \cleardoublepage
+ \else
+ \clearpage
+ \fi
+ \@mainmatterfalse
+ \pagenumbering{roman}}
+\newcommand\mainmatter{%
+ \if@openright
+ \cleardoublepage
+ \else
+ \clearpage
+ \fi
+ \@mainmattertrue
+ \pagenumbering{arabic}}
+\newcommand\backmatter{%
+ \if@openright
+ \cleardoublepage
+ \else
+ \clearpage
+ \fi
+ \@mainmatterfalse}
+\newcommand\part{%
+ \if@openright
+ \cleardoublepage
+% \clearpage
+ \else
+ \clearpage
+ \fi
+ \thispagestyle{plain}%
+ \if@twocolumn
+ \onecolumn
+ \@tempswatrue
+ \else
+ \@tempswafalse
+ \fi
+ \null\vfil
+ \secdef\@part\@spart}
+
+\def\@part[#1]#2{%
+ \ifnum \c@secnumdepth >-2\relax
+ \refstepcounter{part}%
+% \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
+ \addcontentsline{toc}{part}{\lbng \sh{#1}}%
+ \else
+ \addcontentsline{toc}{part}{\bng #1}%
+ \fi
+ \markboth{}{}%
+ {\centering
+ \interlinepenalty \@M
+ \normalfont
+ \ifnum \c@secnumdepth >-2\relax
+% \huge\bfseries \partname~\thepart
+% \par
+ \vskip 20\p@
+ \fi
+ \hbng #2\par}%
+ \@endpart}
+\def\@spart#1{%
+ {\centering
+ \interlinepenalty \@M
+ \normalfont
+ \Huge \bfseries #1\par}%
+ \@endpart}
+\def\@endpart{\vfil%\newpage
+ \if@twoside
+ \null
+ \thispagestyle{empty}%
+ \newpage
+ \fi
+ \if@tempswa
+ \twocolumn
+ \fi}
+\newcommand\chapter{\if@openright\clearpage\else\clearpage\fi
+ \thispagestyle{empty}%
+ \global\@topnum\z@
+ \@afterindentfalse
+ \secdef\@chapter\@schapter}
+\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \refstepcounter{chapter}%
+ \typeout{\@chapapp\space\thechapter.}%
+ \addcontentsline{toc}{chapter}%
+ {\protect\numberline{\lbng\thechapter}\quad\lbng #1}%
+ \else
+ \addcontentsline{toc}{chapter}{\lbng #1}%
+ \fi
+ \else
+ \addcontentsline{toc}{chapter}{\lbng #1}%
+ \fi
+ \chaptermark{\bng #1}%
+ \addtocontents{lof}{\protect\addvspace{10\p@}}%
+ \addtocontents{lot}{\protect\addvspace{10\p@}}%
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{#2}]%
+ \else
+ \@makechapterhead{#2}%
+ \@afterheading
+ \fi}
+\def\@makechapterhead#1{%
+ \vspace*{50\p@}%
+ {\parindent \z@ \raggedright \normalfont
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+% \huge\bfseries \@chapapp\space \thechapter
+ \Lbng\thechapter
+ \par\nobreak
+ \vskip 20\p@
+ \fi
+ \fi
+ \interlinepenalty\@M
+% \Huge \bfseries #1\par\nobreak
+ \Lbng #1\par\nobreak
+ \vskip 40\p@
+ }}
+\def\@schapter#1{\if@twocolumn
+ \@topnewpage[\@makeschapterhead{#1}]%
+ \else
+ \@makeschapterhead{#1}%
+ \@afterheading
+ \fi}
+\def\@makeschapterhead#1{%
+ \vspace*{50\p@}%
+ {\parindent \z@ \raggedright
+ \normalfont
+ \interlinepenalty\@M
+% \Huge \bfseries #1\par\nobreak
+ \Lbng #1\par\nobreak
+ \vskip 20\p@
+ }}
+\newcommand\section{\@startsection {section}{1}{\z@}%
+ {-25pt \@plus -10pt \@minus -2pt}%
+ {13pt \@plus2pt}%
+ {\LBng}}
+\newcommand\subsection{\@startsection{subsection}{2}{\z@}%
+ {-15pt\@plus -8pt \@minus -2pt}%
+ {10pt \@plus 2pt}%
+ {\Lbng}}
+\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
+ {-10pt\@plus -5pt \@minus -1pt}%
+ {8pt \@plus 2pt}%
+ {\lbng}}
+\newcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
+ {-8pt \@plus 3pt \@minus 1pt}%
+ {-1em}%
+ {\lbng}}
+\newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
+ {-8pt \@plus 3pt \@minus 1pt}%
+ {-1em}%
+ {\bng}}
+\if@twocolumn
+ \setlength\leftmargini {2em}
+\else
+ \setlength\leftmargini {2.5em}
+\fi
+\leftmargin \leftmargini
+\setlength\leftmarginii {2.2em}
+\setlength\leftmarginiii {1.87em}
+\setlength\leftmarginiv {1.7em}
+\if@twocolumn
+ \setlength\leftmarginv {.5em}
+ \setlength\leftmarginvi {.5em}
+\else
+ \setlength\leftmarginv {1em}
+ \setlength\leftmarginvi {1em}
+\fi
+\setlength \labelsep {.5em}
+\setlength \labelwidth{\leftmargini}
+\addtolength\labelwidth{-\labelsep}
+\@beginparpenalty -\@lowpenalty
+\@endparpenalty -\@lowpenalty
+\@itempenalty -\@lowpenalty
+\renewcommand\theenumi{\@arabic\c@enumi}
+\renewcommand\theenumii{\@alph\c@enumii}
+\renewcommand\theenumiii{\@roman\c@enumiii}
+\renewcommand\theenumiv{\@Alph\c@enumiv}
+\newcommand\labelenumi{\theenumi.}
+\newcommand\labelenumii{(\theenumii)}
+\newcommand\labelenumiii{\theenumiii.}
+\newcommand\labelenumiv{\theenumiv.}
+\renewcommand\p@enumii{\theenumi}
+\renewcommand\p@enumiii{\theenumi(\theenumii)}
+\renewcommand\p@enumiv{\p@enumiii\theenumiii}
+\newcommand\labelitemi{$\m@th\bullet$}
+\newcommand\labelitemii{\normalfont\bfseries --}
+\newcommand\labelitemiii{$\m@th\ast$}
+\newcommand\labelitemiv{$\m@th\cdot$}
+\newenvironment{description}
+ {\list{}{\labelwidth\z@ \itemindent-\leftmargin
+ \let\makelabel\descriptionlabel}}
+ {\endlist}
+\newcommand*\descriptionlabel[1]{\hspace\labelsep
+ \normalfont\bfseries #1}
+\newenvironment{verse}
+ {\let\\\@centercr
+ \list{}{\itemsep \z@
+ \itemindent -1.5em%
+ \listparindent\itemindent
+ \rightmargin \leftmargin
+ \advance\leftmargin 1.5em}%
+ \item\relax}
+ {\endlist}
+\newenvironment{quotation}
+ {\list{}{\listparindent 1.5em%
+ \itemindent \listparindent
+ \rightmargin \leftmargin
+ \parsep \z@ \@plus\p@}%
+ \item\relax}
+ {\endlist}
+\newenvironment{quote}
+ {\list{}{\rightmargin\leftmargin}%
+ \item\relax}
+ {\endlist}
+\if@compatibility
+\newenvironment{titlepage}
+ {%
+ \cleardoublepage
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse\newpage
+ \fi
+ \thispagestyle{empty}%
+ \setcounter{page}\z@
+ }%
+ {\if@restonecol\twocolumn \else \newpage \fi
+ }
+\else
+\newenvironment{titlepage}
+ {%
+ \cleardoublepage
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse\newpage
+ \fi
+ \thispagestyle{empty}%
+ \setcounter{page}\@ne
+ }%
+ {\if@restonecol\twocolumn \else \newpage \fi
+ \if@twoside\else
+ \setcounter{page}\@ne
+ \fi
+ }
+\fi
+\newcommand\appendix{\par
+ \setcounter{chapter}{0}%
+ \setcounter{section}{0}%
+ \renewcommand\@chapapp{\appendixname}%
+ \renewcommand\thechapter{\@Alph\c@chapter}}
+\setlength\arraycolsep{5\p@}
+\setlength\tabcolsep{6\p@}
+\setlength\arrayrulewidth{.4\p@}
+\setlength\doublerulesep{2\p@}
+\setlength\tabbingsep{\labelsep}
+\skip\@mpfootins = \skip\footins
+\setlength\fboxsep{3\p@}
+\setlength\fboxrule{.4\p@}
+\@addtoreset{equation}{chapter}
+\renewcommand\theequation{\thechapter.\@arabic\c@equation}
+\newcounter{figure}[chapter]
+\renewcommand\thefigure{\thechapter.\@arabic\c@figure}
+\def\fps@figure{tbp}
+\def\ftype@figure{1}
+\def\ext@figure{lof}
+\def\fnum@figure{\bng\thefigure~noNNG~\figurename}
+\newenvironment{figure}
+ {\@float{figure}}
+ {\end@float}
+\newenvironment{figure*}
+ {\@dblfloat{figure}}
+ {\end@dblfloat}
+\newcounter{table}[chapter]
+\renewcommand\thetable{\thechapter.\@arabic\c@table}
+\def\fps@table{tbp}
+\def\ftype@table{2}
+\def\ext@table{lot}
+\def\fnum@table{\bng\thetable~noNNG~\tablename}
+\newenvironment{table}
+ {\@float{table}}
+ {\end@float}
+\newenvironment{table*}
+ {\@dblfloat{table}}
+ {\end@dblfloat}
+\newlength\abovecaptionskip
+\newlength\belowcaptionskip
+\setlength\abovecaptionskip{10\p@}
+\setlength\belowcaptionskip{0\p@}
+\long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1.. #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1.. #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}
+\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
+\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
+\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
+\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
+\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
+\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
+\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
+\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
+\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
+\newcommand\@pnumwidth{1.55em}
+\newcommand\@tocrmarg{2.55em}
+\newcommand\@dotsep{4.5}
+\setcounter{tocdepth}{2}
+\newcommand\tableofcontents{%
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse
+ \fi
+ \chapter*{\Lbng\contentsname
+ \@mkboth{%
+\contentsname}{\contentsname}}%
+ \@starttoc{toc}%
+ \if@restonecol\twocolumn\fi
+ }
+\newcommand*\l@part[2]{%
+ \ifnum \c@tocdepth >-2\relax
+ \addpenalty{-\@highpenalty}%
+ \addvspace{2.25em \@plus\p@}%
+ \begingroup
+ \setlength\@tempdima{3em}%
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ {\leavevmode \bfseries
+ %\LARGE
+\Lbng #1\hfil \hb@xt@\@pnumwidth{\hss #2}}\par
+ \nobreak
+ \global\@nobreaktrue
+ \everypar{\global\@nobreakfalse\everypar{}}%
+ \endgroup
+ \fi}
+\newcommand*\l@chapter[2]{%
+ \ifnum \c@tocdepth >\m@ne
+ \addpenalty{-\@highpenalty}%
+ \vskip 1.0em \@plus\p@
+ \setlength\@tempdima{1.5em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode \bfseries
+ \advance\leftskip\@tempdima
+ \hskip -\leftskip
+ #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ \penalty\@highpenalty
+ \endgroup
+ \fi}
+%\newcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}}
+\newcommand*\l@section[2]{%
+ \ifnum \c@tocdepth >\m@ne
+ \addpenalty{-\@highpenalty}%
+ \vskip 1.0em \@plus\p@
+ \setlength\@tempdima{6.5em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode %\bfseries
+ \advance\leftskip\@tempdima
+ \hskip -\leftskip
+ \bng #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ \penalty\@highpenalty
+ \endgroup
+ \fi}
+\newcommand*\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}}
+\newcommand*\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}}
+\newcommand*\l@paragraph{\@dottedtocline{4}{10em}{5em}}
+\newcommand*\l@subparagraph{\@dottedtocline{5}{12em}{6em}}
+\newcommand\listoffigures{%
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse
+ \fi
+ \chapter*{\Lbng\listfigurename
+ \@mkboth{\bns\listfigurename}%
+ {\bns\listfigurename}}%
+ \@starttoc{lof}%
+ \if@restonecol\twocolumn\fi
+ }
+%\newcommand*\l@figure{\@dottedtocline{1}{0.5em}{2.3em}}
+\newcommand*\l@figure[2]{%
+ \ifnum \c@tocdepth >\m@ne
+ \addpenalty{-\@highpenalty}%
+ \vskip 0.2em \@plus\p@
+ \setlength\@tempdima{2.5em}%
+ \begingroup
+ \parindent \z@ \rightskip \@pnumwidth
+ \parfillskip -\@pnumwidth
+ \leavevmode \bfseries
+ \advance\leftskip\@tempdima
+ \hskip -\leftskip
+ \bng #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ \penalty\@highpenalty
+ \endgroup
+ \fi}
+\newcommand\listoftables{%
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse
+ \fi
+ \chapter*{\Lbng\listtablename
+ \@mkboth{%
+ \bns\listtablename}{\bns\listtablename}}%
+ \@starttoc{lot}%
+ \if@restonecol\twocolumn\fi
+ }
+\let\l@table\l@figure
+\newdimen\bibindent
+\setlength\bibindent{1.5em}
+\newenvironment{thebibliography}[1]
+ {\chapter*{\bibname
+ \@mkboth{\bibname}{\bibname}}%
+ \list{\@biblabel{\@arabic\c@enumiv}}%
+ {\settowidth\labelwidth{\@biblabel{#1}}%
+ \leftmargin\labelwidth
+ \advance\leftmargin\labelsep
+ \@openbib@code
+ \usecounter{enumiv}%
+ \let\p@enumiv\@empty
+ \renewcommand\theenumiv{\@arabic\c@enumiv}}%
+ \sloppy\clubpenalty4000\widowpenalty4000%
+ \sfcode`\.\@m}
+ {\def\@noitemerr
+ {\@latex@warning{Empty `thebibliography' environment}}%
+ \endlist}
+\newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em}
+\let\@openbib@code\@empty
+\newenvironment{theindex}
+ {\if@twocolumn
+ \@restonecolfalse
+ \else
+ \@restonecoltrue
+ \fi
+ \columnseprule \z@
+ \columnsep 35\p@
+ \twocolumn[\@makeschapterhead{\Lbng\indexname}]%
+ \@mkboth{\bns\indexname}%
+ {\bns\indexname}%
+ \thispagestyle{plain}\parindent\z@
+ \parskip\z@ \@plus .3\p@\relax
+ \let\item\@idxitem}
+ {\if@restonecol\onecolumn\else\clearpage\fi}
+\newcommand\@idxitem{\parsep=0pt\par\hangindent 20\p@}
+\newcommand\subitem{\@idxitem \hspace*{7\p@}}
+\newcommand\subsubitem{\@idxitem \hspace*{5\p@}}
+\newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}
+\renewcommand\footnoterule{%
+ \kern-3\p@
+ \hrule\@width.4\columnwidth
+ \kern2.6\p@}
+\@addtoreset{footnote}{chapter}
+\newcommand\@makefntext[1]{%
+ \parindent 1em%
+ \noindent
+ \hb@xt@1.8em{\hss\@makefnmark}#1}
+\newcommand\contentsname{suu\*c*ipotRo}
+\newcommand\listfigurename{cho\*b*ir ta\*l*ika}
+\newcommand\listtablename{cho\*k*er ta\*l*ika}
+\newcommand\bibname{suutRo\*n*i\*r/d*esh}
+\newcommand\indexname{bor/NokRo\*m*ik suu\*c*i}
+\newcommand\figurename{\bng cho\*b*i}
+\newcommand\tablename{\bng chok}
+\newcommand\partname{bhag}
+\newcommand\chaptername{AdhYay}
+\newcommand\appendixname{po\*r*i\*sh*iSh/To}
+%
+\newcommand\today{}
+\edef\today{\number\day\space \ifcase\month\or
+ januya\*r*i\or \*f*ebRuya\*r*i\or mar/c\or E\*pR*il\or \*m*e\or jun\or
+ julaI\or Aagos/T\or \*s*e\*p/T*em/bor\or A\*k/T*eabor\or
+ no\*bh*em/bor\or \*D*i\*s*em/bor\fi \space
+ \number\year}
+\setlength\columnsep{10\p@}
+\setlength\columnseprule{0\p@}
+\pagestyle{headings}
+\pagenumbering{arabic}
+\if@twoside
+\else
+ \raggedbottom
+\fi
+\if@twocolumn
+ \twocolumn
+ \sloppy
+ \flushbottom
+\else
+ \onecolumn
+\fi
+\endinput
+%%
+%% End of file `bbook.cls'.
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/beng-uni.sty b/macros/omega/latex/contrib/bengali-omega/tex/latex/beng-uni.sty
new file mode 100644
index 0000000000..520280fb1d
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/beng-uni.sty
@@ -0,0 +1,42 @@
+\def\eng#1{\clearocplists\fontfamily{\rmdefault}\selectfont{}#1}
+\def\english{\clearocplists\fontfamily{\rmdefault}\selectfont}
+
+\def\externalfont{\fontfamily{\rmdefault}\selectfont}
+ \ocp\bengU=bangla-uni01
+ \ocp\bengF=bangla-uni2bang
+
+ \ocplist\bengCTP=
+ \addbeforeocplist 1 \bengU
+ \addbeforeocplist 2 \bengF
+ \nullocplist
+
+\newcount\beng@chnum
+%
+\newcommand*\do@beng@catcodes{%
+ \beng@chnum=0
+ \loop\catcode\beng@chnum=11
+ \ifnum\beng@chnum<12 \advance\beng@chnum by1
+ \repeat
+ \beng@chnum=14
+ \loop\catcode\beng@chnum=11
+ \ifnum\beng@chnum<31 \advance\beng@chnum by1
+ \repeat
+ \catcode127=11 }
+% setup for utf-8 input %
+\ocp\UtfEightInput=inutf8
+\AtBeginDocument{
+ \DefaultInputMode onebyte
+ \InputMode currentfile onebyte
+ \DefaultInputTranslation onebyte \UtfEightInput
+ \InputTranslation currentfile \UtfEightInput}
+
+
+
+\long\def\beng{\do@beng@catcodes
+\fontencoding{U}\fontfamily{bang}\selectfont\catcode`\~=11
+\pushocplist\bengCTP}
+
+
+
+
+
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/bletter.cls b/macros/omega/latex/contrib/bengali-omega/tex/latex/bletter.cls
new file mode 100644
index 0000000000..7fd825578e
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/bletter.cls
@@ -0,0 +1,439 @@
+%%
+%% This is file `bletter.cls',
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Permission is granted to copy this file to another file with a
+%% clearly different name and to customize the declarations in that
+%% copy to serve the needs of your installation.
+%%
+%% However, NO PERMISSION is granted to generate or to distribute a
+%% modified version of this file under its original name.
+%%
+%% You are NOT ALLOWED to change this file.
+%%
+%%
+%% MODIFICATION ADVICE:
+%%
+%% If you want to customize this file, it is best to make a copy of
+%% the source file(s) from which it was produced. Use a different
+%% name for your copy(ies) and modify the copy(ies); this will ensure
+%% that your modifications do not get overwritten when you install a
+%% new release of the standard system. You should also ensure that
+%% your modified source file does not generate any modified file with
+%% the same name as a standard file.
+%%
+%% You can then easily distribute your modifications by distributing
+%% the modified and renamed copy of the source file. This will ensure
+%% that other users can safely use your modifications.
+%%
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+\NeedsTeXFormat{LaTeX2e}[1996/06/01]
+\ProvidesClass{bletter}
+ [2001/04/15 v1.2
+ LaTeX document class for bangtex]
+\newcommand\@ptsize{}
+\DeclareOption{a4paper}
+ {\setlength\paperheight {297mm}%
+ \setlength\paperwidth {210mm}}
+\DeclareOption{a5paper}
+ {\setlength\paperheight {210mm}%
+ \setlength\paperwidth {148mm}}
+\DeclareOption{b5paper}
+ {\setlength\paperheight {250mm}%
+ \setlength\paperwidth {176mm}}
+\DeclareOption{letterpaper}
+ {\setlength\paperheight {11in}%
+ \setlength\paperwidth {8.5in}}
+\DeclareOption{legalpaper}
+ {\setlength\paperheight {14in}%
+ \setlength\paperwidth {8.5in}}
+\DeclareOption{executivepaper}
+ {\setlength\paperheight {10.5in}%
+ \setlength\paperwidth {7.25in}}
+\DeclareOption{landscape}
+ {\setlength\@tempdima {\paperheight}%
+ \setlength\paperheight {\paperwidth}%
+ \setlength\paperwidth {\@tempdima}}
+\DeclareOption{10pt}{\renewcommand\@ptsize{0}}
+\DeclareOption{11pt}{\renewcommand\@ptsize{1}}
+\DeclareOption{12pt}{\renewcommand\@ptsize{2}}
+\if@compatibility
+ \DeclareOption{twoside}{\@latexerr{No `twoside' layout for letters}%
+ \@eha}
+\else
+ \DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
+\fi
+\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
+\DeclareOption{draft}{\setlength\overfullrule{5pt}}
+\DeclareOption{final}{\setlength\overfullrule{0pt}}
+\DeclareOption{leqno}{\input{leqno.clo}}
+\DeclareOption{fleqn}{\input{fleqn.clo}}
+\ExecuteOptions{letterpaper,10pt,oneside,onecolumn,final}
+\ProcessOptions
+\input bangfont
+\input{bsize1\@ptsize.clo}
+\setlength\lineskip{1\p@}
+\setlength\normallineskip{1\p@}
+\renewcommand\baselinestretch{}
+\setlength\parskip{0.7em}
+\setlength\parindent{0\p@}
+\@lowpenalty 51
+\@medpenalty 151
+\@highpenalty 301
+\setlength\headheight{12\p@}
+\setlength\headsep {45\p@}
+\setlength\footskip{25\p@}
+\if@compatibility
+ \setlength\textwidth{365\p@}
+ \setlength\textheight{505\p@}
+\fi
+\if@compatibility
+ \setlength\oddsidemargin{53pt}
+ \setlength\evensidemargin{53pt}
+ \setlength\marginparwidth{90pt}
+\else
+ \setlength\@tempdima{\paperwidth}
+ \addtolength\@tempdima{-2in}
+ \addtolength\@tempdima{-\textwidth}
+ \setlength\oddsidemargin {.5\@tempdima}
+ \setlength\evensidemargin {\oddsidemargin}
+ \setlength\marginparwidth {90\p@}
+\fi
+\setlength\marginparsep {11\p@}
+\setlength\marginparpush{5\p@}
+\setlength\topmargin{27pt}
+\setlength\footnotesep{12\p@}
+\setlength{\skip\footins}{10\p@ \@plus 2\p@ \@minus 4\p@}
+\if@twoside
+ \def\ps@headings{%
+ \let\@oddfoot\@empty\let\@evenfoot\@empty
+ \def\@oddhead{\slshape\headtoname{} \ignorespaces\toname
+ \hfil \@date
+ \hfil \pagename{} \thepage}%
+ \let\@evenhead\@oddhead}
+\else
+ \def\ps@headings{%
+ \let\@oddfoot\@empty
+ \def\@oddhead{\slshape\headtoname{} \ignorespaces\toname
+ \hfil \@date
+ \hfil \pagename{} \thepage}}
+\fi
+\def\ps@empty{%
+ \let\@oddfoot\@empty\let\@oddhead\@empty
+ \let\@evenfoot\@empty\let\@evenhead\@empty}
+\def\ps@firstpage{%
+ \let\@oddhead\@empty
+ \def\@oddfoot{\raisebox{-45\p@}[\z@]{%
+ \hb@xt@\textwidth{\hspace*{100\p@}%
+ \ifcase \@ptsize\relax
+ \normalsize
+ \or
+ \small
+ \or
+ \footnotesize
+ \fi
+ \fromlocation \hfill \telephonenum}}\hss}}
+\def\ps@plain{%
+ \let\@oddhead\@empty
+ \def\@oddfoot{\normalfont\hfil\thepage\hfil}%
+ \def\@evenfoot{\normalfont\hfil\thepage\hfil}}
+\newcommand*{\name}[1]{\def\fromname{#1}}
+\newcommand*{\signature}[1]{\def\fromsig{#1}}
+\newcommand*{\address}[1]{\def\fromaddress{#1}}
+\newcommand*{\location}[1]{\def\fromlocation{#1}}
+\newcommand*{\telephone}[1]{\def\telephonenum{#1}}
+\name{}
+\signature{}
+\address{}
+\location{}
+\telephone{}
+\newcommand*{\makelabels}{%
+ \AtBeginDocument{%
+ \let\@startlabels\startlabels
+ \let\@mlabel\mlabel
+ \if@filesw
+ \immediate\write\@mainaux{\string\@startlabels}\fi}%
+ \AtEndDocument{%
+ \if@filesw\immediate\write\@mainaux{\string\clearpage}\fi}}
+\@onlypreamble\makelabels
+\newenvironment{letter}[1]
+ {\newpage
+ \if@twoside \ifodd\c@page
+ \else\thispagestyle{empty}\null\newpage\fi
+ \fi
+ \c@page\@ne
+ \c@footnote\@ne
+ \interlinepenalty=200 % smaller than the TeXbook value
+ \@processto{\leavevmode\ignorespaces #1}}
+ {\stopletter\@@par\pagebreak\@@par
+ \if@filesw
+ \begingroup
+ \let\\=\relax
+ \let\protect\@unexpandable@protect
+ \immediate\write\@auxout{%
+ \string\@mlabel{\returnaddress}{\toname\\\toaddress}}%
+ \endgroup
+ \fi}
+\long\def\@processto#1{%
+ \@xproc #1\\@@@%
+ \ifx\toaddress\@empty
+ \else
+ \@yproc #1@@@%
+ \fi}
+\long\def\@xproc #1\\#2@@@{\def\toname{#1}\def\toaddress{#2}}
+\long\def\@yproc #1\\#2@@@{\def\toaddress{#2}}
+\newcommand*{\stopbreaks}{%
+ \interlinepenalty\@M
+ \def\par{\@@par\nobreak}%
+ \let\\\@nobreakcr
+ \let\vspace\@nobreakvspace}
+\DeclareRobustCommand\@nobreakvspace
+ {\@ifstar\@nobreakvspacex\@nobreakvspacex}
+\def\@nobreakvspacex#1{%
+ \ifvmode
+ \nobreak\vskip #1\relax
+ \else
+ \@bsphack\vadjust{\nobreak\vskip #1}\@esphack
+ \fi}
+\def\@nobreakcr{\@ifstar{\@normalcr*}{\@normalcr*}}
+\newcommand*{\startbreaks}{%
+ \let\\\@normalcr
+ \interlinepenalty 200%
+ \def\par{\@@par\penalty 200\relax}}
+\newdimen\longindentation
+\longindentation=.5\textwidth
+\newdimen\indentedwidth
+\indentedwidth=\textwidth
+\advance\indentedwidth -\longindentation
+\newcommand*{\opening}[1]{\ifx\@empty\fromaddress
+ \thispagestyle{firstpage}%
+ {\raggedleft\@date\par}%
+ \else % home address
+ \thispagestyle{empty}%
+ {\raggedleft\begin{tabular}{l@{}}\ignorespaces
+ \fromaddress \\*[2\parskip]%
+ \@date \end{tabular}\par}%
+ \fi
+ \vspace{2\parskip}%
+ {\raggedright \toname \\ \toaddress \par}%
+ \vspace{2\parskip}%
+ #1\par\nobreak}
+\newcommand{\closing}[1]{\par\nobreak\vspace{\parskip}%
+ \stopbreaks
+ \noindent
+ \ifx\@empty\fromaddress\else
+ \hspace*{\longindentation}\fi
+ \parbox{\indentedwidth}{\raggedright
+ \ignorespaces #1\\[6\medskipamount]%
+ \ifx\@empty\fromsig
+ \fromname
+ \else \fromsig \fi\strut}%
+ \par}
+\medskipamount=\parskip
+\newcommand*{\cc}[1]{%
+ \par\noindent
+ \parbox[t]{\textwidth}{%
+ \@hangfrom{\normalfont\ccname: }%
+ \ignorespaces #1\strut}\par}
+\newcommand*{\encl}[1]{%
+ \par\noindent
+ \parbox[t]{\textwidth}{%
+ \@hangfrom{\bng\enclname: }%
+ \ignorespaces #1\strut}\par}
+\newcommand*{\ps}{\par\startbreaks}
+\newcommand*{\stopletter}{}
+\newcommand*{\returnaddress}{}
+\newcount\labelcount
+\newcommand*{\startlabels}{\labelcount\z@
+ \pagestyle{empty}%
+ \let\@texttop\relax
+ \topmargin -50\p@
+ \headsep \z@
+ \oddsidemargin -35\p@
+ \evensidemargin -35\p@
+ \textheight 10in
+ \@colht\textheight \@colroom\textheight \vsize\textheight
+ \textwidth 550\p@
+ \columnsep 26\p@
+ \ifcase \@ptsize\relax
+ \bng
+ \or
+ \sbng
+ \fi
+ \baselineskip \z@
+ \lineskip \z@
+ \boxmaxdepth \z@
+ \parindent \z@
+ \twocolumn\relax}
+\let\@startlabels=\relax
+\newcommand*{\mlabel}[2]{%
+ \parbox[b][2in][c]{262\p@}{\strut\ignorespaces #2}%
+ }
+\let\@mlabel=\@gobbletwo
+\setlength\leftmargini {2.5em}
+\setlength\leftmarginii {2.2em}
+\setlength\leftmarginiii {1.87em}
+\setlength\leftmarginiv {1.7em}
+\setlength\leftmarginv {1em}
+\setlength\leftmarginvi {1em}
+\setlength\leftmargin {\leftmargini}
+\setlength \labelsep {5\p@}
+\setlength \labelwidth{\leftmargini}
+\addtolength\labelwidth{-\labelsep}
+\setlength\partopsep{0\p@}
+\@beginparpenalty -\@lowpenalty
+\@endparpenalty -\@lowpenalty
+\@itempenalty -\@lowpenalty
+\def\@listI{\setlength\leftmargin{\leftmargini}%
+ \setlength\parsep {0\p@}%
+ \setlength\topsep {.4em}%
+ \setlength\itemsep{.4em}}
+\let\@listi\@listI
+\@listi
+\def\@listii {\setlength \leftmargin{\leftmarginii}%
+ \setlength \labelwidth{\leftmarginii}%
+ \addtolength\labelwidth{-\labelsep}}
+\def\@listiii{\setlength \leftmargin{\leftmarginiii}%
+ \setlength \labelwidth{\leftmarginiii}%
+ \addtolength\labelwidth{-\labelsep}%
+ \setlength \topsep {.2em}%
+ \setlength \itemsep {\topsep}}
+\def\@listiv {\setlength \leftmargin{\leftmarginiv}%
+ \setlength \labelwidth{\leftmarginiv}%
+ \addtolength\labelwidth{-\labelsep}}
+\def\@listv {\setlength \leftmargin{\leftmarginv}%
+ \setlength \labelwidth{\leftmarginv}%
+ \addtolength\labelwidth{-\labelsep}}
+\def\@listvi {\setlength \leftmargin{\leftmarginvi}%
+ \setlength \labelwidth{\leftmarginvi}%
+ \addtolength\labelwidth{-\labelsep}}
+\renewcommand\theenumi{\@arabic\c@enumi}
+\renewcommand\theenumii{\@alph\c@enumii}
+\renewcommand\theenumiii{\@roman\c@enumiii}
+\renewcommand\theenumiv{\@Alph\c@enumiv}
+\newcommand\labelenumi{\theenumi.}
+\newcommand\labelenumii{(\theenumii)}
+\newcommand\labelenumiii{\theenumiii.}
+\newcommand\labelenumiv{\theenumiv.}
+\renewcommand\p@enumii{\theenumi}
+\renewcommand\p@enumiii{\theenumi(\theenumii)}
+\renewcommand\p@enumiv{\p@enumiii\theenumiii}
+\newcommand\labelitemi{\textbullet}
+\newcommand\labelitemii{\normalfont\bfseries \textendash}
+\newcommand\labelitemiii{\textasteriskcentered}
+\newcommand\labelitemiv{\textperiodcentered}
+\newenvironment{description}
+ {\list{}{\labelwidth\z@ \itemindent-\leftmargin
+ \let\makelabel\descriptionlabel}}
+ {\endlist}
+\newcommand*{\descriptionlabel}[1]{\hspace\labelsep
+ \normalfont\bfseries #1}
+\newenvironment{verse}
+ {\let\\=\@centercr
+ \list{}{\setlength\itemsep{\z@}%
+ \setlength\itemindent{-15\p@}%
+ \setlength\listparindent{\itemindent}%
+ \setlength\rightmargin{\leftmargin}%
+ \addtolength\leftmargin{15\p@}}%
+ \item[]}
+ {\endlist}
+\newenvironment{quotation}
+ {\list{}{\setlength\listparindent{1.5em}%
+ \setlength\itemindent{\listparindent}%
+ \setlength\rightmargin{\leftmargin}}%
+ \item[]}
+ {\endlist}
+\newenvironment{quote}
+ {\list{}{\setlength\rightmargin{\leftmargin}}%
+ \item[]}
+ {\endlist}
+\setlength\arraycolsep{5\p@}
+\setlength\tabcolsep{6\p@}
+\setlength\arrayrulewidth{.4\p@}
+\setlength\doublerulesep{2\p@}
+\setlength\tabbingsep{\labelsep}
+\skip\@mpfootins = \skip\footins
+\setlength\fboxsep{3\p@}
+\setlength\fboxrule{.4\p@}
+\renewcommand\theequation{\@arabic\c@equation}
+\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
+\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
+\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
+\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
+\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
+\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\relax}
+\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\relax}
+\DeclareRobustCommand*{\cal}{\@fontswitch{\relax}{\mathcal}}
+\DeclareRobustCommand*{\mit}{\@fontswitch{\relax}{\mathnormal}}
+\renewcommand\footnoterule{%
+ \kern-\p@
+ \hrule \@width .4\columnwidth
+ \kern .6\p@}
+\long\def\@makefntext#1{%
+ \noindent
+ \hangindent 5\p@
+ \hb@xt@5\p@{\hss\@makefnmark}#1}
+\newcommand*{\ccname}{cc}
+\newcommand*{\enclname}{encl}
+\newcommand*{\pagename}{prR}
+\newcommand*{\headtoname}{}
+\newcommand*{\today}{\number\day\space\ifcase\month\or
+ januya\*r*i\or \*ph*ebRuya\*r*i\or mar/c\or E\*pR*il\or \*m*e\or jun\or
+ julaI\or Aagos/T\or \*s*e\*p/T*em/bor\or A\*k/T*eabor\or
+ no\*bh*em/bor\or \*D*i\*s*em/bor\fi,
+ \number\year}
+\setlength\columnsep{10\p@}
+\setlength\columnseprule{0\p@}
+\pagestyle{plain}
+\pagenumbering{arabic}
+\raggedbottom
+\def\@texttop{\ifnum\c@page=1\vskip \z@ plus.00006fil\relax\fi}
+\onecolumn
+\endinput
+%%
+%% End of file `letter.cls'.
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/bletter.sty b/macros/omega/latex/contrib/bengali-omega/tex/latex/bletter.sty
new file mode 100644
index 0000000000..970667aff3
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/bletter.sty
@@ -0,0 +1,81 @@
+%%
+%% This is file `bletter.sty'
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Permission is granted to copy this file to another file with a
+%% clearly different name and to customize the declarations in that
+%% copy to serve the needs of your installation.
+%%
+%% However, NO PERMISSION is granted to generate or to distribute a
+%% modified version of this file under its original name.
+%%
+%% You are NOT ALLOWED to change this file.
+%%
+%%
+%% MODIFICATION ADVICE:
+%%
+%% If you want to customize this file, it is best to make a copy of
+%% the source file(s) from which it was produced. Use a different
+%% name for your copy(ies) and modify the copy(ies); this will ensure
+%% that your modifications do not get overwritten when you install a
+%% new release of the standard system. You should also ensure that
+%% your modified source file does not generate any modified file with
+%% the same name as a standard file.
+%%
+%% You can then easily distribute your modifications by distributing
+%% the modified and renamed copy of the source file. This will ensure
+%% that other users can safely use your modifications.
+%%
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+\NeedsTeXFormat{LaTeX2e}
+\@obsoletefile{letter.cls}{letter.sty}
+\LoadClass{letter}
+\endinput
+%%
+%% End of file `letter.sty'.
+
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/bsize10.clo b/macros/omega/latex/contrib/bengali-omega/tex/latex/bsize10.clo
new file mode 100644
index 0000000000..3317990fb2
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/bsize10.clo
@@ -0,0 +1,312 @@
+%%
+%% This is file `bsize10.clo',
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Permission is granted to copy this file to another file with a
+%% clearly different name and to customize the declarations in that
+%% copy to serve the needs of your installation.
+%%
+%% However, NO PERMISSION is granted to generate or to distribute a
+%% modified version of this file under its original name.
+%%
+%% You are NOT ALLOWED to change this file.
+%%
+%%
+%% MODIFICATION ADVICE:
+%%
+%% If you want to customize this file, it is best to make a copy of
+%% the source file(s) from which it was produced. Use a different
+%% name for your copy(ies) and modify the copy(ies); this will ensure
+%% that your modifications do not get overwritten when you install a
+%% new release of the standard system. You should also ensure that
+%% your modified source file does not generate any modified file with
+%% the same name as a standard file.
+%%
+%% You can then easily distribute your modifications by distributing
+%% the modified and renamed copy of the source file. This will ensure
+%% that other users can safely use your modifications.
+%%
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+\ProvidesFile{bsize10.clo}
+\ProvidesClass{barticle}
+ [2001/04/15 v1.2
+ LaTeX document for bangtex]
+\renewcommand\normalsize{%
+ \@setfontsize\normalsize\@xpt\@xiipt
+ \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
+ \belowdisplayskip \abovedisplayskip
+ \let\@listi\@listI}
+\normalsize
+\newcommand\small{%
+ \@setfontsize\small\@ixpt{11}%
+ \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
+ \abovedisplayshortskip \z@ \@plus2\p@
+ \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 4\p@ \@plus2\p@ \@minus2\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\newcommand\footnotesize{%
+ \@setfontsize\footnotesize\@viiipt{9.5}%
+ \abovedisplayskip 6\p@ \@plus2\p@ \@minus4\p@
+ \abovedisplayshortskip \z@ \@plus\p@
+ \belowdisplayshortskip 3\p@ \@plus\p@ \@minus2\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 3\p@ \@plus\p@ \@minus\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\newcommand\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt}
+\newcommand\tiny{\@setfontsize\tiny\@vpt\@vipt}
+\newcommand\large{\@setfontsize\large\@xiipt{14}}
+\newcommand\Large{\@setfontsize\Large\@xivpt{18}}
+\newcommand\LARGE{\@setfontsize\LARGE\@xviipt{22}}
+\newcommand\huge{\@setfontsize\huge\@xxpt{25}}
+\newcommand\Huge{\@setfontsize\Huge\@xxvpt{30}}
+%
+\def\sbng{\bngviii}
+\def\tbng{\bngvi}
+\def\bng{\bngx}
+\def\lbng{\bngxiv}
+\def\Lbng{\bngxviii}
+\def\LBng{\bngxxii}
+\def\hbng{\bngxxv}
+\def\Hbng{\bngxxx}
+%
+\def\sbns{\bnsviii}
+\def\tbns{\bnsvi}
+\def\bns{\bnsx}
+\def\lbns{\bnsxiv}
+\def\Lbns{\bnsxviii}
+\def\LBns{\bnsxxii}
+\def\hbns{\bnsxxv}
+\def\Hbns{\bnsxxx}
+%
+\def\sbnw{\bnwviii}
+\def\tbnw{\bnwvi}
+\def\bnw{\bnwx}
+\def\lbnw{\bnwxiv}
+\def\Lbnw{\bnwxviii}
+\def\LBnw{\bnwxxii}
+\def\hbnw{\bnwxxv}
+\def\Hbnw{\bnwxxx}
+%
+\def\sbnh{\bnhviii}
+\def\tbnh{\bnhvi}
+\def\bnh{\bnhx}
+\def\lbnh{\bnhxiv}
+\def\Lbnh{\bnhxviii}
+\def\LBnh{\bnhxxii}
+\def\hbnh{\bnhxxv}
+\def\Hbnh{\bnhxxx}
+%
+\if@twocolumn
+ \setlength\parindent{1em}
+\else
+ \setlength\parindent{15\p@}
+\fi
+\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@}
+\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@}
+\setlength\headheight{12\p@}
+\setlength\headsep {25\p@}
+\setlength\topskip {10\p@}
+\setlength\footskip{30\p@}
+\if@compatibility \setlength\maxdepth{4\p@} \else
+\setlength\maxdepth{.5\topskip} \fi
+\if@compatibility
+ \if@twocolumn
+ \setlength\textwidth{410\p@}
+ \else
+ \setlength\textwidth{345\p@}
+ \fi
+\else
+ \setlength\@tempdima{\paperwidth}
+ \addtolength\@tempdima{-2in}
+ \setlength\@tempdimb{345\p@}
+ \if@twocolumn
+ \ifdim\@tempdima>2\@tempdimb\relax
+ \setlength\textwidth{2\@tempdimb}
+ \else
+ \setlength\textwidth{\@tempdima}
+ \fi
+ \else
+ \ifdim\@tempdima>\@tempdimb\relax
+ \setlength\textwidth{\@tempdimb}
+ \else
+ \setlength\textwidth{\@tempdima}
+ \fi
+ \fi
+\fi
+\if@compatibility\else
+ \@settopoint\textwidth
+\fi
+\if@compatibility
+ \setlength\textheight{43\baselineskip}
+\else
+ \setlength\@tempdima{\paperheight}
+ \addtolength\@tempdima{-2in}
+ \addtolength\@tempdima{-1.5in}
+ \divide\@tempdima\baselineskip
+ \@tempcnta=\@tempdima
+ \setlength\textheight{\@tempcnta\baselineskip}
+\fi
+\addtolength\textheight{\topskip}
+\if@twocolumn
+ \setlength\marginparsep {10\p@}
+\else
+ \setlength\marginparsep{11\p@}
+\fi
+\setlength\marginparpush{5\p@}
+\if@compatibility
+ \if@twoside
+ \setlength\oddsidemargin {44\p@}
+ \setlength\evensidemargin {82\p@}
+ \setlength\marginparwidth {107\p@}
+ \else
+ \setlength\oddsidemargin {63\p@}
+ \setlength\evensidemargin {63\p@}
+ \setlength\marginparwidth {90\p@}
+ \fi
+ \if@twocolumn
+ \setlength\oddsidemargin {30\p@}
+ \setlength\evensidemargin {30\p@}
+ \setlength\marginparwidth {48\p@}
+ \fi
+\else
+ \if@twoside
+ \setlength\@tempdima {\paperwidth}
+ \addtolength\@tempdima {-\textwidth}
+ \setlength\oddsidemargin {.4\@tempdima}
+ \addtolength\oddsidemargin {-1in}
+ \setlength\marginparwidth {.6\@tempdima}
+ \addtolength\marginparwidth {-\marginparsep}
+ \addtolength\marginparwidth {-0.4in}
+ \else
+ \setlength\@tempdima {\paperwidth}
+ \addtolength\@tempdima {-\textwidth}
+ \setlength\oddsidemargin {.5\@tempdima}
+ \addtolength\oddsidemargin {-1in}
+ \setlength\marginparwidth {.5\@tempdima}
+ \addtolength\marginparwidth {-\marginparsep}
+ \addtolength\marginparwidth {-0.4in}
+ \addtolength\marginparwidth {-.4in}
+ \fi
+ \ifdim \marginparwidth >2in
+ \setlength\marginparwidth{2in}
+ \fi
+ \@settopoint\oddsidemargin
+ \@settopoint\marginparwidth
+ \setlength\evensidemargin {\paperwidth}
+ \addtolength\evensidemargin{-2in}
+ \addtolength\evensidemargin{-\textwidth}
+ \addtolength\evensidemargin{-\oddsidemargin}
+ \@settopoint\evensidemargin
+\fi
+\if@compatibility
+ \setlength\topmargin{27pt}
+\else
+ \setlength\topmargin{\paperheight}
+ \addtolength\topmargin{-2in}
+ \addtolength\topmargin{-\headheight}
+ \addtolength\topmargin{-\headsep}
+ \addtolength\topmargin{-\textheight}
+ \addtolength\topmargin{-\footskip} % this might be wrong!
+ \addtolength\topmargin{-.5\topmargin}
+ \@settopoint\topmargin
+\fi
+\setlength\footnotesep{6.65\p@}
+\setlength{\skip\footins}{9\p@ \@plus 4\p@ \@minus 2\p@}
+\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\intextsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\@fptop{0\p@ \@plus 1fil}
+\setlength\@fpsep{8\p@ \@plus 2fil}
+\setlength\@fpbot{0\p@ \@plus 1fil}
+\setlength\@dblfptop{0\p@ \@plus 1fil}
+\setlength\@dblfpsep{8\p@ \@plus 2fil}
+\setlength\@dblfpbot{0\p@ \@plus 1fil}
+\setlength\partopsep{2\p@ \@plus 1\p@ \@minus 1\p@}
+\def\@listi{\leftmargin\leftmargini
+ \parsep 4\p@ \@plus2\p@ \@minus\p@
+ \topsep 8\p@ \@plus2\p@ \@minus4\p@
+ \itemsep4\p@ \@plus2\p@ \@minus\p@}
+\let\@listI\@listi
+\@listi
+\def\@listii {\leftmargin\leftmarginii
+ \labelwidth\leftmarginii
+ \advance\labelwidth-\labelsep
+ \topsep 4\p@ \@plus2\p@ \@minus\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}
+\def\@listiii{\leftmargin\leftmarginiii
+ \labelwidth\leftmarginiii
+ \advance\labelwidth-\labelsep
+ \topsep 2\p@ \@plus\p@\@minus\p@
+ \parsep \z@
+ \partopsep \p@ \@plus\z@ \@minus\p@
+ \itemsep \topsep}
+\def\@listiv {\leftmargin\leftmarginiv
+ \labelwidth\leftmarginiv
+ \advance\labelwidth-\labelsep}
+\def\@listv {\leftmargin\leftmarginv
+ \labelwidth\leftmarginv
+ \advance\labelwidth-\labelsep}
+\def\@listvi {\leftmargin\leftmarginvi
+ \labelwidth\leftmarginvi
+ \advance\labelwidth-\labelsep}
+\endinput
+%%
+%% End of file `bsize10.clo'.
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/bsize11.clo b/macros/omega/latex/contrib/bengali-omega/tex/latex/bsize11.clo
new file mode 100644
index 0000000000..97e593436f
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/bsize11.clo
@@ -0,0 +1,311 @@
+%%
+%% This is file `bsize11.clo',
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Permission is granted to copy this file to another file with a
+%% clearly different name and to customize the declarations in that
+%% copy to serve the needs of your installation.
+%%
+%% However, NO PERMISSION is granted to generate or to distribute a
+%% modified version of this file under its original name.
+%%
+%% You are NOT ALLOWED to change this file.
+%%
+%%
+%% MODIFICATION ADVICE:
+%%
+%% If you want to customize this file, it is best to make a copy of
+%% the source file(s) from which it was produced. Use a different
+%% name for your copy(ies) and modify the copy(ies); this will ensure
+%% that your modifications do not get overwritten when you install a
+%% new release of the standard system. You should also ensure that
+%% your modified source file does not generate any modified file with
+%% the same name as a standard file.
+%%
+%% You can then easily distribute your modifications by distributing
+%% the modified and renamed copy of the source file. This will ensure
+%% that other users can safely use your modifications.
+%%
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+\ProvidesFile{bsize11.clo}
+ [2001/04/15 v1.2
+ LaTeX document for bangtex]
+\renewcommand\normalsize{%
+ \@setfontsize\normalsize\@xipt{13.6}%
+ \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
+ \belowdisplayskip \abovedisplayskip
+ \let\@listi\@listI}
+\normalsize
+\newcommand\small{%
+ \@setfontsize\small\@xpt\@xiipt
+ \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 6\p@ \@plus2\p@ \@minus2\p@
+ \parsep 3\p@ \@plus2\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\newcommand\footnotesize{%
+ \@setfontsize\footnotesize\@ixpt{11}%
+ \abovedisplayskip 8\p@ \@plus2\p@ \@minus4\p@
+ \abovedisplayshortskip \z@ \@plus\p@
+ \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 4\p@ \@plus2\p@ \@minus2\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\newcommand\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}}
+\newcommand\tiny{\@setfontsize\tiny\@vipt\@viipt}
+\newcommand\large{\@setfontsize\large\@xiipt{14}}
+\newcommand\Large{\@setfontsize\Large\@xivpt{18}}
+\newcommand\LARGE{\@setfontsize\LARGE\@xviipt{22}}
+\newcommand\huge{\@setfontsize\huge\@xxpt{25}}
+\newcommand\Huge{\@setfontsize\Huge\@xxvpt{30}}
+%
+\def\sbng{\bngviii}
+\def\tbng{\bngvii}
+\def\bng{\bngxi}
+\def\lbng{\bngxiv}
+\def\Lbng{\bngxviii}
+\def\LBng{\bngxxii}
+\def\hbng{\bngxxv}
+\def\Hbng{\bngxxx}
+%
+\def\sbns{\bnsviii}
+\def\tbns{\bnsvii}
+\def\bns{\bnsxi}
+\def\lbns{\bnsxiv}
+\def\Lbns{\bnsxviii}
+\def\LBns{\bnsxxii}
+\def\hbns{\bnsxxv}
+\def\Hbns{\bnsxxx}
+%
+\def\sbnw{\bnwviii}
+\def\tbnw{\bnwvii}
+\def\bnw{\bnwxi}
+\def\lbnw{\bnwxiv}
+\def\Lbnw{\bnwxviii}
+\def\LBnw{\bnwxxii}
+\def\hbnw{\bnwxxv}
+\def\Hbnw{\bnwxxx}
+%
+\def\sbnh{\bnhviii}
+\def\tbnh{\bnhvii}
+\def\bnh{\bnhxi}
+\def\lbnh{\bnhxiv}
+\def\Lbnh{\bnhxviii}
+\def\LBnh{\bnhxxii}
+\def\hbnh{\bnhxxv}
+\def\Hbnh{\bnhxxx}
+%
+\if@twocolumn
+ \setlength\parindent{1em}
+\else
+ \setlength\parindent{17\p@}
+\fi
+\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@}
+\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@}
+\setlength\headheight{12\p@}
+\setlength\headsep {25\p@}
+\setlength\topskip {11\p@}
+\setlength\footskip{30\p@}
+\if@compatibility \setlength\maxdepth{4\p@} \else
+\setlength\maxdepth{.5\topskip} \fi
+\if@compatibility
+ \if@twocolumn
+ \setlength\textwidth{410\p@}
+ \else
+ \setlength\textwidth{360\p@}
+ \fi
+\else
+ \setlength\@tempdima{\paperwidth}
+ \addtolength\@tempdima{-2in}
+ \setlength\@tempdimb{360\p@}
+ \if@twocolumn
+ \ifdim\@tempdima>2\@tempdimb\relax
+ \setlength\textwidth{2\@tempdimb}
+ \else
+ \setlength\textwidth{\@tempdima}
+ \fi
+ \else
+ \ifdim\@tempdima>\@tempdimb\relax
+ \setlength\textwidth{\@tempdimb}
+ \else
+ \setlength\textwidth{\@tempdima}
+ \fi
+ \fi
+\fi
+\if@compatibility\else
+ \@settopoint\textwidth
+\fi
+\if@compatibility
+ \setlength\textheight{38\baselineskip}
+\else
+ \setlength\@tempdima{\paperheight}
+ \addtolength\@tempdima{-2in}
+ \addtolength\@tempdima{-1.5in}
+ \divide\@tempdima\baselineskip
+ \@tempcnta=\@tempdima
+ \setlength\textheight{\@tempcnta\baselineskip}
+\fi
+\addtolength\textheight{\topskip}
+\if@twocolumn
+ \setlength\marginparsep {10\p@}
+\else
+ \setlength\marginparsep{10\p@}
+\fi
+\setlength\marginparpush{5\p@}
+\if@compatibility
+ \if@twoside
+ \setlength\oddsidemargin {36\p@}
+ \setlength\evensidemargin {74\p@}
+ \setlength\marginparwidth {100\p@}
+ \else
+ \setlength\oddsidemargin {54\p@}
+ \setlength\evensidemargin {54\p@}
+ \setlength\marginparwidth {83\p@}
+ \fi
+ \if@twocolumn
+ \setlength\oddsidemargin {30\p@}
+ \setlength\evensidemargin {30\p@}
+ \setlength\marginparwidth {48\p@}
+ \fi
+\else
+ \if@twoside
+ \setlength\@tempdima {\paperwidth}
+ \addtolength\@tempdima {-\textwidth}
+ \setlength\oddsidemargin {.4\@tempdima}
+ \addtolength\oddsidemargin {-1in}
+ \setlength\marginparwidth {.6\@tempdima}
+ \addtolength\marginparwidth {-\marginparsep}
+ \addtolength\marginparwidth {-0.4in}
+ \else
+ \setlength\@tempdima {\paperwidth}
+ \addtolength\@tempdima {-\textwidth}
+ \setlength\oddsidemargin {.5\@tempdima}
+ \addtolength\oddsidemargin {-1in}
+ \setlength\marginparwidth {.5\@tempdima}
+ \addtolength\marginparwidth {-\marginparsep}
+ \addtolength\marginparwidth {-0.4in}
+ \addtolength\marginparwidth {-.4in}
+ \fi
+ \ifdim \marginparwidth >2in
+ \setlength\marginparwidth{2in}
+ \fi
+ \@settopoint\oddsidemargin
+ \@settopoint\marginparwidth
+ \setlength\evensidemargin {\paperwidth}
+ \addtolength\evensidemargin{-2in}
+ \addtolength\evensidemargin{-\textwidth}
+ \addtolength\evensidemargin{-\oddsidemargin}
+ \@settopoint\evensidemargin
+\fi
+\if@compatibility
+ \setlength\topmargin{27pt}
+\else
+ \setlength\topmargin{\paperheight}
+ \addtolength\topmargin{-2in}
+ \addtolength\topmargin{-\headheight}
+ \addtolength\topmargin{-\headsep}
+ \addtolength\topmargin{-\textheight}
+ \addtolength\topmargin{-\footskip} % this might be wrong!
+ \addtolength\topmargin{-.5\topmargin}
+ \@settopoint\topmargin
+\fi
+\setlength\footnotesep{7.7\p@}
+\setlength{\skip\footins}{10\p@ \@plus 4\p@ \@minus 2\p@}
+\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\intextsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\@fptop{0\p@ \@plus 1fil}
+\setlength\@fpsep{8\p@ \@plus 2fil}
+\setlength\@fpbot{0\p@ \@plus 1fil}
+\setlength\@dblfptop{0\p@ \@plus 1fil}
+\setlength\@dblfpsep{8\p@ \@plus 2fil}
+\setlength\@dblfpbot{0\p@ \@plus 1fil}
+\setlength\partopsep{3\p@ \@plus 1\p@ \@minus 1\p@}
+\def\@listi{\leftmargin\leftmargini
+ \parsep 4.5\p@ \@plus2\p@ \@minus\p@
+ \topsep 9\p@ \@plus3\p@ \@minus5\p@
+ \itemsep4.5\p@ \@plus2\p@ \@minus\p@}
+\let\@listI\@listi
+\@listi
+\def\@listii {\leftmargin\leftmarginii
+ \labelwidth\leftmarginii
+ \advance\labelwidth-\labelsep
+ \topsep 4.5\p@ \@plus2\p@ \@minus\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}
+\def\@listiii{\leftmargin\leftmarginiii
+ \labelwidth\leftmarginiii
+ \advance\labelwidth-\labelsep
+ \topsep 2\p@ \@plus\p@\@minus\p@
+ \parsep \z@
+ \partopsep \p@ \@plus\z@ \@minus\p@
+ \itemsep \topsep}
+\def\@listiv {\leftmargin\leftmarginiv
+ \labelwidth\leftmarginiv
+ \advance\labelwidth-\labelsep}
+\def\@listv {\leftmargin\leftmarginv
+ \labelwidth\leftmarginv
+ \advance\labelwidth-\labelsep}
+\def\@listvi {\leftmargin\leftmarginvi
+ \labelwidth\leftmarginvi
+ \advance\labelwidth-\labelsep}
+\endinput
+%%
+%% End of file `bsize11.clo'.
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/bsize12.clo b/macros/omega/latex/contrib/bengali-omega/tex/latex/bsize12.clo
new file mode 100644
index 0000000000..662aba04ad
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/bsize12.clo
@@ -0,0 +1,311 @@
+%%
+%% This is file `bsize12.clo',
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Permission is granted to copy this file to another file with a
+%% clearly different name and to customize the declarations in that
+%% copy to serve the needs of your installation.
+%%
+%% However, NO PERMISSION is granted to generate or to distribute a
+%% modified version of this file under its original name.
+%%
+%% You are NOT ALLOWED to change this file.
+%%
+%%
+%% MODIFICATION ADVICE:
+%%
+%% If you want to customize this file, it is best to make a copy of
+%% the source file(s) from which it was produced. Use a different
+%% name for your copy(ies) and modify the copy(ies); this will ensure
+%% that your modifications do not get overwritten when you install a
+%% new release of the standard system. You should also ensure that
+%% your modified source file does not generate any modified file with
+%% the same name as a standard file.
+%%
+%% You can then easily distribute your modifications by distributing
+%% the modified and renamed copy of the source file. This will ensure
+%% that other users can safely use your modifications.
+%%
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+\ProvidesFile{bsize12.clo}
+ [2001/04/15 v1.2
+ LaTeX document for bangtex]
+\renewcommand\normalsize{%
+ \@setfontsize\normalsize\@xiipt{14.5}%
+ \abovedisplayskip 12\p@ \@plus3\p@ \@minus7\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
+ \belowdisplayskip \abovedisplayskip
+ \let\@listi\@listI}
+\normalsize
+\newcommand\small{%
+ \@setfontsize\small\@xipt{13.6}%
+ \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 9\p@ \@plus3\p@ \@minus5\p@
+ \parsep 4.5\p@ \@plus2\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\newcommand\footnotesize{%
+ \@setfontsize\footnotesize\@xpt\@xiipt
+ \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
+ \abovedisplayshortskip \z@ \@plus3\p@
+ \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
+ \def\@listi{\leftmargin\leftmargini
+ \topsep 6\p@ \@plus2\p@ \@minus2\p@
+ \parsep 3\p@ \@plus2\p@ \@minus\p@
+ \itemsep \parsep}%
+ \belowdisplayskip \abovedisplayskip
+}
+\newcommand\scriptsize{\@setfontsize\scriptsize\@viiipt{9.5}}
+\newcommand\tiny{\@setfontsize\tiny\@vipt\@viipt}
+\newcommand\large{\@setfontsize\large\@xivpt{18}}
+\newcommand\Large{\@setfontsize\Large\@xviipt{22}}
+\newcommand\LARGE{\@setfontsize\LARGE\@xxpt{25}}
+\newcommand\huge{\@setfontsize\huge\@xxvpt{30}}
+\let\Huge=\huge
+%
+\def\sbng{\bngviii}
+\def\tbng{\bngvii}
+\def\bng{\bngxii}
+\def\lbng{\bngxviii}
+\def\Lbng{\bngxxii}
+\def\LBng{\bngxxv}
+\def\hbng{\bngxxx}
+\def\Hbng{\bngxxx}
+%
+\def\sbns{\bnsviii}
+\def\tbns{\bnsvii}
+\def\bns{\bnsxii}
+\def\lbns{\bnsxviii}
+\def\Lbns{\bnsxxii}
+\def\LBns{\bnsxxv}
+\def\hbns{\bnsxxx}
+\def\Hbns{\bnsxxx}
+%
+\def\sbnw{\bnwviii}
+\def\tbnw{\bnwvii}
+\def\bnw{\bnwxii}
+\def\lbnw{\bnwxviii}
+\def\Lbnw{\bnwxxii}
+\def\LBnw{\bnwxxv}
+\def\hbnw{\bnwxxx}
+\def\Hbnw{\bnwxxx}
+%
+\def\sbnh{\bnhviii}
+\def\tbnh{\bnhvii}
+\def\bnh{\bnhxii}
+\def\lbnh{\bnhxviii}
+\def\Lbnh{\bnhxxii}
+\def\LBnh{\bnhxxv}
+\def\hbnh{\bnhxxx}
+\def\Hbnh{\bnhxxx}
+%
+\if@twocolumn
+ \setlength\parindent{1em}
+\else
+ \setlength\parindent{1.5em}
+\fi
+\setlength\smallskipamount{3\p@ \@plus 1\p@ \@minus 1\p@}
+\setlength\medskipamount{6\p@ \@plus 2\p@ \@minus 2\p@}
+\setlength\bigskipamount{12\p@ \@plus 4\p@ \@minus 4\p@}
+\setlength\headheight{12\p@}
+\setlength\headsep {25\p@}
+\setlength\topskip {12\p@}
+\setlength\footskip{30\p@}
+\if@compatibility \setlength\maxdepth{4\p@} \else
+\setlength\maxdepth{.5\topskip} \fi
+\if@compatibility
+ \if@twocolumn
+ \setlength\textwidth{410\p@}
+ \else
+ \setlength\textwidth{390\p@}
+ \fi
+\else
+ \setlength\@tempdima{\paperwidth}
+ \addtolength\@tempdima{-2in}
+ \setlength\@tempdimb{390\p@}
+ \if@twocolumn
+ \ifdim\@tempdima>2\@tempdimb\relax
+ \setlength\textwidth{2\@tempdimb}
+ \else
+ \setlength\textwidth{\@tempdima}
+ \fi
+ \else
+ \ifdim\@tempdima>\@tempdimb\relax
+ \setlength\textwidth{\@tempdimb}
+ \else
+ \setlength\textwidth{\@tempdima}
+ \fi
+ \fi
+\fi
+\if@compatibility\else
+ \@settopoint\textwidth
+\fi
+\if@compatibility
+ \setlength\textheight{36\baselineskip}
+\else
+ \setlength\@tempdima{\paperheight}
+ \addtolength\@tempdima{-2in}
+ \addtolength\@tempdima{-1.5in}
+ \divide\@tempdima\baselineskip
+ \@tempcnta=\@tempdima
+ \setlength\textheight{\@tempcnta\baselineskip}
+\fi
+\addtolength\textheight{\topskip}
+\if@twocolumn
+ \setlength\marginparsep {10\p@}
+\else
+ \setlength\marginparsep{10\p@}
+\fi
+\setlength\marginparpush{7\p@}
+\if@compatibility
+ \if@twoside
+ \setlength\oddsidemargin {21\p@}
+ \setlength\evensidemargin {59\p@}
+ \setlength\marginparwidth {85\p@}
+ \else
+ \setlength\oddsidemargin {39.5\p@}
+ \setlength\evensidemargin {39.5\p@}
+ \setlength\marginparwidth {68\p@}
+ \fi
+ \if@twocolumn
+ \setlength\oddsidemargin {30\p@}
+ \setlength\evensidemargin {30\p@}
+ \setlength\marginparwidth {48\p@}
+ \fi
+\else
+ \if@twoside
+ \setlength\@tempdima {\paperwidth}
+ \addtolength\@tempdima {-\textwidth}
+ \setlength\oddsidemargin {.4\@tempdima}
+ \addtolength\oddsidemargin {-1in}
+ \setlength\marginparwidth {.6\@tempdima}
+ \addtolength\marginparwidth {-\marginparsep}
+ \addtolength\marginparwidth {-0.4in}
+ \else
+ \setlength\@tempdima {\paperwidth}
+ \addtolength\@tempdima {-\textwidth}
+ \setlength\oddsidemargin {.5\@tempdima}
+ \addtolength\oddsidemargin {-1in}
+ \setlength\marginparwidth {.5\@tempdima}
+ \addtolength\marginparwidth {-\marginparsep}
+ \addtolength\marginparwidth {-0.4in}
+ \addtolength\marginparwidth {-.4in}
+ \fi
+ \ifdim \marginparwidth >2in
+ \setlength\marginparwidth{2in}
+ \fi
+ \@settopoint\oddsidemargin
+ \@settopoint\marginparwidth
+ \setlength\evensidemargin {\paperwidth}
+ \addtolength\evensidemargin{-2in}
+ \addtolength\evensidemargin{-\textwidth}
+ \addtolength\evensidemargin{-\oddsidemargin}
+ \@settopoint\evensidemargin
+\fi
+\if@compatibility
+ \setlength\topmargin{27pt}
+\else
+ \setlength\topmargin{\paperheight}
+ \addtolength\topmargin{-2in}
+ \addtolength\topmargin{-\headheight}
+ \addtolength\topmargin{-\headsep}
+ \addtolength\topmargin{-\textheight}
+ \addtolength\topmargin{-\footskip} % this might be wrong!
+ \addtolength\topmargin{-.5\topmargin}
+ \@settopoint\topmargin
+\fi
+\setlength\footnotesep{8.4\p@}
+\setlength{\skip\footins}{10.8\p@ \@plus 4\p@ \@minus 2\p@}
+\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\intextsep {14\p@ \@plus 4\p@ \@minus 4\p@}
+\setlength\dblfloatsep {14\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\@fptop{0\p@ \@plus 1fil}
+\setlength\@fpsep{10\p@ \@plus 2fil}
+\setlength\@fpbot{0\p@ \@plus 1fil}
+\setlength\@dblfptop{0\p@ \@plus 1fil}
+\setlength\@dblfpsep{10\p@ \@plus 2fil}
+\setlength\@dblfpbot{0\p@ \@plus 1fil}
+\setlength\partopsep{3\p@ \@plus 2\p@ \@minus 2\p@}
+\def\@listi{\leftmargin\leftmargini
+ \parsep 5\p@ \@plus2.5\p@ \@minus\p@
+ \topsep 10\p@ \@plus4\p@ \@minus6\p@
+ \itemsep5\p@ \@plus2.5\p@ \@minus\p@}
+\let\@listI\@listi
+\@listi
+\def\@listii {\leftmargin\leftmarginii
+ \labelwidth\leftmarginii
+ \advance\labelwidth-\labelsep
+ \topsep 5\p@ \@plus2.5\p@ \@minus\p@
+ \parsep 2.5\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}
+\def\@listiii{\leftmargin\leftmarginiii
+ \labelwidth\leftmarginiii
+ \advance\labelwidth-\labelsep
+ \topsep 2.5\p@\@plus\p@\@minus\p@
+ \parsep \z@
+ \partopsep \p@ \@plus\z@ \@minus\p@
+ \itemsep \topsep}
+\def\@listiv {\leftmargin\leftmarginiv
+ \labelwidth\leftmarginiv
+ \advance\labelwidth-\labelsep}
+\def\@listv {\leftmargin\leftmarginv
+ \labelwidth\leftmarginv
+ \advance\labelwidth-\labelsep}
+\def\@listvi {\leftmargin\leftmarginvi
+ \labelwidth\leftmarginvi
+ \advance\labelwidth-\labelsep}
+\endinput
+%%
+%% End of file `bsize12.clo'.
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/mathbang.sty b/macros/omega/latex/contrib/bengali-omega/tex/latex/mathbang.sty
new file mode 100644
index 0000000000..e75385c94e
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/mathbang.sty
@@ -0,0 +1,79 @@
+%%
+%% This is file `mathbang.sty',
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This file is part of the package BANGTEX, containing Bangla fonts
+%% and style files for the TeX/LaTeX typesetting systems
+%%
+%% Copyright (C) 2001, 2003 Palash Baran Pal
+%% e-mail: pbpal@theory.saha.ernet.in
+%% internet: http://tnp.saha.ernet.in/~pbpal
+%% Address: Saha Institute of Nuclear Physics
+%% 1/AF Bidhan Nagar
+%% Calcutta 700064, INDIA
+%%
+%% Original release: January 2001
+%% Latest modification released: June 2003
+%%
+%% This program is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by
+%% the Free Software Foundation; either version 2 of the License, or
+%% (at your option) any later version.
+%%
+%% This program 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 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., 59 Temple Place, Suite 330, Boston, MA
+%% 02111-1307 USA
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Permission is granted to copy this file to another file with a
+%% clearly different name and to customize the declarations in that
+%% copy to serve the needs of your installation.
+%%
+%% However, NO PERMISSION is granted to generate or to distribute a
+%% modified version of this file under its original name.
+%%
+%% You are NOT ALLOWED to change this file.
+%%
+%%
+%% MODIFICATION ADVICE:
+%%
+%% If you want to customize this file, it is best to make a copy of
+%% the source file(s) from which it was produced. Use a different
+%% name for your copy(ies) and modify the copy(ies); this will ensure
+%% that your modifications do not get overwritten when you install a
+%% new release of the standard system. You should also ensure that
+%% your modified source file does not generate any modified file with
+%% the same name as a standard file.
+%%
+%% You can then easily distribute your modifications by distributing
+%% the modified and renamed copy of the source file. This will ensure
+%% that other users can safely use your modifications.
+%%
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+
+\ProvidesPackage{mathbang}[2002/06/01 Math Bangla package v1.0 (pbp)]
+\DeclareSymbolFont{bang}{U}{bang}{m}{n}
+\DeclareSymbolFontAlphabet{\mbng}{bang}
+\endinput
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/obeng.sty b/macros/omega/latex/contrib/bengali-omega/tex/latex/obeng.sty
new file mode 100644
index 0000000000..4fe57a3aa8
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/obeng.sty
@@ -0,0 +1,47 @@
+
+
+
+\def\externalfont{\fontfamily{\rmdefault}\selectfont}
+ \ocp\bengA=bengvelthuis2unicode
+ \ocp\bengB=beng-uni2cuni
+ \ocp\bengC=beng-uni2cuni2
+ \ocp\bengF=bangla-uni2bang
+
+
+ \ocplist\bengaliCTP=
+ \addbeforeocplist 1 \bengA
+ \addbeforeocplist 2 \bengB
+ \addbeforeocplist 3 \bengC
+ \addbeforeocplist 4 \bengF
+ \nullocplist
+
+
+\newcount\bengali@chnum
+%
+\newcommand*\do@bengali@catcodes{%
+ \bengali@chnum=0
+ \loop\catcode\bengali@chnum=11
+ \ifnum\bengali@chnum<12 \advance\bengali@chnum by1
+ \repeat
+ \bengali@chnum=14
+ \loop\catcode\bengali@chnum=11
+ \ifnum\bengali@chnum<31 \advance\bengali@chnum by1
+ \repeat
+ \catcode127=11 }
+% setup for utf-8 input %
+\ocp\UtfEightInput=inutf8
+\AtBeginDocument{
+ \DefaultInputMode onebyte
+ \InputMode currentfile onebyte
+ \DefaultInputTranslation onebyte \UtfEightInput
+ \InputTranslation currentfile \UtfEightInput}
+
+
+
+\long\def\bengali{\do@bengali@catcodes
+\fontencoding{U}\fontfamily{bang}\selectfont\catcode`\~=11
+\pushocplist\bengaliCTP}
+
+
+
+
diff --git a/macros/omega/latex/contrib/bengali-omega/tex/latex/odev.sty b/macros/omega/latex/contrib/bengali-omega/tex/latex/odev.sty
new file mode 100644
index 0000000000..912e858ef1
--- /dev/null
+++ b/macros/omega/latex/contrib/bengali-omega/tex/latex/odev.sty
@@ -0,0 +1,111 @@
+\def\externalfont{\fontfamily{\rmdefault}\selectfont}
+ \ocp\HindiA=velthuis2unicode
+ \ocp\HindiB=hindi-uni2cuni
+ \ocp\HindiBS=sanskrit-uni2cuni
+ \ocp\HindiC=hindi-uni2cuni2
+ \ocp\HindiD=hindi-cuni2font
+ \ocp\HindiDS=sanskrit-cuni2font
+ \ocp\HindiE=hindi-cuni2font2
+ \ocp\HindiF=hindi-cuni2font3
+
+ \ocplist\HindiCTP=
+ \addbeforeocplist 1 \HindiA
+ \addbeforeocplist 2 \HindiB
+ \addbeforeocplist 3 \HindiC
+ \addbeforeocplist 4 \HindiD
+ \addbeforeocplist 5 \HindiE
+ \addbeforeocplist 6 \HindiF
+ \nullocplist
+ \ocplist\SanskritCTP=
+ \addbeforeocplist 1 \HindiA
+ \addbeforeocplist 2 \HindiBS
+ \addbeforeocplist 3 \HindiC
+ \addbeforeocplist 4 \HindiDS
+ \addbeforeocplist 5 \HindiE
+ \addbeforeocplist 6 \HindiF
+ \nullocplist
+\newcount\dev@chnum
+
+% setup for utf-8 input %
+\ocp\UtfEightInput=inutf8
+\AtBeginDocument{
+ \DefaultInputMode onebyte
+ \InputMode currentfile onebyte
+ \DefaultInputTranslation onebyte \UtfEightInput
+ \InputTranslation currentfile \UtfEightInput}
+
+%
+\newcommand*\do@dev@catcodes{%
+ \dev@chnum=0
+ \loop\catcode\dev@chnum=11
+ \ifnum\dev@chnum<12 \advance\dev@chnum by1
+ \repeat
+ \dev@chnum=14
+ \loop\catcode\dev@chnum=11
+ \ifnum\dev@chnum<31 \advance\dev@chnum by1
+ \repeat
+ \catcode127=11 }
+%
+% We execute the macro straight away, which means these catcodes are in
+% force throughout the whole document, not just in the Devanagari part
+% of the text. This can sometimes cause spurious "Omega" characters if,
+% in some special conditions, TeX reads a line feed outside the \dn environment,
+% and so forth.
+% The alternative, i.e., calling the catcodes locally within Devanagari text, leads
+% to even worse "illegal character" problems with \chapter and \section headings, etc.
+% This dilemma may be soluble in the longer run, but is not being addressed in
+% the current release (1999).
+%
+%
+% Here are the macros that set the particular characters in the font:
+%
+\newdimen\itdim
+%
+\DeclareRobustCommand*\subscr[1]{{\clearocplists\/\itdim=\lastkern
+ \unkern\kern-\itdim \lower\dp0 \hbox to\itdim{#1\hfil}}}
+%
+\DeclareRobustCommand*\5{\llap{\char125}}
+\DeclareRobustCommand*\qqq[1]{\setbox0=\hbox{#1}#1\subscr{\char126}}
+\DeclareRobustCommand*\qqqa[1]{\setbox0=\hbox{#1}#1\subscr{\char0}}
+\DeclareRobustCommand*\qqqb[1]{\setbox0=\hbox{#1}#1\subscr{\char1}}
+\DeclareRobustCommand*\qqqc[1]{\setbox0=\hbox{#1}#1\subscr{\char2}}
+\DeclareRobustCommand*\qa[2]{\setbox0=\hbox{#1}#1\subscr{\char253\kern1.5ex\lower1.25ex
+ \hbox{\char#2}\kern-1.5ex}}
+\DeclareRobustCommand*\qb[1]{\setbox0=\hbox{#1}#1\subscr{\char253}}
+% New \qc ligature command introduced by devnag version 2:
+\DeclareRobustCommand*\qc[2]{\setbox0=\hbox{#1}#1\subscr{\char126\kern1.5ex\lower1.25ex
+ \hbox{\char#2}\kern-1.5ex}}
+\DeclareRobustCommand*\qq[1]{\setbox0=\hbox{#1}#1\subscr{\char94}}
+\DeclareRobustCommand*\qx[1]{\setbox0=\hbox{#1}#1\subscr{\char14}}
+\DeclareRobustCommand*\qy[1]{\setbox0=\hbox{#1}#1\subscr{\char31}}
+\DeclareRobustCommand*\qz[1]{\setbox0=\hbox{#1}#1\subscr{\char124}}
+\DeclareRobustCommand*\qzz[1]{{\clearocplists#1A\llap{\char4}}}
+\DeclareRobustCommand*\qva{\kern0.5ex\2\kern-0.5ex}
+\DeclareRobustCommand*\qvb{\kern1ex\0\kern-1ex}
+\DeclareRobustCommand*\qvc{\kern1ex\rdt\kern-1ex}
+\DeclareRobustCommand*\rs{\rm\thinspace}
+\let\re=\thinspace
+\DeclareRobustCommand*\rdt{\llap{\char19}}
+\DeclareRobustCommand*\dnnum{\let\nstyle=d}
+\DeclareRobustCommand*\cmnum{\let\nstyle=r}
+\cmnum
+\DeclareRobustCommand*\rn[1]{\if\nstyle r{\rm #1}\else#1\fi}
+\def\qqqx{\llap{{\clearocplists\char32}}}
+\def\qqqy{\llap{{\clearocplists\char"5C}}}
+\def\qqqz{\llap{{\clearocplists\char"7B}}}
+\def\qqqs{\llap{{\clearocplists\char4}}}
+\def\qqqr{\llap{{\clearocplists\char3}}}
+%
+%
+%
+
+
+%{\pushocplist\HindiCTP katarama k kt ktr ktrm ktrm}
+
+
+\long\def\hindi{\do@dev@catcodes
+\fontencoding{U}\fontfamily{dn}\selectfont\catcode`\~=11
+\pushocplist\HindiCTP}
+\long\def\sanskrit{\do@dev@catcodes
+\fontencoding{U}\fontfamily{dn}\selectfont\catcode`\~=11
+\pushocplist\SanskritCTP}