summaryrefslogtreecommitdiff
path: root/language/arabic
diff options
context:
space:
mode:
Diffstat (limited to 'language/arabic')
-rw-r--r--language/arabic/arabi-add/README25
-rw-r--r--language/arabic/arabi-add/arabi-add-doc.pdfbin0 -> 52996 bytes
-rw-r--r--language/arabic/arabi-add/arabi-add-example.pdfbin0 -> 129769 bytes
-rw-r--r--language/arabic/arabi-add/arabi-add.sty397
-rw-r--r--language/arabic/arabi/README85
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/README85
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/big2.pdfbin0 -> 18861 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/big2.tex37
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/fontchart_arabic.pdfbin0 -> 41758 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/fontchart_farsi.pdfbin0 -> 43870 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/lion.pdfbin0 -> 108243 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/lppl.tex467
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.css108
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.html706
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.pdfbin0 -> 117207 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.tex929
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/test_beamer.pdfbin0 -> 87805 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/testplaintex.pdfbin0 -> 21607 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/testplaintex.tex144
-rw-r--r--language/arabic/arabi/arabi/texmf/doc/latex/arabi/user_guide.pdfbin0 -> 2369729 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/dvips/arabi/ararabeyes.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/dvips/arabi/ardtpnaskh.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/dvips/arabi/ardtpthuluth.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/dvips/arabi/armonotype.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/dvips/arabi/aromega.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/dvips/arabi/arsimplified.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/dvips/arabi/arunicode.enc146
-rw-r--r--language/arabic/arabi/arabi/texmf/dvips/arabi/farsitex.enc146
-rw-r--r--language/arabic/arabi/arabi/texmf/dvips/arabi/farsiwebencoding.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/dvips/arabi/frmonotype.enc148
-rw-r--r--language/arabic/arabi/arabi/texmf/dvips/arabi/frsimple.enc142
-rw-r--r--language/arabic/arabi/arabi/texmf/dvips/arabi/frsimplified.enc146
-rw-r--r--language/arabic/arabi/arabi/texmf/dvips/arabi/frunicode.enc146
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/afm/arabi/arabeyes/ae_almohanad_boldItalitalic.afm377
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/afm/arabi/arabeyes/ae_almohanad_thin.afm377
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/afm/arabi/arabeyes/ae_almohanad_xxbold.afm377
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/arial.afm1011
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/arialbd.afm1008
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/frsspbl.afm414
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/frsspout.afm414
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/tradbdo.afm549
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/trado.afm582
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/ararabeyes.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/ardtpnaskh.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/ardtpthuluth.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/armonotype.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/aromega.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/arsimplified.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/arunicode.enc146
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/farsitex.enc146
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/farsiwebencoding.enc145
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frmonotype.enc148
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frsimple.enc142
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frsimplified.enc146
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frunicode.enc146
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/map/dvips/arabi/arabi.map67
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_almohanad_xxbold.tfmbin0 -> 17512 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_alyermook.tfmbin0 -> 1660 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_arab.tfmbin0 -> 1652 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_tholoth.tfmbin0 -> 1656 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealbattar.tfmbin0 -> 17516 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmateen.tfmbin0 -> 17428 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmohanadb.tfmbin0 -> 17468 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmohanadbolditalic.tfmbin0 -> 17528 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmothnna.tfmbin0 -> 17408 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealyermook.tfmbin0 -> 17412 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aearab.tfmbin0 -> 17372 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aecortoba.tfmbin0 -> 17488 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aedimnah.tfmbin0 -> 17380 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aefurat.tfmbin0 -> 17464 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aegranada.tfmbin0 -> 17352 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aegraph.tfmbin0 -> 17368 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aehani.tfmbin0 -> 17412 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aehor.tfmbin0 -> 17420 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aekayrawan.tfmbin0 -> 17360 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aekhalid.tfmbin0 -> 17464 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aemashq.tfmbin0 -> 17332 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aemetal.tfmbin0 -> 17288 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aenada.tfmbin0 -> 17280 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aenagham.tfmbin0 -> 17524 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aenice.tfmbin0 -> 17364 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aeostorah.tfmbin0 -> 17472 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aeouhod.tfmbin0 -> 17388 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aepetra.tfmbin0 -> 17248 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aerehan.tfmbin0 -> 17428 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aesalem.tfmbin0 -> 17304 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aeshado.tfmbin0 -> 17308 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aesharjah.tfmbin0 -> 17372 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aesindibad.tfmbin0 -> 17372 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aetarablus.tfmbin0 -> 17356 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aetholoth.tfmbin0 -> 17384 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/homa.tfmbin0 -> 18980 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazli.tfmbin0 -> 18936 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazlib.tfmbin0 -> 18980 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazlibout.tfmbin0 -> 18980 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazliout.tfmbin0 -> 18936 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/titr.tfmbin0 -> 19016 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/titrout.tfmbin0 -> 19016 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ararial.tfmbin0 -> 17188 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ararialbd.tfmbin0 -> 17192 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arcour.tfmbin0 -> 17020 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arcourbd.tfmbin0 -> 17016 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/aromega.tfmbin0 -> 17280 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/aromegab.tfmbin0 -> 17288 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arsimpbdo.tfmbin0 -> 17180 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arsimpo.tfmbin0 -> 17176 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/artimes.tfmbin0 -> 17188 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/artimesbd.tfmbin0 -> 17192 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/fandlso.tfmbin0 -> 18892 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frarial.tfmbin0 -> 18724 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frarialb.tfmbin0 -> 18736 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsimpbdo.tfmbin0 -> 18732 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsimpo.tfmbin0 -> 18728 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsspbl.tfmbin0 -> 19016 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsspout.tfmbin0 -> 19020 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frtimes.tfmbin0 -> 18736 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frtimesbd.tfmbin0 -> 18752 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ftraditionalarabic.tfmbin0 -> 18784 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ftraditionalarabicbold.tfmbin0 -> 18776 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/tradbdo.tfmbin0 -> 17228 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionaarabicbold.tfmbin0 -> 17232 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionalarabic.tfmbin0 -> 17232 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionalarabicbold.tfmbin0 -> 17228 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionalarabicreversed.tfmbin0 -> 1512 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/nonfree/dthuluth.tfmbin0 -> 17516 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/nonfree/dtpn.tfmbin0 -> 17468 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/nonfree/dtpnsp.tfmbin0 -> 17144 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_albattar.pfbbin0 -> 77717 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almateen.pfbbin0 -> 82909 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_bold.pfbbin0 -> 80999 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_boldItalitalic.pfbbin0 -> 82714 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_thin.pfbbin0 -> 79875 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_xxbold.pfbbin0 -> 85776 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almothnna.pfbbin0 -> 93334 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_alyermook.pfbbin0 -> 72806 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_arab.pfbbin0 -> 86019 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_cortoba.pfbbin0 -> 70456 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_dimnah.pfbbin0 -> 73982 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_furat.pfbbin0 -> 74184 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_granada.pfbbin0 -> 77707 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_graph.pfbbin0 -> 66583 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_hani.pfbbin0 -> 48089 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_hor.pfbbin0 -> 100546 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_kayrawan.pfbbin0 -> 71294 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_khalid.pfbbin0 -> 49999 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_mashq.pfbbin0 -> 66967 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_metal.pfbbin0 -> 50945 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_nada.pfbbin0 -> 65843 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_nagham.pfbbin0 -> 93977 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_nice.pfbbin0 -> 82519 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_ostorah.pfbbin0 -> 75798 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_ouhod.pfbbin0 -> 61193 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_petra.pfbbin0 -> 71215 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_rehan.pfbbin0 -> 78731 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_salem.pfbbin0 -> 53705 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_shado.pfbbin0 -> 60842 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_sharjah.pfbbin0 -> 51915 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_sindibad.pfbbin0 -> 72452 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_tarablus.pfbbin0 -> 53537 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_tholoth.pfbbin0 -> 76494 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/homa.pfbbin0 -> 47873 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/nazli.pfbbin0 -> 58174 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/nazlib.pfbbin0 -> 58896 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/titr.pfbbin0 -> 57399 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/fonts/type1/arabi/microsoftbin0 -> 3691 bytes
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/8859-6.def133
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/PPRarabic.sty101
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/arabi4ht.cfg60
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/arabic.cfg64
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/arabic.ldf240
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/arabicfnt.sty273
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/arabicore.sty969
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/arabiftoday.sty240
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/arabnovowel.sty202
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/arfonts.sty191
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/bblopts.cfg42
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/calendrierfpar.sty817
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/calendrierfpmodified.sty389
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/cp1256.def146
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/farsi.ldf356
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/farsifnt.sty178
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/fmultico.sty567
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/fnum.sty20
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/frfonts.sty134
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/haparabica.sty153
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaealbattar.fd19
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaealmateen.fd19
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaealmohanadb.fd37
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaealmothnna.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaealyermook.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaearab.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaecortoba.fd23
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaedimnah.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaefurat.fd21
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaegranada.fd28
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaegraph.fd21
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaehani.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaehor.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaekayrawan.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaekhalid.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaemashq.fd21
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaemetal.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaenada.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaenagham.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaenice.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaeostorah.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaeouhod.fd23
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaepetra.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaerehan.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaesalem.fd23
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaeshado.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaesharjah.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaesindibad.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaetarablus.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeaetholoth.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeandlso.fd22
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeararial.fd24
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laearcour.fd23
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laearomega.fd24
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laearsimpo.fd23
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeartimes.fd23
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeasv.fd19
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laecmr.fd31
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laecmss.fd29
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laecmtt.fd29
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laedthuluth.fd19
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laedtpn.fd19
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laedtpnsp.fd19
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeenc.def125
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laeenc.dfu127
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laekacstbook.fd29
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laemaghribi.fd24
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laenaskhi.fd19
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laereqaa.fd19
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/laetraditionalarabic.fd28
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lagally.sty80
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfecmr.fd29
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfecmss.fd29
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfecmtt.fd29
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfeelham.fd23
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfeenc.def151
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfefandlso.fd21
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfefarsismpl.fd23
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfefrarial.fd24
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfefrtimes.fd23
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfeftraditionalarabic.fd26
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfehoma.fd25
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfekoodak.fd23
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfenazli.fd26
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfenazliout.fd24
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lferoya.fd24
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfesmplarabic.fd23
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfeterafik.fd25
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfetitr.fd25
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/lfetitrout.fd24
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/mosq.def51
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/poetry.sty143
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/puenc-ar.def67
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/transcmr.fd90
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/translit.sty186
-rw-r--r--language/arabic/arabi/arabi/texmf/latex/arabi/updmap.cfg2
-rw-r--r--language/arabic/arabtex/alocal.sty20
-rw-r--r--language/arabic/arabtex/announce.txt50
l---------language/arabic/arabtex/apatch.sty1
-rw-r--r--language/arabic/arabtex/arabtex-doc.pdfbin0 -> 270366 bytes
-rw-r--r--language/arabic/arabtex/arabtex-doc.tex568
-rw-r--r--language/arabic/arabtex/arabtex.gifbin0 -> 9046 bytes
-rw-r--r--language/arabic/arabtex/arabtex.htm267
l---------language/arabic/arabtex/arabtex.tex1
-rw-r--r--language/arabic/arabtex/changes.txt2438
-rw-r--r--language/arabic/arabtex/doc/html/arabtex.gifbin0 -> 9046 bytes
-rw-r--r--language/arabic/arabtex/doc/html/arabtex.htm219
-rw-r--r--language/arabic/arabtex/doc/html/changes.htm93
-rw-r--r--language/arabic/arabtex/doc/html/chg311.htm84
-rw-r--r--language/arabic/arabtex/doc/html/chg311a.htm79
-rw-r--r--language/arabic/arabtex/doc/html/chg311b.htm75
-rw-r--r--language/arabic/arabtex/doc/html/chg311c.htm72
-rw-r--r--language/arabic/arabtex/doc/html/chg311d.htm82
-rw-r--r--language/arabic/arabtex/doc/html/miktex.htm180
-rw-r--r--language/arabic/arabtex/doc/html/new1.gifbin0 -> 147 bytes
-rw-r--r--language/arabic/arabtex/doc/html/new2.gifbin0 -> 116 bytes
-rw-r--r--language/arabic/arabtex/doc/html/refer.htm109
-rw-r--r--language/arabic/arabtex/doc/txt/announce.txt50
-rw-r--r--language/arabic/arabtex/doc/txt/arabtex.doc523
-rw-r--r--language/arabic/arabtex/doc/txt/arabtex.faq67
-rw-r--r--language/arabic/arabtex/doc/txt/arabtex.htm240
-rw-r--r--language/arabic/arabtex/doc/txt/arwindoc.tex118
-rw-r--r--language/arabic/arabtex/doc/txt/changes.txt2074
-rw-r--r--language/arabic/arabtex/doc/txt/changes2.txt378
-rw-r--r--language/arabic/arabtex/doc/txt/hebrew.305171
-rw-r--r--language/arabic/arabtex/doc/txt/install.txt176
-rw-r--r--language/arabic/arabtex/doc/txt/kashmiri.tex123
-rw-r--r--language/arabic/arabtex/doc/txt/lppl.txt318
-rw-r--r--language/arabic/arabtex/doc/txt/malay.tex61
-rw-r--r--language/arabic/arabtex/doc/txt/miktex.mai93
-rw-r--r--language/arabic/arabtex/doc/txt/readme.305155
-rw-r--r--language/arabic/arabtex/doc/txt/readme.txt92
-rw-r--r--language/arabic/arabtex/doc/txt/sindhi.tex156
-rw-r--r--language/arabic/arabtex/doc/txt/tetex.txt9995
-rw-r--r--language/arabic/arabtex/doc/txt/uighur.tex121
-rw-r--r--language/arabic/arabtex/examples/guha.dvibin0 -> 9352 bytes
-rw-r--r--language/arabic/arabtex/examples/guha.ps1044
-rw-r--r--language/arabic/arabtex/examples/guha.tex59
-rw-r--r--language/arabic/arabtex/examples/ligtable.tex172
-rw-r--r--language/arabic/arabtex/examples/malay.dvibin0 -> 2048 bytes
-rw-r--r--language/arabic/arabtex/examples/malay.ps387
-rw-r--r--language/arabic/arabtex/examples/omar.tex37
-rw-r--r--language/arabic/arabtex/examples/sindhi.dvibin0 -> 18792 bytes
-rw-r--r--language/arabic/arabtex/examples/sindhi.ps1313
-rw-r--r--language/arabic/arabtex/examples/uighur.dvibin0 -> 7912 bytes
-rw-r--r--language/arabic/arabtex/examples/uighur.ps679
l---------language/arabic/arabtex/hebtex.tex1
l---------language/arabic/arabtex/hepatch.sty1
-rw-r--r--language/arabic/arabtex/install.txt176
-rw-r--r--language/arabic/arabtex/laser.pk/hcaption.300pkbin0 -> 2360 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/hcaption.329pkbin0 -> 2632 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/hcaption.360pkbin0 -> 2816 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/hcaption.432pkbin0 -> 3436 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/hcaption.518pkbin0 -> 4360 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/hcaption.622pkbin0 -> 5172 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/hcaption.746pkbin0 -> 6468 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/hclassic.300pkbin0 -> 1764 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/hclassic.329pkbin0 -> 1872 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/hclassic.360pkbin0 -> 2048 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/hclassic.432pkbin0 -> 2456 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/hclassic.518pkbin0 -> 2964 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/hclassic.622pkbin0 -> 3528 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/hclassic.746pkbin0 -> 4352 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14.300pkbin0 -> 11792 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14.329pkbin0 -> 12980 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14.360pkbin0 -> 14200 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14.432pkbin0 -> 17108 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14.518pkbin0 -> 20740 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14.622pkbin0 -> 25668 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14.746pkbin0 -> 31516 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14bf.300pkbin0 -> 12836 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14bf.329pkbin0 -> 14052 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14bf.360pkbin0 -> 15376 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14bf.432pkbin0 -> 18968 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14bf.518pkbin0 -> 23352 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14bf.622pkbin0 -> 28824 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/nash14bf.746pkbin0 -> 36504 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14.300pkbin0 -> 10560 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14.329pkbin0 -> 11584 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14.360pkbin0 -> 12676 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14.432pkbin0 -> 15196 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14.518pkbin0 -> 18592 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14.622pkbin0 -> 22836 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14.746pkbin0 -> 28000 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14bf.300pkbin0 -> 11288 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14bf.329pkbin0 -> 12340 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14bf.360pkbin0 -> 13488 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14bf.432pkbin0 -> 16720 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14bf.518pkbin0 -> 20436 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14bf.622pkbin0 -> 25244 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/xnsh14bf.746pkbin0 -> 31848 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/yarborn.300pkbin0 -> 220 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/yarborn.329pkbin0 -> 228 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/yarborn.360pkbin0 -> 244 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/yarborn.432pkbin0 -> 264 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/yarborn.518pkbin0 -> 304 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/yarborn.622pkbin0 -> 368 bytes
-rw-r--r--language/arabic/arabtex/laser.pk/yarborn.746pkbin0 -> 436 bytes
-rw-r--r--language/arabic/arabtex/lppl.txt318
-rw-r--r--language/arabic/arabtex/mfinput/arabsymb.mf177
-rw-r--r--language/arabic/arabtex/mfinput/hcaption.mf199
-rw-r--r--language/arabic/arabtex/mfinput/hcbase.mf1020
-rw-r--r--language/arabic/arabtex/mfinput/hclassic.mf208
-rw-r--r--language/arabic/arabtex/mfinput/nash.mf38
-rw-r--r--language/arabic/arabtex/mfinput/nash14.mf52
-rw-r--r--language/arabic/arabtex/mfinput/nash14bf.mf51
-rw-r--r--language/arabic/arabtex/mfinput/nashbase.mf541
-rw-r--r--language/arabic/arabtex/mfinput/nashchar.mf762
-rw-r--r--language/arabic/arabtex/mfinput/nashdia.mf119
-rw-r--r--language/arabic/arabtex/mfinput/nashdig.mf74
-rw-r--r--language/arabic/arabtex/mfinput/nashlig.mf508
-rw-r--r--language/arabic/arabtex/mfinput/nashspec.mf206
-rw-r--r--language/arabic/arabtex/mfinput/xarbsymb.dat209
-rw-r--r--language/arabic/arabtex/mfinput/xarbsymb.mf213
-rw-r--r--language/arabic/arabtex/mfinput/xnsh.mf43
-rw-r--r--language/arabic/arabtex/mfinput/xnsh14.mf52
-rw-r--r--language/arabic/arabtex/mfinput/xnsh14bf.mf51
-rw-r--r--language/arabic/arabtex/mfinput/xnshbase.mf578
-rw-r--r--language/arabic/arabtex/mfinput/xnshchar.mf646
-rw-r--r--language/arabic/arabtex/mfinput/xnshdia.mf145
-rw-r--r--language/arabic/arabtex/mfinput/xnshdig.mf100
-rw-r--r--language/arabic/arabtex/mfinput/xnshlig.mf547
-rw-r--r--language/arabic/arabtex/mfinput/xnshspec.mf202
-rw-r--r--language/arabic/arabtex/new1.gifbin0 -> 147 bytes
-rw-r--r--language/arabic/arabtex/new2.gifbin0 -> 116 bytes
-rw-r--r--language/arabic/arabtex/psfonts/arabtex.map6
-rw-r--r--language/arabic/arabtex/psfonts/hcaption-4.pfbbin0 -> 17198 bytes
-rw-r--r--language/arabic/arabtex/psfonts/hclassic-4.pfbbin0 -> 16785 bytes
-rw-r--r--language/arabic/arabtex/psfonts/xnsh14.pfbbin0 -> 46148 bytes
-rw-r--r--language/arabic/arabtex/psfonts/xnsh14bf.pfbbin0 -> 47014 bytes
-rw-r--r--language/arabic/arabtex/readme.txt92
-rw-r--r--language/arabic/arabtex/saw.sty43
-rw-r--r--language/arabic/arabtex/texinput/Uxnsh.fd61
-rw-r--r--language/arabic/arabtex/texinput/abidir.sty240
-rw-r--r--language/arabic/arabtex/texinput/abjad.sty68
-rw-r--r--language/arabic/arabtex/texinput/aboxes.sty401
-rw-r--r--language/arabic/arabtex/texinput/acjk.sty33
-rw-r--r--language/arabic/arabtex/texinput/acmd.sty335
-rw-r--r--language/arabic/arabtex/texinput/aconfig.sty95
-rw-r--r--language/arabic/arabtex/texinput/aedpatch.sty220
-rw-r--r--language/arabic/arabtex/texinput/afonts.sty52
-rw-r--r--language/arabic/arabtex/texinput/afonts0.sty60
-rw-r--r--language/arabic/arabtex/texinput/afonts1.sty61
-rw-r--r--language/arabic/arabtex/texinput/afonts2.sty54
-rw-r--r--language/arabic/arabtex/texinput/afoot.sty100
-rw-r--r--language/arabic/arabtex/texinput/alatex.sty164
-rw-r--r--language/arabic/arabtex/texinput/aligs.sty635
-rw-r--r--language/arabic/arabtex/texinput/alists.sty211
-rw-r--r--language/arabic/arabtex/texinput/alocal.sty20
-rw-r--r--language/arabic/arabtex/texinput/altxext.sty101
-rw-r--r--language/arabic/arabtex/texinput/amac.sty164
-rw-r--r--language/arabic/arabtex/texinput/aoutput.sty173
-rw-r--r--language/arabic/arabtex/texinput/aparse.sty1123
-rw-r--r--language/arabic/arabtex/texinput/apatch.sty2397
-rw-r--r--language/arabic/arabtex/texinput/arababel.sty39
-rw-r--r--language/arabic/arabtex/texinput/arabart.cls24
-rw-r--r--language/arabic/arabtex/texinput/arabaux.sty134
-rw-r--r--language/arabic/arabtex/texinput/arabbook.cls23
-rw-r--r--language/arabic/arabtex/texinput/arabchrs.sty77
-rw-r--r--language/arabic/arabtex/texinput/arabext.sty103
-rw-r--r--language/arabic/arabtex/texinput/arabrep.cls1076
-rw-r--r--language/arabic/arabtex/texinput/arabrep1.cls914
-rw-r--r--language/arabic/arabtex/texinput/arabskel.sty185
-rw-r--r--language/arabic/arabtex/texinput/arabsymb.sty192
-rw-r--r--language/arabic/arabtex/texinput/arabtex.sty634
-rw-r--r--language/arabic/arabtex/texinput/arabtex.tex133
-rw-r--r--language/arabic/arabtex/texinput/arabtoks.sty146
-rw-r--r--language/arabic/arabtex/texinput/ascan.sty502
-rw-r--r--language/arabic/arabtex/texinput/asect.sty390
-rw-r--r--language/arabic/arabtex/texinput/asize10.clo40
-rw-r--r--language/arabic/arabtex/texinput/asize11.clo40
-rw-r--r--language/arabic/arabtex/texinput/asize12.clo40
-rw-r--r--language/arabic/arabtex/texinput/asmo449.sty122
-rw-r--r--language/arabic/arabtex/texinput/asmo449a.sty126
-rw-r--r--language/arabic/arabtex/texinput/atabg.sty129
-rw-r--r--language/arabic/arabtex/texinput/atrans.sty432
-rw-r--r--language/arabic/arabtex/texinput/awrite.sty397
-rw-r--r--language/arabic/arabtex/texinput/bhs.sty213
-rw-r--r--language/arabic/arabtex/texinput/bhslabel.sty149
-rw-r--r--language/arabic/arabtex/texinput/buck.sty229
-rw-r--r--language/arabic/arabtex/texinput/captions.def76
-rw-r--r--language/arabic/arabtex/texinput/cp1256.sty173
-rw-r--r--language/arabic/arabtex/texinput/etrans.sty9
-rw-r--r--language/arabic/arabtex/texinput/gedalin.sty112
-rw-r--r--language/arabic/arabtex/texinput/hebchrs.sty105
-rw-r--r--language/arabic/arabtex/texinput/hebsymb.sty59
-rw-r--r--language/arabic/arabtex/texinput/hebtex.sty87
-rw-r--r--language/arabic/arabtex/texinput/hebtex.tex122
-rw-r--r--language/arabic/arabtex/texinput/hecmd.sty165
-rw-r--r--language/arabic/arabtex/texinput/hefonts.sty56
-rw-r--r--language/arabic/arabtex/texinput/hefonts0.sty42
-rw-r--r--language/arabic/arabtex/texinput/hefonts1.sty44
-rw-r--r--language/arabic/arabtex/texinput/hefonts2.sty72
-rw-r--r--language/arabic/arabtex/texinput/heparse.sty291
-rw-r--r--language/arabic/arabtex/texinput/hepatch.sty37
-rw-r--r--language/arabic/arabtex/texinput/hescan.sty216
-rw-r--r--language/arabic/arabtex/texinput/hetrans.sty87
-rw-r--r--language/arabic/arabtex/texinput/hewrite.sty589
-rw-r--r--language/arabic/arabtex/texinput/hmac.sty156
-rw-r--r--language/arabic/arabtex/texinput/isiri.sty225
-rw-r--r--language/arabic/arabtex/texinput/iso88596.sty23
-rw-r--r--language/arabic/arabtex/texinput/manifest.txt80
-rw-r--r--language/arabic/arabtex/texinput/nashbf.sty9
-rw-r--r--language/arabic/arabtex/texinput/raw.sty41
-rw-r--r--language/arabic/arabtex/texinput/saw.sty43
-rw-r--r--language/arabic/arabtex/texinput/sotoku.sty47
-rw-r--r--language/arabic/arabtex/texinput/twoblks.sty104
-rw-r--r--language/arabic/arabtex/texinput/uheb.fd122
-rw-r--r--language/arabic/arabtex/texinput/unash.fd46
-rw-r--r--language/arabic/arabtex/texinput/utf8.sty42
-rw-r--r--language/arabic/arabtex/texinput/utfcode.sty279
-rw-r--r--language/arabic/arabtex/texinput/verses.sty106
-rw-r--r--language/arabic/arabtex/texinput/witbhs.sty209
-rw-r--r--language/arabic/arabtex/texinput/xarbskel.sty126
-rw-r--r--language/arabic/arabtex/texinput/xarbsymb.sty213
-rw-r--r--language/arabic/arabtex/texinput/yiddish.sty195
-rw-r--r--language/arabic/arabtex/tfm/hcaption.tfmbin0 -> 852 bytes
-rw-r--r--language/arabic/arabtex/tfm/hclassic.tfmbin0 -> 852 bytes
-rw-r--r--language/arabic/arabtex/tfm/nash14.tfmbin0 -> 1368 bytes
-rw-r--r--language/arabic/arabtex/tfm/nash14bf.tfmbin0 -> 1368 bytes
-rw-r--r--language/arabic/arabtex/tfm/xnsh14.tfmbin0 -> 1364 bytes
-rw-r--r--language/arabic/arabtex/tfm/xnsh14bf.tfmbin0 -> 1364 bytes
-rw-r--r--language/arabic/arabtex/tfm/yarborn.tfmbin0 -> 104 bytes
-rw-r--r--language/arabic/arabtex/verses.sty106
l---------language/arabic/arabxetex1
-rw-r--r--language/arabic/dad/Dad-bold.afm276
-rw-r--r--language/arabic/dad/Dad-bold.pfbbin0 -> 53691 bytes
-rw-r--r--language/arabic/dad/Dad-mono.afm276
-rw-r--r--language/arabic/dad/Dad-mono.pfbbin0 -> 60474 bytes
-rw-r--r--language/arabic/dad/Dad.afm276
-rw-r--r--language/arabic/dad/Dad.pfbbin0 -> 47171 bytes
-rw-r--r--language/arabic/dad/OT1dad.fd33
-rw-r--r--language/arabic/dad/README134
-rw-r--r--language/arabic/dad/T1dad.fd33
-rwxr-xr-xlanguage/arabic/dad/dad-to-utf8.pl98
-rw-r--r--language/arabic/dad/dad-user-guide.bib231
-rw-r--r--language/arabic/dad/dad-user-guide.pdfbin0 -> 181672 bytes
-rw-r--r--language/arabic/dad/dad-user-guide.tex437
-rw-r--r--language/arabic/dad/dad.adjust492
-rw-r--r--language/arabic/dad/dad.map3
-rw-r--r--language/arabic/dad/dad.ofmbin0 -> 3383972 bytes
-rw-r--r--language/arabic/dad/dad.ovfbin0 -> 82732 bytes
-rw-r--r--language/arabic/dad/dad.sty31
-rw-r--r--language/arabic/dad/dadbold.adjust492
-rw-r--r--language/arabic/dad/dadbold.ofmbin0 -> 3384000 bytes
-rw-r--r--language/arabic/dad/dadbold.ovfbin0 -> 82940 bytes
-rw-r--r--language/arabic/dad/dadmono.adjust325
-rw-r--r--language/arabic/dad/dadmono.ofmbin0 -> 3321012 bytes
-rw-r--r--language/arabic/dad/dadmono.ovfbin0 -> 85640 bytes
-rw-r--r--language/arabic/dad/dadreal.tfmbin0 -> 1584 bytes
-rw-r--r--language/arabic/dad/dadrealbold.tfmbin0 -> 1608 bytes
-rw-r--r--language/arabic/dad/dadrealmono.tfmbin0 -> 1328 bytes
-rw-r--r--language/arabic/dad/make-dad-font.pl1171
-rwxr-xr-xlanguage/arabic/dad/utf8-to-dad.pl82
519 files changed, 72258 insertions, 0 deletions
diff --git a/language/arabic/arabi-add/README b/language/arabic/arabi-add/README
new file mode 100644
index 0000000000..a448ae7297
--- /dev/null
+++ b/language/arabic/arabi-add/README
@@ -0,0 +1,25 @@
+The arabi-add Package.
+Version 1.0
+Date: 2015/06/20
+Author: Sidi Mohamed LAKHDAR
+E-mail: 14.lakhdar@gmail.com
+
+- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+
+License:
+This material is subject to the LaTeX Project Public License (version 1.3).
+
+- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+
+Provided Files:
+ * README
+ * arabi-add-doc.pdf
+ * arabi-add.sty
+ * arabi-add-example.pdf
+
+- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+
+This first version of the arabi-add package allows to take advantage of some of the possibilities
+that hyperref and bookmark packages offered when you create a table of contents for Arabic
+texts created by the arabi package.
+
diff --git a/language/arabic/arabi-add/arabi-add-doc.pdf b/language/arabic/arabi-add/arabi-add-doc.pdf
new file mode 100644
index 0000000000..37674e8d32
--- /dev/null
+++ b/language/arabic/arabi-add/arabi-add-doc.pdf
Binary files differ
diff --git a/language/arabic/arabi-add/arabi-add-example.pdf b/language/arabic/arabi-add/arabi-add-example.pdf
new file mode 100644
index 0000000000..4e9a16c5f3
--- /dev/null
+++ b/language/arabic/arabi-add/arabi-add-example.pdf
Binary files differ
diff --git a/language/arabic/arabi-add/arabi-add.sty b/language/arabic/arabi-add/arabi-add.sty
new file mode 100644
index 0000000000..ac17d2344a
--- /dev/null
+++ b/language/arabic/arabi-add/arabi-add.sty
@@ -0,0 +1,397 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%% author: Sidi Mohamed LAKHDAR
+%%%%%%%%%%%%%%%% arabi-add package version: 1.0
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{arabi-add}[2015/06/20 Standard LaTeX package]
+%
+%
+\RequirePackage{atveryend}
+\RequirePackage{ifthen}
+\usepackage{xcolor}
+\RequirePackage{hyperref}
+\hypersetup{unicode=true}
+\hypersetup{colorlinks=true,linkcolor=blue}
+\RequirePackage{bookmark}
+\bookmarksetup{color=blue}
+\RequirePackage{datatool}
+\DTLsetseparator{ }
+\RequirePackage{amsthm}
+%
+%
+\renewcommand{\newtheorem}[2]{
+ \newcounter{#1}\setcounter{#1}{1}
+ \expandafter\def\csname the#1\endcsname{\textLR{\arabic{#1}}}
+ \newenvironment{#1}{\noindent\AR{\mateen #2} \csname the#1\endcsname. \normalsize\dimnah}{\stepcounter{#1}\par}
+}
+\newcommand{\partnam}{الجزء}
+\newcommand{\linepart}[3]{
+ ~~\\~~\setlength{\parindent}{#2}\par
+ \LRmbox{\hyperlink{\arabic{part}}{\AR{\fontlinepart\partnam\;\textLR{\thepart}\hspace{.5cm}#1}}}
+ \hfill\hspace{.2cm}
+ \LRmbox{\pageref*{\arabic{part}}}
+ \hspace{#3}~~\noindent\par
+}
+\newcommand{\fontlinepart}{\mateen}
+\newlength{\slinepart}\setlength{\slinepart}{3cm}
+\newlength{\flinepart}\setlength{\flinepart}{0cm}
+\newcommand{\linesec}[3]{
+ ~~\setlength{\parindent}{#2}\par
+ \LRmbox{\hyperlink{\arabic{section}.\arabic{part}}{\AR{#1}\hspace{.5cm}\textLR{\thesection}}}
+ \dotfill\hspace{.2cm}
+ \LRmbox{\pageref*{\arabic{part}.\arabic{section}}}
+ \hspace{#3}~~\noindent\par
+}
+\newcommand{\fontlinesec}{\mateen}
+\newlength{\slinesec}\setlength{\slinesec}{0cm}
+\newlength{\flinesec}\setlength{\flinesec}{1cm}
+\newcommand{\linessec}[3]{
+ \setlength{\parindent}{#2}\par
+ \LRmbox{\hyperlink{\arabic{subsection}.\arabic{section}.\arabic{part}}{\AR{#1}\hspace{.5cm} \textLR{\thesubsection}}}
+ \dotfill\hspace{.2cm}
+ \LRmbox{\pageref*{\arabic{part}.\arabic{section}.\arabic{subsection}}}
+ \hspace{#3}~~\noindent\par
+}
+\newcommand{\fontlinessec}{\mohanad}
+\newlength{\slinessec}\setlength{\slinessec}{1cm}
+\newlength{\flinessec}\setlength{\flinessec}{2cm}
+\newcommand{\linesssec}[3]{
+ \setlength{\parindent}{#2}\par
+ \LRmbox{\hyperlink{\arabic{subsubsection}.\arabic{subsection}.\arabic{section}.\arabic{part}}{\AR{#1}\hspace{.5cm}\textLR{\thesubsubsection}}}%
+ \dotfill\hspace{.2cm}
+ \LRmbox{\pageref*{\arabic{part}.\arabic{section}.\arabic{subsection}.\arabic{subsubsection}}}
+ \hspace{#3}~~\noindent\par
+}
+\newcommand{\fontlinesssec}{\mohanad}
+\newlength{\slinesssec}\setlength{\slinesssec}{0.5cm}
+\newlength{\flinesssec}\setlength{\flinesssec}{3cm}
+\newcommand{\titlepart}[4]{
+ \setlength{\parindent}{0cm}\pdfbookmark[0]{\partnam\;\thepart: #1}{\arabic{part}}
+ \par\addvspace{#3}\LARGE#2{
+ \AR{\partnam\;\LRmbox{\thepart}}~~\\ \hypertarget{\arabic{part}}{}
+ \LRmbox{\label{\arabic{part}}}#1 \nopagebreak[4]}
+ \par\addvspace{#4}\normalsize
+}
+\newcommand{\fonttitlepart}{\textmateen}
+\newlength{\btitlepart}\setlength{\btitlepart}{2cm}
+\newlength{\atitlepart}\setlength{\atitlepart}{1cm}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\titlesec}[4]{\pdfbookmark[1]{\thesection - #1}{\arabic{section}\arabic{part}}
+ \setlength{\parindent}{0cm}
+ \par\addvspace{#3}\Large#2{
+ \LRmbox{\thesection}\hspace{.6cm}\hypertarget{\arabic{section}.\arabic{part}}{}
+ \LRmbox{\label{\arabic{part}.\arabic{section}}}#1 \nopagebreak[4]}
+ \par\addvspace{#4}\normalsize
+}
+\newcommand{\fonttitlesec}{\textmateen}
+\newlength{\btitlesec}\setlength{\btitlesec}{.6cm}
+\newlength{\atitlesec}\setlength{\atitlesec}{.4cm}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\titlessec}[4]{\pdfbookmark[2]{\thesubsection - #1}{\arabic{subsection}\arabic{section}\arabic{part}}
+ \setlength{\parindent}{0cm}
+ \par\addvspace{#3}\large#2{
+ \LRmbox{\thesubsection}\hspace{.6cm}
+ \hypertarget{\arabic{subsection}.\arabic{section}.\arabic{part}}{}
+ \LRmbox{\label{\arabic{part}.\arabic{section}.\arabic{subsection}}}#1 \nopagebreak[4]}
+ \par\addvspace{#4}\normalsize
+}
+\newcommand{\fonttitlessec}{\textmateen}
+\newlength{\btitlessec}\setlength{\btitlessec}{.5cm}
+\newlength{\atitlessec}\setlength{\atitlessec}{.3cm}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\titlesssec}[4]{
+ \pdfbookmark[3]{\thesubsubsection - #1}{\arabic{subsubsection}\arabic{subsection}\arabic{section}\arabic{part}}
+ \setlength{\parindent}{0cm}
+ \par\addvspace{#3}#2{
+ \LRmbox{\thesubsubsection}\hspace{.6cm}
+ \hypertarget{\arabic{subsubsection}.\arabic{subsection}.\arabic{section}.\arabic{part}}{}
+ \LRmbox{\label{\arabic{part}.\arabic{section}.\arabic{subsection}.\arabic{subsubsection}}}#1 \nopagebreak[4]}
+ \par\nopagebreak\addvspace{#4}\normalsize
+}
+\newcommand{\fonttitlesssec}{\textmohanad}
+\newlength{\btitlesssec}\setlength{\btitlesssec}{.4cm}
+\newlength{\atitlesssec}\setlength{\atitlesssec}{.2cm}
+\AtBeginDocument{%
+ \IfFileExists{\jobname-toc/filetocar.txt}{
+ \renewcommand{\tableofcontents}{\noindent
+ \textmateen{\Large الفهرس}~~\\ \normalsize
+ \DTLloaddb{TocARR}{\jobname-toc/filetocar.txt}
+ \setcounter{part}{0}\newcounter{ssss}
+ \DTLforeach{TocARR}{\secAR=part}{
+ \ifthenelse{\arabic{part}=0}{
+ \DTLloaddb{TocARR.\arabic{part}}{\jobname-toc/filetocar-\arabic{part}.txt}
+ \setcounter{section}{0}
+ \DTLforeach{TocARR.\arabic{part}}{\secARR=section}{
+ \ifthenelse{\arabic{section}=0}{
+ \DTLloaddb{TocARR.\arabic{part}.\arabic{section}}
+ {\jobname-toc/filetocar-\arabic{part}-\arabic{section}.txt}
+ \setcounter{subsection}{0}
+ \DTLforeach{TocARR.\arabic{part}.\arabic{section}}{\secARRR=subsection}{
+ \ifthenelse{\arabic{subsection}=0}{
+ \DTLloaddb{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ {\jobname-toc/filetocar-\arabic{part}-\arabic{section}-\arabic{subsection}.txt}
+ \setcounter{subsubsection}{1}\setcounter{ssss}{1}
+ \whiledo{\arabic{subsubsection}<\DTLrowcount{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}}{
+ \stepcounter{ssss}
+ \DTLgetvalue{\secARRRR}{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}{\arabic{ssss}}{1}
+ \linesssec{\fontlinesssec\secARRRR}{\slinesssec}{\flinesssec}%
+ \stepcounter{subsubsection}
+ }\setcounter{subsubsection}{0}
+ \stepcounter{subsection}
+ }{
+ \linessec{\fontlinessec\secARRR}{\slinessec}{\flinessec}%
+ \DTLloaddb{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ {\jobname-toc/filetocar-\arabic{part}-\arabic{section}-\arabic{subsection}.txt}
+ \setcounter{subsubsection}{1}\setcounter{ssss}{1}
+ \whiledo{\arabic{subsubsection}<\DTLrowcount{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}}{
+ \stepcounter{ssss}
+ \DTLgetvalue{\secARRRR}{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}{\arabic{ssss}}{1}
+ \linesssec{\fontlinesssec\secARRRR}{\slinesssec}{\flinesssec}%
+ \stepcounter{subsubsection}
+ }\setcounter{subsubsection}{0}
+ \stepcounter{subsection}
+ }\setcounter{subsection}{0}
+ }\setcounter{subsubsection}{0}
+ \stepcounter{section}
+ }{
+ \linesec{\fontlinesec\secARR}{\slinesec}{\flinesec}%
+ \DTLloaddb{TocARR.\arabic{part}.\arabic{section}}
+ {\jobname-toc/filetocar-\arabic{part}-\arabic{section}.txt}
+ \setcounter{subsection}{0}
+ \DTLforeach{TocARR.\arabic{part}.\arabic{section}}{\secARRR=subsection}{
+ \ifthenelse{\arabic{subsection}=0}{
+ \DTLloaddb{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ {\jobname-toc/filetocar-\arabic{part}-\arabic{section}-\arabic{subsection}.txt}
+ \setcounter{subsubsection}{1}\setcounter{ssss}{1}
+ \whiledo{\arabic{subsubsection}<\DTLrowcount{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}}{
+ \stepcounter{ssss}
+ \DTLgetvalue{\secARRRR}{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}{\arabic{ssss}}{1}
+ \linesssec{\fontlinesssec\secARRRR}{\slinesssec}{\flinesssec}%
+ \stepcounter{subsubsection}
+ }\setcounter{subsubsection}{0}
+ \stepcounter{subsection}
+ }{
+ \linessec{\fontlinessec\secARRR}{\slinessec}{\flinessec}%
+ \DTLloaddb{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ {\jobname-toc/filetocar-\arabic{part}-\arabic{section}-\arabic{subsection}.txt}
+ \setcounter{subsubsection}{1}\setcounter{ssss}{1}
+ \whiledo{\arabic{subsubsection}<\DTLrowcount{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}}{
+ \stepcounter{ssss}
+ \DTLgetvalue{\secARRRR}{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}{\arabic{ssss}}{1}
+ \linesssec{\fontlinesssec\secARRRR}{\slinesssec}{\flinesssec}%
+ \stepcounter{subsubsection}
+ }\setcounter{subsubsection}{0}
+ \stepcounter{subsection}
+ }
+ }\setcounter{subsection}{0}
+ \stepcounter{section}
+ }
+ }\setcounter{section}{0}
+ \stepcounter{part}
+ }{
+ \linepart{\fontlinepart\secAR}{\slinepart}{\flinepart}%
+ \DTLloaddb{TocARR.\arabic{part}}{\jobname-toc/filetocar-\arabic{part}.txt}
+ \setcounter{section}{0}
+ \DTLforeach{TocARR.\arabic{part}}{\secARR=section}{
+ \ifthenelse{\arabic{section}=0}{
+ \DTLloaddb{TocARR.\arabic{part}.\arabic{section}}
+ {\jobname-toc/filetocar-\arabic{part}-\arabic{section}.txt}
+ \setcounter{subsection}{0}
+ \DTLforeach{TocARR.\arabic{part}.\arabic{section}}{\secARRR=subsection}{
+ \ifthenelse{\arabic{subsection}=0}{
+ \DTLloaddb{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ {\jobname-toc/filetocar-\arabic{part}-\arabic{section}-\arabic{subsection}.txt}
+ \setcounter{subsubsection}{1}\setcounter{ssss}{1}
+ \whiledo{\arabic{subsubsection}<\DTLrowcount{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}}{
+ \stepcounter{ssss}
+ \DTLgetvalue{\secARRRR}{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}{\arabic{ssss}}{1}
+ \linesssec{\fontlinesssec\secARRRR}{\slinesssec}{\flinesssec}%
+ \stepcounter{subsubsection}
+ }\setcounter{subsubsection}{0}
+ \stepcounter{subsection}
+ }{
+ \linessec{\fontlinessec\secARRR}{\slinessec}{\flinessec}%
+ \DTLloaddb{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ {\jobname-toc/filetocar-\arabic{part}-\arabic{section}-\arabic{subsection}.txt}
+ \setcounter{subsubsection}{1}\setcounter{ssss}{1}
+ \whiledo{\arabic{subsubsection}<\DTLrowcount{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}}{
+ \stepcounter{ssss}
+ \DTLgetvalue{\secARRRR}{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}{\arabic{ssss}}{1}
+ \linesssec{\fontlinesssec\secARRRR}{\slinesssec}{\flinesssec}%
+ \stepcounter{subsubsection}
+ }\setcounter{subsubsection}{0}
+ \stepcounter{subsection}
+ }
+ }\setcounter{subsection}{0}
+ \stepcounter{section}
+ }{
+ \linesec{\fontlinesec\secARR}{\slinesec}{\flinesec}%
+ \DTLloaddb{TocARR.\arabic{part}.\arabic{section}}
+ {\jobname-toc/filetocar-\arabic{part}-\arabic{section}.txt}
+ \setcounter{subsection}{0}
+ \DTLforeach{TocARR.\arabic{part}.\arabic{section}}{\secARRR=subsection}{
+ \ifthenelse{\arabic{subsection}=0}{
+ \DTLloaddb{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ {\jobname-toc/filetocar-\arabic{part}-\arabic{section}-\arabic{subsection}.txt}
+ \setcounter{subsubsection}{1}\setcounter{ssss}{1}
+ \whiledo{\arabic{subsubsection}<\DTLrowcount{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}}{
+ \stepcounter{ssss}
+ \DTLgetvalue{\secARRRR}{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}{\arabic{ssss}}{1}
+ \linesssec{\fontlinesssec\secARRRR}{\slinesssec}{\flinesssec}%
+ \stepcounter{subsubsection}
+ }\setcounter{subsubsection}{0}
+ \stepcounter{subsection}
+ }{
+ \linessec{\fontlinessec\secARRR}{\slinessec}{\flinessec}%
+ \DTLloaddb{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ {\jobname-toc/filetocar-\arabic{part}-\arabic{section}-\arabic{subsection}.txt}
+ \setcounter{subsubsection}{1}\setcounter{ssss}{1}
+ \whiledo{\arabic{subsubsection}<\DTLrowcount{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}}{
+ \stepcounter{ssss}
+ \DTLgetvalue{\secARRRR}{TocARR.\arabic{part}.\arabic{section}.\arabic{subsection}}{\arabic{ssss}}{1}
+ \linesssec{\fontlinesssec\secARRRR}{\slinesssec}{\flinesssec}%
+ \stepcounter{subsubsection}
+ }\setcounter{subsubsection}{0}
+ \stepcounter{subsection}
+ }
+ }\setcounter{subsection}{0}
+ \stepcounter{section}
+ }
+ }\setcounter{section}{0}
+ \stepcounter{part}
+ }
+ }\setcounter{part}{0}
+ }
+ }{
+ \renewcommand{\tableofcontents}{
+ \noindent\textmateen{\Large الفهرس}~~\\ \normalsize
+ }
+ }
+}
+\DTLnewdb{TocAR}
+\DTLnewrow{TocAR}
+\DTLnewdbentry{TocAR}{part}{\DTLstringnull}
+\renewcommand{\part}[1]{
+ \refstepcounter{part}
+ \setcounter{section}{0}
+ \setcounter{subsection}{0}
+ \setcounter{subsubsection}{0}
+ \titlepart{#1}{\fonttitlepart}{\btitlepart}{\atitlepart}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \DTLnewrow{TocAR}\DTLnewdbentry{TocAR}{part}{#1}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \DTLnewdb{TocAR.\arabic{part}}
+ \DTLnewrow{TocAR.\arabic{part}}
+ \DTLnewdbentry{TocAR.\arabic{part}}{section}{\DTLstringnull}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \DTLnewdb{TocAR.\arabic{part}.\arabic{section}}
+ \DTLnewrow{TocAR.\arabic{part}.\arabic{section}}
+ \DTLnewdbentry{TocAR.\arabic{part}.\arabic{section}}{subsection}{\DTLstringnull}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \DTLnewdb{TocAR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ \DTLnewrow{TocAR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ \DTLnewdbentry{TocAR.\arabic{part}.\arabic{section}.\arabic{subsection}}{subsubsection}{\DTLstringnull}
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}
+\renewcommand{\thepart}{\textLR{\Roman{part}}}
+\DTLnewdb{TocAR.0}
+\DTLnewrow{TocAR.0}
+\DTLnewdbentry{TocAR.0}{section}{\DTLstringnull}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\setcounter{section}{0}
+\renewcommand{\section}[1]{
+ \refstepcounter{section}
+ \setcounter{subsection}{0}
+ \setcounter{subsubsection}{0}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \titlesec{#1}{\fonttitlesec}{\btitlesec}{\atitlesec}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \DTLnewrow{TocAR.\arabic{part}}
+ \DTLnewdbentry{TocAR.\arabic{part}}{section}{#1}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \DTLnewdb{TocAR.\arabic{part}.\arabic{section}}
+ \DTLnewrow{TocAR.\arabic{part}.\arabic{section}}
+ \DTLnewdbentry{TocAR.\arabic{part}.\arabic{section}}{subsection}{\DTLstringnull}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \DTLnewdb{TocAR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ \DTLnewrow{TocAR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ \DTLnewdbentry{TocAR.\arabic{part}.\arabic{section}.\arabic{subsection}}{subsubsection}{\DTLstringnull}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+}
+\renewcommand{\thesection}{\textLR{\arabic{section}}}
+\DTLnewdb{TocAR.0.0}
+\DTLnewrow{TocAR.0.0}
+\DTLnewdbentry{TocAR.0.0}{subsection}{\DTLstringnull}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\renewcommand{\subsection}[1]{
+ \refstepcounter{subsection}
+ \setcounter{subsubsection}{0}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \titlessec{#1}{\fonttitlessec}{\btitlessec}{\atitlessec}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \DTLnewrow{TocAR.\arabic{part}.\arabic{section}}
+ \DTLnewdbentry{TocAR.\arabic{part}.\arabic{section}}{subsection}{#1}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \DTLnewdb{TocAR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ \DTLnewrow{TocAR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ \DTLnewdbentry{TocAR.\arabic{part}.\arabic{section}.\arabic{subsection}}{subsubsection}{\DTLstringnull}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \ifthenelse{\arabic{section}=0}{
+ \PackageWarning{arabi-toc}{Package arabi-toc Warning:
+ the hierarchy of the article is wrong:
+ a subsection should be contained in a section ...}
+ }{}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}
+\renewcommand{\thesubsection}{\textLR{\arabic{subsection}}.\thesection}
+\DTLnewdb{TocAR.0.0.0}
+\DTLnewrow{TocAR.0.0.0}
+\DTLnewdbentry{TocAR.0.0.0}{subsubsection}{\DTLstringnull}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\renewcommand{\subsubsection}[1]{
+ \refstepcounter{subsubsection}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \titlesssec{#1}{\fonttitlesssec}{\btitlesssec}{\atitlesssec}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \DTLnewrow{TocAR.\arabic{part}.\arabic{section}.\arabic{subsection}}
+ \DTLnewdbentry{TocAR.\arabic{part}.\arabic{section}.\arabic{subsection}}{subsubsection}{#1}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \ifthenelse{\arabic{subsection}=0}{
+ \PackageWarning{arabi-toc}{Package arabi-toc Warning:
+ the hierarchy of the article is wrong:
+ a subsubsection should be contained in a subsection ...}
+ }{}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}
+\renewcommand{\thesubsubsection}{\textLR{\arabic{subsubsection}}.\thesubsection}
+\AtVeryEndDocument{%
+ \begingroup
+ \let\SavedOpenout\openout%
+ \let\SavedWrite\write%
+ \def\openout{\immediate\SavedOpenout}%
+ \def\write{\immediate\SavedWrite}%
+ \DTLsavedb{TocAR}{\jobname-toc/filetocar.txt}
+ \newcounter{sect}\newcounter{sectt}\newcounter{secttt}
+ \setcounter{sect}{0}
+ \whiledo{\arabic{sect}<\DTLrowcount{TocAR}}{
+ \DTLsavedb{TocAR.\arabic{sect}}{\jobname-toc/filetocar-\arabic{sect}.txt}
+ \setcounter{sectt}{0}
+ \DTLforeach{TocAR.\arabic{sect}}{}{
+ \DTLsavedb{TocAR.\arabic{sect}.\arabic{sectt}}{
+ \jobname-toc/filetocar-\arabic{sect}-\arabic{sectt}.txt}
+ \setcounter{secttt}{0}
+ \DTLforeach{TocAR.\arabic{sect}.\arabic{sectt}}{}{
+ \DTLsavedb{TocAR.\arabic{sect}.\arabic{sectt}.\arabic{secttt}}{
+ \jobname-toc/filetocar-\arabic{sect}-\arabic{sectt}-\arabic{secttt}.txt}
+ \stepcounter{secttt}
+ }
+ \stepcounter{sectt}
+ }
+ \stepcounter{sect}
+ }
+ \endgroup
+}
+\endinput \ No newline at end of file
diff --git a/language/arabic/arabi/README b/language/arabic/arabi/README
new file mode 100644
index 0000000000..3c05323d04
--- /dev/null
+++ b/language/arabic/arabi/README
@@ -0,0 +1,85 @@
+ Arabi System
+ Version 1.1
+ (c) Youssef Jabri
+
+
+An author maintained LPPL system to write in Arabic and Farsi.
+Fully compatible with BABEL and can use commercial fonts
+(as well as free ones :)
+
+See the PDF user guide in the documentation folder texmf/doc/arabi
+concerning how to use the system!
+
+
+Among the new things with Version 1.1:
+==========================
++ You can search and copy Arabic and Farsi text from PDF files generated by pdflatex (read the documentation to know how to)
++ You can use TeX4ht to make HTML files.
++ Now we can have Arabic in the bookmarks sidebar, although hyperref is still not fully supported yet.
++ In Farsi contexts, Digits (0, 1, . . . , 9) are written with the extended Indo-Arabic (Farsi) digits.
++ Changed some control sequences to more standard forms and less problematic ones, (request made during TUG 2006)
+\R --> \textRL
+\L --> \textLR (\L is used by the Polish languagae)
+\embox --> \LRmbox
+\ambox --> \ARmbox
+\fmbox --> \FRmbox
++ Only the following Farsi fonts from the Farsiweb project are Free (GPL):
+(Nazli, Nazli bold, Homa, Titr). The others should be GPL'ed in their next release. Thank you R. Pournader.
+I modified the free fonts Notices to say they are GPL, as suggested by Pournader, and removed
+the non free ones from Arabi.
+
+Last minute addenum:
+====================
+To get your system to know about the Type 1 (.pfb) files that come
+with "Arabi":
+
+in principle,
+
+1) a line like:
++p arabi.map
+should be added to the file "config.ps" in the "/usr/share/texmf/dvips/config" folder.
+But since this file is updated automatically, all information that is added manually
+is (will be) overwritten and lost!
+
+2) or u should call dvips with the option -u "dvips arabi.map"
+
+3) There's also "dvips -P arabi " where "config.arabi" contains at least
+the line "p +arabi.map".
+
+4) The best way:
+You should know how to use the "updmap" utility that comes
+with your specific Installation.
+
+Concerning MikTeX:
+==================
+Arabi is a part of MikTeX 2.5, so just call the package manager and get it to install Arabi for you.
+If you still use an earlier version, just download Arabi, unzip it where due and:
+1. create an empty configuration file "updmap.cfg" in the local config
+ directory, e.g.
+ C:\localtexmf\miktex\config\updmap.cfg
+(For your information, a file "updmap.cfg" comes in /texmf/web2c/
+YOU SHOULD NOT MODIFY IT, because this file can be
+overwritten by the MiKTeX Update Wizard.)
+
+2. start editing the file:
+ e.g.: notepad C:\localtexmf\miktex\config\updmap.cfg
+
+3. add the following configuration settings,
+
+# arabi
+Map arabi.map
+
+then save the file
+
+4. update the file name database:
+ initexmf -u
+
+5. create the font map files:
+ initexmf --mkmaps
+
+Settings specified in the local configuration file take precedence
+over those specified in the main configuration file
+(i.e. /texmf/web2c/updmap.cfg).
+
+
+
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/README b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/README
new file mode 100644
index 0000000000..3c05323d04
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/README
@@ -0,0 +1,85 @@
+ Arabi System
+ Version 1.1
+ (c) Youssef Jabri
+
+
+An author maintained LPPL system to write in Arabic and Farsi.
+Fully compatible with BABEL and can use commercial fonts
+(as well as free ones :)
+
+See the PDF user guide in the documentation folder texmf/doc/arabi
+concerning how to use the system!
+
+
+Among the new things with Version 1.1:
+==========================
++ You can search and copy Arabic and Farsi text from PDF files generated by pdflatex (read the documentation to know how to)
++ You can use TeX4ht to make HTML files.
++ Now we can have Arabic in the bookmarks sidebar, although hyperref is still not fully supported yet.
++ In Farsi contexts, Digits (0, 1, . . . , 9) are written with the extended Indo-Arabic (Farsi) digits.
++ Changed some control sequences to more standard forms and less problematic ones, (request made during TUG 2006)
+\R --> \textRL
+\L --> \textLR (\L is used by the Polish languagae)
+\embox --> \LRmbox
+\ambox --> \ARmbox
+\fmbox --> \FRmbox
++ Only the following Farsi fonts from the Farsiweb project are Free (GPL):
+(Nazli, Nazli bold, Homa, Titr). The others should be GPL'ed in their next release. Thank you R. Pournader.
+I modified the free fonts Notices to say they are GPL, as suggested by Pournader, and removed
+the non free ones from Arabi.
+
+Last minute addenum:
+====================
+To get your system to know about the Type 1 (.pfb) files that come
+with "Arabi":
+
+in principle,
+
+1) a line like:
++p arabi.map
+should be added to the file "config.ps" in the "/usr/share/texmf/dvips/config" folder.
+But since this file is updated automatically, all information that is added manually
+is (will be) overwritten and lost!
+
+2) or u should call dvips with the option -u "dvips arabi.map"
+
+3) There's also "dvips -P arabi " where "config.arabi" contains at least
+the line "p +arabi.map".
+
+4) The best way:
+You should know how to use the "updmap" utility that comes
+with your specific Installation.
+
+Concerning MikTeX:
+==================
+Arabi is a part of MikTeX 2.5, so just call the package manager and get it to install Arabi for you.
+If you still use an earlier version, just download Arabi, unzip it where due and:
+1. create an empty configuration file "updmap.cfg" in the local config
+ directory, e.g.
+ C:\localtexmf\miktex\config\updmap.cfg
+(For your information, a file "updmap.cfg" comes in /texmf/web2c/
+YOU SHOULD NOT MODIFY IT, because this file can be
+overwritten by the MiKTeX Update Wizard.)
+
+2. start editing the file:
+ e.g.: notepad C:\localtexmf\miktex\config\updmap.cfg
+
+3. add the following configuration settings,
+
+# arabi
+Map arabi.map
+
+then save the file
+
+4. update the file name database:
+ initexmf -u
+
+5. create the font map files:
+ initexmf --mkmaps
+
+Settings specified in the local configuration file take precedence
+over those specified in the main configuration file
+(i.e. /texmf/web2c/updmap.cfg).
+
+
+
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/big2.pdf b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/big2.pdf
new file mode 100644
index 0000000000..9501ebc414
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/big2.pdf
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/big2.tex b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/big2.tex
new file mode 100644
index 0000000000..d2dd365509
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/big2.tex
@@ -0,0 +1,37 @@
+\documentclass[12pt,a4paper]{article}% run with dvips
+\usepackage{cmap}
+\usepackage[tiling]{pst-fill}
+\usepackage{pst-text}
+\usepackage{pst-char}
+\usepackage{pst-grad}
+\usepackage{pst-plot}
+\usepackage[cp1256]{inputenc}%arawin2,8859-6
+%\usepackage[maghribi]{arabic}%mashriqi
+\usepackage[arabic,english]{babel}
+\usepackage{poetry,arabnovowel}%,,ngermancalc,ftoday,scalefnt,katibfonts,katibchars,sectsty
+
+\usepackage[landscape,dvips]{geometry}
+\pagestyle{empty}
+\begin{document}
+
+\vspace*{6cm}
+\DeclareFixedFont{\sf}{T1}{pbk}{b}{n}{12cm}
+\DeclareFixedFont{\tr}{LAE}{TraditionalArabic}{m}{n}{8mm}
+\DeclareFixedFont{\mtn}{LAE}{aealmothnna}{m}{n}{10cm}
+\psboxfill{\blue\AR{\tr }}
+\begin{pspicture}(0,0)(18,3)
+ \centerline{%
+ \pscharpath[linestyle=none,gradbegin=magenta,gradend=cyan,
+ fillstyle=gradient,gradangle=-30,
+ gradmidpoint=0.5,addfillstyle=boxfill,
+ fillangle=30,fillsep=0.6mm]%
+ {\rput[b](-.8,-2){\AR{\mtn }}}}
+\end{pspicture}
+
+
+%\vspace*{3cm}
+%\pstextpath(0,-1ex){\psplot[linestyle=none]{0}{21}{x 56 mul sin}}{%
+% \Huge\blue Spielereien und ernsthafte Betrachtungen zu
+% \textcolor{red}{PSTricks} bei \textsc{Lehmanns}
+%}
+\end{document} \ No newline at end of file
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/fontchart_arabic.pdf b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/fontchart_arabic.pdf
new file mode 100644
index 0000000000..38f691728a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/fontchart_arabic.pdf
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/fontchart_farsi.pdf b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/fontchart_farsi.pdf
new file mode 100644
index 0000000000..844c9d06b6
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/fontchart_farsi.pdf
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/lion.pdf b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/lion.pdf
new file mode 100644
index 0000000000..df7215a2e9
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/lion.pdf
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/lppl.tex b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/lppl.tex
new file mode 100644
index 0000000000..137b6492c7
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/lppl.tex
@@ -0,0 +1,467 @@
+%
+% $Id: lppl.tex,v 1.3 2006/01/13 14:45:56 mittelba Exp $
+%
+% Copyright 1999 2002-2006 LaTeX3 Project
+% Everyone is allowed to distribute verbatim copies of this
+% license document, but modification of it is not allowed.
+%
+%
+% We want it to be possible that this file can be processed by
+% (pdf)LaTeX on its own, or that this file can be included in another
+% LaTeX document without any modification whatsoever.
+% Hence the little test below.
+%
+\makeatletter
+\ifx\@preamblecmds\@notprerr
+ % In this case the preamble has already been processed so this file
+ % is loaded as part of another document; just enclose everything in
+ % a group
+ \let\LPPLicense\bgroup
+ \let\endLPPLicense\egroup
+\else
+ % In this case the preamble has not been processed yet so this file
+ % is processed by itself.
+ \documentclass{article}
+ \let\LPPLicense\document
+ \let\endLPPLicense\enddocument
+\fi
+\makeatother
+
+
+\begin{LPPLicense}
+ \newcommand{\LPPLsection}{\section*}
+ \newcommand{\LPPLsubsection}{\subsection*}
+ \newcommand{\LPPLsubsubsection}{\subsubsection*}
+ \newcommand{\LPPLparagraph}{\paragraph*}
+ \newcommand*{\LPPLfile}[1]{\texttt{#1}}
+ \newcommand*{\LPPLdocfile}[1]{`\LPPLfile{#1.tex}'}
+ \newcommand*{\LPPL}{\textsc{lppl}}
+
+ \LPPLsection{The \LaTeX\ Project Public License}
+
+ \emph{LPPL Version 1.3b 2006-01-07}
+
+ \textbf{Copyright 1999 2002--2006 \LaTeX3 Project}
+ \begin{quotation}
+ Everyone is allowed to distribute verbatim copies of this
+ license document, but modification of it is not allowed.
+ \end{quotation}
+
+ \LPPLsubsection{Preamble}
+
+ The \LaTeX\ Project Public License (\LPPL) is the primary license
+ under which the the \LaTeX\ kernel and the base \LaTeX\ packages are
+ distributed.
+
+ You may use this license for any work of which you hold the
+ copyright and which you wish to distribute. This license may be
+ particularly suitable if your work is \TeX-related (such as a
+ \LaTeX\ package), but you may use it with small modifications even
+ if your work is unrelated to \TeX.
+
+ The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS
+ LICENSE', below, gives instructions, examples, and recommendations
+ for authors who are considering distributing their works under this
+ license.
+
+ This license gives conditions under which a work may be distributed
+ and modified, as well as conditions under which modified versions of
+ that work may be distributed.
+
+ We, the \LaTeX3 Project, believe that the conditions below give you
+ the freedom to make and distribute modified versions of your work
+ that conform with whatever technical specifications you wish while
+ maintaining the availability, integrity, and reliability of that
+ work. If you do not see how to achieve your goal while meeting
+ these conditions, then read the document \LPPLdocfile{cfgguide} and
+ \LPPLdocfile{modguide} in the base \LaTeX\ distribution for suggestions.
+
+
+ \LPPLsubsection{Definitions}
+ In this license document the following terms are used:
+
+ \begin{description}
+ \item[Work] Any work being distributed under this License.
+
+ \item[Derived Work] Any work that under any applicable law is
+ derived from the Work.
+
+ \item[Modification] Any procedure that produces a Derived Work under
+ any applicable law -- for example, the production of a file
+ containing an original file associated with the Work or a
+ significant portion of such a file, either verbatim or with
+ modifications and/or translated into another language.
+
+ \item[Modify] To apply any procedure that produces a Derived Work
+ under any applicable law.
+
+ \item[Distribution] Making copies of the Work available from one
+ person to another, in whole or in part. Distribution includes
+ (but is not limited to) making any electronic components of the
+ Work accessible by file transfer protocols such as \textsc{ftp} or
+ \textsc{http} or by shared file systems such as Sun's Network File
+ System (\textsc{nfs}).
+
+ \item[Compiled Work] A version of the Work that has been processed
+ into a form where it is directly usable on a computer system.
+ This processing may include using installation facilities provided
+ by the Work, transformations of the Work, copying of components of
+ the Work, or other activities. Note that modification of any
+ installation facilities provided by the Work constitutes
+ modification of the Work.
+
+ \item[Current Maintainer] A person or persons nominated as such
+ within the Work. If there is no such explicit nomination then it
+ is the `Copyright Holder' under any applicable law.
+
+ \item[Base Interpreter] A program or process that is normally needed
+ for running or interpreting a part or the whole of the Work.
+
+ A Base Interpreter may depend on external components but these are
+ not considered part of the Base Interpreter provided that each
+ external component clearly identifies itself whenever it is used
+ interactively. Unless explicitly specified when applying the
+ license to the Work, the only applicable Base Interpreter is a
+ `\LaTeX-Format' or in the case of files belonging to the
+ `\LaTeX-format' a program implementing the `\TeX{} language'.
+ \end{description}
+
+ \LPPLsubsection{Conditions on Distribution and Modification}
+
+ \begin{enumerate}
+ \item Activities other than distribution and/or modification of the
+ Work are not covered by this license; they are outside its scope.
+ In particular, the act of running the Work is not restricted and
+ no requirements are made concerning any offers of support for the
+ Work.
+
+ \item\label{distribute} You may distribute a complete, unmodified
+ copy of the Work as you received it. Distribution of only part of
+ the Work is considered modification of the Work, and no right to
+ distribute such a Derived Work may be assumed under the terms of
+ this clause.
+
+ \item You may distribute a Compiled Work that has been generated
+ from a complete, unmodified copy of the Work as distributed under
+ Clause~\ref{distribute} above, as long as that Compiled Work is
+ distributed in such a way that the recipients may install the
+ Compiled Work on their system exactly as it would have been
+ installed if they generated a Compiled Work directly from the
+ Work.
+
+ \item\label{currmaint} If you are the Current Maintainer of the
+ Work, you may, without restriction, modify the Work, thus creating
+ a Derived Work. You may also distribute the Derived Work without
+ restriction, including Compiled Works generated from the Derived
+ Work. Derived Works distributed in this manner by the Current
+ Maintainer are considered to be updated versions of the Work.
+
+ \item If you are not the Current Maintainer of the Work, you may
+ modify your copy of the Work, thus creating a Derived Work based
+ on the Work, and compile this Derived Work, thus creating a
+ Compiled Work based on the Derived Work.
+
+ \item\label{conditions} If you are not the Current Maintainer of the
+ Work, you may distribute a Derived Work provided the following
+ conditions are met for every component of the Work unless that
+ component clearly states in the copyright notice that it is exempt
+ from that condition. Only the Current Maintainer is allowed to
+ add such statements of exemption to a component of the Work.
+ \begin{enumerate}
+ \item If a component of this Derived Work can be a direct
+ replacement for a component of the Work when that component is
+ used with the Base Interpreter, then, wherever this component of
+ the Work identifies itself to the user when used interactively
+ with that Base Interpreter, the replacement component of this
+ Derived Work clearly and unambiguously identifies itself as a
+ modified version of this component to the user when used
+ interactively with that Base Interpreter.
+
+ \item Every component of the Derived Work contains prominent
+ notices detailing the nature of the changes to that component,
+ or a prominent reference to another file that is distributed as
+ part of the Derived Work and that contains a complete and
+ accurate log of the changes.
+
+ \item No information in the Derived Work implies that any persons,
+ including (but not limited to) the authors of the original
+ version of the Work, provide any support, including (but not
+ limited to) the reporting and handling of errors, to recipients
+ of the Derived Work unless those persons have stated explicitly
+ that they do provide such support for the Derived Work.
+
+ \item You distribute at least one of the following with the Derived Work:
+ \begin{enumerate}
+ \item A complete, unmodified copy of the Work; if your
+ distribution of a modified component is made by offering
+ access to copy the modified component from a designated place,
+ then offering equivalent access to copy the Work from the same
+ or some similar place meets this condition, even though third
+ parties are not compelled to copy the Work along with the
+ modified component;
+
+ \item Information that is sufficient to obtain a complete,
+ unmodified copy of the Work.
+ \end{enumerate}
+ \end{enumerate}
+ \item If you are not the Current Maintainer of the Work, you may
+ distribute a Compiled Work generated from a Derived Work, as long
+ as the Derived Work is distributed to all recipients of the
+ Compiled Work, and as long as the conditions of
+ Clause~\ref{conditions}, above, are met with regard to the Derived
+ Work.
+
+ \item The conditions above are not intended to prohibit, and hence
+ do not apply to, the modification, by any method, of any component
+ so that it becomes identical to an updated version of that
+ component of the Work as it is distributed by the Current
+ Maintainer under Clause~\ref{currmaint}, above.
+
+ \item Distribution of the Work or any Derived Work in an alternative
+ format, where the Work or that Derived Work (in whole or in part)
+ is then produced by applying some process to that format, does not
+ relax or nullify any sections of this license as they pertain to
+ the results of applying that process.
+
+ \item \null
+ \begin{enumerate}
+ \item A Derived Work may be distributed under a different license
+ provided that license itself honors the conditions listed in
+ Clause~\ref{conditions} above, in regard to the Work, though it
+ does not have to honor the rest of the conditions in this
+ license.
+
+ \item If a Derived Work is distributed under a different license,
+ that Derived Work must provide sufficient documentation as part
+ of itself to allow each recipient of that Derived Work to honor
+ the restrictions in Clause~\ref{conditions} above, concerning
+ changes from the Work.
+ \end{enumerate}
+ \item This license places no restrictions on works that are
+ unrelated to the Work, nor does this license place any
+ restrictions on aggregating such works with the Work by any means.
+
+ \item Nothing in this license is intended to, or may be used to,
+ prevent complete compliance by all parties with all applicable
+ laws.
+ \end{enumerate}
+
+ \LPPLsubsection{No Warranty}
+
+ There is no warranty for the Work. Except when otherwise stated in
+ writing, the Copyright Holder provides the Work `as is', without
+ warranty of any kind, either expressed or implied, including, but
+ not limited to, the implied warranties of merchantability and
+ fitness for a particular purpose. The entire risk as to the quality
+ and performance of the Work is with you. Should the Work prove
+ defective, you assume the cost of all necessary servicing, repair,
+ or correction.
+
+ In no event unless required by applicable law or agreed to in
+ writing will The Copyright Holder, or any author named in the
+ components of the Work, or any other party who may distribute and/or
+ modify the Work as permitted above, be liable to you for damages,
+ including any general, special, incidental or consequential damages
+ arising out of any use of the Work or out of inability to use the
+ Work (including, but not limited to, loss of data, data being
+ rendered inaccurate, or losses sustained by anyone as a result of
+ any failure of the Work to operate with any other programs), even if
+ the Copyright Holder or said author or said other party has been
+ advised of the possibility of such damages.
+
+ \LPPLsubsection{Maintenance of The Work}
+
+ The Work has the status `author-maintained' if the Copyright Holder
+ explicitly and prominently states near the primary copyright notice
+ in the Work that the Work can only be maintained by the Copyright
+ Holder or simply that it is `author-maintained'.
+
+ The Work has the status `maintained' if there is a Current
+ Maintainer who has indicated in the Work that they are willing to
+ receive error reports for the Work (for example, by supplying a
+ valid e-mail address). It is not required for the Current Maintainer
+ to acknowledge or act upon these error reports.
+
+ The Work changes from status `maintained' to `unmaintained' if there
+ is no Current Maintainer, or the person stated to be Current
+ Maintainer of the work cannot be reached through the indicated means
+ of communication for a period of six months, and there are no other
+ significant signs of active maintenance.
+
+ You can become the Current Maintainer of the Work by agreement with
+ any existing Current Maintainer to take over this role.
+
+ If the Work is unmaintained, you can become the Current Maintainer
+ of the Work through the following steps:
+ \begin{enumerate}
+ \item Make a reasonable attempt to trace the Current Maintainer (and
+ the Copyright Holder, if the two differ) through the means of an
+ Internet or similar search.
+ \item If this search is successful, then enquire whether the Work is
+ still maintained.
+ \begin{enumerate}
+ \item If it is being maintained, then ask the Current Maintainer
+ to update their communication data within one month.
+
+ \item\label{intention} If the search is unsuccessful or no action
+ to resume active maintenance is taken by the Current Maintainer,
+ then announce within the pertinent community your intention to
+ take over maintenance. (If the Work is a \LaTeX{} work, this
+ could be done, for example, by posting to
+ \texttt{comp.text.tex}.)
+ \end{enumerate}
+ \item {}
+ \begin{enumerate}
+ \item If the Current Maintainer is reachable and agrees to pass
+ maintenance of the Work to you, then this takes effect
+ immediately upon announcement.
+
+ \item\label{announce} If the Current Maintainer is not reachable
+ and the Copyright Holder agrees that maintenance of the Work be
+ passed to you, then this takes effect immediately upon
+ announcement.
+ \end{enumerate}
+ \item\label{change} If you make an `intention announcement' as
+ described in~\ref{intention} above and after three months your
+ intention is challenged neither by the Current Maintainer nor by
+ the Copyright Holder nor by other people, then you may arrange for
+ the Work to be changed so as to name you as the (new) Current
+ Maintainer.
+
+ \item If the previously unreachable Current Maintainer becomes
+ reachable once more within three months of a change completed
+ under the terms of~\ref{announce} or~\ref{change}, then that
+ Current Maintainer must become or remain the Current Maintainer
+ upon request provided they then update their communication data
+ within one month.
+ \end{enumerate}
+ A change in the Current Maintainer does not, of itself, alter the
+ fact that the Work is distributed under the \LPPL\ license.
+
+ If you become the Current Maintainer of the Work, you should
+ immediately provide, within the Work, a prominent and unambiguous
+ statement of your status as Current Maintainer. You should also
+ announce your new status to the same pertinent community as
+ in~\ref{intention} above.
+
+ \LPPLsubsection{Whether and How to Distribute Works under This License}
+
+ This section contains important instructions, examples, and
+ recommendations for authors who are considering distributing their
+ works under this license. These authors are addressed as `you' in
+ this section.
+
+ \LPPLsubsubsection{Choosing This License or Another License}
+
+ If for any part of your work you want or need to use
+ \emph{distribution} conditions that differ significantly from those
+ in this license, then do not refer to this license anywhere in your
+ work but, instead, distribute your work under a different license.
+ You may use the text of this license as a model for your own
+ license, but your license should not refer to the \LPPL\ or
+ otherwise give the impression that your work is distributed under
+ the \LPPL.
+
+ The document \LPPLdocfile{modguide} in the base \LaTeX\ distribution
+ explains the motivation behind the conditions of this license. It
+ explains, for example, why distributing \LaTeX\ under the
+ \textsc{gnu} General Public License (\textsc{gpl}) was considered
+ inappropriate. Even if your work is unrelated to \LaTeX, the
+ discussion in \LPPLdocfile{modguide} may still be relevant, and authors
+ intending to distribute their works under any license are encouraged
+ to read it.
+
+ \LPPLsubsubsection{A Recommendation on Modification Without Distribution}
+
+ It is wise never to modify a component of the Work, even for your
+ own personal use, without also meeting the above conditions for
+ distributing the modified component. While you might intend that
+ such modifications will never be distributed, often this will happen
+ by accident -- you may forget that you have modified that component;
+ or it may not occur to you when allowing others to access the
+ modified version that you are thus distributing it and violating the
+ conditions of this license in ways that could have legal
+ implications and, worse, cause problems for the community. It is
+ therefore usually in your best interest to keep your copy of the
+ Work identical with the public one. Many works provide ways to
+ control the behavior of that work without altering any of its
+ licensed components.
+
+ \LPPLsubsubsection{How to Use This License}
+
+ To use this license, place in each of the components of your work
+ both an explicit copyright notice including your name and the year
+ the work was authored and/or last substantially modified. Include
+ also a statement that the distribution and/or modification of that
+ component is constrained by the conditions in this license.
+
+ Here is an example of such a notice and statement:
+ \begin{verbatim}
+ %% pig.dtx
+ %% Copyright 2005 M. Y. Name
+ %
+ % This work may be distributed and/or modified under the
+ % conditions of the LaTeX Project Public License, either version 1.3
+ % 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.3 or later is part of all distributions of LaTeX
+ % version 2005/12/01 or later.
+ %
+ % This work has the LPPL maintenance status `maintained'.
+ %
+ % The Current Maintainer of this work is M. Y. Name.
+ %
+ % This work consists of the files pig.dtx and pig.ins
+ % and the derived file pig.sty.
+ \end{verbatim}
+
+ Given such a notice and statement in a file, the conditions given in
+ this license document would apply, with the `Work' referring to the
+ three files `\LPPLfile{pig.dtx}', `\LPPLfile{pig.ins}', and
+ `\LPPLfile{pig.sty}' (the last being generated from
+ `\LPPLfile{pig.dtx}' using `\LPPLfile{pig.ins}'), the `Base
+ Interpreter' referring to any `\LaTeX-Format', and both `Copyright
+ Holder' and `Current Maintainer' referring to the person `M. Y.
+ Name'.
+
+ If you do not want the Maintenance section of \LPPL\ to apply to
+ your Work, change `maintained' above into `author-maintained'.
+ However, we recommend that you use `maintained' as the Maintenance
+ section was added in order to ensure that your Work remains useful
+ to the community even when you can no longer maintain and support it
+ yourself.
+
+ \LPPLsubsubsection{Derived Works That Are Not Replacements}
+
+ Several clauses of the \LPPL\ specify means to provide reliability
+ and stability for the user community. They therefore concern
+ themselves with the case that a Derived Work is intended to be used
+ as a (compatible or incompatible) replacement of the original
+ Work. If this is not the case (e.g., if a few lines of code are
+ reused for a completely different task), then clauses 6b and 6d
+ shall not apply.
+
+ \LPPLsubsubsection{Important Recommendations}
+
+ \LPPLparagraph{Defining What Constitutes the Work}
+
+ The \LPPL\ requires that distributions of the Work contain all the
+ files of the Work. It is therefore important that you provide a way
+ for the licensee to determine which files constitute the Work. This
+ could, for example, be achieved by explicitly listing all the files
+ of the Work near the copyright notice of each file or by using a
+ line such as:
+
+ \begin{verbatim}
+ % This work consists of all files listed in manifest.txt.
+ \end{verbatim}
+
+ in that place. In the absence of an unequivocal list it might be
+ impossible for the licensee to determine what is considered by you
+ to comprise the Work and, in such a case, the licensee would be
+ entitled to make reasonable conjectures as to which files comprise
+ the Work.
+
+\end{LPPLicense}
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.css b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.css
new file mode 100644
index 0000000000..1ab1c58e9f
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.css
@@ -0,0 +1,108 @@
+
+/* start css.sty */
+.aealmohanadb-x-x-125{font-size:125%;}
+.aealmohanadb-x-x-216{font-size:216%;}
+.aealmohanadb-x-x-150{font-size:150%;}
+.aedimnah-x-x-125{font-size:125%;}
+p.noindent { text-indent: 0em }
+td p.noindent { text-indent: 0em; margin-top:0em; }
+p.nopar { text-indent: 0em; }
+p.indent{ text-indent: 1.5em }
+@media print {div.crosslinks {visibility:hidden;}}
+a img { border-top: 0; border-left: 0; border-right: 0; }
+center { margin-top:1em; margin-bottom:1em; }
+td center { margin-top:0em; margin-bottom:0em; }
+.Canvas { position:relative; }
+img.math{vertical-align:middle;}
+li p.indent { text-indent: 0em }
+.enumerate1 {list-style-type:decimal;}
+.enumerate2 {list-style-type:lower-alpha;}
+.enumerate3 {list-style-type:lower-roman;}
+.enumerate4 {list-style-type:upper-alpha;}
+div.newtheorem { margin-bottom: 2em; margin-top: 2em;}
+.obeylines-h,.obeylines-v {white-space: nowrap; }
+div.obeylines-v p { margin-top:0; margin-bottom:0; }
+.overline{ text-decoration:overline; }
+.overline img{ border-top: 1px solid black; }
+td.displaylines {text-align:center; white-space:nowrap;}
+.centerline {text-align:center;}
+.rightline {text-align:right;}
+div.verbatim {font-family: monospace; white-space: nowrap; }
+table.verbatim {width:100%;}
+.fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; }
+div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; }
+table.minipage{width:100%;}
+div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;}
+div.center div {text-align: left;}
+div.flushright, div.flushright div.flushright {text-align: right;}
+div.flushright div {text-align: left;}
+div.flushleft {text-align: left;}
+.underline{ text-decoration:underline; }
+.underline img{ border-bottom: 1px solid black; margin-bottom:1pt; }
+.framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; }
+.framebox-c {text-align:center;}
+.framebox-l {text-align:left;}
+.framebox-r {text-align:right;}
+span.thank-mark{ vertical-align: super }
+span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; }
+div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; }
+table.tabular td p{margin-top:0em;}
+table.tabular {margin-left: auto; margin-right: auto;}
+div.td00{ margin-left:0pt; margin-right:0pt; }
+div.td01{ margin-left:0pt; margin-right:5pt; }
+div.td10{ margin-left:5pt; margin-right:0pt; }
+div.td11{ margin-left:5pt; margin-right:5pt; }
+table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; }
+td.td00{ padding-left:0pt; padding-right:0pt; }
+td.td01{ padding-left:0pt; padding-right:5pt; }
+td.td10{ padding-left:5pt; padding-right:0pt; }
+td.td11{ padding-left:5pt; padding-right:5pt; }
+table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; }
+.hline hr, .cline hr{ height : 1px; margin:0px; }
+.tabbing-right {text-align:right;}
+span.TEX {letter-spacing: -0.125em; }
+span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;}
+a span.TEX span.E {text-decoration: none; }
+span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;}
+span.LATEX span.TEX{ position:relative; left: -0.4em; }
+div.float img, div.float .caption {text-align:center;}
+div.figure img, div.figure .caption {text-align:center;}
+.marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;}
+.marginpar p{margin-top:0.4em; margin-bottom:0.4em;}
+table.equation {width:100%;}
+.equation td{text-align:center; }
+td.equation { margin-top:1em; margin-bottom:1em; }
+td.equation-label { width:5%; text-align:center; }
+td.eqnarray4 { width:5%; white-space: normal; }
+td.eqnarray2 { width:5%; }
+table.eqnarray-star, table.eqnarray {width:100%;}
+div.eqnarray{text-align:center;}
+div.array {text-align:center;}
+div.pmatrix {text-align:center;}
+table.pmatrix {width:100%;}
+span.pmatrix img{vertical-align:middle;}
+div.pmatrix {text-align:center;}
+table.pmatrix {width:100%;}
+img.cdots{vertical-align:middle;}
+.partToc a, .partToc, .likepartToc a, .likepartToc {line-height: 200%; font-weight:bold; font-size:110%;}
+.chapterToc a, .chapterToc, .likechapterToc a, .likechapterToc, .appendixToc a, .appendixToc {line-height: 200%; font-weight:bold;}
+.caption td.id{font-weight: bold; white-space: nowrap; }
+table.caption {text-align:center;}
+h1.partHead{text-align: center}
+p.bibitem { text-indent: -2em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; }
+p.bibitem-p { text-indent: 0em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; }
+.paragraphHead, .likeparagraphHead { margin-top:2em; font-weight: bold;}
+.subparagraphHead, .likesubparagraphHead { font-weight: bold;}
+.quote {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; margin-right:1em; text-align:justify;}
+.verse{white-space:nowrap; margin-left:2em}
+div.maketitle {text-align:center;}
+h2.titleHead{text-align:center;}
+div.maketitle{ margin-bottom: 2em; }
+div.author, div.date {text-align:center;}
+div.thanks{text-align:left; margin-left:10%; font-size:85%; font-style:italic; }
+div.author{white-space: nowrap;}
+.quotation {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; }
+h1.partHead{text-align: center}
+/* end css.sty */
+
+
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.html b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.html
new file mode 100644
index 0000000000..ba59d1102c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.html
@@ -0,0 +1,706 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//AR"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<html lang="ar" >
+<head><title></title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)">
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)">
+<!-- html -->
+<meta name="src" content="samplebook.tex">
+<meta name="date" content="2006-12-14 10:17:00">
+<link rel="stylesheet" type="text/css" href="samplebook.css">
+</head><body
+>
+ <div class="maketitle">
+
+
+
+
+<h2 class="titleHead" dir="rtl" >&#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631;</h2>
+<div class="author" ><span
+class="aealmohanadb-x-x-150">&#x062A;&#x0648;&#x0641;&#x064A;&#x0642; &#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645;</span></div><br />
+<div class="date" ><span
+class="aealmohanadb-x-x-150">&#x0661;&#x0664; &#xFEDB;&#xFE8E;&#xFEE7;&#xFEEE;&#x0646; &#x0627;&#xFEF7;&#x0648;&#x0644; &#x0662;&#x0660;&#x0660;&#x0666;</span></div>
+
+ </div>
+
+ <h2 class="likechapterHead" dir="rtl" ><a
+ id="x1-1000"></a>&#x0627;&#xFEDF;&#xFED4;&#xFEEC;&#xFEAE;&#x0633;</h2> <div class="tableofcontents" dir="rtl" >
+ <span class="chapterToc" dir="rtl" >&#x0661; <a
+href="#x1-20001" id="QQ2-1-2">&#x062A;&#x0648;&#x0641;&#x064A;&#x0642; &#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645;</a></span>
+<br /> <span class="chapterToc" dir="rtl" >&#x0662; <a
+href="#x1-30002" id="QQ2-1-3">&#x0645;&#x0642;&#x062F;&#x0645;&#x0629;</a></span>
+<br /> <span class="chapterToc" dir="rtl" >&#x0663; <a
+href="#x1-40003" id="QQ2-1-4">&#x0627;&#x0644;&#x0645;&#x0646;&#x0638;&#x0631; &#x0627;&#x0644;&#x0623;&#x0648;&#x0644;</a></span>
+<br /> <span class="chapterToc" dir="rtl" >&#x0664; <a
+href="#x1-50004" id="QQ2-1-5">&#x0627;&#x0644;&#x0645;&#x0646;&#x0638;&#x0631; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A;</a></span>
+ </div>
+
+<!--l. 42--><p class="indent" dir="rtl" >
+
+ <h2 class="chapterHead" dir="rtl" ><span class="titlemark">&#x0627;&#xFEDF;&#xFE92;&#xFE8E;&#x0628;&#x00A0;&#x0661;</span><br /><a
+ id="x1-20001"></a>&#x062A;&#x0648;&#x0641;&#x064A;&#x0642; &#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645;</h2>
+<!--l. 44--><p class="noindent" dir="rtl" >&#x0641;&#x064A; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0634;&#x0647;&#x0631;&#x060C; &#x064A;&#x062D;&#x062A;&#x0641;&#x0644; &#x0627;&#x0644;&#x0639;&#x0627;&#x0644;&#x0645; &#x0627;&#x0644;&#x0639;&#x0631;&#x0628;&#x064A; &#x0628;&#x0627;&#x0644;&#x0630;&#x0643;&#x0631;&#x0649; &#x0627;&#x0644;&#x0645;&#x0626;&#x0648;&#x064A;&#x0629; &#x0644;&#x0645;&#x0648;&#x0644;&#x062F; &#x062A;&#x0648;&#x0641;&#x064A;&#x0642;
+&#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645; &#x0028;&#x0661;&#x0668;&#x0669;&#x0668; &#x0627;&#x0644;&#x0625;&#x0633;&#x0643;&#x0646;&#x062F;&#x0631;&#x064A;&#x0629; &#x002D; &#x0661;&#x0669;&#x0668;&#x0667; &#x0627;&#x0644;&#x0642;&#x0627;&#x0647;&#x0631;&#x0629; &#x0029;&#x002E;
+<!--l. 52--><p class="indent" dir="rtl" > &#x0648;&#x0642;&#x062F; &#x062D;&#x0638;&#x064A; &#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645; &#x0628;&#x0645;&#x0643;&#x0627;&#x0646;&#x0629; &#x0645;&#x062A;&#x0645;&#x064A;&#x0632;&#x0629; &#x0639;&#x0644;&#x0649; &#x062E;&#x0631;&#x064A;&#x0637;&#x0629; &#x062A;&#x0637;&#x0648;&#x0631; &#x0627;&#x0644;&#x0643;&#x062A;&#x0627;&#x0628;&#x0629; &#x0627;&#x0644;&#x0625;&#x0628;&#x062F;&#x0627;&#x0639;&#x064A;&#x0629;
+&#x0627;&#x0644;&#x0639;&#x0631;&#x0628;&#x064A;&#x0629;&#x061B; &#x0641;&#x0647;&#x0648; &#x0643;&#x0627;&#x062A;&#x0628; &#x0648;&#x0627;&#x062D;&#x062F;&#x0629; &#x0645;&#x0646; &#x0623;&#x0648;&#x0644;&#x0649; &#x0627;&#x0644;&#x0631;&#x0648;&#x0627;&#x064A;&#x0627;&#x062A; &#x0627;&#x0644;&#x0639;&#x0631;&#x0628;&#x064A;&#x0629;&#x003A; &#x0639;&#x0648;&#x062F;&#x0629; &#x0627;&#x0644;&#x0631;&#x0648;&#x062D; &#x0028;&#x0661;&#x0669;&#x0663;&#x0663;&#x0029;&#x060C; &#x0648;&#x0647;&#x0648;
+&#x002D; &#x0623;&#x064A;&#x0636;&#x0627; &#x002D; &#x0643;&#x0627;&#x062A;&#x0628; &#x0623;&#x0648;&#x0644; &#x0645;&#x0633;&#x0631;&#x062D;&#x064A;&#x0629; &#x0639;&#x0631;&#x0628;&#x064A;&#x0629; &#x0646;&#x0627;&#x0636;&#x062C;&#x0629; &#x0628;&#x0645;&#x0639;&#x0627;&#x064A;&#x064A;&#x0631; &#x0627;&#x0644;&#x0646;&#x0642;&#x062F; &#x0627;&#x0644;&#x062D;&#x062F;&#x064A;&#x062B;&#x003A; &#x0623;&#x0647;&#x0644;
+&#x0627;&#x0644;&#x0643;&#x0647;&#x0641; &#x0028;&#x0661;&#x0669;&#x0663;&#x0663;&#x0029;&#x002E; &#x0648;&#x0642;&#x0628;&#x0644;&#x0647;&#x0627;&#x060C; &#x0643;&#x0627;&#x0646; &#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645; &#x0642;&#x062F; &#x0643;&#x062A;&#x0628; &#x0623;&#x0648;&#x0644;&#x0649; &#x0645;&#x0633;&#x0631;&#x062D;&#x064A;&#x0627;&#x062A;&#x0647; &#x0641;&#x064A; &#x0633;&#x0646;
+&#x0645;&#x0628;&#x0643;&#x0631;&#x0629; &#x0628;&#x0639;&#x0646;&#x0648;&#x0627;&#x0646; &#x0627;&#x0644;&#x0636;&#x064A;&#x0641; &#x0627;&#x0644;&#x062B;&#x0642;&#x064A;&#x0644; &#x060C; &#x0648;&#x0630;&#x0644;&#x0643; &#x0625;&#x0628;&#x0627;&#x0646; &#x062B;&#x0648;&#x0631;&#x0629; &#x0661;&#x0669;&#x0661;&#x0669; &#x0636;&#x062F; &#x0627;&#x0644;&#x0627;&#x062D;&#x062A;&#x0644;&#x0627;&#x0644;
+&#x0627;&#x0644;&#x0628;&#x0631;&#x064A;&#x0637;&#x0627;&#x0646;&#x064A;&#x002E;
+<!--l. 54--><p class="indent" dir="rtl" > &#x0648;&#x0635;&#x0641; &#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645; &#x0628;&#x0623;&#x0646;&#x0647; &#x0645;&#x0624;&#x0633;&#x0633; &#x0627;&#x0644;&#x0645;&#x0633;&#x0631;&#x062D; &#x0627;&#x0644;&#x0645;&#x0635;&#x0631;&#x064A; &#x0627;&#x0644;&#x0645;&#x0639;&#x0627;&#x0635;&#x0631; &#x060C; &#x0648;&#x0628;&#x0623;&#x0646;&#x0647; &#x0645;&#x0646; &#x062C;&#x0639;&#x0644;
+&#x0627;&#x0644;&#x0645;&#x0633;&#x0631;&#x062D; &#x0641;&#x064A; &#x0627;&#x0644;&#x0639;&#x0627;&#x0644;&#x0645; &#x0627;&#x0644;&#x0639;&#x0631;&#x0628;&#x064A; &#x062C;&#x0646;&#x0633;&#x0627; &#x0623;&#x062F;&#x0628;&#x064A;&#x0627; &#x0645;&#x0631;&#x0645;&#x0648;&#x0642;&#x0627; &#x002E; &#x0648;&#x0642;&#x062F; &#x0627;&#x062A;&#x0633;&#x0645;&#x062A; &#x0644;&#x063A;&#x0629; &#x0623;&#x0639;&#x0645;&#x0627;&#x0644;&#x0647;
+&#x0627;&#x0644;&#x0645;&#x0633;&#x0631;&#x062D;&#x064A;&#x0629; &#x0628;&#x0627;&#x0644;&#x064A;&#x0633;&#x0631; &#x0648;&#x0627;&#x0644;&#x0645;&#x0631;&#x0648;&#x0646;&#x0629;&#x060C; &#x0648;&#x062D;&#x0631;&#x0635; &#x0639;&#x0644;&#x0649; &#x0623;&#x0646; &#x064A;&#x0628;&#x0631;&#x0632; &#x0641;&#x064A;&#x0647;&#x0627; &#x0631;&#x0648;&#x062D; &#x0627;&#x0644;&#x0644;&#x0647;&#x062C;&#x0629; &#x0627;&#x0644;&#x0639;&#x0627;&#x0645;&#x064A;&#x0629;
+&#x0627;&#x0644;&#x0645;&#x0635;&#x0631;&#x064A;&#x0629; &#x0648;&#x0628;&#x0639;&#x0636; &#x062A;&#x0631;&#x0643;&#x064A;&#x0628;&#x0627;&#x062A;&#x0647;&#x0627; &#x062E;&#x0644;&#x0627;&#x0644; &#x062F;&#x0631;&#x0627;&#x0633;&#x062A;&#x0647; &#x0627;&#x0644;&#x062D;&#x0631;&#x0629; &#x0641;&#x064A; &#x0628;&#x0627;&#x0631;&#x064A;&#x0633; &#x0028;&#x0661;&#x0669;&#x0662;&#x0664; &#x002D; &#x0661;&#x0669;&#x0662;&#x0668; &#x0029;&#x060C;
+&#x0627;&#x0646;&#x0634;&#x063A;&#x0644; &#x062A;&#x0648;&#x0641;&#x064A;&#x0642; &#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645; &#x0628;&#x0627;&#x0644;&#x062A;&#x0639;&#x0631;&#x0641; &#x0639;&#x0644;&#x0649; &#x062E;&#x0635;&#x0648;&#x0635;&#x064A;&#x0627;&#x062A; &#x062B;&#x0642;&#x0627;&#x0641;&#x062A;&#x0647; &#x0627;&#x0644;&#x0639;&#x0631;&#x0628;&#x064A;&#x0629;
+&#x0627;&#x0644;&#x0645;&#x0635;&#x0631;&#x064A;&#x0629;&#x060C; &#x0648;&#x0639;&#x0644;&#x0649; &#x0645;&#x0627; &#x064A;&#x0645;&#x064A;&#x0632;&#x0647;&#x0627; &#x0639;&#x0646; &#x0627;&#x0644;&#x062B;&#x0642;&#x0627;&#x0641;&#x0629; &#x0627;&#x0644;&#x063A;&#x0631;&#x0628;&#x064A;&#x0629; &#x0627;&#x0644;&#x062A;&#x064A; &#x0643;&#x0627;&#x0646; &#x002D; &#x0622;&#x0646;&#x0630;&#x0627;&#x0643; &#x002D; &#x0641;&#x064A;
+&#x062E;&#x0636;&#x0645; &#x0637;&#x0648;&#x0641;&#x0627;&#x0646;&#x0647;&#x0627;&#x002E; &#x0648;&#x0642;&#x062F; &#x0639;&#x0628;&#x0631; &#x0639;&#x0646; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0627;&#x0646;&#x0634;&#x063A;&#x0627;&#x0644; &#x0641;&#x064A; &#x0631;&#x0648;&#x0627;&#x064A;&#x062A;&#x064A;&#x0647; &#x0639;&#x0648;&#x062F;&#x0629; &#x0627;&#x0644;&#x0631;&#x0648;&#x062D; &#x0028; &#x0661;&#x0669;&#x0663;&#x0663; &#x0029;
+&#x0639;&#x0635;&#x0641;&#x0648;&#x0631; &#x0645;&#x0646; &#x0627;&#x0644;&#x0634;&#x0631;&#x0642; &#x0028; &#x0661;&#x0669;&#x0663;&#x0668;&#x0029; &#x060C; &#x0648;&#x0645;&#x0633;&#x0631;&#x062D;&#x064A;&#x062A;&#x064A;&#x0647; &#x0625;&#x064A;&#x0632;&#x064A;&#x0633; &#x0028; &#x0661;&#x0669;&#x0665;&#x0665; &#x0029; &#x060C; &#x0648; &#x0627;&#x0644;&#x0635;&#x0641;&#x0642;&#x0629; &#x0028; &#x0661;&#x0669;&#x0665;&#x0666;
+&#x0029;&#x002E;
+<!--l. 56--><p class="indent" dir="rtl" > &#x0622;&#x0645;&#x0646; &#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645; &#x0628;&#x0642;&#x062F;&#x0631;&#x0629; &#x0627;&#x0644;&#x0634;&#x0639;&#x0628; &#x0648;&#x0628;&#x0642;&#x0648;&#x0629; &#x0628;&#x0635;&#x064A;&#x0631;&#x062A;&#x0647;&#x061B; &#x0641;&#x0643;&#x062A;&#x0628; &#x0641;&#x064A; &#x0643;&#x062A;&#x0627;&#x0628;&#x0647;
+&#x062A;&#x0623;&#x0645;&#x0644;&#x0627;&#x062A; &#x0633;&#x064A;&#x0627;&#x0633;&#x064A;&#x0629;&#x060C; &#x003A; &#xFD3F; <span
+class="aedimnah-x-x-125">&#x0625;&#x0646; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0634;&#x0639;&#x0628; &#x064A;&#x0639;&#x0644;&#x0645; &#x0623;&#x0634;&#x064A;&#x0627;&#x0621; &#x0643;&#x062B;&#x064A;&#x0631;&#x0629; &#x060C; &#x0644;&#x0643;&#x0646;&#x0647;</span>
+<span
+class="aedimnah-x-x-125">&#x064A;&#x0639;&#x0644;&#x0645;&#x0647;&#x0627; &#x0628;&#x0642;&#x0644;&#x0628;&#x0647; &#x0644;&#x0627; &#x0628;&#x0639;&#x0642;&#x0644;&#x0647;&#x002E; &#x0625;&#x0646; &#x0627;&#x0644;&#x062D;&#x0643;&#x0645;&#x0629; &#x0627;&#x0644;&#x0639;&#x0644;&#x064A;&#x0627; &#x0641;&#x064A; &#x062F;&#x0645;&#x0647; &#x0648;&#x0644;&#x0627; &#x064A;&#x0639;&#x0644;&#x0645;&#x060C; &#x0648;&#x0627;&#x0644;&#x0642;&#x0648;&#x0629;</span>
+<span
+class="aedimnah-x-x-125">&#x0641;&#x064A; &#x0646;&#x0641;&#x0633;&#x0647; &#x0648;&#x0644;&#x0627; &#x064A;&#x0639;&#x0644;&#x0645; </span>&#xFD3E;&#x002E; &#x0648;&#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645; &#x002D; &#x0623;&#x064A;&#x0636;&#x0627; &#x002D; &#x0641;&#x064A; &#x0623;&#x0639;&#x0645;&#x0627;&#x0644;&#x0647; &#x064A;&#x0644;&#x062C;&#x0623; &#x0625;&#x0644;&#x0649;
+&#x0628;&#x0635;&#x064A;&#x0631;&#x062A;&#x0647; &#x0648;&#x0642;&#x0644;&#x0628;&#x0647; &#x0648;&#x0645;&#x0648;&#x0647;&#x0628;&#x062A;&#x0647; &#x0627;&#x0644;&#x062E;&#x0644;&#x0627;&#x0642;&#x0629;&#x060C; &#x0648;&#x0625;&#x0644;&#x0649; &#x0642;&#x062F;&#x0631;&#x062A;&#x0647; &#x0639;&#x0644;&#x0649; &#x0627;&#x0644;&#x0645;&#x062D;&#x0627;&#x0643;&#x0627;&#x0629; &#x0648;&#x062E;&#x0644;&#x0642;
+&#x0627;&#x0644;&#x0635;&#x0648;&#x0631; &#x0648;&#x0627;&#x0644;&#x0634;&#x062E;&#x0635;&#x064A;&#x0627;&#x062A; &#x0648;&#x0627;&#x0644;&#x0645;&#x0648;&#x0627;&#x0642;&#x0641; &#x0623;&#x0643;&#x062B;&#x0631; &#x0645;&#x0645;&#x0627; &#x064A;&#x0644;&#x062C;&#x0623; &#x0625;&#x0644;&#x0649; &#x0627;&#x0644;&#x0646;&#x0638;&#x0631;&#x064A;&#x0627;&#x062A; &#x0648;&#x0645;&#x0646;&#x0627;&#x0647;&#x062C;
+&#x0627;&#x0644;&#x0628;&#x062D;&#x062B; &#x0648;&#x0627;&#x0644;&#x062A;&#x062D;&#x0644;&#x064A;&#x0644; &#x060C; &#x062D;&#x062A;&#x0649; &#x0648;&#x0625;&#x0646; &#x0643;&#x0627;&#x0646;&#x062A; &#x0643;&#x062A;&#x0627;&#x0628;&#x0627;&#x062A;&#x0647; &#x002D; &#x0641;&#x064A; &#x0627;&#x0644;&#x0645;&#x062C;&#x0645;&#x0644; &#x002D; &#x062A;&#x062A;&#x0635;&#x062F;&#x0649;
+&#x0644;&#x0645;&#x0648;&#x0636;&#x0648;&#x0639;&#x0627;&#x062A; &#x0643;&#x0628;&#x0631;&#x0649; &#x0645;&#x062B;&#x0644; &#x0645;&#x062D;&#x0627;&#x0648;&#x0644;&#x0629; &#x062A;&#x0641;&#x0633;&#x064A;&#x0631; &#x0648;&#x0636;&#x0639; &#x0627;&#x0644;&#x0625;&#x0646;&#x0633;&#x0627;&#x0646; &#x0641;&#x064A; &#x0633;&#x064A;&#x0627;&#x0642; &#x0627;&#x0644;&#x0643;&#x0648;&#x0646;&#x060C;
+&#x0648;&#x0627;&#x0644;&#x0632;&#x0645;&#x0627;&#x0646; &#x060C; &#x0648;&#x0627;&#x0644;&#x0645;&#x0643;&#x0627;&#x0646;&#x060C; &#x0648;&#x0627;&#x0644;&#x0645;&#x062C;&#x062A;&#x0645;&#x0639;&#x002E; &#x0643;&#x0645;&#x0627; &#x062A;&#x0646;&#x0627;&#x0648;&#x0644;&#x062A; &#x0643;&#x062A;&#x0627;&#x0628;&#x0627;&#x062A; &#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645; &#x0645;&#x0641;&#x0627;&#x0647;&#x064A;&#x0645;
+&#x0627;&#x0644;&#x062C;&#x0645;&#x0627;&#x0639;&#x0629; &#x0648;&#x0627;&#x0644;&#x0641;&#x0631;&#x062F; &#x0648;&#x0627;&#x0644;&#x0642;&#x0627;&#x0646;&#x0648;&#x0646; &#x0648;&#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0629; &#x0648;&#x0627;&#x0644;&#x0639;&#x062F;&#x0644; &#x0648;&#x0627;&#x0644;&#x062D;&#x0628;&#x002E; &#x0648;&#x0623;&#x0643;&#x062F; &#x0645;&#x0631;&#x0627;&#x0631;&#x0627; &#x0641;&#x064A; &#x0647;&#x0630;&#x0647;
+&#x0627;&#x0644;&#x0643;&#x062A;&#x0627;&#x0628;&#x0627;&#x062A; &#x0639;&#x0644;&#x0649; &#x0645;&#x0641;&#x0627;&#x0647;&#x064A;&#x0645; &#x0627;&#x0644;&#x062D;&#x0631;&#x064A;&#x0629; &#x0627;&#x0644;&#x0641;&#x0631;&#x062F;&#x064A;&#x0629; &#x0648;&#x0639;&#x0644;&#x0627;&#x0642;&#x0629; &#x0627;&#x0644;&#x0645;&#x0648;&#x0627;&#x0637;&#x0646; &#x0628;&#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0629;
+&#x0648;&#x0628;&#x0627;&#x0644;&#x0645;&#x062C;&#x062A;&#x0645;&#x0639;&#x002E;
+<!--l. 59--><p class="indent" dir="rtl" > &#x0639;&#x0645;&#x0644; &#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645; &#x0645;&#x062F;&#x064A;&#x0631;&#x0627; &#x0644;&#x062F;&#x0627;&#x0631; &#x0627;&#x0644;&#x0643;&#x062A;&#x0628; &#x0627;&#x0644;&#x0642;&#x0648;&#x0645;&#x064A;&#x0629;&#x060C; &#x0648;&#x0645;&#x0646;&#x062F;&#x0648;&#x0628;&#x0627; &#x062F;&#x0627;&#x0626;&#x0645;&#x0627; &#x0644;&#x0628;&#x0644;&#x0627;&#x062F;&#x0647; &#x0641;&#x064A;
+&#x0645;&#x0646;&#x0638;&#x0645;&#x0629; &#x0627;&#x0644;&#x064A;&#x0648;&#x0646;&#x0633;&#x0643;&#x0648;&#x060C; &#x0648;&#x0631;&#x0626;&#x064A;&#x0633;&#x0627; &#x0644;&#x0627;&#x062A;&#x062D;&#x0627;&#x062F; &#x0643;&#x062A;&#x0627;&#x0628; &#x0645;&#x0635;&#x0631;&#x060C; &#x0648;&#x0643;&#x0627;&#x062A;&#x0628;&#x0627; &#x0645;&#x062A;&#x0641;&#x0631;&#x063A;&#x0627; &#x0641;&#x064A;
+&#x062C;&#x0631;&#x064A;&#x062F;&#x0629; &#x0627;&#x0644;&#x0623;&#x0647;&#x0631;&#x0627;&#x0645; &#x002E; &#x0648;&#x0645;&#x0646;&#x0630; &#x0627;&#x0644;&#x0623;&#x0631;&#x0628;&#x0639;&#x064A;&#x0646;&#x064A;&#x0627;&#x062A;&#x060C; &#x062F;&#x0623;&#x0628; &#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645; &#x0639;&#x0644;&#x0649; &#x0646;&#x0634;&#x0631; &#x0623;&#x0639;&#x0645;&#x0627;&#x0644;&#x0647;
+&#x0627;&#x0644;&#x0645;&#x0633;&#x0631;&#x062D;&#x064A;&#x0629; &#x0648;&#x0645;&#x0642;&#x0627;&#x0644;&#x0627;&#x062A;&#x0647; &#x0627;&#x0644;&#x0641;&#x0643;&#x0631;&#x064A;&#x0629; &#x0641;&#x064A; &#x0627;&#x0644;&#x0635;&#x062D;&#x0641; &#x0627;&#x0644;&#x0645;&#x0635;&#x0631;&#x064A;&#x0629; &#x0642;&#x0628;&#x0644; &#x0646;&#x0634;&#x0631;&#x0647;&#x0627; &#x0641;&#x064A;
+&#x0643;&#x062A;&#x0628;&#x002E;
+<!--l. 61--><p class="indent" dir="rtl" > &#x062A;&#x0631;&#x0643; &#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645; &#x0661;&#x0660;&#x0660; &#x0645;&#x0633;&#x0631;&#x062D;&#x064A;&#x0629; &#x0648; &#x0666;&#x0662; &#x0643;&#x062A;&#x0627;&#x0628;&#x0627; &#x060C; &#x062A;&#x0631;&#x062C;&#x0645; &#x0645;&#x0646;&#x0647;&#x0627; &#x0627;&#x0644;&#x0643;&#x062B;&#x064A;&#x0631; &#x0625;&#x0644;&#x0649; &#x0639;&#x062F;&#x062F; &#x0645;&#x0646;
+&#x0627;&#x0644;&#x0644;&#x063A;&#x0627;&#x062A; &#x0627;&#x0644;&#x062D;&#x064A;&#x0629; &#x002E; &#x0648;&#x0645;&#x0646; &#x0623;&#x0647;&#x0645; &#x0645;&#x0627; &#x062A;&#x0631;&#x062C;&#x0645; &#x0644;&#x0647; &#x003A; &#x0623;&#x0647;&#x0644; &#x0627;&#x0644;&#x0643;&#x0647;&#x0641; &#x0028; &#x0661;&#x0669;&#x0663;&#x0662; &#x0029;&#x060C; &#x0634;&#x0647;&#x0631;&#x0632;&#x0627;&#x062F; &#x0028; &#x0661;&#x0669;&#x0663;&#x0664; &#x0029; &#x060C;
+&#x0628;&#x064A;&#x063A;&#x0627;&#x0644;&#x064A;&#x0648;&#x0646; &#x0623;&#x0648;&#x062F;&#x064A;&#x0628; &#x0028; &#x0661;&#x0669;&#x0664;&#x0669; &#x0029; &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x0627;&#x0644;&#x062D;&#x0627;&#x0626;&#x0631; &#x0028; &#x0661;&#x0669;&#x0666;&#x0660; &#x0029; &#x060C; &#x064A;&#x0627; &#x0637;&#x0627;&#x0644;&#x0639; &#x0634;&#x062C;&#x0631;&#x0629; &#x0028; &#x0661;&#x0669;&#x0666;&#x0662; &#x0029; &#x0648;
+&#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x0627;&#x0644;&#x062A;&#x064A; &#x0643;&#x062A;&#x0628;&#x0647;&#x0627; &#x0648;&#x0646;&#x0634;&#x0631;&#x0647;&#x0627; &#x0639;&#x0627;&#x0645; &#x0661;&#x0669;&#x0666;&#x0665;&#x002E;
+
+<!--l. 65--><p class="indent" dir="rtl" >
+
+ <h2 class="chapterHead" dir="rtl" ><span class="titlemark">&#x0627;&#xFEDF;&#xFE92;&#xFE8E;&#x0628;&#x00A0;&#x0662;</span><br /><a
+ id="x1-30002"></a>&#x0645;&#x0642;&#x062F;&#x0645;&#x0629;</h2>
+<!--l. 67--><p class="noindent" dir="rtl" >&#x0647;&#x0630;&#x0647; &#x0645;&#x0633;&#x0631;&#x062D;&#x064A;&#x0629; &#x062A;&#x0639;&#x0644;&#x064A;&#x0645;&#x064A;&#x0629; &#x002E; &#x002E; &#x002E; &#x0648;&#x0627;&#x0644;&#x0623;&#x0639;&#x0645;&#x0627;&#x0644; &#x0627;&#x0644;&#x062A;&#x0639;&#x0644;&#x064A;&#x0645;&#x064A;&#x0629; &#x0641;&#x064A; &#x0627;&#x0644;&#x0623;&#x062F;&#x0628; &#x0648;&#x0627;&#x0644;&#x0641;&#x0646; &#x060C; &#x0645;&#x0646; &#x0643;&#x0644;&#x064A;&#x0644;&#x0629;
+&#x0648;&#x062F;&#x0645;&#x0646;&#x0629; &#x0625;&#x0644;&#x0649; &#x062D;&#x0643;&#x0627;&#x064A;&#x0627;&#x062A; &#x0644;&#x0627;&#x0641;&#x0648;&#x0646;&#x062A;&#x064A;&#x0646; &#x0625;&#x0644;&#x0649; &#x0645;&#x0633;&#x0631;&#x062D;&#x064A;&#x0627;&#x062A; &#x0628;&#x0631;&#x064A;&#x062E;&#x062A; &#x0648;&#x063A;&#x064A;&#x0631;&#x0647;&#x0627; &#x0645;&#x0646; &#x0622;&#x062B;&#x0627;&#x0631; &#x0647;&#x0630;&#x0627;
+&#x0627;&#x0644;&#x0646;&#x0648;&#x0639; &#x060C; &#x0625;&#x0646;&#x0645;&#x0627; &#x062A;&#x0647;&#x062F;&#x0641; &#x0625;&#x0644;&#x0649; &#x062A;&#x0648;&#x062C;&#x064A;&#x0647; &#x0627;&#x0644;&#x0633;&#x0644;&#x0648;&#x0643; &#x0627;&#x0644;&#x0641;&#x0631;&#x062F;&#x064A; &#x0623;&#x0648; &#x0627;&#x0644;&#x0627;&#x062C;&#x062A;&#x0645;&#x0627;&#x0639;&#x064A; &#x002E; &#x002E; &#x0648;&#x0647;&#x064A; &#x0641;&#x064A;
+&#x0623;&#x062D;&#x064A;&#x0627;&#x0646; &#x0643;&#x062B;&#x064A;&#x0631;&#x0629; &#x0644;&#x0627; &#x062A;&#x062E;&#x0641;&#x064A; &#x0645;&#x0642;&#x0627;&#x0635;&#x062F;&#x0647;&#x0627; &#x002E; &#x002E; &#x0648;&#x062A;&#x062A;&#x062E;&#x064A;&#x0631; &#x0645;&#x0646; &#x0627;&#x0644;&#x0639;&#x0628;&#x0627;&#x0631;&#x0627;&#x062A; &#x0645;&#x0627; &#x064A;&#x0635;&#x0644; &#x062A;&#x0648;&#x0627;
+&#x0625;&#x0644;&#x0649; &#x0627;&#x0644;&#x0646;&#x0641;&#x0648;&#x0633; &#x0648;&#x064A;&#x0631;&#x0633;&#x062E;&#x0647; &#x0641;&#x064A; &#x0627;&#x0644;&#x0623;&#x0630;&#x0647;&#x0627;&#x0646; &#x002E; &#x002E; &#x0648;&#x062A;&#x0646;&#x062A;&#x0642;&#x064A; &#x0645;&#x0646; &#x0648;&#x0633;&#x0627;&#x0626;&#x0644; &#x0627;&#x0644;&#x062A;&#x0639;&#x0628;&#x064A;&#x0631;
+&#x0623;&#x0648;&#x0636;&#x062D;&#x0647;&#x0627; &#x0648;&#x0623;&#x0628;&#x0633;&#x0637;&#x0647;&#x0627; &#x002E; &#x002E; &#x0648;&#x062A;&#x062A;&#x062E;&#x0630; &#x0623;&#x062D;&#x064A;&#x0627;&#x0646;&#x0627; &#x0645;&#x0646; &#x0648;&#x0636;&#x0639; &#x0627;&#x0644;&#x062D;&#x0643;&#x0645;&#x0629; &#x0648;&#x0627;&#x0644;&#x0645;&#x063A;&#x0632;&#x0649; &#x0641;&#x064A;
+&#x0635;&#x0648;&#x0631;&#x0629; &#x0645;&#x0628;&#x0627;&#x0634;&#x0631;&#x0629; &#x0633;&#x0644;&#x0627;&#x062D;&#x0627; &#x0645;&#x0646; &#x0623;&#x0633;&#x0644;&#x062D;&#x062A;&#x0647;&#x0627; &#x002E; &#x002E; &#x0648;&#x0647;&#x064A; &#x0639;&#x0644;&#x0649; &#x062E;&#x0644;&#x0627;&#x0641; &#x0627;&#x0644;&#x0641;&#x0646; &#x0627;&#x0644;&#x0622;&#x062E;&#x0631; &#x0627;&#x0644;&#x0630;&#x064A;
+&#x064A;&#x062E;&#x0641;&#x064A; &#x0648;&#x062C;&#x0647;&#x0647; &#x0648;&#x064A;&#x062F;&#x0639;&#x0643; &#x062A;&#x0643;&#x062A;&#x0634;&#x0641; &#x0645;&#x0627; &#x062E;&#x0644;&#x0641;&#x0647;&#x060C; &#x062A;&#x0643;&#x0634;&#x0641; &#x0647;&#x064A; &#x0627;&#x0644;&#x0642;&#x0646;&#x0627;&#x0639; &#x0648;&#x062A;&#x0642;&#x0648;&#x0644;
+&#x0644;&#x0643;&#x003A;
+<!--l. 69--><p class="indent" dir="rtl" > &#x0646;&#x0639;&#x0645; &#x0623;&#x0631;&#x064A;&#x062F; &#x0623;&#x0646; &#x0623;&#x0639;&#x0638;&#x0643; &#x0641;&#x0627;&#x0633;&#x062A;&#x0645;&#x0639; &#x0625;&#x0644;&#x064A; &#x0021;
+<!--l. 71--><p class="indent" dir="rtl" > &#x0648;&#x0625;&#x0632;&#x0627;&#x0621; &#x0647;&#x0630;&#x0647; &#x0627;&#x0644;&#x0635;&#x0631;&#x0627;&#x062D;&#x0629; &#x0645;&#x0646;&#x0647;&#x0627; &#x0646;&#x0635;&#x063A;&#x064A; &#x0625;&#x0644;&#x064A;&#x0647;&#x0627; &#x0631;&#x0627;&#x0636;&#x064A;&#x0646; &#x002E; &#x002E; &#x0648;&#x0647;&#x0643;&#x0630;&#x0627; &#x0623;&#x0635;&#x063A;&#x064A;&#x0646;&#x0627; &#x0648;&#x0644;&#x0627; &#x0646;&#x0632;&#x0627;&#x0644;
+&#x0646;&#x0635;&#x063A;&#x064A; &#x0625;&#x0644;&#x0649; &#x062D;&#x0643;&#x0645; &#x0643;&#x0644;&#x064A;&#x0644;&#x0629; &#x0648;&#x062F;&#x0645;&#x0646;&#x0629; &#x0648;&#x0639;&#x0638;&#x0627;&#x062A; &#x0644;&#x0627;&#x0641;&#x0648;&#x0646;&#x062A;&#x064A;&#x0646; &#x0648;&#x0645;&#x0633;&#x0631;&#x062D;&#x064A;&#x0629; &#x0628;&#x0627;&#x062F;&#x0646;
+&#x0627;&#x0644;&#x062A;&#x0639;&#x0644;&#x064A;&#x0645;&#x064A;&#x0629; &#x0644;&#x0628;&#x0631;&#x064A;&#x062E;&#x062A; &#x002E; &#x002E; &#x062F;&#x0648;&#x0646; &#x0623;&#x0646; &#x0646;&#x0636;&#x062C;&#x0631; &#x0645;&#x0645;&#x0627; &#x0646;&#x0633;&#x0645;&#x0639; &#x002E; &#x002E; &#x0630;&#x0644;&#x0643; &#x0623;&#x0646; &#x0627;&#x0644;&#x0648;&#x0639;&#x0638; &#x0641;&#x064A; &#x0630;&#x0627;&#x062A;&#x0647; &#x0641;&#x0646;
+&#x060C; &#x0645;&#x0627; &#x062F;&#x0627;&#x0645; &#x0642;&#x062F; &#x0642;&#x062F;&#x0645; &#x0625;&#x0644;&#x064A;&#x0646;&#x0627; &#x0641;&#x064A; &#x0634;&#x0643;&#x0644; &#x062C;&#x0645;&#x064A;&#x0644;&#x002E; &#x0643;&#x0644; &#x0645;&#x0627; &#x0623;&#x0631;&#x062C;&#x0648; &#x0625;&#x0630;&#x0646; &#x0644;&#x0647;&#x0630;&#x0647; &#x0627;&#x0644;&#x0645;&#x0633;&#x0631;&#x062D;&#x064A;&#x0629; &#x061B; &#x0647;&#x0648; &#x0623;&#x0646;
+&#x064A;&#x0643;&#x0648;&#x0646; &#x0645;&#x0636;&#x0645;&#x0648;&#x0646;&#x0647;&#x0627; &#x0642;&#x062F; &#x0642;&#x062F;&#x0645; &#x0641;&#x064A; &#x0634;&#x0643;&#x0644; &#x063A;&#x064A;&#x0631; &#x062B;&#x0642;&#x064A;&#x0644; &#x0639;&#x0644;&#x0649; &#x0627;&#x0644;&#x0646;&#x0641;&#x0633; &#x060C; &#x0648;&#x0623;&#x0646; &#x062A;&#x062D;&#x0642;&#x0642; &#x060C; &#x0648;&#x0644;&#x0648;
+&#x0628;&#x0642;&#x062F;&#x0631; &#x0636;&#x0626;&#x064A;&#x0644; &#x060C; &#x0645;&#x0627; &#x062A;&#x0647;&#x062F;&#x0641; &#x0625;&#x0644;&#x064A;&#x0647; &#x0645;&#x0646; &#x0645;&#x0642;&#x0627;&#x0635;&#x062F;&#x002E;
+<div class="flushright"
+>
+<!--l. 73--><p class="noindent" dir="rtl" >
+ &#x062A;&#x0648;&#x0641;&#x064A;&#x0642; &#x0627;&#x0644;&#x062D;&#x0643;&#x064A;&#x0645;</div>
+
+<!--l. 80--><p class="indent" dir="rtl" >
+
+ <h2 class="chapterHead" dir="rtl" ><span class="titlemark">&#x0627;&#xFEDF;&#xFE92;&#xFE8E;&#x0628;&#x00A0;&#x0663;</span><br /><a
+ id="x1-40003"></a>&#x0627;&#x0644;&#x0645;&#x0646;&#x0638;&#x0631; &#x0627;&#x0644;&#x0623;&#x0648;&#x0644;</h2>
+<!--l. 82--><p class="noindent" dir="rtl" >&#x0627;&#x0644;&#x0642;&#x0627;&#x0639;&#x0629; &#x0627;&#x0644;&#x0643;&#x0628;&#x0631;&#x0649; &#x0641;&#x064A; &#x0642;&#x0635;&#x0631; &#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x0646;&#x0639;&#x0645;&#x0627;&#x0646; &#x002E; &#x002E; &#x0648;&#x0647;&#x0648; &#x064A;&#x062D;&#x0627;&#x062F;&#x062B; &#x0648;&#x0632;&#x064A;&#x0631;&#x0647; &#x002E; &#x002E;
+<!--l. 84--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0642;&#x0644;&#x062A; &#x062F;&#x0628;&#x0631;&#x0646;&#x064A; &#x064A;&#x0627;&#x0648;&#x0632;&#x064A;&#x0631;&#x064A; &#x0021; &#x002E; &#x002E;
+<!--l. 86--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x062A;&#x062F;&#x0627;&#x0628;&#x064A;&#x0631; &#xFDF2; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x0646;&#x0627; &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x0021; &#x002E; &#x002E;
+<!--l. 88--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0633;&#x0645;&#x0639;&#x062A;&#x0647;&#x0627; &#x0645;&#x0646;&#x0643; &#x0639;&#x0634;&#x0631;&#x064A;&#x0646; &#x0645;&#x0631;&#x0629; &#x0021; &#x0637;&#x0628;&#x0639;&#x0627; &#x0627;&#x0644;&#x062A;&#x062F;&#x0627;&#x0628;&#x064A;&#x0631; &#xFDF2; &#x0021; &#x002E; &#x002E;
+&#x0644;&#x0643;&#x0646;&#x0643; &#x0623;&#x0646;&#x062A; &#x0648;&#x0632;&#x064A;&#x0631;&#x064A; &#x002E; &#x002E; &#x0648;&#x0647;&#x0630;&#x0647; &#x0648;&#x0638;&#x064A;&#x0641;&#x062A;&#x0643; &#x003A; &#x062A;&#x0641;&#x0643;&#x0631; &#x0645;&#x0639;&#x064A; &#x0648;&#x062A;&#x062F;&#x0628;&#x0631; &#x0644;&#x064A; &#x002E; &#x002E; &#x0647;&#x0644;
+&#x062A;&#x0631;&#x064A;&#x062F; &#x0623;&#x0646; &#x062A;&#x0642;&#x0628;&#x0636; &#x0623;&#x0646;&#x062A; &#x0627;&#x0644;&#x0645;&#x0631;&#x062A;&#x0628; &#x060C; &#x0648;&#x062A;&#x062A;&#x0631;&#x0643; &#x0627;&#x0644;&#x0639;&#x0645;&#x0644; &#x064A;&#x062A;&#x0648;&#x0644;&#x0627;&#x0647; &#x0639;&#x0646;&#x0643; &#x0627;&#xFDF2; &#x0021; &#x002E;
+&#x002E;
+<!--l. 90--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0648;&#x0647;&#x0644; &#x0633;&#x0628;&#x0642; &#x0644;&#x064A; &#x0623;&#x0646; &#x062A;&#x062E;&#x0644;&#x064A;&#x062A; &#x0639;&#x0646; &#x0639;&#x0645;&#x0644;&#x064A; &#x0021; &#x002E; &#x002E;
+<!--l. 92--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0643;&#x062B;&#x064A;&#x0631;&#x0627; &#x002E; &#x002E; &#x0627;&#x0644;&#x0639;&#x0645;&#x0644; &#x0627;&#x0644;&#x0633;&#x0647;&#x0644; &#x062A;&#x0642;&#x0648;&#x0645; &#x0628;&#x0647; &#x002E; &#x002E; &#x0648;&#x0627;&#x0644;&#x0639;&#x0645;&#x0644; &#x0627;&#x0644;&#x0635;&#x0639;&#x0628; &#x062A;&#x062A;&#x062E;&#x0644;&#x0649; &#x0639;&#x0646;&#x0647;
+&#xFDF2; &#x062A;&#x0639;&#x0627;&#x0644;&#x0649; &#x0021; &#x002E; &#x002E;
+<!--l. 94--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0623;&#x064A; &#x0628;&#x0623;&#x0633; &#x0623;&#x0646; &#x0623;&#x0633;&#x0623;&#x0644; &#x0627;&#xFDF2; &#x0627;&#x0644;&#x0645;&#x0639;&#x0648;&#x0646;&#x0629; &#x061F;&#x002E; &#x002E;
+<!--l. 96--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0648;&#x0644;&#x0645;&#x0627;&#x0630;&#x0627; &#x0644;&#x0627; &#x0623;&#x0633;&#x0623;&#x0644;&#x0647; &#x0645;&#x0628;&#x0627;&#x0634;&#x0631;&#x0629; &#x060C; &#x0648;&#x0623;&#x0648;&#x0641;&#x0631; &#x0627;&#x0644;&#x0645;&#x0631;&#x062A;&#x0628; &#x061F; &#x002E; &#x002E;
+<!--l. 98--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0645;&#x0631;&#x062A;&#x0628;&#x064A; &#x0639;&#x0644;&#x0649; &#x0643;&#x0644; &#x062D;&#x0627;&#x0644; &#x0644;&#x064A;&#x0633; &#x0628;&#x0627;&#x0644;&#x0645;&#x0628;&#x0644;&#x063A; &#x0627;&#x0644;&#x0628;&#x0627;&#x0647;&#x0638; &#x0021;
+<!--l. 100--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0639;&#x0631;&#x0641; &#x0630;&#x0644;&#x0643; &#x002E; &#x002E; &#x0648;&#x0644;&#x0643;&#x0646;&#x064A; &#x0644;&#x0627; &#x0623;&#x062A;&#x0643;&#x0644;&#x0645; &#x0639;&#x0646; &#x0627;&#x0644;&#x0645;&#x0631;&#x062A;&#x0628; &#x0627;&#x0644;&#x0631;&#x0633;&#x0645;&#x064A; &#x0021; &#x002E;
+&#x002E;
+<!--l. 102--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0644;&#x0633;&#x062A; &#x0623;&#x0646;&#x0627; &#x0648;&#x062D;&#x062F;&#x064A; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x064A; &#x002E; &#x002E;
+<!--l. 104--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0639;&#x0631;&#x0641; &#x0630;&#x0644;&#x0643; &#x0623;&#x064A;&#x0636;&#x0627; &#x002E; &#x002E; &#x0627;&#x0644;&#x062C;&#x0645;&#x064A;&#x0639; &#x002E; &#x002E;
+<!--l. 106--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x0645;&#x0645;&#x0644;&#x0643;&#x0629; &#x0643;&#x0644;&#x0647;&#x0627; &#x002E; &#x002E; &#x0645;&#x0646; &#x0643;&#x0628;&#x0627;&#x0631; &#x0648;&#x0635;&#x063A;&#x0627;&#x0631; &#x002E; &#x002E; &#x0648;&#x0623;&#x0646;&#x062A; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x064A; &#x0623;&#x0631;&#x062F;&#x062A; &#x0630;&#x0644;&#x0643; &#x002E;
+&#x002E;
+<!--l. 108--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0631;&#x062F;&#x062A; &#x0645;&#x0627;&#x0630;&#x0627; &#x061F; &#x002E; &#x002E;
+<!--l. 110--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0642;&#x0644;&#x062A;&#x003A; &#x0647;&#x0630;&#x0647; &#x0647;&#x064A; &#x0627;&#x0644;&#x0645;&#x0631;&#x062A;&#x0628;&#x0627;&#x062A; &#x0627;&#x0644;&#x0631;&#x0633;&#x0645;&#x064A;&#x0629; &#x002E; &#x002E; &#x0648;&#x0628;&#x0639;&#x062F; &#x0630;&#x0644;&#x0643; &#x0643;&#x0644; &#x0648;&#x0627;&#x062D;&#x062F; &#x0648;&#x0634;&#x0637;&#x0627;&#x0631;&#x062A;&#x0647; &#x002E;
+&#x002E;
+<!--l. 112--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0643;&#x0644; &#x0648;&#x0627;&#x062D;&#x062F; &#x0648;&#x0634;&#x0637;&#x0627;&#x0631;&#x062A;&#x0647; &#x0644;&#x064A;&#x0633; &#x0645;&#x0639;&#x0646;&#x0627;&#x0647;&#x0627; &#x002E; &#x002E; &#x0648;&#x0645;&#x0639; &#x0630;&#x0644;&#x0643; &#x0627;&#x0644;&#x0634;&#x0637;&#x0627;&#x0631;&#x0629; &#x0632;&#x0627;&#x062F;&#x062A;
+&#x0643;&#x062B;&#x064A;&#x0631;&#x0627; &#x0021; &#x002E; &#x002E;
+<!--l. 114--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x0643;&#x0644; &#x0627;&#x0644;&#x064A;&#x0648;&#x0645; &#x064A;&#x0631;&#x064A;&#x062F; &#x0627;&#x0644;&#x062D;&#x064A;&#x0627;&#x0629; &#x0627;&#x0644;&#x0645;&#x0645;&#x062A;&#x0639;&#x0629; &#x002E;
+<!--l. 116--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646;&#x003A; &#x062D;&#x0642;&#x0627; &#x002E; &#x002E; &#x0625;&#x0644;&#x0627; &#x0627;&#x0628;&#x0646;&#x062A;&#x064A; &#x0627;&#x0644;&#x0645;&#x063A;&#x0641;&#x0644;&#x0629; &#x0021; &#x002E; &#x002E; &#x0648;&#x0623;&#x0646;&#x062A; &#x064A;&#x0627; &#x0648;&#x0632;&#x064A;&#x0631;&#x064A; &#x0644;&#x0627; &#x062A;&#x0631;&#x064A;&#x062F; &#x0623;&#x0646; &#x062A;&#x0641;&#x0643;&#x0631;
+&#x0641;&#x064A; &#x062D;&#x0644; &#x0647;&#x0630;&#x0647; &#x0627;&#x0644;&#x0645;&#x0634;&#x0643;&#x0644;&#x0629; &#x0021; &#x002E; &#x002E;
+<!--l. 118--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0623;&#x0646;&#x062A; &#x062A;&#x0639;&#x0631;&#x0641; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x064A; &#x0637;&#x0628;&#x0627;&#x0639; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x002E; &#x002E; &#x0645;&#x0627; &#x0645;&#x0646; &#x0634;&#x064A;&#x0621; &#x064A;&#x0642;&#x0641; &#x0636;&#x062F; &#x0625;&#x0631;&#x0627;&#x062F;&#x062A;&#x0647;&#x0627; &#x002E;
+&#x002E;
+<!--l. 120--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0648;&#x0647;&#x0644; &#x0645;&#x0646; &#x0627;&#x0644;&#x0635;&#x0648;&#x0627;&#x0628; &#x0623;&#x0646; &#x0646;&#x0644;&#x0628;&#x064A; &#x0644;&#x0647;&#x0627; &#x0645;&#x062B;&#x0644; &#x0647;&#x0630;&#x0647; &#x0627;&#x0644;&#x0625;&#x0631;&#x0627;&#x062F;&#x0629; &#x0627;&#x0644;&#x063A;&#x0631;&#x064A;&#x0628;&#x0629; &#x061F; &#x002E;
+&#x002E;
+<!--l. 122--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0648;&#x0645;&#x0627;&#x0630;&#x0627; &#x0641;&#x064A; &#x064A;&#x062F;&#x0646;&#x0627; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x064A; &#x061F; &#x002E; &#x002E; &#x0644;&#x0642;&#x062F; &#x062A;&#x0645;&#x0633;&#x0643;&#x0646;&#x0627; &#x0628;&#x0645;&#x0648;&#x0642;&#x0641;&#x0646;&#x0627; &#x0641;&#x0627;&#x0632;&#x062F;&#x0627;&#x062F;&#x062A; &#x0647;&#x064A;
+&#x062A;&#x0645;&#x0633;&#x0643;&#x0627; &#x0628;&#x0645;&#x0648;&#x0642;&#x0641;&#x0647;&#x0627; &#x0021; &#x002E; &#x002E;
+<!--l. 124--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646;&#x003A; &#x0641;&#x064A; &#x0623;&#x064A; &#x0644;&#x064A;&#x0644;&#x0629; &#x0646;&#x062D;&#x0633; &#x0648;&#x0644;&#x062F;&#x062A; &#x0647;&#x0630;&#x0647; &#x0627;&#x0644;&#x0628;&#x0646;&#x062A; &#x061F; &#x002E; &#x002E; &#x0627;&#x0644;&#x0623;&#x0639;&#x0648;&#x0627;&#x0645; &#x062A;&#x0645;&#x0631; &#x0648;&#x0647;&#x064A; &#x0644;&#x0627; &#x062A;&#x0631;&#x064A;&#x062F;
+&#x0623;&#x0646; &#x062A;&#x062A;&#x0632;&#x0648;&#x062C; &#x002E; &#x002E; &#x0644;&#x0642;&#x062F; &#x062A;&#x0632;&#x0648;&#x062C;&#x062A; &#x0623;&#x062E;&#x062A;&#x0627;&#x0647;&#x0627; &#x0643;&#x0645;&#x0627; &#x062A;&#x062A;&#x0632;&#x0648;&#x062C; &#x0628;&#x0646;&#x0627;&#x062A; &#x0627;&#x0644;&#x0645;&#x0644;&#x0648;&#x0643; &#x002E; &#x002E; &#x0645;&#x0646; &#x062E;&#x064A;&#x0631;&#x0629; &#x0627;&#x0644;&#x0623;&#x0645;&#x0631;&#x0627;&#x0621;
+&#x0648;&#x0623;&#x063A;&#x0646;&#x0649; &#x0627;&#x0644;&#x0633;&#x0644;&#x0627;&#x0637;&#x064A;&#x0646; &#x002E; &#x002E; &#x0625;&#x0644;&#x0627; &#x0647;&#x064A; &#x002E; &#x002E; &#x0644;&#x0627; &#x064A;&#x063A;&#x0631;&#x064A;&#x0647;&#x0627; &#x0645;&#x0627;&#x0644; &#x0648;&#x0644;&#x0627; &#x062C;&#x0627;&#x0647; &#x002E; &#x002E; &#x0648;&#x0644;&#x0633;&#x062A; &#x0623;&#x062F;&#x0631;&#x064A; &#x0645;&#x0627; &#x0627;&#x0644;&#x0630;&#x064A;
+&#x064A;&#x063A;&#x0631;&#x064A;&#x0647;&#x0627; &#x0625;&#x0630;&#x0646; &#x0641;&#x064A; &#x0627;&#x0644;&#x062D;&#x064A;&#x0627;&#x0629; &#x061F; &#x002E; &#x002E;
+<!--l. 126--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0645;&#x0646;&#x0630; &#x0627;&#x0644;&#x0635;&#x063A;&#x0631; &#x0648;&#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x0647;&#x0643;&#x0630;&#x0627; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x064A; &#x0021; &#x002E; &#x002E; &#x0639;&#x062C;&#x064A;&#x0628;&#x0629;
+&#x0641;&#x0631;&#x064A;&#x062F;&#x0629; &#x0645;&#x0646; &#x0646;&#x0648;&#x0639;&#x0647;&#x0627; &#x002E; &#x002E; &#x0628;&#x0631;&#x0639;&#x062A; &#x0641;&#x064A; &#x0631;&#x0643;&#x0648;&#x0628; &#x0627;&#x0644;&#x062E;&#x064A;&#x0644; &#x0648;&#x0627;&#x0644;&#x0644;&#x0639;&#x0628; &#x0628;&#x0627;&#x0644;&#x0633;&#x064A;&#x0641; &#x0648;&#x0642;&#x0631;&#x0627;&#x0621;&#x0629; &#x0627;&#x0644;&#x0643;&#x062A;&#x0628;
+&#x0648;&#x0625;&#x0637;&#x0627;&#x0644;&#x0629; &#x0627;&#x0644;&#x062A;&#x0623;&#x0645;&#x0644; &#x0648;&#x0627;&#x0644;&#x0632;&#x0647;&#x062F; &#x0641;&#x064A;&#x0645;&#x0627; &#x064A;&#x0639;&#x062C;&#x0628; &#x0648;&#x064A;&#x0628;&#x0647;&#x0631; &#x002E; &#x002E;
+<!--l. 128--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0643;&#x0644; &#x0647;&#x0630;&#x0627; &#x0645;&#x062D;&#x062A;&#x0645;&#x0644; &#x0625;&#x0644;&#x0627; &#x0625;&#x0631;&#x0627;&#x062F;&#x062A;&#x0647;&#x0627; &#x062A;&#x0644;&#x0643;&#x002E; &#x0625;&#x0644;&#x0627; &#x0630;&#x0644;&#x0643; &#x0627;&#x0644;&#x0634;&#x0631;&#x0637; &#x0627;&#x0644;&#x0630;&#x064A; &#x0648;&#x0636;&#x0639;&#x062A;&#x0647;
+&#x0644;&#x0644;&#x0632;&#x0648;&#x0627;&#x062C; &#x002E; &#x002E;
+<!--l. 130--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0639;&#x0646;&#x062F;&#x064A; &#x0641;&#x0643;&#x0631;&#x0629; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x064A; &#x0021; &#x002E; &#x002E;
+<!--l. 132--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x062E;&#x064A;&#x0631;&#x0627; &#x0021; &#x002E; &#x002E; &#x0642;&#x0644; &#x0648;&#x0623;&#x0633;&#x0631;&#x0639; &#x0021; &#x002E; &#x002E;
+<!--l. 134--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0646;&#x0642;&#x0628;&#x0644; &#x0627;&#x0644;&#x0634;&#x0631;&#x0637; &#x002E; &#x002E;
+<!--l. 136--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0647;&#x0630;&#x0647; &#x0647;&#x064A; &#x0627;&#x0644;&#x0641;&#x0643;&#x0631;&#x0629; &#x0021; &#x002E; &#x002E;
+<!--l. 138--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0646;&#x0642;&#x0628;&#x0644; &#x0627;&#x0644;&#x0634;&#x0631;&#x0637; &#x0645;&#x0639; &#x0627;&#x0644;&#x062A;&#x0639;&#x062F;&#x064A;&#x0644; &#x002E; &#x002E;
+
+<!--l. 140--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x064A; &#x062A;&#x0639;&#x062F;&#x064A;&#x0644;&#x061F; &#x0625;&#x0646; &#x0627;&#x0644;&#x0634;&#x0631;&#x0637; &#x0647;&#x0648; &#x0623;&#x0646; &#x064A;&#x0645;&#x0631; &#x0627;&#x0644;&#x0646;&#x0627;&#x0633; &#x0643;&#x0644;&#x0647;&#x0645; &#x062A;&#x062D;&#x062A; &#x0634;&#x0628;&#x0627;&#x0643;&#x0647;&#x0627; &#x0648;&#x0647;&#x064A;
+&#x062A;&#x062E;&#x062A;&#x0627;&#x0631; &#x0645;&#x0646; &#x0628;&#x064A;&#x0646;&#x0647;&#x0645; &#x0628;&#x062F;&#x0648;&#x0646; &#x062A;&#x0645;&#x064A;&#x064A;&#x0632; &#x0021; &#x002E; &#x002E;
+<!--l. 142--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0646;&#x0644;&#x0628;&#x064A; &#x0630;&#x0644;&#x0643; &#x002E; &#x002E; &#x0645;&#x0639; &#x062A;&#x062D;&#x0641;&#x0638; &#x0628;&#x0633;&#x064A;&#x0637; &#x003A; &#x0647;&#x0648; &#x0623;&#x0646; &#x062A;&#x0633;&#x0645;&#x062D; &#x0644;&#x0646;&#x0627; &#x0628;&#x0625;&#x062C;&#x0631;&#x0627;&#x0621; &#x0641;&#x0631;&#x0632;
+&#x0645;&#x0628;&#x062F;&#x0626;&#x064A; &#x002E; &#x002E; &#x0648;&#x0628;&#x0630;&#x0644;&#x0643; &#x0646;&#x0633;&#x062A;&#x0639;&#x0628;&#x062F; &#x0643;&#x0644; &#x0645;&#x0646; &#x0644;&#x064A;&#x0633; &#x062C;&#x062F;&#x064A;&#x0631;&#x0627; &#x0628;&#x0647;&#x0627; &#x002E; &#x002E;
+<!--l. 144--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0635;&#x0628;&#x062A; &#x002E; &#x002E; &#x0646;&#x0639;&#x0645; &#x002E; &#x002E; &#x0648;&#x0631;&#x0628;&#x0645;&#x0627; &#x0627;&#x0633;&#x062A;&#x0637;&#x0639;&#x0646;&#x0627; &#x0627;&#x0644;&#x062A;&#x062D;&#x0627;&#x064A;&#x0644; &#x060C; &#x0641;&#x062F;&#x0633;&#x0633;&#x0646;&#x0627; &#x0628;&#x0639;&#x0636;
+&#x0627;&#x0644;&#x0623;&#x0645;&#x0631;&#x0627;&#x0621; &#x060C; &#x0648;&#x062D;&#x0635;&#x0631;&#x0646;&#x0627; &#x0627;&#x0644;&#x0627;&#x062E;&#x062A;&#x064A;&#x0627;&#x0631; &#x0641;&#x064A;&#x0647;&#x0645; &#x002E; &#x002E;
+<!--l. 146--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0647;&#x0630;&#x0627; &#x0647;&#x0648; &#x063A;&#x0631;&#x0636;&#x064A; &#x002E; &#x002E;
+<!--l. 148--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0644;&#x0627; &#x0628;&#x0623;&#x0633; &#x0628;&#x0627;&#x0644;&#x0641;&#x0643;&#x0631;&#x0629; &#x002E; &#x002E; &#x0641;&#x0644;&#x0646;&#x0633;&#x062A;&#x062F;&#x0639; &#x0625;&#x0630;&#x0646; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x0648;&#x0646;&#x0642;&#x0646;&#x0639;&#x0647;&#x0627; &#x0628;&#x0647;&#x0630;&#x0627;
+&#x0627;&#x0644;&#x062A;&#x062D;&#x0641;&#x0638; &#x0627;&#x0644;&#x0628;&#x0633;&#x064A;&#x0637; &#x002E; &#x002E;
+<!--l. 150--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x0628;&#x0633;&#x064A;&#x0637; &#x062C;&#x062F;&#x0627; &#x002E; &#x002E;
+<!--l. 152--><p class="indent" dir="rtl" > &#x0028; &#x064A;&#x062A;&#x062C;&#x0647; &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x0646;&#x062D;&#x0648; &#x0627;&#x0644;&#x0628;&#x0627;&#x0628; &#x0648;&#x064A;&#x0633;&#x0631; &#x0643;&#x0644;&#x0627;&#x0645;&#x0627; &#x0644;&#x0625;&#x062D;&#x062F;&#x0649; &#x0627;&#x0644;&#x0648;&#x0635;&#x064A;&#x0641;&#x0627;&#x062A;&#x060C; &#x062B;&#x0645; &#x064A;&#x0639;&#x0648;&#x062F; &#x0625;&#x0644;&#x0649;
+&#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x0029;
+<!--l. 154--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x0622;&#x062A;&#x064A;&#x0629; &#x002E;&#x002E; &#x0644;&#x0643;&#x0646; &#x002E;&#x002E; &#x0647;&#x0644; &#x064A;&#x062D;&#x0633;&#x0646; &#x0628;&#x064A; &#x0623;&#x0646; &#x0623;&#x0628;&#x0642;&#x064A; &#x061F;&#x002E;&#x002E;
+<!--l. 156--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0628;&#x0627;&#x0644;&#x0637;&#x0628;&#x0639; &#x002E; &#x002E; &#x0625;&#x0646; &#x0627;&#x0644;&#x0641;&#x0643;&#x0631;&#x0629; &#x0641;&#x0643;&#x0631;&#x062A;&#x0643; &#x002E; &#x002E; &#x0648;&#x0639;&#x0644;&#x064A;&#x0643; &#x0623;&#x0646;&#x062A; &#x0623;&#x0646; &#x062A;&#x062A;&#x0648;&#x0644;&#x0649;
+&#x0639;&#x0631;&#x0636;&#x0647;&#x0627;&#x002E; &#x002E;
+<!--l. 158--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0623;&#x0646;&#x0627; &#x061F; &#x002E; &#x002E; &#x0625;&#x0646;&#x064A; &#x002E; &#x002E;
+<!--l. 160--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x062A;&#x0631;&#x064A;&#x062F; &#x0623;&#x0646; &#x062A;&#x062A;&#x062E;&#x0644;&#x0649; &#x0639;&#x0646; &#x0639;&#x0645;&#x0644;&#x0643; &#x0645;&#x0631;&#x0629; &#x0623;&#x062E;&#x0631;&#x0649; &#x002E; &#x002E; &#x0625;&#x0646; &#x0641;&#x0643;&#x0631;&#x062A;&#x0643; &#x0644;&#x0646; &#x064A;&#x0643;&#x0648;&#x0646;
+&#x0644;&#x0647;&#x0627; &#x0642;&#x064A;&#x0645;&#x0629; &#x0625;&#x0644;&#x0627; &#x0625;&#x0630;&#x0627; &#x0627;&#x0642;&#x062A;&#x0646;&#x0639;&#x062A; &#x0647;&#x064A; &#x0628;&#x0647;&#x0627; &#x002E; &#x002E;
+<!--l. 162--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0623;&#x0645;&#x0631;&#x0643; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x064A; &#x0021; &#x002E; &#x002E;
+<!--l. 164--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0647;&#x0627; &#x0647;&#x064A; &#x0630;&#x064A; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x0648;&#x0642;&#x062F; &#x0623;&#x0642;&#x0628;&#x0644;&#x062A; &#x002E; &#x002E;
+<!--l. 166--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0028; &#x0638;&#x0627;&#x0647;&#x0631;&#x0629; &#x0645;&#x0646; &#x0627;&#x0644;&#x0628;&#x0627;&#x0628; &#x0029; &#x0637;&#x0644;&#x0628;&#x062A;&#x0646;&#x064A; &#x064A;&#x0627; &#x0623;&#x0628;&#x064A; &#x061F; &#x002E; &#x002E;
+<!--l. 168--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0646;&#x0639;&#x0645; &#x002E; &#x002E; &#x002E; &#x0647;&#x0644; &#x0623;&#x0646;&#x062A; &#x0645;&#x0635;&#x0631;&#x0629; &#x0639;&#x0644;&#x0649; &#x0634;&#x0631;&#x0637;&#x0643; &#x061F; &#x002E; &#x002E;
+<!--l. 170--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0628;&#x0627;&#x0644;&#x0637;&#x0628;&#x0639; &#x0645;&#x0635;&#x0631;&#x0629; &#x002E; &#x002E;
+<!--l. 172--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0648;&#x0646;&#x062D;&#x0646; &#x0642;&#x062F; &#x0642;&#x0628;&#x0644;&#x0646;&#x0627; &#x0627;&#x0644;&#x0634;&#x0631;&#x0637; &#x002E; &#x002E; &#x0644;&#x0643;&#x0646; &#x002E; &#x002E;
+<!--l. 174--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0644;&#x0643;&#x0646; &#x061F; &#x002E; &#x002E;
+<!--l. 176--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0644;&#x0627; &#x002E;&#x002E; &#x0644;&#x0627; &#x0634;&#x064A;&#x0621; &#x064A;&#x0630;&#x0643;&#x0631; &#x002E; &#x002E; &#x002E; &#x0625;&#x0646;&#x0645;&#x0627; &#x0645;&#x062C;&#x0631;&#x062F; &#x0625;&#x062C;&#x0631;&#x0627;&#x0621; &#x0628;&#x0633;&#x064A;&#x0637; &#x0627;&#x0642;&#x062A;&#x0631;&#x062D;&#x0647; &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x002E; &#x002E;
+&#x062A;&#x0643;&#x0644;&#x0645; &#x064A;&#x0627; &#x0648;&#x0632;&#x064A;&#x0631;&#x064A; &#x0021; &#x002E; &#x002E;
+<!--l. 178--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0028; &#x064A;&#x062A;&#x0646;&#x062D;&#x0646;&#x062D; &#x0029; &#x0627;&#x0644;&#x0641;&#x0643;&#x0631;&#x0629; &#x002E; &#x002E; &#x0627;&#x0644;&#x0645;&#x0648;&#x0636;&#x0648;&#x0639; &#x002E; &#x002E; &#x0647;&#x0648; &#x0645;&#x062C;&#x0631;&#x062F; &#x002E; &#x002E; &#x0625;&#x062C;&#x0631;&#x0627;&#x0621; &#x0628;&#x0633;&#x064A;&#x0637; &#x002E; &#x002E;
+&#x0628;&#x0633;&#x064A;&#x0637; &#x002E; &#x002E;
+<!--l. 180--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0628;&#x0633;&#x064A;&#x0637; &#x062C;&#x062F;&#x0627;&#x061F; &#x002E; &#x002E;
+<!--l. 182--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x062C;&#x062F;&#x0627; &#x002E; &#x002E; &#x0645;&#x062C;&#x0631;&#x062F; &#x0634;&#x0643;&#x0644;&#x064A;&#x0627;&#x062A; &#x002E; &#x002E;
+<!--l. 184--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0627;&#x0644;&#x0645;&#x0647;&#x0645; &#x062A;&#x0646;&#x0641;&#x064A;&#x0630; &#x0627;&#x0644;&#x0634;&#x0631;&#x0637; &#x002E; &#x002E; &#x002E; &#x0648;&#x0628;&#x0643;&#x0644; &#x062F;&#x0642;&#x0629; &#x002E; &#x002E;
+<!--l. 186--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0633;&#x064A;&#x0646;&#x0641;&#x0630; &#x002E; &#x002E; &#x002E; &#x0633;&#x064A;&#x0646;&#x0641;&#x0630; &#x002E; &#x002E; &#x002E; &#x0648;&#x0628;&#x0643;&#x0644; &#x062F;&#x0642;&#x0629; &#x002E; &#x002E; &#x0641;&#x0642;&#x0637; &#x002E; &#x002E; &#x0645;&#x0633;&#x0623;&#x0644;&#x0629; &#x062F;&#x0639;&#x0648;&#x0629; &#x062C;&#x0645;&#x064A;&#x0639;
+&#x0627;&#x0644;&#x0623;&#x0647;&#x0627;&#x0644;&#x0649; &#x002E; &#x002E;
+<!--l. 188--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0647;&#x0630;&#x0627; &#x0644;&#x0627;&#x0628;&#x062F; &#x0645;&#x0646;&#x0647; &#x002E; &#x002E;
+<!--l. 190--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0637;&#x0628;&#x0639;&#x0627; &#x002E; &#x002E; &#x0637;&#x0628;&#x0639;&#x0627; &#x002E; &#x002E; &#x0647;&#x0630;&#x0627; &#x0644;&#x0627;&#x0628;&#x062F; &#x0645;&#x0646;&#x0647; &#x002E; &#x002E; &#x0641;&#x0642;&#x0637; &#x002E; &#x002E; &#x0645;&#x0646;&#x0639;&#x0627; &#x0645;&#x0646; &#x0645;&#x062C;&#x064A;&#x0621; &#x0643;&#x0644; &#x0645;&#x0646; &#x0647;&#x0628;
+&#x0648;&#x062F;&#x0628; &#x002E; &#x002E;
+<!--l. 192--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0645;&#x0627; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0630;&#x064A; &#x0646;&#x0642;&#x0648;&#x0644; &#x0623;&#x064A;&#x0647;&#x0627; &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x002E; &#x002E; &#x0625;&#x0646;&#x064A; &#x0623;&#x0631;&#x064A;&#x062F; &#x0628;&#x0627;&#x0644;&#x0641;&#x0639;&#x0644; &#x0645;&#x062C;&#x064A;&#x0621; &#x0643;&#x0644; &#x0645;&#x0646; &#x0647;&#x0628;
+&#x0648;&#x062F;&#x0628; &#x002E; &#x002E;
+<!--l. 194--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0645;&#x0641;&#x0647;&#x0648;&#x0645; &#x002E; &#x002E; &#x0645;&#x0641;&#x0647;&#x0648;&#x0645; &#x002E; &#x002E; &#x0641;&#x0642;&#x0637; &#x062A;&#x062C;&#x0646;&#x0628;&#x0646;&#x0627; &#x0644;&#x0644;&#x0632;&#x062D;&#x0627;&#x0645; &#x062A;&#x062D;&#x062A; &#x0627;&#x0644;&#x0634;&#x0628;&#x0627;&#x0643; &#x002E;
+&#x002E;
+<!--l. 196--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0645;&#x0627; &#x0627;&#x0644;&#x0630;&#x064A; &#x064A;&#x0636;&#x0627;&#x064A;&#x0642;&#x0643; &#x0623;&#x0646;&#x062A; &#x0645;&#x0646; &#x0627;&#x0644;&#x0632;&#x062D;&#x0627;&#x0645; &#x061F; &#x002E; &#x002E;
+<!--l. 198--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0644;&#x0627; &#x002E; &#x002E; &#x0644;&#x0627; &#x0634;&#x064A;&#x0621; &#x064A;&#x0636;&#x0627;&#x064A;&#x0642;&#x0646;&#x064A; &#x0623;&#x0646;&#x0627; &#x0628;&#x0627;&#x0644;&#x0630;&#x0627;&#x062A; &#x002E; &#x002E; &#x0641;&#x0642;&#x0637; &#x002E; &#x002E;
+<!--l. 200--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0641;&#x0642;&#x0637; &#x0645;&#x0627;&#x0630;&#x0627; &#x061F; &#x0021; &#x002E; &#x002E; &#x0645;&#x0627; &#x0627;&#x0644;&#x0630;&#x064A; &#x062A;&#x0631;&#x064A;&#x062F; &#x0623;&#x0646; &#x062A;&#x0635;&#x0644; &#x0625;&#x0644;&#x064A;&#x0647; &#x0628;&#x0627;&#x0644;&#x0636;&#x0628;&#x0637; &#x061F; &#x002E;
+&#x002E;
+<!--l. 202--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0644;&#x0627; &#x002E; &#x002E; &#x0644;&#x0627; &#x0627;&#x0644;&#x0625;&#x062E;&#x0644;&#x0627;&#x0644; &#x0628;&#x0627;&#x0644;&#x0634;&#x0631;&#x0637; &#x002E; &#x002E; &#x0641;&#x0642;&#x0637; &#x002E; &#x002E;
+<!--l. 204--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0645;&#x0627; &#x062F;&#x0627;&#x0645; &#x0647;&#x0630;&#x0627; &#x0647;&#x0648; &#x0627;&#x0644;&#x0642;&#x0635;&#x062F; &#x0641;&#x0644;&#x0627; &#x062F;&#x0627;&#x0639;&#x064A; &#x0625;&#x0644;&#x0649; &#x0627;&#x0644;&#x0643;&#x0644;&#x0627;&#x0645; &#x0625;&#x0630;&#x0646; &#x002E; &#x002E;
+<!--l. 206--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0637;&#x0628;&#x0639;&#x0627; &#x0644;&#x0627; &#x062F;&#x0627;&#x0639;&#x064A; &#x0645;&#x0637;&#x0644;&#x0642;&#x0627; &#x002E; &#x002E; &#x0641;&#x0642;&#x0637; &#x002E; &#x002E;
+
+<!--l. 208--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0643;&#x0641;&#x0627;&#x064A;&#x0629; &#x0643;&#x0644;&#x0645;&#x0629; &#x0641;&#x0642;&#x0637; &#x002E; &#x002E; &#x0641;&#x064A; &#x0627;&#x0644;&#x0645;&#x0648;&#x0636;&#x0648;&#x0639;&#x060C; &#x0623;&#x0631;&#x062C;&#x0648;&#x0643; &#x0021; &#x002E; &#x002E; &#x0625;&#x0630;&#x0627; &#x0643;&#x0627;&#x0646; &#x0639;&#x0646;&#x062F;&#x0643; &#x0643;&#x0644;&#x0627;&#x0645; &#x002E;
+&#x002E;
+<!--l. 210--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0644;&#x0647;&#x0627; &#x062D;&#x0642; &#x002E; &#x002E;
+<!--l. 212--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x0645;&#x0648;&#x0636;&#x0648;&#x0639; &#x0628;&#x0627;&#x062E;&#x062A;&#x0635;&#x0627;&#x0631; &#x060C; &#x0623;&#x064A;&#x062A;&#x0647;&#x0627; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x060C; &#x0647;&#x0648; &#x003A; &#x0625;&#x0646;&#x0647; &#x002E; &#x002E; &#x0644;&#x0627;&#x0628;&#x062F; &#x0645;&#x0646; &#x0639;&#x0645;&#x0644;&#x064A;&#x0629;
+&#x062A;&#x0646;&#x0638;&#x064A;&#x0645; &#x002E; &#x002E;
+<!--l. 214--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x062A;&#x0646;&#x0638;&#x064A;&#x0645; &#x061F; &#x002E; &#x002E; &#x0644;&#x0645;&#x0627;&#x0630;&#x0627; &#x002E; &#x002E;
+<!--l. 216--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x062A;&#x0646;&#x0638;&#x064A;&#x0645; &#x0644;&#x0644;&#x0627;&#x062E;&#x062A;&#x0628;&#x0627;&#x0631; &#x002E; &#x002E; &#x0645;&#x062C;&#x0631;&#x062F; &#x062A;&#x0646;&#x0638;&#x064A;&#x0645; &#x002E; &#x002E;
+<!--l. 218--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0643;&#x064A;&#x0641; &#x064A;&#x0643;&#x0648;&#x0646; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x062A;&#x0646;&#x0638;&#x064A;&#x0645; &#x061F; &#x002E; &#x002E;
+<!--l. 220--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x0623;&#x0645;&#x0631; &#x0628;&#x0633;&#x064A;&#x0637; &#x062C;&#x062F;&#x0627; &#x003A; &#x0646;&#x062D;&#x062F;&#x062F; &#x0627;&#x0644;&#x0645;&#x062A;&#x0642;&#x062F;&#x0645;&#x064A;&#x0646; &#x0628;&#x0639;&#x062F;&#x062F; &#x0645;&#x0639;&#x064A;&#x0646; &#x0648;&#x0635;&#x0641;&#x0627;&#x062A; &#x0645;&#x0639;&#x064A;&#x0646;&#x0629; &#x002E;
+&#x002E;
+<!--l. 222--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0645;&#x0646; &#x0627;&#x0644;&#x0630;&#x064A; &#x064A;&#x062D;&#x062F;&#x062F; &#x0630;&#x0644;&#x0643; &#x061F; &#x002E; &#x002E; &#x0623;&#x0646;&#x062A; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 224--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0625;&#x0630;&#x0627; &#x0633;&#x0645;&#x062D;&#x062A; &#x0648;&#x0641;&#x0648;&#x0636;&#x062A;&#x0646;&#x064A; &#x002E; &#x002E; &#x002E;
+<!--l. 226--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0641;&#x0648;&#x0636;&#x0643;&#x061F; &#x002E; &#x002E; &#x0625;&#x0630;&#x0646; &#x0623;&#x0646;&#x062A; &#x0627;&#x0644;&#x0630;&#x064A; &#x0633;&#x064A;&#x062E;&#x062A;&#x0627;&#x0631; &#x0644;&#x064A; &#x0627;&#x0644;&#x0632;&#x0648;&#x062C;&#x0021; &#x002E; &#x002E;
+<!--l. 228--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0623;&#x0646;&#x062A; &#x0635;&#x0627;&#x062D;&#x0628;&#x0629; &#x0627;&#x0644;&#x0627;&#x062E;&#x062A;&#x064A;&#x0627;&#x0631; &#x0641;&#x064A; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x064A;&#x0629; &#x002E; &#x002E; &#x002E;
+<!--l. 230--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0628;&#x0639;&#x062F; &#x0623;&#x0646; &#x062A;&#x0643;&#x0648;&#x0646; &#x0623;&#x0646;&#x062A; &#x0642;&#x062F; &#x062D;&#x062F;&#x062F;&#x062A; &#x0644;&#x064A; &#x0635;&#x0641;&#x0627;&#x062A; &#x0632;&#x0648;&#x062C;&#x064A;&#x0021; &#x002E; &#x002E;
+<!--l. 232--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0644;&#x0627; &#x064A;&#x0627; &#x0623;&#x0645;&#x064A;&#x0631;&#x062A;&#x064A; &#x002E; &#x002E; &#x002E; &#x0627;&#x0644;&#x0635;&#x0641;&#x0627;&#x062A; &#x062A;&#x062D;&#x062F;&#x062F;&#x064A;&#x0646;&#x0647;&#x0627; &#x062D;&#x0633;&#x0628; &#x0631;&#x063A;&#x0628;&#x062A;&#x0643; &#x002E; &#x002E; &#x0648;&#x0645;&#x0627; &#x0639;&#x0644;&#x064A;&#x0646;&#x0627;
+&#x0646;&#x062D;&#x0646; &#x0625;&#x0644;&#x0627; &#x0627;&#x0644;&#x062A;&#x0646;&#x0641;&#x064A;&#x0630; &#x002E; &#x002E;
+<!--l. 234--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633;&#x003A; &#x0648;&#x0645;&#x0646; &#x0642;&#x0627;&#x0644; &#x0625;&#x0646;&#x064A; &#x0623;&#x0633;&#x062A;&#x0637;&#x064A;&#x0639; &#x062A;&#x062D;&#x062F;&#x064A;&#x062F; &#x0647;&#x0630;&#x0647; &#x0627;&#x0644;&#x0635;&#x0641;&#x0627;&#x062A; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 236--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0644;&#x0627; &#x062A;&#x0633;&#x062A;&#x0637;&#x064A;&#x0639;&#x064A;&#x0646; &#x062A;&#x062D;&#x062F;&#x064A;&#x062F;&#x0647;&#x0627; &#x061F; &#x002E; &#x002E;
+<!--l. 238--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0644;&#x0627; &#x0623;&#x0633;&#x062A;&#x0637;&#x064A;&#x0639; &#x062A;&#x062D;&#x062F;&#x064A;&#x062F;&#x0647;&#x0627; &#x0645;&#x0642;&#x062F;&#x0645;&#x0627; &#x002E; &#x002E; &#x002E; &#x0644;&#x0623;&#x0646;&#x064A; &#x0644;&#x0627; &#x0623;&#x0639;&#x0631;&#x0641;&#x0647;&#x0627; &#x002E; &#x002E; &#x002E;
+<!--l. 240--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0644;&#x0627; &#x062A;&#x0639;&#x0631;&#x0641;&#x064A;&#x0646; &#x0627;&#x0644;&#x0635;&#x0641;&#x0627;&#x062A; &#x0627;&#x0644;&#x062A;&#x064A; &#x062A;&#x0631;&#x064A;&#x062F;&#x064A;&#x0646;&#x0647;&#x0627; &#x0641;&#x064A; &#x0632;&#x0648;&#x062C;&#x0643; &#x061F; &#x002E; &#x002E;
+<!--l. 242--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0644;&#x0627; &#x002E; &#x002E; &#x002E; &#x0643;&#x0644; &#x0645;&#x0627; &#x0623;&#x0639;&#x0631;&#x0641; &#x0647;&#x064A; &#x0627;&#x0644;&#x0635;&#x0641;&#x0627;&#x062A; &#x0627;&#x0644;&#x062A;&#x064A; &#x0644;&#x0627; &#x0623;&#x0631;&#x064A;&#x062F;&#x0647;&#x0627; &#x0641;&#x064A;&#x0647; &#x002E; &#x002E; &#x002E;
+<!--l. 244--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0648;&#x0645;&#x0627; &#x0647;&#x064A; &#x0627;&#x0644;&#x0635;&#x0641;&#x0627;&#x062A; &#x0627;&#x0644;&#x062A;&#x064A; &#x0644;&#x0627; &#x062A;&#x0631;&#x064A;&#x062F;&#x064A;&#x0646;&#x0647;&#x0627; &#x0641;&#x064A;&#x0647; &#x061F; &#x002E; &#x002E;
+<!--l. 246--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0644;&#x0627; &#x0623;&#x0631;&#x064A;&#x062F;&#x0647; &#x0645;&#x0646; &#x0627;&#x0644;&#x0623;&#x0645;&#x0631;&#x0627;&#x0621; &#x0627;&#x0644;&#x0643;&#x0633;&#x0627;&#x0644;&#x0649; &#x0627;&#x0644;&#x0623;&#x063A;&#x0628;&#x064A;&#x0627;&#x0621; &#x002E; &#x002E;
+<!--l. 248--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x062D;&#x0627;&#x0630;&#x0631;&#x064A; &#x064A;&#x0627; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x0623;&#x0646; &#x064A;&#x0643;&#x0648;&#x0646; &#x0641;&#x064A; &#x0643;&#x0644;&#x0627;&#x0645;&#x0643; &#x062A;&#x0644;&#x0645;&#x064A;&#x062D; &#x0645;&#x0642;&#x0635;&#x0648;&#x062F;&#x0021; &#x002E; &#x002E;
+&#x002E;
+<!--l. 250--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0644;&#x0627; &#x0623;&#x0642;&#x0635;&#x062F; &#x0628;&#x0643;&#x0644;&#x0627;&#x0645;&#x064A; &#x0623;&#x064A; &#x062A;&#x0644;&#x0645;&#x064A;&#x062D; &#x002E; &#x002E; &#x0645;&#x0627; &#x062F;&#x0627;&#x0645;&#x062A; &#x0634;&#x0642;&#x064A;&#x0642;&#x062A;&#x0627;&#x064A; &#x0631;&#x0627;&#x0636;&#x064A;&#x062A;&#x064A;&#x0646;
+&#x0633;&#x0639;&#x064A;&#x062F;&#x062A;&#x064A;&#x0646; &#x0641;&#x0644;&#x0627; &#x0634;&#x0623;&#x0646; &#x0644;&#x0623;&#x062D;&#x062F; &#x0628;&#x0647;&#x0645;&#x0627; &#x002E; &#x002E; &#x0625;&#x0646;&#x0645;&#x0627; &#x0623;&#x0646;&#x0627; &#x0623;&#x062A;&#x0643;&#x0644;&#x0645; &#x0639;&#x0646; &#x0646;&#x0641;&#x0633;&#x064A; &#x002E; &#x002E;
+<!--l. 252--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0645;&#x063A;&#x0632;&#x0649; &#x0627;&#x0644;&#x0643;&#x0644;&#x0627;&#x0645; &#x0625;&#x0630;&#x0646; &#x0623;&#x0646;&#x0643; &#x062A;&#x0631;&#x064A;&#x062F;&#x064A;&#x0646; &#x0632;&#x0648;&#x062C;&#x0627; &#x0645;&#x0646; &#x0627;&#x0644;&#x0641;&#x0642;&#x0631;&#x0627;&#x0621; &#x061F; &#x002E; &#x002E;
+<!--l. 254--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0642;&#x0644;&#x062A; &#x0644;&#x0643; &#x0625;&#x0646;&#x064A; &#x0644;&#x0645; &#x0623;&#x062D;&#x062F;&#x062F; &#x0627;&#x0644;&#x0635;&#x0641;&#x0627;&#x062A; &#x0628;&#x0639;&#x062F; &#x002E; &#x002E;
+<!--l. 256--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0648;&#x0643;&#x064A;&#x0641; &#x0633;&#x062A;&#x062E;&#x062A;&#x0627;&#x0631;&#x064A;&#x0646; &#x0625;&#x0630;&#x0646; &#x061F; &#x002E; &#x002E;
+<!--l. 258--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0625;&#x0646;&#x064A; &#x0644;&#x0645; &#x0623;&#x062E;&#x062A;&#x0627;&#x0631; &#x0625;&#x0644;&#x0627; &#x0628;&#x0639;&#x062F; &#x0623;&#x0646; &#x0623;&#x0643;&#x062A;&#x0634;&#x0641; &#x002E; &#x002E;
+<!--l. 260--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x062A;&#x0643;&#x062A;&#x0634;&#x0641;&#x064A;&#x0646; &#x061F; &#x002E; &#x002E;
+<!--l. 262--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0644;&#x0647;&#x0630;&#x0627; &#x0635;&#x0645;&#x0645;&#x062A; &#x0648;&#x0623;&#x0635;&#x0645;&#x0645; &#x0639;&#x0644;&#x0649; &#x0623;&#x0646; &#x064A;&#x0641;&#x062A;&#x062D; &#x0627;&#x0644;&#x0628;&#x0627;&#x0628; &#x0644;&#x062C;&#x0645;&#x064A;&#x0639; &#x0627;&#x0644;&#x0646;&#x0627;&#x0633; &#x0639;&#x0644;&#x0649;
+&#x0627;&#x0644;&#x0633;&#x0648;&#x0627;&#x0621; &#x002E; &#x002E; &#x0633;&#x0623;&#x0642;&#x0627;&#x0628;&#x0644; &#x0643;&#x0644; &#x0645;&#x0646; &#x064A;&#x062A;&#x0642;&#x062F;&#x0645; &#x0644;&#x064A;&#x0637;&#x0644;&#x0628; &#x064A;&#x062F;&#x064A; &#x002E; &#x002E; &#x0648;&#x0623;&#x062D;&#x0627;&#x0648;&#x0644; &#x0623;&#x0646; &#x0623;&#x0643;&#x062A;&#x0634;&#x0641; &#x0645;&#x0639;&#x062F;&#x0646;&#x0647; &#x002E; &#x002E;
+&#x002E;
+<!--l. 264--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0648;&#x062A;&#x0642;&#x0627;&#x0628;&#x0644;&#x064A;&#x0646; &#x0643;&#x0644; &#x0627;&#x0644;&#x0646;&#x0627;&#x0633; &#x061F; &#x002E; &#x002E;
+<!--l. 266--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0646;&#x0639;&#x0645; &#x002E; &#x002E; &#x002E; &#x0648;&#x0647;&#x0646;&#x0627; &#x0641;&#x064A; &#x0647;&#x0630;&#x0647; &#x0627;&#x0644;&#x0642;&#x0627;&#x0639;&#x0629; &#x002E; &#x002E; &#x002E; &#x0628;&#x062D;&#x0636;&#x0648;&#x0631;&#x0643; &#x064A;&#x0627; &#x0623;&#x0628;&#x064A; &#x002E; &#x002E; &#x002E; &#x0648;&#x062D;&#x0636;&#x0648;&#x0631; &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x002E;
+&#x002E;
+<!--l. 268--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x0645;&#x0633;&#x0623;&#x0644;&#x0629; &#x0623;&#x0639;&#x0642;&#x062F; &#x0645;&#x0645;&#x0627; &#x0643;&#x0646;&#x0627; &#x0646;&#x0638;&#x0646; &#x002E; &#x002E;
+<!--l. 270--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x062D;&#x0642;&#x0627; &#x002E; &#x002E; &#x002E; &#x0643;&#x0627;&#x0646; &#x0627;&#x0644;&#x0638;&#x0646; &#x0623;&#x0646;&#x0647;&#x0627; &#x0633;&#x062A;&#x0646;&#x0638;&#x0631; &#x0645;&#x0646; &#x062E;&#x0644;&#x0641; &#x0627;&#x0644;&#x0634;&#x0628;&#x0627;&#x0643;&#x060C; &#x0648;&#x062A;&#x062E;&#x062A;&#x0627;&#x0631; &#x0645;&#x0646;
+&#x064A;&#x0639;&#x062C;&#x0628;&#x0647;&#x0627; &#x0645;&#x0646; &#x0628;&#x064A;&#x0646; &#x0627;&#x0644;&#x0645;&#x0627;&#x0631;&#x064A;&#x0646; &#x002E; &#x002E;
+<!--l. 272--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x062E;&#x062A;&#x0627;&#x0631; &#x0645;&#x0646; &#x062E;&#x0644;&#x0641; &#x0627;&#x0644;&#x0634;&#x0628;&#x0627;&#x0643; &#x061F; &#x002E; &#x002E; &#x0623;&#x062E;&#x062A;&#x0627;&#x0631; &#x0645;&#x0627;&#x0630;&#x0627; &#x061F; &#x002E; &#x002E; &#x0623;&#x062E;&#x062A;&#x0627;&#x0631; &#x0623;&#x062C;&#x0633;&#x0627;&#x0645;&#x0627; &#x061F; &#x002E;
+&#x002E;
+<!--l. 274--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0625;&#x0630;&#x0646; &#x062A;&#x0631;&#x064A;&#x062F;&#x064A;&#x0646; &#x0623;&#x0646; &#x062A;&#x0648;&#x062C;&#x0647;&#x064A; &#x0648;&#x062A;&#x062D;&#x0627;&#x062F;&#x062B;&#x064A; &#x0643;&#x0644; &#x0627;&#x0644;&#x0646;&#x0627;&#x0633; &#x061F; &#x002E; &#x002E;
+<!--l. 276--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0643;&#x0644; &#x0645;&#x0646; &#x064A;&#x062A;&#x0642;&#x062F;&#x0645; &#x0644;&#x0637;&#x0644;&#x0628;&#x064A; &#x002E; &#x002E; &#x002E;
+<!--l. 278--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0643;&#x0644; &#x0627;&#x0644;&#x0646;&#x0627;&#x0633; &#x0633;&#x064A;&#x062A;&#x0642;&#x062F;&#x0645;&#x0648;&#x0646; &#x0644;&#x0637;&#x0644;&#x0628;&#x0643; &#x002E; &#x002E; &#x002E; &#x0645;&#x0627; &#x062F;&#x0627;&#x0645; &#x0627;&#x0644;&#x0628;&#x0627;&#x0628; &#x0645;&#x0641;&#x062A;&#x0648;&#x062D;&#x0627; &#x0639;&#x0644;&#x0649;
+&#x0645;&#x0635;&#x0631;&#x0627;&#x0639;&#x064A;&#x0647; &#x002E; &#x002E; &#x002E;
+<!--l. 280--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x064A;&#x062C;&#x0628; &#x0623;&#x0646; &#x062A;&#x062A;&#x0627;&#x062D; &#x0627;&#x0644;&#x0641;&#x0631;&#x0635;&#x0629; &#x0644;&#x0643;&#x0644; &#x0627;&#x0644;&#x0646;&#x0627;&#x0633; &#x002E; &#x002E; &#x002E;
+
+<!--l. 282--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0648;&#x0644;&#x0643;&#x0646; &#x0647;&#x0630;&#x0627; &#x0639;&#x0645;&#x0644; &#x0645;&#x0631;&#x0647;&#x0642; &#x0644;&#x0643; &#x0623;&#x064A;&#x062A;&#x0647;&#x0627; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x0021; &#x002E; &#x002E; &#x002E; &#x062A;&#x0635;&#x0648;&#x0631;&#x064A; &#x0623;&#x0647;&#x0644; &#x0627;&#x0644;&#x0628;&#x0644;&#x062F;
+&#x0643;&#x0644;&#x0647;&#x0645; &#x002E; &#x002E;
+<!--l. 284--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0627;&#x0644;&#x062C;&#x0627;&#x062F; &#x0645;&#x0646;&#x0647;&#x0645; &#x0648;&#x0627;&#x0644;&#x0647;&#x0627;&#x0632;&#x0644; &#x0021; &#x002E; &#x002E;
+<!--l. 286--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0644;&#x064A; &#x0634;&#x0631;&#x0637; &#x0648;&#x0627;&#x062D;&#x062F; &#x0635;&#x063A;&#x064A;&#x0631; &#x002E; &#x002E; &#x002E;
+<!--l. 288--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0648;&#x0647;&#x0648; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 290--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0643;&#x0644; &#x0645;&#x0646; &#x064A;&#x062A;&#x0642;&#x062F;&#x0645; &#x0648;&#x064A;&#x0641;&#x0634;&#x0644; &#x064A;&#x062C;&#x0644;&#x062F; &#x062B;&#x0644;&#x0627;&#x062B; &#x062C;&#x0644;&#x062F;&#x0627;&#x062A; &#x002E; &#x002E; &#x002E;
+<!--l. 292--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0634;&#x0631;&#x0637; &#x0645;&#x0639;&#x0642;&#x0648;&#x0644; &#x0644;&#x0635;&#x062F; &#x0633;&#x0628;&#x064A;&#x0644; &#x0627;&#x0644;&#x0639;&#x0627;&#x0628;&#x062B;&#x064A;&#x0646; &#x002E; &#x002E; &#x002E;
+<!--l. 294--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0644;&#x0643;&#x064A; &#x0644;&#x0627; &#x064A;&#x062A;&#x0642;&#x062F;&#x0645; &#x0625;&#x0644;&#x0627; &#x0627;&#x0644;&#x0648;&#x0627;&#x062B;&#x0642; &#x0645;&#x0646; &#x0646;&#x0641;&#x0633;&#x0647; &#x002E; &#x002E;
+<!--l. 296--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0647;&#x0630;&#x0627; &#x0646;&#x0648;&#x0639; &#x0645;&#x0646; &#x0627;&#x0644;&#x062A;&#x0623;&#x0645;&#x064A;&#x0646; &#x0636;&#x0631;&#x0648;&#x0631;&#x064A; &#x002E; &#x002E; &#x002E;
+<!--l. 298--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0627;&#x062A;&#x0641;&#x0642;&#x0646;&#x0627; &#x0625;&#x0630;&#x0646; &#x002E; &#x002E; &#x002E;
+<!--l. 300--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0623;&#x0645;&#x0631;&#x0643; &#x0623;&#x064A;&#x062A;&#x0647;&#x0627; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x002E; &#x002E; &#x002E;
+<!--l. 302--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0645;&#x0631;&#x0647;&#x0627; &#x061F; &#x002E; &#x002E; &#x002E; &#x0625;&#x0630;&#x0646; &#x0623;&#x0646;&#x062A; &#x0645;&#x0639;&#x062A;&#x0631;&#x0641; &#x0628;&#x0641;&#x0634;&#x0644;&#x0643; &#x0623;&#x064A;&#x0647;&#x0627; &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x0021; &#x002E;
+&#x002E;
+<!--l. 304--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x0648;&#x0627;&#x0642;&#x0639; &#x0623;&#x0646;&#x064A; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x064A; &#x002E; &#x002E; &#x002E;
+<!--l. 306--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0627;&#x0644;&#x0648;&#x0627;&#x0642;&#x0639; &#x0623;&#x0646;&#x0643; &#x0644;&#x0645; &#x062A;&#x0633;&#x062A;&#x0637;&#x0639; &#x0625;&#x0642;&#x0646;&#x0627;&#x0639;&#x0647;&#x0627; &#x002E; &#x002E; &#x002E; &#x0647;&#x0630;&#x0627; &#x0645;&#x0627; &#x0643;&#x0646;&#x062A; &#x0623;&#x062A;&#x0648;&#x0642;&#x0639;&#x0647; &#x002E; &#x002E; &#x002E; &#x0645;&#x0646; &#x0623;&#x0648;&#x0644;
+&#x0643;&#x0644;&#x0645;&#x0629; &#x0646;&#x0637;&#x0642;&#x062A; &#x0628;&#x0647;&#x0627; &#x002E; &#x002E; &#x002E; &#x0644;&#x0642;&#x062F; &#x0623;&#x0636;&#x0639;&#x0646;&#x0627; &#x0627;&#x0644;&#x0648;&#x0642;&#x062A; &#x0633;&#x062F;&#x0649; &#x002E; &#x002E; &#x002E; &#x0648;&#x0627;&#x0644;&#x0646;&#x062A;&#x064A;&#x062C;&#x0629; &#x0647;&#x064A; &#x0627;&#x0644;&#x0646;&#x062A;&#x064A;&#x062C;&#x0629; &#x0645;&#x0646;&#x0630;
+&#x0634;&#x0647;&#x0648;&#x0631; &#x0637;&#x0648;&#x0627;&#x0644; &#x002E; &#x002E; &#x0627;&#x0633;&#x0645;&#x0639;&#x064A; &#x064A;&#x0627; &#x0628;&#x0646;&#x062A;&#x064A; &#x002E; &#x002E; &#x0633;&#x0623;&#x0646;&#x0632;&#x0644; &#x0639;&#x0644;&#x0649; &#x0625;&#x0631;&#x0627;&#x062F;&#x062A;&#x0643; &#x002E; &#x002E; &#x002E; &#x0648;&#x0623;&#x0645;&#x0631;&#x064A; &#x0625;&#x0644;&#x0649; &#x0627;&#xFDF2; &#x002E; &#x002E; &#x0643;&#x0644; &#x0645;&#x0627;
+&#x0642;&#x0635;&#x062F;&#x062A; &#x0625;&#x0644;&#x064A;&#x0647; &#x0647;&#x0648; &#x062E;&#x064A;&#x0631;&#x0643; &#x002E; &#x002E; &#x060C; &#x0645;&#x0635;&#x0644;&#x062D;&#x062A;&#x0643; &#x0643;&#x0644;&#x0647;&#x0627; &#x0623;&#x0631;&#x064A;&#x062F;&#x0647;&#x0627; &#x0648;&#x0623;&#x0646;&#x0634;&#x062F;&#x0647;&#x0627; &#x002E; &#x002E; &#x002E; &#x0644;&#x0643;&#x0646; &#x002E; &#x002E; &#x0645;&#x0627; &#x062F;&#x0645;&#x062A;
+&#x062A;&#x0635;&#x0631;&#x064A;&#x0646; &#x0639;&#x0644;&#x0649; &#x0631;&#x0623;&#x064A;&#x0643; &#x0641;&#x0623;&#x0646;&#x062A; &#x0648;&#x0634;&#x0623;&#x0646;&#x0643; &#x002E; &#x002E; &#x0648;&#x0627;&#x0639;&#x0644;&#x0645;&#x064A; &#x0623;&#x0646;&#x0643; &#x0645;&#x0646;&#x0630; &#x0627;&#x0644;&#x0622;&#x0646; &#x0627;&#x0644;&#x0645;&#x0633;&#x0626;&#x0648;&#x0644;&#x0629; &#x0648;&#x062D;&#x062F;&#x0643;
+&#x0639;&#x0646; &#x0645;&#x0635;&#x064A;&#x0631;&#x0643; &#x002E; &#x002E;
+<!--l. 308--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0647;&#x0630;&#x0627; &#x0647;&#x0648; &#x0643;&#x0644; &#x0645;&#x0627; &#x0623;&#x0631;&#x064A;&#x062F; &#x064A;&#x0627; &#x0623;&#x0628;&#x064A; &#x002E; &#x002E; &#x0623;&#x0646; &#x0623;&#x0643;&#x0648;&#x0646; &#x0623;&#x0646;&#x0627; &#x0648;&#x062D;&#x062F;&#x064A; &#x0627;&#x0644;&#x0635;&#x0627;&#x0646;&#x0639;&#x0629; &#x0644;&#x0645;&#x0635;&#x064A;&#x0631;&#x064A; &#x002E; &#x002E;
+&#x002E;
+<!--l. 310--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0635;&#x0627;&#x0631;&#x062D;&#x0643; &#x002E; &#x002E; &#x0623;&#x0646;&#x064A; &#x063A;&#x064A;&#x0631; &#x0645;&#x0637;&#x0645;&#x0626;&#x0646; &#x002E; &#x002E;
+<!--l. 312--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0639;&#x0631;&#x0641; &#x0630;&#x0644;&#x0643; &#x002E; &#x002E; &#x002E;
+<!--l. 314--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0643;&#x0646;&#x062A; &#x062A;&#x0631;&#x064A;&#x062F; &#x0644;&#x0643; &#x062D;&#x064A;&#x0627;&#x0629; &#x0631;&#x063A;&#x062F;&#x0629; &#x0645;&#x0636;&#x0645;&#x0648;&#x0646;&#x0629; &#x0627;&#x0644;&#x0631;&#x062E;&#x0627;&#x0621; &#x0648;&#x0627;&#x0644;&#x0646;&#x0639;&#x0645;&#x0629; &#x002E; &#x002E;
+&#x002E;
+<!--l. 316--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0646;&#x0639;&#x0645; &#x002E; &#x002E; &#x002E; &#x0643;&#x0630;&#x0644;&#x0643; &#x0627;&#x0644;&#x062D;&#x064A;&#x0627;&#x0629; &#x0627;&#x0644;&#x062A;&#x064A; &#x0635;&#x0646;&#x0639;&#x062A;&#x0647;&#x0627; &#x0644;&#x0634;&#x0642;&#x064A;&#x0642;&#x062A;&#x064A; &#x002E; &#x002E; &#x002E;
+<!--l. 318--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0633;&#x0646;&#x0631;&#x0649; &#x0645;&#x0627;&#x0630;&#x0627; &#x0633;&#x062A;&#x0635;&#x0646;&#x0639;&#x064A;&#x0646; &#x0623;&#x0646;&#x062A; &#x0644;&#x0646;&#x0641;&#x0633;&#x0643; &#x0021; &#x002E; &#x002E;
+<!--l. 320--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x064A;&#x0643;&#x0641;&#x064A; &#x0623;&#x0646; &#x0623;&#x0635;&#x0646;&#x0639;&#x0647;&#x0627; &#x0628;&#x0646;&#x0641;&#x0633;&#x064A; &#x002E; &#x002E; &#x002E;
+<!--l. 322--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0646;&#x0641;&#x0630; &#x0644;&#x0647;&#x0627; &#x0637;&#x0644;&#x0628;&#x0647;&#x0627; &#x0623;&#x064A;&#x0647;&#x0627; &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631;&#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 324--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0641;&#x0648;&#x0631;&#x0627; &#x002E; &#x002E; &#x002E; &#x0633;&#x0623;&#x0637;&#x0644;&#x0642; &#x0627;&#x0644;&#x0645;&#x0646;&#x0627;&#x062F;&#x064A;&#x0646; &#x0641;&#x064A; &#x0627;&#x0644;&#x0628;&#x0644;&#x062F; &#x064A;&#x0646;&#x0627;&#x062F;&#x0648;&#x0646; &#x003A; &#x0643;&#x0644; &#x0645;&#x0646;
+&#x064A;&#x062A;&#x0642;&#x062F;&#x0645; &#x0644;&#x0637;&#x0644;&#x0628; &#x064A;&#x062F;&#x064A; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x0648;&#x064A;&#x0641;&#x0634;&#x0644; &#x064A;&#x062C;&#x0644;&#x062F; &#x062B;&#x0644;&#x0627;&#x062B; &#x062C;&#x0644;&#x062F;&#x0627;&#x062A; &#x0021; &#x002E; &#x002E;
+&#x002E;
+<!--l. 326--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0628;&#x0644; &#x064A;&#x062C;&#x0628; &#x0623;&#x0646; &#x064A;&#x0646;&#x0627;&#x062F;&#x0648;&#x0627; &#x0642;&#x0628;&#x0644; &#x0630;&#x0644;&#x0643; &#x003A; &#x0625;&#x0646; &#x0623;&#x0647;&#x0644; &#x0627;&#x0644;&#x0628;&#x0644;&#x062F; &#x062C;&#x0645;&#x064A;&#x0639;&#x0627; &#x0628;&#x063A;&#x064A;&#x0631; &#x062A;&#x0645;&#x064A;&#x064A;&#x0632;
+&#x0644;&#x0647;&#x0645; &#x0627;&#x0644;&#x062D;&#x0642; &#x0623;&#x0646; &#x064A;&#x062A;&#x0642;&#x062F;&#x0645;&#x0648;&#x0627; &#x0648;&#x064A;&#x0637;&#x0628;&#x0644;&#x0648;&#x0627; &#x064A;&#x062F; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x0021; &#x002E; &#x002E; &#x002E;
+<div class="center"
+>
+<!--l. 328--><p class="noindent" dir="rtl" >
+<!--l. 329--><p class="noindent" dir="rtl" >&#x0028; &#x0633;&#x062A;&#x0627;&#x0631; &#x0029;</div>
+
+ <h2 class="chapterHead" dir="rtl" ><span class="titlemark">&#x0627;&#xFEDF;&#xFE92;&#xFE8E;&#x0628;&#x00A0;&#x0664;</span><br /><a
+ id="x1-50004"></a>&#x0627;&#x0644;&#x0645;&#x0646;&#x0638;&#x0631; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A;</h2>
+<!--l. 347--><p class="noindent" dir="rtl" >&#x0639;&#x064A;&#x0646; &#x0627;&#x0644;&#x0642;&#x0627;&#x0639;&#x0629; &#x0627;&#x0644;&#x0643;&#x0628;&#x0631;&#x0649; &#x0641;&#x064A; &#x0642;&#x0635;&#x0631; &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x0646;&#x0639;&#x0645;&#x0627;&#x0646; &#x002E; &#x002E; &#x002E; &#x0648;&#x0644;&#x0643;&#x0646; &#x0628;&#x0647;&#x0627; &#x062C;&#x0646;&#x0648;&#x062F;&#x0627;
+&#x0645;&#x0635;&#x0637;&#x0641;&#x064A;&#x0646; &#x0648;&#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x062C;&#x0627;&#x0644;&#x0633; &#x0641;&#x064A; &#x0645;&#x0642;&#x0639;&#x062F;&#x0647; &#x060C; &#x0648;&#x0639;&#x0644;&#x0649; &#x0645;&#x0642;&#x0631;&#x0628;&#x0629; &#x0645;&#x0646;&#x0647; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x002E;
+&#x0628;&#x064A;&#x0646;&#x0645;&#x0627; &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x064A;&#x0646;&#x0638;&#x0631; &#x0645;&#x0646; &#x0634;&#x0628;&#x0627;&#x0643; &#x002E; &#x002E; &#x002E; &#x002E;
+<!--l. 349--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0644;&#x0627; &#x0623;&#x062D;&#x062F; &#x002E; &#x002E; &#x002E;
+<!--l. 351--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0641;&#x064A; &#x0627;&#x0644;&#x0623;&#x064A;&#x0627;&#x0645; &#x0627;&#x0644;&#x0623;&#x062E;&#x064A;&#x0631;&#x0629; &#x0628;&#x062F;&#x0623; &#x0627;&#x0644;&#x0639;&#x062F;&#x062F; &#x0641;&#x0639;&#x0644;&#x0627; &#x064A;&#x062A;&#x0646;&#x0627;&#x0642;&#x0635; &#x002E; &#x002E; &#x002E;
+<!--l. 353--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x064A;&#x0648;&#x0645; &#x0644;&#x0627; &#x0623;&#x062D;&#x062F; &#x0639;&#x0644;&#x0649; &#x0627;&#x0644;&#x0625;&#x0637;&#x0644;&#x0627;&#x0642; &#x002E; &#x002E; &#x002E; &#x0645;&#x0627; &#x0645;&#x0646; &#x0638;&#x0644; &#x0644;&#x0623;&#x062D;&#x062F; &#x0627;&#x0644;&#x0645;&#x0627;&#x0631;&#x0629; &#x064A;&#x0642;&#x062A;&#x0631;&#x0628; &#x0645;&#x0646;
+&#x0627;&#x0644;&#x0642;&#x0635;&#x0631; &#x002E; &#x002E; &#x002E;
+<!--l. 355--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x064A;&#x0646; &#x0630;&#x0644;&#x0643; &#x0645;&#x0645;&#x0627; &#x062D;&#x062F;&#x062B; &#x0641;&#x064A; &#x0627;&#x0644;&#x0623;&#x0633;&#x0628;&#x0648;&#x0639; &#x0627;&#x0644;&#x0623;&#x0648;&#x0644; &#x002E; &#x002E; &#x0639;&#x0646;&#x062F;&#x0645;&#x0627; &#x0627;&#x062D;&#x062A;&#x0634;&#x062F; &#x0623;&#x0647;&#x0644; &#x0627;&#x0644;&#x0628;&#x0644;&#x062F; &#x002E;
+&#x002E; &#x002E; &#x0643;&#x0644; &#x064A;&#x0633;&#x0627;&#x0628;&#x0642; &#x0627;&#x0644;&#x0622;&#x062E;&#x0631; &#x002E; &#x002E; &#x002E;
+<!--l. 357--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x0622;&#x0646; &#x0627;&#x0644;&#x0643;&#x0644; &#x064A;&#x0647;&#x0631;&#x0628; &#x002E; &#x002E; &#x002E;
+<!--l. 359--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0646;&#x0639;&#x0645; &#x002E; &#x002E; &#x062E;&#x0648;&#x0641;&#x0627; &#x0645;&#x0646; &#x0627;&#x0644;&#x062C;&#x0644;&#x062F; &#x002E; &#x002E; &#x002E;
+<!--l. 361--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0028; &#x0639;&#x0627;&#x0626;&#x062F; &#x0645;&#x0646; &#x0627;&#x0644;&#x0634;&#x0628;&#x0627;&#x0643; &#x0029; &#x0644;&#x0627; &#x0641;&#x0627;&#x0626;&#x062F;&#x0629; &#x002E; &#x002E; &#x002E; &#x0644;&#x0646; &#x064A;&#x062A;&#x0642;&#x062F;&#x0645; &#x0623;&#x062D;&#x062F; &#x0627;&#x0644;&#x064A;&#x0648;&#x0645; &#x002E; &#x002E;
+&#x002E;
+<!--l. 363--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0644;&#x0627; &#x0627;&#x0644;&#x064A;&#x0648;&#x0645; &#x0648;&#x0644;&#x0627; &#x063A;&#x062F;&#x0627; &#x002E; &#x002E; &#x002E; &#x0645;&#x0627; &#x062F;&#x0627;&#x0645; &#x0623;&#x0643;&#x062B;&#x0631; &#x0631;&#x062C;&#x0627;&#x0644; &#x0627;&#x0644;&#x0628;&#x0644;&#x062F; &#x0642;&#x062F; &#x062C;&#x0644;&#x062F;&#x0648;&#x0627; &#x002E;
+&#x002E;
+<!--l. 365--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0633;&#x0642;&#x0637;&#x0648;&#x0627; &#x0641;&#x064A; &#x0627;&#x0644;&#x0627;&#x0645;&#x062A;&#x062D;&#x0627;&#x0646; &#x0021; &#x002E; &#x002E;
+<!--l. 367--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0643;&#x0627;&#x0646; &#x0645;&#x0646; &#x0628;&#x064A;&#x0646;&#x0647;&#x0645; &#x0645;&#x0639; &#x0630;&#x0644;&#x0643; &#x0631;&#x062C;&#x0627;&#x0644; &#x0644;&#x0627; &#x0628;&#x0623;&#x0633; &#x0628;&#x0647;&#x0645; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 369--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0641;&#x064A; &#x0646;&#x0638;&#x0631;&#x0629; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x0627;&#x0633;&#x062A;&#x062D;&#x0642;&#x0648;&#x0627; &#x0635;&#x0641;&#x0631;&#x0627; &#x002E; &#x002E;
+<!--l. 371--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0625;&#x0646;&#x0643; &#x062A;&#x062A;&#x0634;&#x062F;&#x062F;&#x064A;&#x0646; &#x064A;&#x0627; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 373--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0644;&#x064A;&#x0633;&#x062A; &#x0645;&#x0633;&#x0623;&#x0644;&#x0629; &#x0645;&#x0635;&#x064A;&#x0631; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 375--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0646;&#x0639;&#x0645; &#x002E; &#x002E; &#x002E; &#x0648;&#x0644;&#x0643;&#x0646; &#x002E; &#x002E; &#x002E; &#x062E;&#x064A;&#x0644; &#x0625;&#x0644;&#x0649; &#x0623;&#x062D;&#x064A;&#x0627;&#x0646;&#x0627; &#x0623;&#x0646;&#x0643; &#x0644;&#x0633;&#x062A; &#x062C;&#x0627;&#x062F;&#x0629; &#x0641;&#x064A;
+&#x0627;&#x0644;&#x0627;&#x062E;&#x062A;&#x0628;&#x0627;&#x0631;&#x002E;&#x002E;
+<!--l. 377--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x064A;&#x0628;&#x062F;&#x0648; &#x0623;&#x0646; &#x0647;&#x0630;&#x0627; &#x0623;&#x064A;&#x0636;&#x0627; &#x0634;&#x0639;&#x0648;&#x0631; &#x0627;&#x0644;&#x0646;&#x0627;&#x0633; &#x002E; &#x002E; &#x0641;&#x0642;&#x062F; &#x0628;&#x0644;&#x063A;&#x0646;&#x064A; &#x0623;&#x0646;&#x0647;&#x0645; &#x0623;&#x062E;&#x0630;&#x0648;&#x0627;
+&#x064A;&#x062A;&#x0647;&#x0627;&#x0645;&#x0633;&#x0648;&#x0646; &#x0628;&#x0623;&#x0646; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x0644;&#x0627; &#x062A;&#x0646;&#x0648;&#x064A; &#x062D;&#x0642;&#x0627; &#x0627;&#x0644;&#x0632;&#x0648;&#x0627;&#x062C; &#x002E; &#x002E; &#x0648;&#x0625;&#x0646;&#x0645;&#x0627; &#x0647;&#x064A; &#x062A;&#x0631;&#x064A;&#x062F;
+&#x0627;&#x0644;&#x0639;&#x0628;&#x062B; &#x0628;&#x0627;&#x0644;&#x0631;&#x062C;&#x0627;&#x0644; &#x0648;&#x062C;&#x0644;&#x062F;&#x0647;&#x0645; &#x002E; &#x002E;
+<!--l. 379--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0625;&#x0630;&#x0627; &#x0643;&#x0627;&#x0646; &#x0647;&#x0630;&#x0627; &#x062D;&#x0642;&#x0627; &#x0647;&#x0648; &#x063A;&#x0631;&#x0636;&#x0643; &#x0641;&#x064A;&#x062D;&#x0633;&#x0646; &#x0623;&#x0646; &#x062A;&#x0635;&#x0627;&#x0631;&#x062D;&#x064A;&#x0646;&#x0627; &#x002E; &#x002E;
+&#x002E;
+<!--l. 381--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0647;&#x0630;&#x0627; &#x0638;&#x0646;&#x0643; &#x0628;&#x064A; &#x064A;&#x0627; &#x0623;&#x0628;&#x064A; &#x061F; &#x002E; &#x002E; &#x002E; &#x0623;&#x062A;&#x0639;&#x0631;&#x0641; &#x0639;&#x0646;&#x064A; &#x0634;&#x064A;&#x0626;&#x0627; &#x063A;&#x064A;&#x0631; &#x0627;&#x0644;&#x0635;&#x0631;&#x0627;&#x062D;&#x0629; &#x061F; &#x002E;
+&#x002E;
+<!--l. 383--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0641;&#x0639;&#x0644;&#x0627; &#x002E; &#x002E; &#x0623;&#x0646;&#x062A; &#x0635;&#x0631;&#x064A;&#x062D;&#x0629; &#x002E; &#x002E;
+<!--l. 385--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x062B;&#x0642; &#x0623;&#x0646;&#x064A; &#x0644;&#x0627; &#x0623;&#x0639;&#x0628;&#x062B; &#x0648;&#x0644;&#x0627; &#x0623;&#x062A;&#x0639;&#x0646;&#x062A; &#x0648;&#x0644;&#x0627; &#x0623;&#x062E;&#x0627;&#x062A;&#x0644; &#x0648;&#x0644;&#x0627; &#x0623;&#x0645;&#x0627;&#x0637;&#x0644; &#x002E; &#x002E; &#x0625;&#x0646;&#x0645;&#x0627; &#x0623;&#x0646;&#x0627; &#x0623;&#x0628;&#x062D;&#x062B;
+&#x0648;&#x0623;&#x0643;&#x062A;&#x0634;&#x0641; &#x002E; &#x002E;
+<!--l. 387--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0648;&#x0644;&#x0643;&#x0646;&#x0643; &#x0644;&#x0645; &#x062A;&#x0643;&#x062A;&#x0634;&#x0641;&#x064A; &#x0634;&#x064A;&#x0626;&#x0627; &#x0628;&#x0639;&#x062F; &#x002E; &#x002E;
+<!--l. 389--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0647;&#x0630;&#x0627; &#x0644;&#x064A;&#x0633; &#x0641;&#x064A; &#x064A;&#x062F;&#x064A; &#x002E; &#x002E; &#x002E;
+<!--l. 391--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x064A;&#x0638;&#x0647;&#x0631; &#x0623;&#x0646; &#x0627;&#x0644;&#x0623;&#x0645;&#x0631; &#x0633;&#x064A;&#x0637;&#x0648;&#x0644; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 393--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0633;&#x064A;&#x062D;&#x062A;&#x0627;&#x062C; &#x0625;&#x0644;&#x0649; &#x0635;&#x0628;&#x0631; &#x002E; &#x002E;
+<!--l. 395--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0635;&#x0628;&#x0631;&#x064A; &#x0646;&#x0641;&#x0630; &#x002E; &#x002E;
+<!--l. 397--><p class="indent" dir="rtl" > &#x0028; &#x0623;&#x062D;&#x062F; &#x0627;&#x0644;&#x062C;&#x0646;&#x0648;&#x062F; &#x064A;&#x062F;&#x062E;&#x0644; &#x0648;&#x064A;&#x0633;&#x0631; &#x0643;&#x0644;&#x0627;&#x0645;&#x0627; &#x0641;&#x064A; &#x0623;&#x0630;&#x0646; &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x0029;
+<!--l. 399--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0631;&#x062C;&#x0644; &#x0628;&#x0627;&#x0644;&#x0628;&#x0627;&#x0628; &#x064A;&#x0631;&#x064A;&#x062F; &#x0627;&#x0644;&#x062A;&#x0642;&#x062F;&#x0645; &#x002E; &#x002E;
+<!--l. 401--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x064A;&#x062A;&#x0641;&#x0636;&#x0644; &#x0637;&#x0628;&#x0639;&#x0627; &#x002E; &#x002E;
+<!--l. 403--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0028; &#x0644;&#x0644;&#x062C;&#x0646;&#x062F;&#x064A; &#x0029; &#x0623;&#x062F;&#x062E;&#x0644;&#x0647; &#x0021; &#x002E; &#x002E;
+<!--l. 405--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0028; &#x0644;&#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x0029; &#x0644;&#x0639;&#x0644; &#x0648;&#x0639;&#x0633;&#x0649; &#x0021; &#x002E; &#x002E;
+<!--l. 407--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0633;&#x0646;&#x0631;&#x0649; &#x0021; &#x002E; &#x002E;
+<!--l. 409--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x0028; &#x064A;&#x062F;&#x062E;&#x0644; &#x0029; &#x0627;&#x0644;&#x0633;&#x0644;&#x0627;&#x0645; &#x0639;&#x0644;&#x064A;&#x0643;&#x0645; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x0646;&#x0627; &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x060C; &#x0648;&#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x062A;&#x064A; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x002E;
+&#x002E;
+<!--l. 411--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0648;&#x0639;&#x0644;&#x064A;&#x0643; &#x0627;&#x0644;&#x0633;&#x0644;&#x0627;&#x0645; &#x002E; &#x002E; &#x002E;
+
+<!--l. 413--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x062C;&#x0626;&#x062A; &#x0645;&#x0646; &#x0628;&#x0644;&#x0627;&#x062F; &#x0628;&#x0639;&#x064A;&#x062F;&#x0629; &#x0633;&#x0627;&#x0639;&#x064A;&#x0627; &#x0625;&#x0644;&#x0649; &#x0627;&#x0644;&#x0645;&#x0637;&#x0644;&#x0628; &#x0627;&#x0644;&#x0623;&#x0633;&#x0645;&#x0649; &#x060C; &#x0648;&#x0647;&#x0648; &#x064A;&#x062F; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629;
+&#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x002E; &#x002E;
+<!--l. 415--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0648;&#x0647;&#x0644; &#x062A;&#x0639;&#x0631;&#x0641; &#x0645;&#x0627; &#x064A;&#x0646;&#x062A;&#x0638;&#x0631;&#x0643; &#x061F; &#x002E; &#x002E;
+<!--l. 417--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x0623;&#x0639;&#x0631;&#x0641; &#x002E; &#x002E; &#x002E; &#x0648;&#x0623;&#x0646;&#x0627; &#x0639;&#x0644;&#x0649; &#x0627;&#x0633;&#x062A;&#x0639;&#x062F;&#x0627;&#x062F; &#x002E; &#x002E; &#x002E;
+<!--l. 419--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0648;&#x0627;&#x062B;&#x0642; &#x0625;&#x0644;&#x0649; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x062D;&#x062F; &#x0645;&#x0646; &#x0646;&#x0641;&#x0633;&#x0643; &#x061F; &#x002E; &#x002E;
+<!--l. 421--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x062C;&#x062F;&#x0627; &#x002E; &#x002E; &#x002E;
+<!--l. 423--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0645;&#x0631;&#x0643; &#x0628;&#x064A;&#x0646; &#x064A;&#x062F;&#x064A; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x002E; &#x002E;
+<!--l. 425--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x0625;&#x0646;&#x064A; &#x0631;&#x0647;&#x0646; &#x0625;&#x0634;&#x0627;&#x0631;&#x062A;&#x0647;&#x0627; &#x002E; &#x002E; &#x002E;
+<!--l. 427--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0631;&#x064A;&#x062F; &#x0645;&#x0646;&#x0643; &#x0634;&#x064A;&#x0626;&#x0627; &#x0648;&#x0627;&#x062D;&#x062F;&#x0627; &#x003A; &#x0623;&#x0646; &#x062A;&#x062E;&#x0628;&#x0631;&#x0646;&#x064A; &#x0645;&#x0627;&#x0630;&#x0627; &#x0623;&#x0646;&#x062A; &#x0635;&#x0627;&#x0646;&#x0639; &#x0628;&#x064A; &#x0625;&#x0630;&#x0627; &#x0635;&#x0631;&#x062A;
+&#x0632;&#x0648;&#x062C;&#x062A;&#x0643; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 429--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x0633;&#x0623;&#x062C;&#x0639;&#x0644;&#x0643; &#x0633;&#x0639;&#x064A;&#x062F;&#x0629; &#x002E; &#x002E; &#x0633;&#x0623;&#x0644;&#x0628;&#x064A; &#x0644;&#x0643; &#x0643;&#x0644; &#x0637;&#x0644;&#x0628; &#x002E; &#x002E; &#x0648;&#x0644;&#x0648; &#x0643;&#x0627;&#x0646; &#x0645;&#x0627; &#x062A;&#x0637;&#x0644;&#x0628;&#x064A;&#x0646;
+&#x0641;&#x064A; &#x0643;&#x0628;&#x062F; &#x0637;&#x064A;&#x0631; &#x0627;&#x0644;&#x0631;&#x062E; &#x0644;&#x0627;&#x0642;&#x062A;&#x0646;&#x0635;&#x062A;&#x0647; &#x0644;&#x0643; &#x002E; &#x002E; &#x002E;
+<!--l. 431--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0648; &#x062A;&#x0633;&#x062A;&#x0637;&#x064A;&#x0639; &#x061F; &#x002E; &#x002E;
+<!--l. 433--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x0623;&#x0633;&#x062A;&#x0637;&#x064A;&#x0639; &#x002E; &#x002E; &#x0648;&#x0633;&#x062A;&#x0639;&#x0631;&#x0641;&#x0648;&#x0646; &#x0623;&#x0646;&#x064A; &#x0623;&#x0645;&#x0644;&#x0643; &#x0627;&#x0644;&#x0643;&#x062B;&#x064A;&#x0631; &#x002E; &#x002E; &#x002E;
+<!--l. 435--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0645;&#x0627;&#x0630;&#x0627; &#x063A;&#x064A;&#x0631; &#x0637;&#x064A;&#x0631; &#x0627;&#x0644;&#x0631;&#x062E; &#x002E; &#x002E; &#x002E;
+<!--l. 437--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x0633;&#x0623;&#x0639;&#x0628;&#x062F;&#x0643; &#x002E; &#x002E; &#x002E; &#x0633;&#x0623;&#x0634;&#x064A;&#x062F; &#x0644;&#x0643; &#x0642;&#x0635;&#x0631;&#x0627; &#x002E; &#x002E; &#x002E; &#x0639;&#x0644;&#x0649; &#x0633;&#x0628;&#x0639;&#x0629; &#x0623;&#x0639;&#x0645;&#x062F;&#x0629; &#x0645;&#x0646; &#x0627;&#x0644;&#x0645;&#x0631;&#x062C;&#x0627;&#x0646; &#x002E; &#x002E; &#x002E;
+&#x0641;&#x064A; &#x062C;&#x0632;&#x064A;&#x0631;&#x0629; &#x0648;&#x0627;&#x0642; &#x0627;&#x0644;&#x0648;&#x0627;&#x0642; &#x002E; &#x002E; &#x002E;
+<!--l. 439--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0627;&#x0642; &#x0627;&#x0644;&#x0648;&#x0627;&#x0642; &#x061F; &#x002E; &#x002E; &#x002E; &#x0623;&#x064A;&#x0636;&#x0627; &#x061F; &#x002E; &#x002E;
+<!--l. 441--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x0625;&#x0646;&#x0647;&#x0627; &#x062C;&#x0632;&#x064A;&#x0631;&#x0629; &#x0623;&#x0645;&#x0644;&#x0643;&#x0647;&#x0627; &#x0628;&#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0627;&#x0633;&#x0645; &#x002E; &#x002E; &#x0641;&#x064A;&#x0647;&#x0627; &#x0645;&#x0646; &#x0627;&#x0644;&#x0641;&#x0627;&#x0643;&#x0647;&#x0629; &#x0645;&#x0627; &#x062A;&#x0634;&#x062A;&#x0647;&#x064A;&#x0647;
+&#x0627;&#x0644;&#x0634;&#x0641;&#x0629; &#x0648;&#x0644;&#x0644;&#x0633;&#x0627;&#x0646; &#x0021; &#x002E; &#x002E;
+<!--l. 443--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0647;&#x0630;&#x0627; &#x0639;&#x0638;&#x064A;&#x0645; &#x002E; &#x002E; &#x002E;
+<!--l. 445--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0639;&#x0638;&#x064A;&#x0645; &#x062C;&#x062F;&#x0627; &#x002E; &#x002E;
+<!--l. 447--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0645;&#x0627;&#x0630;&#x0627; &#x0623;&#x0639;&#x0645;&#x0644; &#x0641;&#x064A; &#x064A;&#x0648;&#x0645;&#x064A; &#x061F; &#x002E; &#x002E;
+<!--l. 449--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x062A;&#x0623;&#x0645;&#x0631;&#x064A;&#x0646; &#x0648;&#x0646;&#x062D;&#x0646; &#x0646;&#x0637;&#x064A;&#x0639;&#x060C; &#x0648;&#x062A;&#x0637;&#x0644;&#x0628;&#x064A;&#x0646; &#x0648;&#x0646;&#x062D;&#x0646; &#x0646;&#x0644;&#x0628;&#x064A; &#x002E; &#x002E;
+<!--l. 451--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0645;&#x0627; &#x0634;&#x0627;&#x0621; &#x0627;&#xFDF2; &#x0021; &#x002E; &#x002E;
+<!--l. 453--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0645;&#x0627; &#x0634;&#x0627;&#x0621; &#x0627;&#xFDF2;&#x0021; &#x002E; &#x002E;
+<!--l. 455--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0641;&#x0639;&#x0644;&#x0627; &#x0645;&#x0627; &#x0634;&#x0627;&#x0621; &#x0627;&#xFDF2; &#x0021; &#x002E; &#x002E; &#x0647;&#x0630;&#x0627; &#x062C;&#x0645;&#x064A;&#x0644; &#x062C;&#x062F;&#x0627; &#x0021; &#x002E; &#x002E; &#x002E; &#x0622;&#x0645;&#x0631; &#x0641;&#x0623;&#x0637;&#x0627;&#x0639; &#x0648;&#x0623;&#x0637;&#x0644;&#x0628; &#x0641;&#x064A;&#x0644;&#x0628;&#x064A;
+&#x0637;&#x0644;&#x0628;&#x064A; &#x002E; &#x002E; &#x002E;
+<!--l. 457--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x0645;&#x0647;&#x0645;&#x0627; &#x064A;&#x0643;&#x0646; &#x0627;&#x0644;&#x0637;&#x0644;&#x0628; &#x002E; &#x002E; &#x002E; &#x0630;&#x0647;&#x0628;&#x064A; &#x0643;&#x062B;&#x064A;&#x0631; &#x002E; &#x002E; &#x002E; &#x0648;&#x0633;&#x064A;&#x0641;&#x0631;&#x0634; &#x0643;&#x0644;&#x0647; &#x062A;&#x062D;&#x062A; &#x0642;&#x062F;&#x0645;&#x064A;&#x0643; &#x002E; &#x002E;
+&#x0648;&#x0633;&#x0623;&#x062C;&#x0639;&#x0644; &#x0627;&#x0644;&#x0633;&#x0639;&#x0627;&#x062F;&#x0629; &#x0643;&#x0627;&#x0644;&#x0648;&#x0633;&#x0627;&#x062F;&#x0629; &#x062A;&#x062D;&#x062A; &#x0631;&#x0623;&#x0633;&#x0643; &#x002E; &#x002E; &#x0648;&#x0627;&#x0644;&#x0646;&#x0639;&#x064A;&#x0645; &#x064A;&#x0647;&#x0641; &#x0639;&#x0644;&#x064A;&#x0643; &#x0643;&#x0645;&#x0631;&#x0648;&#x062D;&#x0629; &#x0645;&#x0646;
+&#x0631;&#x064A;&#x0634; &#x0627;&#x0644;&#x0646;&#x0639;&#x0627;&#x0645; &#x002E; &#x002E;
+<!--l. 459--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x064A;&#x0627; &#x0633;&#x0644;&#x0627;&#x0645; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 461--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x062D;&#x0642;&#x0627; &#x002E; &#x002E; &#x0647;&#x0630;&#x0627; &#x0631;&#x0627;&#x0626;&#x0639; &#x002E; &#x002E; &#x002E;
+<!--l. 463--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0631;&#x0627;&#x0626;&#x0639; &#x062C;&#x062F;&#x0627; &#x002E; &#x002E;
+<!--l. 465--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0648;&#x0627;&#x0644;&#x0622;&#x0646; &#x002E; &#x002E; &#x002E; &#x0645;&#x0627;&#x0630;&#x0627; &#x0647;&#x0648; &#x0642;&#x0631;&#x0627;&#x0631;&#x0643; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 467--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0627;&#x062C;&#x0644;&#x062F;&#x0648;&#x0647; &#x0021; &#x002E; &#x002E;
+<!--l. 469--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0645;&#x0627;&#x0630;&#x0627; &#x062A;&#x0642;&#x0648;&#x0644;&#x064A;&#x0646; &#x061F; &#x002E; &#x002E;
+<!--l. 471--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0642;&#x0644;&#x062A; &#x0627;&#x062C;&#x0644;&#x062F;&#x0648;&#x0647; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 473--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0644;&#x0627; &#x062D;&#x0648;&#x0644; &#x0648;&#x0644;&#x0627; &#x0642;&#x0648;&#x0629; &#x0625;&#x0644;&#x0627; &#x0628;&#x0627;&#x0644;&#x0644;&#x0647; &#x0021; &#x002E; &#x002E;
+<!--l. 475--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0631;&#x0627;&#x062C;&#x0639;&#x064A; &#x0646;&#x0641;&#x0633;&#x0643; &#x0642;&#x0644;&#x064A;&#x0644;&#x0627; &#x064A;&#x0627; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 477--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0644;&#x0627; &#x062D;&#x0627;&#x062C;&#x0629; &#x0625;&#x0644;&#x0649; &#x0630;&#x0644;&#x0643; &#x002E; &#x002E; &#x002E; &#x0646;&#x0641;&#x0630; &#x0623;&#x064A;&#x0647;&#x0627; &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x0021; &#x002E; &#x002E;
+<!--l. 479--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0028; &#x0646;&#x0627;&#x0638;&#x0631;&#x0627; &#x0625;&#x0644;&#x0649; &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x0029; &#x062A;&#x0646;&#x0641;&#x064A;&#x0630; &#x061F; &#x002E; &#x002E;
+<!--l. 481--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0645;&#x0631;&#x0646;&#x0627; &#x0625;&#x0644;&#x0649; &#x0627;&#xFDF2; &#x0021; &#x002E; &#x002E;
+<!--l. 483--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0028; &#x0644;&#x0644;&#x0631;&#x062C;&#x0644; &#x0029; &#x062A;&#x0641;&#x0636;&#x0644; &#x002E; &#x002E; &#x002E; &#x0645;&#x0639; &#x0627;&#x0644;&#x0623;&#x0633;&#x0641; &#x0021; &#x002E; &#x002E;
+<!--l. 485--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x0623;&#x0642;&#x0644;&#x062A; &#x0634;&#x064A;&#x0626;&#x0627; &#x0623;&#x0633;&#x062A;&#x062D;&#x0642; &#x0639;&#x0644;&#x064A;&#x0647; &#x0627;&#x0644;&#x062C;&#x0644;&#x062F; &#x061F; &#x002E; &#x002E;
+<!--l. 487--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0623;&#x062A;&#x0633;&#x0623;&#x0644;&#x0646;&#x064A; &#x0623;&#x0646;&#x0627; &#x061F; &#x002E; &#x002E;
+<!--l. 489--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x0644;&#x0643;&#x0646; &#x002E; &#x002E; &#x002E;
+
+<!--l. 491--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0623;&#x0645;&#x062A;&#x062B;&#x0644; &#x0644;&#x0644;&#x062D;&#x0643;&#x0645; &#x0623;&#x0631;&#x062C;&#x0648;&#x0643; &#x002E; &#x002E; &#x002E; &#x0643;&#x0627;&#x0646; &#x0647;&#x0630;&#x0627; &#x0647;&#x0648; &#x0627;&#x0644;&#x0634;&#x0631;&#x0637; &#x002E; &#x002E; &#x002E; &#x0028; &#x064A;&#x0633;&#x0644;&#x0645;&#x0647; &#x0625;&#x0644;&#x0649; &#x0623;&#x062D;&#x062F;
+&#x0627;&#x0644;&#x062C;&#x0646;&#x0648;&#x062F; &#x0641;&#x064A;&#x062E;&#x0631;&#x062C; &#x0628;&#x0647;&#x002E; &#x0648;&#x064A;&#x0639;&#x0648;&#x062F;
+<!--l. 493--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x0625;&#x0644;&#x0649; &#x0642;&#x0631;&#x0628; &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x002E; &#x002E; &#x0029;&#x002E;
+<!--l. 495--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0028; &#x0644;&#x0627;&#x0628;&#x0646;&#x062A;&#x0647; &#x0029; &#x0648;&#x0622;&#x062E;&#x0631;&#x062A;&#x0647;&#x0627; &#x064A;&#x0627; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x061F; &#x002E; &#x002E;
+<!--l. 497--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0645;&#x0627; &#x0630;&#x0646;&#x0628;&#x064A; &#x064A;&#x0627; &#x0623;&#x0628;&#x064A; &#x061F; &#x002E; &#x002E; &#x0623;&#x064A;&#x0639;&#x062C;&#x0628;&#x0643; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0637;&#x0631;&#x0627;&#x0632; &#x0645;&#x0646; &#x0627;&#x0644;&#x0631;&#x062C;&#x0627;&#x0644; &#x061F; &#x002E;
+&#x002E;
+<!--l. 499--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0645;&#x0627; &#x0647;&#x0648; &#x0639;&#x064A;&#x0628;&#x0647; &#x061F; &#x002E; &#x002E; &#x0631;&#x062C;&#x0644; &#x064A;&#x0639;&#x0628;&#x062F;&#x0643; &#x0648;&#x064A;&#x0631;&#x064A;&#x062F; &#x0623;&#x0646; &#x064A;&#x0648;&#x0641;&#x0631; &#x0644;&#x0643; &#x0627;&#x0644;&#x0633;&#x0639;&#x0627;&#x062F;&#x0629; &#x002E; &#x002E; &#x002E;
+&#x0648;&#x064A;&#x0644;&#x0628;&#x064A; &#x0644;&#x0643; &#x0643;&#x0644; &#x0637;&#x0644;&#x0628; &#x0021; &#x002E; &#x002E;
+<!--l. 501--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x062A;&#x0631;&#x064A;&#x062F; &#x0623;&#x0646; &#x0623;&#x0639;&#x064A;&#x0634; &#x0641;&#x064A; &#x062C;&#x0632;&#x064A;&#x0631;&#x0629; &#x0648;&#x0627;&#x0642; &#x0627;&#x0644;&#x0648;&#x0627;&#x0642; &#x061F; &#x002E; &#x002E;
+<!--l. 503--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0645;&#x0627;&#x062F;&#x0627;&#x0645; &#x0633;&#x064A;&#x0628;&#x0646;&#x064A; &#x0644;&#x0643; &#x0641;&#x064A;&#x0647;&#x0627; &#x0642;&#x0635;&#x0631;&#x0627; &#x0639;&#x0644;&#x0649; &#x0623;&#x0639;&#x0645;&#x062F;&#x0629; &#x0645;&#x0646; &#x0627;&#x0644;&#x0645;&#x0631;&#x062C;&#x0627;&#x0646; &#x0021; &#x002E; &#x002E;
+&#x002E;
+<!--l. 505--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0631;&#x062C;&#x0648;&#x0643; &#x064A;&#x0627; &#x0623;&#x0628;&#x064A; &#x002E; &#x002E; &#x0644;&#x0627; &#x062A;&#x0636;&#x062D;&#x0643;&#x0646;&#x064A; &#x0021; &#x002E; &#x002E;
+<!--l. 507--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0647;&#x0630;&#x0627; &#x0634;&#x064A;&#x0621; &#x064A;&#x0636;&#x062D;&#x0643; &#x061F; &#x002E; &#x002E; &#x0647;&#x0630;&#x0627; &#x0634;&#x064A;&#x0621; &#x064A;&#x062F;&#x0639;&#x0648; &#x0625;&#x0644;&#x0649; &#x0627;&#x0644;&#x0641;&#x0631;&#x062D; &#x0648;&#x0627;&#x0644;&#x0641;&#x062E;&#x0631; &#x0623;&#x0646;
+&#x064A;&#x062A;&#x0642;&#x062F;&#x0645; &#x0625;&#x0644;&#x064A;&#x0643; &#x0645;&#x0646; &#x064A;&#x062D;&#x064A;&#x0637;&#x0643; &#x0628;&#x0643;&#x0644; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x062A;&#x0631;&#x0641; &#x0648;&#x0627;&#x0644;&#x0646;&#x0639;&#x064A;&#x0645; &#x002E; &#x002E; &#x002E;
+<!--l. 509--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0645;&#x0627; &#x0645;&#x0646; &#x0623;&#x062D;&#x062F; &#x064A;&#x0631;&#x064A;&#x062F; &#x0623;&#x0646; &#x064A;&#x0641;&#x0647;&#x0645;&#x0646;&#x064A; &#x002E; &#x002E; &#x002E;
+<!--l. 511--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x062D;&#x0642;&#x0627; &#x002E; &#x002E; &#x002E; &#x0625;&#x0646;&#x064A; &#x0645;&#x0639;&#x062A;&#x0631;&#x0641; &#x0628;&#x0639;&#x062C;&#x0632;&#x064A; &#x0639;&#x0646; &#x0641;&#x0647;&#x0645;&#x0643; &#x0021; &#x002E; &#x002E;
+<!--l. 513--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0625;&#x0630;&#x0646; &#x062F;&#x0639;&#x0648;&#x0646;&#x064A; &#x0648;&#x0634;&#x0623;&#x0646;&#x064A;&#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 515--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0647;&#x0630;&#x0627; &#x0645;&#x0627; &#x0648;&#x0639;&#x062F;&#x062A;&#x0643; &#x0628;&#x0647; &#x002E; &#x002E; &#x002E; &#x0648;&#x0623;&#x0646;&#x0627; &#x0639;&#x0646;&#x062F; &#x0648;&#x0639;&#x062F;&#x064A; &#x062F;&#x0627;&#x0626;&#x0645;&#x0627; &#x002E; &#x002E; &#x002E; &#x0625;&#x0646;&#x0645;&#x0627; &#x0647;&#x064A; &#x0628;&#x0639;&#x0636;
+&#x0645;&#x0644;&#x0627;&#x062D;&#x0638;&#x0627;&#x062A; &#x002E; &#x002E; &#x002E; &#x0623;&#x0639;&#x0631;&#x0641; &#x0623;&#x0646;&#x0647;&#x0627; &#x0644;&#x0646; &#x062A;&#x0642;&#x062F;&#x0645; &#x0648;&#x0644;&#x0646; &#x062A;&#x0624;&#x062E;&#x0631; &#x0021; &#x002E; &#x002E;
+<!--l. 517--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0628;&#x0645;&#x0627;&#x0630;&#x0627; &#x062A;&#x0623;&#x0645;&#x0631; &#x0645;&#x0648;&#x0644;&#x0627;&#x062A;&#x064A; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x061F; &#x002E; &#x002E; &#x0646;&#x062D;&#x0646; &#x0644;&#x0645; &#x0646;&#x0638;&#x0641;&#x0631; &#x0628;&#x0623;&#x064A; &#x0646;&#x062A;&#x064A;&#x062C;&#x0629; &#x002E; &#x002E; &#x002E; &#x0647;&#x0644;
+&#x0646;&#x0633;&#x062A;&#x0645;&#x0631; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 519--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0628;&#x0627;&#x0644;&#x0637;&#x0628;&#x0639; &#x0646;&#x0633;&#x062A;&#x0645;&#x0631; &#x002E; &#x002E; &#x0645;&#x0627;&#x062F;&#x0627;&#x0645; &#x0647;&#x0646;&#x0627;&#x0643; &#x0645;&#x0646; &#x064A;&#x062A;&#x0642;&#x062F;&#x0645; &#x060C; &#x0641;&#x0644;&#x0627; &#x0628;&#x062F; &#x0645;&#x0646; &#x0627;&#x0633;&#x062A;&#x0642;&#x0628;&#x0627;&#x0644;&#x0647;&#x002E; &#x002E; &#x002E;
+&#x0627;&#x0644;&#x0628;&#x0627;&#x0628; &#x0645;&#x0641;&#x062A;&#x0648;&#x062D; &#x062F;&#x0627;&#x0626;&#x0645;&#x0627; &#x002E; &#x002E;
+<!--l. 521--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x064A; &#x0628;&#x0627;&#x0628; &#x061F;
+<!--l. 523--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0628;&#x0627;&#x0628; &#x0627;&#x0644;&#x0627;&#x062C;&#x062A;&#x0647;&#x0627;&#x062F; &#x002E; &#x002E; &#x002E;
+<!--l. 525--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0648;&#x0628;&#x0627;&#x0628; &#x0627;&#x0644;&#x062C;&#x0644;&#x062F; &#x002E; &#x002E;
+<!--l. 527--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0645;&#x0627;&#x0630;&#x0627; &#x062A;&#x0642;&#x0648;&#x0644; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 529--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0623;&#x0642;&#x0648;&#x0644; &#x0628;&#x0627;&#x0628; &#x0627;&#x0644;&#x0627;&#x062C;&#x062A;&#x0647;&#x0627;&#x062F; &#x002E; &#x002E; &#x002E; &#x064A;&#x062C;&#x0628; &#x0623;&#x0646; &#x064A;&#x0633;&#x062A;&#x0645;&#x0631; &#x0645;&#x0641;&#x062A;&#x0648;&#x062D;&#x0627; &#x0623;&#x0645;&#x0627;&#x0645; &#x0643;&#x0644; &#x0645;&#x0646; &#x002E; &#x002E;
+&#x002E;
+<!--l. 531--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0645;&#x0646; &#x064A;&#x062C;&#x0627;&#x0632;&#x0641; &#x002E; &#x002E; &#x002E;
+<!--l. 533--><p class="indent" dir="rtl" > &#x0028; &#x0623;&#x062D;&#x062F; &#x0627;&#x0644;&#x062C;&#x0646;&#x0648;&#x062F; &#x064A;&#x062F;&#x062E;&#x0644; &#x0648;&#x064A;&#x0633;&#x0631; &#x0643;&#x0644;&#x0627;&#x0645;&#x0627; &#x0641;&#x064A; &#x0623;&#x0630;&#x0646; &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x002E; &#x002E; &#x002E; &#x002E; &#x002E; &#x0029;
+<!--l. 535--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0645;&#x062C;&#x0627;&#x0632;&#x0641; &#x0622;&#x062E;&#x0631; &#x002E; &#x002E;
+<!--l. 537--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0637;&#x0628;&#x0639;&#x0627; &#x064A;&#x062F;&#x062E;&#x0644; &#x002E; &#x002E; &#x0647;&#x0648; &#x062D;&#x0638;&#x0647; &#x0021; &#x002E; &#x002E;
+<!--l. 539--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0028; &#x0644;&#x0644;&#x062C;&#x0646;&#x062F;&#x064A; &#x0029; &#x0623;&#x062F;&#x062E;&#x0644;&#x0647; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 541--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0644;&#x0639;&#x0644; &#x002E; &#x002E;
+<!--l. 543--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0648;&#x0639;&#x0633;&#x0649; &#x002E; &#x002E; &#x002E;
+<!--l. 545--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x003A; &#x064A;&#x062F;&#x062E;&#x0644; &#x0627;&#x0644;&#x0633;&#x0644;&#x0627;&#x0645; &#x0639;&#x0644;&#x0649; &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x0646;&#x0639;&#x0645;&#x0627;&#x0646; &#x060C; &#x0648;&#x0639;&#x0644;&#x0649; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x0634;&#x0645;&#x0633;
+&#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x002E; &#x002E; &#x002E;
+<!--l. 547--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0648;&#x0639;&#x0644;&#x064A;&#x0643; &#x0627;&#x0644;&#x0633;&#x0644;&#x0627;&#x0645; &#x0021; &#x002E; &#x002E;
+<!--l. 549--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x003A; &#x062C;&#x0626;&#x062A; &#x0625;&#x0644;&#x064A;&#x0643; &#x0645;&#x0627;&#x062F;&#x0627; &#x064A;&#x062F;&#x064A; &#x0628;&#x0627;&#x0644;&#x062F;&#x0639;&#x0627;&#x0621; &#x060C; &#x0633;&#x0627;&#x0626;&#x0644;&#x0627; &#x0623;&#x0646; &#x062A;&#x0639;&#x0637;&#x064A;&#x0646;&#x064A; &#x064A;&#x062F; &#x0634;&#x0645;&#x0633;
+&#x0645;&#x0646; &#x0643;&#x0628;&#x062F; &#x0627;&#x0644;&#x0633;&#x0645;&#x0627;&#x0621; &#x002E; &#x002E; &#x002E; &#x0648;&#x0647;&#x0648; &#x0645;&#x0637;&#x0644;&#x0628; &#x0644;&#x0648; &#x062A;&#x0639;&#x0644;&#x0645;&#x0648;&#x0646; &#x0639;&#x0633;&#x064A;&#x0631; &#x0021; &#x002E; &#x002E;
+<!--l. 551--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0646;&#x0639;&#x0644;&#x0645; &#x002E; &#x002E;
+<!--l. 553--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x003A; &#x0625;&#x0646;&#x064A; &#x0641;&#x064A; &#x0627;&#x0646;&#x062A;&#x0638;&#x0627;&#x0631; &#x0645;&#x0627; &#x062A;&#x0623;&#x0645;&#x0631;&#x0648;&#x0646; &#x0628;&#x0647; &#x002E; &#x002E;
+<!--l. 555--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x0647;&#x064A; &#x0635;&#x0627;&#x062D;&#x0628;&#x0629; &#x0627;&#x0644;&#x0634;&#x0623;&#x0646; &#x002E; &#x002E; &#x002E;
+<!--l. 557--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x003A; &#x0623;&#x0645;&#x0631; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 559--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0627;&#x0633;&#x0645;&#x0639; &#x064A;&#x0627; &#x0647;&#x0630;&#x0627; &#x002E; &#x062A;&#x0631;&#x064A;&#x062F;&#x0646;&#x064A; &#x0632;&#x0648;&#x062C;&#x0629; &#x0644;&#x0643; &#x061F;
+<!--l. 561--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x003A; &#x0647;&#x0630;&#x0627; &#x062D;&#x0644;&#x0645; &#x0627;&#x0644;&#x0639;&#x0645;&#x0631; &#x0648;&#x0645;&#x0646;&#x064A;&#x0629; &#x0627;&#x0644;&#x0641;&#x0624;&#x0627;&#x062F; &#x002E; &#x002E;
+<!--l. 563--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0641;&#x0631;&#x0636; &#x0625;&#x0646;&#x064A; &#x0635;&#x0631;&#x062A; &#x0644;&#x0643; &#x0632;&#x0648;&#x062C;&#x0629; &#x060C; &#x0645;&#x0627;&#x0630;&#x0627; &#x0623;&#x0646;&#x062A; &#x0635;&#x0627;&#x0646;&#x0639; &#x0628;&#x064A; &#x061F; &#x002E; &#x002E;
+
+<!--l. 565--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x003A; &#x0623;&#x0636;&#x0639;&#x0643; &#x0641;&#x064A; &#x0639;&#x064A;&#x0646;&#x064A; &#x0648;&#x0623;&#x062D;&#x0645;&#x064A;&#x0643; &#x0628;&#x0627;&#x0644;&#x0631;&#x0645;&#x0648;&#x0634; &#x0021; &#x002E; &#x002E;
+<!--l. 567--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x062A;&#x0638;&#x0646; &#x0639;&#x064A;&#x0646;&#x0643; &#x062A;&#x062A;&#x0633;&#x0639; &#x0644;&#x064A; &#x060C; &#x0648;&#x062A;&#x0635;&#x0644;&#x062D; &#x0644;&#x064A; &#x0645;&#x0633;&#x0643;&#x0646;&#x0627; &#x061F; &#x002E; &#x002E; &#x0623;&#x0646;&#x0638;&#x0631; &#x062C;&#x064A;&#x062F;&#x0627; &#x0625;&#x0644;&#x0649;
+&#x002E; &#x002E; &#x0625;&#x0646;&#x064A; &#x0644;&#x0633;&#x062A; &#x062D;&#x0628;&#x0629; &#x0631;&#x0645;&#x0644; &#x0623;&#x0648; &#x062A;&#x0631;&#x0627;&#x0628; &#x064A;&#x0645;&#x0643;&#x0646; &#x0623;&#x0646; &#x062A;&#x0633;&#x062A;&#x0642;&#x0631; &#x0641;&#x064A; &#x0639;&#x064A;&#x0646;&#x064A;&#x0643; &#x0021; &#x002E; &#x002E;
+&#x002E;
+<!--l. 569--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x003A; &#x0625;&#x0646;&#x0645;&#x0627; &#x0623;&#x0642;&#x0635;&#x062F; &#x002E; &#x002E;
+<!--l. 571--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0643;&#x0644;&#x0645;&#x0646;&#x064A; &#x0643;&#x0644;&#x0627;&#x0645;&#x0627; &#x0645;&#x062D;&#x062F;&#x062F;&#x0627; &#x002E; &#x002E; &#x002E; &#x0645;&#x0627;&#x0630;&#x0627; &#x0633;&#x062A;&#x0643;&#x0648;&#x0646; &#x062D;&#x064A;&#x0627;&#x062A;&#x064A; &#x0645;&#x0639;&#x0643; &#x061F; &#x002E; &#x002E;
+<!--l. 573--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x003A; &#x0627;&#x0644;&#x062D;&#x0628; &#x002E; &#x002E; &#x0633;&#x0639;&#x0627;&#x062F;&#x0629; &#x0627;&#x0644;&#x062D;&#x0628; &#x002E; &#x002E; &#x0641;&#x064A; &#x0639;&#x0634; &#x062C;&#x0645;&#x064A;&#x0644; &#x0645;&#x0631;&#x064A;&#x062D; &#x002E; &#x002E; &#x0644;&#x0627; &#x0647;&#x0648; &#x0628;&#x0627;&#x0644;&#x0628;&#x0627;&#x0630;&#x062E;
+&#x0648;&#x0644;&#x0627; &#x0647;&#x0648; &#x0628;&#x0627;&#x0644;&#x0635;&#x063A;&#x064A;&#x0631; &#x002E; &#x002E; &#x0644;&#x062F;&#x064A;&#x0646;&#x0627; &#x0645;&#x0627; &#x064A;&#x0643;&#x0641;&#x064A; &#x0644;&#x0631;&#x063A;&#x062F; &#x0627;&#x0644;&#x0639;&#x064A;&#x0634; &#x0648;&#x0623;&#x0643;&#x062B;&#x0631; &#x002E; &#x002E; &#x002E; &#x062D;&#x0642;&#x0644; &#x0648;&#x0627;&#x0633;&#x0639;
+&#x0648;&#x062D;&#x062F;&#x064A;&#x0642;&#x0629; &#x063A;&#x0646;&#x0627;&#x0621; &#x0648;&#x062C;&#x062F;&#x0627;&#x0648;&#x0644; &#x0645;&#x0627;&#x0621; &#x002E; &#x002E; &#x002E; &#x0648;&#x0628;&#x0639;&#x0636; &#x0627;&#x0644;&#x062E;&#x062F;&#x0645; &#x062D;&#x0648;&#x0644;&#x0643; &#x0645;&#x0648;&#x0643;&#x0644;&#x0648;&#x0646; &#x0628;&#x062E;&#x062F;&#x0645;&#x062A;&#x0643;
+&#x0648;&#x0631;&#x0627;&#x062D;&#x062A;&#x0643; &#x002E; &#x002E; &#x0648;&#x0633;&#x062A;&#x0646;&#x062C;&#x0628;&#x064A;&#x0646; &#x0645;&#x0646;&#x064A; &#x0627;&#x0644;&#x0634;&#x0627;&#x0637;&#x0631; &#x062D;&#x0633;&#x0646; &#x060C; &#x0634;&#x0639;&#x0631;&#x0629; &#x0645;&#x0646;&#x0647; &#x0630;&#x0647;&#x0628; &#x002E; &#x002E; &#x0648;&#x0633;&#x062A;
+&#x0627;&#x0644;&#x062D;&#x0633;&#x0646; &#x0648;&#x0627;&#x0644;&#x062C;&#x0645;&#x0627;&#x0644; &#x060C; &#x0625;&#x0630;&#x0627; &#x0636;&#x062D;&#x0643;&#x062A; &#x0637;&#x0644;&#x0639;&#x062A; &#x0627;&#x0644;&#x0634;&#x0645;&#x0633; &#x060C; &#x0648;&#x0625;&#x0630;&#x0627; &#x0628;&#x0643;&#x062A; &#x0647;&#x0637;&#x0644; &#x0627;&#x0644;&#x0645;&#x0637;&#x0631; &#x002E; &#x002E;
+&#x002E;
+<!--l. 575--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x062C;&#x0645;&#x064A;&#x0644; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 577--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x003A; &#x0646;&#x0639;&#x0645; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x064A; &#x002E; &#x002E; &#x062D;&#x0641;&#x064A;&#x062F;&#x0643; &#x0645;&#x0646;&#x064A; &#x0633;&#x064A;&#x0643;&#x0648;&#x0646; &#x0627;&#x0644;&#x0634;&#x0627;&#x0637;&#x0631; &#x062D;&#x0633;&#x0646; &#x060C;
+&#x0648;&#x062D;&#x0641;&#x064A;&#x062F;&#x062A;&#x0643; &#x0633;&#x062A; &#x0627;&#x0644;&#x062D;&#x0633;&#x0646; &#x0648;&#x0627;&#x0644;&#x062C;&#x0645;&#x0627;&#x0644;&#x0021; &#x002E; &#x002E;
+<!--l. 579--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0633;&#x0627;&#x0645;&#x0639;&#x0629; &#x064A;&#x0627; &#x0627;&#x0628;&#x0646;&#x062A;&#x064A; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 581--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0647;&#x0630;&#x0627; &#x062C;&#x0645;&#x064A;&#x0644; &#x062C;&#x062F;&#x0627; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 583--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0644;&#x064A;&#x0633; &#x0643;&#x0630;&#x0644;&#x0643; &#x061F; &#x002E; &#x002E; &#x002E; &#x0647;&#x0630;&#x0627; &#x062E;&#x064A;&#x0631; &#x0645;&#x0627; &#x064A;&#x062A;&#x0645;&#x0646;&#x0627;&#x0647; &#x062C;&#x062F;&#x0021; &#x002E; &#x002E;
+<!--l. 585--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0644;&#x0643;&#x0646; &#x002E; &#x002E; &#x0643;&#x064A;&#x0641; &#x064A;&#x0645;&#x0643;&#x0646; &#x0627;&#x0644;&#x062A;&#x0623;&#x0643;&#x062F; &#x0645;&#x0646; &#x0630;&#x0644;&#x0643; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 587--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x003A; &#x0625;&#x0646; &#x0647;&#x0630;&#x0627; &#x0645;&#x0624;&#x0643;&#x062F; &#x002E; &#x002E; &#x002E;
+<!--l. 589--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0643;&#x064A;&#x0641; &#x062A;&#x062D;&#x0643;&#x0645; &#x0645;&#x0646; &#x0627;&#x0644;&#x0622;&#x0646; &#x061F; &#x0021; &#x002E; &#x002E;
+<!--l. 591--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x003A; &#x0631;&#x0623;&#x064A;&#x062A; &#x0630;&#x0644;&#x0643; &#x0641;&#x064A; &#x0627;&#x0644;&#x0645;&#x0646;&#x0627;&#x0645; &#x002E; &#x002E; &#x002E; &#x0648;&#x0623;&#x062D;&#x0644;&#x0627;&#x0645;&#x064A; &#x0644;&#x0627; &#x062A;&#x062E;&#x064A;&#x0628; &#x002E; &#x002E;
+<!--l. 593--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0633;&#x0646;&#x0631;&#x0649; &#x002E; &#x002E; &#x002E;
+<!--l. 595--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x062A;&#x0635;&#x0648;&#x0631;&#x0648;&#x0627; &#x0623;&#x0646;&#x064A; &#x0633;&#x0623;&#x0643;&#x0648;&#x0646; &#x062C;&#x062F;&#x0627; &#x0644;&#x0644;&#x0634;&#x0627;&#x0637;&#x0631; &#x062D;&#x0633;&#x0646; &#x0648;&#x0633;&#x062A; &#x0627;&#x0644;&#x062D;&#x0633;&#x0646; &#x0648;&#x0627;&#x0644;&#x062C;&#x0645;&#x0627;&#x0644; &#x002E;
+&#x002E; &#x0623;&#x0644;&#x064A;&#x0633; &#x0647;&#x0630;&#x0627; &#x0631;&#x0627;&#x0626;&#x0639;&#x0627; &#x061F;
+<!--l. 597--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0645;&#x0646;&#x062A;&#x0647;&#x0649; &#x0627;&#x0644;&#x0631;&#x0648;&#x0639;&#x0629; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x064A; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 599--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0625;&#x0630;&#x0627; &#x0636;&#x062D;&#x0643;&#x062A; &#x0635;&#x0641;&#x0627; &#x0627;&#x0644;&#x062C;&#x0648; &#x060C; &#x0648;&#x0625;&#x0630;&#x0627; &#x0628;&#x0643;&#x062A; &#x063A;&#x0627;&#x0645; &#x0648;&#x0623;&#x0645;&#x0637;&#x0631; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 601--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0646;&#x0639;&#x0645; &#x002E; &#x002E; &#x002E; &#x0646;&#x0639;&#x0645; &#x002E; &#x002E; &#x002E; &#x064A;&#x0627; &#x0644;&#x0633;&#x0639;&#x0627;&#x062F;&#x062A;&#x064A; &#x0628;&#x0630;&#x0644;&#x0643; &#x0021; &#x002E; &#x002E; &#x002E; &#x0623;&#x0646;&#x0627; &#x0627;&#x0644;&#x062C;&#x062F; &#x0021; &#x002E;
+<!--l. 603--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0648;&#x0633;&#x0639;&#x0627;&#x062F;&#x0629; &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x0627;&#x0644;&#x0623;&#x0645; &#x0623;&#x064A;&#x0636;&#x0627; &#x0021; &#x002E; &#x002E;
+<!--l. 605--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0628;&#x062F;&#x0648;&#x0646; &#x0634;&#x0643; &#x002E; &#x002E; &#x002E; &#x0628;&#x062F;&#x0648;&#x0646; &#x0634;&#x0643; &#x0021; &#x002E; &#x002E; &#x002E; &#x0627;&#x0644;&#x0622;&#x0646; &#x064A;&#x0627; &#x0627;&#x0628;&#x0646;&#x062A;&#x064A; &#x0642;&#x0631;&#x0627;&#x0631;&#x0643; &#x061F; &#x002E;
+&#x002E;
+<!--l. 607--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0627;&#x062C;&#x0644;&#x062F;&#x0648;&#x0647; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 609--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0645;&#x0627;&#x0630;&#x0627; &#x0642;&#x0644;&#x062A; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 611--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0644;&#x0645; &#x0623;&#x0633;&#x0645;&#x0639; &#x062C;&#x064A;&#x062F;&#x0627; &#x002E; &#x002E;
+<!--l. 613--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0642;&#x0644;&#x062A; &#x0627;&#x062C;&#x0644;&#x062F;&#x0648;&#x0647; &#x0021; &#x002E; &#x0633;&#x0645;&#x0639;&#x062A; &#x0627;&#x0644;&#x0622;&#x0646; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 615--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0644;&#x0627; &#x0641;&#x0627;&#x0626;&#x062F;&#x0629; &#x002E; &#x002E; &#x002E; &#x0644;&#x0627; &#x0641;&#x0627;&#x0626;&#x062F;&#x0629; &#x002E; &#x002E; &#x002E;
+<!--l. 617--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0646;&#x0639;&#x0645; &#x002E; &#x002E; &#x0644;&#x0627; &#x0641;&#x0627;&#x0626;&#x062F;&#x0629; &#x002E; &#x002E; &#x002E;
+<!--l. 619--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0642;&#x0631;&#x0627;&#x0631;&#x0643; &#x0647;&#x0630;&#x0627; &#x0646;&#x0647;&#x0627;&#x0626;&#x064A; &#x0637;&#x0628;&#x0639;&#x0627; &#x002E; &#x002E; &#x002E;
+<!--l. 621--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0637;&#x0628;&#x0639;&#x0627; &#x002E; &#x002E; &#x002E;
+<!--l. 623--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0028; &#x0644;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x0029; &#x062A;&#x0641;&#x0636;&#x0644; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 625--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x003A; &#x0633;&#x0623;&#x062C;&#x0644;&#x062F; &#x061F; &#x0021; &#x002E; &#x002E;
+<!--l. 627--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0623;&#x0644;&#x0645; &#x062A;&#x0633;&#x0645;&#x0639; &#x0628;&#x0623;&#x0630;&#x0646;&#x064A;&#x0643; &#x061F; &#x002E; &#x002E;
+<!--l. 629--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0646;&#x064A; &#x003A; &#x0028; &#x0645;&#x0633;&#x062A;&#x0646;&#x062C;&#x062F;&#x0627; &#x0029; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x064A; &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x002E; &#x002E; &#x064A;&#x0627; &#x062C;&#x062F; &#x0623;&#x0648;&#x0644;&#x0627;&#x062F;&#x064A; &#x0021; &#x002E;
+&#x002E;
+<!--l. 631--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0643;&#x064A;&#x0641; &#x0631;&#x0623;&#x064A;&#x062A; &#x0641;&#x064A; &#x0627;&#x0644;&#x0645;&#x0646;&#x0627;&#x0645; &#x0623;&#x0646;&#x0643; &#x0633;&#x062A;&#x0646;&#x062C;&#x0628; &#x0648;&#x0644;&#x0645; &#x062A;&#x0631; &#x0623;&#x0646;&#x0643; &#x0633;&#x062A;&#x062C;&#x0644;&#x062F; &#x061F; &#x002E;
+&#x002E;
+<!--l. 633--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0642;&#x0644; &#x0644;&#x0647; &#x0021; &#x002E; &#x002E;
+
+<!--l. 635--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0647;&#x064A;&#x0627; &#x0628;&#x0646;&#x0627; &#x002E; &#x002E; &#x002E; &#x0644;&#x0627; &#x062A;&#x0636;&#x064A;&#x0639; &#x0648;&#x0642;&#x062A;&#x0643; &#x0648;&#x062A;&#x0642;&#x0628;&#x0644; &#x062D;&#x0638;&#x0643; &#x0021; &#x002E; &#x002E; &#x002E; &#x0643;&#x0627;&#x0646; &#x0627;&#xFDF2; &#x0641;&#x064A; &#x0639;&#x0648;&#x0646;&#x0643; &#x060C;
+&#x0648;&#x0639;&#x0648;&#x0646; &#x0623;&#x0645;&#x062B;&#x0627;&#x0644;&#x0643; &#x060C; &#x0627;&#x0644;&#x0633;&#x0627;&#x0628;&#x0642;&#x064A;&#x0646; &#x0648;&#x0627;&#x0644;&#x0644;&#x0627;&#x062D;&#x0642;&#x064A;&#x0646; &#x0021; &#x002E; &#x002E; &#x002E; &#x0028; &#x064A;&#x0633;&#x0644;&#x0645;&#x0647; &#x0644;&#x062C;&#x0646;&#x062F;&#x064A; &#x064A;&#x062E;&#x0631;&#x062C; &#x0628;&#x0647; &#x002E; &#x002E; &#x002E;
+&#x0029;
+<!--l. 637--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x062D;&#x062A;&#x0649; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0645;&#x0631;&#x0641;&#x0648;&#x0636; &#x002E; &#x002E; &#x002E;
+<!--l. 639--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0646;&#x0639;&#x0645; &#x002E; &#x002E; &#x002E;
+<!--l. 641--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0625;&#x0646;&#x0643; &#x062A;&#x0628;&#x0627;&#x0644;&#x063A;&#x064A;&#x0646; &#x064A;&#x0627; &#x0627;&#x0628;&#x0646;&#x062A;&#x064A; &#x0623;&#x0643;&#x062B;&#x0631; &#x0645;&#x0646; &#x0627;&#x0644;&#x0644;&#x0627;&#x0632;&#x0645; &#x002E; &#x002E; &#x002E; &#x062D;&#x062A;&#x0649; &#x0627;&#x0644;&#x0623;&#x0645;&#x0648;&#x0645;&#x0629; &#x0644;&#x0627;
+&#x062A;&#x063A;&#x0631;&#x064A;&#x0643; &#x061F; &#x002E; &#x002E; &#x002E; &#x0634;&#x0645;&#x0633; &#x003A; &#x0642;&#x0628;&#x0644; &#x0623;&#x0646; &#x0623;&#x0643;&#x0648;&#x0646; &#x0623;&#x0645;&#x0627; &#x064A;&#x062C;&#x0628; &#x0623;&#x0646; &#x0623;&#x0643;&#x0648;&#x0646; &#x0634;&#x064A;&#x0626;&#x0627; &#x002E; &#x002E; &#x002E;
+<!--l. 643--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0647;&#x0630;&#x0627; &#x0643;&#x0644;&#x0627;&#x0645; &#x0644;&#x0627; &#x0623;&#x0633;&#x062A;&#x0637;&#x064A;&#x0639; &#x0641;&#x0647;&#x0645;&#x0647; &#x002E; &#x002E; &#x002E;
+<!--l. 645--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0639;&#x0631;&#x0641; &#x002E; &#x002E; &#x002E;
+<!--l. 647--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0623;&#x0644;&#x0627; &#x064A;&#x062D;&#x0633;&#x0646; &#x0627;&#x0644;&#x062A;&#x0641;&#x0643;&#x064A;&#x0631; &#x0645;&#x0631;&#x0629; &#x0623;&#x062E;&#x0631;&#x0649; &#x0641;&#x064A; &#x0625;&#x0642;&#x0641;&#x0627;&#x0644; &#x0644;&#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0628;&#x0627;&#x0628; &#x002E; &#x002E; &#x002E; &#x0625;&#x0646; &#x0646;&#x062A;&#x0627;&#x0626;&#x062C;
+&#x0647;&#x0630;&#x0647; &#x0627;&#x0644;&#x0627;&#x0645;&#x062A;&#x062D;&#x0627;&#x0646;&#x0627;&#x062A; &#x0623;&#x0635;&#x0628;&#x062D;&#x062A; &#x0645;&#x0639;&#x0631;&#x0648;&#x0641;&#x0629; &#x0645;&#x0642;&#x062F;&#x0645;&#x0627; &#x0021;&#x002E; &#x002E; &#x002E;
+<!--l. 649--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646;&#x003A; &#x0633;&#x0628;&#x0642; &#x0623;&#x0646; &#x0642;&#x0644;&#x062A; &#x0644;&#x0643; &#x0625;&#x0646;&#x0647;&#x0627; &#x0633;&#x062A;&#x0642;&#x0627;&#x0628;&#x0644; &#x0643;&#x0644; &#x0645;&#x0646; &#x064A;&#x062A;&#x0642;&#x062F;&#x0645; &#x002E; &#x002E; &#x002E;
+<!--l. 651--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x0645;&#x062C;&#x0646;&#x0648;&#x0646; &#x0645;&#x0646; &#x064A;&#x062A;&#x0642;&#x062F;&#x0645; &#x0628;&#x0639;&#x062F; &#x0630;&#x0644;&#x0643; &#x0021; &#x002E; &#x002E;
+<!--l. 653--><p class="indent" dir="rtl" > &#x0028; &#x062C;&#x0646;&#x062F;&#x064A; &#x064A;&#x062F;&#x062E;&#x0644; &#x0648;&#x064A;&#x0633;&#x0631; &#x0643;&#x0644;&#x0627;&#x0645;&#x0627; &#x0641;&#x064A; &#x0623;&#x0630;&#x0646; &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x002E; &#x002E; &#x002E; &#x0029;
+<!--l. 655--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x064A;&#x0638;&#x0647;&#x0631; &#x0623;&#x0646; &#x002E; &#x002E;
+<!--l. 657--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0646;&#x0639;&#x0645; &#x002E; &#x002E; &#x002E; &#x0647;&#x0648; &#x0628;&#x0639;&#x064A;&#x0646;&#x0647; &#x002E; &#x002E;
+<!--l. 659--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0645;&#x0646; &#x0647;&#x0648; &#x061F; &#x002E; &#x002E;
+<!--l. 661--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x0645;&#x062C;&#x0646;&#x0648;&#x0646; &#x002E; &#x002E; &#x002E;
+<!--l. 663--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x064A;&#x062F;&#x062E;&#x0644; &#x0637;&#x0628;&#x0639;&#x0627; &#x002E; &#x002E;
+<!--l. 665--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0637;&#x0628;&#x0639;&#x0627; &#x002E; &#x002E; &#x0645;&#x0627; &#x062F;&#x0627;&#x0645; &#x0644;&#x0627; &#x064A;&#x0632;&#x0627;&#x0644; &#x0641;&#x064A; &#x0627;&#x0644;&#x0628;&#x0644;&#x062F; &#x0647;&#x0648;&#x0627;&#x0629; &#x0644;&#x0644;&#x062C;&#x0644;&#x062F; &#x060C; &#x0641;&#x0645;&#x0627; &#x0627;&#x0644;&#x0630;&#x064A; &#x064A;&#x0647;&#x0645;&#x0646;&#x0627;
+&#x061F;
+<!--l. 667--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0644;&#x062B; &#x003A; &#x0028; &#x064A;&#x062F;&#x062E;&#x0644; &#x0029; &#x0627;&#x0644;&#x0633;&#x0644;&#x0627;&#x0645; &#x0639;&#x0644;&#x064A;&#x0643;&#x0645; &#x062C;&#x0645;&#x064A;&#x0639;&#x0627; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 669--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0648;&#x0639;&#x0644;&#x064A;&#x0643; &#x0627;&#x0644;&#x0633;&#x0644;&#x0627;&#x0645; &#x0021;
+<!--l. 671--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0644;&#x062B; &#x003A; &#x0623;&#x064A;&#x0646; &#x062A;&#x0644;&#x0643; &#x0627;&#x0644;&#x062A;&#x064A; &#x062A;&#x0633;&#x0645;&#x0649; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x061F; &#x002E; &#x002E;
+<!--l. 673--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0646;&#x0627; &#x002E; &#x002E; &#x0628;&#x0627;&#x0644;&#x0637;&#x0628;&#x0639; &#x0021; &#x002E; &#x002E; &#x0623;&#x062A;&#x0648;&#x062C;&#x062F; &#x0627;&#x0645;&#x0631;&#x0623;&#x0629; &#x0623;&#x062E;&#x0631;&#x0649; &#x063A;&#x064A;&#x0631;&#x064A; &#x0641;&#x064A; &#x0647;&#x0630;&#x0647; &#x0627;&#x0644;&#x0642;&#x0627;&#x0639;&#x0629; &#x061F; &#x002E;
+&#x002E;
+<!--l. 675--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0644;&#x062B; &#x003A; &#x0644;&#x0627;&#x0628;&#x062F; &#x0645;&#x0646; &#x0627;&#x0644;&#x062A;&#x0623;&#x0643;&#x062F; &#x002E; &#x002E;
+<!--l. 677--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0627;&#x0644;&#x0622;&#x0646; &#x062A;&#x0623;&#x0643;&#x062F;&#x062A; &#x061F; &#x0021; &#x002E; &#x002E;
+<!--l. 679--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x0625;&#x0630;&#x0646; &#x0647;&#x0630;&#x0647; &#x0623;&#x0646;&#x062A; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x061F; &#x002E; &#x002E; &#x0643;&#x0646;&#x062A; &#x0623;&#x062A;&#x0635;&#x0648;&#x0631;&#x0643; &#x0634;&#x064A;&#x0626;&#x0627; &#x063A;&#x064A;&#x0631; &#x0647;&#x0630;&#x0627; &#x0021;&#x002E;
+&#x002E;
+<!--l. 681--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0643;&#x064A;&#x0641; &#x0643;&#x0646;&#x062A; &#x062A;&#x062A;&#x0635;&#x0648;&#x0631;&#x0646;&#x064A; &#x061F; &#x002E; &#x002E;
+<!--l. 683--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0644;&#x062B; &#x003A; &#x0634;&#x064A;&#x0626;&#x0627; &#x0622;&#x062E;&#x0631; &#x063A;&#x064A;&#x0631; &#x0647;&#x0630;&#x0627; &#x0648;&#x0627;&#x0644;&#x0633;&#x0644;&#x0627;&#x0645; &#x0021; &#x002E; &#x002E; &#x0645;&#x0627; &#x0639;&#x0644;&#x064A;&#x0646;&#x0627; &#x002E; &#x002E; &#x002E; &#x0627;&#x0644;&#x0645;&#x0647;&#x0645; &#x003A; &#x0647;&#x0627;&#x0623;&#x0646;&#x0630;&#x0627; &#x0642;&#x062F;
+&#x062C;&#x0626;&#x062A; &#x002E; &#x002E; &#x0645;&#x0627;&#x0630;&#x0627; &#x062A;&#x0631;&#x064A;&#x062F;&#x0648;&#x0646; &#x0645;&#x0646;&#x064A; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 685--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0639;&#x062C;&#x064A;&#x0628;&#x0629; &#x0021; &#x002E; &#x002E; &#x002E; &#x0623;&#x0646;&#x062D;&#x0646; &#x0642;&#x062F; &#x062F;&#x0639;&#x0648;&#x0646;&#x0627;&#x0643; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 687--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0644;&#x062B; &#x003A; &#x0648;&#x0645;&#x0646; &#x063A;&#x064A;&#x0631;&#x0643;&#x0645; &#x061F; &#x002E; &#x002E; &#x002E; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0645;&#x0646;&#x0627;&#x062F;&#x064A; &#x0645;&#x0646; &#x0623;&#x0637;&#x0644;&#x0642;&#x0647; &#x0641;&#x064A; &#x0627;&#x0644;&#x0628;&#x0644;&#x062F; &#x061F; &#x002E;
+&#x002E;
+<!--l. 689--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0635;&#x062F;&#x0642; &#x002E; &#x002E;
+<!--l. 691--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0644;&#x062B; &#x003A; &#x0643;&#x0644; &#x0645;&#x0646; &#x0627;&#x0644;&#x0628;&#x0644;&#x062F; &#x0628;&#x062F;&#x0648;&#x0646; &#x062A;&#x0645;&#x064A;&#x064A;&#x0632; &#x0644;&#x0647; &#x0627;&#x0644;&#x062D;&#x0642; &#x0641;&#x064A; &#x0627;&#x0644;&#x062A;&#x0642;&#x062F;&#x0645; &#x0644;&#x064A;&#x062F;
+&#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631;&#x0629; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x002E; &#x002E; &#x002E; &#x0623;&#x0644;&#x064A;&#x0633; &#x0647;&#x0630;&#x0627; &#x0646;&#x0635; &#x0627;&#x0644;&#x0625;&#x0639;&#x0644;&#x0627;&#x0646; &#x061F; &#x0628;&#x062F;&#x0648;&#x0646; &#x062A;&#x0645;&#x064A;&#x064A;&#x0632; &#x002E; &#x002E; &#x002E;
+&#x0647;&#x0630;&#x0647; &#x0627;&#x0644;&#x0643;&#x0644;&#x0645;&#x0629; &#x0623;&#x0639;&#x062C;&#x0628;&#x062A;&#x0646;&#x064A; &#x002E; &#x002E; &#x002E; &#x0648;&#x0623;&#x0646;&#x062A; &#x0644;&#x0646;&#x0641;&#x0633;&#x064A; &#x003A; &#x0644;&#x0645;&#x0627;&#x0630;&#x0627; &#x0644;&#x0627; &#x0623;&#x0633;&#x062A;&#x062E;&#x062F;&#x0645; &#x062D;&#x0642;&#x064A; &#x061F; &#x002E; &#x002E;
+&#x002E;
+<!--l. 693--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0625;&#x0630;&#x0646; &#x0623;&#x0646;&#x062A; &#x062C;&#x0626;&#x062A; &#x0644;&#x0627;&#x0633;&#x062A;&#x062E;&#x062F;&#x0627;&#x0645; &#x062D;&#x0642;&#x0643; &#x0644;&#x064A;&#x0633; &#x0625;&#x0644;&#x0627; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 695--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0644;&#x062B; &#x003A; &#x0628;&#x062F;&#x0648;&#x0646; &#x0634;&#x0643; &#x002E; &#x002E; &#x002E; &#x062A;&#x0623;&#x062E;&#x0631;&#x062A; &#x0642;&#x0644;&#x064A;&#x0644;&#x0627; &#x002E; &#x002E; &#x0644;&#x0623;&#x0646;&#x0647; &#x0643;&#x0627;&#x0646; &#x064A;&#x062C;&#x0628; &#x0623;&#x0646; &#x0623;&#x062C;&#x0645;&#x0639; &#x062B;&#x0645;&#x0646;
+&#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0631;&#x062F;&#x0627;&#x0621; &#x0627;&#x0644;&#x0645;&#x0646;&#x0627;&#x0633;&#x0628; &#x0021; &#x002E; &#x002E;
+<!--l. 697--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0028; &#x0641;&#x064A; &#x0633;&#x062E;&#x0631;&#x064A;&#x0629; &#x0645;&#x0631;&#x064A;&#x0631;&#x0629; &#x0029; &#x0645;&#x0627; &#x0634;&#x0627;&#x0621; &#x0627;&#xFDF2; &#x0021;
+<!--l. 699--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0645;&#x0627; &#x0634;&#x0627;&#x0621; &#x0627;&#xFDF2; &#x062D;&#x0642;&#x0627;&#x0021; &#x002E; &#x002E; &#x0625;&#x0630;&#x0646; &#x062D;&#x062A;&#x0649; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0631;&#x062F;&#x0627;&#x0621; &#x0627;&#x0644;&#x0628;&#x0633;&#x064A;&#x0637; &#x0644;&#x0645; &#x062A;&#x0643;&#x0646; &#x062A;&#x0645;&#x0644;&#x0643;&#x0647;&#x061F; &#x002E;
+&#x002E;
+<!--l. 701--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0644;&#x062B; &#x003A; &#x0625;&#x0646;&#x064A; &#x0644;&#x0627; &#x0623;&#x0645;&#x0644;&#x0643; &#x063A;&#x064A;&#x0631; &#x0646;&#x0641;&#x0633;&#x064A; &#x0021; &#x002E; &#x002E; &#x002E;
+
+<!--l. 703--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x062A;&#x0634;&#x0631;&#x0641;&#x0646;&#x0627; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 705--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0648;&#x062A;&#x062C;&#x0631;&#x0624; &#x0623;&#x064A;&#x0647;&#x0627; &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x002E; &#x002E; &#x002E;
+<!--l. 707--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x062F;&#x0639;&#x0647; &#x064A;&#x0627; &#x0623;&#x0628;&#x064A; &#x002E; &#x002E; &#x0647;&#x0630;&#x0627; &#x0644;&#x064A;&#x0633; &#x0630;&#x0646;&#x0628;&#x0647; &#x002E; &#x002E; &#x0644;&#x0642;&#x062F; &#x0642;&#x0644;&#x0646;&#x0627; &#x062D;&#x0642;&#x0627; &#x0628;&#x062F;&#x0648;&#x0646; &#x0642;&#x064A;&#x062F; &#x0623;&#x0648; &#x062A;&#x0645;&#x064A;&#x064A;&#x0632; &#x002E;
+&#x002E;
+<!--l. 709--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0648;&#x0647;&#x0630;&#x0647; &#x0647;&#x064A; &#x0627;&#x0644;&#x0646;&#x062A;&#x064A;&#x062C;&#x0629; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 711--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x003A; &#x0646;&#x062A;&#x064A;&#x062C;&#x0629; &#x0633;&#x0627;&#x0631;&#x0629; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 713--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0028; &#x0644;&#x0627;&#x0628;&#x0646;&#x062A;&#x0647; &#x0029; &#x0648;&#x0645;&#x0627; &#x0647;&#x0648; &#x0642;&#x0631;&#x0627;&#x0631;&#x0643; &#x061F; &#x002E; &#x002E;
+<!--l. 715--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0627;&#x0644;&#x062C;&#x0644;&#x062F; &#x0637;&#x0628;&#x0639;&#x0627; &#x002E; &#x002E; &#x002E;
+<!--l. 717--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0637;&#x0628;&#x0639;&#x0627; &#x002E; &#x002E; &#x002E;
+<!--l. 719--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0648;&#x0641;&#x064A; &#x0647;&#x0630;&#x0647; &#x0627;&#x0644;&#x0645;&#x0631;&#x0629; &#x0639;&#x0646; &#x062C;&#x062F;&#x0627;&#x0631;&#x0629; &#x0648;&#x0627;&#x0633;&#x062A;&#x062D;&#x0642;&#x0627;&#x0642; &#x002E;
+<!--l. 721--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0635;&#x0628;&#x0631; &#x062D;&#x062A;&#x0649; &#x0623;&#x0646;&#x0627;&#x0642;&#x0634;&#x0647; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 723--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0623;&#x0633;&#x0631;&#x0639;&#x064A; &#x0625;&#x0630;&#x0646; &#x002E; &#x002E; &#x002E; &#x0644;&#x0642;&#x062F; &#x0646;&#x0641;&#x0630; &#x0635;&#x0628;&#x0631;&#x0646;&#x0627; &#x002E; &#x002E;
+<!--l. 725--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0028; &#x0644;&#x0644;&#x0631;&#x062C;&#x0644; &#x0029; &#x0627;&#x0633;&#x0645;&#x0639; &#x064A;&#x0627; &#x0647;&#x0630;&#x0627; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 727--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0644;&#x062B; &#x003A; &#x064A;&#x0627; &#x0647;&#x0630;&#x0627; &#x061F; &#x0021; &#x002E; &#x002E; &#x002E; &#x0623;&#x0648;&#x0644;&#x0627; &#x0623;&#x0646;&#x0627; &#x0627;&#x0633;&#x0645;&#x064A; &#x0642;&#x0645;&#x0631; &#x0627;&#x0644;&#x0632;&#x0645;&#x0627;&#x0646; &#x060C; &#x0648;&#x0644;&#x0643; &#x0623;&#x0646; &#x062A;&#x0646;&#x0627;&#x062F;&#x064A;&#x0646;&#x064A; &#x0628;&#x064A;&#x0627;
+&#x0642;&#x0645;&#x0631;&#x0021; &#x002E; &#x002E;
+<!--l. 729--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0634;&#x064A;&#x0621; &#x062C;&#x0645;&#x064A;&#x0644; &#x062C;&#x062F;&#x0627; &#x002E; &#x002E;
+<!--l. 731--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x062D;&#x0642;&#x0627; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 733--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0647;&#x0630;&#x0627; &#x0627;&#x0633;&#x0645;&#x0643; &#x0627;&#x0644;&#x062D;&#x0642;&#x064A;&#x0642;&#x064A; &#x061F; &#x002E; &#x002E;
+<!--l. 735--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0627;&#x0644;&#x062B;&#x0627;&#x0644;&#x062B; &#x003A; &#x0648;&#x0623;&#x0646;&#x062A; &#x061F; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631;&#x061F; &#x002E; &#x002E; &#x0647;&#x0644; &#x0647;&#x0630;&#x0627; &#x0627;&#x0633;&#x0645;&#x0643; &#x0627;&#x0644;&#x062D;&#x0642;&#x064A;&#x0642;&#x064A; &#x061F; &#x0645;&#x0627; &#x062F;&#x0645;&#x062A; &#x0623;&#x0646;&#x062A;
+&#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x0641;&#x0623;&#x0646;&#x0627; &#x0625;&#x0630;&#x0646; &#x0642;&#x0645;&#x0631; &#x0627;&#x0644;&#x0632;&#x0645;&#x0627;&#x0646; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 737--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0623;&#x0646;&#x0633;&#x0643;&#x062A; &#x0639;&#x0644;&#x064A;&#x0647; &#x061F; &#x002E; &#x002E;
+<!--l. 739--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A;&#x0627;&#x0644;&#x0648;&#x0627;&#x0642;&#x0639; &#x0623;&#x0646;&#x0647; &#x002E; &#x002E;
+<!--l. 741--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0644;&#x062D;&#x0638;&#x0629; &#x0648;&#x0627;&#x062D;&#x062F;&#x0629; &#x0623;&#x0631;&#x062C;&#x0648;&#x0643;&#x0645; &#x002E; &#x002E; &#x0627;&#x0633;&#x0645;&#x0639; &#x064A;&#x0627; &#x0642;&#x0645;&#x0631; &#x0627;&#x0644;&#x0632;&#x0645;&#x0627;&#x0646; &#x0021; &#x002E; &#x002E; &#x0627;&#x0641;&#x0631;&#x0636; &#x0623;&#x0646;&#x064A; &#x0623;&#x0635;&#x0628;&#x062D;&#x062A;
+&#x0632;&#x0648;&#x062C;&#x0629; &#x0644;&#x0643;&#x060C; &#x0645;&#x0627;&#x0630;&#x0627; &#x0633;&#x062A;&#x0635;&#x0646;&#x0639; &#x0628;&#x064A; &#x061F; &#x002E; &#x002E;
+<!--l. 743--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0645;&#x0627;&#x0630;&#x0627; &#x0633;&#x0623;&#x0635;&#x0646;&#x0639; &#x0628;&#x0643; &#x061F; &#x002E; &#x002E; &#x0644;&#x0646; &#x0623;&#x0635;&#x0646;&#x0639; &#x0628;&#x0643; &#x0634;&#x064A;&#x0626;&#x0627; &#x002E; &#x002E; &#x0623;&#x0646;&#x062A; &#x0627;&#x0644;&#x062A;&#x064A; &#x062A;&#x0635;&#x0646;&#x0639;&#x064A;&#x0646;
+&#x0628;&#x0646;&#x0641;&#x0633;&#x0643; &#x0648;&#x0644;&#x0646;&#x0641;&#x0633;&#x0643; &#x002E; &#x002E; &#x002E; &#x0645;&#x0627;&#x0630;&#x0627; &#x062A;&#x062D;&#x0633;&#x0646;&#x064A;&#x0646;&#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 745--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0645;&#x0627;&#x0630;&#x0627; &#x0623;&#x062D;&#x0633;&#x0646; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 747--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0646;&#x0639;&#x0645; &#x002E; &#x002E; &#x0645;&#x0627;&#x0630;&#x0627; &#x062A;&#x062D;&#x0633;&#x0646;&#x064A;&#x0646; &#x0645;&#x0646; &#x0627;&#x0644;&#x0623;&#x0639;&#x0645;&#x0627;&#x0644; &#x061F; &#x002E; &#x002E; &#x002E; &#x0647;&#x0644; &#x062A;&#x062D;&#x0633;&#x0646;&#x064A;&#x0646; &#x0627;&#x0644;&#x0637;&#x0628;&#x062E; &#x0645;&#x062B;&#x0644;&#x0627; &#x061F;&#x0021; &#x002E; &#x002E;
+&#x002E;
+<!--l. 749--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0627;&#x0644;&#x0637;&#x0628;&#x062E; &#x061F; &#x002E; &#x002E;
+<!--l. 751--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x062A;&#x0641;&#x0635;&#x064A;&#x0644; &#x0627;&#x0644;&#x062B;&#x064A;&#x0627;&#x0628; &#x061F; &#x002E; &#x002E; &#x0631;&#x062A;&#x0642; &#x0627;&#x0644;&#x062E;&#x0631;&#x0648;&#x0642; &#x061F; &#x002E; &#x002E; &#x0625;&#x0632;&#x0627;&#x0644;&#x0629; &#x0627;&#x0644;&#x0628;&#x0642;&#x0639; &#x061F; &#x002E; &#x002E; &#x002E; &#x062E;&#x0635;&#x0641; &#x0627;&#x0644;&#x0646;&#x0639;&#x0627;&#x0644;
+&#x061F; &#x002E; &#x002E; &#x002E; &#x0635;&#x0646;&#x0639; &#x0627;&#x0644;&#x0633;&#x0644;&#x0627;&#x0633;&#x0644; &#x061F; &#x002E; &#x002E; &#x0646;&#x0634;&#x0631; &#x0627;&#x0644;&#x063A;&#x0633;&#x064A;&#x0644; &#x060C; &#x0639;&#x062C;&#x0646; &#x0627;&#x0644;&#x0639;&#x062C;&#x064A;&#x0646; &#x060C; &#x062E;&#x0628;&#x0632; &#x0627;&#x0644;&#x0631;&#x063A;&#x064A;&#x0641; &#x060C; &#x063A;&#x0631;&#x0641;
+&#x0627;&#x0644;&#x063A;&#x0631;&#x064A;&#x0641; &#x060C; &#x062A;&#x0631;&#x0628;&#x064A;&#x0629; &#x0627;&#x0644;&#x062F;&#x062C;&#x0627;&#x062C; &#x060C; &#x0645;&#x0633;&#x062D; &#x0627;&#x0644;&#x0632;&#x062C;&#x0627;&#x062C; &#x060C; &#x0645;&#x0644;&#x0621; &#x0627;&#x0644;&#x062C;&#x0631;&#x0627;&#x0631; &#x0645;&#x0646; &#x0627;&#x0644;&#x0622;&#x0628;&#x0627;&#x0631; &#x0648;&#x0635;&#x0628;&#x0647;&#x0627; &#x0641;&#x064A;
+&#x0627;&#x0644;&#x0623;&#x0632;&#x064A;&#x0627;&#x0631; &#x060C; &#x0648;&#x0643;&#x0646;&#x0633; &#x0627;&#x0644;&#x063A;&#x0628;&#x0627;&#x0631; &#x060C; &#x0648;&#x062A;&#x062E;&#x0644;&#x064A;&#x0644; &#x0627;&#x0644;&#x062E;&#x064A;&#x0627;&#x0631; &#x002E; &#x002E; &#x0625;&#x0644;&#x0649; &#x0622;&#x062E;&#x0631; &#x0647;&#x0630;&#x0647; &#x0627;&#x0644;&#x0623;&#x0634;&#x063A;&#x0627;&#x0644; &#x0648;&#x0627;&#x0644;&#x0623;&#x0639;&#x0645;&#x0627;&#x0644; &#x002E;
+&#x002E;
+<!--l. 753--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0646;&#x0627; &#x061F; &#x002E; &#x002E; &#x0628;&#x0646;&#x062A; &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x0646;&#x0639;&#x0645;&#x0627;&#x0646; &#x061F; &#x002E; &#x002E;
+<!--l. 755--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0648;&#x0644;&#x0643;&#x0646;&#x0643; &#x0633;&#x062A;&#x0635;&#x0628;&#x062D;&#x064A;&#x0646; &#x0632;&#x0648;&#x062C;&#x0629; &#x0642;&#x0645;&#x0631; &#x0627;&#x0644;&#x0632;&#x0645;&#x0627;&#x0646; &#x0021; &#x002E; &#x002E;
+<!--l. 757--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0647;&#x0630;&#x0627; &#x0625;&#x0630;&#x0646; &#x0645;&#x0627; &#x064A;&#x0646;&#x062A;&#x0638;&#x0631;&#x0646;&#x064A; &#x0645;&#x0639;&#x0643; &#x061F; &#x002E; &#x002E;
+<!--l. 759--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0639;&#x0644;&#x0649; &#x0623;&#x062D;&#x0633;&#x0646; &#x0627;&#x0644;&#x0641;&#x0631;&#x0648;&#x0636; &#x002E; &#x002E;
+<!--l. 761--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0647;&#x0646;&#x0627;&#x0643; &#x0645;&#x0627; &#x0647;&#x0648; &#x0623;&#x0633;&#x0648;&#x0623; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 763--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0623;&#x062D;&#x064A;&#x0627;&#x0646;&#x0627; &#x002E; &#x002E; &#x0641;&#x0642;&#x062F; &#x0644;&#x0627; &#x064A;&#x0648;&#x062C;&#x062F; &#x062B;&#x064A;&#x0627;&#x0628; &#x0644;&#x062A;&#x0641;&#x0635;&#x064A;&#x0644;&#x0647;&#x0627; &#x060C; &#x0648;&#x0644;&#x0627; &#x0639;&#x062C;&#x064A;&#x0646; &#x0644;&#x062A;&#x0639;&#x062C;&#x064A;&#x0646;&#x0647; &#x0648;&#x0644;&#x0627;
+&#x062F;&#x062C;&#x0627;&#x062C; &#x0644;&#x062A;&#x0631;&#x0628;&#x064A;&#x062A;&#x0647; &#x0021; &#x002E; &#x002E; &#x002E; &#x0648;&#x0644;&#x0627; &#x062D;&#x062A;&#x0649; &#x063A;&#x0628;&#x0627;&#x0631; &#x0644;&#x062A;&#x0643;&#x0646;&#x0633;&#x064A;&#x0647; &#x0021; &#x002E; &#x002E; &#x002E;
+<!--l. 765--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0641;&#x064A; &#x0645;&#x062B;&#x0644; &#x0647;&#x0630;&#x0647; &#x0627;&#x0644;&#x062D;&#x0627;&#x0644;&#x0629; &#x0643;&#x064A;&#x0641; &#x0646;&#x0639;&#x064A;&#x0634; &#x0021; &#x002E; &#x002E;
+<!--l. 767--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0644;&#x0627; &#x0623;&#x062D;&#x0628; &#x0627;&#x0644;&#x062A;&#x0646;&#x0628;&#x0624; &#x0021; &#x002E; &#x002E;
+<!--l. 769--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0623;&#x0646;&#x062A; &#x0645;&#x0627;&#x0630;&#x0627; &#x062A;&#x062D;&#x0633;&#x0646; &#x0641;&#x064A; &#x0627;&#x0644;&#x062D;&#x064A;&#x0627;&#x0629; &#x061F; &#x002E; &#x002E;
+<!--l. 771--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0644;&#x0627; &#x0634;&#x064A;&#x0621; &#x002E; &#x002E; &#x002E; &#x0648;&#x0643;&#x0644; &#x0634;&#x064A;&#x0621; &#x002E; &#x002E; &#x002E;
+<!--l. 773--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0644;&#x0633;&#x062A; &#x0623;&#x0641;&#x0647;&#x0645; &#x0645;&#x0627; &#x062A;&#x0642;&#x0648;&#x0644; &#x002E; &#x002E; &#x002E;
+<!--l. 775--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0625;&#x0630;&#x0627; &#x0639;&#x0634;&#x062A; &#x0645;&#x0639;&#x064A; &#x0641;&#x0625;&#x0646;&#x0643; &#x0633;&#x062A;&#x0641;&#x0647;&#x0645;&#x064A;&#x0646; &#x061F; &#x0021; &#x002E; &#x002E;
+
+<!--l. 777--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0647;&#x0644; &#x062A;&#x062A;&#x0635;&#x0648;&#x0631; &#x0623;&#x0646;&#x064A; &#x064A;&#x0645;&#x0643;&#x0646; &#x0623;&#x0646; &#x0623;&#x0639;&#x064A;&#x0634; &#x0645;&#x0639;&#x0643; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 779--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0623;&#x062A;&#x0631;&#x064A;&#x062F;&#x064A;&#x0646; &#x0627;&#x0644;&#x062D;&#x0642;&#x064A;&#x0642;&#x0629; &#x061F; &#x002E; &#x0647;&#x0645; &#x002E; &#x002E; &#x0625;&#x0646;&#x064A; &#x0644;&#x0645; &#x0623;&#x062A;&#x0635;&#x0648;&#x0631; &#x0630;&#x0644;&#x0643; &#x002E; &#x0648;&#x0644;&#x0627; &#x064A;&#x0645;&#x0643;&#x0646; &#x0623;&#x0646;
+&#x0623;&#x062A;&#x0635;&#x0648;&#x0631;&#x0647; &#x0021; &#x002E; &#x002E;
+<!--l. 781--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0644;&#x0645;&#x0627; &#x062C;&#x0626;&#x062A; &#x0625;&#x0630;&#x0646; &#x0648;&#x062A;&#x0642;&#x062F;&#x0645;&#x062A;&#x061F;&#x002E;&#x002E;
+<!--l. 783--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0627;&#x0633;&#x062A;&#x062E;&#x062F;&#x0645; &#x062D;&#x0642;&#x064A; &#x002E; &#x002E; &#x0644;&#x0645; &#x0623;&#x0633;&#x062A;&#x0637;&#x0639; &#x0645;&#x0642;&#x0627;&#x0648;&#x0645;&#x0629; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0625;&#x063A;&#x0631;&#x0627;&#x0621; &#x002E; &#x002E; &#x0623;&#x0646; &#x0623;&#x0633;&#x062A;&#x062E;&#x062F;&#x0645; &#x062D;&#x0642;&#x0627; &#x0644;&#x064A; &#x002E;&#x002E; &#x0645;&#x0627;
+&#x062F;&#x0627;&#x0645; &#x062F;&#x062E;&#x0648;&#x0644;&#x064A; &#x0641;&#x064A; &#x0627;&#x0644;&#x0645;&#x0628;&#x0627;&#x0631;&#x0627;&#x0629; &#x0645;&#x0628;&#x0627;&#x062D;&#x0627; &#x0641;&#x0644;&#x0645;&#x0627;&#x0630;&#x0627; &#x0644;&#x0627; &#x0623;&#x062F;&#x062E;&#x0644; &#x0021; &#x002E; &#x002E;
+<!--l. 785--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0644;&#x0643;&#x0646;&#x0643; &#x0639;&#x0646;&#x062F; &#x0627;&#x0644;&#x0641;&#x0634;&#x0644; &#x0633;&#x062A;&#x062C;&#x0644;&#x062F;&#x0021; &#x002E; &#x002E;
+<!--l. 787--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0627;&#x0644;&#x062C;&#x0644;&#x062F;&#x061F;&#x0021; &#x002E; &#x002E; &#x0647;&#x0630;&#x0627; &#x0623;&#x0628;&#x0633;&#x0637; &#x0634;&#x064A;&#x0621;&#x0021;&#x002E;&#x002E;
+<!--l. 789--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0625;&#x0630;&#x0627; &#x0641;&#x0631;&#x0636; &#x0648;&#x0646;&#x062C;&#x062D;&#x062A;&#x061F;&#x002E;
+<!--l. 791--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x062A;&#x0643;&#x0648;&#x0646; &#x0643;&#x0627;&#x0631;&#x062B;&#x0629; &#x0021;&#x002E;&#x002E;
+<!--l. 793--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0643;&#x0627;&#x0631;&#x062B;&#x0629; &#x0021; &#x0625;&#x0630;&#x0627; &#x0646;&#x0644;&#x062A;&#x0646;&#x064A; &#x062A;&#x0639;&#x062A;&#x0628;&#x0631; &#x0630;&#x0644;&#x0643; &#x0643;&#x0627;&#x0631;&#x062B;&#x0629; &#x002E;&#x002E;
+<!--l. 795--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0645;&#x0624;&#x0643;&#x062F; &#x002E;&#x002E;
+<!--l. 797--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0648;&#x0632;&#x064A;&#x0631; &#x003A; &#x0648;&#x0642;&#x0627;&#x062D;&#x0629; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0632;&#x0627;&#x062F;&#x062A; &#x002E;&#x002E; &#x0627;&#x0633;&#x0645;&#x062D;&#x064A; &#x0644;&#x0646;&#x0627; &#x0628;&#x062C;&#x0644;&#x062F;&#x0647; &#x064A;&#x0627; &#x0645;&#x0648;&#x0644;&#x0627;&#x062A;&#x064A; &#x002E;&#x002E; &#x0648;&#x0641;&#x064A; &#x0627;&#x0644;&#x062D;&#x0627;&#x0644;
+&#x0021;&#x002E;&#x002E;
+<!--l. 799--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0627;&#x0646;&#x062A;&#x0638;&#x0631; &#x0021;&#x002E;&#x002E;
+<!--l. 801--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0633;&#x0644;&#x0637;&#x0627;&#x0646; &#x003A; &#x0646;&#x0646;&#x062A;&#x0638;&#x0631; &#x0625;&#x0644;&#x0649; &#x0645;&#x062A;&#x0649; &#x064A;&#x0627; &#x0627;&#x0628;&#x0646;&#x062A;&#x064A; &#x061F; &#x002E; &#x002E; &#x0623;&#x0647;&#x0630;&#x0627; &#x0643;&#x0644;&#x0627;&#x0645; &#x0646;&#x0633;&#x0645;&#x0639;&#x0647; &#x0645;&#x0646; &#x0645;&#x062B;&#x0644; &#x0647;&#x0630;&#x0627;
+&#x0627;&#x0644;&#x0635;&#x0639;&#x0644;&#x0648;&#x0643; &#x061F; &#x002E; &#x002E; &#x002E;
+<!--l. 803--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0644;&#x062D;&#x0638;&#x0629; &#x0623;&#x062E;&#x0631;&#x0649; &#x002E; &#x002E; &#x0627;&#x0633;&#x0645;&#x0639; &#x064A;&#x0627; &#x0642;&#x0645;&#x0631; &#x0627;&#x0644;&#x0632;&#x0645;&#x0627;&#x0646;&#x0021; &#x002E; &#x002E;
+
+<!--l. 805--><p class="indent" dir="rtl" >
+
+ <!--l. 805--><p class="noindent" dir="rtl" >
+ <h2 class="likechapterHead" dir="rtl" ><a
+ id="x1-60004"></a>&#x062E;&#x062A;&#x0627;&#x0645; &#x0627;&#x0644;&#x0645;&#x0633;&#x0631;&#x062D;&#x064A;&#x0629; &#x0643;&#x0645;&#x0627; &#x0638;&#x0647;&#x0631;&#x062A; &#x0639;&#x0644;&#x0649; &#x0627;&#x0644;&#x0645;&#x0633;&#x0631;&#x062D; &#x0627;&#x0644;&#x0642;&#x0648;&#x0645;&#x064A;</h2>
+<!--l. 808--><p class="noindent" dir="rtl" >&#x0639;&#x0646;&#x062F; &#x0625;&#x062E;&#x0631;&#x0627;&#x062C; &#x0627;&#x0644;&#x0645;&#x0633;&#x0631;&#x062D;&#x064A;&#x0629; &#x0639;&#x0644;&#x0649; &#x0627;&#x0644;&#x0645;&#x0633;&#x0631;&#x062D; &#x0627;&#x0644;&#x0642;&#x0648;&#x0645;&#x064A; &#x0631;&#x0624;&#x064A; &#x062A;&#x063A;&#x064A;&#x064A;&#x0631; &#x0627;&#x0644;&#x062E;&#x0627;&#x062A;&#x0645;&#x0629; &#x0639;&#x0644;&#x0649;
+&#x0646;&#x062D;&#x0648; &#x064A;&#x062C;&#x0645;&#x0639; &#x0628;&#x064A;&#x0646; &#x0627;&#x0644;&#x0645;&#x062D;&#x0628;&#x064A;&#x0646; &#x0627;&#x0644;&#x0645;&#x062C;&#x0627;&#x0647;&#x062F;&#x064A;&#x0646;&#x002E;&#x002E; &#x0641;&#x0648;&#x0636;&#x0639; &#x0627;&#x0644;&#x0645;&#x0624;&#x0644;&#x0641; &#x0627;&#x0644;&#x062E;&#x0627;&#x062A;&#x0645;&#x0629; &#x0627;&#x0644;&#x0623;&#x062E;&#x0631;&#x0649;
+&#x0627;&#x0644;&#x062A;&#x0627;&#x0644;&#x064A;&#x0629;&#x003A;
+<!--l. 810--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0646;&#x0639;&#x0645;&#x002E;&#x002E;&#x002E; &#x0625;&#x0630;&#x0627; &#x0633;&#x0643;&#x062A; &#x0639;&#x0646; &#x0627;&#x0644;&#x0643;&#x0644;&#x0627;&#x0645; &#x0648;&#x0623;&#x0633;&#x0631;&#x0639;&#x062A; &#x0641;&#x064A; &#x0627;&#x0644;&#x062E;&#x0637;&#x0649;&#x002E;&#x002E; &#x0647;&#x064A;&#x0627; &#x0628;&#x0646;&#x0627;&#x002E;&#x002E;&#x002E; &#x0647;&#x0644;&#x0645;&#x002E;&#x002E; &#x0625;&#x0644;&#x0649;
+&#x0627;&#x0644;&#x0632;&#x0648;&#x0627;&#x062C;&#x002E;&#x002E;&#x002E;
+<!--l. 812--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0647;&#x064A;&#x0627; &#x0628;&#x0646;&#x0627;&#x002E;&#x002E; &#x0647;&#x0644;&#x0645;&#x064A;&#x002E;&#x002E; &#x0627;&#x0646;&#x062A;&#x0638;&#x0631;&#x064A; &#x0028;&#x064A;&#x0642;&#x0641; &#x0648;&#x064A;&#x0646;&#x0638;&#x0631; &#x0628;&#x0639;&#x064A;&#x062F;&#x0627;&#x0029; &#x0645;&#x0627; &#x0647;&#x0630;&#x0627;&#x002E;&#x002E; &#x0647;&#x0630;&#x0627; &#x0635;&#x0648;&#x062A; &#x062D;&#x0635;&#x0627;&#x0646;
+&#x064A;&#x0631;&#x0643;&#x0636;&#x002E;&#x002E;&#x002E;
+<!--l. 814--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0028;&#x062A;&#x0646;&#x0638;&#x0631; &#x0625;&#x0644;&#x0649; &#x062C;&#x0647;&#x0629; &#x0627;&#x0644;&#x0635;&#x0648;&#x062A; &#x062A;&#x062A;&#x0628;&#x064A;&#x0646; &#x0627;&#x0644;&#x0642;&#x0627;&#x062F;&#x0645;&#x0029; &#x0647;&#x0630;&#x0627; &#x062D;&#x0645;&#x062F;&#x0627;&#x0646;&#x002E;&#x002E;&#x002E;
+<!--l. 816--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x062D;&#x0645;&#x062F;&#x0627;&#x0646;&#x002E;&#x002E; &#x0644;&#x0639;&#x0646;&#x0647; &#x0627;&#xFDF2;&#x0021;&#x002E;&#x002E;&#x002E; &#x0028;&#x062D;&#x0645;&#x062F;&#x0627;&#x0646; &#x064A;&#x062F;&#x062E;&#x0644; &#x064A;&#x062D;&#x0645;&#x0644; &#x0641;&#x064A; &#x064A;&#x062F;&#x0647; &#x0633;&#x064A;&#x0641;&#x0627; &#x062E;&#x0644;&#x0627;&#x0641; &#x0633;&#x064A;&#x0641;&#x0647;
+&#x0627;&#x0644;&#x0645;&#x062F;&#x0644;&#x0649; &#x0645;&#x0646; &#x062D;&#x0632;&#x0627;&#x0645;&#x0647;&#x002E;&#x002E;&#x002E;&#x0029;
+<!--l. 818--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0639;&#x062F;&#x062A; &#x0633;&#x0631;&#x064A;&#x0639;&#x0627; &#x064A;&#x0627; &#x062D;&#x0645;&#x062F;&#x0627;&#x0646;&#x002E;&#x002E;&#x002E;
+<!--l. 820--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0643;&#x0627;&#x0646; &#x0641;&#x064A; &#x0625;&#x0645;&#x0643;&#x0627;&#x0646;&#x0643; &#x0623;&#x0646; &#x062A;&#x0648;&#x0641;&#x0631;&#x064A; &#x0639;&#x0644;&#x0649; &#x0627;&#x0644;&#x0645;&#x0634;&#x0648;&#x0627;&#x0631;&#x002E;&#x002E;
+<!--l. 822--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0631;&#x062F;&#x062A; &#x0644;&#x0643; &#x0623;&#x0646; &#x062A;&#x0639;&#x0631;&#x0641; &#x0627;&#x0644;&#x062D;&#x0642;&#x064A;&#x0642;&#x0629; &#x0628;&#x0646;&#x0641;&#x0633;&#x0643;&#x002E;&#x002E;
+<!--l. 824--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0634;&#x0639;&#x0631; &#x0628;&#x0647;&#x0627; &#x0642;&#x0644;&#x0628;&#x064A; &#x0641;&#x064A; &#x0623;&#x0648;&#x0644; &#x0644;&#x062D;&#x0638;&#x0629; &#x0631;&#x0623;&#x064A;&#x062A;&#x0643; &#x0641;&#x064A;&#x0647;&#x0627;&#x002E;&#x002E; &#x0648;&#x0644;&#x0643;&#x0646;&#x064A; &#x0639;&#x0631;&#x0641;&#x062A; &#x0627;&#x0644;&#x064A;&#x0648;&#x0645;
+&#x0644;&#x0645;&#x0627;&#x0630;&#x0627; &#x0643;&#x0646;&#x062A; &#x0623;&#x0643;&#x0631;&#x0647; &#x062F;&#x0627;&#x0626;&#x0645;&#x0627; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0631;&#x062C;&#x0644;&#x0021;&#x002E;&#x002E;&#x002E;
+<!--l. 826--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0634;&#x0639;&#x0648;&#x0631; &#x0645;&#x062A;&#x0628;&#x0627;&#x062F;&#x0644; &#x062F;&#x0627;&#x0626;&#x0645;&#x0627;&#x002E;&#x002E;&#x002E;
+<!--l. 828--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0028;&#x064A;&#x0644;&#x0642;&#x064A; &#x0625;&#x0644;&#x064A;&#x0647; &#x0628;&#x0627;&#x0644;&#x0633;&#x064A;&#x0641;&#x0029; &#x062E;&#x0630;&#x002E;&#x002E;&#x002E; &#x0648;&#x062F;&#x0627;&#x0641;&#x0639; &#x0639;&#x0646; &#x0646;&#x0641;&#x0633;&#x0643;&#x002E;&#x002E;&#x002E;
+<!--l. 830--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0028;&#x0635;&#x0627;&#x0626;&#x062D;&#x0629;&#x0029; &#x0645;&#x0627; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0630;&#x064A; &#x062A;&#x0635;&#x0646;&#x0639;&#x061F;&#x002E;&#x002E;&#x002E;
+<!--l. 832--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0644;&#x0627;&#x0628;&#x062F; &#x0644;&#x0648;&#x0627;&#x062D;&#x062F; &#x0645;&#x0646;&#x0627; &#x0623;&#x0646; &#x064A;&#x0645;&#x0648;&#x062A;&#x002E;&#x002E;&#x002E;
+<!--l. 834--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x062C;&#x0646;&#x0646;&#x062A;&#x061F;&#x002E;&#x002E;&#x002E;
+<!--l. 836--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0644;&#x0627; &#x064A;&#x0645;&#x0643;&#x0646; &#x0623;&#x0646; &#x0623;&#x0639;&#x064A;&#x0634; &#x0648;&#x0623;&#x0631;&#x0649; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x064A;&#x0638;&#x0641;&#x0631; &#x0628;&#x0643;&#x002E;&#x002E;&#x002E;
+<!--l. 838--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0644;&#x0642;&#x062F; &#x0638;&#x0641;&#x0631; &#x0628;&#x064A; &#x0642;&#x0628;&#x0644; &#x0623;&#x0646; &#x062A;&#x0631;&#x0627;&#x0646;&#x064A;&#x002E;&#x002E;&#x002E;
+<!--l. 840--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0648;&#x0647;&#x0630;&#x0627; &#x0633;&#x0628;&#x0628; &#x0623;&#x0643;&#x0628;&#x0631; &#x064A;&#x062F;&#x0639;&#x0648;&#x0646;&#x064A; &#x0625;&#x0644;&#x0649; &#x0642;&#x062A;&#x0644;&#x0647;&#x002E;&#x002E;&#x002E;
+<!--l. 842--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0648;&#x0623;&#x0641;&#x0631;&#x0636; &#x0623;&#x0646;&#x0643; &#x0642;&#x062A;&#x0644;&#x062A;&#x0647;&#x060C; &#x0645;&#x0627; &#x0647;&#x064A; &#x0627;&#x0644;&#x0646;&#x062A;&#x064A;&#x062C;&#x0629;&#x061F;&#x002E;&#x002E;&#x002E;
+<!--l. 844--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x064A;&#x0631;&#x062A;&#x0627;&#x062D; &#x0642;&#x0644;&#x0628;&#x064A; &#x0639;&#x0644;&#x0649; &#x0627;&#x0644;&#x0623;&#x0642;&#x0644;&#x002E;&#x002E; &#x062F;&#x0627;&#x0641;&#x0639; &#x0639;&#x0646; &#x0646;&#x0641;&#x0633;&#x0643;&#x0021;&#x002E;&#x002E;&#x002E; &#x064A;&#x062C;&#x0628; &#x0623;&#x0646; &#x0623;&#x0642;&#x062A;&#x0644;&#x0643;
+&#x0628;&#x0634;&#x0631;&#x0641;&#x060C; &#x0648;&#x0625;&#x0646; &#x0643;&#x0646;&#x062A; &#x0644;&#x0627; &#x062A;&#x0633;&#x062A;&#x062D;&#x0642; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0634;&#x0631;&#x0641;&#x060C; &#x0644;&#x0623;&#x0646;&#x0643; &#x0635;&#x0639;&#x0644;&#x0648;&#x0643;&#x0021;&#x002E;&#x002E;&#x002E;
+<!--l. 846--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x064A;&#x0627; &#x0644;&#x0644;&#x0627;&#x0633;&#x0641;&#x0021;&#x002E;&#x002E;&#x002E; &#x0648;&#x0623;&#x0646;&#x0627; &#x0627;&#x0644;&#x062A;&#x064A; &#x062D;&#x0633;&#x0628;&#x062A; &#x0623;&#x0646;&#x0643; &#x062A;&#x0639;&#x0644;&#x0645;&#x062A; &#x0634;&#x064A;&#x0626;&#x0627;&#x002E;&#x002E;&#x002E;
+<!--l. 848--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0647;&#x0627; &#x0647;&#x0648; &#x062A;&#x0645;&#x0644;&#x064A;&#x0630;&#x0643;&#x0021;&#x002E;&#x002E; &#x0645;&#x062E;&#x0644;&#x0648;&#x0642;&#x0643;&#x0021;&#x002E;&#x002E;&#x002E; &#x0648;&#x0644;&#x0643;&#x0646;&#x0643; &#x0644;&#x0633;&#x062A; &#x0627;&#x0644;&#x0645;&#x0633;&#x0626;&#x0648;&#x0644;&#x0629;&#x002E;&#x002E;&#x0627;&#x0644;&#x0639;&#x062C;&#x064A;&#x0646;&#x0629; &#x0643;&#x0627;&#x0646;&#x062A;
+&#x0645;&#x063A;&#x0634;&#x0648;&#x0634;&#x0629;&#x0021;&#x002E;&#x002E;&#x002E;
+<!--l. 850--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0625;&#x062E;&#x0631;&#x0633;&#x0021;&#x002E;&#x002E;&#x002E; &#x0633;&#x0623;&#x0642;&#x062A;&#x0644;&#x0643; &#x0643;&#x0645;&#x0627; &#x064A;&#x0642;&#x062A;&#x0644; &#x0627;&#x0644;&#x0643;&#x0644;&#x0628;&#x0021;&#x002E;&#x002E;&#x002E;&#x0028;&#x064A;&#x062D;&#x0645;&#x0644; &#x0639;&#x0644;&#x064A;&#x0647; &#x0648;&#x064A;&#x0634;&#x062A;&#x0628;&#x0643;&#x0627;&#x0646;&#x002E;&#x002E;&#x002E;&#x0029;
+<!--l. 852--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0028;&#x0635;&#x0627;&#x0626;&#x062D;&#x0629; &#x0648;&#x0647;&#x064A; &#x062A;&#x0642;&#x0641; &#x0628;&#x064A;&#x0646;&#x0647;&#x0645;&#x0627;&#x0029; &#x0643;&#x0641;&#x0649;&#x0021;&#x002E;&#x002E;&#x002E; &#x064A;&#x0627;&#x062D;&#x0645;&#x062F;&#x0627;&#x0646;&#x0021;&#x002E;&#x002E;&#x002E; &#x0643;&#x0641;&#x0649;&#x0021;&#x002E;&#x002E;&#x002E; &#x0643;&#x0641;&#x0649;&#x0021;&#x002E;&#x002E;&#x002E;
+&#x0644;&#x0627;&#x0634;&#x0643; &#x0623;&#x0646;&#x0643; &#x0641;&#x0642;&#x062F;&#x062A; &#x0639;&#x0642;&#x0644;&#x0643;&#x0021;&#x002E;&#x002E;&#x002E;
+<!--l. 854--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0028;&#x0639;&#x0644;&#x0649; &#x0648;&#x0634;&#x0643; &#x0627;&#x0644;&#x0627;&#x0646;&#x0647;&#x064A;&#x0627;&#x0631;&#x0029; &#x0648;&#x0643;&#x064A;&#x0641; &#x0644;&#x0627; &#x0623;&#x0641;&#x0642;&#x062F; &#x0639;&#x0642;&#x0644;&#x064A;&#x061F;&#x002E;&#x002E;&#x002E; &#x0643;&#x064A;&#x0641; &#x0644;&#x0627; &#x0623;&#x0641;&#x0642;&#x062F;
+&#x0639;&#x0642;&#x0644;&#x064A; &#x064A;&#x0627;&#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631;&#x061F;&#x002E;&#x002E;&#x002E; &#x0643;&#x064A;&#x0641; &#x0644;&#x0627; &#x0623;&#x0641;&#x0642;&#x062F; &#x0639;&#x0642;&#x0644;&#x064A;&#x061F;&#x002E;&#x002E;&#x002E; &#x0625;&#x0646;&#x064A; &#x0628;&#x062F;&#x0648;&#x0646;&#x0643; &#x0641;&#x0642;&#x062F;&#x062A; &#x0643;&#x0644;
+&#x0634;&#x064A;&#x0621;&#x002E;&#x002E;&#x002E;
+
+<!--l. 856--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0028;&#x0645;&#x062A;&#x0631;&#x0641;&#x0642;&#x0629; &#x0628;&#x0647;&#x0029; &#x062A;&#x0639;&#x0627;&#x0644; &#x064A;&#x0627; &#x062D;&#x0645;&#x062F;&#x0627;&#x0646;&#x002E;&#x002E; &#x062A;&#x0639;&#x0627;&#x0644; &#x0647;&#x0646;&#x0627; &#x062A;&#x0647;&#x062F;&#x0623; &#x0642;&#x0644;&#x064A;&#x0644;&#x0627;&#x0021;&#x002E;&#x002E;&#x002E; &#x0627;&#x0647;&#x062F;&#x0623;&#x002E;&#x002E; &#x0627;&#x0647;&#x062F;&#x0623;&#x002E;&#x002E; &#x0627;&#x0647;&#x062F;&#x0623;&#x002E;&#x002E;&#x002E;
+&#x0028;&#x062A;&#x0646;&#x062A;&#x062D;&#x064A; &#x0628;&#x0647; &#x0646;&#x0627;&#x062D;&#x064A;&#x0629;&#x0029;&#x002E;&#x002E;&#x002E;
+<!--l. 858--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0028;&#x064A;&#x0643;&#x0631;&#x0631; &#x0648;&#x0647;&#x0648; &#x064A;&#x0636;&#x0639; &#x0631;&#x0623;&#x0633;&#x0647; &#x0628;&#x064A;&#x0646; &#x064A;&#x062F;&#x064A;&#x0647; &#x0648;&#x064A;&#x0643;&#x0627;&#x062F; &#x064A;&#x0628;&#x0643;&#x064A;&#x0029; &#x0622;&#x062E;&#x002E;&#x002E;&#x002E; &#x0622;&#x0647;&#x002E;&#x002E;&#x002E; &#x0641;&#x0642;&#x062F;&#x062A;
+&#x0643;&#x0644; &#x0634;&#x064A;&#x0621;&#x0021;&#x002E;&#x002E;&#x002E; &#x0643;&#x0644; &#x0634;&#x064A;&#x0621;&#x002E;&#x002E;&#x002E;
+<!--l. 860--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x062D;&#x0630;&#x0627;&#x0631; &#x0623;&#x0646; &#x062A;&#x0628;&#x0643;&#x064A; &#x0643;&#x0637;&#x0641;&#x0644;&#x002E;&#x002E;&#x002E;
+<!--l. 862--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0645;&#x0627; &#x0647;&#x0648; &#x0645;&#x0635;&#x064A;&#x0631;&#x064A; &#x0627;&#x0644;&#x0622;&#x0646; &#x0628;&#x062F;&#x0648;&#x0646;&#x0643;&#x002E;&#x002E; &#x0648;&#x0623;&#x0646;&#x0627; &#x0627;&#x0644;&#x0630;&#x064A; &#x0623;&#x0639;&#x062A;&#x062F;&#x062A; &#x0642;&#x0631;&#x0628;&#x0643; &#x0648;&#x062D;&#x062F;&#x064A;&#x062B;&#x0643;
+&#x0648;&#x0635;&#x0648;&#x062A;&#x0643; &#x0648;&#x0623;&#x0646;&#x062A; &#x0641;&#x064A; &#x062B;&#x064A;&#x0627;&#x0628; &#x062C;&#x0646;&#x062F;&#x064A;&#x0021;&#x002E;&#x002E;&#x002E; &#x0623;&#x0646;&#x0627; &#x0627;&#x0644;&#x0622;&#x0646; &#x0628;&#x0639;&#x0636; &#x0645;&#x0646;&#x0643;&#x002E;&#x002E;&#x002E; &#x0628;&#x0639;&#x0636; &#x0645;&#x0646; &#x0631;&#x0648;&#x062D;&#x0643;&#x002E;&#x002E;&#x002E;
+<!--l. 864--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0625;&#x0630;&#x0627; &#x0643;&#x0646;&#x062A; &#x062D;&#x0642;&#x0627; &#x0628;&#x0639;&#x0636;&#x0627; &#x0645;&#x0646;&#x064A; &#x0648;&#x0645;&#x0646; &#x0631;&#x0648;&#x062D;&#x064A;&#x060C; &#x0641;&#x0643;&#x0646; &#x0634;&#x062C;&#x0627;&#x0639;&#x0627;&#x0021;&#x002E;&#x002E;&#x002E; &#x062A;&#x062D;&#x0645;&#x0644; &#x0642;&#x062F;&#x0631;&#x0643;
+&#x0628;&#x0634;&#x062C;&#x0627;&#x0639;&#x0629;&#x0021;&#x002E;&#x002E;&#x002E;
+<!--l. 866--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0642;&#x062F;&#x0631;&#x064A;&#x0021; &#x0628;&#x0639;&#x064A;&#x062F;&#x0627; &#x0639;&#x0646;&#x0643;&#x061F;&#x002E;&#x002E;&#x002E;
+<!--l. 868--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0646;&#x0639;&#x0645;&#x002E;&#x002E;&#x002E; &#x0028;&#x0644;&#x062D;&#x0638;&#x0629; &#x0635;&#x0645;&#x062A;&#x0029;
+<!--l. 870--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0623;&#x062A;&#x062D;&#x0628;&#x064A;&#x0646; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0625;&#x0644;&#x0649; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x062D;&#x062F;&#x061F;&#x002E;&#x002E;&#x002E;
+<!--l. 872--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0625;&#x0646;&#x0647; &#x062E;&#x0637;&#x064A;&#x0628;&#x064A; &#x0627;&#x0644;&#x0630;&#x064A; &#x0627;&#x062E;&#x062A;&#x0631;&#x062A;&#x0647; &#x0628;&#x0646;&#x0641;&#x0633;&#x064A;&#x002E;&#x002E; &#x0623;&#x0644;&#x0645; &#x064A;&#x062E;&#x0628;&#x0631;&#x0648;&#x0643; &#x0628;&#x0630;&#x0644;&#x0643; &#x0641;&#x064A;
+&#x0627;&#x0644;&#x0645;&#x062F;&#x064A;&#x0646;&#x0629;&#x0021;&#x002E;&#x002E;&#x002E;
+<!--l. 874--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0028;&#x0645;&#x0637;&#x0631;&#x0642;&#x0627;&#x0029; &#x0646;&#x0639;&#x0645;&#x002E;&#x002E;&#x002E;
+<!--l. 876--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0623;&#x0648; &#x0644;&#x0645; &#x0646;&#x062C;&#x0626; &#x0625;&#x0644;&#x064A;&#x0643; &#x0645;&#x0646; &#x0627;&#x0644;&#x062E;&#x0644;&#x0627;&#x0621; &#x0645;&#x0639;&#x0627;&#x061F;&#x002E;&#x002E;&#x002E; &#x0623;&#x0648; &#x0644;&#x0645; &#x0646;&#x0639;&#x0634; &#x0623;&#x0646;&#x0627; &#x0648;&#x0647;&#x0648; &#x0645;&#x0639;&#x0627;&#x061F;&#x002E;&#x002E;&#x002E; &#x0627;&#x0644;&#x0645; &#x062A;&#x0633;&#x0623;&#x0644;
+&#x0646;&#x0641;&#x0633;&#x0643; &#x0643;&#x064A;&#x0641; &#x064A;&#x0645;&#x0643;&#x0646; &#x0623;&#x0646; &#x062A;&#x0646;&#x0641;&#x0631;&#x062F; &#x0627;&#x0645;&#x0631;&#x0623;&#x0629; &#x0628;&#x0631;&#x062C;&#x0644; &#x0625;&#x0644;&#x0627; &#x0623;&#x0646; &#x064A;&#x0643;&#x0648;&#x0646; &#x062E;&#x0637;&#x064A;&#x0628;&#x0627; &#x0644;&#x0647;&#x0627; &#x0623;&#x0645;&#x0627;&#x0645; &#x0627;&#xFDF2;
+&#x0648;&#x0627;&#x0644;&#x0646;&#x0627;&#x0633;&#x0021;&#x002E;&#x002E;&#x002E;
+<!--l. 878--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0646;&#x0639;&#x0645;&#x002E;&#x002E; &#x0648;&#x0644;&#x0643;&#x0646;&#x002E;&#x002E;&#x002E; &#x062E;&#x064A;&#x0644; &#x0625;&#x0644;&#x0649; &#x0645;&#x0639; &#x0630;&#x0644;&#x0643; &#x0623;&#x0646;&#x0643; &#x062A;&#x0645;&#x064A;&#x0644;&#x064A;&#x0646; &#x0625;&#x0644;&#x064A;&#x002E;
+<!--l. 880--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0625;&#x0646;&#x064A; &#x062D;&#x0642;&#x0627; &#x0627;&#x0643;&#x062A;&#x0634;&#x0641;&#x062A; &#x0641;&#x064A;&#x0643; &#x0637;&#x0628;&#x064A;&#x0639;&#x0629; &#x0637;&#x064A;&#x0628;&#x0629;&#x060C; &#x0648;&#x0625;&#x0646;&#x064A; &#x0641;&#x062E;&#x0648;&#x0631;&#x0629; &#x0628;&#x0630;&#x0644;&#x0643; &#x0645;&#x0624;&#x0645;&#x0646;&#x0629;
+&#x0623;&#x0646;&#x0643; &#x0633;&#x062A;&#x0635;&#x0646;&#x0639; &#x0634;&#x064A;&#x0626;&#x0627; &#x0644;&#x0628;&#x0644;&#x062F;&#x0643; &#x0648;&#x0634;&#x0639;&#x0628;&#x0643;&#x060C; &#x0648;&#x0642;&#x062F; &#x0642;&#x0644;&#x062A; &#x0643;&#x0644; &#x0647;&#x0630;&#x0627; &#x0644;&#x062E;&#x0637;&#x064A;&#x0628;&#x064A; &#x0642;&#x0645;&#x0631;&#x060C;
+&#x0648;&#x062A;&#x0633;&#x062A;&#x0637;&#x064A;&#x0639; &#x0623;&#x0646; &#x062A;&#x0633;&#x0623;&#x0644;&#x0647;&#x002E;&#x002E;&#x002E;
+<!--l. 882--><p class="indent" dir="rtl" > &#x0028;&#x0644;&#x0627; &#x064A;&#x0646;&#x0638;&#x0631; &#x0625;&#x0644;&#x0649; &#x0642;&#x0645;&#x0631;&#x0029;
+<!--l. 884--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0644;&#x0645;&#x0627;&#x0630;&#x0627; &#x0644;&#x0627; &#x062A;&#x0646;&#x0638;&#x0631; &#x0625;&#x0644;&#x064A;&#x0647;&#x061F;&#x002E;&#x002E; &#x0627;&#x0646;&#x0638;&#x0631; &#x0625;&#x0644;&#x064A;&#x0647; &#x0648;&#x0627;&#x0633;&#x0623;&#x0644;&#x0647;
+<!--l. 886--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0628;&#x0645;&#x0627;&#x0630;&#x0627; &#x0643;&#x0646;&#x0627; &#x0646;&#x062A;&#x062D;&#x062F;&#x062B; &#x0639;&#x0646;&#x0643;&#x060C; &#x0648;&#x0639;&#x0646; &#x062A;&#x0642;&#x062F;&#x064A;&#x0631;&#x0646;&#x0627; &#x0644;&#x0643;&#x060C; &#x0648;&#x0639;&#x0646; &#x0622;&#x0645;&#x0627;&#x0644;&#x0646;&#x0627; &#x0641;&#x064A;&#x0643;&#x002E;&#x002E;&#x002E;
+<!--l. 888--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0644;&#x0627; &#x0641;&#x0627;&#x0626;&#x062F;&#x0629;&#x002E;&#x002E; &#x0625;&#x0646;&#x0647; &#x0644;&#x0646; &#x064A;&#x0646;&#x0638;&#x0631; &#x0625;&#x0644;&#x064A;&#x002E;&#x002E;&#x002E; &#x0623;&#x0646;&#x0627; &#x0635;&#x0639;&#x0644;&#x0648;&#x0643;&#x002E;&#x002E;&#x002E;
+<!--l. 890--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0648;&#x0644;&#x0643;&#x0646;&#x0643; &#x0627;&#x0646;&#x062A;&#x0635;&#x0631;&#x062A;&#x0021;&#x002E;&#x002E;&#x002E; &#x0028;&#x064A;&#x0646;&#x0647;&#x0636;&#x0029; &#x0648;&#x062F;&#x0627;&#x0639;&#x0627;&#x0021;&#x002E;&#x002E;&#x002E;
+<!--l. 892--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0644;&#x0627;&#x062A;&#x0646;&#x0633; &#x064A;&#x0627;&#x062D;&#x0645;&#x062F;&#x0627;&#x0646; &#x0623;&#x0646;&#x0643; &#x0643;&#x0645;&#x0627; &#x062A;&#x0642;&#x0648;&#x0644;&#x003A; &#x062A;&#x062D;&#x0645;&#x0644; &#x062C;&#x0632;&#x0621;&#x0627; &#x0645;&#x0646; &#x0631;&#x0648;&#x062D;&#x064A;&#x0021;&#x002E;&#x002E;&#x002E; &#x0648;&#x0647;&#x0630;&#x0627;
+&#x064A;&#x0642;&#x062A;&#x0636;&#x064A;&#x0643; &#x0623;&#x0646; &#x062A;&#x0643;&#x0648;&#x0646; &#x062F;&#x0627;&#x0626;&#x0645;&#x0627; &#x062B;&#x0627;&#x0626;&#x0631;&#x0627; &#x0645;&#x0635;&#x0644;&#x062D;&#x0627;&#x0021;&#x002E;&#x002E;&#x002E;
+<!--l. 894--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0623;&#x0639;&#x0631;&#x0641; &#x062C;&#x064A;&#x062F;&#x0627; &#x0645;&#x0627; &#x0623;&#x062D;&#x0645;&#x0644; &#x0028;&#x0641;&#x062C;&#x0623;&#x0629; &#x0628;&#x0639;&#x0646;&#x0641;&#x0029; &#x0648;&#x0644;&#x0643;&#x0646; &#x0647;&#x0630;&#x0627; &#x0627;&#x0644;&#x0631;&#x062C;&#x0644; &#x0645;&#x0627;&#x0630;&#x0627; &#x064A;&#x062D;&#x0645;&#x0644;
+&#x0645;&#x0646;&#x0643;&#x061F;&#x002E;&#x002E;&#x002E;
+<!--l. 896--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0647;&#x0648; &#x0627;&#x0644;&#x0630;&#x064A; &#x0635;&#x0646;&#x0639;&#x0646;&#x064A;&#x002E;&#x002E;&#x002E;
+<!--l. 898--><p class="indent" dir="rtl" > &#x0642;&#x0645;&#x0631; &#x003A; &#x0648;&#x0647;&#x064A; &#x0627;&#x0644;&#x062A;&#x064A; &#x0635;&#x0646;&#x0639;&#x062A; &#x0641;&#x064A; &#x0642;&#x0644;&#x0628;&#x064A; &#x0627;&#x0644;&#x062D;&#x0628;&#x002E;&#x002E;&#x002E;
+<!--l. 900--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0646;&#x0639;&#x0645;&#x002E;&#x002E; &#x0643;&#x0644; &#x0645;&#x0646;&#x0627; &#x0635;&#x0646;&#x0639; &#x0627;&#x0644;&#x0622;&#x062E;&#x0631;&#x002E;&#x002E; &#x0643;&#x0644; &#x0645;&#x0646;&#x0627; &#x0635;&#x0627;&#x0646;&#x0639; &#x0645;&#x0635;&#x0646;&#x0648;&#x0639;&#x060C; &#x062E;&#x0627;&#x0644;&#x0642; &#x0648;&#x0645;&#x062E;&#x0644;&#x0648;&#x0642;&#x060C; &#x0641;&#x064A;
+&#x0646;&#x0641;&#x0633; &#x0627;&#x0644;&#x0648;&#x0642;&#x062A;&#x002E;&#x002E; &#x0644;&#x0630;&#x0644;&#x0643; &#x0643;&#x0627;&#x0646; &#x0627;&#x0646;&#x062F;&#x0645;&#x0627;&#x062C;&#x0646;&#x0627; &#x0643;&#x0627;&#x0645;&#x0644;&#x0627;&#x002E;&#x002E; &#x0641;&#x0647;&#x0645;&#x062A; &#x0627;&#x0644;&#x0622;&#x0646; &#x064A;&#x0627;&#x062D;&#x0645;&#x062F;&#x0627;&#x0646;&#x061F;&#x002E;&#x002E;&#x002E;
+<!--l. 902--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0646;&#x0639;&#x0645; &#x002E;&#x002E;&#x002E; &#x0648;&#x0647;&#x0646;&#x064A;&#x0626;&#x0627; &#x0644;&#x0643;&#x0645;&#x0627;&#x002E;&#x002E; &#x0648;&#x062F;&#x0627;&#x0639;&#x0627;&#x0021;&#x002E;&#x002E;&#x002E;
+<!--l. 904--><p class="indent" dir="rtl" > &#x0634;&#x0645;&#x0633; &#x003A; &#x0644;&#x064A;&#x0643;&#x0646; &#x0627;&#x0644;&#x062A;&#x0648;&#x0641;&#x064A;&#x0642; &#x062D;&#x0644;&#x064A;&#x0641;&#x0643; &#x064A;&#x0627;&#x062D;&#x0645;&#x062F;&#x0627;&#x0646;&#x0021;&#x002E;&#x002E;&#x002E; &#x0648;&#x0631;&#x0628;&#x0645;&#x0627; &#x0632;&#x0631;&#x0646;&#x0627;&#x0643; &#x064A;&#x0648;&#x0645;&#x0627; &#x0623;&#x0646;&#x0627; &#x0648;&#x0632;&#x0648;&#x062C;&#x064A;&#x002E;&#x002E;
+&#x0644;&#x0646;&#x0647;&#x0646;&#x0626;&#x0643; &#x0628;&#x0623;&#x062F;&#x0627;&#x0621; &#x0631;&#x0633;&#x0627;&#x0644;&#x062A;&#x0643;&#x002E;&#x002E;&#x002E;
+<!--l. 906--><p class="indent" dir="rtl" > &#x0627;&#x0644;&#x0623;&#x0645;&#x064A;&#x0631; &#x003A; &#x0642;&#x0628;&#x0644; &#x0623;&#x0646; &#x0623;&#x0630;&#x0647;&#x0628; &#x002E;&#x002E; &#x064A;&#x0642;&#x062A;&#x0636;&#x064A;&#x0646;&#x064A; &#x0627;&#x0644;&#x0625;&#x0646;&#x0635;&#x0627;&#x0641; &#x0648;&#x0627;&#x0644;&#x0636;&#x0645;&#x064A;&#x0631; &#x0623;&#x0646; &#x0623;&#x062E;&#x0628;&#x0631;&#x0643;&#x0645;&#x0627; &#x0628;&#x0634;&#x064A;&#x0621;&#x002E;&#x002E;
+&#x0627;&#x0644;&#x0634;&#x0639;&#x0628; &#x0641;&#x064A; &#x0628;&#x0644;&#x062F;&#x0643; &#x064A;&#x0627; &#x0634;&#x0645;&#x0633; &#x0627;&#x0644;&#x0646;&#x0647;&#x0627;&#x0631; &#x064A;&#x0642;&#x062F;&#x0633;&#x0643; &#x062A;&#x0642;&#x062F;&#x064A;&#x0633;&#x0627;&#x060C; &#x0644;&#x0623;&#x0646;&#x0643; &#x062A;&#x0631;&#x0643;&#x062A; &#x0642;&#x0635;&#x0631;&#x0643;
+&#x0648;&#x0627;&#x062E;&#x062A;&#x0631;&#x062A; &#x0634;&#x062E;&#x0635;&#x0627; &#x0628;&#x0633;&#x064A;&#x0637;&#x0627; &#x0628;&#x064A;&#x0646; &#x0627;&#x0644;&#x0646;&#x0627;&#x0633;&#x002E;&#x002E; &#x0648;&#x0633;&#x062A;&#x0631;&#x064A;&#x0646; &#x0628;&#x0639;&#x064A;&#x0646;&#x0643; &#x0643;&#x064A;&#x0641; &#x064A;&#x0644;&#x062A;&#x0641; &#x062D;&#x0648;&#x0644;&#x0643;&#x0645;&#x0627;
+&#x0627;&#x0644;&#x0634;&#x0639;&#x0628; &#x0639;&#x0646;&#x062F;&#x0645;&#x0627; &#x062A;&#x062F;&#x062E;&#x0644;&#x0627;&#x0646; &#x0645;&#x0639;&#x0627; &#x0627;&#x0644;&#x0645;&#x062F;&#x064A;&#x0646;&#x0629;&#x002E;&#x002E;&#x002E;
+<!--l. 908--><p class="indent" dir="rtl" > &#x0028;&#x064A;&#x062E;&#x0631;&#x062C; &#x062D;&#x0632;&#x064A;&#x0646;&#x0627;&#x002E;&#x002E; &#x0648;&#x064A;&#x062A;&#x0631;&#x0643; &#x0634;&#x0645;&#x0633; &#x0648;&#x0642;&#x0645;&#x0631; &#x0648;&#x0642;&#x062F; &#x062A;&#x0644;&#x0627;&#x0635;&#x0642;&#x0627;&#x002E;&#x002E; &#x0648;&#x0623;&#x062E;&#x0630;&#x0627; &#x064A;&#x0634;&#x064A;&#x0639;&#x0627;&#x0646;&#x0647;
+&#x0628;&#x0623;&#x0646;&#x0638;&#x0627;&#x0631;&#x0647;&#x0645;&#x0627;&#x002E;&#x002E; &#x0625;&#x0644;&#x0649; &#x0623;&#x0646; &#x064A;&#x062E;&#x062A;&#x0641;&#x064A; &#x002E;&#x002E; &#x0648;&#x064A;&#x0647;&#x0628;&#x0637; &#x0627;&#x0644;&#x0633;&#x062A;&#x0627;&#x0631; &#x0648;&#x0647;&#x0645;&#x0627; &#x0645;&#x062A;&#x0644;&#x0627;&#x0635;&#x0642;&#x0627;&#x0646;&#x0029;&#x002E;
+<div class="center"
+>
+<!--l. 910--><p class="noindent" dir="rtl" >
+
+<!--l. 911--><p class="noindent" dir="rtl" >&#x0028;&#x0633;&#x062A;&#x0627;&#x0631;&#x0029;</div>
+
+</body></html>
+
+
+
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.pdf b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.pdf
new file mode 100644
index 0000000000..b2dab28836
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.pdf
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.tex b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.tex
new file mode 100644
index 0000000000..d027a26e44
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/samplebook.tex
@@ -0,0 +1,929 @@
+\listfiles
+%&LaTeX
+%
+% Arabi Package
+%
+% (c) Youssef JABRI
+% \'Ecole nationale des sciences appliqu\'ees,
+% Box 696, Oujda,
+% Morocco
+% yjabri@ensa.univ-oujda.ac.ma
+%
+% Last edited: 06-12-2006
+%
+\documentclass[a4paper]{book}%
+\usepackage{cmap}
+
+\usepackage[utf8,cp1256]{inputenc}%arawin2,8859-6
+\usepackage[LFE,LAE,OT1]{fontenc}%
+\usepackage[farsi,english,arabic]{babel}%
+\usepackage{poetry}
+\Novocalize
+
+\pagestyle{plain}
+
+
+\begin{document}
+%\selectlanguage{arabic} %the default
+
+
+\title{%
+ %
+}
+
+\author{ }
+
+\maketitle
+\tableofcontents
+
+
+
+
+\chapter{ }
+
+ ѡ
+(\I{1898}
+ -
+ \I{1987}
+ ).
+
+
+
+ ɺ : (\I{1933}) - - : (\I{1933}). ǡ \I{1919} .
+
+ . ɡ (\I{1924} - \I{1928} ) ɡ - - . ( \I{1933} ) ( \I{1938}) ( \I{1955} ) ( \I{1956} ).
+
+ ɡ : [
+\textit{ . } ]. - - ɡ - - . . .
+
+ ɡ ѡ . ʡ .
+
+ \I{100} \I{62} . : ( \I{1932} ) ( \I{1934} ) ( \I{1949} ) ( \I{1960} ) ( \I{1962} ) \I{1965}.
+
+
+
+\chapter{}
+
+ . . . . . . . . . . . . . :
+
+ !
+
+ . . . . . . . .
+
+\begin{flushright}
+
+\end{flushright}
+
+
+%\part{ }
+
+\chapter{ }
+
+ . . . .
+
+ : ! . .
+
+ : \llah{} ! . .
+
+ : ! \llah{} ! . . . . : . . \allah{} ! . .
+
+ : ! . .
+
+ : . . . . \llah{} ! . .
+
+ : \allah{} . .
+
+ : . .
+
+ : !
+
+ : . . ! . .
+
+ : . .
+
+ : . . . .
+
+ : . . . . . .
+
+ : . .
+
+ : : . . . .
+
+ : . . ! . .
+
+ : .
+
+: . . ! . . ! . .
+
+ : . . . .
+
+ : . .
+
+ : . . ! . .
+
+: . . . . . . . . . . . . . .
+
+ : ! . . . . . .
+
+ : . . .
+
+ : ! . .
+
+ : ! . . ! . .
+
+ : . .
+
+ : ! . .
+
+ : . .
+
+ : ! . .
+
+ : . . : . . . .
+
+ : . . . . . .
+
+ : . .
+
+ : . . . .
+
+ : . .
+
+( ʡ )
+
+ : .. .. ..
+
+ : . . . . . .
+
+ : . . . .
+
+ : . . . .
+
+ : ! . .
+
+ : . .
+
+ : ( ) . .
+
+ : . . . . .
+
+ : . .
+
+ : . . . .
+
+ : . .
+
+ : .. . . . . . ! . .
+
+ : ( ) . . . . . . . . . .
+
+ : ǿ . .
+
+ : . . . .
+
+ : . . . . .
+
+ : . . . . . . . . . . . .
+
+ : . .
+
+ : . . . . . . . . . .
+
+ : . . . .
+
+ : . . . . . .
+
+ : . .
+
+ : . . . . . .
+
+ : ! . . . .
+
+ : . . . . . .
+
+ : . .
+
+ : . . . .
+
+ : . . ڡ ! . . . .
+
+ : . .
+
+ : : . . . .
+
+ : . . . .
+
+ : . . . .
+
+ : . .
+
+ : : . .
+
+ : . . . . .
+
+ : . . .
+
+ : ߿ . . ! . .
+
+ : . . .
+
+ : ! . .
+
+ : . . . . . . .
+
+: . . .
+
+ : . .
+
+ : . . . . . .
+
+ : . .
+
+ : . . . . . .
+
+ : . .
+
+ : . .
+
+ : ! . . .
+
+ : . . . . . .
+
+ : . .
+
+ : . .
+
+ : . .
+
+ : . .
+
+ : . .
+
+ : . . . . . . .
+
+ : . .
+
+ : . . . . . . . . . . .
+
+ : . .
+
+ : . . . ߡ . .
+
+ : . . . . . .
+
+ : . .
+
+ : . . .
+
+ : . . . . . .
+
+ : . . .
+
+ : ! . . . . .
+
+ : ! . .
+
+ : . . .
+
+ : . . .
+
+ : . . .
+
+ : . . .
+
+ : . .
+
+ : . . .
+
+ : . . .
+
+ : . . .
+
+ : . . . ! . .
+
+ : . . .
+
+ : . . . . . . . . . . . . . . . . . . . \allah{} . . . . . . . . . . . . .
+
+ : . . . . .
+
+ : . . . .
+
+ : . . .
+
+ : . . .
+
+ : . . . . . .
+
+ : ! . .
+
+ : . . .
+
+ : ! . . .
+
+ : . . . : ! . . .
+
+ : : ! . . .
+
+\begin{center}
+( )
+\end{center}
+
+
+%\selectlanguage{english}
+%
+%\section{\textLR{aealmateen}}
+%\font\x=aealmateen \ShowFont\x
+%
+%
+%
+%
+%%\backmatter
+%\selectlanguage{arabic}
+
+\chapter{ }
+
+
+ . . . . . . . .
+
+ : . . .
+
+ : . . .
+
+ : . . . . . .
+
+ : . . . . . . . .
+
+ : . . .
+
+ : . . . . .
+
+ : ( ) . . . . . .
+
+ : . . . . .
+
+ : ! . .
+
+ : ! . . .
+
+ : . .
+
+ : ! . . .
+
+ : . . .
+
+ : . . . . . . ..
+
+ : . . . . . .
+
+ : . . .
+
+ : . . . . .
+
+ : . . . .
+
+ : . . . .
+
+ : . .
+
+ : . . .
+
+ : ! . . .
+
+ : . .
+
+ : . .
+
+( )
+
+ : . .
+
+ : . .
+
+ : ( ) ! . .
+
+ : ( ) ! . .
+
+ : ! . .
+
+ : ( ) . .
+
+ : . . .
+
+ : . .
+
+ : . .
+
+ : . . . . . .
+
+ : . .
+
+ : . . .
+
+ : . .
+
+ : . . .
+
+ : : . . .
+
+ : . . . . . . .
+
+ : . .
+
+ : . . . . .
+
+ : . . .
+
+ : . . . . . . . . . . . .
+
+ : . . . . .
+
+ : . . ! . .
+
+ : . . .
+
+ : . .
+
+ : . .
+
+ : ڡ . .
+
+ : \allah{} ! . .
+
+ : \allah{}! . .
+
+ : \allah{} ! . . ! . . . . . .
+
+ : . . . . . . . . . . . .
+
+ : ! . . .
+
+ : . . . . .
+
+ : . .
+
+ : . . . . . .
+
+ : ! . .
+
+ : . .
+
+ : ! . . .
+
+ : ! . .
+
+ : ! . . .
+
+ : . . . ! . .
+
+ : ( ) . .
+
+ : \allah{} ! . .
+
+ : ( ) . . . ! . .
+
+ : . .
+
+ : . .
+
+ : . . .
+
+ : . . . . . . ( .
+
+ . . ).
+
+ : ( ) . .
+
+ : . . . .
+
+ : . . . . . ! . .
+
+ : . .
+
+ : ! . . .
+
+ : . . ! . .
+
+ : . . . . .
+
+ : . . .
+
+ : . . . ! . .
+
+ : ! . . .
+
+ : . . . . . . . . . ! . .
+
+ : . . . . . . . .
+
+ : . . . . . . .
+
+ :
+
+ : . . .
+
+ : . .
+
+ : . . .
+
+ : . . . . . .
+
+ : . . .
+
+( . . . . . )
+
+ : . .
+
+ : . . ! . .
+
+ : ( ) ! . . .
+
+ : . .
+
+ : . . .
+
+ : . . .
+
+ : ! . .
+
+ : . . . ! . .
+
+ : . .
+
+ : . .
+
+ : . . .
+
+ : . . .
+
+ : .
+
+ : . .
+
+ : . .
+
+ : ! . .
+
+ : . . . . ! . . .
+
+ : . .
+
+ : . . . . .
+
+ : . . . . . . . . . . . . . . . . . . . . .
+
+ : ! . . .
+
+ : . . ! . .
+
+ : . . .
+
+ : ! . . .
+
+ : . . . ! . .
+
+ : . . . . .
+
+ : . . .
+
+ : ! . .
+
+ : . . . . .
+
+ : . . .
+
+ : . .
+
+ : ! . . .
+
+ : ! . . .
+
+ : . . . . . . ! . . . ! .
+
+ : ! . .
+
+ : . . . ! . . . . .
+
+ : ! . . .
+
+ : . . .
+
+ : . .
+
+ : ! . . . .
+
+ : . . . . . .
+
+ : . . . . .
+
+ : . . .
+
+ : . . .
+
+ : ( ) ! . . .
+
+ : ! . .
+
+ : . .
+
+ : ( ) . . ! . .
+
+ : . .
+
+ : ! . .
+
+ : . . . ! . . . \allah{} ! . . . ( . . . )
+
+ : . . .
+
+ : . . .
+
+ : . . . . . . : . . .
+
+ : . . .
+
+ : . . .
+
+ : . . . !. . .
+
+: . . .
+
+ : ! . .
+
+( . . . )
+
+ : . .
+
+ : . . . . .
+
+ : . .
+
+ : . . .
+
+ : . .
+
+ : . .
+
+ : ( ) ! . . .
+
+ : !
+
+ : . .
+
+ : . . ! . . . .
+
+ : . .
+
+ : ! . .
+
+ : . . !. .
+
+ : . .
+
+ : ! . . . . . : . . . . .
+
+ : ! . . . . . .
+
+ : . . . . .
+
+ : . .
+
+ : . . . . . . . . . : . . .
+
+ : . . .
+
+ : . . . . . ! . .
+
+ : ( ) \allah{} !
+
+ : \allah{} ! . . . .
+
+ : ! . . .
+
+ : ! . . .
+
+ : . . .
+
+ : . . . . . .
+
+ : ! . . .
+
+ : ! . . .
+
+ : ( ) . .
+
+ : . . .
+
+ : . . .
+
+ : .
+
+ : ! . . .
+
+ : . . . . .
+
+ : ( ) ! . . .
+
+ : ! . . . ! . .
+
+ : . .
+
+ : ! . . .
+
+ : . .
+
+ : ѿ . . ! . . .
+
+ : . .
+
+ : . .
+
+ : . . ! . . ߡ . .
+
+ : . . . . . . . . . .
+
+ : . . .
+
+ : . . . . . ! . . .
+
+ : . .
+
+ : . . . . . . . . . . . . . . . .
+
+ : . . . .
+
+ : ! . .
+
+ : . .
+
+ : . .
+
+ : . . .
+
+ : . . ! . . . ! . . .
+
+ : ! . .
+
+ : ! . .
+
+ : . .
+
+ : . . . . . .
+
+ : . . .
+
+ : ! . .
+
+ : . . .
+
+ : . . . . ! . .
+
+ : ʿ..
+
+ : . . . . .. ! . .
+
+ : ! . .
+
+ : Ͽ! . . !..
+
+ : ʿ.
+
+ : !..
+
+ : ! ..
+
+ : ..
+
+ : .. .. !..
+
+ : !..
+
+ : . . . . .
+
+ : . . ! . .
+
+\chapter*{ }
+
+
+ .. :
+
+ : ... .. ... .. ...
+
+ : .. .. ( ) .. ...
+
+ : ( ) ...
+
+ : .. \allah{}!... ( ...)
+
+ : ...
+
+ : ..
+
+ : ..
+
+ : .. !...
+
+ : ...
+
+ : ( ) ... ...
+
+ : () ڿ...
+
+ : ...
+
+ : ʿ...
+
+ : ...
+
+ : ...
+
+ : ...
+
+ : ɿ...
+
+ : .. !... ݡ ݡ !...
+
+ : !... ...
+
+ : !.. !... .. !...
+
+ : !... !...( ...)
+
+ : ( ) !... !... !... !... !...
+
+ : ( ) ... ѿ... ... ...
+
+ : ( ) .. !... .. .. ... ( )...
+
+ : ( ) ... ... !... ...
+
+ : ...
+
+ : .. !... ... ...
+
+ : !... !...
+
+ : ! ߿...
+
+ : ... ( )
+
+ : Ͽ...
+
+ : .. !...
+
+ : () ...
+
+ : ǿ... ǿ... \allah{} !...
+
+ : .. ... .
+
+ : ɡ ߡ ѡ ...
+
+( )
+
+ : ..
+
+ : ߡ ߡ ...
+
+ : .. ... ...
+
+ : !... () !...
+
+ : : !... !...
+
+ : ( ) ߿...
+
+ : ...
+
+ : ...
+
+ : .. .. ڡ ޡ .. .. ...
+
+ : ... .. !...
+
+ : !... .. ...
+
+ : .. .. ǡ .. ...
+
+( .. .. .. .. ).
+
+\begin{center}
+()
+\end{center}
+
+
+
+
+
+
+
+
+
+
+
+
+
+\end{document}
+
+
+
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/test_beamer.pdf b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/test_beamer.pdf
new file mode 100644
index 0000000000..3c69ac1532
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/test_beamer.pdf
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/testplaintex.pdf b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/testplaintex.pdf
new file mode 100644
index 0000000000..7d63e47723
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/testplaintex.pdf
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/testplaintex.tex b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/testplaintex.tex
new file mode 100644
index 0000000000..d573e6e74c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/testplaintex.tex
@@ -0,0 +1,144 @@
+% Arabi system example with plain TeX
+% (c) Youssef JABRI
+%
+%===================================================
+% Adapted for use with the Arabi system
+% The text used was found some where on the web
+% and reflects its author view, used here only to show
+% the system should be used
+%===================================================
+%
+\TeXXeTstate=1
+
+\nopagenumbers
+\chardef \atcode = \the \catcode `\@
+\catcode `\@ = 11
+
+
+
+
+\def\xspace{\futurelet\@let@token\@xspace}
+\def\@xspace{%
+% \ifx\@let@token\bgroup\space\else
+% \ifx\@let@token\egroup\space\else
+% \ifx\@let@token\/\space\else
+% \ifx\@let@token\ \space\else
+ \ifx\@let@token~\space\else
+ \ifx\@let@token.\space\else
+ \ifx\@let@token!\space\else
+ \ifx\@let@token,\space\else
+ \ifx\@let@token:\space\else
+ \ifx\@let@token;\space\else
+ \ifx\@let@token?\space\else
+ \ifx\@let@token/\space\else
+ \ifx\@let@token'\space\else
+ \ifx\@let@token)\space\else
+ \ifx\@let@token-\space\else
+ \ifx\@let@token\@xobeysp\space\else
+ \ifx\@let@token\space\space\else
+ \ifx\@let@token\@sptoken\space\else%
+\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}%\fi\fi\fi\fi
+
+\def\xspace{\bgroup\obeyspaces\obeylines\futurelet\next\Xspace}%
+ \def\xspaces{ \ignorespaces}%
+ {\obeylines\obeyspaces%
+ \gdef\Xspace{\let^^M\xspaces\let \xspaces\expandafter\egroup}}
+
+\catcode `\@ = \the \atcode
+
+
+\catcode`\=13 \def{\unskip~, } %\char186 %
+\catcode`\=13 \def{\unskip~? } %\char186 %
+%\catcode`186=13 \def{;} %\char186 %
+%\catcode`\=13 \def{,} %\char186 %
+%\catcode`\=13 \def{,} %\char186 %
+%\catcode`\=13 \def{,} %\char186 %
+
+
+
+
+
+\catcode`\=13 \chardef = 186 %\char186 %
+\catcode`\=13 \chardef = 6 %
+\catcode`\=13 \chardef = 2 %
+\catcode`\=13 \chardef = 165 %
+\catcode`\=13 \chardef = 4 %
+\catcode`\=13 \chardef = 183 %
+\catcode`\=13 \chardef = 65 %
+\catcode`\=13 \chardef = 98 %
+\catcode`\=13 \chardef = 84 %
+\catcode`\=13 \chardef = 116 %
+\catcode`\=13 \chardef = 16 %
+\catcode`\=13 \chardef = 20 %
+\catcode`\=13 \chardef = 24 %
+\catcode`\=13 \chardef = 28 %
+\catcode`\=13 \chardef = 100 %
+\catcode`\=13 \chardef = 64 %
+\catcode`\=13 \chardef = 114 %
+\catcode`\=13 \chardef = 122 %
+\catcode`\=13 \chardef = 115 %
+\catcode`\=13 \chardef = 75 %
+\catcode`\=13 \chardef = 79 %
+\catcode`\=13 \chardef = 83 %
+\catcode`\=13 \chardef = 87 %
+\catcode`\=13 \chardef = 92 %
+\catcode`\=13 \chardef = 96 %
+\catcode`\=13 \chardef = 140 %
+\catcode`\=13 \chardef = 254 %
+\catcode`\=13 \chardef = 102 %
+\catcode`\=13 \chardef = 113 %
+\catcode`\=13 \chardef = 107 %
+\catcode`\=13 \chardef = 108 %
+\catcode`\=13 \chardef = 109 %
+\catcode`\=13 \chardef = 110 %
+\catcode`\=13 \chardef = 104 %
+\catcode`\=13 \chardef = 119 %
+\catcode`\=13 \chardef = 121 %
+\catcode`\=13 \chardef = 89 %
+%
+\catcode`\=13 \chardef = 190 %
+\catcode`\=13 \chardef = 191 %
+\catcode`\=13 \chardef = 192 %
+%
+\catcode`\=13 \chardef = 97 %
+\catcode`\=13 \chardef = 117 %
+\catcode`\=13 \chardef = 105 %
+\catcode`\=13 \chardef = 34 %
+\catcode`\=13 \chardef = 204 %
+
+% Then, Vowels
+%
+%\DeclareTextSymbol{\shadda}{LAE}{204}%{164}
+%
+%\DeclareTextSymbol{\shaddafatha}{LAE}{201}%169
+%\DeclareTextSymbol{\shaddadamma}{LAE}{202}%170
+%\DeclareTextSymbol{\shaddakasra}{LAE}{203}%171
+%
+\input shapepar.sty
+\input mosq.def
+
+\font \tr = TraditionalArabic at 12 pt
+\font \andal = andlso at 10 pt
+%\shapepar {\heartshape}
+\shapepar {\circleshape}
+%\shapepar{\mosqdoor}%
+%{\bf The \TeX\ Showcase.}
+\beginR
+\tr%\obeyspaces
+%- * * * -
+ (~ ~) ǡ (~ ~) (~~) ɡ (~ ~) (~ ~) .
+%
+ : ~.~. (~~) (~~) (~~) (~~) (~ ~) (~~) (~~) (~~) (~~) (~~) ~) .
+%
+ (~ ~) (~~) : ~.
+%
+ ǡ .
+\andal
+
+%
+%$\heartsuit$
+%***
+\endR
+%
+\end
+
diff --git a/language/arabic/arabi/arabi/texmf/doc/latex/arabi/user_guide.pdf b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/user_guide.pdf
new file mode 100644
index 0000000000..fd04b4f4af
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/doc/latex/arabi/user_guide.pdf
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/dvips/arabi/ararabeyes.enc b/language/arabic/arabi/arabi/texmf/dvips/arabi/ararabeyes.enc
new file mode 100644
index 0000000000..c72f6af693
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/dvips/arabi/ararabeyes.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/ArabeyesArabicEncoding [ % now 256 chars follow
+% 0
+ /alefisolated /alefwithhamzaaboveisolated /alefwithhamzaabovefinal /alefwithhamzabelowisolated
+% 4
+ /alefwithhamzabelowfinal /alefwithmaddaaboveisolated /alefwithmaddaabovefinal /behinitial
+% 8
+ /.notdef /behfinal /behisolated /tehinitial
+% 12
+ /.notdef /tehfinal /tehisolated /thehinitial
+% 16
+ /thehmedial /thehfinal /thehisolated /jeeminitial
+% 20
+ /jeemmedial /jeemfinal /jeemisolated /hahinitial
+% 24
+ /hahmedial /hahfinal /hahisolated /khahinitial
+% 28
+ /khahmedial /khahfinal /khahisolated /.notdef
+% 32
+ /dal /exclam /sukun /numbersign %OK
+% 36
+ /dollar /arabicpercentsign /ampersand /quotesingle %ok
+% 40 (below) parentheses were refelcted, asterisk replaced with arabicfivepointedstar
+ /parenright /parenleft /arabicfivepointedstar /quotedbl %
+% 44 we should get an "arabicslash" in 4th position, we use backslash
+ /arabiccomma /hyphenminus /period /backslash %
+% 48
+ /arabicindicdigitzero /arabicindicdigitone /arabicindicdigittwo /arabicindicdigitthree
+% 52
+ /arabicindicdigitfour /arabicindicdigitfive /arabicindicdigitsix /arabicindicdigitseven
+% 56
+ /arabicindicdigiteight /arabicindicdigitnine /colon /arabicsemicolon % does "colon" look ok ?
+% 60
+ /guillemotright /.notdef /guillemotleft /arabicquestionmark
+% 64
+ /thalfinal /aleffinal /.notdef /rehisolated
+% 68
+ /.nodef /zainisolated /seeninitial /.notdef
+% 72
+ /seenfinal /yehmedial /sheeninitial /sheenmedial
+% 76
+ /sheenfinal /sheenisolated /.notdef /sadmedial
+% 80
+ /sadfinal /sadisolated /dadinitial /dadmedial
+% 84
+ /tehmarbutafinal /wawfinal /tahinitial /tahmedial
+% 88
+ /tahfinal /alefmaksurafinal /zahinitial /ornaterightparenthesis
+% 92
+ /zahmedial /ornateleftparenthesis /zahfinal /zahisolated
+% 96
+ /ainmedial /fathah /behmedial /.notdef
+% 100
+ /dalfinal /.notdef /fehmedial /.notdef
+% 104
+ /hehmedial /kasrah /.notdef /kafmedial
+% 108
+ /lammedial /meemmedial /noonmedial /.notdef
+% 112
+ /pehmedial /qafmedial /rehfinal /seenmedial
+% 116
+ /tehmedial /dammah /.notdef /wawfinal
+% 120
+ /seenisolated /yehmedial /zainfinal /dadfinal
+% 124
+ /dadisolated /sadinitial /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /aininitial /ainfinal /ainisolated /ghaininitial
+% 140
+ /ghainmedial /ghainfinal /ghainisolated /fehinitial
+% 144
+ /fehfinal /fehisolated /qafinitial /qaffinal
+% 148
+ /qafisolated /kafinitial /arabickaffinal /kafisolated
+% 152
+ /laminitial /lamfinal /lamisolated /meeminitial
+% 156
+ /meemfinal /meemisolated /nooninitial /noonfinal
+% 160
+ /noonisolated /hehinitial /hehfinal /hehisolated
+% 164
+ /wawisolated /wawwithhamzaabovefinal /wawwithhamzaaboveisolated /yehinitial
+% 168
+ /yehfinal /yehisolated /tahisolated /alefmaksuraisolated
+% 172
+ /.notdef /tehmarbutaisolated /lamwithaleffinal /lamwithalefisolated
+% 176 2nd with dd!!!!
+ /lamwithalefhamzaabovefinal /lamwithalefhamzaaboveisolatedd
+ /lamwithalefhamzabelowfinal /lamwithalefhamzabelowisolated
+% 180 2nd with dd!!!!
+ /lamwithalefmaddaabovefinal /lamwithalefmaddaaboveisolatedd
+ /yehwithhamzaaboveinitial /yehwithhamzaabovemedial
+% 184
+ /yehwithhamzaabovefinal /yehwithhamzaaboveisolated
+ /hamzaisolated /.notdef
+% 188
+ /.notdef /.notdef /fathatan /dammatan
+% 192
+ /kasratan /fathah /dammah /kasrah
+% 196
+ /shaddah /sukun /.notdef /.notdef
+% 200
+ /.notdef /.notdef /.notdef /.notdef
+% 204
+ /shaddah /.notdef /.notdef /.notdef
+% 208
+ /thalisolated /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /allahisolated /mhmd /tatweel /sallallahou %the 4-ligature mhmd
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/dvips/arabi/ardtpnaskh.enc b/language/arabic/arabi/arabi/texmf/dvips/arabi/ardtpnaskh.enc
new file mode 100644
index 0000000000..ca2c8ad1fa
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/dvips/arabi/ardtpnaskh.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/DTPNaskArabicEncoding [ % now 256 chars follow
+% 0
+ /alef /hamzah_on_alef /_hamzah_on_alef /hamzah_under_alef
+% 4
+ /_hamzah_under_alef /maddah_on_alef /_maddah_on_alef /baa_
+% 8
+ /.notdef /_baa /baa /taa_
+% 12
+ /.notdef /_taa /taa /thaa_
+% 16
+ /_thaa_ /_thaa /thaa /jeem_
+% 20
+ /_jeem_ /_jeem /jeem /haa_
+% 24
+ /_haa_ /_haa /haa /khaa_
+% 28
+ /_khaa_ /_khaa /khaa /.notdef
+% 32
+ /dal /arab_exclam /sukun /.notdef %OK
+% 36
+ /dollar /arab_percent /.notdef /.notdef %ok
+% 40
+ /parent_right /parent_left /dharma /arab_inch % parentheses were refelcted
+% 44
+ /arab_comma /endash /point /forward_slant % we should get the "arabicslash" in 4th position
+% 48
+ /arab_zero /arab_one /arab_two /arab_three
+% 52
+ /arab_four /arab_five /arab_six /arab_seven
+% 56
+ /arab_eight /arab_nine /colon /arab_semicolon %colon ok ??
+% 60
+ /guillemets_right /.notdef /quillemets_left /arab_question %quill.. not guill..
+% 64
+ /_thal /_alef /.notdef /ra
+% 68
+ /.nodef /zain /seen_ /.notdef
+% 72
+ /_seen /_ya_ /sheen_ /_sheen_
+% 76
+ /_sheen /sheen /.notdef /_sad_
+% 80
+ /_sad /sad /dad_ /_dad_
+% 84
+ /_taa_marbutah /_waw /tah_ /_tah_
+% 88
+ /_tah /_alef_maqsurah /dhah_ /right_Quranquote
+% 92
+ /_dhah_ /left_Quranquote /_dhah /dhah
+% 96
+ /_ain_ /fathah /_baa_ /.notdef
+% 100
+ /_dal /.notdef /_fa_ /.notdef
+% 104
+ /_ha_ /kasrah /.notdef /_caf_
+% 108
+ /_lam_ /_meem_ /_noon_ /.notdef
+% 112
+ /_peh_ /_qaf_ /_ra /_seen_
+% 116
+ /_taa_ /dammah /.notdef /_waw
+% 120
+ /seen /_ya_ /_zain /_dad
+% 124
+ /dad /sad_ /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /ain_ /_ain /ain /ghain_
+% 140
+ /_ghain_ /_ghain /ghain /fa_
+% 144
+ /_fa /fa /qaf_ /_qaf
+% 148
+ /qaf /caf_ /_caf /caf
+% 152
+ /lam_ /_lam /lam /meem_
+% 156
+ /_meem /meem /noon_ /_noon
+% 160
+ /noon /ha_ /_ha /ha
+% 164
+ /waw /_hamzah_on_waw /hamzah_on_waw /ya_
+% 168
+ /_ya /ya /tah /alef_maqsurah
+% 172
+ /.notdef /taa_marbutah /_lam_alef /lam_alef
+% 176
+ /_lam_hamzah_on_alef /lam_hamza_on_alef
+ /_lam_hamzah_under_alef /lam_hamzah_under_alef
+% 180
+ /_lam_maddah_on_alef /lam_maddah_on_alef
+ /hamzah_on_ya_ /_hamzah_on_ya_
+% 184
+ /_hamzah_on_ya /hamzah_on_ya
+ /hamzah /.notdef
+% 188
+ /.notdef /.notdef /fatahatan /dammatan %fatahatan not fathatan :)
+% 192
+ /kasratan /fathah /dammah /kasrah
+% 196
+ /shaddah /sukun /shaddah_fathatan /shaddah_dammatan
+% 200
+ /shaddah_kasratan /shaddah_fathah /shaddah_dammah /shaddah_kasrah
+% 204
+ /shaddah /shaddah_fathah /shaddah_dammah /shaddah_kasrah
+% 208
+ /thal /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /lam_lam_ha /.notdef /tatweel /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/dvips/arabi/ardtpthuluth.enc b/language/arabic/arabi/arabi/texmf/dvips/arabi/ardtpthuluth.enc
new file mode 100644
index 0000000000..8458a5133e
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/dvips/arabi/ardtpthuluth.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/DTPThuluthArabicEncoding [ % now 256 chars follow
+% 0
+ /fe8d /fe83 /fe84 /fe87
+% 4
+ /fe88 /fe81 /fe82 /fe91
+% 8
+ /.notdef /fe90 /fe8f /fe97
+% 12
+ /.notdef /fe96 /fe95 /fe9b
+% 16
+ /fe9c /fe9a /fe99 /fe9f
+% 20
+ /fea0 /fe9e /fe9d /fea3
+% 24
+ /fea4 /fea2 /fea1 /fea7
+% 28
+ /fea8 /fea6 /fea5 /.notdef
+% 32
+ /fea9 /exclam /u0652 /numbersign
+% 36
+ /dollar /_66a /ampersand /quoteright
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /u060c /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /u0660 /u0661 /_662 /_663
+% 52
+ /_664 /_665 /_666 /_667
+% 56
+ /_668 /_669 /colon /u061b %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /u061f
+% 64
+ /feac /fe8e /.notdef /fead
+% 68
+ /.nodef /feaf /feb3 /.notdef
+% 72
+ /feb2 /fef4 /feb7 /feb8
+% 76
+ /feb6 /feb5 /.notdef /febc
+% 80
+ /feba /feb9 /febf /fec0
+% 84
+ /uE01C /feee /fec3 /fec4
+% 88
+ /fec2 /fef0 /fec7 /braceright
+% 92
+ /fec8 /braceleft /fec6 /fec5
+% 96
+ /fecc /u064E /fe92 /.notdef
+% 100
+ /feaa /.notdef /fed4 /.notdef
+% 104
+ /feec /u0650 /.notdef /fedc
+% 108
+ /fee0 /fee4 /fee8 /.notdef
+% 112
+ /.notdef /fed8 /feae /feb4
+% 116
+ /fe98 /u064F /.notdef /feee
+% 120
+ /feb1 /fef4 /feb0 /febe
+% 124
+ /febd /febb /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /fecb /feca /fec9 /fecf
+% 140
+ /fed0 /fece /fecd /fed3
+% 144
+ /fed2 /fed1 /fed7 /fed6
+% 148
+ /fed5 /fedb /feda /fed9
+% 152
+ /fedf /fede /fedd /fee3
+% 156
+ /fee2 /fee1 /fee7 /fee6
+% 160
+ /fee5 /feeb /feea /fee9
+% 164
+ /feed /fe86 /fe85 /fef3
+% 168
+ /fef2 /fef1 /fec1 /feef
+% 172
+ /.notdef /fe93 /fefc /fefb
+% 176
+ /fef8 /fef7
+ /fefa /fef9
+% 180
+ /fef6 /fef5
+ /fe8b /fe8c
+% 184
+ /fe8a /fe89
+ /fe80 /.notdef
+% 188
+ /.notdef /.notdef /u064B /u064C
+% 192
+ /u064D /u064E /u064F /u0650
+% 196
+ /u0651 /u0652 /.notdef /.notdef
+% 200
+ /.notdef /.notdef /.notdef /.notdef
+% 204
+ /u0652 /.notdef /.notdef /.notdef
+% 208
+ /feab /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /e007 /.notdef /u0640 /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/dvips/arabi/armonotype.enc b/language/arabic/arabi/arabi/texmf/dvips/arabi/armonotype.enc
new file mode 100644
index 0000000000..86518000cb
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/dvips/arabi/armonotype.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/MonotypeArabicEncoding [ % now 256 chars follow
+% 0
+ /alefisolated /alefwithhamzaaboveisolated /alefwithhamzaabovefinal /alefwithhamzabelowisolated
+% 4
+ /alefwithhamzabelowfinal /alefwithmaddaaboveisolated /alefwithmaddaabovefinal /behinitial
+% 8
+ /.notdef /behfinal /behisolated /tehinitial
+% 12
+ /.notdef /tehfinal /tehisolated /thehinitial
+% 16
+ /thehmedial /thehfinal /thehisolated /jeeminitial
+% 20
+ /jeemmedial /jeemfinal /jeemisolated /hahinitial
+% 24
+ /hahmedial /hahfinal /hahisolated /khahinitial
+% 28
+ /khahmedial /khahfinal /khahisolated /.notdef
+% 32
+ /dalisolated /exclam /sukun /numbersign %OK
+% 36
+ /dollar /arabicpercentsign /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /arabiccomma /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /arabicindicdigitzero /arabicindicdigitone /arabicindicdigittwo /arabicindicdigitthree
+% 52
+ /arabicindicdigitfour /arabicindicdigitfive /arabicindicdigitsix /arabicindicdigitseven
+% 56
+ /arabicindicdigiteight /arabicindicdigitnine /colon /arabicsemicolon %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /arabicquestionmark
+% 64
+ /thalfinal /aleffinal /.notdef /rehisolated
+% 68
+ /.nodef /zainisolated /seeninitial /.notdef
+% 72
+ /seenfinal /yehmedial /sheeninitial /sheenmedial
+% 76
+ /sheenfinal /sheenisolated /.notdef /sadmedial
+% 80
+ /sadfinal /sadisolated /dadinitial /dadmedial
+% 84
+ /tehmarbutafinal /wawfinal /tahinitial /tahmedial
+% 88
+ /tahfinal /alefmaksurafinal /zahinitial /ornaterightparenthesis
+% 92
+ /zahmedial /ornateleftparenthesis /zahfinal /zahisolated
+% 96
+ /ainmedial /fathaisolated /behmedial /.notdef
+% 100
+ /dalfinal /.notdef /fehmedial /.notdef
+% 104
+ /hehmedial /kasraisolated /.notdef /kafmedial
+% 108
+ /lammedial /meemmedial /noonmedial /.notdef
+% 112
+ /pehmedial /qafmedial /rehfinal /seenmedial
+% 116
+ /tehmedial /dammaisolated /.notdef /wawfinal
+% 120
+ /seenisolated /yehmedial /zainfinal /dadfinal
+% 124
+ /dadisolated /sadinitial /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /aininitial /ainfinal /ainisolated /ghaininitial
+% 140
+ /ghainmedial /ghainfinal /ghainisolated /fehinitial
+% 144
+ /fehfinal /fehisolated /qafinitial /qaffinal
+% 148
+ /qafisolated /kafinitial /arabickaffinal /kafisolated
+% 152
+ /laminitial /lamfinal /lamisolated /meeminitial
+% 156
+ /meemfinal /meemisolated /nooninitial /noonfinal
+% 160
+ /noonisolated /hehinitial /hehfinal /hehisolated
+% 164
+ /wawisolated /wawwithhamzaabovefinal /wawwithhamzaaboveisolated /yehinitial
+% 168
+ /yehfinal /yehisolated /tahisolated /alefmaksuraisolated
+% 172
+ /.notdef /tehmarbutaisolated /lamwithaleffinal /lamwithalefisolated
+% 176 2nd with dd!!!!
+ /lamwithalefhamzaabovefinal /lamwithalefhamzaaboveisolatedd
+ /lamwithalefhamzabelowfinal /lamwithalefhamzabelowisolated
+% 180 2nd with dd!!!!
+ /lamwithalefmaddaabovefinal /lamwithalefmaddaaboveisolatedd
+ /yehwithhamzaaboveinitial /yehwithhamzaabovemedial
+% 184
+ /yehwithhamzaabovefinal /yehwithhamzaaboveisolated
+ /hamzaisolated /.notdef
+% 188
+ /.notdef /.notdef /fathatan /dammatan
+% 192
+ /kasratanlow /fathaisolated /dammaisolated /kasraisolated
+% 196
+ /shaddaisolated /sukunisolated /shaddawithfathatanisolated /shaddawithdammatanisolated
+% 200
+ /shaddawithkasratanisolatedlow /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 204
+ /shaddaisolated /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 208
+ /thalisolated /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /allahisolated /.notdef /tatweel /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/dvips/arabi/aromega.enc b/language/arabic/arabi/arabi/texmf/dvips/arabi/aromega.enc
new file mode 100644
index 0000000000..ca7e0ea680
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/dvips/arabi/aromega.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/OmegaArabicEncoding [ % now 256 chars fol
+% 0
+ /alifiso /alifhamzaiso /alifhamzafin /alifsubhamzaiso
+% 4
+ /alifsubhamzafin /alifmaddaiso /alifmaddafin /behini
+% 8
+ /.notdef /behfin /behiso /tehini
+% 12
+ /.notdef /tehfin /tehiso /thehini
+% 16
+ /thehmed /thehfin /thehiso /jeemini
+% 20
+ /jeemmed /jeemfin /jeemiso /hahini
+% 24
+ /hahmed /hahfin /hahiso /khahini
+% 28
+ /khahmed /khahfin /khahiso /.notdef
+% 32
+ /daliso /exclam /sukun /numbersign %OK
+% 36
+ /dollar /percentarabic /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /stararabic /quotedbl % parentheses were refelcted
+% 44
+ /commaarabic /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /zeroarabic /onearabic /twoarabic /threearabic
+% 52
+ /fourarabic /fivearabic /sixarabic /sevenarabic
+% 56
+ /eightarabic /ninearabic /colon /semicolonarabic %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /questionmarkarabic
+% 64
+ /thalfin /aliffin /.notdef /rehiso
+% 68
+ /.nodef /zainiso /seenini /.notdef
+% 72
+ /seenfin /yehmed /sheenini /sheenmed
+% 76
+ /sheenfin /sheeniso /.notdef /sadmed
+% 80
+ /sadfin /sadiso /dadini /dadmed
+% 84
+ /tehmarbutafin /wawfin /tahini /tahmed
+% 88
+ /tahfin /alifmaksurafin /zahini /ornaterightparenthesis
+% 92
+ /zahmed /ornateleftparenthesis /zahfin /zahiso
+% 96
+ /ainmed /fatha /behmed /.notdef
+% 100
+ /dalfin /.notdef /fehmed /.notdef
+% 104
+ /hehmed /kasra /.notdef /kafmed
+% 108
+ /lammed /meemmed /noonmed /.notdef
+% 112
+ /pehmed /qafmed /rehfin /seenmed
+% 116
+ /tehmed /damma /.notdef /wawfin
+% 120
+ /seeniso /yehmed /zainfin /dadfin
+% 124
+ /dadiso /sadini /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /ainini /ainfin /ainiso /ghainini
+% 140
+ /ghainmed /ghainfin /ghainiso /fehini
+% 144
+ /fehfin /fehiso /qafini /qaffin
+% 148
+ /qafiso /kafini /kaffin /kafiso
+% 152
+ /lamini /lamfin /lamiso /meemini
+% 156
+ /meemfin /meemiso /noonini /noonfin
+% 160
+ /nooniso /hehini /hehfin /hehiso
+% 164
+ /wawiso /wawhamzafin /wawhamzaiso /yehini
+% 168
+ /yehfin /yehiso /tahiso /alifmaksuraiso
+% 172
+ /.notdef /tehmarbutaiso /lamaliffin /lamalifiso
+% 176 2nd with dd!!!!
+ /lamalifhamzafin /lamalifhamzaiso
+ /lamalifsubhamzafin /lamalifsubhamzaiso
+% 180 2nd with dd!!!!
+ /lamalifmaddafin /lamalifmaddaiso
+ /yehhamzaini /yehhamzamed
+% 184
+ /yehhamzafin /yehhamzaiso
+ /hamzastandalone /.notdef
+% 188
+ /.notdef /.notdef /fathatan /dammatan
+% 192
+ /kasratan /fatha /damma /kasra
+% 196
+ /shadda /sukun /shaddawithfathatan /shaddawithdammatan
+% 200
+ /shaddawithkasratan /shaddawithfatha /shaddawithdamma /shaddawithkasra
+% 204
+ /shadda /shaddawithfatha /shaddawithdamma /shaddawithkasra
+% 208
+ /thaliso /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /llahshadda /.notdef /keshideh /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/dvips/arabi/arsimplified.enc b/language/arabic/arabi/arabi/texmf/dvips/arabi/arsimplified.enc
new file mode 100644
index 0000000000..4e86bff7c8
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/dvips/arabi/arsimplified.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/SimplifiedArabicEncoding [ % now 256 chars follow
+% 0
+ /alefisolated /alefwithhamzaaboveisolated /alefwithhamzaabovefinal /alefwithhamzabelowisolated
+% 4
+ /alefwithhamzabelowfinal /alefwithmaddaaboveisolated /alefwithmaddaabovefinal /behmedial
+% 8
+ /.notdef /behisolated /behisolated /tehmedial
+% 12
+ /.notdef /tehisolated /tehisolated /thehmedial
+% 16
+ /thehmedial /thehisolated /thehisolated /jeemmedial
+% 20
+ /jeemmedial /jeemfinal /jeemisolated /hahmedial
+% 24
+ /hahmedial /hahfinal /hahisolated /khahmedial
+% 28
+ /khahmedial /khahfinal /khahisolated /.notdef
+% 32
+ /dalisolated /exclam /sukun /numbersign %OK
+% 36
+ /dollar /arabicpercentsign /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /arabiccomma /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /arabicindicdigitzero /arabicindicdigitone /arabicindicdigittwo /arabicindicdigitthree
+% 52
+ /arabicindicdigitfour /arabicindicdigitfive /arabicindicdigitsix /arabicindicdigitseven
+% 56
+ /arabicindicdigiteight /arabicindicdigitnine /colon /arabicsemicolon %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /arabicquestionmark
+% 64
+ /thalisolated /aleffinal /.notdef /reh
+% 68
+ /.nodef /zainisolated /seenmedial /.notdef
+% 72
+ /seenisolated /yehmedial /sheenmedial /sheenmedial
+% 76
+ /sheenisolated /sheenisolated /.notdef /sadmedial
+% 80
+ /sadisolated /sadisolated /dadmedial /dadmedial
+% 84
+ /tehmarbutafinal /wawisolated /tahisolated /tahisolated
+% 88
+ /tahisolated /alefmaksurafinal /zahisolated /ornaterightparenthesis
+% 92
+ /zahisolated /ornateleftparenthesis /zahisolated /zahisolated
+% 96
+ /ainmedial /fathaisolated /behmedial /.notdef
+% 100
+ /dalisolated /.notdef /fehmedial /.notdef
+% 104
+ /hehmedial /kasraisolated /.notdef /kafmedial
+% 108
+ /lammedial /meemmedial /noonmedial /.notdef
+% 112
+ /pehmedial /qafmedial /rehisolated /seenmedial
+% 116
+ /tehmedial /dammaisolated /.notdef /wawisolated
+% 120
+ /seenisolated /yehmedial /zainisolated /dadisolated
+% 124
+ /dadisolated /sadmedial /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /aininitial /ainfinal /ainisolated /ghaininitial
+% 140
+ /ghainmedial /ghainfinal /ghainisolated /fehinitial
+% 144
+ /fehisolated /fehisolated /qafinitial /qafisolated
+% 148
+ /qafisolated /kafmedial /kafisolated /kafisolated
+% 152
+ /lammedial /lam /lam /meemmedial % the lamisolated is in fact medial-initial BADD!!
+% 156
+ /meemisolated /meemisolated /noonmedial /noonisolated
+% 160
+ /noonisolated /hehinitial /hehfinal /hehisolated
+% 164
+ /wawisolated /wawwithhamzaabove /wawwithhamzaabove /yehmedial
+% 168
+ /yehfinal /yehisolated /tahisolated /alefmaksuraisolated
+% 172
+ /.notdef /tehmarbutaisolated /lamwithaleffinal /lamwithalefisolated
+% 176 2nd with dd!!!!
+ /lamwithalefhamzaabovefinal /lamwithalefhamzaaboveisolatedd %with dd at the end!!!!
+ /lamwithalefhamzabelowfinal /lamwithalefhamzabelowisolated
+% 180 2nd with dd!!!!
+ /lamwithalefmaddaabovefinal /lamwithalefmaddaaboveisolatedd
+ /yehwithhamzaabovemedial /yehwithhamzaabovemedial
+% 184
+ /yehwithhamzaabovefinal /yehwithhamzaaboveisolated
+ /hamza /.notdef
+% 188
+ /.notdef /.notdef /fathatan /dammatan
+% 192
+ /kasratanlow /fathaisolated /dammaisolated /kasraisolated
+% 196
+ /shaddaisolated /sukunisolated /shaddawithfathatanisolated /shaddawithdammatanisolated
+% 200
+ /shaddawithkasratanlow /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 204
+ /shaddaisolated /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 208
+ /thal /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /allahisolated /.notdef /tatweel /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/dvips/arabi/arunicode.enc b/language/arabic/arabi/arabi/texmf/dvips/arabi/arunicode.enc
new file mode 100644
index 0000000000..f7eb886124
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/dvips/arabi/arunicode.enc
@@ -0,0 +1,146 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/UnicodeGlyphNamesArabicEncoding [ % now 256 chars follow
+% 0
+ /afii57415 /afii57411 /afii62754 /afii57413
+% 4
+ /afii62756 /afii52400 /afii62753 /afii62761
+% 8
+ /.notdef /afii62763 /afii57416 /afii62765
+% 12
+ /.notdef /afii62767 /afii57418 /afii62768
+% 16
+ /afii62769 /afii62770 /afii57419 /afii62771
+% 20
+ /afii62772 /afii62773 /afii57420 /afii62774
+% 24
+ /afii62775 /afii62776 /afii57421 /afii62777
+% 28
+ /afii62778 /afii62779 /afii57422 /.notdef
+% 32
+ /afii57423 /exclam /afii57458 /numbersign %OK
+% 36
+ /dollar /afii57381 /ampersand /quotesingle %ok
+% 40
+ /afii64061 /afii64060 /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /afii57388 /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /afii57392 /afii57393 /afii57394 /afii57395
+% 52
+ /afii57396 /afii57397 /afii57398 /afii57399
+% 56
+ /afii57400 /afii57401 /colon /afii57403 %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /afii57407
+% 64
+ /afii62781 /afii62760 /.notdef /afii57425
+% 68
+ /.nodef /afii57426 /afii62784 /.notdef
+% 72
+ /afii62786 /afii62361 /afii62787 /afii62788
+% 76
+ /afii62789 /afii57428 /.notdef /afii62791
+% 80
+ /afii62792 /afii62792 /afii62790 /afii62794
+% 84
+ /afii62764 /afii62829 /afii62796 /afii62797
+% 88
+ /afii62798 /afii62830 /afii62799 /afii64061
+% 92
+ /afii62800 /afii64060 /afii62801 /afii57432
+% 96
+ /afii62803 /afii57454 /afii62762 /.notdef
+% 100
+ /afii62780 /.notdef /afii62809 /.notdef
+% 104
+ /afii62827 /afii57456 /.notdef /afii62815
+% 108
+ /afii62818 /afii62821 /afii62824 /.notdef
+% 112
+ /afii62956 /afii62812 /afii62782 /afii62785
+% 116
+ /afii62766 /afii57455 /.notdef /afii62829
+% 120
+ /afii57427 /afii62832 /afii62783 /afii62795
+% 124
+ /afii57430 /afii62790 /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /afii62802 /afii62804 /afii57433 /afii62805
+% 140
+ /afii62806 /afii62807 /afii57434 /afii62808
+% 144
+ /afii62810 /afii57441 /afii62811 /afii62813
+% 148
+% /afii57442 /afii62815 /afii62816 /afii57443
+ /afii57442 /afii52305 /afii62816 /afii57443
+% 152
+ /afii62817 /afii62819 /afii57444 /afii62820
+% 156
+ /afii62822 /afii57445 /afii62823 /afii62825
+% 160
+ /afii57446 /afii57470 /afii62828 /afii57447
+% 164
+ /afii57448 /afii62755 /afii57412 /afii62831
+% 168
+ /afii62833 /afii57450 /afii57431 /afii57449
+% 172
+ /afii.notdef /afii57417 /afii62841 /afii62840
+% 176 2nd with dd!!!!
+ /afii62837 /afii62836
+ /afii62839 /afii62838
+% 180 2nd with dd!!!!
+ /afii62835 /afii62834
+ /afii62757 /afii62758
+% 184
+ /afii62759 /afii57414
+ /afii52399 /.notdef
+% 188
+ /.notdef /.notdef /afii57451 /afii57452
+% 192
+ /afii57453 /afii57454 /afii57455 /afii57456
+% 196
+ /afii57457 /afii57458 /afii62881 /afii62882
+% 200
+ /afii62883 /afii62884 /afii62885 /afii62886
+% 204
+ /afii57457 /afii62884 /afii62885 /afii62886
+% 208
+ /afii57424 /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /afii64184 /.notdef /afii57391 /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/dvips/arabi/farsitex.enc b/language/arabic/arabi/arabi/texmf/dvips/arabi/farsitex.enc
new file mode 100644
index 0000000000..c018d947e0
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/dvips/arabi/farsitex.enc
@@ -0,0 +1,146 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Farsi texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/UnicodeGlyphNamesFarsiEncoding [ % now 256 chars follow
+% 0
+ /afii57415 /afii57411 /afii62754 /afii57413
+% 4
+ /afii62756 /afii52400 /afii62753 /afii62761
+% 8
+ /.notdef /afii62763 /afii57416 /afii62765
+% 12
+ /.notdef /afii62767 /afii57418 /afii62768
+% 16
+ /afii62769 /afii62770 /afii57419 /afii62771
+% 20
+ /afii62772 /afii62773 /afii57420 /afii62774
+% 24
+ /afii62775 /afii62776 /afii57421 /afii62777
+% 28
+ /afii62778 /afii62779 /afii57422 /.notdef
+% 32
+ /afii57423 /exclam /afii57458 /numbersign %OK
+% 36
+ /dollar /afii57381 /ampersand /quotesingle %ok
+% 40
+ /afii64061 /afii64060 /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /afii57388 /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /afii57392 /afii57393 /afii57394 /afii57395 % 0 1 2 3
+% 52
+ /afii62843 /afii62844 /afii62845 /afii57399 % 4 5 6 7
+% 56
+ /afii57400 /afii57401 /colon /afii57403 % 8 9 % colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /afii57407
+% 64
+ /afii62781 /afii62760 /.notdef /afii57425
+% 68
+ /.nodef /afii57426 /afii62784 /.notdef
+% 72
+ /afii62786 /afii62361 /afii62787 /afii62788
+% 76
+ /afii62789 /afii57428 /.notdef /afii62791
+% 80
+ /afii62792 /afii62792 /afii62790 /afii62794
+% 84
+ /afii62764 /afii62829 /afii62796 /afii62797
+% 88
+ /afii62798 /afii62830 /afii62799 /afii64061
+% 92
+ /afii62800 /afii64060 /afii62801 /afii57432
+% 96
+ /afii62803 /afii57454 /afii62762 /afii62959 %% xxx tchehM
+% 100
+ /afii62780 /.notdef /afii62809 /afii62966 %% xxx gafM
+% 104
+ /afii62827 /afii57456 /.notdef /afii62815
+% 108
+ /afii62818 /afii62821 /afii62824 /.notdef
+% 112
+ /afii62956 /afii62782 /afii62782 /afii62785 %%pehM xxx
+% 116
+ /afii62766 /afii57455 /.notdef /afii62829
+% 120
+ /afii57427 /afii62832 /afii62783 /afii62795
+% 124
+ /afii57430 /afii62790 /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /afii62802 /afii62804 /afii57433 /afii62805
+% 140
+ /afii62806 /afii62807 /afii57434 /afii62808
+% 144
+ /afii62810 /afii57441 /afii62811 /afii62813
+% 148
+% /afii57442 /afii62815 /afii62816 /afii57443
+ /afii57442 /afii52305 /afii62964 /afii57567
+% 152
+ /afii62817 /afii62819 /afii57444 /afii62820
+% 156
+ /afii62822 /afii57445 /afii62823 /afii62825
+% 160
+ /afii57446 /afii57470 /afii62828 /afii57447
+% 164
+ /afii57448 /afii62755 /afii57412 /afii62831
+% 168
+ /afii62830 /afii57449 /afii57431 /.notdef
+% 172
+ /.notdef /afii57417 /afii62841 /afii62840
+% 176 2nd with dd!!!!
+ /afii62837 /afii62836
+ /afii62839 /afii62838
+% 180 2nd with dd!!!!
+ /afii62835 /afii62834
+ /afii62757 /afii62758
+% 184
+ /afii62759 /afii57414
+ /afii52399 /.notdef
+% 188
+ /.notdef /.notdef /afii57451 /afii57452
+% 192
+ /afii57453 /afii57454 /afii57455 /afii57456
+% 196
+ /afii57457 /afii57458 /afii62881 /afii62882
+% 200
+ /afii62883 /afii62884 /afii62885 /afii62886
+% 204
+ /afii57457 /afii62884 /afii62885 /afii62886
+% 208
+ /afii57424 /afii62962 /afii57508 /afii62956
+% 212
+ /afii62958 /afii57506 /afii62965 /afii62967
+% 216
+ /afii57509 /afii62959 /afii62961 /afii57507
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /afii57461
+% 252
+ /afii64184 /.notdef /afii57391 /.notdef % llah (uni0644064406510647) ryal(uniFDFC) tatweel
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/dvips/arabi/farsiwebencoding.enc b/language/arabic/arabi/arabi/texmf/dvips/arabi/farsiwebencoding.enc
new file mode 100644
index 0000000000..c425bd8f5d
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/dvips/arabi/farsiwebencoding.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Farsi texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/FarsiWebEncoding [ % now 256 chars follow
+% 0
+ /afii57415.isol /afii57411.isol /afii57411.fina /afii57413.isol
+% 4
+ /afii57413.fina /afii57410.isol /afii57410.fina /afii57416.init
+% 8
+ /.notdef /afii57416.fina /afii57416.isol /afii57418.init
+% 12
+ /.notdef /afii57418.fina /afii57418.isol /afii57419.init
+% 16
+ /afii57419.medi /afii57419.fina /afii57419.isol /afii57420.init
+% 20
+ /afii57420.medi /afii57420.fina /afii57420.isol /afii57421.init
+% 24
+ /afii57421.medi /afii57421.fina /afii57421.isol /afii57422.init
+% 28
+ /afii57422.medi /afii57422.fina /afii57422.isol /.notdef
+% 32
+ /afii57423.isol /exclam /afii57458 /numbersign %OK
+% 36
+ /dollar /afii57381 /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /afii57388 /hyphen /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /uni06F0 /uni06F1 /uni06F2 /uni06F3 % 0 1 2 3
+% 52
+ /uni06F4 /uni06F5 /uni06F6 /uni06F7 % 4 5 6 7
+% 56
+ /uni06F8 /uni06F9 /colon /afii57403 % 8 9 % colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /afii57407
+% 64
+ /afii57424.fina /afii57415.fina /.notdef /afii57425.isol
+% 68
+ /.nodef /afii57426.isol /afii57427.init /.notdef
+% 72
+ /afii57427.fina /uni06CC.media /afii57428.init /afii57428.medi
+% 76
+ /afii57428.fina /afii57428.isol /.notdef /afii57429.medi
+% 80
+ /afii57429.fina /afii57429.isol /afii57430.init /afii57430.medi
+% 84
+ /afii57417.fina /afii57448.fina /afii57431.init /afii57431.medi
+% 88
+ /afii57431.fina /uni06CC.fina /afii57432.init /bracketright
+% 92
+ /afii57432.medi /bracketleft /afii57432.fina /afii57432.isol
+% 96
+ /afii57433.medi /afii57454 /afii57416.medi /afii57507.medi %% xxx tchehM
+% 100
+ /afii57423.fina /.notdef /afii57441.medi /afii57509.medi %% xxx gafM
+% 104
+ /afii57470.medi /afii57456 /.notdef /uni06A9.medi
+% 108
+ /afii57444.medi /afii57445.medi /afii57446.medi /.notdef
+% 112
+ /afii57506.medi /afii57442.medi /afii57425.fina /afii57427.medi %%pehM xxx
+% 116
+ /afii57418.medi /afii57455 /.notdef /afii57448.fina
+% 120
+ /afii57427.isol /uni06CC.medi /afii57426.fina /afii57430.fina
+% 124
+ /afii57430.isol /afii57429.init /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /afii57433.init /afii57433.fina /afii57433.isol /afii57434.init
+% 140
+ /afii57434.medi /afii57434.fina /afii57434.isol /afii57441.init
+% 144
+ /afii57441.fina /afii57441.isol /afii57442.init /afii57442.fina
+% 148
+ /afii57442.isol /uni06A9.init /uni06A9.fina /uni06A9.isol
+% 152
+ /afii57444.init /afii57444.fina /afii57444.isol /afii57445.init
+% 156
+ /afii57445.fina /afii57445.isol /afii57446.init /afii57446.fina
+% 160
+ /afii57446.isol /afii57470.init /afii57470.fina /afii57470.isol
+% 164
+ /afii57448.isol /afii57412.fina /afii57412.isol /uni06CC.init
+% 168
+ /uni06CC.fina /uni06CC.isol /afii57431.isol /.notdef
+% 172
+ /.notdef /afii57417.isol /afii57444_afii57415.fina /afii57444_afii57415.isol
+% 176 2nd with dd!!!!
+ /afii57444_afii57411.fina /afii57444_afii57411.isol
+ /afii57444_afii57413.fina /afii57444_afii57413.isol
+% 180 2nd with dd!!!!
+ /afii57444_afii57410.fina /afii57444_afii57410.isol
+ /afii57414.init /afii57414.medi
+% 184
+ /afii57414.fina /afii57414.isol
+ /afii57409 /.notdef
+% 188
+ /.notdef /.notdef /afii57451 /afii57452
+% 192
+ /afii57453 /afii57454 /afii57455 /afii57456
+% 196
+ /afii57457 /afii57458 /afii57457_afii57451 /afii57457_afii57452
+% 200
+ /afii57457_afii57453 /afii57457_afii57454 /afii57457_afii57455 /afii57457_afii57456
+% 204 ok
+ /afii57457 /afii57457_afii57454 /afii57457_afii57455 /afii57457_afii57456
+% 208
+ /afii57424.isol /afii57508.fina /afii57508.isol /afii57506.init
+% 212
+ /afii57506.fina /afii57506.isol /afii57509.init /afii57509.fina
+% 216
+ /afii57509.isol /afii57507.init /afii57507.fina /afii57507.isol
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /uni066C /uni066B % Arabic Thousands Separator and Arabic decimal separator
+% 252
+ /uni0644064406510647 /uniFDFC /afii57440 /.notdef % llah ryal(uniFDFC) tatweel
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/dvips/arabi/frmonotype.enc b/language/arabic/arabi/arabi/texmf/dvips/arabi/frmonotype.enc
new file mode 100644
index 0000000000..25d1dceeba
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/dvips/arabi/frmonotype.enc
@@ -0,0 +1,148 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Farsi texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/MonotypeFarsiEncoding [ % now 256 chars follow
+% 0
+ /alefisolated /alefwithhamzaaboveisolated /alefwithhamzaabovefinal /alefwithhamzabelowisolated
+% 4
+ /alefwithhamzabelowfinal /alefwithmaddaaboveisolated /alefwithmaddaabovefinal /behinitial
+% 8
+ /.notdef /behfinal /behisolated /tehinitial
+% 12
+ /.notdef /tehfinal /tehisolated /thehinitial
+% 16
+ /thehmedial /thehfinal /thehisolated /jeeminitial
+% 20
+ /jeemmedial /jeemfinal /jeemisolated /hahinitial
+% 24
+ /hahmedial /hahfinal /hahisolated /khahinitial
+% 28
+ /khahmedial /khahfinal /khahisolated /.notdef
+% 32
+ /dalisolated /exclam /sukun /numbersign %OK
+% 36
+ /dollar /arabicpercentsign /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /arabiccomma /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /extendedarabicindicdigitzero /extendedarabicindicdigitone
+ /extendedarabicindicdigittwo /extendedarabicindicdigitthree
+% 52
+ /extendedarabicindicdigitfour /extendedarabicindicdigitfive
+ /extendedarabicindicdigitsix /extendedarabicindicdigitseven
+% 56
+ /extendedarabicindicdigiteight /extendedarabicindicdigitnine
+ /colon /arabicsemicolon %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /arabicquestionmark
+% 64
+ /thalfinal /aleffinal /.notdef /rehisolated
+% 68
+ /.nodef /zainisolated /seeninitial /.notdef
+% 72
+ /seenfinal /yehmedial /sheeninitial /sheenmedial
+% 76
+ /sheenfinal /sheenisolated /.notdef /sadmedial
+% 80
+ /sadfinal /sadisolated /dadinitial /dadmedial
+% 84
+ /tehmarbutafinal /wawfinal /tahinitial /tahmedial
+% 88
+ /tahfinal /alefmaksurafinal /zahinitial /ornaterightparenthesis
+% 92
+ /zahmedial /ornateleftparenthesis /zahfinal /zahisolated
+% 96
+ /ainmedial /fathaisolated /behmedial /tchehmedial
+% 100
+ /dalfinal /.notdef /fehmedial /gafmedial
+% 104
+ /hehmedial /kasraisolated /.notdef /kehehmedial
+% 108
+ /lammedial /meemmedial /noonmedial /.notdef
+% 112
+ /pehmedial /qafmedial /rehfinal /seenmedial
+% 116
+ /tehmedial /dammaisolated /.notdef /wawfinal
+% 120
+ /seenisolated /yehmedial /zainfinal /dadfinal
+% 124
+ /dadisolated /sadinitial /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /aininitial /ainfinal /ainisolated /ghaininitial
+% 140
+ /ghainmedial /ghainfinal /ghainisolated /fehinitial
+% 144
+ /fehfinal /fehisolated /qafinitial /qaffinal
+% 148
+ /qafisolated /kehehinitial /kehehfinal /kehehisolated
+% 152
+ /laminitial /lamfinal /lamisolated /meeminitial
+% 156
+ /meemfinal /meemisolated /nooninitial /noonfinal
+% 160
+ /noonisolated /hehinitial /hehfinal /hehisolated
+% 164
+ /wawisolated /wawwithhamzaabovefinal /wawwithhamzaaboveisolated /yehinitial
+% 168
+ /farsiyehfinal /farsiyehisolated /tahisolated /.notdef
+% 172
+ /.notdef /tehmarbutaisolated /lamwithaleffinal /lamwithalefisolated
+% 176 2nd with dd!!!!
+ /lamwithalefhamzaabovefinal /lamwithalefhamzaaboveisolatedd
+ /lamwithalefhamzabelowfinal /lamwithalefhamzabelowisolated
+% 180 2nd with dd!!!!
+ /lamwithalefmaddaabovefinal /lamwithalefmaddaaboveisolatedd
+ /yehwithhamzaaboveinitial /yehwithhamzaabovemedial
+% 184
+ /yehwithhamzaabovefinal /yehwithhamzaaboveisolated
+ /hamzaisolated /.notdef
+% 188
+ /.notdef /.notdef /fathatan /dammatan
+% 192
+ /kasratanlow /fathaisolated /dammaisolated /kasraisolated
+% 196
+ /shaddaisolated /sukunisolated /shaddawithfathatanisolated /shaddawithdammatanisolated
+% 200
+ /shaddawithkasratanisolatedlow /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 204
+ /shaddaisolated /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 208
+ /thalisolated /jehfinal /jehisolated /pehinitial
+% 212
+ /pehfinal /pehisolated /gafinitial /gaffinal
+% 216
+ /gafisolated /tchehinitial /tchehfinal /tchehisolated
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /quotesinglbase
+% 252
+ /allahisolated /rayaleflam /tatweel /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/dvips/arabi/frsimple.enc b/language/arabic/arabi/arabi/texmf/dvips/arabi/frsimple.enc
new file mode 100644
index 0000000000..24a6204cfe
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/dvips/arabi/frsimple.enc
@@ -0,0 +1,142 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Farsi texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/FarsisimpleEncoding[ % now 256 chars follow
+% 0
+ /uniFE8D /uniFE83 /uniFE84 /uniFE87
+% 4
+ /uniFE88 /uniFE81 /uniFE82 /uniFE91
+% 8
+ /.notdef /uniFE90 /uniFE8F /uniFE97
+% 12
+ /.notdef /uniFE96 /uniFE95 /uniFE9B
+% 16
+ /uniFE9C /uniFE9A /uniFE99 /uniFE9F
+% 20
+ /uniFEA0 /uniFE9E /uniFE9D /uniFEA3
+% 24
+ /uniFEA4 /uniFEA2 /uniFEA1 /uniFEA7
+% 28
+ /uniFEA8 /uniFEA6 /uniFEA5 /.notdef
+% 32
+ /uniFEA9 /exclam /.notdef /numbersign %OK
+% 36
+ /dollar /uni066A /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /uni060C /hyphen /uni06D4 /backslash % we should get the "arabicslash" in 4th position
+% 48
+ /uni06F00 /uni06F1 /uni06F2 /uni06F3
+% 52
+ /uni06F4 /uni06F5 /uni06F6 /uni06F7
+% 56
+ /uni06F8 /uni06F9 /colon /uni061B %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /uni061F
+% 64
+ /uniFEAC /uniFE8E /.notdef /uniFEAD
+% 68
+ /.nodef /uniFEAF /uniFEB3 /.notdef
+% 72
+ /uniFEB2 /uniFEF4 /uniFEB7 /uniFEB8
+% 76
+ /uniFEB6 /uniFEB5 /.notdef /uniFEBC
+% 80
+ /uniFEBA /uniFEB9 /uniFEBF /uniFEC0
+% 84
+ /uniFE94 /uniFEEE /uniFEC3 /uniFEC4
+% 88
+ /uniFEC2 /uniFEF0 /uniFEC7 /uniFD3F
+% 92
+ /uniFEC8 /uniFD3E /uniFEC6 /uniFEC5
+% 96
+ /uniFECC /uni0653 /uniFE92 /uniFB7D
+% 100
+ /uniFEAA /.notdef /uniFED4 /uniFB95
+% 104
+ /uniFEEC /.notdef /.notdef /uniFB91
+% 108
+ /uniFEE0 /uniFEE4 /uniFEE8 /.notdef
+% 112
+ /uniFB59 /uniFED8 /uniFEAE /uniFEB4
+% 116
+ /uniFE98 /.notdef /.notdef /uniFEEE
+% 120
+ /uniFEB1 /uniFEF4 /uniFEB0 /uniFEBE
+% 124
+ /uniFEBD /uniFEBB /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /uniFECB /uniFECA /uniFEC9 /uniFECF
+% 140
+ /uniFED0 /uniFECE /uniFECD /uniFED3
+% 144
+ /uniFED2 /uniFED1 /uniFED7 /uniFED6
+% 148
+ /uniFED5 /uniFB90 /uniFB8F /uniFB8E
+% 152
+ /uniFEDF /uniFEDE /uniFEDD /uniFEE3
+% 156
+ /uniFEE2 /uniFEE1 /uniFEE7 /uniFEE6
+% 160
+ /uniFEE5 /uniFEEB /uniFEEA /uniFEE9
+% 164
+ /uniFEED /uniFE86 /uniFE85 /uniFEF3
+% 168
+ /uniFEF0 /uniFEEF /uniFEC1 /.notdef
+% 172
+ /.notdef /uniFE93 /uniFEFC /uniFEFB
+% 176 2nd with dd!!!!
+ /uniFEF8 /uniFEF7 /uniFEFA /uniFEF9
+% 180 2nd with dd!!!!
+ /uniFEF6 /uniFEF5 /uniFE8B /uniFE8C
+% 184
+ /uniFE8A /uniFE89 /uniFE80 /.notdef
+% 188
+ /.notdef /.notdef /.notdef /.notdef
+% 192
+ /.notdef /.notdef /.notdef /.notdef
+% 196
+ /.notdef /.notdef /.notdef /.notdef
+% 200
+ /.notdef /.notdef /.notdef /.notdef
+% 204
+ /.notdef /.notdef /.notdef /.notdef
+% 208
+ /uniFEAB /uniFB8B /uniFB8A /uniFB58
+% 212
+ /uniFB57 /uniFB56 /uniFB94 /uniFB93
+% 216
+ /uniFB92 /uniFB7C /uniFB7B /uniFB7A
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /uni066C
+% 252
+ /uniFDF2 /.notdef /uni0640 /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/dvips/arabi/frsimplified.enc b/language/arabic/arabi/arabi/texmf/dvips/arabi/frsimplified.enc
new file mode 100644
index 0000000000..3716a63c8a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/dvips/arabi/frsimplified.enc
@@ -0,0 +1,146 @@
+% @psencodingfile{
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Farsi texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/SimplifiedFarsiEncoding [ % now 256 chars follow
+% 0
+ /alefisolated /alefwithhamzaaboveisolated /alefwithhamzaabovefinal /alefwithhamzabelowisolated
+% 4
+ /alefwithhamzabelowfinal /alefwithmaddaaboveisolated /alefwithmaddaabovefinal /behmedial
+% 8
+ /.notdef /behisolated /behisolated /tehmedial
+% 12
+ /.notdef /tehisolated /tehisolated /thehmedial
+% 16
+ /thehmedial /thehisolated /thehisolated /jeemmedial
+% 20
+ /jeemmedial /jeemfinal /jeemisolated /hahmedial
+% 24
+ /hahmedial /hahfinal /hahisolated /khahmedial
+% 28
+ /khahmedial /khahfinal /khahisolated /.notdef
+% 32
+ /dalisolated /exclam /sukun /numbersign %OK
+% 36
+ /dollar /arabicpercentsign /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /arabiccomma /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /arabicindicdigitzero /arabicindicdigitone /arabicindicdigittwo /arabicindicdigitthree
+% 52
+ /arabicindicdigitfour /arabicindicdigitfive /arabicindicdigitsix /arabicindicdigitseven
+% 56
+ /arabicindicdigiteight /arabicindicdigitnine /colon /arabicsemicolon %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /arabicquestionmark
+% 64
+ /thalisolated /aleffinal /.notdef /reh
+% 68
+ /.nodef /zainisolated /seenmedial /.notdef
+% 72
+ /seenisolated /yehmedial /sheenmedial /sheenmedial
+% 76
+ /sheenisolated /sheenisolated /.notdef /sadmedial
+% 80
+ /sadisolated /sadisolated /dadmedial /dadmedial
+% 84
+ /tehmarbutafinal /wawisolated /tahisolated /tahisolated
+% 88
+ /tahisolated /alefmaksurafinal /zahisolated /ornaterightparenthesis
+% 92
+ /zahisolated /ornateleftparenthesis /zahisolated /zahisolated
+% 96
+ /ainmedial /fathaisolated /behmedial /tchehmedial
+% 100
+ /dalisolated /.notdef /fehmedial /gafmedial
+% 104
+ /hehmedial /kasraisolated /.notdef /kehehmedial
+% 108
+ /lammedial /meemmedial /noonmedial /.notdef
+% 112
+ /pehmedial /qafmedial /rehisolated /seenmedial
+% 116
+ /tehmedial /dammaisolated /.notdef /wawisolated
+% 120
+ /seenisolated /yehmedial /zainisolated /dadisolated
+% 124
+ /dadisolated /sadmedial /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /aininitial /ainfinal /ainisolated /ghaininitial
+% 140
+ /ghainmedial /ghainfinal /ghainisolated /fehinitial
+% 144
+ /fehisolated /fehisolated /qafinitial /qafisolated
+% 148
+ /qafisolated /kehehinitial /kehehfinal /kehehisolated
+% 152
+ /lammedial /lam /lam /meemmedial % the lamisolated is in fact medial-initial BADD!!
+% 156
+ /meemisolated /meemisolated /noonmedial /noonisolated
+% 160
+ /noonisolated /hehinitial /hehfinal /hehisolated
+% 164
+ /wawisolated /wawwithhamzaabove /wawwithhamzaabove /yehmedial
+% 168
+ /farsiyehfinal /farsiyehisolated /tahisolated /.notdef
+% 172
+ /.notdef /tehmarbutaisolated /lamwithaleffinal /lamwithalefisolated
+% 176 2nd with dd!!!!
+ /lamwithalefhamzaabovefinal /lamwithalefhamzaaboveisolatedd %with dd at the end!!!!
+ /lamwithalefhamzabelowfinal /lamwithalefhamzabelowisolated
+% 180 2nd with dd!!!!
+ /lamwithalefmaddaabovefinal /lamwithalefmaddaaboveisolatedd
+ /yehwithhamzaabovemedial /yehwithhamzaabovemedial
+% 184
+ /yehwithhamzaabovefinal /yehwithhamzaaboveisolated
+ /hamza /.notdef
+% 188
+ /.notdef /.notdef /fathatan /dammatan
+% 192
+ /kasratanlow /fathaisolated /dammaisolated /kasraisolated
+% 196
+ /shaddaisolated /sukunisolated /shaddawithfathatanisolated /shaddawithdammatanisolated
+% 200
+ /shaddawithkasratanisolated /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 204
+ /shaddaisolated /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 208
+ /thal /jehisolated /jehisolated /pehmedial
+% 212
+ /pehisolated /pehisolated /gafinitial /gaffinal
+% 216
+ /gafisolated /tchehmedial /tchehfinal /tchehisolated
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /quotesinglbase % singl without "e"
+% 252
+ /allahisolated /rayaleflam /tatweel /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/dvips/arabi/frunicode.enc b/language/arabic/arabi/arabi/texmf/dvips/arabi/frunicode.enc
new file mode 100644
index 0000000000..c018d947e0
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/dvips/arabi/frunicode.enc
@@ -0,0 +1,146 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Farsi texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/UnicodeGlyphNamesFarsiEncoding [ % now 256 chars follow
+% 0
+ /afii57415 /afii57411 /afii62754 /afii57413
+% 4
+ /afii62756 /afii52400 /afii62753 /afii62761
+% 8
+ /.notdef /afii62763 /afii57416 /afii62765
+% 12
+ /.notdef /afii62767 /afii57418 /afii62768
+% 16
+ /afii62769 /afii62770 /afii57419 /afii62771
+% 20
+ /afii62772 /afii62773 /afii57420 /afii62774
+% 24
+ /afii62775 /afii62776 /afii57421 /afii62777
+% 28
+ /afii62778 /afii62779 /afii57422 /.notdef
+% 32
+ /afii57423 /exclam /afii57458 /numbersign %OK
+% 36
+ /dollar /afii57381 /ampersand /quotesingle %ok
+% 40
+ /afii64061 /afii64060 /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /afii57388 /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /afii57392 /afii57393 /afii57394 /afii57395 % 0 1 2 3
+% 52
+ /afii62843 /afii62844 /afii62845 /afii57399 % 4 5 6 7
+% 56
+ /afii57400 /afii57401 /colon /afii57403 % 8 9 % colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /afii57407
+% 64
+ /afii62781 /afii62760 /.notdef /afii57425
+% 68
+ /.nodef /afii57426 /afii62784 /.notdef
+% 72
+ /afii62786 /afii62361 /afii62787 /afii62788
+% 76
+ /afii62789 /afii57428 /.notdef /afii62791
+% 80
+ /afii62792 /afii62792 /afii62790 /afii62794
+% 84
+ /afii62764 /afii62829 /afii62796 /afii62797
+% 88
+ /afii62798 /afii62830 /afii62799 /afii64061
+% 92
+ /afii62800 /afii64060 /afii62801 /afii57432
+% 96
+ /afii62803 /afii57454 /afii62762 /afii62959 %% xxx tchehM
+% 100
+ /afii62780 /.notdef /afii62809 /afii62966 %% xxx gafM
+% 104
+ /afii62827 /afii57456 /.notdef /afii62815
+% 108
+ /afii62818 /afii62821 /afii62824 /.notdef
+% 112
+ /afii62956 /afii62782 /afii62782 /afii62785 %%pehM xxx
+% 116
+ /afii62766 /afii57455 /.notdef /afii62829
+% 120
+ /afii57427 /afii62832 /afii62783 /afii62795
+% 124
+ /afii57430 /afii62790 /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /afii62802 /afii62804 /afii57433 /afii62805
+% 140
+ /afii62806 /afii62807 /afii57434 /afii62808
+% 144
+ /afii62810 /afii57441 /afii62811 /afii62813
+% 148
+% /afii57442 /afii62815 /afii62816 /afii57443
+ /afii57442 /afii52305 /afii62964 /afii57567
+% 152
+ /afii62817 /afii62819 /afii57444 /afii62820
+% 156
+ /afii62822 /afii57445 /afii62823 /afii62825
+% 160
+ /afii57446 /afii57470 /afii62828 /afii57447
+% 164
+ /afii57448 /afii62755 /afii57412 /afii62831
+% 168
+ /afii62830 /afii57449 /afii57431 /.notdef
+% 172
+ /.notdef /afii57417 /afii62841 /afii62840
+% 176 2nd with dd!!!!
+ /afii62837 /afii62836
+ /afii62839 /afii62838
+% 180 2nd with dd!!!!
+ /afii62835 /afii62834
+ /afii62757 /afii62758
+% 184
+ /afii62759 /afii57414
+ /afii52399 /.notdef
+% 188
+ /.notdef /.notdef /afii57451 /afii57452
+% 192
+ /afii57453 /afii57454 /afii57455 /afii57456
+% 196
+ /afii57457 /afii57458 /afii62881 /afii62882
+% 200
+ /afii62883 /afii62884 /afii62885 /afii62886
+% 204
+ /afii57457 /afii62884 /afii62885 /afii62886
+% 208
+ /afii57424 /afii62962 /afii57508 /afii62956
+% 212
+ /afii62958 /afii57506 /afii62965 /afii62967
+% 216
+ /afii57509 /afii62959 /afii62961 /afii57507
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /afii57461
+% 252
+ /afii64184 /.notdef /afii57391 /.notdef % llah (uni0644064406510647) ryal(uniFDFC) tatweel
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/arabeyes/ae_almohanad_boldItalitalic.afm b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/arabeyes/ae_almohanad_boldItalitalic.afm
new file mode 100644
index 0000000000..fdc8878707
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/arabeyes/ae_almohanad_boldItalitalic.afm
@@ -0,0 +1,377 @@
+StartFontMetrics 2.0
+Comment Panose 2 0 5 3 0 0 0 2 0 4
+FullName ae_AlMohanad BoldItalic
+FontName ae_AlMohanadBoldItalic
+FamilyName ae_AlMohanad Bold Italic
+Weight Normal
+Notice Typeface and data 2003, Arabeyes.org. This font is distributed under the terms of GPL license.
+Version 001.001
+IsFixedPitch false
+ItalicAngle 0.00
+FontBBox -307 -188 1127 437
+Ascender 754
+Descender -146
+XHeight 510
+CapHeight 712
+UnderlinePosition -188
+UnderlineThickness 48
+EncodingScheme FontSpecific
+StartCharMetrics 356
+C 32 ; WX 244 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 333 ; N exclam ; B 114 -14 372 677 ;
+C 34 ; WX 270 ; N quotedbl ; B 143 390 377 627 ;
+C 35 ; WX 667 ; N numbersign ; B 98 33 742 725 ;
+C 36 ; WX 458 ; N dollar ; B 76 -26 555 777 ;
+C 37 ; WX 719 ; N percent ; B 129 33 761 715 ;
+C 38 ; WX 635 ; N ampersand ; B 70 49 723 702 ;
+C 39 ; WX 156 ; N quotesingle ; B 181 443 289 702 ;
+C 40 ; WX 319 ; N parenleft ; B 91 -281 432 703 ;
+C 41 ; WX 319 ; N parenright ; B -11 -281 330 703 ;
+C 42 ; WX 332 ; N asterisk ; B 124 342 434 635 ;
+C 43 ; WX 462 ; N plus ; B 102 63 468 421 ;
+C 44 ; WX 158 ; N comma ; B 32 -65 112 65 ;
+C 45 ; WX 385 ; N hyphenminus ; B 39 39 380 110 ;
+C 46 ; WX 127 ; N period ; B 26 0 125 89 ;
+C 47 ; WX 275 ; N slash ; B 24 -5 378 597 ;
+C 48 ; WX 552 ; N zero ; B 97 49 630 705 ;
+C 49 ; WX 390 ; N one ; B 90 62 448 709 ;
+C 50 ; WX 538 ; N two ; B 62 40 623 702 ;
+C 51 ; WX 491 ; N three ; B 64 47 567 700 ;
+C 52 ; WX 538 ; N four ; B 86 63 559 707 ;
+C 53 ; WX 491 ; N five ; B 71 46 589 710 ;
+C 54 ; WX 538 ; N six ; B 107 49 612 702 ;
+C 55 ; WX 488 ; N seven ; B 166 48 626 695 ;
+C 56 ; WX 552 ; N eight ; B 78 49 621 702 ;
+C 57 ; WX 540 ; N nine ; B 115 49 617 702 ;
+C 58 ; WX 244 ; N colon ; B 85 39 268 450 ;
+C 59 ; WX 244 ; N semicolon ; B 59 -85 275 447 ;
+C 60 ; WX 634 ; N less ; B 129 132 719 624 ;
+C 61 ; WX 455 ; N equal ; B 92 177 479 305 ;
+C 62 ; WX 634 ; N greater ; B 80 128 669 621 ;
+C 63 ; WX 465 ; N question ; B 156 49 578 702 ;
+C 64 ; WX 917 ; N at ; B 97 -155 978 756 ;
+C 65 ; WX 604 ; N A ; B 19 63 623 713 ;
+C 66 ; WX 542 ; N B ; B 42 63 622 687 ;
+C 67 ; WX 615 ; N C ; B 98 49 729 702 ;
+C 68 ; WX 708 ; N D ; B 45 63 812 687 ;
+C 69 ; WX 479 ; N E ; B 45 42 600 712 ;
+C 70 ; WX 488 ; N F ; B 44 63 598 709 ;
+C 71 ; WX 667 ; N G ; B 104 41 730 702 ;
+C 72 ; WX 687 ; N H ; B 44 63 815 687 ;
+C 73 ; WX 302 ; N I ; B 50 63 433 687 ;
+C 74 ; WX 441 ; N J ; B 10 -162 548 684 ;
+C 75 ; WX 634 ; N K ; B 28 57 711 682 ;
+C 76 ; WX 538 ; N L ; B 70 41 550 688 ;
+C 77 ; WX 951 ; N M ; B 57 42 1029 689 ;
+C 78 ; WX 731 ; N N ; B 54 37 854 684 ;
+C 79 ; WX 733 ; N O ; B 112 62 815 715 ;
+C 80 ; WX 584 ; N P ; B 76 60 676 684 ;
+C 81 ; WX 782 ; N Q ; B 118 -138 813 703 ;
+C 82 ; WX 638 ; N R ; B 64 63 649 687 ;
+C 83 ; WX 441 ; N S ; B 59 45 543 698 ;
+C 84 ; WX 589 ; N T ; B 167 63 717 710 ;
+C 85 ; WX 689 ; N U ; B 143 49 826 687 ;
+C 86 ; WX 638 ; N V ; B 171 42 773 687 ;
+C 87 ; WX 980 ; N W ; B 180 40 1127 687 ;
+C 88 ; WX 660 ; N X ; B 42 58 752 683 ;
+C 89 ; WX 686 ; N Y ; B 195 61 787 686 ;
+C 90 ; WX 634 ; N Z ; B 52 42 705 709 ;
+C 91 ; WX 312 ; N bracketleft ; B 93 -49 437 754 ;
+C 92 ; WX 510 ; N backslash ; B 230 45 465 759 ;
+C 93 ; WX 312 ; N bracketright ; B 54 -49 378 753 ;
+C 94 ; WX 469 ; N asciicircum ; B 96 337 528 687 ;
+C 95 ; WX 500 ; N underscore ; B -35 -125 488 -75 ;
+C 96 ; WX 333 ; N grave ; B 243 583 336 736 ;
+C 97 ; WX 488 ; N a ; B 56 49 498 524 ;
+C 98 ; WX 510 ; N b ; B 53 32 583 752 ;
+C 99 ; WX 448 ; N c ; B 69 49 511 524 ;
+C 100 ; WX 538 ; N d ; B 65 49 633 752 ;
+C 101 ; WX 437 ; N e ; B 69 49 493 523 ;
+C 102 ; WX 344 ; N f ; B 40 63 505 730 ;
+C 103 ; WX 500 ; N g ; B -37 -160 597 523 ;
+C 104 ; WX 552 ; N h ; B 39 63 570 754 ;
+C 105 ; WX 271 ; N i ; B 43 63 351 727 ;
+C 106 ; WX 297 ; N j ; B -13 -161 432 726 ;
+C 107 ; WX 538 ; N k ; B 39 63 610 754 ;
+C 108 ; WX 295 ; N l ; B 62 61 393 752 ;
+C 109 ; WX 802 ; N m ; B 40 63 816 524 ;
+C 110 ; WX 552 ; N n ; B 40 63 570 524 ;
+C 111 ; WX 490 ; N o ; B 66 49 554 523 ;
+C 112 ; WX 531 ; N p ; B -16 -145 599 524 ;
+C 113 ; WX 521 ; N q ; B 63 -146 593 538 ;
+C 114 ; WX 396 ; N r ; B 39 63 503 524 ;
+C 115 ; WX 365 ; N s ; B 58 49 427 524 ;
+C 116 ; WX 292 ; N t ; B 105 49 392 664 ;
+C 117 ; WX 552 ; N u ; B 108 47 588 522 ;
+C 118 ; WX 492 ; N v ; B 119 41 602 510 ;
+C 119 ; WX 780 ; N w ; B 125 41 875 510 ;
+C 120 ; WX 521 ; N x ; B 29 63 611 510 ;
+C 121 ; WX 488 ; N y ; B -21 -158 594 510 ;
+C 122 ; WX 448 ; N z ; B 44 41 522 532 ;
+C 123 ; WX 366 ; N braceleft ; B 75 -98 466 854 ;
+C 124 ; WX 510 ; N bar ; B 195 -145 456 754 ;
+C 125 ; WX 366 ; N braceright ; B 72 -98 463 854 ;
+C 126 ; WX 667 ; N asciitilde ; B 143 308 698 449 ;
+C 127 ; WX 781 ; N delete ; B 57 63 764 349 ;
+C 130 ; WX 500 ; N quotesinglbase ; B 0 0 0 0 ;
+C 131 ; WX 531 ; N florin ; B -33 -146 692 735 ;
+C 136 ; WX 333 ; N circumflex ; B 168 603 441 721 ;
+C 138 ; WX 448 ; N Scaron ; B 65 49 597 879 ;
+C 140 ; WX 865 ; N OE ; B 104 40 980 711 ;
+C 154 ; WX 365 ; N scaron ; B 58 49 494 719 ;
+C 156 ; WX 823 ; N oe ; B 69 49 865 524 ;
+C 159 ; WX 583 ; N Ydieresis ; B 170 63 762 867 ;
+C 160 ; WX 244 ; N nbspace ; B 0 0 0 0 ;
+C 161 ; WX 317 ; N exclamdown ; B 96 -46 292 523 ;
+C 162 ; WX 448 ; N cent ; B 91 63 531 687 ;
+C 163 ; WX 583 ; N sterling ; B 83 38 664 702 ;
+C 164 ; WX 500 ; N currency ; B 56 160 625 630 ;
+C 165 ; WX 583 ; N yen ; B 98 63 762 687 ;
+C 166 ; WX 200 ; N brokenbar ; B 43 -153 294 757 ;
+C 167 ; WX 417 ; N section ; B 21 -158 510 728 ;
+C 168 ; WX 333 ; N dieresis ; B 175 610 464 708 ;
+C 169 ; WX 765 ; N copyright ; B 97 11 832 702 ;
+C 170 ; WX 312 ; N ordfeminine ; B 119 389 412 704 ;
+C 171 ; WX 417 ; N guillemotleft ; B 94 63 493 450 ;
+C 172 ; WX 667 ; N logicalnot ; B 177 239 716 520 ;
+C 173 ; WX 564 ; N sfthyphen ; B 122 452 653 492 ;
+C 174 ; WX 765 ; N registered ; B 97 11 832 702 ;
+C 175 ; WX 333 ; N overscore ; B 186 633 453 686 ;
+C 176 ; WX 375 ; N degree ; B 169 407 486 705 ;
+C 177 ; WX 462 ; N plusminus ; B 56 22 468 421 ;
+C 178 ; WX 354 ; N twosuperior ; B 119 366 468 752 ;
+C 179 ; WX 354 ; N threesuperior ; B 142 370 454 752 ;
+C 180 ; WX 333 ; N acute ; B 270 584 418 736 ;
+C 181 ; WX 510 ; N micro ; B -1 -153 539 510 ;
+C 182 ; WX 437 ; N paragraph ; B 85 -160 598 687 ;
+C 183 ; WX 198 ; N middot ; B 124 316 250 434 ;
+C 184 ; WX 333 ; N cedilla ; B 82 -114 263 74 ;
+C 185 ; WX 354 ; N onesuperior ; B 185 374 406 752 ;
+C 186 ; WX 323 ; N ordmasculine ; B 127 389 451 702 ;
+C 187 ; WX 417 ; N guillemotright ; B 39 63 442 450 ;
+C 188 ; WX 854 ; N onequarter ; B 188 47 857 753 ;
+C 189 ; WX 854 ; N onehalf ; B 187 46 894 753 ;
+C 190 ; WX 854 ; N threequarters ; B 145 47 857 753 ;
+C 191 ; WX 448 ; N questiondown ; B -25 -162 402 491 ;
+C 192 ; WX 604 ; N Agrave ; B 19 63 623 894 ;
+C 215 ; WX 462 ; N multiply ; B 88 79 479 406 ;
+C 224 ; WX 469 ; N agrave ; B 56 49 498 736 ;
+C 226 ; WX 469 ; N acircumflex ; B 56 49 507 721 ;
+C 231 ; WX 448 ; N ccedilla ; B 73 -115 513 522 ;
+C 232 ; WX 437 ; N egrave ; B 69 49 493 736 ;
+C 233 ; WX 437 ; N eacute ; B 69 49 493 736 ;
+C 234 ; WX 437 ; N ecircumflex ; B 69 49 503 721 ;
+C 235 ; WX 437 ; N edieresis ; B 69 49 532 708 ;
+C 238 ; WX 271 ; N icircumflex ; B 43 63 403 721 ;
+C 239 ; WX 271 ; N idieresis ; B 43 63 431 708 ;
+C 244 ; WX 490 ; N ocircumflex ; B 66 49 554 721 ;
+C 247 ; WX 462 ; N divide ; B 102 63 468 417 ;
+C 249 ; WX 552 ; N ugrave ; B 108 47 588 736 ;
+C 251 ; WX 552 ; N ucircumflex ; B 108 47 588 721 ;
+C 252 ; WX 552 ; N udieresis ; B 108 47 588 708 ;
+C 255 ; WX 469 ; N ydieresis ; B -21 -158 594 708 ;
+C -1 ; WX 0 ; N .null ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _158 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _195 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _200 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _213 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _215 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _228 ; B 0 0 0 0 ;
+C -1 ; WX 549 ; N ain ; B 10 -334 558 333 ;
+C -1 ; WX 481 ; N ainfinal ; B 47 -315 563 291 ;
+C -1 ; WX 513 ; N aininitial ; B -23 0 439 325 ;
+C -1 ; WX 549 ; N ainisolated ; B 10 -334 558 333 ;
+C -1 ; WX 410 ; N ainmedial ; B -23 0 410 277 ;
+C -1 ; WX 220 ; N aleffinal ; B -51 0 220 511 ;
+C -1 ; WX 192 ; N alefisolated ; B -36 -25 121 482 ;
+C -1 ; WX 633 ; N alefmaksura ; B 38 -157 527 363 ;
+C -1 ; WX 566 ; N alefmaksurafinal ; B 53 -195 566 167 ;
+C -1 ; WX 633 ; N alefmaksuraisolated ; B 38 -157 527 363 ;
+C -1 ; WX 248 ; N alefwithhamzaabove ; B -61 -34 152 546 ;
+C -1 ; WX 250 ; N alefwithhamzaabovefinal ; B -77 0 250 615 ;
+C -1 ; WX 248 ; N alefwithhamzaaboveisolated ; B -61 -34 152 546 ;
+C -1 ; WX 248 ; N alefwithhamzabelow ; B 8 -187 223 490 ;
+C -1 ; WX 222 ; N alefwithhamzabelowfinal ; B -51 -241 257 511 ;
+C -1 ; WX 248 ; N alefwithhamzabelowisolated ; B 8 -187 223 490 ;
+C -1 ; WX 307 ; N alefwithmaddaabove ; B -50 -25 150 512 ;
+C -1 ; WX 281 ; N alefwithmaddaabovefinal ; B -66 0 280 593 ;
+C -1 ; WX 307 ; N alefwithmaddaaboveisolated ; B -50 -25 150 512 ;
+C -1 ; WX 814 ; N allahisolated ; B 34 -4 732 756 ;
+C -1 ; WX 192 ; N arabicalef ; B -36 -25 121 482 ;
+C -1 ; WX 195 ; N arabiccomma ; B -3 0 118 267 ;
+C -1 ; WX 398 ; N arabicfivepointedstar ; B -53 109 295 441 ;
+C -1 ; WX 383 ; N arabicindicdigiteight ; B 3 -35 350 428 ;
+C -1 ; WX 383 ; N arabicindicdigitfive ; B 17 49 285 407 ;
+C -1 ; WX 383 ; N arabicindicdigitfour ; B 15 -30 289 465 ;
+C -1 ; WX 383 ; N arabicindicdigitnine ; B -15 -47 322 462 ;
+C -1 ; WX 383 ; N arabicindicdigitone ; B 30 -32 264 455 ;
+C -1 ; WX 383 ; N arabicindicdigitseven ; B -67 -7 282 456 ;
+C -1 ; WX 383 ; N arabicindicdigitsix ; B -49 -18 312 436 ;
+C -1 ; WX 383 ; N arabicindicdigitthree ; B -73 -40 288 439 ;
+C -1 ; WX 383 ; N arabicindicdigittwo ; B -24 -38 251 441 ;
+C -1 ; WX 383 ; N arabicindicdigitzero ; B 81 96 207 288 ;
+C -1 ; WX 718 ; N arabickaf ; B 13 0 594 500 ;
+C -1 ; WX 1055 ; N arabickaffinal ; B 16 -1 1055 465 ;
+C -1 ; WX 383 ; N arabicpercentsign ; B -44 -30 322 487 ;
+C -1 ; WX 340 ; N arabicquestionmark ; B -17 -17 249 478 ;
+C -1 ; WX 247 ; N arabicsemicolon ; B -45 0 115 385 ;
+C -1 ; WX 635 ; N beh ; B 16 -206 555 295 ;
+C -1 ; WX 645 ; N behfinal ; B 16 -216 645 276 ;
+C -1 ; WX 338 ; N behinitial ; B -23 -216 271 303 ;
+C -1 ; WX 635 ; N behisolated ; B 16 -206 555 295 ;
+C -1 ; WX 321 ; N behmedial ; B -23 -210 321 259 ;
+C -1 ; WX 333 ; N caron ; B -139 601 135 719 ;
+C -1 ; WX 1062 ; N dad ; B 54 -198 976 468 ;
+C -1 ; WX 1033 ; N dadfinal ; B 54 -198 1033 468 ;
+C -1 ; WX 795 ; N dadinitial ; B -23 0 707 468 ;
+C -1 ; WX 1062 ; N dadisolated ; B 54 -198 976 468 ;
+C -1 ; WX 761 ; N dadmedial ; B -23 0 761 433 ;
+C -1 ; WX 364 ; N dal ; B 36 -1 302 341 ;
+C -1 ; WX 440 ; N dalfinal ; B 34 -1 440 369 ;
+C -1 ; WX 364 ; N dalisolated ; B 36 -1 302 341 ;
+C -1 ; WX 202 ; N dammah ; B -141 649 13 857 ;
+C -1 ; WX 229 ; N dammatan ; B -142 652 68 852 ;
+C -1 ; WX 271 ; N dotlessi ; B -81 63 238 524 ;
+C -1 ; WX 199 ; N fathah ; B -157 724 -13 854 ;
+C -1 ; WX 199 ; N fathatan ; B -157 662 2 866 ;
+C -1 ; WX 755 ; N feh ; B 14 0 685 521 ;
+C -1 ; WX 748 ; N fehfinal ; B 14 -1 748 452 ;
+C -1 ; WX 416 ; N fehinitial ; B -26 0 346 521 ;
+C -1 ; WX 755 ; N fehisolated ; B 14 0 685 521 ;
+C -1 ; WX 442 ; N fehmedial ; B -23 0 442 473 ;
+C -1 ; WX 547 ; N ghain ; B 10 -299 547 501 ;
+C -1 ; WX 477 ; N ghainfinal ; B 36 -315 563 488 ;
+C -1 ; WX 513 ; N ghaininitial ; B -23 0 439 489 ;
+C -1 ; WX 547 ; N ghainisolated ; B 10 -299 547 501 ;
+C -1 ; WX 410 ; N ghainmedial ; B -23 0 410 465 ;
+C -1 ; WX 548 ; N hah ; B 14 -323 555 275 ;
+C -1 ; WX 546 ; N hahfinal ; B 13 -318 599 278 ;
+C -1 ; WX 637 ; N hahinitial ; B -23 0 556 280 ;
+C -1 ; WX 548 ; N hahisolated ; B 14 -323 555 275 ;
+C -1 ; WX 656 ; N hahmedial ; B -23 0 656 280 ;
+C -1 ; WX 392 ; N hamza ; B 23 -69 321 250 ;
+C -1 ; WX 392 ; N hamzaisolated ; B 23 -69 321 250 ;
+C -1 ; WX 372 ; N heh ; B 32 -9 291 315 ;
+C -1 ; WX 391 ; N hehfinal ; B 32 0 391 407 ;
+C -1 ; WX 524 ; N hehinitial ; B -23 0 455 370 ;
+C -1 ; WX 372 ; N hehisolated ; B 32 -9 291 315 ;
+C -1 ; WX 412 ; N hehmedial ; B -23 -166 412 320 ;
+C -1 ; WX 548 ; N jeem ; B 14 -323 555 275 ;
+C -1 ; WX 554 ; N jeemfinal ; B 6 -279 554 284 ;
+C -1 ; WX 637 ; N jeeminitial ; B -23 -186 556 280 ;
+C -1 ; WX 548 ; N jeemisolated ; B 14 -323 555 275 ;
+C -1 ; WX 652 ; N jeemmedial ; B -23 -208 652 280 ;
+C -1 ; WX 884 ; N kafinitial ; B -23 0 798 468 ;
+C -1 ; WX 718 ; N kafisolated ; B 13 0 594 500 ;
+C -1 ; WX 409 ; N kafmedial ; B -23 0 409 485 ;
+C -1 ; WX 199 ; N kasrah ; B 108 -374 251 -243 ;
+C -1 ; WX 199 ; N kasratan ; B 104 -386 264 -184 ;
+C -1 ; WX 548 ; N khah ; B 14 -323 555 465 ;
+C -1 ; WX 544 ; N khahfinal ; B 8 -315 596 452 ;
+C -1 ; WX 637 ; N khahinitial ; B -23 0 556 458 ;
+C -1 ; WX 548 ; N khahisolated ; B 14 -323 555 465 ;
+C -1 ; WX 656 ; N khahmedial ; B -23 0 656 454 ;
+C -1 ; WX 555 ; N lam ; B 48 -153 437 517 ;
+C -1 ; WX 511 ; N lamfinal ; B 49 -164 511 511 ;
+C -1 ; WX 339 ; N laminitial ; B -23 0 215 500 ;
+C -1 ; WX 555 ; N lamisolated ; B 48 -153 437 517 ;
+C -1 ; WX 297 ; N lammedial ; B -23 0 297 511 ;
+C -1 ; WX 625 ; N lamwithaleffinal ; B 16 -47 625 511 ;
+C -1 ; WX 621 ; N lamwithalefhamzaabovefinal ; B -50 -47 621 608 ;
+C -1 ; WX 603 ; N lamwithalefhamzaaboveisolatedd ; B -87 0 460 661 ;
+C -1 ; WX 617 ; N lamwithalefhamzabelowfinal ; B 16 -240 617 511 ;
+C -1 ; WX 576 ; N lamwithalefhamzabelowisolated ; B -45 -258 423 551 ;
+C -1 ; WX 576 ; N lamwithalefisolated ; B -45 0 423 551 ;
+C -1 ; WX 618 ; N lamwithalefmaddaabovefinal ; B -47 -47 618 530 ;
+C -1 ; WX 624 ; N lamwithalefmaddaaboveisolatedd ; B -65 0 481 583 ;
+C -1 ; WX 22 ; N lefttoright ; B -183 0 22 850 ;
+C -1 ; WX 424 ; N meem ; B 38 -271 340 306 ;
+C -1 ; WX 478 ; N meemfinal ; B 38 -289 478 267 ;
+C -1 ; WX 490 ; N meeminitial ; B -23 0 416 297 ;
+C -1 ; WX 424 ; N meemisolated ; B 38 -271 340 306 ;
+C -1 ; WX 476 ; N meemmedial ; B -23 -53 476 267 ;
+C -1 ; WX 244 ; N nonmarkingreturn ; B 0 0 0 0 ;
+C -1 ; WX 532 ; N noon ; B 42 -126 461 434 ;
+C -1 ; WX 548 ; N noonfinal ; B 56 -210 548 389 ;
+C -1 ; WX 336 ; N nooninitial ; B -29 0 261 466 ;
+C -1 ; WX 532 ; N noonisolated ; B 42 -126 461 434 ;
+C -1 ; WX 326 ; N noonmedial ; B -23 0 326 463 ;
+C -1 ; WX 467 ; N ornateleftparenthesis ; B 0 -156 441 568 ;
+C -1 ; WX 467 ; N ornaterightparenthesis ; B -73 -156 372 568 ;
+C -1 ; WX 575 ; N qaf ; B 49 -188 517 472 ;
+C -1 ; WX 550 ; N qaffinal ; B 50 -192 550 455 ;
+C -1 ; WX 417 ; N qafinitial ; B -23 0 347 503 ;
+C -1 ; WX 575 ; N qafisolated ; B 49 -188 517 472 ;
+C -1 ; WX 442 ; N qafmedial ; B -23 0 442 456 ;
+C -1 ; WX 481 ; N reh ; B 75 -204 424 257 ;
+C -1 ; WX 517 ; N rehfinal ; B 74 -203 517 228 ;
+C -1 ; WX 481 ; N rehisolated ; B 75 -204 424 257 ;
+C -1 ; WX 22 ; N righttoleft ; B -307 0 22 850 ;
+C -1 ; WX 1062 ; N sad ; B 54 -198 976 285 ;
+C -1 ; WX 1033 ; N sadfinal ; B 54 -198 1033 285 ;
+C -1 ; WX 795 ; N sadinitial ; B -23 0 707 292 ;
+C -1 ; WX 1062 ; N sadisolated ; B 54 -198 976 285 ;
+C -1 ; WX 758 ; N sadmedial ; B -23 0 758 292 ;
+C -1 ; WX 875 ; N seen ; B 58 -209 804 244 ;
+C -1 ; WX 872 ; N seenfinal ; B 58 -198 872 247 ;
+C -1 ; WX 609 ; N seeninitial ; B -23 -4 537 250 ;
+C -1 ; WX 875 ; N seenisolated ; B 58 -209 804 244 ;
+C -1 ; WX 588 ; N seenmedial ; B -23 0 588 250 ;
+C -1 ; WX 208 ; N shaddah ; B -166 700 8 862 ;
+C -1 ; WX 875 ; N sheen ; B 58 -209 804 497 ;
+C -1 ; WX 872 ; N sheenfinal ; B 58 -198 872 497 ;
+C -1 ; WX 609 ; N sheeninitial ; B -23 -4 538 463 ;
+C -1 ; WX 875 ; N sheenisolated ; B 58 -209 804 497 ;
+C -1 ; WX 587 ; N sheenmedial ; B -23 0 587 485 ;
+C -1 ; WX 160 ; N sukun ; B -175 709 -36 860 ;
+C -1 ; WX 812 ; N tah ; B 19 0 728 535 ;
+C -1 ; WX 793 ; N tahfinal ; B 19 0 793 519 ;
+C -1 ; WX 659 ; N tahinitial ; B -23 0 576 519 ;
+C -1 ; WX 812 ; N tahisolated ; B 19 0 728 535 ;
+C -1 ; WX 647 ; N tahmedial ; B -23 0 647 519 ;
+C -1 ; WX 390 ; N tatweel ; B -23 0 389 101 ;
+C -1 ; WX 635 ; N teh ; B 16 0 555 446 ;
+C -1 ; WX 645 ; N tehfinal ; B 16 0 645 409 ;
+C -1 ; WX 345 ; N tehinitial ; B -56 0 260 482 ;
+C -1 ; WX 635 ; N tehisolated ; B 16 0 555 446 ;
+C -1 ; WX 370 ; N tehmarbuta ; B -39 -9 286 478 ;
+C -1 ; WX 419 ; N tehmarbutafinal ; B -55 0 419 506 ;
+C -1 ; WX 370 ; N tehmarbutaisolated ; B -39 -9 286 478 ;
+C -1 ; WX 336 ; N tehmedial ; B -61 0 336 466 ;
+C -1 ; WX 364 ; N thal ; B -44 -1 302 488 ;
+C -1 ; WX 440 ; N thalfinal ; B 21 -1 440 467 ;
+C -1 ; WX 364 ; N thalisolated ; B -44 -1 302 488 ;
+C -1 ; WX 635 ; N theh ; B 16 0 555 454 ;
+C -1 ; WX 645 ; N thehfinal ; B 16 0 645 454 ;
+C -1 ; WX 393 ; N thehinitial ; B -38 0 321 504 ;
+C -1 ; WX 635 ; N thehisolated ; B 16 0 555 454 ;
+C -1 ; WX 345 ; N thehmedial ; B -31 0 345 499 ;
+C -1 ; WX 503 ; N waw ; B 82 -206 445 292 ;
+C -1 ; WX 461 ; N wawfinal ; B 74 -197 461 288 ;
+C -1 ; WX 503 ; N wawisolated ; B 82 -206 445 292 ;
+C -1 ; WX 497 ; N wawwithhamzaabove ; B 81 -206 439 468 ;
+C -1 ; WX 461 ; N wawwithhamzaabovefinal ; B 74 -197 461 488 ;
+C -1 ; WX 497 ; N wawwithhamzaaboveisolated ; B 81 -206 439 468 ;
+C -1 ; WX 644 ; N yeh ; B 37 -288 528 368 ;
+C -1 ; WX 560 ; N yehfinal ; B 53 -335 560 167 ;
+C -1 ; WX 357 ; N yehinitial ; B -23 -213 300 303 ;
+C -1 ; WX 644 ; N yehisolated ; B 37 -288 528 368 ;
+C -1 ; WX 333 ; N yehmedial ; B -23 -199 333 267 ;
+C -1 ; WX 603 ; N yehwithhamzaabove ; B 7 -163 495 463 ;
+C -1 ; WX 535 ; N yehwithhamzaabovefinal ; B 50 -175 535 463 ;
+C -1 ; WX 360 ; N yehwithhamzaaboveinitial ; B -23 0 290 505 ;
+C -1 ; WX 603 ; N yehwithhamzaaboveisolated ; B 7 -163 495 463 ;
+C -1 ; WX 329 ; N yehwithhamzaabovemedial ; B -23 0 329 450 ;
+C -1 ; WX 812 ; N zah ; B 19 0 728 535 ;
+C -1 ; WX 793 ; N zahfinal ; B 19 0 793 519 ;
+C -1 ; WX 659 ; N zahinitial ; B -23 0 576 519 ;
+C -1 ; WX 812 ; N zahisolated ; B 19 0 728 535 ;
+C -1 ; WX 643 ; N zahmedial ; B -23 0 643 519 ;
+C -1 ; WX 481 ; N zain ; B 75 -204 424 439 ;
+C -1 ; WX 517 ; N zainfinal ; B 74 -203 517 466 ;
+C -1 ; WX 481 ; N zainisolated ; B 75 -204 424 439 ;
+C -1 ; WX 22 ; N zerojoin ; B -248 0 22 850 ;
+C -1 ; WX 22 ; N zeronojoin ; B -183 0 22 795 ;
+C -1 ; WX 0 ; N zerowidthnobreakspace ; B 0 0 0 0 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/arabeyes/ae_almohanad_thin.afm b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/arabeyes/ae_almohanad_thin.afm
new file mode 100644
index 0000000000..9bc314d105
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/arabeyes/ae_almohanad_thin.afm
@@ -0,0 +1,377 @@
+StartFontMetrics 2.0
+Comment Panose 2 0 5 3 0 0 0 2 0 4
+FullName ae_AlMohanad Thin
+FontName ae_AlMohanadThin
+FamilyName ae_AlMohanad Thin
+Weight Normal
+Notice Typeface and data 2003, Arabeyes.org. This font is distributed under the terms of GPL license.
+Version 001.001
+IsFixedPitch false
+ItalicAngle 0.00
+FontBBox -63 -188 968 437
+Ascender 754
+Descender -146
+XHeight 510
+CapHeight 712
+UnderlinePosition -188
+UnderlineThickness 48
+EncodingScheme FontSpecific
+StartCharMetrics 356
+C 32 ; WX 244 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 333 ; N exclam ; B 111 -14 222 677 ;
+C 34 ; WX 270 ; N quotedbl ; B 34 390 236 627 ;
+C 35 ; WX 667 ; N numbersign ; B 44 33 622 725 ;
+C 36 ; WX 458 ; N dollar ; B 57 -26 430 777 ;
+C 37 ; WX 719 ; N percent ; B 41 33 678 715 ;
+C 38 ; WX 635 ; N ampersand ; B 35 49 644 702 ;
+C 39 ; WX 156 ; N quotesingle ; B 49 443 130 702 ;
+C 40 ; WX 319 ; N parenleft ; B 70 -281 275 703 ;
+C 41 ; WX 319 ; N parenright ; B 49 -281 254 703 ;
+C 42 ; WX 332 ; N asterisk ; B 20 342 312 635 ;
+C 43 ; WX 462 ; N plus ; B 51 63 408 421 ;
+C 44 ; WX 158 ; N comma ; B 45 -65 105 65 ;
+C 45 ; WX 385 ; N hyphenminus ; B 30 39 355 110 ;
+C 46 ; WX 127 ; N period ; B 21 0 109 89 ;
+C 47 ; WX 275 ; N slash ; B 16 -5 254 597 ;
+C 48 ; WX 552 ; N zero ; B 38 49 515 705 ;
+C 49 ; WX 390 ; N one ; B 47 62 334 709 ;
+C 50 ; WX 538 ; N two ; B 48 40 505 702 ;
+C 51 ; WX 491 ; N three ; B 46 47 465 700 ;
+C 52 ; WX 538 ; N four ; B 31 63 492 707 ;
+C 53 ; WX 491 ; N five ; B 53 46 457 710 ;
+C 54 ; WX 538 ; N six ; B 50 49 499 702 ;
+C 55 ; WX 488 ; N seven ; B 52 48 471 695 ;
+C 56 ; WX 552 ; N eight ; B 45 49 521 702 ;
+C 57 ; WX 540 ; N nine ; B 55 49 502 702 ;
+C 58 ; WX 244 ; N colon ; B 67 39 169 450 ;
+C 59 ; WX 244 ; N semicolon ; B 68 -85 192 447 ;
+C 60 ; WX 634 ; N less ; B 48 132 575 624 ;
+C 61 ; WX 455 ; N equal ; B 51 177 408 305 ;
+C 62 ; WX 634 ; N greater ; B 51 128 578 621 ;
+C 63 ; WX 465 ; N question ; B 46 49 433 702 ;
+C 64 ; WX 917 ; N at ; B 50 -155 897 756 ;
+C 65 ; WX 604 ; N A ; B 4 63 603 713 ;
+C 66 ; WX 542 ; N B ; B 28 63 507 687 ;
+C 67 ; WX 615 ; N C ; B 37 49 589 702 ;
+C 68 ; WX 708 ; N D ; B 31 63 672 687 ;
+C 69 ; WX 479 ; N E ; B 31 42 470 712 ;
+C 70 ; WX 488 ; N F ; B 30 63 435 709 ;
+C 71 ; WX 667 ; N G ; B 40 41 640 702 ;
+C 72 ; WX 687 ; N H ; B 30 63 657 687 ;
+C 73 ; WX 302 ; N I ; B 36 63 274 687 ;
+C 74 ; WX 441 ; N J ; B 46 -162 391 684 ;
+C 75 ; WX 634 ; N K ; B 15 57 583 682 ;
+C 76 ; WX 538 ; N L ; B 55 41 495 688 ;
+C 77 ; WX 951 ; N M ; B 42 42 918 689 ;
+C 78 ; WX 731 ; N N ; B 41 37 696 684 ;
+C 79 ; WX 733 ; N O ; B 49 62 704 715 ;
+C 80 ; WX 584 ; N P ; B 62 60 527 684 ;
+C 81 ; WX 782 ; N Q ; B 52 -138 736 703 ;
+C 82 ; WX 638 ; N R ; B 50 63 587 687 ;
+C 83 ; WX 441 ; N S ; B 42 45 416 698 ;
+C 84 ; WX 589 ; N T ; B 46 63 553 710 ;
+C 85 ; WX 689 ; N U ; B 23 49 667 687 ;
+C 86 ; WX 638 ; N V ; B 19 42 615 687 ;
+C 87 ; WX 980 ; N W ; B 27 40 968 687 ;
+C 88 ; WX 660 ; N X ; B 29 58 625 683 ;
+C 89 ; WX 686 ; N Y ; B 42 61 628 686 ;
+C 90 ; WX 634 ; N Z ; B 38 42 581 709 ;
+C 91 ; WX 312 ; N bracketleft ; B 104 -49 263 754 ;
+C 92 ; WX 510 ; N backslash ; B 55 45 455 759 ;
+C 93 ; WX 312 ; N bracketright ; B 66 -49 205 753 ;
+C 94 ; WX 469 ; N asciicircum ; B 18 337 451 687 ;
+C 95 ; WX 500 ; N underscore ; B -6 -125 506 -75 ;
+C 96 ; WX 333 ; N grave ; B 82 583 200 736 ;
+C 97 ; WX 488 ; N a ; B 28 49 463 524 ;
+C 98 ; WX 510 ; N b ; B 0 32 492 752 ;
+C 99 ; WX 448 ; N c ; B 22 49 411 524 ;
+C 100 ; WX 538 ; N d ; B 21 49 512 752 ;
+C 101 ; WX 437 ; N e ; B 21 49 418 523 ;
+C 102 ; WX 344 ; N f ; B 26 63 339 730 ;
+C 103 ; WX 500 ; N g ; B -17 -160 491 523 ;
+C 104 ; WX 552 ; N h ; B 24 63 532 754 ;
+C 105 ; WX 271 ; N i ; B 29 63 252 727 ;
+C 106 ; WX 297 ; N j ; B 21 -161 269 726 ;
+C 107 ; WX 538 ; N k ; B 25 63 512 754 ;
+C 108 ; WX 295 ; N l ; B 49 61 273 752 ;
+C 109 ; WX 802 ; N m ; B 25 63 785 524 ;
+C 110 ; WX 552 ; N n ; B 25 63 532 524 ;
+C 111 ; WX 490 ; N o ; B 21 49 468 523 ;
+C 112 ; WX 531 ; N p ; B 18 -145 509 524 ;
+C 113 ; WX 521 ; N q ; B 21 -146 513 538 ;
+C 114 ; WX 396 ; N r ; B 25 63 384 524 ;
+C 115 ; WX 365 ; N s ; B 40 49 339 524 ;
+C 116 ; WX 292 ; N t ; B 14 49 283 664 ;
+C 117 ; WX 552 ; N u ; B 15 47 531 522 ;
+C 118 ; WX 492 ; N v ; B 6 41 484 510 ;
+C 119 ; WX 780 ; N w ; B 13 41 757 510 ;
+C 120 ; WX 521 ; N x ; B 15 63 513 510 ;
+C 121 ; WX 488 ; N y ; B -7 -158 477 510 ;
+C 122 ; WX 448 ; N z ; B 30 41 417 532 ;
+C 123 ; WX 366 ; N braceleft ; B 98 -98 269 854 ;
+C 124 ; WX 510 ; N bar ; B 229 -145 282 754 ;
+C 125 ; WX 366 ; N braceright ; B 95 -98 266 854 ;
+C 126 ; WX 667 ; N asciitilde ; B 72 308 595 449 ;
+C 127 ; WX 781 ; N delete ; B 42 63 742 349 ;
+C 130 ; WX 500 ; N quotesinglbase ; B 0 0 0 0 ;
+C 131 ; WX 531 ; N florin ; B 0 -146 531 735 ;
+C 136 ; WX 333 ; N circumflex ; B 30 603 303 721 ;
+C 138 ; WX 448 ; N Scaron ; B 47 49 421 879 ;
+C 140 ; WX 865 ; N OE ; B 39 40 847 711 ;
+C 154 ; WX 365 ; N scaron ; B 40 49 339 719 ;
+C 156 ; WX 823 ; N oe ; B 23 49 793 524 ;
+C 159 ; WX 583 ; N Ydieresis ; B 17 63 604 867 ;
+C 160 ; WX 244 ; N nbspace ; B 0 0 0 0 ;
+C 161 ; WX 317 ; N exclamdown ; B 88 -46 214 523 ;
+C 162 ; WX 448 ; N cent ; B 22 63 411 687 ;
+C 163 ; WX 583 ; N sterling ; B 75 38 584 702 ;
+C 164 ; WX 500 ; N currency ; B 13 160 486 630 ;
+C 165 ; WX 583 ; N yen ; B 17 63 604 687 ;
+C 166 ; WX 200 ; N brokenbar ; B 79 -153 119 757 ;
+C 167 ; WX 417 ; N section ; B 46 -158 373 728 ;
+C 168 ; WX 333 ; N dieresis ; B 30 610 306 708 ;
+C 169 ; WX 765 ; N copyright ; B 37 11 728 702 ;
+C 170 ; WX 312 ; N ordfeminine ; B 19 389 307 704 ;
+C 171 ; WX 417 ; N guillemotleft ; B 34 63 393 450 ;
+C 172 ; WX 667 ; N logicalnot ; B 69 239 597 520 ;
+C 173 ; WX 564 ; N sfthyphen ; B 18 452 540 492 ;
+C 174 ; WX 765 ; N registered ; B 37 11 728 702 ;
+C 175 ; WX 333 ; N overscore ; B 40 633 294 686 ;
+C 176 ; WX 375 ; N degree ; B 50 407 348 705 ;
+C 177 ; WX 462 ; N plusminus ; B 51 22 408 421 ;
+C 178 ; WX 354 ; N twosuperior ; B 32 366 312 752 ;
+C 179 ; WX 354 ; N threesuperior ; B 52 370 311 752 ;
+C 180 ; WX 333 ; N acute ; B 132 584 252 736 ;
+C 181 ; WX 510 ; N micro ; B 28 -153 502 510 ;
+C 182 ; WX 437 ; N paragraph ; B -3 -160 439 687 ;
+C 183 ; WX 198 ; N middot ; B 42 316 159 434 ;
+C 184 ; WX 333 ; N cedilla ; B 106 -114 265 74 ;
+C 185 ; WX 354 ; N onesuperior ; B 82 374 269 752 ;
+C 186 ; WX 323 ; N ordmasculine ; B 16 389 312 702 ;
+C 187 ; WX 417 ; N guillemotright ; B 24 63 383 450 ;
+C 188 ; WX 854 ; N onequarter ; B 85 47 812 753 ;
+C 189 ; WX 854 ; N onehalf ; B 85 46 812 753 ;
+C 190 ; WX 854 ; N threequarters ; B 56 47 813 753 ;
+C 191 ; WX 448 ; N questiondown ; B -5 -162 382 491 ;
+C 192 ; WX 604 ; N Agrave ; B 4 63 603 894 ;
+C 215 ; WX 462 ; N multiply ; B 64 79 392 406 ;
+C 224 ; WX 469 ; N agrave ; B 28 49 463 736 ;
+C 226 ; WX 469 ; N acircumflex ; B 28 49 463 721 ;
+C 231 ; WX 448 ; N ccedilla ; B 25 -115 413 522 ;
+C 232 ; WX 437 ; N egrave ; B 21 49 418 736 ;
+C 233 ; WX 437 ; N eacute ; B 21 49 418 736 ;
+C 234 ; WX 437 ; N ecircumflex ; B 21 49 418 721 ;
+C 235 ; WX 437 ; N edieresis ; B 21 49 418 708 ;
+C 238 ; WX 271 ; N icircumflex ; B -9 63 264 721 ;
+C 239 ; WX 271 ; N idieresis ; B -3 63 273 708 ;
+C 244 ; WX 490 ; N ocircumflex ; B 21 49 468 721 ;
+C 247 ; WX 462 ; N divide ; B 51 63 408 417 ;
+C 249 ; WX 552 ; N ugrave ; B 15 47 531 736 ;
+C 251 ; WX 552 ; N ucircumflex ; B 15 47 531 721 ;
+C 252 ; WX 552 ; N udieresis ; B 15 47 531 708 ;
+C 255 ; WX 469 ; N ydieresis ; B -7 -158 477 708 ;
+C -1 ; WX 0 ; N .null ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _158 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _195 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _200 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _213 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _215 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _228 ; B 0 0 0 0 ;
+C -1 ; WX 274 ; N ain ; B 24 -301 250 300 ;
+C -1 ; WX 241 ; N ainfinal ; B 24 -284 253 262 ;
+C -1 ; WX 256 ; N aininitial ; B 0 0 232 292 ;
+C -1 ; WX 274 ; N ainisolated ; B 24 -301 250 300 ;
+C -1 ; WX 205 ; N ainmedial ; B 0 0 205 249 ;
+C -1 ; WX 110 ; N aleffinal ; B 24 0 110 459 ;
+C -1 ; WX 96 ; N alefisolated ; B 24 -23 71 434 ;
+C -1 ; WX 316 ; N alefmaksura ; B 24 -142 292 327 ;
+C -1 ; WX 283 ; N alefmaksurafinal ; B 24 -176 283 151 ;
+C -1 ; WX 316 ; N alefmaksuraisolated ; B 24 -142 292 327 ;
+C -1 ; WX 124 ; N alefwithhamzaabove ; B 24 -30 99 491 ;
+C -1 ; WX 125 ; N alefwithhamzaabovefinal ; B 24 0 125 553 ;
+C -1 ; WX 124 ; N alefwithhamzaaboveisolated ; B 24 -30 99 491 ;
+C -1 ; WX 124 ; N alefwithhamzabelow ; B 24 -168 99 441 ;
+C -1 ; WX 111 ; N alefwithhamzabelowfinal ; B 24 -217 111 459 ;
+C -1 ; WX 124 ; N alefwithhamzabelowisolated ; B 24 -168 99 441 ;
+C -1 ; WX 153 ; N alefwithmaddaabove ; B 24 -23 129 460 ;
+C -1 ; WX 141 ; N alefwithmaddaabovefinal ; B 24 0 141 534 ;
+C -1 ; WX 153 ; N alefwithmaddaaboveisolated ; B 24 -23 129 460 ;
+C -1 ; WX 407 ; N allahisolated ; B 24 -3 382 681 ;
+C -1 ; WX 96 ; N arabicalef ; B 24 -23 71 434 ;
+C -1 ; WX 98 ; N arabiccomma ; B 8 0 67 240 ;
+C -1 ; WX 199 ; N arabicfivepointedstar ; B 9 98 184 397 ;
+C -1 ; WX 191 ; N arabicindicdigiteight ; B 9 -31 184 385 ;
+C -1 ; WX 191 ; N arabicindicdigitfive ; B 32 44 167 366 ;
+C -1 ; WX 191 ; N arabicindicdigitfour ; B 42 -27 152 418 ;
+C -1 ; WX 191 ; N arabicindicdigitnine ; B 27 -42 167 416 ;
+C -1 ; WX 191 ; N arabicindicdigitone ; B 56 -29 133 410 ;
+C -1 ; WX 191 ; N arabicindicdigitseven ; B 6 -7 184 411 ;
+C -1 ; WX 191 ; N arabicindicdigitsix ; B 19 -16 164 393 ;
+C -1 ; WX 191 ; N arabicindicdigitthree ; B 3 -36 187 396 ;
+C -1 ; WX 191 ; N arabicindicdigittwo ; B 29 -34 162 397 ;
+C -1 ; WX 191 ; N arabicindicdigitzero ; B 59 86 129 259 ;
+C -1 ; WX 359 ; N arabickaf ; B 24 0 334 450 ;
+C -1 ; WX 527 ; N arabickaffinal ; B 24 -1 527 418 ;
+C -1 ; WX 191 ; N arabicpercentsign ; B 17 -27 174 438 ;
+C -1 ; WX 170 ; N arabicquestionmark ; B 24 -16 146 430 ;
+C -1 ; WX 123 ; N arabicsemicolon ; B 6 0 64 347 ;
+C -1 ; WX 317 ; N beh ; B 24 -185 293 266 ;
+C -1 ; WX 322 ; N behfinal ; B 24 -195 322 249 ;
+C -1 ; WX 169 ; N behinitial ; B 0 -195 145 273 ;
+C -1 ; WX 317 ; N behisolated ; B 24 -185 293 266 ;
+C -1 ; WX 161 ; N behmedial ; B 0 -189 161 233 ;
+C -1 ; WX 167 ; N caron ; B 14 541 150 647 ;
+C -1 ; WX 531 ; N dad ; B 24 -178 506 421 ;
+C -1 ; WX 517 ; N dadfinal ; B 24 -178 517 421 ;
+C -1 ; WX 397 ; N dadinitial ; B 0 0 373 421 ;
+C -1 ; WX 531 ; N dadisolated ; B 24 -178 506 421 ;
+C -1 ; WX 380 ; N dadmedial ; B 0 0 380 389 ;
+C -1 ; WX 182 ; N dal ; B 24 -1 157 307 ;
+C -1 ; WX 220 ; N dalfinal ; B 24 -1 220 332 ;
+C -1 ; WX 182 ; N dalisolated ; B 24 -1 157 307 ;
+C -1 ; WX 101 ; N dammah ; B 5 584 89 771 ;
+C -1 ; WX 115 ; N dammatan ; B 17 587 115 767 ;
+C -1 ; WX 135 ; N dotlessi ; B 14 57 126 472 ;
+C -1 ; WX 100 ; N fathah ; B 7 651 89 769 ;
+C -1 ; WX 100 ; N fathatan ; B 8 596 90 780 ;
+C -1 ; WX 377 ; N feh ; B 24 0 353 469 ;
+C -1 ; WX 374 ; N fehfinal ; B 24 -1 374 406 ;
+C -1 ; WX 208 ; N fehinitial ; B 0 0 184 469 ;
+C -1 ; WX 377 ; N fehisolated ; B 24 0 353 469 ;
+C -1 ; WX 221 ; N fehmedial ; B 0 0 221 426 ;
+C -1 ; WX 273 ; N ghain ; B 24 -269 249 451 ;
+C -1 ; WX 238 ; N ghainfinal ; B 24 -284 253 439 ;
+C -1 ; WX 256 ; N ghaininitial ; B 0 0 232 440 ;
+C -1 ; WX 273 ; N ghainisolated ; B 24 -269 249 451 ;
+C -1 ; WX 205 ; N ghainmedial ; B 0 0 205 419 ;
+C -1 ; WX 274 ; N hah ; B 24 -291 250 248 ;
+C -1 ; WX 273 ; N hahfinal ; B 24 -286 273 250 ;
+C -1 ; WX 318 ; N hahinitial ; B 0 0 294 252 ;
+C -1 ; WX 274 ; N hahisolated ; B 24 -291 250 248 ;
+C -1 ; WX 328 ; N hahmedial ; B 0 0 328 252 ;
+C -1 ; WX 196 ; N hamza ; B 24 -62 171 225 ;
+C -1 ; WX 196 ; N hamzaisolated ; B 24 -62 171 225 ;
+C -1 ; WX 186 ; N heh ; B 24 -8 161 283 ;
+C -1 ; WX 195 ; N hehfinal ; B 24 0 195 366 ;
+C -1 ; WX 262 ; N hehinitial ; B 0 0 237 333 ;
+C -1 ; WX 186 ; N hehisolated ; B 24 -8 161 283 ;
+C -1 ; WX 206 ; N hehmedial ; B 0 -149 206 288 ;
+C -1 ; WX 274 ; N jeem ; B 24 -291 250 248 ;
+C -1 ; WX 277 ; N jeemfinal ; B 24 -251 277 255 ;
+C -1 ; WX 318 ; N jeeminitial ; B 0 -167 294 252 ;
+C -1 ; WX 274 ; N jeemisolated ; B 24 -291 250 248 ;
+C -1 ; WX 326 ; N jeemmedial ; B 0 -187 326 252 ;
+C -1 ; WX 442 ; N kafinitial ; B 0 0 417 421 ;
+C -1 ; WX 359 ; N kafisolated ; B 24 0 334 450 ;
+C -1 ; WX 205 ; N kafmedial ; B 0 0 205 437 ;
+C -1 ; WX 100 ; N kasrah ; B 13 -336 95 -219 ;
+C -1 ; WX 100 ; N kasratan ; B 18 -347 100 -165 ;
+C -1 ; WX 274 ; N khah ; B 24 -291 250 418 ;
+C -1 ; WX 272 ; N khahfinal ; B 24 -284 272 406 ;
+C -1 ; WX 318 ; N khahinitial ; B 0 0 294 412 ;
+C -1 ; WX 274 ; N khahisolated ; B 24 -291 250 418 ;
+C -1 ; WX 328 ; N khahmedial ; B 0 0 328 409 ;
+C -1 ; WX 277 ; N lam ; B 24 -138 253 465 ;
+C -1 ; WX 255 ; N lamfinal ; B 24 -147 255 459 ;
+C -1 ; WX 169 ; N laminitial ; B 0 0 145 450 ;
+C -1 ; WX 277 ; N lamisolated ; B 24 -138 253 465 ;
+C -1 ; WX 148 ; N lammedial ; B 0 0 148 459 ;
+C -1 ; WX 312 ; N lamwithaleffinal ; B 24 -42 312 459 ;
+C -1 ; WX 311 ; N lamwithalefhamzaabovefinal ; B 24 -42 311 547 ;
+C -1 ; WX 301 ; N lamwithalefhamzaaboveisolatedd ; B 24 0 277 595 ;
+C -1 ; WX 309 ; N lamwithalefhamzabelowfinal ; B 24 -216 309 459 ;
+C -1 ; WX 288 ; N lamwithalefhamzabelowisolated ; B 24 -232 263 496 ;
+C -1 ; WX 288 ; N lamwithalefisolated ; B 24 0 263 496 ;
+C -1 ; WX 309 ; N lamwithalefmaddaabovefinal ; B 24 -42 309 477 ;
+C -1 ; WX 312 ; N lamwithalefmaddaaboveisolatedd ; B 24 0 287 525 ;
+C -1 ; WX 11 ; N lefttoright ; B 0 0 74 765 ;
+C -1 ; WX 212 ; N meem ; B 24 -244 187 275 ;
+C -1 ; WX 239 ; N meemfinal ; B 24 -260 239 240 ;
+C -1 ; WX 245 ; N meeminitial ; B 0 0 220 268 ;
+C -1 ; WX 212 ; N meemisolated ; B 24 -244 187 275 ;
+C -1 ; WX 238 ; N meemmedial ; B 0 -48 238 240 ;
+C -1 ; WX 122 ; N nonmarkingreturn ; B 0 0 0 0 ;
+C -1 ; WX 266 ; N noon ; B 24 -114 242 390 ;
+C -1 ; WX 274 ; N noonfinal ; B 24 -189 274 350 ;
+C -1 ; WX 168 ; N nooninitial ; B 0 0 144 419 ;
+C -1 ; WX 266 ; N noonisolated ; B 24 -114 242 390 ;
+C -1 ; WX 163 ; N noonmedial ; B 0 0 163 417 ;
+C -1 ; WX 233 ; N ornateleftparenthesis ; B 24 -140 209 511 ;
+C -1 ; WX 233 ; N ornaterightparenthesis ; B 24 -140 209 511 ;
+C -1 ; WX 287 ; N qaf ; B 24 -169 263 425 ;
+C -1 ; WX 275 ; N qaffinal ; B 24 -173 275 410 ;
+C -1 ; WX 208 ; N qafinitial ; B 0 0 184 453 ;
+C -1 ; WX 287 ; N qafisolated ; B 24 -169 263 425 ;
+C -1 ; WX 221 ; N qafmedial ; B 0 0 221 410 ;
+C -1 ; WX 241 ; N reh ; B 24 -184 216 231 ;
+C -1 ; WX 258 ; N rehfinal ; B 24 -183 258 205 ;
+C -1 ; WX 241 ; N rehisolated ; B 24 -184 216 231 ;
+C -1 ; WX 11 ; N righttoleft ; B -63 0 11 765 ;
+C -1 ; WX 531 ; N sad ; B 24 -178 506 256 ;
+C -1 ; WX 517 ; N sadfinal ; B 24 -178 517 256 ;
+C -1 ; WX 397 ; N sadinitial ; B 0 0 373 263 ;
+C -1 ; WX 531 ; N sadisolated ; B 24 -178 506 256 ;
+C -1 ; WX 379 ; N sadmedial ; B 0 0 379 263 ;
+C -1 ; WX 437 ; N seen ; B 24 -188 413 219 ;
+C -1 ; WX 436 ; N seenfinal ; B 24 -178 436 222 ;
+C -1 ; WX 304 ; N seeninitial ; B 0 -3 280 225 ;
+C -1 ; WX 437 ; N seenisolated ; B 24 -188 413 219 ;
+C -1 ; WX 294 ; N seenmedial ; B 0 0 294 225 ;
+C -1 ; WX 104 ; N shaddah ; B 5 630 92 775 ;
+C -1 ; WX 437 ; N sheen ; B 24 -188 413 447 ;
+C -1 ; WX 436 ; N sheenfinal ; B 24 -178 436 447 ;
+C -1 ; WX 305 ; N sheeninitial ; B 0 -3 280 417 ;
+C -1 ; WX 437 ; N sheenisolated ; B 24 -188 413 447 ;
+C -1 ; WX 293 ; N sheenmedial ; B 0 0 293 437 ;
+C -1 ; WX 80 ; N sukun ; B 7 639 70 774 ;
+C -1 ; WX 406 ; N tah ; B 24 0 381 481 ;
+C -1 ; WX 396 ; N tahfinal ; B 24 0 396 467 ;
+C -1 ; WX 330 ; N tahinitial ; B 0 0 305 467 ;
+C -1 ; WX 406 ; N tahisolated ; B 24 0 381 481 ;
+C -1 ; WX 324 ; N tahmedial ; B 0 0 324 467 ;
+C -1 ; WX 195 ; N tatweel ; B 0 0 195 91 ;
+C -1 ; WX 317 ; N teh ; B 24 0 293 401 ;
+C -1 ; WX 322 ; N tehfinal ; B 24 0 322 368 ;
+C -1 ; WX 172 ; N tehinitial ; B 0 0 148 434 ;
+C -1 ; WX 317 ; N tehisolated ; B 24 0 293 401 ;
+C -1 ; WX 185 ; N tehmarbuta ; B 24 -8 160 430 ;
+C -1 ; WX 209 ; N tehmarbutafinal ; B 24 0 209 456 ;
+C -1 ; WX 185 ; N tehmarbutaisolated ; B 24 -8 160 430 ;
+C -1 ; WX 168 ; N tehmedial ; B 0 0 168 419 ;
+C -1 ; WX 182 ; N thal ; B 24 -1 157 439 ;
+C -1 ; WX 220 ; N thalfinal ; B 24 -1 220 420 ;
+C -1 ; WX 182 ; N thalisolated ; B 24 -1 157 439 ;
+C -1 ; WX 317 ; N theh ; B 24 0 293 409 ;
+C -1 ; WX 322 ; N thehfinal ; B 24 0 322 409 ;
+C -1 ; WX 196 ; N thehinitial ; B 0 0 172 454 ;
+C -1 ; WX 317 ; N thehisolated ; B 24 0 293 409 ;
+C -1 ; WX 172 ; N thehmedial ; B 0 0 172 449 ;
+C -1 ; WX 251 ; N waw ; B 24 -185 227 263 ;
+C -1 ; WX 230 ; N wawfinal ; B 24 -177 230 259 ;
+C -1 ; WX 251 ; N wawisolated ; B 24 -185 227 263 ;
+C -1 ; WX 248 ; N wawwithhamzaabove ; B 24 -185 224 421 ;
+C -1 ; WX 230 ; N wawwithhamzaabovefinal ; B 24 -177 230 439 ;
+C -1 ; WX 248 ; N wawwithhamzaaboveisolated ; B 24 -185 224 421 ;
+C -1 ; WX 322 ; N yeh ; B 24 -259 297 332 ;
+C -1 ; WX 280 ; N yehfinal ; B 24 -302 280 151 ;
+C -1 ; WX 179 ; N yehinitial ; B 0 -191 154 273 ;
+C -1 ; WX 322 ; N yehisolated ; B 24 -259 297 332 ;
+C -1 ; WX 167 ; N yehmedial ; B 0 -179 167 240 ;
+C -1 ; WX 301 ; N yehwithhamzaabove ; B 24 -147 277 417 ;
+C -1 ; WX 268 ; N yehwithhamzaabovefinal ; B 24 -157 268 417 ;
+C -1 ; WX 180 ; N yehwithhamzaaboveinitial ; B 0 0 156 455 ;
+C -1 ; WX 301 ; N yehwithhamzaaboveisolated ; B 24 -147 277 417 ;
+C -1 ; WX 165 ; N yehwithhamzaabovemedial ; B 0 0 165 405 ;
+C -1 ; WX 406 ; N zah ; B 24 0 381 481 ;
+C -1 ; WX 396 ; N zahfinal ; B 24 0 396 467 ;
+C -1 ; WX 330 ; N zahinitial ; B 0 0 305 467 ;
+C -1 ; WX 406 ; N zahisolated ; B 24 0 381 481 ;
+C -1 ; WX 321 ; N zahmedial ; B 0 0 321 467 ;
+C -1 ; WX 241 ; N zain ; B 24 -184 216 396 ;
+C -1 ; WX 258 ; N zainfinal ; B 24 -183 258 419 ;
+C -1 ; WX 241 ; N zainisolated ; B 24 -184 216 396 ;
+C -1 ; WX 11 ; N zerojoin ; B -28 0 39 765 ;
+C -1 ; WX 11 ; N zeronojoin ; B 0 0 11 715 ;
+C -1 ; WX 0 ; N zerowidthnobreakspace ; B 0 0 0 0 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/arabeyes/ae_almohanad_xxbold.afm b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/arabeyes/ae_almohanad_xxbold.afm
new file mode 100644
index 0000000000..ad9f3a50cd
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/arabeyes/ae_almohanad_xxbold.afm
@@ -0,0 +1,377 @@
+StartFontMetrics 2.0
+Comment Panose 2 0 5 3 0 0 0 2 0 4
+FullName ae_AlMohanad Extra Bold2
+FontName ae_AlMohanadExtraBold2
+FamilyName ae_AlMohanad Extra Bold2
+Weight ExtraBold
+Notice Typeface and data 2003, Arabeyes.org. This font is distributed under the terms of GPL license.
+Version 001.001
+IsFixedPitch false
+ItalicAngle 0.00
+FontBBox -157 -188 1074 437
+Ascender 754
+Descender -146
+XHeight 510
+CapHeight 712
+UnderlinePosition -188
+UnderlineThickness 48
+EncodingScheme FontSpecific
+StartCharMetrics 356
+C 32 ; WX 244 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 333 ; N exclam ; B 92 -38 241 702 ;
+C 34 ; WX 270 ; N quotedbl ; B 15 366 255 652 ;
+C 35 ; WX 667 ; N numbersign ; B 25 9 641 750 ;
+C 36 ; WX 458 ; N dollar ; B 37 -50 450 801 ;
+C 37 ; WX 719 ; N percent ; B 21 9 698 739 ;
+C 38 ; WX 635 ; N ampersand ; B 16 24 673 726 ;
+C 39 ; WX 156 ; N quotesingle ; B 30 418 150 726 ;
+C 40 ; WX 319 ; N parenleft ; B 50 -317 299 737 ;
+C 41 ; WX 319 ; N parenright ; B 25 -315 273 741 ;
+C 42 ; WX 332 ; N asterisk ; B 0 317 332 659 ;
+C 43 ; WX 462 ; N plus ; B 32 39 427 446 ;
+C 44 ; WX 158 ; N comma ; B 16 -97 125 90 ;
+C 45 ; WX 385 ; N hyphenminus ; B 10 14 375 134 ;
+C 46 ; WX 127 ; N period ; B 2 -24 128 113 ;
+C 47 ; WX 275 ; N slash ; B -4 -31 274 621 ;
+C 48 ; WX 552 ; N zero ; B 19 24 534 729 ;
+C 49 ; WX 390 ; N one ; B 27 38 354 741 ;
+C 50 ; WX 538 ; N two ; B 28 16 530 726 ;
+C 51 ; WX 491 ; N three ; B 27 23 484 725 ;
+C 52 ; WX 538 ; N four ; B 11 39 511 731 ;
+C 53 ; WX 491 ; N five ; B 33 22 476 734 ;
+C 54 ; WX 538 ; N six ; B 30 24 518 726 ;
+C 55 ; WX 488 ; N seven ; B 32 24 490 720 ;
+C 56 ; WX 552 ; N eight ; B 26 24 541 726 ;
+C 57 ; WX 540 ; N nine ; B 36 24 522 726 ;
+C 58 ; WX 244 ; N colon ; B 47 15 188 475 ;
+C 59 ; WX 244 ; N semicolon ; B 48 -115 211 471 ;
+C 60 ; WX 634 ; N less ; B 28 98 595 658 ;
+C 61 ; WX 455 ; N equal ; B 32 152 428 330 ;
+C 62 ; WX 634 ; N greater ; B 31 95 598 655 ;
+C 63 ; WX 465 ; N question ; B 27 24 453 726 ;
+C 64 ; WX 917 ; N at ; B 30 -179 927 781 ;
+C 65 ; WX 604 ; N A ; B -15 39 623 738 ;
+C 66 ; WX 542 ; N B ; B 9 39 527 712 ;
+C 67 ; WX 615 ; N C ; B 18 24 608 726 ;
+C 68 ; WX 708 ; N D ; B 12 39 692 712 ;
+C 69 ; WX 479 ; N E ; B 12 17 495 736 ;
+C 70 ; WX 488 ; N F ; B 10 39 454 733 ;
+C 71 ; WX 667 ; N G ; B 20 16 660 726 ;
+C 72 ; WX 687 ; N H ; B 10 39 676 712 ;
+C 73 ; WX 302 ; N I ; B 16 39 294 712 ;
+C 74 ; WX 441 ; N J ; B 26 -186 410 708 ;
+C 75 ; WX 634 ; N K ; B -5 33 602 706 ;
+C 76 ; WX 538 ; N L ; B 36 16 520 712 ;
+C 77 ; WX 951 ; N M ; B 23 18 938 714 ;
+C 78 ; WX 731 ; N N ; B 21 13 715 708 ;
+C 79 ; WX 733 ; N O ; B 29 38 724 740 ;
+C 80 ; WX 584 ; N P ; B 43 35 547 708 ;
+C 81 ; WX 782 ; N Q ; B 32 -163 755 727 ;
+C 82 ; WX 638 ; N R ; B 30 39 607 712 ;
+C 83 ; WX 441 ; N S ; B 22 21 436 722 ;
+C 84 ; WX 589 ; N T ; B 26 39 573 734 ;
+C 85 ; WX 689 ; N U ; B 3 24 687 712 ;
+C 86 ; WX 638 ; N V ; B -1 17 634 712 ;
+C 87 ; WX 980 ; N W ; B 8 16 988 712 ;
+C 88 ; WX 660 ; N X ; B 9 34 645 707 ;
+C 89 ; WX 686 ; N Y ; B 22 37 648 710 ;
+C 90 ; WX 634 ; N Z ; B 19 17 606 734 ;
+C 91 ; WX 312 ; N bracketleft ; B 85 -74 283 778 ;
+C 92 ; WX 510 ; N backslash ; B 21 21 490 784 ;
+C 93 ; WX 312 ; N bracketright ; B 46 -74 224 777 ;
+C 94 ; WX 469 ; N asciicircum ; B -21 313 489 712 ;
+C 95 ; WX 500 ; N underscore ; B -25 -149 525 -51 ;
+C 96 ; WX 333 ; N grave ; B 62 554 228 761 ;
+C 97 ; WX 488 ; N a ; B 9 24 482 548 ;
+C 98 ; WX 510 ; N b ; B -20 8 511 786 ;
+C 99 ; WX 448 ; N c ; B 2 24 431 549 ;
+C 100 ; WX 538 ; N d ; B 2 24 531 785 ;
+C 101 ; WX 437 ; N e ; B 2 24 437 547 ;
+C 102 ; WX 344 ; N f ; B 6 39 359 755 ;
+C 103 ; WX 500 ; N g ; B -36 -185 510 547 ;
+C 104 ; WX 552 ; N h ; B 5 39 551 788 ;
+C 105 ; WX 271 ; N i ; B 9 39 272 751 ;
+C 106 ; WX 297 ; N j ; B 1 -186 289 750 ;
+C 107 ; WX 538 ; N k ; B 5 39 532 788 ;
+C 108 ; WX 295 ; N l ; B 29 36 292 785 ;
+C 109 ; WX 802 ; N m ; B 6 39 804 548 ;
+C 110 ; WX 552 ; N n ; B 6 39 551 549 ;
+C 111 ; WX 490 ; N o ; B 1 24 487 547 ;
+C 112 ; WX 531 ; N p ; B -2 -169 529 548 ;
+C 113 ; WX 521 ; N q ; B 2 -170 533 562 ;
+C 114 ; WX 396 ; N r ; B 5 39 404 548 ;
+C 115 ; WX 365 ; N s ; B 21 24 358 548 ;
+C 116 ; WX 292 ; N t ; B -5 24 302 697 ;
+C 117 ; WX 552 ; N u ; B -4 23 551 550 ;
+C 118 ; WX 492 ; N v ; B -13 16 503 535 ;
+C 119 ; WX 780 ; N w ; B -7 16 776 535 ;
+C 120 ; WX 521 ; N x ; B -4 39 532 535 ;
+C 121 ; WX 488 ; N y ; B -39 -183 496 535 ;
+C 122 ; WX 448 ; N z ; B 10 16 436 557 ;
+C 123 ; WX 366 ; N braceleft ; B 78 -122 288 879 ;
+C 124 ; WX 510 ; N bar ; B 209 -169 301 779 ;
+C 125 ; WX 366 ; N braceright ; B 75 -122 285 879 ;
+C 126 ; WX 667 ; N asciitilde ; B 51 283 615 474 ;
+C 127 ; WX 781 ; N delete ; B 23 39 762 374 ;
+C 130 ; WX 500 ; N quotesinglbase ; B 0 0 0 0 ;
+C 131 ; WX 531 ; N florin ; B -62 -170 559 760 ;
+C 136 ; WX 333 ; N circumflex ; B -33 578 365 750 ;
+C 138 ; WX 448 ; N Scaron ; B 27 24 457 903 ;
+C 140 ; WX 865 ; N OE ; B 19 16 872 735 ;
+C 154 ; WX 365 ; N scaron ; B -9 24 390 744 ;
+C 156 ; WX 823 ; N oe ; B 3 24 812 549 ;
+C 159 ; WX 583 ; N Ydieresis ; B -2 39 623 892 ;
+C 160 ; WX 244 ; N nbspace ; B 0 0 0 0 ;
+C 161 ; WX 317 ; N exclamdown ; B 68 -104 231 547 ;
+C 162 ; WX 448 ; N cent ; B 2 39 431 712 ;
+C 163 ; WX 583 ; N sterling ; B 38 13 611 726 ;
+C 164 ; WX 500 ; N currency ; B -18 129 517 661 ;
+C 165 ; WX 583 ; N yen ; B -2 39 623 712 ;
+C 166 ; WX 200 ; N brokenbar ; B 59 -177 139 782 ;
+C 167 ; WX 417 ; N section ; B 27 -182 392 752 ;
+C 168 ; WX 333 ; N dieresis ; B 10 585 325 733 ;
+C 169 ; WX 765 ; N copyright ; B 18 -14 748 726 ;
+C 170 ; WX 312 ; N ordfeminine ; B -1 364 326 728 ;
+C 171 ; WX 417 ; N guillemotleft ; B 6 39 431 475 ;
+C 172 ; WX 667 ; N logicalnot ; B 50 215 616 544 ;
+C 173 ; WX 564 ; N sfthyphen ; B -2 428 560 516 ;
+C 174 ; WX 765 ; N registered ; B 18 -14 748 726 ;
+C 175 ; WX 333 ; N overscore ; B 21 609 314 710 ;
+C 176 ; WX 375 ; N degree ; B 31 383 368 729 ;
+C 177 ; WX 462 ; N plusminus ; B 32 -2 427 446 ;
+C 178 ; WX 354 ; N twosuperior ; B 12 342 337 777 ;
+C 179 ; WX 354 ; N threesuperior ; B 33 345 331 776 ;
+C 180 ; WX 333 ; N acute ; B 104 555 271 761 ;
+C 181 ; WX 510 ; N micro ; B 9 -178 524 535 ;
+C 182 ; WX 437 ; N paragraph ; B -23 -185 458 712 ;
+C 183 ; WX 198 ; N middot ; B 22 292 179 458 ;
+C 184 ; WX 333 ; N cedilla ; B 86 -138 285 99 ;
+C 185 ; WX 354 ; N onesuperior ; B 62 350 289 784 ;
+C 186 ; WX 323 ; N ordmasculine ; B -4 364 331 726 ;
+C 187 ; WX 417 ; N guillemotright ; B -14 39 411 475 ;
+C 188 ; WX 854 ; N onequarter ; B 66 23 832 785 ;
+C 189 ; WX 854 ; N onehalf ; B 66 21 837 785 ;
+C 190 ; WX 854 ; N threequarters ; B 36 23 833 777 ;
+C 191 ; WX 448 ; N questiondown ; B -24 -186 401 515 ;
+C 192 ; WX 604 ; N Agrave ; B -15 39 623 918 ;
+C 215 ; WX 462 ; N multiply ; B 32 48 423 437 ;
+C 224 ; WX 469 ; N agrave ; B 9 24 482 761 ;
+C 226 ; WX 469 ; N acircumflex ; B 9 24 482 750 ;
+C 231 ; WX 448 ; N ccedilla ; B 6 -139 433 547 ;
+C 232 ; WX 437 ; N egrave ; B 2 24 437 761 ;
+C 233 ; WX 437 ; N eacute ; B 2 24 437 761 ;
+C 234 ; WX 437 ; N ecircumflex ; B 2 24 437 750 ;
+C 235 ; WX 437 ; N edieresis ; B 2 24 437 733 ;
+C 238 ; WX 271 ; N icircumflex ; B -71 39 327 750 ;
+C 239 ; WX 271 ; N idieresis ; B -22 39 292 733 ;
+C 244 ; WX 490 ; N ocircumflex ; B 1 24 487 750 ;
+C 247 ; WX 462 ; N divide ; B 32 39 427 442 ;
+C 249 ; WX 552 ; N ugrave ; B -4 23 551 761 ;
+C 251 ; WX 552 ; N ucircumflex ; B -4 23 551 750 ;
+C 252 ; WX 552 ; N udieresis ; B -4 23 551 733 ;
+C 255 ; WX 469 ; N ydieresis ; B -39 -183 496 733 ;
+C -1 ; WX 0 ; N .null ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _158 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _195 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _200 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _213 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _215 ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _228 ; B 0 0 0 0 ;
+C -1 ; WX 549 ; N ain ; B 29 -358 551 357 ;
+C -1 ; WX 481 ; N ainfinal ; B 29 -340 526 315 ;
+C -1 ; WX 513 ; N aininitial ; B -20 -24 502 349 ;
+C -1 ; WX 549 ; N ainisolated ; B 29 -358 551 357 ;
+C -1 ; WX 410 ; N ainmedial ; B -20 -24 429 301 ;
+C -1 ; WX 220 ; N aleffinal ; B 28 -24 240 568 ;
+C -1 ; WX 192 ; N alefisolated ; B 29 -80 163 542 ;
+C -1 ; WX 633 ; N alefmaksura ; B 29 -182 604 388 ;
+C -1 ; WX 566 ; N alefmaksurafinal ; B 29 -220 585 192 ;
+C -1 ; WX 633 ; N alefmaksuraisolated ; B 29 -182 604 388 ;
+C -1 ; WX 248 ; N alefwithhamzaabove ; B 29 -89 233 570 ;
+C -1 ; WX 250 ; N alefwithhamzaabovefinal ; B 29 -24 270 639 ;
+C -1 ; WX 248 ; N alefwithhamzaaboveisolated ; B 29 -89 233 570 ;
+C -1 ; WX 248 ; N alefwithhamzabelow ; B 29 -219 234 548 ;
+C -1 ; WX 222 ; N alefwithhamzabelowfinal ; B 28 -272 257 568 ;
+C -1 ; WX 248 ; N alefwithhamzabelowisolated ; B 29 -219 234 548 ;
+C -1 ; WX 307 ; N alefwithmaddaabove ; B 18 -80 307 538 ;
+C -1 ; WX 281 ; N alefwithmaddaabovefinal ; B 29 -24 319 615 ;
+C -1 ; WX 307 ; N alefwithmaddaaboveisolated ; B 18 -80 307 538 ;
+C -1 ; WX 814 ; N allahisolated ; B 23 -28 785 795 ;
+C -1 ; WX 192 ; N arabicalef ; B 29 -80 163 542 ;
+C -1 ; WX 195 ; N arabiccomma ; B -4 -24 160 291 ;
+C -1 ; WX 398 ; N arabicfivepointedstar ; B -52 53 439 505 ;
+C -1 ; WX 383 ; N arabicindicdigiteight ; B -1 -61 391 452 ;
+C -1 ; WX 383 ; N arabicindicdigitfive ; B 44 25 353 431 ;
+C -1 ; WX 383 ; N arabicindicdigitfour ; B 65 -55 332 489 ;
+C -1 ; WX 383 ; N arabicindicdigitnine ; B 35 -72 353 487 ;
+C -1 ; WX 383 ; N arabicindicdigitone ; B 92 -56 287 479 ;
+C -1 ; WX 383 ; N arabicindicdigitseven ; B -12 -32 387 481 ;
+C -1 ; WX 383 ; N arabicindicdigitsix ; B 18 -42 348 469 ;
+C -1 ; WX 383 ; N arabicindicdigitthree ; B -17 -64 393 464 ;
+C -1 ; WX 383 ; N arabicindicdigittwo ; B 36 -62 344 473 ;
+C -1 ; WX 383 ; N arabicindicdigitzero ; B 94 62 283 322 ;
+C -1 ; WX 718 ; N arabickaf ; B 29 -24 702 564 ;
+C -1 ; WX 1055 ; N arabickaffinal ; B 29 -25 1074 505 ;
+C -1 ; WX 383 ; N arabicpercentsign ; B 10 -67 372 537 ;
+C -1 ; WX 340 ; N arabicquestionmark ; B 29 -58 311 502 ;
+C -1 ; WX 247 ; N arabicsemicolon ; B -19 -31 159 410 ;
+C -1 ; WX 635 ; N beh ; B 29 -230 606 335 ;
+C -1 ; WX 645 ; N behfinal ; B 29 -241 664 328 ;
+C -1 ; WX 338 ; N behinitial ; B -20 -241 309 339 ;
+C -1 ; WX 635 ; N behisolated ; B 29 -230 606 335 ;
+C -1 ; WX 321 ; N behmedial ; B -20 -234 341 306 ;
+C -1 ; WX 333 ; N caron ; B -35 572 364 744 ;
+C -1 ; WX 1062 ; N dad ; B 29 -223 1032 496 ;
+C -1 ; WX 1033 ; N dadfinal ; B 29 -223 1053 494 ;
+C -1 ; WX 795 ; N dadinitial ; B -20 -24 766 495 ;
+C -1 ; WX 1062 ; N dadisolated ; B 29 -223 1032 496 ;
+C -1 ; WX 761 ; N dadmedial ; B -20 -24 780 458 ;
+C -1 ; WX 364 ; N dal ; B 28 -25 334 370 ;
+C -1 ; WX 440 ; N dalfinal ; B 29 -27 459 427 ;
+C -1 ; WX 364 ; N dalisolated ; B 28 -25 334 370 ;
+C -1 ; WX 202 ; N dammah ; B -57 625 198 881 ;
+C -1 ; WX 229 ; N dammatan ; B 15 622 249 876 ;
+C -1 ; WX 271 ; N dotlessi ; B 9 39 272 548 ;
+C -1 ; WX 199 ; N fathah ; B -5 686 199 893 ;
+C -1 ; WX 199 ; N fathatan ; B -4 625 200 904 ;
+C -1 ; WX 755 ; N feh ; B 29 -24 726 552 ;
+C -1 ; WX 748 ; N fehfinal ; B 29 -25 768 476 ;
+C -1 ; WX 416 ; N fehinitial ; B -20 -24 387 552 ;
+C -1 ; WX 755 ; N fehisolated ; B 29 -24 726 552 ;
+C -1 ; WX 442 ; N fehmedial ; B -20 -24 462 502 ;
+C -1 ; WX 547 ; N ghain ; B 29 -323 551 532 ;
+C -1 ; WX 477 ; N ghainfinal ; B 29 -340 526 519 ;
+C -1 ; WX 513 ; N ghaininitial ; B -20 -24 502 516 ;
+C -1 ; WX 547 ; N ghainisolated ; B 29 -323 551 532 ;
+C -1 ; WX 410 ; N ghainmedial ; B -20 -24 429 495 ;
+C -1 ; WX 548 ; N hah ; B 20 -347 546 300 ;
+C -1 ; WX 546 ; N hahfinal ; B 15 -342 566 302 ;
+C -1 ; WX 637 ; N hahinitial ; B -20 -24 627 305 ;
+C -1 ; WX 548 ; N hahisolated ; B 20 -347 546 300 ;
+C -1 ; WX 656 ; N hahmedial ; B -20 -24 675 305 ;
+C -1 ; WX 392 ; N hamza ; B 29 -105 384 274 ;
+C -1 ; WX 392 ; N hamzaisolated ; B 29 -105 384 274 ;
+C -1 ; WX 372 ; N heh ; B 29 -33 342 345 ;
+C -1 ; WX 391 ; N hehfinal ; B 29 -24 410 465 ;
+C -1 ; WX 524 ; N hehinitial ; B -20 -24 495 402 ;
+C -1 ; WX 372 ; N hehisolated ; B 29 -33 342 345 ;
+C -1 ; WX 412 ; N hehmedial ; B -20 -190 432 344 ;
+C -1 ; WX 548 ; N jeem ; B 20 -347 546 300 ;
+C -1 ; WX 554 ; N jeemfinal ; B 29 -304 573 308 ;
+C -1 ; WX 637 ; N jeeminitial ; B -20 -214 627 305 ;
+C -1 ; WX 548 ; N jeemisolated ; B 20 -347 546 300 ;
+C -1 ; WX 652 ; N jeemmedial ; B -20 -233 671 305 ;
+C -1 ; WX 884 ; N kafinitial ; B -20 -24 854 505 ;
+C -1 ; WX 718 ; N kafisolated ; B 29 -24 702 564 ;
+C -1 ; WX 409 ; N kafmedial ; B -20 -24 429 518 ;
+C -1 ; WX 199 ; N kasrah ; B 6 -412 210 -205 ;
+C -1 ; WX 199 ; N kasratan ; B 16 -423 220 -146 ;
+C -1 ; WX 548 ; N khah ; B 20 -347 546 489 ;
+C -1 ; WX 544 ; N khahfinal ; B 29 -339 564 478 ;
+C -1 ; WX 637 ; N khahinitial ; B -20 -24 627 484 ;
+C -1 ; WX 548 ; N khahisolated ; B 20 -347 546 489 ;
+C -1 ; WX 656 ; N khahmedial ; B -20 -24 675 480 ;
+C -1 ; WX 555 ; N lam ; B 29 -178 538 563 ;
+C -1 ; WX 511 ; N lamfinal ; B 29 -188 531 562 ;
+C -1 ; WX 339 ; N laminitial ; B -20 -24 324 564 ;
+C -1 ; WX 555 ; N lamisolated ; B 29 -178 538 563 ;
+C -1 ; WX 297 ; N lammedial ; B -20 -24 317 569 ;
+C -1 ; WX 625 ; N lamwithaleffinal ; B 29 -72 645 540 ;
+C -1 ; WX 621 ; N lamwithalefhamzaabovefinal ; B 29 -72 641 633 ;
+C -1 ; WX 603 ; N lamwithalefhamzaaboveisolatedd ; B 29 -24 582 685 ;
+C -1 ; WX 617 ; N lamwithalefhamzabelowfinal ; B 29 -272 637 540 ;
+C -1 ; WX 576 ; N lamwithalefhamzabelowisolated ; B 29 -306 548 620 ;
+C -1 ; WX 576 ; N lamwithalefisolated ; B 29 -24 548 620 ;
+C -1 ; WX 618 ; N lamwithalefmaddaabovefinal ; B 21 -72 637 557 ;
+C -1 ; WX 624 ; N lamwithalefmaddaaboveisolatedd ; B 30 -24 596 610 ;
+C -1 ; WX 22 ; N lefttoright ; B -20 -24 179 881 ;
+C -1 ; WX 424 ; N meem ; B 29 -305 398 330 ;
+C -1 ; WX 478 ; N meemfinal ; B 29 -316 498 291 ;
+C -1 ; WX 490 ; N meeminitial ; B -20 -24 460 322 ;
+C -1 ; WX 424 ; N meemisolated ; B 29 -305 398 330 ;
+C -1 ; WX 476 ; N meemmedial ; B -20 -78 496 291 ;
+C -1 ; WX 244 ; N nonmarkingreturn ; B 0 0 0 0 ;
+C -1 ; WX 532 ; N noon ; B 29 -151 503 458 ;
+C -1 ; WX 548 ; N noonfinal ; B 29 -235 567 419 ;
+C -1 ; WX 336 ; N nooninitial ; B -20 -24 307 495 ;
+C -1 ; WX 532 ; N noonisolated ; B 29 -151 503 458 ;
+C -1 ; WX 326 ; N noonmedial ; B -20 -24 345 488 ;
+C -1 ; WX 467 ; N ornateleftparenthesis ; B 29 -180 437 592 ;
+C -1 ; WX 467 ; N ornaterightparenthesis ; B 29 -180 438 592 ;
+C -1 ; WX 575 ; N qaf ; B 29 -212 545 500 ;
+C -1 ; WX 550 ; N qaffinal ; B 29 -216 570 485 ;
+C -1 ; WX 417 ; N qafinitial ; B -20 -24 387 541 ;
+C -1 ; WX 575 ; N qafisolated ; B 29 -212 545 500 ;
+C -1 ; WX 442 ; N qafmedial ; B -20 -24 462 483 ;
+C -1 ; WX 481 ; N reh ; B 29 -229 452 290 ;
+C -1 ; WX 517 ; N rehfinal ; B 29 -227 536 268 ;
+C -1 ; WX 481 ; N rehisolated ; B 29 -229 452 290 ;
+C -1 ; WX 22 ; N righttoleft ; B -157 -24 42 881 ;
+C -1 ; WX 1062 ; N sad ; B 29 -223 1032 309 ;
+C -1 ; WX 1033 ; N sadfinal ; B 29 -223 1053 309 ;
+C -1 ; WX 795 ; N sadinitial ; B -20 -24 766 317 ;
+C -1 ; WX 1062 ; N sadisolated ; B 29 -223 1032 309 ;
+C -1 ; WX 758 ; N sadmedial ; B -20 -24 778 317 ;
+C -1 ; WX 875 ; N seen ; B 29 -233 846 294 ;
+C -1 ; WX 872 ; N seenfinal ; B 29 -223 891 299 ;
+C -1 ; WX 609 ; N seeninitial ; B -20 -28 580 303 ;
+C -1 ; WX 875 ; N seenisolated ; B 29 -233 846 294 ;
+C -1 ; WX 588 ; N seenmedial ; B -20 -24 608 306 ;
+C -1 ; WX 208 ; N shaddah ; B -8 676 204 893 ;
+C -1 ; WX 875 ; N sheen ; B 29 -233 846 527 ;
+C -1 ; WX 872 ; N sheenfinal ; B 29 -223 891 527 ;
+C -1 ; WX 609 ; N sheeninitial ; B -20 -28 580 492 ;
+C -1 ; WX 875 ; N sheenisolated ; B 29 -233 846 527 ;
+C -1 ; WX 587 ; N sheenmedial ; B -20 -24 607 515 ;
+C -1 ; WX 160 ; N sukun ; B -5 685 160 885 ;
+C -1 ; WX 812 ; N tah ; B 29 -24 782 562 ;
+C -1 ; WX 793 ; N tahfinal ; B 29 -24 812 550 ;
+C -1 ; WX 659 ; N tahinitial ; B -20 -24 630 554 ;
+C -1 ; WX 812 ; N tahisolated ; B 29 -24 782 562 ;
+C -1 ; WX 647 ; N tahmedial ; B -20 -24 667 550 ;
+C -1 ; WX 390 ; N tatweel ; B -20 -24 409 125 ;
+C -1 ; WX 635 ; N teh ; B 29 -24 606 479 ;
+C -1 ; WX 645 ; N tehfinal ; B 29 -24 664 437 ;
+C -1 ; WX 345 ; N tehinitial ; B -20 -24 332 510 ;
+C -1 ; WX 635 ; N tehisolated ; B 29 -24 606 479 ;
+C -1 ; WX 370 ; N tehmarbuta ; B 29 -33 340 506 ;
+C -1 ; WX 419 ; N tehmarbutafinal ; B 19 -24 439 538 ;
+C -1 ; WX 370 ; N tehmarbutaisolated ; B 29 -33 340 506 ;
+C -1 ; WX 336 ; N tehmedial ; B -20 -24 355 496 ;
+C -1 ; WX 364 ; N thal ; B 28 -25 334 513 ;
+C -1 ; WX 440 ; N thalfinal ; B 29 -27 459 492 ;
+C -1 ; WX 364 ; N thalisolated ; B 28 -25 334 513 ;
+C -1 ; WX 635 ; N theh ; B 29 -24 606 481 ;
+C -1 ; WX 645 ; N thehfinal ; B 29 -24 664 480 ;
+C -1 ; WX 393 ; N thehinitial ; B -20 -24 364 533 ;
+C -1 ; WX 635 ; N thehisolated ; B 29 -24 606 481 ;
+C -1 ; WX 345 ; N thehmedial ; B -20 -24 365 528 ;
+C -1 ; WX 503 ; N waw ; B 29 -230 474 317 ;
+C -1 ; WX 461 ; N wawfinal ; B 29 -221 481 312 ;
+C -1 ; WX 503 ; N wawisolated ; B 29 -230 474 317 ;
+C -1 ; WX 497 ; N wawwithhamzaabove ; B 29 -230 467 493 ;
+C -1 ; WX 461 ; N wawwithhamzaabovefinal ; B 29 -221 481 512 ;
+C -1 ; WX 497 ; N wawwithhamzaaboveisolated ; B 29 -230 467 493 ;
+C -1 ; WX 644 ; N yeh ; B 29 -313 614 393 ;
+C -1 ; WX 560 ; N yehfinal ; B 29 -364 580 192 ;
+C -1 ; WX 357 ; N yehinitial ; B -20 -239 328 340 ;
+C -1 ; WX 644 ; N yehisolated ; B 29 -313 614 393 ;
+C -1 ; WX 333 ; N yehmedial ; B -20 -226 353 297 ;
+C -1 ; WX 603 ; N yehwithhamzaabove ; B 29 -188 573 487 ;
+C -1 ; WX 535 ; N yehwithhamzaabovefinal ; B 29 -199 555 487 ;
+C -1 ; WX 360 ; N yehwithhamzaaboveinitial ; B -20 -24 331 529 ;
+C -1 ; WX 603 ; N yehwithhamzaaboveisolated ; B 29 -188 573 487 ;
+C -1 ; WX 329 ; N yehwithhamzaabovemedial ; B -20 -24 349 475 ;
+C -1 ; WX 812 ; N zah ; B 29 -24 782 562 ;
+C -1 ; WX 793 ; N zahfinal ; B 29 -24 812 550 ;
+C -1 ; WX 659 ; N zahinitial ; B -20 -24 630 554 ;
+C -1 ; WX 812 ; N zahisolated ; B 29 -24 782 562 ;
+C -1 ; WX 643 ; N zahmedial ; B -20 -24 662 550 ;
+C -1 ; WX 481 ; N zain ; B 29 -229 452 464 ;
+C -1 ; WX 517 ; N zainfinal ; B 29 -227 536 496 ;
+C -1 ; WX 481 ; N zainisolated ; B 29 -229 452 464 ;
+C -1 ; WX 22 ; N zerojoin ; B -86 -24 109 880 ;
+C -1 ; WX 22 ; N zeronojoin ; B -20 -24 42 819 ;
+C -1 ; WX 0 ; N zerowidthnobreakspace ; B 0 0 0 0 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/arial.afm b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/arial.afm
new file mode 100644
index 0000000000..e6ae21480c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/arial.afm
@@ -0,0 +1,1011 @@
+StartFontMetrics 2.0
+Comment Panose 2 11 6 4 2 2 2 2 2 4
+FullName Arial
+FontName ArialMT
+FamilyName Arial
+Weight Normal
+Notice Typeface The Monotype Corporation plc. Data The Monotype Corporation plc/Type Solutions Inc. 1990-1992. All Rights Reserved
+IsFixedPitch false
+ItalicAngle 0.00
+FontBBox -222 -212 2028 905
+Ascender 728
+Descender -210
+XHeight 519
+CapHeight 716
+UnderlinePosition -292
+UnderlineThickness 150
+EncodingScheme FontSpecific
+StartCharMetrics 865
+C 32 ; WX 278 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 278 ; N exclam ; B 86 0 195 716 ;
+C 34 ; WX 355 ; N quotedbl ; B 46 462 308 716 ;
+C 35 ; WX 556 ; N numbersign ; B 10 -12 543 728 ;
+C 36 ; WX 556 ; N dollar ; B 36 -103 509 782 ;
+C 37 ; WX 889 ; N percent ; B 58 -26 828 728 ;
+C 38 ; WX 667 ; N ampersand ; B 43 -17 644 728 ;
+C 39 ; WX 191 ; N quotesingle ; B 44 462 144 716 ;
+C 40 ; WX 333 ; N parenleft ; B 61 -210 297 728 ;
+C 41 ; WX 333 ; N parenright ; B 61 -210 297 728 ;
+C 42 ; WX 389 ; N asterisk ; B 31 423 354 728 ;
+C 43 ; WX 584 ; N plus ; B 56 116 528 589 ;
+C 44 ; WX 278 ; N comma ; B 83 -142 189 100 ;
+C 45 ; WX 333 ; N hyphen ; B 32 215 302 303 ;
+C 46 ; WX 278 ; N period ; B 91 0 191 100 ;
+C 47 ; WX 278 ; N slash ; B 0 -12 278 728 ;
+C 48 ; WX 556 ; N zero ; B 42 -12 508 719 ;
+C 49 ; WX 556 ; N one ; B 109 0 373 719 ;
+C 50 ; WX 556 ; N two ; B 29 0 503 719 ;
+C 51 ; WX 556 ; N three ; B 42 -13 511 719 ;
+C 52 ; WX 556 ; N four ; B 13 0 508 716 ;
+C 53 ; WX 556 ; N five ; B 42 -12 516 706 ;
+C 54 ; WX 556 ; N six ; B 38 -12 510 719 ;
+C 55 ; WX 556 ; N seven ; B 47 0 511 707 ;
+C 56 ; WX 556 ; N eight ; B 41 -12 512 719 ;
+C 57 ; WX 556 ; N nine ; B 42 -12 512 719 ;
+C 58 ; WX 278 ; N colon ; B 90 0 190 519 ;
+C 59 ; WX 278 ; N semicolon ; B 83 -142 189 519 ;
+C 60 ; WX 584 ; N less ; B 55 110 529 595 ;
+C 61 ; WX 584 ; N equal ; B 56 204 528 503 ;
+C 62 ; WX 584 ; N greater ; B 55 110 529 595 ;
+C 63 ; WX 556 ; N question ; B 44 0 506 728 ;
+C 64 ; WX 1015 ; N at ; B 54 -210 979 729 ;
+C 65 ; WX 667 ; N A ; B -1 0 668 716 ;
+C 66 ; WX 667 ; N B ; B 73 0 614 716 ;
+C 67 ; WX 722 ; N C ; B 50 -12 683 728 ;
+C 68 ; WX 722 ; N D ; B 77 0 669 716 ;
+C 69 ; WX 667 ; N E ; B 79 0 613 716 ;
+C 70 ; WX 611 ; N F ; B 82 0 565 716 ;
+C 71 ; WX 778 ; N G ; B 53 -12 715 728 ;
+C 72 ; WX 722 ; N H ; B 80 0 642 716 ;
+C 73 ; WX 278 ; N I ; B 93 0 188 716 ;
+C 74 ; WX 500 ; N J ; B 27 -12 422 716 ;
+C 75 ; WX 667 ; N K ; B 73 0 665 716 ;
+C 76 ; WX 556 ; N L ; B 73 0 521 716 ;
+C 77 ; WX 833 ; N M ; B 74 0 757 716 ;
+C 78 ; WX 722 ; N N ; B 76 0 640 716 ;
+C 79 ; WX 778 ; N O ; B 48 -12 733 729 ;
+C 80 ; WX 667 ; N P ; B 77 0 624 716 ;
+C 81 ; WX 778 ; N Q ; B 43 -56 741 729 ;
+C 82 ; WX 722 ; N R ; B 79 0 709 716 ;
+C 83 ; WX 667 ; N S ; B 45 -12 615 728 ;
+C 84 ; WX 611 ; N T ; B 23 0 591 716 ;
+C 85 ; WX 722 ; N U ; B 79 -12 642 716 ;
+C 86 ; WX 667 ; N V ; B 4 0 659 716 ;
+C 87 ; WX 944 ; N W ; B 12 0 933 716 ;
+C 88 ; WX 667 ; N X ; B 4 0 661 716 ;
+C 89 ; WX 667 ; N Y ; B 3 0 659 716 ;
+C 90 ; WX 611 ; N Z ; B 20 0 586 716 ;
+C 91 ; WX 278 ; N bracketleft ; B 68 -199 262 716 ;
+C 92 ; WX 278 ; N backslash ; B 0 -12 278 728 ;
+C 93 ; WX 278 ; N bracketright ; B 19 -199 213 716 ;
+C 94 ; WX 469 ; N asciicircum ; B 26 337 443 728 ;
+C 95 ; WX 556 ; N underscore ; B -15 -199 567 -135 ;
+C 96 ; WX 333 ; N grave ; B 43 583 227 720 ;
+C 97 ; WX 556 ; N a ; B 36 -12 514 530 ;
+C 98 ; WX 556 ; N b ; B 65 -12 515 716 ;
+C 99 ; WX 500 ; N c ; B 39 -12 491 530 ;
+C 100 ; WX 556 ; N d ; B 34 -12 484 716 ;
+C 101 ; WX 556 ; N e ; B 37 -12 515 530 ;
+C 102 ; WX 278 ; N f ; B 9 0 312 728 ;
+C 103 ; WX 556 ; N g ; B 32 -210 489 530 ;
+C 104 ; WX 556 ; N h ; B 66 0 488 716 ;
+C 105 ; WX 222 ; N i ; B 66 0 154 716 ;
+C 106 ; WX 222 ; N j ; B -46 -210 153 716 ;
+C 107 ; WX 500 ; N k ; B 66 0 496 716 ;
+C 108 ; WX 222 ; N l ; B 64 0 152 716 ;
+C 109 ; WX 833 ; N m ; B 66 0 769 530 ;
+C 110 ; WX 556 ; N n ; B 66 0 487 530 ;
+C 111 ; WX 556 ; N o ; B 33 -12 519 530 ;
+C 112 ; WX 556 ; N p ; B 66 -199 516 530 ;
+C 113 ; WX 556 ; N q ; B 35 -199 484 530 ;
+C 114 ; WX 333 ; N r ; B 65 0 347 530 ;
+C 115 ; WX 500 ; N s ; B 31 -12 461 530 ;
+C 116 ; WX 278 ; N t ; B 18 -7 271 700 ;
+C 117 ; WX 556 ; N u ; B 64 -12 484 519 ;
+C 118 ; WX 500 ; N v ; B 13 0 488 519 ;
+C 119 ; WX 722 ; N w ; B 3 0 714 519 ;
+C 120 ; WX 500 ; N x ; B 7 0 493 519 ;
+C 121 ; WX 500 ; N y ; B 16 -210 491 519 ;
+C 122 ; WX 500 ; N z ; B 20 0 479 519 ;
+C 123 ; WX 334 ; N braceleft ; B 28 -210 311 728 ;
+C 124 ; WX 260 ; N bar ; B 92 -210 168 728 ;
+C 125 ; WX 334 ; N braceright ; B 23 -210 306 728 ;
+C 126 ; WX 584 ; N asciitilde ; B 42 272 542 432 ;
+C 128 ; WX 556 ; N uni20AC ; B -14 -12 541 728 ;
+C 130 ; WX 222 ; N quotesinglbase ; B 53 -132 155 102 ;
+C 131 ; WX 556 ; N florin ; B 22 -210 530 729 ;
+C 132 ; WX 333 ; N quotedblbase ; B 35 -132 288 102 ;
+C 133 ; WX 1000 ; N ellipsis ; B 117 0 884 100 ;
+C 134 ; WX 556 ; N dagger ; B 36 -169 515 699 ;
+C 135 ; WX 556 ; N daggerdbl ; B 36 -169 517 706 ;
+C 136 ; WX 333 ; N circumflex ; B 12 583 321 720 ;
+C 137 ; WX 1000 ; N perthousand ; B 18 -26 982 728 ;
+C 138 ; WX 667 ; N Scaron ; B 45 -12 615 894 ;
+C 139 ; WX 333 ; N guilsinglleft ; B 45 35 271 480 ;
+C 140 ; WX 1000 ; N OE ; B 63 -12 968 728 ;
+C 142 ; WX 611 ; N Zcaron ; B 20 0 586 894 ;
+C 145 ; WX 222 ; N quoteleft ; B 62 494 165 728 ;
+C 146 ; WX 222 ; N quoteright ; B 53 489 155 723 ;
+C 147 ; WX 333 ; N quotedblleft ; B 41 494 294 728 ;
+C 148 ; WX 333 ; N quotedblright ; B 35 489 288 723 ;
+C 149 ; WX 350 ; N bullet ; B 53 227 301 474 ;
+C 150 ; WX 556 ; N endash ; B -2 224 554 294 ;
+C 151 ; WX 1000 ; N emdash ; B 0 224 1000 294 ;
+C 152 ; WX 333 ; N tilde ; B 3 595 330 708 ;
+C 153 ; WX 1000 ; N trademark ; B 110 318 871 716 ;
+C 154 ; WX 500 ; N scaron ; B 31 -12 461 720 ;
+C 155 ; WX 333 ; N guilsinglright ; B 45 35 266 480 ;
+C 156 ; WX 944 ; N oe ; B 40 -12 908 530 ;
+C 158 ; WX 500 ; N zcaron ; B 20 0 479 720 ;
+C 159 ; WX 667 ; N Ydieresis ; B 3 0 659 860 ;
+C 160 ; WX 278 ; N space ; B 0 0 0 0 ;
+C 161 ; WX 333 ; N exclamdown ; B 113 -197 222 519 ;
+C 162 ; WX 556 ; N cent ; B 52 -200 505 716 ;
+C 163 ; WX 556 ; N sterling ; B 13 -14 528 728 ;
+C 164 ; WX 556 ; N currency ; B 36 115 516 594 ;
+C 165 ; WX 556 ; N yen ; B -1 0 553 716 ;
+C 166 ; WX 260 ; N brokenbar ; B 92 -210 168 728 ;
+C 167 ; WX 556 ; N section ; B 40 -210 510 728 ;
+C 168 ; WX 333 ; N dieresis ; B 30 620 304 720 ;
+C 169 ; WX 737 ; N copyright ; B 1 -9 738 728 ;
+C 170 ; WX 370 ; N ordfeminine ; B 23 364 351 728 ;
+C 171 ; WX 556 ; N guillemotleft ; B 65 35 484 480 ;
+C 172 ; WX 584 ; N logicalnot ; B 56 207 528 503 ;
+C 173 ; WX 333 ; N hyphen ; B 32 215 302 303 ;
+C 174 ; WX 737 ; N registered ; B 1 -9 738 728 ;
+C 175 ; WX 333 ; N overscore ; B 14 599 319 671 ;
+C 176 ; WX 400 ; N degree ; B 62 457 333 728 ;
+C 177 ; WX 549 ; N plusminus ; B 38 0 511 600 ;
+C 178 ; WX 333 ; N twosuperior ; B 12 358 316 725 ;
+C 179 ; WX 333 ; N threesuperior ; B 16 349 315 725 ;
+C 180 ; WX 333 ; N acute ; B 108 583 289 720 ;
+C 181 ; WX 576 ; N mu1 ; B 78 -199 497 519 ;
+C 182 ; WX 537 ; N paragraph ; B 0 -199 541 716 ;
+C 183 ; WX 278 ; N middot ; B 90 302 190 402 ;
+C 184 ; WX 333 ; N cedilla ; B 52 -206 264 11 ;
+C 185 ; WX 333 ; N onesuperior ; B 52 358 232 725 ;
+C 186 ; WX 365 ; N ordmasculine ; B 22 361 342 728 ;
+C 187 ; WX 556 ; N guillemotright ; B 68 35 487 480 ;
+C 188 ; WX 834 ; N onequarter ; B 52 -28 819 728 ;
+C 189 ; WX 834 ; N onehalf ; B 52 -28 816 728 ;
+C 190 ; WX 834 ; N threequarters ; B 16 -28 819 728 ;
+C 191 ; WX 611 ; N questiondown ; B 77 -209 539 519 ;
+C 192 ; WX 667 ; N Agrave ; B -1 0 668 896 ;
+C 193 ; WX 667 ; N Aacute ; B -1 0 668 896 ;
+C 194 ; WX 667 ; N Acircumflex ; B -1 0 668 896 ;
+C 195 ; WX 667 ; N Atilde ; B -1 0 668 873 ;
+C 196 ; WX 667 ; N Adieresis ; B -1 0 668 860 ;
+C 197 ; WX 667 ; N Aring ; B -1 0 668 869 ;
+C 198 ; WX 1000 ; N AE ; B 0 0 945 716 ;
+C 199 ; WX 722 ; N Ccedilla ; B 50 -206 683 728 ;
+C 200 ; WX 667 ; N Egrave ; B 79 0 613 896 ;
+C 201 ; WX 667 ; N Eacute ; B 79 0 613 896 ;
+C 202 ; WX 667 ; N Ecircumflex ; B 79 0 613 896 ;
+C 203 ; WX 667 ; N Edieresis ; B 79 0 613 860 ;
+C 204 ; WX 278 ; N Igrave ; B 26 0 210 896 ;
+C 205 ; WX 278 ; N Iacute ; B 69 0 249 896 ;
+C 206 ; WX 278 ; N Icircumflex ; B -16 0 293 896 ;
+C 207 ; WX 278 ; N Idieresis ; B 2 0 276 860 ;
+C 208 ; WX 722 ; N Eth ; B -1 0 669 716 ;
+C 209 ; WX 722 ; N Ntilde ; B 76 0 640 873 ;
+C 210 ; WX 778 ; N Ograve ; B 48 -12 733 896 ;
+C 211 ; WX 778 ; N Oacute ; B 48 -12 733 896 ;
+C 212 ; WX 778 ; N Ocircumflex ; B 48 -12 733 896 ;
+C 213 ; WX 778 ; N Otilde ; B 48 -12 733 873 ;
+C 214 ; WX 778 ; N Odieresis ; B 48 -12 733 860 ;
+C 215 ; WX 584 ; N multiply ; B 79 141 504 566 ;
+C 216 ; WX 778 ; N Oslash ; B 41 -29 741 742 ;
+C 217 ; WX 722 ; N Ugrave ; B 79 -12 642 896 ;
+C 218 ; WX 722 ; N Uacute ; B 79 -12 642 896 ;
+C 219 ; WX 722 ; N Ucircumflex ; B 79 -12 642 896 ;
+C 220 ; WX 722 ; N Udieresis ; B 79 -12 642 860 ;
+C 221 ; WX 667 ; N Yacute ; B 3 0 659 896 ;
+C 222 ; WX 667 ; N Thorn ; B 77 0 624 716 ;
+C 223 ; WX 611 ; N germandbls ; B 75 -12 580 728 ;
+C 224 ; WX 556 ; N agrave ; B 36 -12 514 720 ;
+C 225 ; WX 556 ; N aacute ; B 36 -12 514 720 ;
+C 226 ; WX 556 ; N acircumflex ; B 36 -12 514 720 ;
+C 227 ; WX 556 ; N atilde ; B 36 -12 514 708 ;
+C 228 ; WX 556 ; N adieresis ; B 36 -12 514 720 ;
+C 229 ; WX 556 ; N aring ; B 36 -12 514 741 ;
+C 230 ; WX 889 ; N ae ; B 33 -12 849 530 ;
+C 231 ; WX 500 ; N ccedilla ; B 39 -196 491 530 ;
+C 232 ; WX 556 ; N egrave ; B 37 -12 515 720 ;
+C 233 ; WX 556 ; N eacute ; B 37 -12 515 720 ;
+C 234 ; WX 556 ; N ecircumflex ; B 37 -12 515 720 ;
+C 235 ; WX 556 ; N edieresis ; B 37 -12 515 720 ;
+C 236 ; WX 278 ; N igrave ; B 17 0 201 720 ;
+C 237 ; WX 278 ; N iacute ; B 92 0 272 720 ;
+C 238 ; WX 278 ; N icircumflex ; B -8 0 301 720 ;
+C 239 ; WX 278 ; N idieresis ; B 4 0 278 720 ;
+C 240 ; WX 556 ; N eth ; B 36 -12 516 716 ;
+C 241 ; WX 556 ; N ntilde ; B 66 0 487 708 ;
+C 242 ; WX 556 ; N ograve ; B 33 -12 519 720 ;
+C 243 ; WX 556 ; N oacute ; B 33 -12 519 720 ;
+C 244 ; WX 556 ; N ocircumflex ; B 33 -12 519 720 ;
+C 245 ; WX 556 ; N otilde ; B 33 -12 519 708 ;
+C 246 ; WX 556 ; N odieresis ; B 33 -12 519 720 ;
+C 247 ; WX 549 ; N divide ; B 38 156 511 550 ;
+C 248 ; WX 611 ; N oslash ; B 63 -39 549 550 ;
+C 249 ; WX 556 ; N ugrave ; B 64 -12 484 720 ;
+C 250 ; WX 556 ; N uacute ; B 64 -12 484 720 ;
+C 251 ; WX 556 ; N ucircumflex ; B 64 -12 484 720 ;
+C 252 ; WX 556 ; N udieresis ; B 64 -12 484 720 ;
+C 253 ; WX 500 ; N yacute ; B 16 -210 491 720 ;
+C 254 ; WX 556 ; N thorn ; B 66 -199 516 716 ;
+C 255 ; WX 500 ; N ydieresis ; B 16 -210 491 720 ;
+C -1 ; WX 552 ; N overscore ; B -15 765 567 828 ;
+C -1 ; WX 333 ; N middot ; B 243 311 343 411 ;
+C -1 ; WX 0 ; N .null ; B 0 0 0 0 ;
+C -1 ; WX 1000 ; N AEacute ; B 0 0 945 896 ;
+C -1 ; WX 667 ; N Abreve ; B -1 0 668 886 ;
+C -1 ; WX 667 ; N Alpha ; B -1 0 668 716 ;
+C -1 ; WX 667 ; N Alphatonos ; B 0 0 669 716 ;
+C -1 ; WX 667 ; N Amacron ; B -1 0 668 843 ;
+C -1 ; WX 667 ; N Aogonek ; B -1 -203 756 716 ;
+C -1 ; WX 667 ; N Aringacute ; B -1 0 668 1037 ;
+C -1 ; WX 667 ; N Beta ; B 73 0 614 716 ;
+C -1 ; WX 722 ; N Cacute ; B 50 -12 683 896 ;
+C -1 ; WX 722 ; N Ccaron ; B 50 -12 683 894 ;
+C -1 ; WX 722 ; N Ccircumflex ; B 50 -12 683 894 ;
+C -1 ; WX 722 ; N Cdot ; B 50 -12 683 888 ;
+C -1 ; WX 667 ; N Chi ; B 4 0 661 716 ;
+C -1 ; WX 722 ; N Dcaron ; B 77 0 669 894 ;
+C -1 ; WX 668 ; N Delta ; B -1 0 669 716 ;
+C -1 ; WX 722 ; N Dslash ; B -1 0 669 716 ;
+C -1 ; WX 667 ; N Ebreve ; B 79 0 613 892 ;
+C -1 ; WX 667 ; N Ecaron ; B 79 0 613 894 ;
+C -1 ; WX 667 ; N Edot ; B 79 0 613 869 ;
+C -1 ; WX 667 ; N Emacron ; B 79 0 613 848 ;
+C -1 ; WX 723 ; N Eng ; B 81 -12 670 728 ;
+C -1 ; WX 667 ; N Eogonek ; B 79 -208 613 716 ;
+C -1 ; WX 667 ; N Epsilon ; B 79 0 613 716 ;
+C -1 ; WX 784 ; N Epsilontonos ; B -43 0 730 716 ;
+C -1 ; WX 722 ; N Eta ; B 79 0 640 716 ;
+C -1 ; WX 838 ; N Etatonos ; B -43 0 737 716 ;
+C -1 ; WX 551 ; N Gamma ; B 80 0 527 716 ;
+C -1 ; WX 778 ; N Gbreve ; B 53 -12 715 886 ;
+C -1 ; WX 778 ; N Gcedilla ; B 53 -206 715 728 ;
+C -1 ; WX 778 ; N Gcircumflex ; B 53 -12 715 891 ;
+C -1 ; WX 778 ; N Gdot ; B 53 -12 715 864 ;
+C -1 ; WX 604 ; N H18533 ; B 87 67 517 497 ;
+C -1 ; WX 354 ; N H18543 ; B 64 217 290 443 ;
+C -1 ; WX 354 ; N H18551 ; B 64 217 290 443 ;
+C -1 ; WX 604 ; N H22073 ; B 71 0 532 461 ;
+C -1 ; WX 722 ; N Hbar ; B 15 0 707 716 ;
+C -1 ; WX 722 ; N Hcircumflex ; B 79 0 640 896 ;
+C -1 ; WX 735 ; N IJ ; B 93 -12 684 716 ;
+C -1 ; WX 278 ; N Ibreve ; B 0 0 288 879 ;
+C -1 ; WX 278 ; N Idot ; B 86 0 195 869 ;
+C -1 ; WX 278 ; N Imacron ; B -14 0 291 835 ;
+C -1 ; WX 278 ; N Iogonek ; B 80 -208 293 716 ;
+C -1 ; WX 278 ; N Iota ; B 93 0 188 716 ;
+C -1 ; WX 278 ; N Iotadieresis ; B 2 0 276 860 ;
+C -1 ; WX 384 ; N Iotatonos ; B -43 0 271 716 ;
+C -1 ; WX 278 ; N Itilde ; B -31 0 296 885 ;
+C -1 ; WX 500 ; N Jcircumflex ; B 27 -12 541 896 ;
+C -1 ; WX 667 ; N Kappa ; B 73 0 665 716 ;
+C -1 ; WX 667 ; N Kcedilla ; B 73 -206 665 716 ;
+C -1 ; WX 556 ; N Lacute ; B 73 0 521 896 ;
+C -1 ; WX 668 ; N Lambda ; B 5 0 660 716 ;
+C -1 ; WX 556 ; N Lcaron ; B 73 0 521 716 ;
+C -1 ; WX 556 ; N Lcedilla ; B 73 -206 521 716 ;
+C -1 ; WX 556 ; N Ldot ; B 73 0 521 716 ;
+C -1 ; WX 556 ; N Lslash ; B 0 0 521 716 ;
+C -1 ; WX 833 ; N Mu ; B 74 0 757 716 ;
+C -1 ; WX 722 ; N Nacute ; B 76 0 640 896 ;
+C -1 ; WX 722 ; N Ncaron ; B 76 0 640 896 ;
+C -1 ; WX 722 ; N Ncedilla ; B 76 -206 640 716 ;
+C -1 ; WX 722 ; N Nu ; B 76 0 640 716 ;
+C -1 ; WX 778 ; N Obreve ; B 48 -12 733 892 ;
+C -1 ; WX 778 ; N Odblacute ; B 48 -12 733 896 ;
+C -1 ; WX 768 ; N Ohm ; B 62 0 720 734 ;
+C -1 ; WX 778 ; N Omacron ; B 48 -12 733 853 ;
+C -1 ; WX 748 ; N Omega ; B 47 0 701 728 ;
+C -1 ; WX 752 ; N Omegatonos ; B -43 0 706 728 ;
+C -1 ; WX 778 ; N Omicron ; B 48 -12 733 729 ;
+C -1 ; WX 774 ; N Omicrontonos ; B -43 -12 728 729 ;
+C -1 ; WX 778 ; N Oslashacute ; B 41 -29 741 896 ;
+C -1 ; WX 798 ; N Phi ; B 42 -26 756 737 ;
+C -1 ; WX 722 ; N Pi ; B 80 0 642 716 ;
+C -1 ; WX 835 ; N Psi ; B 62 0 773 716 ;
+C -1 ; WX 722 ; N Racute ; B 79 0 709 896 ;
+C -1 ; WX 722 ; N Rcaron ; B 79 0 709 894 ;
+C -1 ; WX 722 ; N Rcedilla ; B 79 -206 709 716 ;
+C -1 ; WX 667 ; N Rho ; B 77 0 624 716 ;
+C -1 ; WX 708 ; N SF010000 ; B 312 -303 720 346 ;
+C -1 ; WX 708 ; N SF020000 ; B 312 261 720 910 ;
+C -1 ; WX 708 ; N SF030000 ; B -11 -303 396 346 ;
+C -1 ; WX 708 ; N SF040000 ; B -11 261 396 910 ;
+C -1 ; WX 708 ; N SF050000 ; B -11 -303 719 910 ;
+C -1 ; WX 708 ; N SF060000 ; B -11 -303 719 346 ;
+C -1 ; WX 708 ; N SF070000 ; B -11 261 719 910 ;
+C -1 ; WX 708 ; N SF080000 ; B 312 -303 720 910 ;
+C -1 ; WX 708 ; N SF090000 ; B -11 -303 396 910 ;
+C -1 ; WX 708 ; N SF100000 ; B -11 261 719 346 ;
+C -1 ; WX 625 ; N SF110000 ; B 223 -303 309 910 ;
+C -1 ; WX 708 ; N SF190000 ; B -11 -303 396 910 ;
+C -1 ; WX 708 ; N SF200000 ; B -11 -303 489 910 ;
+C -1 ; WX 708 ; N SF210000 ; B -11 -303 489 346 ;
+C -1 ; WX 708 ; N SF220000 ; B -11 -303 396 439 ;
+C -1 ; WX 708 ; N SF230000 ; B -11 -303 489 910 ;
+C -1 ; WX 708 ; N SF240000 ; B 219 -303 490 910 ;
+C -1 ; WX 708 ; N SF250000 ; B -11 -303 489 439 ;
+C -1 ; WX 708 ; N SF260000 ; B -11 168 489 910 ;
+C -1 ; WX 708 ; N SF270000 ; B -11 261 489 910 ;
+C -1 ; WX 708 ; N SF280000 ; B -11 168 396 910 ;
+C -1 ; WX 708 ; N SF360000 ; B 312 -303 720 910 ;
+C -1 ; WX 708 ; N SF370000 ; B 219 -303 720 910 ;
+C -1 ; WX 708 ; N SF380000 ; B 219 168 719 910 ;
+C -1 ; WX 708 ; N SF390000 ; B 219 -303 719 439 ;
+C -1 ; WX 708 ; N SF400000 ; B -11 168 719 910 ;
+C -1 ; WX 708 ; N SF410000 ; B -11 -303 719 439 ;
+C -1 ; WX 708 ; N SF420000 ; B 219 -303 720 910 ;
+C -1 ; WX 708 ; N SF430000 ; B -11 168 719 439 ;
+C -1 ; WX 708 ; N SF440000 ; B -11 -303 719 910 ;
+C -1 ; WX 708 ; N SF450000 ; B -11 168 719 910 ;
+C -1 ; WX 708 ; N SF460000 ; B -11 261 719 910 ;
+C -1 ; WX 708 ; N SF470000 ; B -11 -303 719 439 ;
+C -1 ; WX 708 ; N SF480000 ; B -11 -303 719 346 ;
+C -1 ; WX 708 ; N SF490000 ; B 219 261 720 910 ;
+C -1 ; WX 708 ; N SF500000 ; B 312 168 720 910 ;
+C -1 ; WX 708 ; N SF510000 ; B 312 -303 720 439 ;
+C -1 ; WX 708 ; N SF520000 ; B 219 -303 720 346 ;
+C -1 ; WX 708 ; N SF530000 ; B -11 -303 719 910 ;
+C -1 ; WX 708 ; N SF540000 ; B -11 -303 719 910 ;
+C -1 ; WX 667 ; N Sacute ; B 45 -12 615 896 ;
+C -1 ; WX 667 ; N Scedilla ; B 45 -201 615 728 ;
+C -1 ; WX 667 ; N Scircumflex ; B 45 -12 615 894 ;
+C -1 ; WX 618 ; N Sigma ; B 72 0 579 716 ;
+C -1 ; WX 611 ; N Tau ; B 23 0 591 716 ;
+C -1 ; WX 611 ; N Tbar ; B 23 0 591 716 ;
+C -1 ; WX 611 ; N Tcaron ; B 23 0 591 894 ;
+C -1 ; WX 611 ; N Tcedilla ; B 23 -283 591 716 ;
+C -1 ; WX 778 ; N Theta ; B 47 -12 731 729 ;
+C -1 ; WX 722 ; N Ubreve ; B 79 -12 642 889 ;
+C -1 ; WX 722 ; N Udblacute ; B 79 -12 642 896 ;
+C -1 ; WX 722 ; N Umacron ; B 79 -12 642 845 ;
+C -1 ; WX 722 ; N Uogonek ; B 79 -208 642 716 ;
+C -1 ; WX 667 ; N Upsilon ; B 3 0 659 716 ;
+C -1 ; WX 667 ; N Upsilondieresis ; B 3 0 659 860 ;
+C -1 ; WX 855 ; N Upsilontonos ; B -43 0 842 716 ;
+C -1 ; WX 722 ; N Uring ; B 79 -12 642 938 ;
+C -1 ; WX 722 ; N Utilde ; B 79 -12 642 882 ;
+C -1 ; WX 944 ; N Wacute ; B 12 0 933 896 ;
+C -1 ; WX 944 ; N Wcircumflex ; B 12 0 933 896 ;
+C -1 ; WX 944 ; N Wdieresis ; B 12 0 933 860 ;
+C -1 ; WX 944 ; N Wgrave ; B 12 0 933 896 ;
+C -1 ; WX 650 ; N Xi ; B 53 0 597 716 ;
+C -1 ; WX 667 ; N Ycircumflex ; B 3 0 659 896 ;
+C -1 ; WX 667 ; N Ygrave ; B 3 0 659 896 ;
+C -1 ; WX 611 ; N Zacute ; B 20 0 586 896 ;
+C -1 ; WX 611 ; N Zdot ; B 20 0 586 869 ;
+C -1 ; WX 611 ; N Zeta ; B 20 0 586 716 ;
+C -1 ; WX 556 ; N abreve ; B 36 -12 514 715 ;
+C -1 ; WX 889 ; N aeacute ; B 33 -12 849 720 ;
+C -1 ; WX 1000 ; N afii00208 ; B 32 224 969 294 ;
+C -1 ; WX 556 ; N afii08941 ; B 13 -14 528 728 ;
+C -1 ; WX 667 ; N afii10017 ; B -1 0 668 716 ;
+C -1 ; WX 656 ; N afii10018 ; B 82 0 621 716 ;
+C -1 ; WX 667 ; N afii10019 ; B 73 0 614 716 ;
+C -1 ; WX 542 ; N afii10020 ; B 79 0 542 716 ;
+C -1 ; WX 677 ; N afii10021 ; B 0 -167 642 716 ;
+C -1 ; WX 667 ; N afii10022 ; B 79 0 613 716 ;
+C -1 ; WX 667 ; N afii10023 ; B 79 0 613 860 ;
+C -1 ; WX 923 ; N afii10024 ; B 3 0 919 716 ;
+C -1 ; WX 604 ; N afii10025 ; B 38 -12 563 728 ;
+C -1 ; WX 719 ; N afii10026 ; B 79 0 641 716 ;
+C -1 ; WX 719 ; N afii10027 ; B 79 0 641 886 ;
+C -1 ; WX 583 ; N afii10028 ; B 79 0 579 716 ;
+C -1 ; WX 656 ; N afii10029 ; B 9 -12 578 716 ;
+C -1 ; WX 833 ; N afii10030 ; B 74 0 757 716 ;
+C -1 ; WX 722 ; N afii10031 ; B 79 0 640 716 ;
+C -1 ; WX 778 ; N afii10032 ; B 48 -12 733 729 ;
+C -1 ; WX 719 ; N afii10033 ; B 78 0 641 716 ;
+C -1 ; WX 667 ; N afii10034 ; B 77 0 624 716 ;
+C -1 ; WX 722 ; N afii10035 ; B 50 -12 683 728 ;
+C -1 ; WX 611 ; N afii10036 ; B 23 0 591 716 ;
+C -1 ; WX 635 ; N afii10037 ; B 5 -10 632 716 ;
+C -1 ; WX 760 ; N afii10038 ; B 40 0 720 722 ;
+C -1 ; WX 667 ; N afii10039 ; B 4 0 661 716 ;
+C -1 ; WX 740 ; N afii10040 ; B 78 -199 706 716 ;
+C -1 ; WX 667 ; N afii10041 ; B 42 0 588 716 ;
+C -1 ; WX 917 ; N afii10042 ; B 79 0 838 716 ;
+C -1 ; WX 937 ; N afii10043 ; B 79 -199 903 716 ;
+C -1 ; WX 792 ; N afii10044 ; B 0 0 757 716 ;
+C -1 ; WX 885 ; N afii10045 ; B 82 0 802 716 ;
+C -1 ; WX 656 ; N afii10046 ; B 81 0 620 716 ;
+C -1 ; WX 719 ; N afii10047 ; B 36 -12 670 728 ;
+C -1 ; WX 1010 ; N afii10048 ; B 80 -12 959 728 ;
+C -1 ; WX 722 ; N afii10049 ; B 9 0 640 716 ;
+C -1 ; WX 489 ; N afii10050 ; B 79 0 459 914 ;
+C -1 ; WX 865 ; N afii10051 ; B 24 -12 825 716 ;
+C -1 ; WX 542 ; N afii10052 ; B 79 0 542 896 ;
+C -1 ; WX 719 ; N afii10053 ; B 49 -12 683 728 ;
+C -1 ; WX 667 ; N afii10054 ; B 45 -12 615 728 ;
+C -1 ; WX 278 ; N afii10055 ; B 93 0 188 716 ;
+C -1 ; WX 278 ; N afii10056 ; B 2 0 276 860 ;
+C -1 ; WX 500 ; N afii10057 ; B 27 -12 422 716 ;
+C -1 ; WX 1057 ; N afii10058 ; B 6 -12 1020 716 ;
+C -1 ; WX 1010 ; N afii10059 ; B 80 0 973 716 ;
+C -1 ; WX 854 ; N afii10060 ; B 24 0 809 716 ;
+C -1 ; WX 583 ; N afii10061 ; B 79 0 579 896 ;
+C -1 ; WX 635 ; N afii10062 ; B 5 -10 632 886 ;
+C -1 ; WX 556 ; N afii10065 ; B 36 -12 514 530 ;
+C -1 ; WX 573 ; N afii10066 ; B 44 -12 533 733 ;
+C -1 ; WX 531 ; N afii10067 ; B 66 0 492 519 ;
+C -1 ; WX 365 ; N afii10068 ; B 66 0 365 519 ;
+C -1 ; WX 583 ; N afii10069 ; B 0 -147 553 519 ;
+C -1 ; WX 556 ; N afii10070 ; B 37 -12 515 530 ;
+C -1 ; WX 556 ; N afii10071 ; B 37 -12 515 720 ;
+C -1 ; WX 669 ; N afii10072 ; B -2 0 672 519 ;
+C -1 ; WX 458 ; N afii10073 ; B 24 -12 423 530 ;
+C -1 ; WX 559 ; N afii10074 ; B 66 0 492 519 ;
+C -1 ; WX 559 ; N afii10075 ; B 66 0 492 715 ;
+C -1 ; WX 437 ; N afii10076 ; B 65 0 445 519 ;
+C -1 ; WX 583 ; N afii10077 ; B 12 -3 517 519 ;
+C -1 ; WX 687 ; N afii10078 ; B 68 0 619 519 ;
+C -1 ; WX 552 ; N afii10079 ; B 66 0 486 519 ;
+C -1 ; WX 556 ; N afii10080 ; B 33 -12 519 530 ;
+C -1 ; WX 542 ; N afii10081 ; B 66 0 476 519 ;
+C -1 ; WX 556 ; N afii10082 ; B 66 -199 516 530 ;
+C -1 ; WX 500 ; N afii10083 ; B 39 -12 491 530 ;
+C -1 ; WX 458 ; N afii10084 ; B 19 0 440 519 ;
+C -1 ; WX 500 ; N afii10085 ; B 16 -210 491 519 ;
+C -1 ; WX 823 ; N afii10086 ; B 37 -199 786 716 ;
+C -1 ; WX 500 ; N afii10087 ; B 7 0 493 519 ;
+C -1 ; WX 573 ; N afii10088 ; B 67 -147 543 519 ;
+C -1 ; WX 521 ; N afii10089 ; B 34 0 455 519 ;
+C -1 ; WX 802 ; N afii10090 ; B 69 0 733 519 ;
+C -1 ; WX 823 ; N afii10091 ; B 69 -147 791 519 ;
+C -1 ; WX 625 ; N afii10092 ; B 0 0 589 519 ;
+C -1 ; WX 719 ; N afii10093 ; B 68 0 647 519 ;
+C -1 ; WX 521 ; N afii10094 ; B 64 0 490 519 ;
+C -1 ; WX 510 ; N afii10095 ; B 21 -18 474 530 ;
+C -1 ; WX 750 ; N afii10096 ; B 67 -12 709 530 ;
+C -1 ; WX 542 ; N afii10097 ; B 15 0 474 519 ;
+C -1 ; WX 411 ; N afii10098 ; B 66 0 381 717 ;
+C -1 ; WX 556 ; N afii10099 ; B 0 -210 488 716 ;
+C -1 ; WX 365 ; N afii10100 ; B 66 0 365 720 ;
+C -1 ; WX 510 ; N afii10101 ; B 37 -18 489 530 ;
+C -1 ; WX 500 ; N afii10102 ; B 31 -12 461 530 ;
+C -1 ; WX 222 ; N afii10103 ; B 66 0 154 716 ;
+C -1 ; WX 278 ; N afii10104 ; B 4 0 278 720 ;
+C -1 ; WX 222 ; N afii10105 ; B -46 -210 153 716 ;
+C -1 ; WX 906 ; N afii10106 ; B 9 -3 871 519 ;
+C -1 ; WX 812 ; N afii10107 ; B 64 0 778 519 ;
+C -1 ; WX 556 ; N afii10108 ; B 0 0 488 716 ;
+C -1 ; WX 437 ; N afii10109 ; B 65 0 445 720 ;
+C -1 ; WX 500 ; N afii10110 ; B 16 -210 491 715 ;
+C -1 ; WX 719 ; N afii10145 ; B 78 -199 641 716 ;
+C -1 ; WX 552 ; N afii10193 ; B 66 -147 486 519 ;
+C -1 ; WX 394 ; N afii52305 ; B 0 143 428 734 ;
+C -1 ; WX 515 ; N afii52306 ; B 0 143 549 734 ;
+C -1 ; WX 588 ; N afii52364 ; B 52 -110 623 252 ;
+C -1 ; WX 413 ; N afii52399 ; B 59 72 363 400 ;
+C -1 ; WX 207 ; N afii52400 ; B 7 130 206 827 ;
+C -1 ; WX 244 ; N afii52957 ; B -1 -175 279 456 ;
+C -1 ; WX 526 ; N afii57381 ; B 65 84 463 777 ;
+C -1 ; WX 319 ; N afii57388 ; B 83 137 241 443 ;
+C -1 ; WX 638 ; N afii57391 ; B 0 143 667 228 ;
+C -1 ; WX 526 ; N afii57392 ; B 186 219 344 452 ;
+C -1 ; WX 526 ; N afii57393 ; B 147 143 327 716 ;
+C -1 ; WX 526 ; N afii57394 ; B 89 143 391 723 ;
+C -1 ; WX 526 ; N afii57395 ; B 63 143 471 723 ;
+C -1 ; WX 526 ; N afii57396 ; B 146 143 397 713 ;
+C -1 ; WX 526 ; N afii57397 ; B 93 247 437 622 ;
+C -1 ; WX 526 ; N afii57398 ; B 85 156 410 710 ;
+C -1 ; WX 526 ; N afii57399 ; B 63 143 459 710 ;
+C -1 ; WX 526 ; N afii57400 ; B 75 149 472 716 ;
+C -1 ; WX 526 ; N afii57401 ; B 107 143 413 725 ;
+C -1 ; WX 319 ; N afii57403 ; B 78 136 235 609 ;
+C -1 ; WX 356 ; N afii57407 ; B 33 137 326 711 ;
+C -1 ; WX 413 ; N afii57409 ; B 59 72 363 400 ;
+C -1 ; WX 394 ; N afii57410 ; B 0 143 428 734 ;
+C -1 ; WX 207 ; N afii57411 ; B 42 130 179 880 ;
+C -1 ; WX 432 ; N afii57412 ; B 59 -77 466 555 ;
+C -1 ; WX 207 ; N afii57413 ; B 22 -94 165 740 ;
+C -1 ; WX 638 ; N afii57414 ; B 24 -43 606 555 ;
+C -1 ; WX 207 ; N afii57415 ; B 72 130 165 740 ;
+C -1 ; WX 713 ; N afii57416 ; B 62 -46 748 469 ;
+C -1 ; WX 282 ; N afii57417 ; B 0 130 271 641 ;
+C -1 ; WX 713 ; N afii57418 ; B 62 143 748 628 ;
+C -1 ; WX 713 ; N afii57419 ; B 62 143 748 715 ;
+C -1 ; WX 563 ; N afii57420 ; B 26 -212 516 432 ;
+C -1 ; WX 563 ; N afii57421 ; B 26 -212 516 432 ;
+C -1 ; WX 563 ; N afii57422 ; B 26 -212 516 639 ;
+C -1 ; WX 337 ; N afii57423 ; B 81 143 372 552 ;
+C -1 ; WX 337 ; N afii57424 ; B 81 143 372 759 ;
+C -1 ; WX 489 ; N afii57425 ; B 70 -91 523 430 ;
+C -1 ; WX 489 ; N afii57426 ; B 70 -91 523 639 ;
+C -1 ; WX 821 ; N afii57427 ; B 64 -72 855 417 ;
+C -1 ; WX 821 ; N afii57428 ; B 64 -72 855 715 ;
+C -1 ; WX 1098 ; N afii57429 ; B 64 -72 1132 417 ;
+C -1 ; WX 1098 ; N afii57430 ; B 64 -72 1132 590 ;
+C -1 ; WX 582 ; N afii57431 ; B 0 143 616 793 ;
+C -1 ; WX 582 ; N afii57432 ; B 0 143 616 793 ;
+C -1 ; WX 544 ; N afii57433 ; B 21 -212 516 534 ;
+C -1 ; WX 544 ; N afii57434 ; B 21 -212 516 737 ;
+C -1 ; WX 207 ; N afii57440 ; B 0 143 241 228 ;
+C -1 ; WX 125 ; N afii57440_2 ; B 0 143 159 228 ;
+C -1 ; WX 1000 ; N afii57440_3 ; B 0 143 1034 228 ;
+C -1 ; WX 2000 ; N afii57440_4 ; B 0 143 2028 228 ;
+C -1 ; WX 789 ; N afii57441 ; B 53 143 823 681 ;
+C -1 ; WX 582 ; N afii57442 ; B 68 -75 616 683 ;
+C -1 ; WX 601 ; N afii57443 ; B 56 143 635 775 ;
+C -1 ; WX 506 ; N afii57444 ; B 69 7 541 775 ;
+C -1 ; WX 338 ; N afii57445 ; B 51 -212 372 357 ;
+C -1 ; WX 526 ; N afii57446 ; B 68 -72 560 558 ;
+C -1 ; WX 282 ; N afii57447 ; B 26 130 262 430 ;
+C -1 ; WX 432 ; N afii57448 ; B 59 -77 466 385 ;
+C -1 ; WX 638 ; N afii57449 ; B 24 -43 606 462 ;
+C -1 ; WX 638 ; N afii57450 ; B 24 -208 606 462 ;
+C -1 ; WX 201 ; N afii57451 ; B 34 605 201 780 ;
+C -1 ; WX 201 ; N afii57451_2 ; B 34 605 201 780 ;
+C -1 ; WX 237 ; N afii57452 ; B 34 605 237 794 ;
+C -1 ; WX 237 ; N afii57452_2 ; B 34 605 237 794 ;
+C -1 ; WX 201 ; N afii57453 ; B 34 -130 201 44 ;
+C -1 ; WX 201 ; N afii57453_2 ; B 34 -130 201 44 ;
+C -1 ; WX 201 ; N afii57454 ; B 34 673 201 774 ;
+C -1 ; WX 201 ; N afii57454_2 ; B 34 673 201 774 ;
+C -1 ; WX 209 ; N afii57455 ; B 35 605 209 817 ;
+C -1 ; WX 209 ; N afii57455_2 ; B 35 605 209 817 ;
+C -1 ; WX 201 ; N afii57456 ; B 34 -21 201 80 ;
+C -1 ; WX 201 ; N afii57456_2 ; B 34 -21 201 80 ;
+C -1 ; WX 211 ; N afii57457 ; B 34 605 211 762 ;
+C -1 ; WX 211 ; N afii57457_2 ; B 34 605 211 762 ;
+C -1 ; WX 165 ; N afii57458 ; B 34 605 165 756 ;
+C -1 ; WX 165 ; N afii57458_2 ; B 34 605 165 756 ;
+C -1 ; WX 750 ; N afii57460 ; B 125 0 625 625 ;
+C -1 ; WX 319 ; N afii57461 ; B 94 23 230 267 ;
+C -1 ; WX 450 ; N afii57470 ; B 0 125 419 555 ;
+C -1 ; WX 713 ; N afii57506 ; B 62 -175 748 469 ;
+C -1 ; WX 563 ; N afii57507 ; B 26 -212 516 432 ;
+C -1 ; WX 489 ; N afii57508 ; B 70 -91 523 723 ;
+C -1 ; WX 812 ; N afii57509 ; B 44 143 846 867 ;
+C -1 ; WX 282 ; N afii57534 ; B 26 130 262 430 ;
+C -1 ; WX 638 ; N afii57555 ; B 24 -43 606 462 ;
+C -1 ; WX 812 ; N afii57567 ; B 44 143 846 734 ;
+C -1 ; WX 885 ; N afii61248 ; B 47 -26 838 728 ;
+C -1 ; WX 323 ; N afii61289 ; B 7 -12 315 728 ;
+C -1 ; WX 1073 ; N afii61352 ; B 78 0 1031 716 ;
+C -1 ; WX 229 ; N afii62753 ; B 17 143 264 827 ;
+C -1 ; WX 229 ; N afii62754 ; B 42 143 264 880 ;
+C -1 ; WX 432 ; N afii62755 ; B 59 -77 466 555 ;
+C -1 ; WX 229 ; N afii62756 ; B 43 -94 264 740 ;
+C -1 ; WX 244 ; N afii62757 ; B 0 143 278 668 ;
+C -1 ; WX 244 ; N afii62758 ; B 0 143 278 668 ;
+C -1 ; WX 588 ; N afii62759 ; B 52 -110 623 491 ;
+C -1 ; WX 229 ; N afii62760 ; B 43 143 264 740 ;
+C -1 ; WX 244 ; N afii62761 ; B 0 -46 278 456 ;
+C -1 ; WX 244 ; N afii62762 ; B 0 -46 278 456 ;
+C -1 ; WX 713 ; N afii62763 ; B 62 -46 748 469 ;
+C -1 ; WX 375 ; N afii62764 ; B 30 143 409 768 ;
+C -1 ; WX 244 ; N afii62765 ; B 0 143 278 667 ;
+C -1 ; WX 244 ; N afii62766 ; B 0 143 278 667 ;
+C -1 ; WX 713 ; N afii62767 ; B 62 143 748 628 ;
+C -1 ; WX 244 ; N afii62768 ; B 0 143 278 754 ;
+C -1 ; WX 244 ; N afii62769 ; B 0 143 278 754 ;
+C -1 ; WX 713 ; N afii62770 ; B 62 143 748 715 ;
+C -1 ; WX 530 ; N afii62771 ; B 0 -33 559 427 ;
+C -1 ; WX 530 ; N afii62772 ; B 0 -33 559 427 ;
+C -1 ; WX 526 ; N afii62773 ; B 26 -212 560 426 ;
+C -1 ; WX 530 ; N afii62774 ; B 0 143 559 427 ;
+C -1 ; WX 530 ; N afii62775 ; B 0 143 559 427 ;
+C -1 ; WX 526 ; N afii62776 ; B 26 -212 560 426 ;
+C -1 ; WX 530 ; N afii62777 ; B 0 143 559 639 ;
+C -1 ; WX 530 ; N afii62778 ; B 0 143 559 639 ;
+C -1 ; WX 526 ; N afii62779 ; B 26 -212 560 639 ;
+C -1 ; WX 337 ; N afii62780 ; B 81 143 372 552 ;
+C -1 ; WX 337 ; N afii62781 ; B 81 143 372 759 ;
+C -1 ; WX 489 ; N afii62782 ; B 70 -91 523 430 ;
+C -1 ; WX 489 ; N afii62783 ; B 70 -91 523 639 ;
+C -1 ; WX 531 ; N afii62784 ; B 0 143 565 401 ;
+C -1 ; WX 531 ; N afii62785 ; B 0 143 565 401 ;
+C -1 ; WX 821 ; N afii62786 ; B 64 -72 855 417 ;
+C -1 ; WX 531 ; N afii62787 ; B 0 143 565 715 ;
+C -1 ; WX 531 ; N afii62788 ; B 0 143 565 715 ;
+C -1 ; WX 821 ; N afii62789 ; B 64 -72 855 715 ;
+C -1 ; WX 846 ; N afii62790 ; B 0 143 880 405 ;
+C -1 ; WX 846 ; N afii62791 ; B 0 143 880 405 ;
+C -1 ; WX 1098 ; N afii62792 ; B 64 -72 1132 417 ;
+C -1 ; WX 846 ; N afii62793 ; B 0 143 880 590 ;
+C -1 ; WX 846 ; N afii62794 ; B 0 143 880 590 ;
+C -1 ; WX 1098 ; N afii62795 ; B 64 -72 1132 590 ;
+C -1 ; WX 582 ; N afii62796 ; B 0 143 616 793 ;
+C -1 ; WX 582 ; N afii62797 ; B 0 143 616 793 ;
+C -1 ; WX 582 ; N afii62798 ; B 0 143 616 793 ;
+C -1 ; WX 582 ; N afii62799 ; B 0 143 616 793 ;
+C -1 ; WX 582 ; N afii62800 ; B 0 143 616 793 ;
+C -1 ; WX 582 ; N afii62801 ; B 0 143 616 793 ;
+C -1 ; WX 526 ; N afii62802 ; B 0 143 504 472 ;
+C -1 ; WX 394 ; N afii62803 ; B 0 143 428 418 ;
+C -1 ; WX 450 ; N afii62804 ; B 26 -212 486 431 ;
+C -1 ; WX 526 ; N afii62805 ; B 0 143 504 639 ;
+C -1 ; WX 394 ; N afii62806 ; B 0 143 428 639 ;
+C -1 ; WX 450 ; N afii62807 ; B 26 -212 486 639 ;
+C -1 ; WX 268 ; N afii62808 ; B 0 143 302 726 ;
+C -1 ; WX 263 ; N afii62809 ; B 0 143 297 707 ;
+C -1 ; WX 789 ; N afii62810 ; B 53 143 823 681 ;
+C -1 ; WX 268 ; N afii62811 ; B 0 143 302 740 ;
+C -1 ; WX 263 ; N afii62812 ; B 0 143 297 727 ;
+C -1 ; WX 582 ; N afii62813 ; B 68 -75 616 683 ;
+C -1 ; WX 394 ; N afii62815 ; B 0 143 428 734 ;
+C -1 ; WX 601 ; N afii62816 ; B 56 143 635 775 ;
+C -1 ; WX 207 ; N afii62817 ; B 0 143 241 775 ;
+C -1 ; WX 207 ; N afii62818 ; B 0 143 241 775 ;
+C -1 ; WX 506 ; N afii62819 ; B 69 7 541 775 ;
+C -1 ; WX 394 ; N afii62820 ; B 0 143 428 411 ;
+C -1 ; WX 394 ; N afii62821 ; B 0 143 428 411 ;
+C -1 ; WX 338 ; N afii62822 ; B 51 -212 372 357 ;
+C -1 ; WX 244 ; N afii62823 ; B 0 143 278 636 ;
+C -1 ; WX 244 ; N afii62824 ; B 0 143 278 636 ;
+C -1 ; WX 526 ; N afii62825 ; B 68 -72 560 558 ;
+C -1 ; WX 394 ; N afii62827 ; B 0 -62 428 429 ;
+C -1 ; WX 375 ; N afii62828 ; B 30 143 409 583 ;
+C -1 ; WX 432 ; N afii62829 ; B 59 -77 466 385 ;
+C -1 ; WX 588 ; N afii62830 ; B 52 -110 623 252 ;
+C -1 ; WX 244 ; N afii62831 ; B 0 -69 278 456 ;
+C -1 ; WX 244 ; N afii62832 ; B 0 -69 278 456 ;
+C -1 ; WX 588 ; N afii62833 ; B 52 -212 623 252 ;
+C -1 ; WX 544 ; N afii62834 ; B 31 79 507 827 ;
+C -1 ; WX 601 ; N afii62835 ; B 31 118 630 827 ;
+C -1 ; WX 544 ; N afii62836 ; B 19 79 507 880 ;
+C -1 ; WX 601 ; N afii62837 ; B 23 118 630 880 ;
+C -1 ; WX 544 ; N afii62838 ; B 41 -111 507 724 ;
+C -1 ; WX 601 ; N afii62839 ; B 32 -111 630 733 ;
+C -1 ; WX 544 ; N afii62840 ; B 41 79 507 724 ;
+C -1 ; WX 601 ; N afii62841 ; B 32 118 630 733 ;
+C -1 ; WX 526 ; N afii62843 ; B 77 147 455 720 ;
+C -1 ; WX 526 ; N afii62844 ; B 74 159 441 708 ;
+C -1 ; WX 526 ; N afii62845 ; B 99 147 435 717 ;
+C -1 ; WX 211 ; N afii62881 ; B 34 605 211 917 ;
+C -1 ; WX 211 ; N afii62881_2 ; B 34 605 211 917 ;
+C -1 ; WX 226 ; N afii62882 ; B 23 605 226 933 ;
+C -1 ; WX 226 ; N afii62882_2 ; B 23 605 226 933 ;
+C -1 ; WX 211 ; N afii62883 ; B 34 605 211 905 ;
+C -1 ; WX 211 ; N afii62883_2 ; B 34 605 211 905 ;
+C -1 ; WX 211 ; N afii62884 ; B 34 605 211 840 ;
+C -1 ; WX 211 ; N afii62884_2 ; B 34 605 211 840 ;
+C -1 ; WX 211 ; N afii62885 ; B 31 606 211 897 ;
+C -1 ; WX 211 ; N afii62885_2 ; B 31 606 211 897 ;
+C -1 ; WX 211 ; N afii62886 ; B 34 605 211 853 ;
+C -1 ; WX 211 ; N afii62886_2 ; B 34 605 211 853 ;
+C -1 ; WX 244 ; N afii62956 ; B -1 -175 279 456 ;
+C -1 ; WX 713 ; N afii62958 ; B 62 -175 748 469 ;
+C -1 ; WX 530 ; N afii62959 ; B 0 -175 559 427 ;
+C -1 ; WX 530 ; N afii62960 ; B 0 -175 559 427 ;
+C -1 ; WX 526 ; N afii62961 ; B 26 -212 560 426 ;
+C -1 ; WX 489 ; N afii62962 ; B 70 -91 523 723 ;
+C -1 ; WX 933 ; N afii62964 ; B 44 143 967 734 ;
+C -1 ; WX 394 ; N afii62965 ; B 0 143 428 876 ;
+C -1 ; WX 515 ; N afii62966 ; B 0 143 549 876 ;
+C -1 ; WX 933 ; N afii62967 ; B 44 143 967 867 ;
+C -1 ; WX 526 ; N afii63167 ; B 87 403 424 744 ;
+C -1 ; WX 319 ; N afii64060 ; B 62 -209 273 785 ;
+C -1 ; WX 319 ; N afii64061 ; B 45 -209 257 785 ;
+C -1 ; WX 616 ; N afii64184 ; B 10 143 603 766 ;
+C -1 ; WX 578 ; N alpha ; B 35 -12 541 530 ;
+C -1 ; WX 578 ; N alphatonos ; B 35 -12 541 720 ;
+C -1 ; WX 556 ; N amacron ; B 36 -12 514 671 ;
+C -1 ; WX 278 ; N anoteleia ; B 90 418 190 519 ;
+C -1 ; WX 556 ; N aogonek ; B 36 -196 619 530 ;
+C -1 ; WX 549 ; N approxequal ; B 25 184 524 521 ;
+C -1 ; WX 556 ; N aringacute ; B 36 -12 514 939 ;
+C -1 ; WX 1000 ; N arrowboth ; B 39 77 961 429 ;
+C -1 ; WX 500 ; N arrowdown ; B 75 -209 426 654 ;
+C -1 ; WX 1000 ; N arrowleft ; B 39 77 961 428 ;
+C -1 ; WX 1000 ; N arrowright ; B 39 77 961 428 ;
+C -1 ; WX 500 ; N arrowup ; B 75 -209 426 654 ;
+C -1 ; WX 500 ; N arrowupdn ; B 74 -208 425 714 ;
+C -1 ; WX 500 ; N arrowupdnbse ; B 74 -303 425 714 ;
+C -1 ; WX 575 ; N beta ; B 68 -199 530 728 ;
+C -1 ; WX 708 ; N block ; B -11 -303 719 910 ;
+C -1 ; WX 333 ; N breve ; B 22 588 311 715 ;
+C -1 ; WX 500 ; N cacute ; B 39 -12 491 720 ;
+C -1 ; WX 333 ; N caron ; B 20 583 329 720 ;
+C -1 ; WX 500 ; N ccaron ; B 39 -12 491 720 ;
+C -1 ; WX 500 ; N ccircumflex ; B 39 -12 491 720 ;
+C -1 ; WX 500 ; N cdot ; B 39 -12 491 692 ;
+C -1 ; WX 525 ; N chi ; B 8 -199 516 519 ;
+C -1 ; WX 604 ; N circle ; B 87 67 517 497 ;
+C -1 ; WX 656 ; N club ; B 27 0 629 601 ;
+C -1 ; WX 333 ; N commaaccent ; B 110 -269 219 -71 ;
+C -1 ; WX 615 ; N dcaron ; B 35 -12 616 716 ;
+C -1 ; WX 557 ; N delta ; B 35 -12 521 716 ;
+C -1 ; WX 510 ; N diamond ; B 31 -12 479 601 ;
+C -1 ; WX 333 ; N dieresistonos ; B -11 601 344 736 ;
+C -1 ; WX 729 ; N dkshade ; B 0 -307 729 910 ;
+C -1 ; WX 556 ; N dmacron ; B 34 -12 555 716 ;
+C -1 ; WX 708 ; N dnblock ; B -11 -303 719 303 ;
+C -1 ; WX 333 ; N dotaccent ; B 112 583 221 692 ;
+C -1 ; WX 278 ; N dotlessi ; B 97 0 185 519 ;
+C -1 ; WX 556 ; N ebreve ; B 37 -12 515 715 ;
+C -1 ; WX 556 ; N ecaron ; B 37 -12 515 720 ;
+C -1 ; WX 556 ; N edot ; B 37 -12 515 692 ;
+C -1 ; WX 556 ; N emacron ; B 37 -12 515 671 ;
+C -1 ; WX 556 ; N eng ; B 68 -210 489 530 ;
+C -1 ; WX 556 ; N eogonek ; B 37 -208 515 530 ;
+C -1 ; WX 446 ; N epsilon ; B 48 -12 423 530 ;
+C -1 ; WX 446 ; N epsilontonos ; B 48 -12 423 720 ;
+C -1 ; WX 583 ; N equivalence ; B 56 95 528 611 ;
+C -1 ; WX 600 ; N estimated ; B 44 -17 561 535 ;
+C -1 ; WX 556 ; N eta ; B 68 -199 489 530 ;
+C -1 ; WX 556 ; N etatonos ; B 68 -199 489 720 ;
+C -1 ; WX 500 ; N exclamdbl ; B 86 0 414 716 ;
+C -1 ; WX 750 ; N female ; B 119 -214 630 736 ;
+C -1 ; WX 500 ; N fi ; B 11 0 432 728 ;
+C -1 ; WX 604 ; N filledbox ; B 71 0 532 461 ;
+C -1 ; WX 1000 ; N filledrect ; B 0 155 1000 343 ;
+C -1 ; WX 834 ; N fiveeighths ; B 17 -28 813 728 ;
+C -1 ; WX 500 ; N fl ; B 11 0 431 728 ;
+C -1 ; WX 167 ; N fraction ; B -222 -28 392 728 ;
+C -1 ; WX 556 ; N franc ; B 0 0 506 716 ;
+C -1 ; WX 500 ; N gamma ; B 12 -199 488 519 ;
+C -1 ; WX 556 ; N gbreve ; B 32 -210 489 715 ;
+C -1 ; WX 556 ; N gcedilla ; B 32 -210 489 770 ;
+C -1 ; WX 556 ; N gcircumflex ; B 32 -210 489 720 ;
+C -1 ; WX 556 ; N gdot ; B 32 -210 489 692 ;
+C -1 ; WX 319 ; N glyph1100 ; B 99 137 223 714 ;
+C -1 ; WX 319 ; N glyph1101 ; B 97 137 226 267 ;
+C -1 ; WX 319 ; N glyph1102 ; B 97 137 225 542 ;
+C -1 ; WX 549 ; N greaterequal ; B 38 52 512 654 ;
+C -1 ; WX 556 ; N hbar ; B 3 0 488 716 ;
+C -1 ; WX 556 ; N hcircumflex ; B 66 0 488 896 ;
+C -1 ; WX 594 ; N heart ; B 31 -12 563 601 ;
+C -1 ; WX 604 ; N house ; B 77 0 527 563 ;
+C -1 ; WX 333 ; N hungarumlaut ; B 28 583 373 720 ;
+C -1 ; WX 278 ; N ibreve ; B -3 0 286 715 ;
+C -1 ; WX 444 ; N ij ; B 66 -210 387 716 ;
+C -1 ; WX 278 ; N imacron ; B -11 0 293 671 ;
+C -1 ; WX 612 ; N increment ; B 13 0 599 677 ;
+C -1 ; WX 713 ; N infinity ; B 75 189 640 510 ;
+C -1 ; WX 274 ; N integral ; B 0 -107 273 910 ;
+C -1 ; WX 604 ; N integralbt ; B 127 -251 337 848 ;
+C -1 ; WX 604 ; N integraltp ; B 267 -251 477 848 ;
+C -1 ; WX 719 ; N intersection ; B 77 0 642 729 ;
+C -1 ; WX 604 ; N invbullet ; B 62 0 541 479 ;
+C -1 ; WX 604 ; N invcircle ; B 21 0 584 564 ;
+C -1 ; WX 1052 ; N invsmileface ; B 215 -58 837 564 ;
+C -1 ; WX 222 ; N iogonek ; B 50 -208 264 716 ;
+C -1 ; WX 222 ; N iota ; B 67 0 155 519 ;
+C -1 ; WX 222 ; N iotadieresis ; B -23 0 251 720 ;
+C -1 ; WX 222 ; N iotadieresistonos ; B -66 0 289 736 ;
+C -1 ; WX 222 ; N iotatonos ; B 48 0 229 720 ;
+C -1 ; WX 278 ; N itilde ; B -22 0 305 708 ;
+C -1 ; WX 222 ; N jcircumflex ; B -46 -210 266 720 ;
+C -1 ; WX 500 ; N kappa ; B 65 0 500 519 ;
+C -1 ; WX 500 ; N kcedilla ; B 66 -206 496 716 ;
+C -1 ; WX 500 ; N kgreenlandic ; B 65 0 495 519 ;
+C -1 ; WX 222 ; N lacute ; B 32 0 212 889 ;
+C -1 ; WX 500 ; N lambda ; B 12 0 487 716 ;
+C -1 ; WX 292 ; N lcaron ; B 66 0 291 716 ;
+C -1 ; WX 222 ; N lcedilla ; B -1 -206 210 716 ;
+C -1 ; WX 334 ; N ldot ; B 64 0 330 716 ;
+C -1 ; WX 0 ; N lefttorightmark ; B -18 -134 210 690 ;
+C -1 ; WX 549 ; N lessequal ; B 38 52 512 654 ;
+C -1 ; WX 708 ; N lfblock ; B -11 -303 354 910 ;
+C -1 ; WX 222 ; N longs ; B 67 0 292 728 ;
+C -1 ; WX 494 ; N lozenge ; B 23 0 472 694 ;
+C -1 ; WX 222 ; N lslash ; B 1 0 218 716 ;
+C -1 ; WX 708 ; N ltshade ; B 50 -246 719 910 ;
+C -1 ; WX 750 ; N male ; B 54 -128 691 791 ;
+C -1 ; WX 584 ; N minus ; B 56 312 528 394 ;
+C -1 ; WX 187 ; N minute ; B 62 462 194 716 ;
+C -1 ; WX 576 ; N mu ; B 78 -199 497 519 ;
+C -1 ; WX 500 ; N musicalnote ; B 18 -18 482 666 ;
+C -1 ; WX 750 ; N musicalnotedbl ; B 42 -63 649 742 ;
+C -1 ; WX 556 ; N nacute ; B 66 0 487 720 ;
+C -1 ; WX 604 ; N napostrophe ; B 53 0 604 723 ;
+C -1 ; WX 556 ; N ncaron ; B 66 0 487 720 ;
+C -1 ; WX 556 ; N ncedilla ; B 66 -206 487 530 ;
+C -1 ; WX 278 ; N nonmarkingreturn ; B 0 0 0 0 ;
+C -1 ; WX 549 ; N notequal ; B 38 -14 511 720 ;
+C -1 ; WX 365 ; N nsuperior ; B 40 253 326 585 ;
+C -1 ; WX 500 ; N nu ; B 13 0 488 519 ;
+C -1 ; WX 556 ; N obreve ; B 33 -12 519 715 ;
+C -1 ; WX 556 ; N odblacute ; B 33 -12 519 720 ;
+C -1 ; WX 333 ; N ogonek ; B 89 -208 303 12 ;
+C -1 ; WX 556 ; N omacron ; B 33 -12 519 671 ;
+C -1 ; WX 781 ; N omega ; B 42 -12 738 519 ;
+C -1 ; WX 781 ; N omegatonos ; B 42 -12 738 720 ;
+C -1 ; WX 556 ; N omicron ; B 33 -12 519 530 ;
+C -1 ; WX 556 ; N omicrontonos ; B 33 -12 519 720 ;
+C -1 ; WX 834 ; N oneeighth ; B 52 -28 812 728 ;
+C -1 ; WX 354 ; N openbullet ; B 55 208 300 453 ;
+C -1 ; WX 979 ; N orthogonal ; B 177 0 802 625 ;
+C -1 ; WX 611 ; N oslashacute ; B 63 -39 549 720 ;
+C -1 ; WX 494 ; N partialdiff ; B 27 -12 475 728 ;
+C -1 ; WX 1094 ; N peseta ; B 25 -13 1072 716 ;
+C -1 ; WX 648 ; N phi ; B 35 -199 614 531 ;
+C -1 ; WX 690 ; N pi ; B 22 0 668 519 ;
+C -1 ; WX 549 ; N pi1 ; B 0 0 549 519 ;
+C -1 ; WX 823 ; N product ; B 79 -210 744 728 ;
+C -1 ; WX 713 ; N psi ; B 60 -199 653 519 ;
+C -1 ; WX 222 ; N quotereversed ; B 67 489 169 723 ;
+C -1 ; WX 333 ; N racute ; B 65 0 347 720 ;
+C -1 ; WX 549 ; N radical ; B 41 -38 549 913 ;
+C -1 ; WX 333 ; N radicalex ; B -15 599 349 671 ;
+C -1 ; WX 333 ; N rcaron ; B 29 0 347 720 ;
+C -1 ; WX 333 ; N rcedilla ; B 65 -206 347 530 ;
+C -1 ; WX 584 ; N revlogicalnot ; B 55 207 528 503 ;
+C -1 ; WX 569 ; N rho ; B 64 -199 534 530 ;
+C -1 ; WX 0 ; N righttoleftmark ; B -210 -134 17 690 ;
+C -1 ; WX 333 ; N ring ; B 79 562 255 741 ;
+C -1 ; WX 708 ; N rtblock ; B 354 -303 720 910 ;
+C -1 ; WX 500 ; N sacute ; B 31 -12 461 720 ;
+C -1 ; WX 500 ; N scedilla ; B 31 -196 461 530 ;
+C -1 ; WX 500 ; N scircumflex ; B 31 -12 461 720 ;
+C -1 ; WX 354 ; N second ; B 62 462 333 716 ;
+C -1 ; WX 834 ; N seveneighths ; B 36 -28 812 728 ;
+C -1 ; WX 708 ; N shade ; B -11 -246 719 910 ;
+C -1 ; WX 617 ; N sigma ; B 33 -12 595 530 ;
+C -1 ; WX 482 ; N sigma1 ; B 42 -210 472 530 ;
+C -1 ; WX 1021 ; N smileface ; B 199 -58 822 564 ;
+C -1 ; WX 531 ; N spade ; B 28 0 503 601 ;
+C -1 ; WX 713 ; N summation ; B 60 -210 677 728 ;
+C -1 ; WX 917 ; N sun ; B 8 -109 909 792 ;
+C -1 ; WX 395 ; N tau ; B 22 0 372 519 ;
+C -1 ; WX 278 ; N tbar ; B 6 -7 259 700 ;
+C -1 ; WX 375 ; N tcaron ; B 17 -7 374 716 ;
+C -1 ; WX 278 ; N tcedilla ; B 18 -260 271 700 ;
+C -1 ; WX 556 ; N theta ; B 45 -12 512 728 ;
+C -1 ; WX 834 ; N threeeighths ; B 17 -28 813 728 ;
+C -1 ; WX 333 ; N tonos ; B 108 583 289 720 ;
+C -1 ; WX 990 ; N triagdn ; B 148 -15 842 678 ;
+C -1 ; WX 990 ; N triaglf ; B 141 -15 849 692 ;
+C -1 ; WX 990 ; N triagrt ; B 141 -15 849 692 ;
+C -1 ; WX 990 ; N triagup ; B 148 0 842 693 ;
+C -1 ; WX 556 ; N ubreve ; B 64 -12 484 715 ;
+C -1 ; WX 556 ; N udblacute ; B 64 -12 484 720 ;
+C -1 ; WX 556 ; N umacron ; B 64 -12 484 671 ;
+C -1 ; WX 333 ; N undercommaaccent ; B 52 -206 264 -22 ;
+C -1 ; WX 552 ; N underscoredbl ; B -15 -325 567 -135 ;
+C -1 ; WX 556 ; N uogonek ; B 64 -208 603 519 ;
+C -1 ; WX 708 ; N upblock ; B -11 303 719 910 ;
+C -1 ; WX 547 ; N upsilon ; B 66 -12 481 519 ;
+C -1 ; WX 547 ; N upsilondieresis ; B 66 -12 481 720 ;
+C -1 ; WX 547 ; N upsilondieresistonos ; B 66 -12 481 736 ;
+C -1 ; WX 547 ; N upsilontonos ; B 66 -12 481 720 ;
+C -1 ; WX 556 ; N uring ; B 64 -12 484 741 ;
+C -1 ; WX 556 ; N utilde ; B 64 -12 484 708 ;
+C -1 ; WX 722 ; N wacute ; B 3 0 714 720 ;
+C -1 ; WX 722 ; N wcircumflex ; B 3 0 714 720 ;
+C -1 ; WX 722 ; N wdieresis ; B 3 0 714 720 ;
+C -1 ; WX 722 ; N wgrave ; B 3 0 714 720 ;
+C -1 ; WX 448 ; N xi ; B 45 -210 430 728 ;
+C -1 ; WX 500 ; N ycircumflex ; B 16 -210 491 720 ;
+C -1 ; WX 500 ; N ygrave ; B 16 -210 491 720 ;
+C -1 ; WX 500 ; N zacute ; B 20 0 479 720 ;
+C -1 ; WX 500 ; N zdot ; B 20 0 479 692 ;
+C -1 ; WX 0 ; N zerowidthjoiner ; B -107 -134 107 690 ;
+C -1 ; WX 0 ; N zerowidthnonjoiner ; B -18 -134 18 629 ;
+C -1 ; WX 441 ; N zeta ; B 35 -210 433 716 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 107
+KPX space A -55
+KPX space T -18
+KPX space Y -18
+
+KPX one one -74
+
+KPX A space -55
+KPX A T -74
+KPX A V -74
+KPX A W -37
+KPX A Y -74
+KPX A v -18
+KPX A w -18
+KPX A y -18
+KPX A quoteright -74
+
+KPX F comma -111
+KPX F period -111
+KPX F A -55
+
+KPX L space -37
+KPX L T -74
+KPX L V -74
+KPX L W -74
+KPX L Y -74
+KPX L y -37
+KPX L quoteright -55
+
+KPX P space -18
+KPX P comma -129
+KPX P period -129
+KPX P A -74
+
+KPX R T -18
+KPX R V -18
+KPX R W -18
+KPX R Y -18
+
+KPX T space -18
+KPX T comma -111
+KPX T hyphen -55
+KPX T period -111
+KPX T colon -111
+KPX T semicolon -111
+KPX T A -74
+KPX T O -18
+KPX T a -111
+KPX T c -111
+KPX T e -111
+KPX T i -37
+KPX T o -111
+KPX T r -37
+KPX T s -111
+KPX T u -37
+KPX T w -55
+KPX T y -55
+
+KPX V comma -92
+KPX V hyphen -55
+KPX V period -92
+KPX V colon -37
+KPX V semicolon -37
+KPX V A -74
+KPX V a -74
+KPX V e -55
+KPX V i -18
+KPX V o -55
+KPX V r -37
+KPX V u -37
+KPX V y -37
+
+KPX W comma -55
+KPX W hyphen -18
+KPX W period -55
+KPX W colon -18
+KPX W semicolon -18
+KPX W A -37
+KPX W a -37
+KPX W e -18
+KPX W o -18
+KPX W r -18
+KPX W u -18
+KPX W y -9
+
+KPX Y space -18
+KPX Y comma -129
+KPX Y hyphen -92
+KPX Y period -129
+KPX Y colon -55
+KPX Y semicolon -65
+KPX Y A -74
+KPX Y a -74
+KPX Y e -92
+KPX Y i -37
+KPX Y o -92
+KPX Y p -74
+KPX Y q -92
+KPX Y u -55
+KPX Y v -55
+
+KPX f f -18
+KPX f quoteright 18
+
+KPX r comma -55
+KPX r period -55
+KPX r quoteright 37
+
+KPX v comma -74
+KPX v period -74
+
+KPX w comma -55
+KPX w period -55
+
+KPX y comma -74
+KPX y period -74
+
+KPX quoteleft quoteleft -18
+
+KPX quoteright space -37
+KPX quoteright s -18
+KPX quoteright quoteright -18
+
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/arialbd.afm b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/arialbd.afm
new file mode 100644
index 0000000000..add7c5ac2d
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/arialbd.afm
@@ -0,0 +1,1008 @@
+StartFontMetrics 2.0
+Comment Panose 2 11 7 4 2 2 2 2 2 4
+FullName Arial Bold
+FontName Arial-BoldMT
+FamilyName Arial
+Weight Bold
+Notice Typeface The Monotype Corporation plc. Data The Monotype Corporation plc/Type Solutions Inc. 1990-1992. All Rights Reserved
+IsFixedPitch false
+ItalicAngle 0.00
+FontBBox -210 -212 2034 905
+Ascender 728
+Descender -210
+XHeight 519
+CapHeight 716
+UnderlinePosition -324
+UnderlineThickness 215
+EncodingScheme FontSpecific
+StartCharMetrics 865
+C 32 ; WX 278 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 333 ; N exclam ; B 90 0 238 716 ;
+C 34 ; WX 474 ; N quotedbl ; B 55 461 424 716 ;
+C 35 ; WX 556 ; N numbersign ; B 9 -12 544 728 ;
+C 36 ; WX 556 ; N dollar ; B 34 -100 512 773 ;
+C 37 ; WX 889 ; N percent ; B 43 -29 842 728 ;
+C 38 ; WX 722 ; N ampersand ; B 44 -19 706 728 ;
+C 39 ; WX 238 ; N quotesingle ; B 45 461 194 716 ;
+C 40 ; WX 333 ; N parenleft ; B 52 -210 301 728 ;
+C 41 ; WX 333 ; N parenright ; B 33 -210 281 728 ;
+C 42 ; WX 389 ; N asterisk ; B 14 387 368 728 ;
+C 43 ; WX 584 ; N plus ; B 42 103 542 604 ;
+C 44 ; WX 278 ; N comma ; B 57 -160 206 137 ;
+C 45 ; WX 333 ; N hyphen ; B 56 191 326 328 ;
+C 46 ; WX 278 ; N period ; B 72 0 209 137 ;
+C 47 ; WX 278 ; N slash ; B -1 -12 279 728 ;
+C 48 ; WX 556 ; N zero ; B 42 -12 507 719 ;
+C 49 ; WX 556 ; N one ; B 79 0 394 719 ;
+C 50 ; WX 556 ; N two ; B 25 0 506 719 ;
+C 51 ; WX 556 ; N three ; B 38 -12 513 719 ;
+C 52 ; WX 556 ; N four ; B 19 0 533 719 ;
+C 53 ; WX 556 ; N five ; B 44 -12 526 706 ;
+C 54 ; WX 556 ; N six ; B 42 -12 521 719 ;
+C 55 ; WX 556 ; N seven ; B 42 0 512 706 ;
+C 56 ; WX 556 ; N eight ; B 41 -13 511 719 ;
+C 57 ; WX 556 ; N nine ; B 32 -13 510 719 ;
+C 58 ; WX 333 ; N colon ; B 98 0 235 519 ;
+C 59 ; WX 333 ; N semicolon ; B 83 -160 231 519 ;
+C 60 ; WX 584 ; N less ; B 46 82 537 625 ;
+C 61 ; WX 584 ; N equal ; B 42 182 542 524 ;
+C 62 ; WX 584 ; N greater ; B 46 81 538 625 ;
+C 63 ; WX 611 ; N question ; B 52 0 565 723 ;
+C 64 ; WX 975 ; N at ; B 30 -210 972 729 ;
+C 65 ; WX 722 ; N A ; B 0 0 718 716 ;
+C 66 ; WX 722 ; N B ; B 73 0 673 716 ;
+C 67 ; WX 722 ; N C ; B 47 -12 671 728 ;
+C 68 ; WX 722 ; N D ; B 72 0 672 716 ;
+C 69 ; WX 667 ; N E ; B 73 0 617 716 ;
+C 70 ; WX 611 ; N F ; B 74 0 564 716 ;
+C 71 ; WX 778 ; N G ; B 48 -12 717 728 ;
+C 72 ; WX 722 ; N H ; B 73 0 646 716 ;
+C 73 ; WX 278 ; N I ; B 68 0 213 716 ;
+C 74 ; WX 556 ; N J ; B 17 -12 475 716 ;
+C 75 ; WX 722 ; N K ; B 75 0 720 716 ;
+C 76 ; WX 611 ; N L ; B 77 0 581 710 ;
+C 77 ; WX 833 ; N M ; B 71 0 762 716 ;
+C 78 ; WX 722 ; N N ; B 74 0 642 716 ;
+C 79 ; WX 778 ; N O ; B 43 -12 738 728 ;
+C 80 ; WX 667 ; N P ; B 73 0 621 716 ;
+C 81 ; WX 778 ; N Q ; B 43 -72 765 728 ;
+C 82 ; WX 722 ; N R ; B 73 0 717 716 ;
+C 83 ; WX 667 ; N S ; B 36 -13 618 728 ;
+C 84 ; WX 611 ; N T ; B 21 0 590 716 ;
+C 85 ; WX 722 ; N U ; B 72 -12 643 716 ;
+C 86 ; WX 667 ; N V ; B 0 0 666 716 ;
+C 87 ; WX 944 ; N W ; B 3 0 943 716 ;
+C 88 ; WX 667 ; N X ; B 0 0 666 716 ;
+C 89 ; WX 667 ; N Y ; B -1 0 668 716 ;
+C 90 ; WX 611 ; N Z ; B 11 0 592 716 ;
+C 91 ; WX 333 ; N bracketleft ; B 71 -202 314 716 ;
+C 92 ; WX 278 ; N backslash ; B -1 -12 279 728 ;
+C 93 ; WX 333 ; N bracketright ; B 19 -202 262 716 ;
+C 94 ; WX 584 ; N asciicircum ; B 56 338 527 728 ;
+C 95 ; WX 556 ; N underscore ; B -9 -198 561 -109 ;
+C 96 ; WX 333 ; N grave ; B 21 582 242 728 ;
+C 97 ; WX 556 ; N a ; B 36 -12 522 530 ;
+C 98 ; WX 611 ; N b ; B 66 -12 572 716 ;
+C 99 ; WX 556 ; N c ; B 42 -12 531 530 ;
+C 100 ; WX 611 ; N d ; B 41 -12 547 716 ;
+C 101 ; WX 556 ; N e ; B 32 -12 519 530 ;
+C 102 ; WX 333 ; N f ; B 12 0 362 728 ;
+C 103 ; WX 611 ; N g ; B 41 -210 547 530 ;
+C 104 ; WX 611 ; N h ; B 71 0 543 716 ;
+C 105 ; WX 278 ; N i ; B 72 0 209 716 ;
+C 106 ; WX 278 ; N j ; B -46 -210 206 716 ;
+C 107 ; WX 556 ; N k ; B 67 0 546 716 ;
+C 108 ; WX 278 ; N l ; B 72 0 209 716 ;
+C 109 ; WX 889 ; N m ; B 62 0 824 530 ;
+C 110 ; WX 611 ; N n ; B 71 0 543 530 ;
+C 111 ; WX 611 ; N o ; B 40 -12 575 530 ;
+C 112 ; WX 611 ; N p ; B 68 -197 574 530 ;
+C 113 ; WX 611 ; N q ; B 44 -197 548 530 ;
+C 114 ; WX 389 ; N r ; B 66 0 402 530 ;
+C 115 ; WX 556 ; N s ; B 23 -12 508 530 ;
+C 116 ; WX 333 ; N t ; B 15 -12 321 702 ;
+C 117 ; WX 611 ; N u ; B 69 -12 541 519 ;
+C 118 ; WX 556 ; N v ; B 5 0 544 519 ;
+C 119 ; WX 778 ; N w ; B 4 0 777 519 ;
+C 120 ; WX 556 ; N x ; B 6 0 547 519 ;
+C 121 ; WX 556 ; N y ; B 7 -210 540 519 ;
+C 122 ; WX 500 ; N z ; B 17 0 479 519 ;
+C 123 ; WX 389 ; N braceleft ; B 29 -210 363 728 ;
+C 124 ; WX 280 ; N bar ; B 86 -210 195 728 ;
+C 125 ; WX 389 ; N braceright ; B 22 -210 356 728 ;
+C 126 ; WX 584 ; N asciitilde ; B 33 253 551 451 ;
+C 128 ; WX 556 ; N uni20AC ; B -16 -12 525 728 ;
+C 130 ; WX 278 ; N quotesinglbase ; B 57 -160 206 137 ;
+C 131 ; WX 556 ; N florin ; B -10 -210 558 728 ;
+C 132 ; WX 500 ; N quotedblbase ; B 51 -160 430 137 ;
+C 133 ; WX 1000 ; N ellipsis ; B 98 0 902 137 ;
+C 134 ; WX 556 ; N dagger ; B 33 -171 517 707 ;
+C 135 ; WX 556 ; N daggerdbl ; B 33 -171 517 707 ;
+C 136 ; WX 333 ; N circumflex ; B 1 584 332 728 ;
+C 137 ; WX 1000 ; N perthousand ; B 0 -29 1000 728 ;
+C 138 ; WX 667 ; N Scaron ; B 36 -13 618 904 ;
+C 139 ; WX 333 ; N guilsinglleft ; B 37 34 299 480 ;
+C 140 ; WX 1000 ; N OE ; B 35 -12 969 728 ;
+C 142 ; WX 611 ; N Zcaron ; B 11 0 592 904 ;
+C 145 ; WX 278 ; N quoteleft ; B 74 426 223 723 ;
+C 146 ; WX 278 ; N quoteright ; B 57 417 206 714 ;
+C 147 ; WX 500 ; N quotedblleft ; B 64 426 442 723 ;
+C 148 ; WX 500 ; N quotedblright ; B 51 418 430 716 ;
+C 149 ; WX 350 ; N bullet ; B 32 209 321 498 ;
+C 150 ; WX 556 ; N endash ; B -2 208 554 311 ;
+C 151 ; WX 1000 ; N emdash ; B 0 208 1000 311 ;
+C 152 ; WX 333 ; N tilde ; B -6 588 332 713 ;
+C 153 ; WX 1000 ; N trademark ; B 105 316 877 716 ;
+C 154 ; WX 556 ; N scaron ; B 23 -12 508 728 ;
+C 155 ; WX 333 ; N guilsinglright ; B 37 34 299 480 ;
+C 156 ; WX 944 ; N oe ; B 43 -12 903 530 ;
+C 158 ; WX 500 ; N zcaron ; B 17 0 479 728 ;
+C 159 ; WX 667 ; N Ydieresis ; B -1 0 668 875 ;
+C 160 ; WX 278 ; N space ; B 0 0 0 0 ;
+C 161 ; WX 333 ; N exclamdown ; B 95 -199 244 519 ;
+C 162 ; WX 556 ; N cent ; B 41 -197 530 711 ;
+C 163 ; WX 556 ; N sterling ; B 6 -12 541 728 ;
+C 164 ; WX 556 ; N currency ; B 22 101 531 610 ;
+C 165 ; WX 556 ; N yen ; B 0 0 551 716 ;
+C 166 ; WX 280 ; N brokenbar ; B 86 -210 195 728 ;
+C 167 ; WX 556 ; N section ; B 29 -210 521 728 ;
+C 168 ; WX 333 ; N dieresis ; B 2 610 331 728 ;
+C 169 ; WX 737 ; N copyright ; B -4 -18 744 730 ;
+C 170 ; WX 370 ; N ordfeminine ; B 18 363 346 728 ;
+C 171 ; WX 556 ; N guillemotleft ; B 47 34 500 480 ;
+C 172 ; WX 584 ; N logicalnot ; B 42 184 542 524 ;
+C 173 ; WX 333 ; N hyphen ; B 56 191 326 328 ;
+C 174 ; WX 737 ; N registered ; B -4 -18 744 730 ;
+C 175 ; WX 333 ; N overscore ; B 9 604 324 694 ;
+C 176 ; WX 400 ; N degree ; B 42 417 354 728 ;
+C 177 ; WX 549 ; N plusminus ; B 24 0 525 674 ;
+C 178 ; WX 333 ; N twosuperior ; B 12 355 309 725 ;
+C 179 ; WX 333 ; N threesuperior ; B 20 349 313 725 ;
+C 180 ; WX 333 ; N acute ; B 91 582 312 728 ;
+C 181 ; WX 576 ; N mu1 ; B 54 -199 526 519 ;
+C 182 ; WX 556 ; N paragraph ; B -1 -197 551 716 ;
+C 183 ; WX 278 ; N middot ; B 72 280 209 417 ;
+C 184 ; WX 333 ; N cedilla ; B 19 -205 285 -6 ;
+C 185 ; WX 333 ; N onesuperior ; B 44 355 242 725 ;
+C 186 ; WX 365 ; N ordmasculine ; B 13 361 352 728 ;
+C 187 ; WX 556 ; N guillemotright ; B 52 34 505 480 ;
+C 188 ; WX 834 ; N onequarter ; B 45 -26 824 725 ;
+C 189 ; WX 834 ; N onehalf ; B 45 -26 809 725 ;
+C 190 ; WX 834 ; N threequarters ; B 20 -26 824 725 ;
+C 191 ; WX 611 ; N questiondown ; B 49 -205 563 519 ;
+C 192 ; WX 722 ; N Agrave ; B 0 0 718 903 ;
+C 193 ; WX 722 ; N Aacute ; B 0 0 718 903 ;
+C 194 ; WX 722 ; N Acircumflex ; B 0 0 718 901 ;
+C 195 ; WX 722 ; N Atilde ; B 0 0 718 880 ;
+C 196 ; WX 722 ; N Adieresis ; B 0 0 718 875 ;
+C 197 ; WX 722 ; N Aring ; B 0 0 718 858 ;
+C 198 ; WX 1000 ; N AE ; B -42 0 952 716 ;
+C 199 ; WX 722 ; N Ccedilla ; B 47 -205 671 728 ;
+C 200 ; WX 667 ; N Egrave ; B 73 0 617 903 ;
+C 201 ; WX 667 ; N Eacute ; B 73 0 617 903 ;
+C 202 ; WX 667 ; N Ecircumflex ; B 73 0 617 901 ;
+C 203 ; WX 667 ; N Edieresis ; B 73 0 617 875 ;
+C 204 ; WX 278 ; N Igrave ; B -5 0 216 903 ;
+C 205 ; WX 278 ; N Iacute ; B 52 0 273 903 ;
+C 206 ; WX 278 ; N Icircumflex ; B -21 0 310 901 ;
+C 207 ; WX 278 ; N Idieresis ; B -22 0 306 875 ;
+C 208 ; WX 722 ; N Eth ; B -1 0 673 716 ;
+C 209 ; WX 722 ; N Ntilde ; B 74 0 642 880 ;
+C 210 ; WX 778 ; N Ograve ; B 43 -12 738 903 ;
+C 211 ; WX 778 ; N Oacute ; B 43 -12 738 903 ;
+C 212 ; WX 778 ; N Ocircumflex ; B 43 -12 738 901 ;
+C 213 ; WX 778 ; N Otilde ; B 43 -12 738 880 ;
+C 214 ; WX 778 ; N Odieresis ; B 43 -12 738 875 ;
+C 215 ; WX 584 ; N multiply ; B 53 115 530 591 ;
+C 216 ; WX 778 ; N Oslash ; B 31 -40 750 750 ;
+C 217 ; WX 722 ; N Ugrave ; B 72 -12 643 903 ;
+C 218 ; WX 722 ; N Uacute ; B 72 -12 643 903 ;
+C 219 ; WX 722 ; N Ucircumflex ; B 72 -12 643 901 ;
+C 220 ; WX 722 ; N Udieresis ; B 72 -12 643 875 ;
+C 221 ; WX 667 ; N Yacute ; B -1 0 668 903 ;
+C 222 ; WX 667 ; N Thorn ; B 73 0 621 716 ;
+C 223 ; WX 611 ; N germandbls ; B 68 -12 576 728 ;
+C 224 ; WX 556 ; N agrave ; B 36 -12 522 728 ;
+C 225 ; WX 556 ; N aacute ; B 36 -12 522 728 ;
+C 226 ; WX 556 ; N acircumflex ; B 36 -12 522 728 ;
+C 227 ; WX 556 ; N atilde ; B 36 -12 522 713 ;
+C 228 ; WX 556 ; N adieresis ; B 36 -12 522 728 ;
+C 229 ; WX 556 ; N aring ; B 36 -12 522 751 ;
+C 230 ; WX 889 ; N ae ; B 43 -12 842 530 ;
+C 231 ; WX 556 ; N ccedilla ; B 42 -205 531 530 ;
+C 232 ; WX 556 ; N egrave ; B 32 -12 519 728 ;
+C 233 ; WX 556 ; N eacute ; B 32 -12 519 728 ;
+C 234 ; WX 556 ; N ecircumflex ; B 32 -12 519 728 ;
+C 235 ; WX 556 ; N edieresis ; B 32 -12 519 728 ;
+C 236 ; WX 278 ; N igrave ; B -11 0 210 728 ;
+C 237 ; WX 278 ; N iacute ; B 62 0 283 728 ;
+C 238 ; WX 278 ; N icircumflex ; B -25 0 306 728 ;
+C 239 ; WX 278 ; N idieresis ; B -23 0 305 728 ;
+C 240 ; WX 611 ; N eth ; B 41 -12 574 716 ;
+C 241 ; WX 611 ; N ntilde ; B 71 0 543 713 ;
+C 242 ; WX 611 ; N ograve ; B 40 -12 575 728 ;
+C 243 ; WX 611 ; N oacute ; B 40 -12 575 728 ;
+C 244 ; WX 611 ; N ocircumflex ; B 40 -12 575 728 ;
+C 245 ; WX 611 ; N otilde ; B 40 -12 575 713 ;
+C 246 ; WX 611 ; N odieresis ; B 40 -12 575 728 ;
+C 247 ; WX 549 ; N divide ; B 24 90 524 616 ;
+C 248 ; WX 611 ; N oslash ; B 42 -36 578 546 ;
+C 249 ; WX 611 ; N ugrave ; B 69 -12 541 728 ;
+C 250 ; WX 611 ; N uacute ; B 69 -12 541 728 ;
+C 251 ; WX 611 ; N ucircumflex ; B 69 -12 541 728 ;
+C 252 ; WX 611 ; N udieresis ; B 69 -12 541 728 ;
+C 253 ; WX 556 ; N yacute ; B 7 -210 540 728 ;
+C 254 ; WX 611 ; N thorn ; B 68 -197 574 716 ;
+C 255 ; WX 556 ; N ydieresis ; B 7 -210 540 728 ;
+C -1 ; WX 552 ; N overscore ; B -9 758 561 847 ;
+C -1 ; WX 333 ; N middot ; B 239 280 376 417 ;
+C -1 ; WX 0 ; N .null ; B 0 0 0 0 ;
+C -1 ; WX 1000 ; N AEacute ; B -42 0 952 926 ;
+C -1 ; WX 722 ; N Abreve ; B 0 0 718 896 ;
+C -1 ; WX 722 ; N Alpha ; B 0 0 718 716 ;
+C -1 ; WX 722 ; N Alphatonos ; B -12 0 721 716 ;
+C -1 ; WX 722 ; N Amacron ; B 0 0 718 871 ;
+C -1 ; WX 722 ; N Aogonek ; B 0 -210 764 716 ;
+C -1 ; WX 722 ; N Aringacute ; B 0 0 718 1048 ;
+C -1 ; WX 722 ; N Beta ; B 73 0 673 716 ;
+C -1 ; WX 722 ; N Cacute ; B 47 -12 671 903 ;
+C -1 ; WX 722 ; N Ccaron ; B 47 -12 671 904 ;
+C -1 ; WX 722 ; N Ccircumflex ; B 47 -12 671 924 ;
+C -1 ; WX 722 ; N Cdot ; B 47 -12 671 910 ;
+C -1 ; WX 667 ; N Chi ; B 0 0 666 716 ;
+C -1 ; WX 722 ; N Dcaron ; B 72 0 672 904 ;
+C -1 ; WX 719 ; N Delta ; B 0 0 718 716 ;
+C -1 ; WX 722 ; N Dslash ; B -1 0 673 716 ;
+C -1 ; WX 667 ; N Ebreve ; B 73 0 617 918 ;
+C -1 ; WX 667 ; N Ecaron ; B 73 0 617 904 ;
+C -1 ; WX 667 ; N Edot ; B 73 0 617 910 ;
+C -1 ; WX 667 ; N Emacron ; B 73 0 617 871 ;
+C -1 ; WX 723 ; N Eng ; B 76 -13 676 728 ;
+C -1 ; WX 667 ; N Eogonek ; B 73 -210 617 716 ;
+C -1 ; WX 667 ; N Epsilon ; B 73 0 617 716 ;
+C -1 ; WX 853 ; N Epsilontonos ; B -34 0 803 716 ;
+C -1 ; WX 722 ; N Eta ; B 73 0 646 716 ;
+C -1 ; WX 906 ; N Etatonos ; B -34 0 831 716 ;
+C -1 ; WX 601 ; N Gamma ; B 75 0 579 716 ;
+C -1 ; WX 778 ; N Gbreve ; B 48 -12 717 896 ;
+C -1 ; WX 778 ; N Gcedilla ; B 48 -205 717 728 ;
+C -1 ; WX 778 ; N Gcircumflex ; B 48 -12 717 924 ;
+C -1 ; WX 778 ; N Gdot ; B 48 -12 717 910 ;
+C -1 ; WX 604 ; N H18533 ; B 87 67 517 497 ;
+C -1 ; WX 354 ; N H18543 ; B 45 198 310 463 ;
+C -1 ; WX 354 ; N H18551 ; B 45 198 310 463 ;
+C -1 ; WX 604 ; N H22073 ; B 71 0 532 461 ;
+C -1 ; WX 722 ; N Hbar ; B 2 0 716 716 ;
+C -1 ; WX 722 ; N Hcircumflex ; B 73 0 646 924 ;
+C -1 ; WX 785 ; N IJ ; B 68 -12 708 716 ;
+C -1 ; WX 278 ; N Ibreve ; B -15 0 290 918 ;
+C -1 ; WX 278 ; N Idot ; B 68 0 213 887 ;
+C -1 ; WX 278 ; N Imacron ; B -19 0 296 871 ;
+C -1 ; WX 278 ; N Iogonek ; B 54 -210 271 716 ;
+C -1 ; WX 278 ; N Iota ; B 68 0 213 716 ;
+C -1 ; WX 278 ; N Iotadieresis ; B -25 0 303 882 ;
+C -1 ; WX 474 ; N Iotatonos ; B -34 0 403 716 ;
+C -1 ; WX 278 ; N Itilde ; B -34 0 304 904 ;
+C -1 ; WX 556 ; N Jcircumflex ; B 17 -12 568 924 ;
+C -1 ; WX 722 ; N Kappa ; B 75 0 720 716 ;
+C -1 ; WX 722 ; N Kcedilla ; B 75 -206 720 716 ;
+C -1 ; WX 611 ; N Lacute ; B 77 0 581 903 ;
+C -1 ; WX 667 ; N Lambda ; B 0 0 667 716 ;
+C -1 ; WX 611 ; N Lcaron ; B 77 0 581 710 ;
+C -1 ; WX 611 ; N Lcedilla ; B 77 -206 581 710 ;
+C -1 ; WX 611 ; N Ldot ; B 77 0 581 710 ;
+C -1 ; WX 611 ; N Lslash ; B 5 0 584 716 ;
+C -1 ; WX 833 ; N Mu ; B 71 0 762 716 ;
+C -1 ; WX 722 ; N Nacute ; B 74 0 642 903 ;
+C -1 ; WX 722 ; N Ncaron ; B 74 0 642 904 ;
+C -1 ; WX 722 ; N Ncedilla ; B 74 -206 642 716 ;
+C -1 ; WX 722 ; N Nu ; B 74 0 642 716 ;
+C -1 ; WX 778 ; N Obreve ; B 43 -12 738 918 ;
+C -1 ; WX 778 ; N Odblacute ; B 43 -12 738 902 ;
+C -1 ; WX 768 ; N Ohm ; B 27 0 747 734 ;
+C -1 ; WX 778 ; N Omacron ; B 43 -12 738 871 ;
+C -1 ; WX 802 ; N Omega ; B 48 0 754 728 ;
+C -1 ; WX 838 ; N Omegatonos ; B -49 0 791 728 ;
+C -1 ; WX 778 ; N Omicron ; B 43 -12 738 728 ;
+C -1 ; WX 825 ; N Omicrontonos ; B -44 -12 783 728 ;
+C -1 ; WX 778 ; N Oslashacute ; B 31 -40 750 926 ;
+C -1 ; WX 821 ; N Phi ; B 42 -29 779 734 ;
+C -1 ; WX 722 ; N Pi ; B 75 0 647 716 ;
+C -1 ; WX 809 ; N Psi ; B 42 0 767 716 ;
+C -1 ; WX 722 ; N Racute ; B 73 0 717 903 ;
+C -1 ; WX 722 ; N Rcaron ; B 73 0 717 904 ;
+C -1 ; WX 722 ; N Rcedilla ; B 73 -206 717 716 ;
+C -1 ; WX 667 ; N Rho ; B 73 0 621 716 ;
+C -1 ; WX 708 ; N SF010000 ; B 312 -303 720 346 ;
+C -1 ; WX 708 ; N SF020000 ; B 312 261 720 910 ;
+C -1 ; WX 708 ; N SF030000 ; B -11 -303 396 346 ;
+C -1 ; WX 708 ; N SF040000 ; B -11 261 396 910 ;
+C -1 ; WX 708 ; N SF050000 ; B -11 -303 719 910 ;
+C -1 ; WX 708 ; N SF060000 ; B -11 -303 719 346 ;
+C -1 ; WX 708 ; N SF070000 ; B -11 261 719 910 ;
+C -1 ; WX 708 ; N SF080000 ; B 312 -303 720 910 ;
+C -1 ; WX 708 ; N SF090000 ; B -11 -303 396 910 ;
+C -1 ; WX 708 ; N SF100000 ; B -11 261 719 346 ;
+C -1 ; WX 625 ; N SF110000 ; B 223 -303 309 910 ;
+C -1 ; WX 708 ; N SF190000 ; B -11 -303 396 910 ;
+C -1 ; WX 708 ; N SF200000 ; B -11 -303 489 910 ;
+C -1 ; WX 708 ; N SF210000 ; B -11 -303 489 346 ;
+C -1 ; WX 708 ; N SF220000 ; B -11 -303 396 439 ;
+C -1 ; WX 708 ; N SF230000 ; B -11 -303 489 910 ;
+C -1 ; WX 708 ; N SF240000 ; B 219 -303 490 910 ;
+C -1 ; WX 708 ; N SF250000 ; B -11 -303 489 439 ;
+C -1 ; WX 708 ; N SF260000 ; B -11 168 489 910 ;
+C -1 ; WX 708 ; N SF270000 ; B -11 261 489 910 ;
+C -1 ; WX 708 ; N SF280000 ; B -11 168 396 910 ;
+C -1 ; WX 708 ; N SF360000 ; B 312 -303 720 910 ;
+C -1 ; WX 708 ; N SF370000 ; B 219 -303 720 910 ;
+C -1 ; WX 708 ; N SF380000 ; B 219 168 719 910 ;
+C -1 ; WX 708 ; N SF390000 ; B 219 -303 719 439 ;
+C -1 ; WX 708 ; N SF400000 ; B -11 168 719 910 ;
+C -1 ; WX 708 ; N SF410000 ; B -11 -303 719 439 ;
+C -1 ; WX 708 ; N SF420000 ; B 219 -303 720 910 ;
+C -1 ; WX 708 ; N SF430000 ; B -11 168 719 439 ;
+C -1 ; WX 708 ; N SF440000 ; B -11 -303 719 910 ;
+C -1 ; WX 708 ; N SF450000 ; B -11 168 719 910 ;
+C -1 ; WX 708 ; N SF460000 ; B -11 261 719 910 ;
+C -1 ; WX 708 ; N SF470000 ; B -11 -303 719 439 ;
+C -1 ; WX 708 ; N SF480000 ; B -11 -303 719 346 ;
+C -1 ; WX 708 ; N SF490000 ; B 219 261 720 910 ;
+C -1 ; WX 708 ; N SF500000 ; B 312 168 720 910 ;
+C -1 ; WX 708 ; N SF510000 ; B 312 -303 720 439 ;
+C -1 ; WX 708 ; N SF520000 ; B 219 -303 720 346 ;
+C -1 ; WX 708 ; N SF530000 ; B -11 -303 719 910 ;
+C -1 ; WX 708 ; N SF540000 ; B -11 -303 719 910 ;
+C -1 ; WX 667 ; N Sacute ; B 36 -13 618 903 ;
+C -1 ; WX 667 ; N Scedilla ; B 36 -205 618 728 ;
+C -1 ; WX 667 ; N Scircumflex ; B 36 -13 618 924 ;
+C -1 ; WX 600 ; N Sigma ; B 44 0 564 716 ;
+C -1 ; WX 611 ; N Tau ; B 21 0 590 716 ;
+C -1 ; WX 611 ; N Tbar ; B 21 0 590 716 ;
+C -1 ; WX 611 ; N Tcaron ; B 21 0 590 904 ;
+C -1 ; WX 611 ; N Tcedilla ; B 21 -319 590 716 ;
+C -1 ; WX 778 ; N Theta ; B 42 -12 736 728 ;
+C -1 ; WX 722 ; N Ubreve ; B 72 -12 643 918 ;
+C -1 ; WX 722 ; N Udblacute ; B 72 -12 643 902 ;
+C -1 ; WX 722 ; N Umacron ; B 72 -12 643 871 ;
+C -1 ; WX 722 ; N Uogonek ; B 72 -210 643 716 ;
+C -1 ; WX 667 ; N Upsilon ; B -1 0 668 716 ;
+C -1 ; WX 667 ; N Upsilondieresis ; B -1 0 668 882 ;
+C -1 ; WX 927 ; N Upsilontonos ; B -27 0 928 716 ;
+C -1 ; WX 722 ; N Uring ; B 72 -12 643 948 ;
+C -1 ; WX 722 ; N Utilde ; B 72 -12 643 904 ;
+C -1 ; WX 944 ; N Wacute ; B 3 0 943 926 ;
+C -1 ; WX 944 ; N Wcircumflex ; B 3 0 943 924 ;
+C -1 ; WX 944 ; N Wdieresis ; B 3 0 943 898 ;
+C -1 ; WX 944 ; N Wgrave ; B 3 0 943 926 ;
+C -1 ; WX 644 ; N Xi ; B 50 0 594 716 ;
+C -1 ; WX 667 ; N Ycircumflex ; B -1 0 668 924 ;
+C -1 ; WX 667 ; N Ygrave ; B -1 0 668 926 ;
+C -1 ; WX 611 ; N Zacute ; B 11 0 592 903 ;
+C -1 ; WX 611 ; N Zdot ; B 11 0 592 890 ;
+C -1 ; WX 611 ; N Zeta ; B 11 0 592 716 ;
+C -1 ; WX 556 ; N abreve ; B 36 -12 522 728 ;
+C -1 ; WX 889 ; N aeacute ; B 43 -12 842 728 ;
+C -1 ; WX 1000 ; N afii00208 ; B 32 208 968 311 ;
+C -1 ; WX 556 ; N afii08941 ; B 6 -12 541 728 ;
+C -1 ; WX 722 ; N afii10017 ; B 0 0 718 716 ;
+C -1 ; WX 719 ; N afii10018 ; B 76 0 674 716 ;
+C -1 ; WX 722 ; N afii10019 ; B 73 0 673 716 ;
+C -1 ; WX 567 ; N afii10020 ; B 80 0 565 716 ;
+C -1 ; WX 712 ; N afii10021 ; B -3 -156 688 716 ;
+C -1 ; WX 667 ; N afii10022 ; B 73 0 617 716 ;
+C -1 ; WX 669 ; N afii10023 ; B 73 0 617 875 ;
+C -1 ; WX 904 ; N afii10024 ; B 11 0 893 721 ;
+C -1 ; WX 626 ; N afii10025 ; B 21 -12 572 728 ;
+C -1 ; WX 719 ; N afii10026 ; B 75 0 644 716 ;
+C -1 ; WX 719 ; N afii10027 ; B 75 0 644 894 ;
+C -1 ; WX 610 ; N afii10028 ; B 75 0 602 721 ;
+C -1 ; WX 702 ; N afii10029 ; B 16 -4 625 716 ;
+C -1 ; WX 833 ; N afii10030 ; B 71 0 762 716 ;
+C -1 ; WX 722 ; N afii10031 ; B 73 0 646 716 ;
+C -1 ; WX 778 ; N afii10032 ; B 43 -12 738 728 ;
+C -1 ; WX 719 ; N afii10033 ; B 75 0 644 716 ;
+C -1 ; WX 667 ; N afii10034 ; B 73 0 621 716 ;
+C -1 ; WX 722 ; N afii10035 ; B 47 -12 671 728 ;
+C -1 ; WX 611 ; N afii10036 ; B 21 0 590 716 ;
+C -1 ; WX 622 ; N afii10037 ; B 0 -9 622 716 ;
+C -1 ; WX 854 ; N afii10038 ; B 43 0 810 715 ;
+C -1 ; WX 667 ; N afii10039 ; B 0 0 666 716 ;
+C -1 ; WX 730 ; N afii10040 ; B 75 -156 704 716 ;
+C -1 ; WX 703 ; N afii10041 ; B 61 0 626 716 ;
+C -1 ; WX 1005 ; N afii10042 ; B 75 0 930 716 ;
+C -1 ; WX 1019 ; N afii10043 ; B 75 -156 993 716 ;
+C -1 ; WX 870 ; N afii10044 ; B 13 0 823 716 ;
+C -1 ; WX 979 ; N afii10045 ; B 77 0 902 716 ;
+C -1 ; WX 719 ; N afii10046 ; B 76 0 673 716 ;
+C -1 ; WX 711 ; N afii10047 ; B 42 -12 668 728 ;
+C -1 ; WX 1031 ; N afii10048 ; B 73 -12 984 728 ;
+C -1 ; WX 719 ; N afii10049 ; B 2 0 646 716 ;
+C -1 ; WX 487 ; N afii10050 ; B 73 0 460 872 ;
+C -1 ; WX 885 ; N afii10051 ; B 23 -6 846 716 ;
+C -1 ; WX 567 ; N afii10052 ; B 75 0 579 903 ;
+C -1 ; WX 711 ; N afii10053 ; B 43 -12 669 728 ;
+C -1 ; WX 667 ; N afii10054 ; B 36 -13 618 728 ;
+C -1 ; WX 278 ; N afii10055 ; B 68 0 213 716 ;
+C -1 ; WX 276 ; N afii10056 ; B -26 0 302 875 ;
+C -1 ; WX 556 ; N afii10057 ; B 17 -12 475 716 ;
+C -1 ; WX 1094 ; N afii10058 ; B 13 -4 1047 716 ;
+C -1 ; WX 1062 ; N afii10059 ; B 77 0 1013 716 ;
+C -1 ; WX 875 ; N afii10060 ; B 27 0 803 716 ;
+C -1 ; WX 610 ; N afii10061 ; B 75 0 602 903 ;
+C -1 ; WX 622 ; N afii10062 ; B 0 -9 622 897 ;
+C -1 ; WX 556 ; N afii10065 ; B 36 -12 522 530 ;
+C -1 ; WX 618 ; N afii10066 ; B 45 -12 575 732 ;
+C -1 ; WX 615 ; N afii10067 ; B 73 0 576 519 ;
+C -1 ; WX 417 ; N afii10068 ; B 66 0 417 519 ;
+C -1 ; WX 635 ; N afii10069 ; B -3 -137 612 519 ;
+C -1 ; WX 556 ; N afii10070 ; B 32 -12 519 530 ;
+C -1 ; WX 556 ; N afii10071 ; B 32 -12 519 728 ;
+C -1 ; WX 709 ; N afii10072 ; B 0 0 710 522 ;
+C -1 ; WX 497 ; N afii10073 ; B 12 -12 458 530 ;
+C -1 ; WX 615 ; N afii10074 ; B 68 0 546 519 ;
+C -1 ; WX 615 ; N afii10075 ; B 68 0 546 729 ;
+C -1 ; WX 500 ; N afii10076 ; B 66 0 501 522 ;
+C -1 ; WX 635 ; N afii10077 ; B 12 -9 568 519 ;
+C -1 ; WX 740 ; N afii10078 ; B 76 0 674 519 ;
+C -1 ; WX 604 ; N afii10079 ; B 66 0 538 519 ;
+C -1 ; WX 611 ; N afii10080 ; B 40 -12 575 530 ;
+C -1 ; WX 604 ; N afii10081 ; B 66 0 527 519 ;
+C -1 ; WX 611 ; N afii10082 ; B 68 -197 574 530 ;
+C -1 ; WX 556 ; N afii10083 ; B 42 -12 531 530 ;
+C -1 ; WX 490 ; N afii10084 ; B 10 0 479 519 ;
+C -1 ; WX 556 ; N afii10085 ; B 7 -210 540 519 ;
+C -1 ; WX 875 ; N afii10086 ; B 41 -197 834 716 ;
+C -1 ; WX 556 ; N afii10087 ; B 6 0 547 519 ;
+C -1 ; WX 615 ; N afii10088 ; B 67 -137 591 519 ;
+C -1 ; WX 581 ; N afii10089 ; B 56 0 516 519 ;
+C -1 ; WX 833 ; N afii10090 ; B 68 0 765 519 ;
+C -1 ; WX 844 ; N afii10091 ; B 69 -137 822 519 ;
+C -1 ; WX 729 ; N afii10092 ; B 14 0 689 519 ;
+C -1 ; WX 854 ; N afii10093 ; B 73 0 789 519 ;
+C -1 ; WX 615 ; N afii10094 ; B 75 0 575 519 ;
+C -1 ; WX 552 ; N afii10095 ; B 27 -12 512 530 ;
+C -1 ; WX 854 ; N afii10096 ; B 71 -12 815 530 ;
+C -1 ; WX 583 ; N afii10097 ; B -2 0 516 519 ;
+C -1 ; WX 447 ; N afii10098 ; B 66 0 416 655 ;
+C -1 ; WX 611 ; N afii10099 ; B 0 -210 543 716 ;
+C -1 ; WX 417 ; N afii10100 ; B 66 0 417 728 ;
+C -1 ; WX 552 ; N afii10101 ; B 40 -12 524 530 ;
+C -1 ; WX 556 ; N afii10102 ; B 23 -12 508 530 ;
+C -1 ; WX 278 ; N afii10103 ; B 72 0 209 716 ;
+C -1 ; WX 281 ; N afii10104 ; B -23 0 305 728 ;
+C -1 ; WX 278 ; N afii10105 ; B -46 -210 206 716 ;
+C -1 ; WX 969 ; N afii10106 ; B 12 -9 931 519 ;
+C -1 ; WX 906 ; N afii10107 ; B 68 0 866 519 ;
+C -1 ; WX 611 ; N afii10108 ; B 0 0 543 716 ;
+C -1 ; WX 500 ; N afii10109 ; B 66 0 501 728 ;
+C -1 ; WX 556 ; N afii10110 ; B 7 -210 540 729 ;
+C -1 ; WX 719 ; N afii10145 ; B 75 -197 644 716 ;
+C -1 ; WX 604 ; N afii10193 ; B 66 -137 537 519 ;
+C -1 ; WX 360 ; N afii52305 ; B 0 143 395 708 ;
+C -1 ; WX 542 ; N afii52306 ; B 0 143 576 722 ;
+C -1 ; WX 559 ; N afii52364 ; B 15 -174 588 282 ;
+C -1 ; WX 469 ; N afii52399 ; B 62 46 422 510 ;
+C -1 ; WX 238 ; N afii52400 ; B 0 109 238 831 ;
+C -1 ; WX 271 ; N afii52957 ; B 0 -193 306 492 ;
+C -1 ; WX 526 ; N afii57381 ; B 65 84 463 777 ;
+C -1 ; WX 319 ; N afii57388 ; B 83 137 241 443 ;
+C -1 ; WX 612 ; N afii57391 ; B 0 143 646 276 ;
+C -1 ; WX 562 ; N afii57392 ; B 191 206 360 457 ;
+C -1 ; WX 562 ; N afii57393 ; B 164 146 359 719 ;
+C -1 ; WX 562 ; N afii57394 ; B 127 143 419 718 ;
+C -1 ; WX 562 ; N afii57395 ; B 77 143 476 713 ;
+C -1 ; WX 562 ; N afii57396 ; B 147 145 404 710 ;
+C -1 ; WX 562 ; N afii57397 ; B 114 231 448 634 ;
+C -1 ; WX 562 ; N afii57398 ; B 104 149 426 718 ;
+C -1 ; WX 562 ; N afii57399 ; B 76 143 457 717 ;
+C -1 ; WX 562 ; N afii57400 ; B 92 149 473 724 ;
+C -1 ; WX 562 ; N afii57401 ; B 116 146 427 719 ;
+C -1 ; WX 319 ; N afii57403 ; B 78 136 235 609 ;
+C -1 ; WX 356 ; N afii57407 ; B 33 137 326 711 ;
+C -1 ; WX 469 ; N afii57409 ; B 62 46 422 510 ;
+C -1 ; WX 360 ; N afii57410 ; B 0 143 395 708 ;
+C -1 ; WX 217 ; N afii57411 ; B 46 109 182 876 ;
+C -1 ; WX 451 ; N afii57412 ; B 37 -71 485 661 ;
+C -1 ; WX 217 ; N afii57413 ; B 46 -88 181 736 ;
+C -1 ; WX 645 ; N afii57414 ; B 74 -60 575 546 ;
+C -1 ; WX 217 ; N afii57415 ; B 66 109 181 736 ;
+C -1 ; WX 649 ; N afii57416 ; B 62 -69 684 489 ;
+C -1 ; WX 343 ; N afii57417 ; B 26 126 304 763 ;
+C -1 ; WX 649 ; N afii57418 ; B 62 143 684 656 ;
+C -1 ; WX 649 ; N afii57419 ; B 63 144 684 766 ;
+C -1 ; WX 577 ; N afii57420 ; B 25 -203 562 527 ;
+C -1 ; WX 577 ; N afii57421 ; B 25 -203 562 527 ;
+C -1 ; WX 577 ; N afii57422 ; B 25 -203 562 746 ;
+C -1 ; WX 343 ; N afii57423 ; B 85 143 377 604 ;
+C -1 ; WX 343 ; N afii57424 ; B 85 143 377 845 ;
+C -1 ; WX 433 ; N afii57425 ; B 39 -72 467 461 ;
+C -1 ; WX 433 ; N afii57426 ; B 39 -72 467 693 ;
+C -1 ; WX 899 ; N afii57427 ; B 65 -63 934 458 ;
+C -1 ; WX 899 ; N afii57428 ; B 65 -63 934 774 ;
+C -1 ; WX 1062 ; N afii57429 ; B 65 -63 1097 504 ;
+C -1 ; WX 1062 ; N afii57430 ; B 61 -63 1092 728 ;
+C -1 ; WX 523 ; N afii57431 ; B 0 143 558 812 ;
+C -1 ; WX 523 ; N afii57432 ; B 0 143 558 812 ;
+C -1 ; WX 541 ; N afii57433 ; B 25 -204 535 595 ;
+C -1 ; WX 541 ; N afii57434 ; B 25 -204 535 822 ;
+C -1 ; WX 198 ; N afii57440 ; B 0 143 232 276 ;
+C -1 ; WX 125 ; N afii57440_2 ; B 0 143 159 276 ;
+C -1 ; WX 1000 ; N afii57440_3 ; B 0 143 1034 276 ;
+C -1 ; WX 2000 ; N afii57440_4 ; B 0 143 2034 276 ;
+C -1 ; WX 758 ; N afii57441 ; B 57 127 792 779 ;
+C -1 ; WX 612 ; N afii57442 ; B 53 -130 646 658 ;
+C -1 ; WX 541 ; N afii57443 ; B 54 143 575 774 ;
+C -1 ; WX 451 ; N afii57444 ; B 51 -36 485 773 ;
+C -1 ; WX 360 ; N afii57445 ; B 50 -212 395 431 ;
+C -1 ; WX 541 ; N afii57446 ; B 64 -63 575 612 ;
+C -1 ; WX 343 ; N afii57447 ; B 43 126 304 519 ;
+C -1 ; WX 451 ; N afii57448 ; B 37 -71 485 484 ;
+C -1 ; WX 645 ; N afii57449 ; B 74 -60 575 461 ;
+C -1 ; WX 645 ; N afii57450 ; B 74 -194 575 461 ;
+C -1 ; WX 201 ; N afii57451 ; B 34 683 201 857 ;
+C -1 ; WX 201 ; N afii57451_2 ; B 34 683 201 857 ;
+C -1 ; WX 237 ; N afii57452 ; B 34 683 237 872 ;
+C -1 ; WX 237 ; N afii57452_2 ; B 34 683 237 872 ;
+C -1 ; WX 201 ; N afii57453 ; B 34 -133 201 41 ;
+C -1 ; WX 201 ; N afii57453_2 ; B 34 -133 201 41 ;
+C -1 ; WX 201 ; N afii57454 ; B 34 683 201 784 ;
+C -1 ; WX 201 ; N afii57454_2 ; B 34 683 201 784 ;
+C -1 ; WX 209 ; N afii57455 ; B 35 683 209 895 ;
+C -1 ; WX 209 ; N afii57455_2 ; B 35 683 209 895 ;
+C -1 ; WX 201 ; N afii57456 ; B 34 -60 201 41 ;
+C -1 ; WX 201 ; N afii57456_2 ; B 34 -60 201 41 ;
+C -1 ; WX 211 ; N afii57457 ; B 34 683 211 840 ;
+C -1 ; WX 211 ; N afii57457_2 ; B 34 683 211 840 ;
+C -1 ; WX 165 ; N afii57458 ; B 34 683 165 834 ;
+C -1 ; WX 165 ; N afii57458_2 ; B 34 683 165 834 ;
+C -1 ; WX 750 ; N afii57460 ; B 125 0 625 625 ;
+C -1 ; WX 319 ; N afii57461 ; B 94 23 230 267 ;
+C -1 ; WX 469 ; N afii57470 ; B 0 117 433 627 ;
+C -1 ; WX 649 ; N afii57506 ; B 62 -193 684 489 ;
+C -1 ; WX 577 ; N afii57507 ; B 25 -203 562 527 ;
+C -1 ; WX 433 ; N afii57508 ; B 39 -72 481 813 ;
+C -1 ; WX 757 ; N afii57509 ; B 54 143 791 863 ;
+C -1 ; WX 343 ; N afii57534 ; B 43 126 304 519 ;
+C -1 ; WX 645 ; N afii57555 ; B 74 -60 575 461 ;
+C -1 ; WX 757 ; N afii57567 ; B 54 143 791 708 ;
+C -1 ; WX 885 ; N afii61248 ; B 17 -27 868 728 ;
+C -1 ; WX 489 ; N afii61289 ; B 12 -12 453 728 ;
+C -1 ; WX 1115 ; N afii61352 ; B 80 0 1073 716 ;
+C -1 ; WX 253 ; N afii62753 ; B 4 143 288 831 ;
+C -1 ; WX 234 ; N afii62754 ; B 32 143 269 876 ;
+C -1 ; WX 451 ; N afii62755 ; B 37 -71 485 661 ;
+C -1 ; WX 234 ; N afii62756 ; B 47 -88 269 736 ;
+C -1 ; WX 271 ; N afii62757 ; B 0 143 306 661 ;
+C -1 ; WX 271 ; N afii62758 ; B 0 143 306 661 ;
+C -1 ; WX 577 ; N afii62759 ; B 23 -98 607 524 ;
+C -1 ; WX 234 ; N afii62760 ; B 47 143 269 736 ;
+C -1 ; WX 271 ; N afii62761 ; B 0 -69 306 492 ;
+C -1 ; WX 271 ; N afii62762 ; B 0 -69 306 492 ;
+C -1 ; WX 649 ; N afii62763 ; B 62 -69 684 489 ;
+C -1 ; WX 415 ; N afii62764 ; B 31 143 445 873 ;
+C -1 ; WX 271 ; N afii62765 ; B 0 143 306 715 ;
+C -1 ; WX 271 ; N afii62766 ; B 0 143 306 715 ;
+C -1 ; WX 649 ; N afii62767 ; B 62 143 684 656 ;
+C -1 ; WX 271 ; N afii62768 ; B 0 143 306 828 ;
+C -1 ; WX 271 ; N afii62769 ; B 0 143 306 828 ;
+C -1 ; WX 649 ; N afii62770 ; B 63 144 684 766 ;
+C -1 ; WX 523 ; N afii62771 ; B 0 -74 558 501 ;
+C -1 ; WX 523 ; N afii62772 ; B 0 -74 558 501 ;
+C -1 ; WX 559 ; N afii62773 ; B 23 -201 593 527 ;
+C -1 ; WX 523 ; N afii62774 ; B 0 143 558 501 ;
+C -1 ; WX 523 ; N afii62775 ; B 0 143 558 501 ;
+C -1 ; WX 559 ; N afii62776 ; B 23 -201 593 527 ;
+C -1 ; WX 523 ; N afii62777 ; B 0 143 558 724 ;
+C -1 ; WX 523 ; N afii62778 ; B 0 143 558 724 ;
+C -1 ; WX 559 ; N afii62779 ; B 23 -201 593 746 ;
+C -1 ; WX 343 ; N afii62780 ; B 85 143 377 604 ;
+C -1 ; WX 343 ; N afii62781 ; B 85 143 377 845 ;
+C -1 ; WX 433 ; N afii62782 ; B 39 -72 467 461 ;
+C -1 ; WX 433 ; N afii62783 ; B 39 -72 467 693 ;
+C -1 ; WX 608 ; N afii62784 ; B 0 143 643 446 ;
+C -1 ; WX 608 ; N afii62785 ; B 0 143 643 446 ;
+C -1 ; WX 899 ; N afii62786 ; B 65 -63 934 458 ;
+C -1 ; WX 608 ; N afii62787 ; B 0 143 643 774 ;
+C -1 ; WX 608 ; N afii62788 ; B 0 143 643 774 ;
+C -1 ; WX 899 ; N afii62789 ; B 65 -63 934 774 ;
+C -1 ; WX 771 ; N afii62790 ; B 0 143 806 504 ;
+C -1 ; WX 771 ; N afii62791 ; B 0 143 806 504 ;
+C -1 ; WX 1062 ; N afii62792 ; B 65 -63 1097 504 ;
+C -1 ; WX 771 ; N afii62793 ; B 0 143 806 728 ;
+C -1 ; WX 771 ; N afii62794 ; B 0 143 806 728 ;
+C -1 ; WX 1062 ; N afii62795 ; B 61 -63 1092 728 ;
+C -1 ; WX 523 ; N afii62796 ; B 0 143 558 812 ;
+C -1 ; WX 523 ; N afii62797 ; B 0 143 558 812 ;
+C -1 ; WX 523 ; N afii62798 ; B 0 143 558 812 ;
+C -1 ; WX 523 ; N afii62799 ; B 0 143 558 812 ;
+C -1 ; WX 523 ; N afii62800 ; B 0 143 558 812 ;
+C -1 ; WX 523 ; N afii62801 ; B 0 143 558 812 ;
+C -1 ; WX 541 ; N afii62802 ; B 0 143 518 571 ;
+C -1 ; WX 360 ; N afii62803 ; B 0 143 395 505 ;
+C -1 ; WX 469 ; N afii62804 ; B 34 -198 516 531 ;
+C -1 ; WX 541 ; N afii62805 ; B 0 143 518 800 ;
+C -1 ; WX 360 ; N afii62806 ; B 0 143 395 756 ;
+C -1 ; WX 469 ; N afii62807 ; B 34 -198 516 760 ;
+C -1 ; WX 305 ; N afii62808 ; B 0 143 339 850 ;
+C -1 ; WX 324 ; N afii62809 ; B 0 143 358 779 ;
+C -1 ; WX 758 ; N afii62810 ; B 57 127 792 779 ;
+C -1 ; WX 305 ; N afii62811 ; B 0 143 339 844 ;
+C -1 ; WX 324 ; N afii62812 ; B 0 143 358 780 ;
+C -1 ; WX 612 ; N afii62813 ; B 53 -130 646 658 ;
+C -1 ; WX 360 ; N afii62815 ; B 0 143 395 708 ;
+C -1 ; WX 541 ; N afii62816 ; B 54 143 575 774 ;
+C -1 ; WX 234 ; N afii62817 ; B 0 143 269 774 ;
+C -1 ; WX 234 ; N afii62818 ; B 0 143 269 774 ;
+C -1 ; WX 451 ; N afii62819 ; B 51 -36 485 773 ;
+C -1 ; WX 415 ; N afii62820 ; B 0 143 449 472 ;
+C -1 ; WX 415 ; N afii62821 ; B 0 143 449 472 ;
+C -1 ; WX 360 ; N afii62822 ; B 50 -212 395 431 ;
+C -1 ; WX 271 ; N afii62823 ; B 0 143 309 735 ;
+C -1 ; WX 271 ; N afii62824 ; B 0 143 309 735 ;
+C -1 ; WX 541 ; N afii62825 ; B 64 -63 575 612 ;
+C -1 ; WX 451 ; N afii62827 ; B 0 -101 485 560 ;
+C -1 ; WX 415 ; N afii62828 ; B 31 143 445 694 ;
+C -1 ; WX 451 ; N afii62829 ; B 37 -71 485 484 ;
+C -1 ; WX 554 ; N afii62830 ; B 15 -174 588 282 ;
+C -1 ; WX 271 ; N afii62831 ; B 0 -81 306 492 ;
+C -1 ; WX 271 ; N afii62832 ; B 0 -81 306 492 ;
+C -1 ; WX 577 ; N afii62833 ; B 23 -212 607 319 ;
+C -1 ; WX 541 ; N afii62834 ; B 0 72 525 831 ;
+C -1 ; WX 596 ; N afii62835 ; B 0 94 630 831 ;
+C -1 ; WX 486 ; N afii62836 ; B 17 72 471 876 ;
+C -1 ; WX 541 ; N afii62837 ; B 13 94 575 876 ;
+C -1 ; WX 486 ; N afii62838 ; B 17 -120 471 739 ;
+C -1 ; WX 541 ; N afii62839 ; B 13 -120 575 766 ;
+C -1 ; WX 486 ; N afii62840 ; B 17 72 471 739 ;
+C -1 ; WX 541 ; N afii62841 ; B 13 94 575 766 ;
+C -1 ; WX 562 ; N afii62843 ; B 81 143 471 737 ;
+C -1 ; WX 562 ; N afii62844 ; B 92 143 461 719 ;
+C -1 ; WX 562 ; N afii62845 ; B 108 143 451 729 ;
+C -1 ; WX 211 ; N afii62881 ; B 34 683 211 995 ;
+C -1 ; WX 211 ; N afii62881_2 ; B 34 683 211 995 ;
+C -1 ; WX 226 ; N afii62882 ; B 23 683 226 1010 ;
+C -1 ; WX 226 ; N afii62882_2 ; B 23 683 226 1010 ;
+C -1 ; WX 211 ; N afii62883 ; B 34 678 211 978 ;
+C -1 ; WX 211 ; N afii62883_2 ; B 34 678 211 978 ;
+C -1 ; WX 211 ; N afii62884 ; B 34 683 211 918 ;
+C -1 ; WX 211 ; N afii62884_2 ; B 34 683 211 918 ;
+C -1 ; WX 211 ; N afii62885 ; B 31 683 211 974 ;
+C -1 ; WX 211 ; N afii62885_2 ; B 31 683 211 974 ;
+C -1 ; WX 211 ; N afii62886 ; B 34 683 211 931 ;
+C -1 ; WX 211 ; N afii62886_2 ; B 34 683 211 931 ;
+C -1 ; WX 271 ; N afii62956 ; B 0 -193 306 492 ;
+C -1 ; WX 649 ; N afii62958 ; B 62 -193 684 489 ;
+C -1 ; WX 523 ; N afii62959 ; B 0 -193 558 501 ;
+C -1 ; WX 523 ; N afii62960 ; B 0 -193 558 501 ;
+C -1 ; WX 559 ; N afii62961 ; B 23 -201 593 527 ;
+C -1 ; WX 433 ; N afii62962 ; B 39 -72 481 813 ;
+C -1 ; WX 879 ; N afii62964 ; B 54 143 913 722 ;
+C -1 ; WX 360 ; N afii62965 ; B 0 143 395 863 ;
+C -1 ; WX 542 ; N afii62966 ; B 0 143 576 876 ;
+C -1 ; WX 879 ; N afii62967 ; B 54 143 913 876 ;
+C -1 ; WX 526 ; N afii63167 ; B 87 403 424 744 ;
+C -1 ; WX 319 ; N afii64060 ; B 62 -209 273 785 ;
+C -1 ; WX 319 ; N afii64061 ; B 50 -209 262 785 ;
+C -1 ; WX 703 ; N afii64184 ; B 22 91 661 920 ;
+C -1 ; WX 615 ; N alpha ; B 38 -12 582 530 ;
+C -1 ; WX 615 ; N alphatonos ; B 38 -12 582 728 ;
+C -1 ; WX 556 ; N amacron ; B 36 -12 522 694 ;
+C -1 ; WX 333 ; N anoteleia ; B 98 381 235 519 ;
+C -1 ; WX 556 ; N aogonek ; B 36 -210 591 530 ;
+C -1 ; WX 549 ; N approxequal ; B 15 135 534 569 ;
+C -1 ; WX 556 ; N aringacute ; B 36 -12 522 926 ;
+C -1 ; WX 1000 ; N arrowboth ; B 39 77 961 429 ;
+C -1 ; WX 500 ; N arrowdown ; B 75 -209 426 654 ;
+C -1 ; WX 1000 ; N arrowleft ; B 39 77 961 428 ;
+C -1 ; WX 1000 ; N arrowright ; B 39 77 961 428 ;
+C -1 ; WX 500 ; N arrowup ; B 75 -209 426 654 ;
+C -1 ; WX 500 ; N arrowupdn ; B 74 -208 425 714 ;
+C -1 ; WX 500 ; N arrowupdnbse ; B 74 -303 425 714 ;
+C -1 ; WX 610 ; N beta ; B 70 -197 573 728 ;
+C -1 ; WX 708 ; N block ; B -11 -303 719 910 ;
+C -1 ; WX 333 ; N breve ; B 13 586 317 728 ;
+C -1 ; WX 556 ; N cacute ; B 42 -12 531 728 ;
+C -1 ; WX 333 ; N caron ; B 1 584 332 728 ;
+C -1 ; WX 556 ; N ccaron ; B 42 -12 531 728 ;
+C -1 ; WX 556 ; N ccircumflex ; B 42 -12 531 728 ;
+C -1 ; WX 556 ; N cdot ; B 42 -12 531 728 ;
+C -1 ; WX 576 ; N chi ; B 8 -197 569 519 ;
+C -1 ; WX 604 ; N circle ; B 87 67 517 497 ;
+C -1 ; WX 656 ; N club ; B 27 0 629 601 ;
+C -1 ; WX 333 ; N commaaccent ; B 92 -276 239 -55 ;
+C -1 ; WX 719 ; N dcaron ; B 40 -12 719 716 ;
+C -1 ; WX 606 ; N delta ; B 38 -12 569 716 ;
+C -1 ; WX 510 ; N diamond ; B 31 -12 479 601 ;
+C -1 ; WX 465 ; N dieresistonos ; B -6 582 471 728 ;
+C -1 ; WX 729 ; N dkshade ; B 0 -307 729 910 ;
+C -1 ; WX 611 ; N dmacron ; B 41 -12 602 716 ;
+C -1 ; WX 708 ; N dnblock ; B -11 -303 719 303 ;
+C -1 ; WX 333 ; N dotaccent ; B 100 598 235 728 ;
+C -1 ; WX 278 ; N dotlessi ; B 72 0 209 519 ;
+C -1 ; WX 556 ; N ebreve ; B 32 -12 519 728 ;
+C -1 ; WX 556 ; N ecaron ; B 32 -12 519 728 ;
+C -1 ; WX 556 ; N edot ; B 32 -12 519 728 ;
+C -1 ; WX 556 ; N emacron ; B 32 -12 519 694 ;
+C -1 ; WX 611 ; N eng ; B 69 -213 542 530 ;
+C -1 ; WX 556 ; N eogonek ; B 32 -210 519 530 ;
+C -1 ; WX 475 ; N epsilon ; B 38 -12 463 530 ;
+C -1 ; WX 451 ; N epsilontonos ; B 38 -12 463 728 ;
+C -1 ; WX 583 ; N equivalence ; B 42 73 542 633 ;
+C -1 ; WX 600 ; N estimated ; B 44 -17 561 535 ;
+C -1 ; WX 611 ; N eta ; B 69 -197 542 530 ;
+C -1 ; WX 611 ; N etatonos ; B 69 -197 542 728 ;
+C -1 ; WX 604 ; N exclamdbl ; B 90 0 509 716 ;
+C -1 ; WX 750 ; N female ; B 119 -214 630 736 ;
+C -1 ; WX 611 ; N fi ; B 15 0 538 728 ;
+C -1 ; WX 604 ; N filledbox ; B 71 0 532 461 ;
+C -1 ; WX 1000 ; N filledrect ; B 0 155 1000 343 ;
+C -1 ; WX 834 ; N fiveeighths ; B 23 -26 812 725 ;
+C -1 ; WX 611 ; N fl ; B 15 0 538 728 ;
+C -1 ; WX 167 ; N fraction ; B -167 -26 334 725 ;
+C -1 ; WX 556 ; N franc ; B 0 0 506 716 ;
+C -1 ; WX 556 ; N gamma ; B 7 -197 546 519 ;
+C -1 ; WX 611 ; N gbreve ; B 41 -210 547 728 ;
+C -1 ; WX 611 ; N gcedilla ; B 41 -210 547 801 ;
+C -1 ; WX 611 ; N gcircumflex ; B 41 -210 547 728 ;
+C -1 ; WX 611 ; N gdot ; B 41 -210 547 728 ;
+C -1 ; WX 319 ; N glyph1100 ; B 99 137 223 714 ;
+C -1 ; WX 319 ; N glyph1101 ; B 97 137 226 267 ;
+C -1 ; WX 319 ; N glyph1102 ; B 97 137 225 542 ;
+C -1 ; WX 549 ; N greaterequal ; B 29 0 520 708 ;
+C -1 ; WX 611 ; N hbar ; B 12 0 544 716 ;
+C -1 ; WX 611 ; N hcircumflex ; B 71 0 543 901 ;
+C -1 ; WX 594 ; N heart ; B 31 -12 563 601 ;
+C -1 ; WX 604 ; N house ; B 77 0 527 563 ;
+C -1 ; WX 333 ; N hungarumlaut ; B 47 584 439 730 ;
+C -1 ; WX 278 ; N ibreve ; B -15 0 290 728 ;
+C -1 ; WX 556 ; N ij ; B 72 -210 478 716 ;
+C -1 ; WX 278 ; N imacron ; B -19 0 296 694 ;
+C -1 ; WX 612 ; N increment ; B 13 0 599 677 ;
+C -1 ; WX 713 ; N infinity ; B 74 182 640 523 ;
+C -1 ; WX 274 ; N integral ; B 0 -107 273 910 ;
+C -1 ; WX 604 ; N integralbt ; B 127 -251 337 848 ;
+C -1 ; WX 604 ; N integraltp ; B 267 -251 477 848 ;
+C -1 ; WX 722 ; N intersection ; B 70 0 648 719 ;
+C -1 ; WX 604 ; N invbullet ; B 62 0 541 479 ;
+C -1 ; WX 604 ; N invcircle ; B 21 0 584 564 ;
+C -1 ; WX 1052 ; N invsmileface ; B 215 -58 837 564 ;
+C -1 ; WX 278 ; N iogonek ; B 57 -210 274 716 ;
+C -1 ; WX 278 ; N iota ; B 72 0 209 519 ;
+C -1 ; WX 278 ; N iotadieresis ; B -25 0 303 728 ;
+C -1 ; WX 278 ; N iotadieresistonos ; B -105 0 372 728 ;
+C -1 ; WX 278 ; N iotatonos ; B 63 0 285 728 ;
+C -1 ; WX 278 ; N itilde ; B -34 0 304 713 ;
+C -1 ; WX 278 ; N jcircumflex ; B -46 -210 304 728 ;
+C -1 ; WX 558 ; N kappa ; B 69 0 550 519 ;
+C -1 ; WX 556 ; N kcedilla ; B 67 -206 546 716 ;
+C -1 ; WX 556 ; N kgreenlandic ; B 69 0 548 519 ;
+C -1 ; WX 278 ; N lacute ; B 59 0 280 898 ;
+C -1 ; WX 556 ; N lambda ; B 7 0 546 716 ;
+C -1 ; WX 385 ; N lcaron ; B 73 0 383 716 ;
+C -1 ; WX 278 ; N lcedilla ; B -9 -206 257 716 ;
+C -1 ; WX 479 ; N ldot ; B 72 0 409 716 ;
+C -1 ; WX 0 ; N lefttorightmark ; B -18 -134 210 690 ;
+C -1 ; WX 549 ; N lessequal ; B 29 0 520 708 ;
+C -1 ; WX 708 ; N lfblock ; B -11 -303 354 910 ;
+C -1 ; WX 278 ; N longs ; B 69 0 343 728 ;
+C -1 ; WX 494 ; N lozenge ; B 23 0 472 694 ;
+C -1 ; WX 278 ; N lslash ; B 5 0 276 716 ;
+C -1 ; WX 708 ; N ltshade ; B 50 -246 719 910 ;
+C -1 ; WX 750 ; N male ; B 54 -128 691 791 ;
+C -1 ; WX 584 ; N minus ; B 42 289 542 417 ;
+C -1 ; WX 240 ; N minute ; B 69 461 247 716 ;
+C -1 ; WX 612 ; N mu ; B 70 -197 542 519 ;
+C -1 ; WX 500 ; N musicalnote ; B 18 -18 482 666 ;
+C -1 ; WX 750 ; N musicalnotedbl ; B 42 -63 649 742 ;
+C -1 ; WX 611 ; N nacute ; B 71 0 543 728 ;
+C -1 ; WX 708 ; N napostrophe ; B -28 0 635 716 ;
+C -1 ; WX 611 ; N ncaron ; B 71 0 543 728 ;
+C -1 ; WX 611 ; N ncedilla ; B 71 -206 543 530 ;
+C -1 ; WX 278 ; N nonmarkingreturn ; B 0 0 0 0 ;
+C -1 ; WX 549 ; N notequal ; B 24 -12 524 719 ;
+C -1 ; WX 396 ; N nsuperior ; B 39 253 357 585 ;
+C -1 ; WX 556 ; N nu ; B 5 0 544 519 ;
+C -1 ; WX 611 ; N obreve ; B 40 -12 575 728 ;
+C -1 ; WX 611 ; N odblacute ; B 40 -12 575 730 ;
+C -1 ; WX 333 ; N ogonek ; B 78 -210 295 13 ;
+C -1 ; WX 611 ; N omacron ; B 40 -12 575 694 ;
+C -1 ; WX 845 ; N omega ; B 38 -12 807 519 ;
+C -1 ; WX 845 ; N omegatonos ; B 38 -12 807 728 ;
+C -1 ; WX 611 ; N omicron ; B 40 -12 575 530 ;
+C -1 ; WX 611 ; N omicrontonos ; B 40 -12 575 728 ;
+C -1 ; WX 834 ; N oneeighth ; B 45 -26 812 725 ;
+C -1 ; WX 354 ; N openbullet ; B 38 190 316 470 ;
+C -1 ; WX 979 ; N orthogonal ; B 177 0 802 625 ;
+C -1 ; WX 611 ; N oslashacute ; B 42 -36 578 728 ;
+C -1 ; WX 494 ; N partialdiff ; B 21 -12 477 728 ;
+C -1 ; WX 1094 ; N peseta ; B 20 -13 1075 716 ;
+C -1 ; WX 715 ; N phi ; B 38 -197 678 531 ;
+C -1 ; WX 766 ; N pi ; B 23 0 742 519 ;
+C -1 ; WX 549 ; N pi1 ; B 0 0 549 519 ;
+C -1 ; WX 823 ; N product ; B 79 -210 744 728 ;
+C -1 ; WX 753 ; N psi ; B 58 -197 695 519 ;
+C -1 ; WX 278 ; N quotereversed ; B 73 418 221 716 ;
+C -1 ; WX 389 ; N racute ; B 66 0 402 728 ;
+C -1 ; WX 549 ; N radical ; B 41 -38 549 913 ;
+C -1 ; WX 333 ; N radicalex ; B -20 604 354 694 ;
+C -1 ; WX 389 ; N rcaron ; B 39 0 402 728 ;
+C -1 ; WX 389 ; N rcedilla ; B 21 -206 402 530 ;
+C -1 ; WX 584 ; N revlogicalnot ; B 42 184 542 524 ;
+C -1 ; WX 619 ; N rho ; B 58 -197 581 530 ;
+C -1 ; WX 0 ; N righttoleftmark ; B -210 -134 17 690 ;
+C -1 ; WX 333 ; N ring ; B 71 560 262 751 ;
+C -1 ; WX 708 ; N rtblock ; B 354 -303 720 910 ;
+C -1 ; WX 556 ; N sacute ; B 23 -12 508 728 ;
+C -1 ; WX 556 ; N scedilla ; B 23 -205 508 530 ;
+C -1 ; WX 556 ; N scircumflex ; B 23 -12 508 728 ;
+C -1 ; WX 479 ; N second ; B 69 461 467 716 ;
+C -1 ; WX 834 ; N seveneighths ; B 23 -26 812 725 ;
+C -1 ; WX 708 ; N shade ; B -11 -246 719 910 ;
+C -1 ; WX 684 ; N sigma ; B 38 -12 661 530 ;
+C -1 ; WX 520 ; N sigma1 ; B 38 -210 503 530 ;
+C -1 ; WX 1021 ; N smileface ; B 199 -58 822 564 ;
+C -1 ; WX 531 ; N spade ; B 28 0 503 601 ;
+C -1 ; WX 713 ; N summation ; B 60 -210 677 728 ;
+C -1 ; WX 917 ; N sun ; B 8 -109 909 792 ;
+C -1 ; WX 446 ; N tau ; B 23 0 422 519 ;
+C -1 ; WX 333 ; N tbar ; B 3 -12 314 702 ;
+C -1 ; WX 479 ; N tcaron ; B 15 -12 480 716 ;
+C -1 ; WX 333 ; N tcedilla ; B 15 -293 321 702 ;
+C -1 ; WX 541 ; N theta ; B 38 -12 503 728 ;
+C -1 ; WX 834 ; N threeeighths ; B 20 -26 812 725 ;
+C -1 ; WX 333 ; N tonos ; B 91 582 312 728 ;
+C -1 ; WX 990 ; N triagdn ; B 148 -15 842 678 ;
+C -1 ; WX 990 ; N triaglf ; B 141 -15 849 692 ;
+C -1 ; WX 990 ; N triagrt ; B 141 -15 849 692 ;
+C -1 ; WX 990 ; N triagup ; B 148 0 842 693 ;
+C -1 ; WX 611 ; N ubreve ; B 69 -12 541 728 ;
+C -1 ; WX 611 ; N udblacute ; B 69 -12 548 730 ;
+C -1 ; WX 611 ; N umacron ; B 69 -12 541 694 ;
+C -1 ; WX 333 ; N undercommaaccent ; B 19 -206 285 -10 ;
+C -1 ; WX 552 ; N underscoredbl ; B -9 -376 561 -109 ;
+C -1 ; WX 611 ; N uogonek ; B 69 -211 616 519 ;
+C -1 ; WX 708 ; N upblock ; B -11 303 719 910 ;
+C -1 ; WX 582 ; N upsilon ; B 58 -12 524 519 ;
+C -1 ; WX 582 ; N upsilondieresis ; B 58 -12 524 728 ;
+C -1 ; WX 582 ; N upsilondieresistonos ; B 53 -12 529 728 ;
+C -1 ; WX 582 ; N upsilontonos ; B 58 -12 524 728 ;
+C -1 ; WX 611 ; N uring ; B 69 -12 541 751 ;
+C -1 ; WX 611 ; N utilde ; B 69 -12 541 713 ;
+C -1 ; WX 778 ; N wacute ; B 4 0 777 728 ;
+C -1 ; WX 778 ; N wcircumflex ; B 4 0 777 728 ;
+C -1 ; WX 778 ; N wdieresis ; B 4 0 777 728 ;
+C -1 ; WX 778 ; N wgrave ; B 4 0 777 728 ;
+C -1 ; WX 445 ; N xi ; B 38 -210 445 728 ;
+C -1 ; WX 556 ; N ycircumflex ; B 7 -210 540 728 ;
+C -1 ; WX 556 ; N ygrave ; B 7 -210 540 728 ;
+C -1 ; WX 500 ; N zacute ; B 17 0 479 728 ;
+C -1 ; WX 500 ; N zdot ; B 17 0 479 728 ;
+C -1 ; WX 0 ; N zerowidthjoiner ; B -107 -134 107 690 ;
+C -1 ; WX 0 ; N zerowidthnonjoiner ; B -18 -134 18 629 ;
+C -1 ; WX 460 ; N zeta ; B 38 -210 452 716 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 103
+KPX space A -37
+KPX space Y -18
+
+KPX one one -55
+
+KPX A space -37
+KPX A T -74
+KPX A V -74
+KPX A W -55
+KPX A Y -92
+KPX A v -37
+KPX A w -18
+KPX A y -37
+KPX A quoteright -55
+
+KPX F comma -111
+KPX F period -111
+KPX F A -55
+
+KPX L space -18
+KPX L T -74
+KPX L V -74
+KPX L W -55
+KPX L Y -92
+KPX L y -37
+KPX L quoteright -55
+
+KPX P space -18
+KPX P comma -129
+KPX P period -129
+KPX P A -74
+
+KPX R V -18
+KPX R W -18
+KPX R Y -37
+
+KPX T comma -111
+KPX T hyphen -55
+KPX T period -111
+KPX T colon -111
+KPX T semicolon -111
+KPX T A -74
+KPX T O -18
+KPX T a -74
+KPX T c -74
+KPX T e -74
+KPX T i -18
+KPX T o -74
+KPX T r -55
+KPX T s -74
+KPX T u -74
+KPX T w -74
+KPX T y -74
+
+KPX V comma -92
+KPX V hyphen -55
+KPX V period -92
+KPX V colon -55
+KPX V semicolon -55
+KPX V A -74
+KPX V a -55
+KPX V e -55
+KPX V i -18
+KPX V o -74
+KPX V r -55
+KPX V u -37
+KPX V y -37
+
+KPX W comma -55
+KPX W hyphen -20
+KPX W period -55
+KPX W colon -18
+KPX W semicolon -18
+KPX W A -55
+KPX W a -37
+KPX W e -18
+KPX W i -9
+KPX W o -18
+KPX W r -18
+KPX W u -18
+KPX W y -18
+
+KPX Y space -18
+KPX Y comma -111
+KPX Y hyphen -55
+KPX Y period -111
+KPX Y colon -74
+KPX Y semicolon -74
+KPX Y A -92
+KPX Y a -55
+KPX Y e -55
+KPX Y i -37
+KPX Y o -74
+KPX Y p -55
+KPX Y q -74
+KPX Y u -55
+KPX Y v -55
+
+KPX f quoteright 18
+
+KPX r comma -55
+KPX r period -55
+KPX r quoteright 37
+
+KPX v comma -74
+KPX v period -74
+
+KPX w comma -37
+KPX w period -37
+
+KPX y comma -74
+KPX y period -74
+
+KPX quoteleft quoteleft -37
+
+KPX quoteright space -55
+KPX quoteright s -37
+KPX quoteright quoteright -37
+
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/frsspbl.afm b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/frsspbl.afm
new file mode 100644
index 0000000000..3da3384e7c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/frsspbl.afm
@@ -0,0 +1,414 @@
+StartFontMetrics 2.0
+Comment Panose 0 0 4 0 0 0 0 0 0 0
+FullName Farsi Simple Bold
+FontName FarsiSimpleBold
+FamilyName Farsi Simple Bold
+Weight Normal
+Notice Designed for Microsoft Corp. by Platinum Inc.
+IsFixedPitch false
+ItalicAngle 0.00
+FontBBox -283 -891 1735 1337
+Ascender 1337
+Descender -891
+XHeight 244
+CapHeight 342
+UnderlinePosition -143
+UnderlineThickness 20
+EncodingScheme FontSpecific
+StartCharMetrics 394
+C 13 ; WX 244 ; N CR ; B 0 0 0 0 ;
+C 32 ; WX 244 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 278 ; N exclam ; B 96 26 185 558 ;
+C 34 ; WX 278 ; N quotedbl ; B 21 358 257 587 ;
+C 35 ; WX 375 ; N numbersign ; B 14 -10 361 508 ;
+C 36 ; WX 375 ; N dollar ; B 40 -57 337 539 ;
+C 37 ; WX 462 ; N percent ; B 57 -65 407 582 ;
+C 38 ; WX 583 ; N ampersand ; B 27 -11 561 508 ;
+C 39 ; WX 135 ; N quotesingle ; B 30 294 104 508 ;
+C 40 ; WX 278 ; N parenleft ; B 41 -195 257 441 ;
+C 41 ; WX 278 ; N parenright ; B 24 -195 241 441 ;
+C 42 ; WX 526 ; N asterisk ; B 87 403 424 744 ;
+C 43 ; WX 462 ; N plus ; B 51 63 408 421 ;
+C 44 ; WX 278 ; N comma ; B 77 27 209 306 ;
+C 46 ; WX 278 ; N period ; B 98 26 185 113 ;
+C 47 ; WX 278 ; N slash ; B 32 -68 248 696 ;
+C 48 ; WX 375 ; N zero ; B 27 -9 348 507 ;
+C 49 ; WX 375 ; N one ; B 88 0 284 507 ;
+C 50 ; WX 375 ; N two ; B 16 0 344 507 ;
+C 51 ; WX 375 ; N three ; B 30 -9 313 507 ;
+C 52 ; WX 375 ; N four ; B 12 0 349 507 ;
+C 53 ; WX 375 ; N five ; B 36 -9 326 497 ;
+C 54 ; WX 375 ; N six ; B 32 -9 346 507 ;
+C 55 ; WX 375 ; N seven ; B 28 -10 342 497 ;
+C 56 ; WX 375 ; N eight ; B 45 -9 332 507 ;
+C 57 ; WX 375 ; N nine ; B 30 -10 343 507 ;
+C 58 ; WX 278 ; N colon ; B 98 26 183 391 ;
+C 59 ; WX 278 ; N semicolon ; B 77 26 209 446 ;
+C 60 ; WX 423 ; N less ; B 14 68 408 429 ;
+C 61 ; WX 427 ; N equal ; B 22 100 417 256 ;
+C 62 ; WX 423 ; N greater ; B 14 68 408 429 ;
+C 63 ; WX 314 ; N question ; B 39 26 282 554 ;
+C 91 ; WX 278 ; N bracketleft ; B 54 -170 248 420 ;
+C 92 ; WX 278 ; N backslash ; B 31 -68 247 696 ;
+C 93 ; WX 278 ; N bracketright ; B 33 -170 225 420 ;
+C 123 ; WX 360 ; N braceleft ; B 104 -162 308 521 ;
+C 124 ; WX 150 ; N bar ; B 59 -162 89 521 ;
+C 125 ; WX 360 ; N braceright ; B 65 -162 269 521 ;
+C 147 ; WX 462 ; N multiply ; B 64 79 392 406 ;
+C 148 ; WX 462 ; N divide ; B 51 63 408 417 ;
+C 149 ; WX 447 ; N middot ; B 149 369 315 535 ;
+C 171 ; WX 278 ; N quotedblleft ; B 20 358 257 587 ;
+C 183 ; WX 278 ; N quotedblright ; B 21 358 257 587 ;
+C 187 ; WX 447 ; N bullet ; B 149 369 315 535 ;
+C 215 ; WX 407 ; N guillemotleft ; B 41 5 380 392 ;
+C 247 ; WX 407 ; N guillemotright ; B 32 5 372 392 ;
+C -1 ; WX 0 ; N .null ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _394 ; B 0 0 0 0 ;
+C -1 ; WX 462 ; N hyphen ; B 51 221 408 261 ;
+C -1 ; WX 278 ; N uni060C ; B 77 27 209 306 ;
+C -1 ; WX 278 ; N uni061B ; B 77 26 209 446 ;
+C -1 ; WX 314 ; N uni061F ; B 39 26 282 554 ;
+C -1 ; WX 209 ; N uni0621 ; B 19 161 202 505 ;
+C -1 ; WX 258 ; N uni0622 ; B 29 40 339 744 ;
+C -1 ; WX 258 ; N uni0623 ; B 81 40 203 843 ;
+C -1 ; WX 242 ; N uni0624 ; B -91 -61 209 610 ;
+C -1 ; WX 258 ; N uni0625 ; B 74 -195 203 725 ;
+C -1 ; WX 701 ; N uni0626 ; B 40 -213 683 606 ;
+C -1 ; WX 258 ; N uni0627 ; B 83 40 197 725 ;
+C -1 ; WX 908 ; N uni0628 ; B 29 -252 902 250 ;
+C -1 ; WX 281 ; N uni0629 ; B -17 -29 252 543 ;
+C -1 ; WX 911 ; N uni062A ; B 29 -59 902 444 ;
+C -1 ; WX 925 ; N uni062B ; B 29 -59 902 582 ;
+C -1 ; WX 728 ; N uni062C ; B -3 -378 718 555 ;
+C -1 ; WX 624 ; N uni062D ; B 46 -378 768 555 ;
+C -1 ; WX 728 ; N uni062E ; B -3 -378 718 847 ;
+C -1 ; WX 297 ; N uni062F ; B -53 -34 257 415 ;
+C -1 ; WX 297 ; N uni0630 ; B -53 -34 257 675 ;
+C -1 ; WX 222 ; N uni0631 ; B -137 -24 212 437 ;
+C -1 ; WX 229 ; N uni0632 ; B -137 -24 237 637 ;
+C -1 ; WX 853 ; N uni0633 ; B 6 -355 840 351 ;
+C -1 ; WX 853 ; N uni0634 ; B 6 -355 840 642 ;
+C -1 ; WX 917 ; N uni0635 ; B 5 -217 898 507 ;
+C -1 ; WX 917 ; N uni0636 ; B 5 -217 898 627 ;
+C -1 ; WX 512 ; N uni0637 ; B 19 72 499 782 ;
+C -1 ; WX 512 ; N uni0638 ; B 19 72 499 782 ;
+C -1 ; WX 533 ; N uni0639 ; B 45 -336 723 558 ;
+C -1 ; WX 533 ; N uni063A ; B 45 -336 723 761 ;
+C -1 ; WX 132 ; N uni0640 ; B 0 53 153 160 ;
+C -1 ; WX 1029 ; N uni0641 ; B 52 -134 1023 616 ;
+C -1 ; WX 640 ; N uni0642 ; B 10 -188 624 683 ;
+C -1 ; WX 853 ; N uni0643 ; B 13 -66 1311 933 ;
+C -1 ; WX 640 ; N uni0644 ; B 42 -408 630 602 ;
+C -1 ; WX 533 ; N uni06440645062C.Init ; B -1 -33 577 1110 ;
+C -1 ; WX 515 ; N uni0645 ; B 43 -480 485 434 ;
+C -1 ; WX 574 ; N uni0646 ; B 23 -170 592 453 ;
+C -1 ; WX 403 ; N uni0647 ; B -2 53 415 458 ;
+C -1 ; WX 242 ; N uni0648 ; B -91 -61 209 403 ;
+C -1 ; WX 701 ; N uni0649 ; B 40 -213 683 573 ;
+C -1 ; WX 701 ; N uni064A ; B 40 -409 683 573 ;
+C -1 ; WX 0 ; N uni064B ; B 0 0 165 197 ;
+C -1 ; WX 0 ; N uni064C ; B 2 0 197 200 ;
+C -1 ; WX 0 ; N uni064D ; B 5 -198 170 0 ;
+C -1 ; WX 0 ; N uni064E ; B 0 0 165 126 ;
+C -1 ; WX 0 ; N uni064F ; B 0 0 168 208 ;
+C -1 ; WX 0 ; N uni0650 ; B 5 -126 170 0 ;
+C -1 ; WX 0 ; N uni0651 ; B -1 0 172 161 ;
+C -1 ; WX 0 ; N uni0651064B ; B 0 0 173 320 ;
+C -1 ; WX 0 ; N uni0652 ; B -3 0 123 152 ;
+C -1 ; WX 0 ; N uni0653 ; B 1 0 311 77 ;
+C -1 ; WX 0 ; N uni0654 ; B 0 0 122 230 ;
+C -1 ; WX 0 ; N uni0655 ; B 0 -230 122 0 ;
+C -1 ; WX 462 ; N uni0660 ; B 176 174 288 343 ;
+C -1 ; WX 462 ; N uni0661 ; B 143 -8 288 488 ;
+C -1 ; WX 462 ; N uni0662 ; B 96 -5 344 486 ;
+C -1 ; WX 462 ; N uni0663 ; B 62 0 414 489 ;
+C -1 ; WX 462 ; N uni0664 ; B 134 -3 356 492 ;
+C -1 ; WX 462 ; N uni0665 ; B 98 98 368 389 ;
+C -1 ; WX 462 ; N uni0666 ; B 93 9 371 476 ;
+C -1 ; WX 462 ; N uni0667 ; B 65 6 404 477 ;
+C -1 ; WX 462 ; N uni0668 ; B 65 0 404 472 ;
+C -1 ; WX 462 ; N uni0669 ; B 107 -17 369 482 ;
+C -1 ; WX 462 ; N uni066A ; B 57 -65 407 582 ;
+C -1 ; WX 278 ; N uni066B ; B 80 -115 185 114 ;
+C -1 ; WX 278 ; N uni066C ; B 80 -115 185 114 ;
+C -1 ; WX 526 ; N uni066D ; B 87 403 424 744 ;
+C -1 ; WX 0 ; N uni0670 ; B 0 0 55 217 ;
+C -1 ; WX 258 ; N uni0671 ; B 21 40 255 820 ;
+C -1 ; WX 908 ; N uni0679 ; B 29 -59 902 569 ;
+C -1 ; WX 925 ; N uni067E ; B 29 -403 902 250 ;
+C -1 ; WX 624 ; N uni0686 ; B 46 -378 768 555 ;
+C -1 ; WX 297 ; N uni0688 ; B -53 -34 257 798 ;
+C -1 ; WX 222 ; N uni0691 ; B -137 -24 237 798 ;
+C -1 ; WX 222 ; N uni0698 ; B -137 -24 313 811 ;
+C -1 ; WX 853 ; N uni06A9 ; B 29 -66 1327 933 ;
+C -1 ; WX 853 ; N uni06AF ; B 29 -66 1327 1077 ;
+C -1 ; WX 574 ; N uni06BA ; B 23 -170 592 453 ;
+C -1 ; WX 344 ; N uni06BE ; B 19 53 333 467 ;
+C -1 ; WX 281 ; N uni06C0 ; B 16 -29 244 669 ;
+C -1 ; WX 267 ; N uni06C1 ; B 6 -37 284 192 ;
+C -1 ; WX 267 ; N uni06C2 ; B 6 -37 284 508 ;
+C -1 ; WX 267 ; N uni06C2.Fina ; B 6 -37 284 526 ;
+C -1 ; WX 281 ; N uni06C2.Isol ; B 16 -29 244 669 ;
+C -1 ; WX 267 ; N uni06C3 ; B -18 -37 284 385 ;
+C -1 ; WX 267 ; N uni06C3.Fina ; B -18 -37 284 385 ;
+C -1 ; WX 281 ; N uni06C3.Isol ; B -17 -29 252 543 ;
+C -1 ; WX 701 ; N uni06CC ; B 40 -213 683 573 ;
+C -1 ; WX 755 ; N uni06D2 ; B 64 -213 838 282 ;
+C -1 ; WX 755 ; N uni06D3 ; B 64 -213 838 502 ;
+C -1 ; WX 215 ; N uni06D4 ; B 12 53 133 160 ;
+C -1 ; WX 462 ; N uni06F00 ; B 176 174 288 343 ;
+C -1 ; WX 462 ; N uni06F1 ; B 143 -8 288 488 ;
+C -1 ; WX 462 ; N uni06F2 ; B 96 -5 344 486 ;
+C -1 ; WX 462 ; N uni06F3 ; B 62 0 414 489 ;
+C -1 ; WX 462 ; N uni06F4 ; B 55 0 366 504 ;
+C -1 ; WX 462 ; N uni06F4.Urdu ; B 106 0 348 532 ;
+C -1 ; WX 462 ; N uni06F5 ; B 93 0 401 478 ;
+C -1 ; WX 462 ; N uni06F6 ; B 75 0 383 499 ;
+C -1 ; WX 462 ; N uni06F7 ; B 65 6 404 477 ;
+C -1 ; WX 462 ; N uni06F7.Urdu ; B 98 -1 366 512 ;
+C -1 ; WX 462 ; N uni06F8 ; B 65 0 404 472 ;
+C -1 ; WX 462 ; N uni06F9 ; B 107 -17 369 482 ;
+C -1 ; WX 22 ; N uni200C ; B 0 0 22 795 ;
+C -1 ; WX 22 ; N uni200D ; B -56 0 78 850 ;
+C -1 ; WX 22 ; N uni200E ; B 0 0 148 850 ;
+C -1 ; WX 22 ; N uni200F ; B -126 0 22 850 ;
+C -1 ; WX 479 ; N uni25CC ; B 18 133 492 602 ;
+C -1 ; WX 258 ; N uniFB50 ; B 21 40 255 820 ;
+C -1 ; WX 181 ; N uniFB51 ; B 21 53 255 820 ;
+C -1 ; WX 925 ; N uniFB56 ; B 29 -403 902 250 ;
+C -1 ; WX 1571 ; N uniFB57 ; B -51 -403 1602 229 ;
+C -1 ; WX 234 ; N uniFB58 ; B -32 -288 251 399 ;
+C -1 ; WX 279 ; N uniFB59 ; B -5 -292 302 296 ;
+C -1 ; WX 908 ; N uniFB66 ; B 29 -59 902 569 ;
+C -1 ; WX 1571 ; N uniFB67 ; B -51 -60 1602 590 ;
+C -1 ; WX 234 ; N uniFB68 ; B 0 53 234 728 ;
+C -1 ; WX 279 ; N uniFB69 ; B 0 53 302 687 ;
+C -1 ; WX 624 ; N uniFB7A ; B 46 -378 768 555 ;
+C -1 ; WX 547 ; N uniFB7B ; B 17 -891 790 160 ;
+C -1 ; WX 428 ; N uniFB7C ; B 0 -189 422 417 ;
+C -1 ; WX 456 ; N uniFB7D ; B 0 -292 479 363 ;
+C -1 ; WX 297 ; N uniFB88 ; B -53 -34 257 798 ;
+C -1 ; WX 250 ; N uniFB89 ; B -78 3 269 798 ;
+C -1 ; WX 222 ; N uniFB8A ; B -137 -24 313 811 ;
+C -1 ; WX 483 ; N uniFB8B ; B -203 -336 504 560 ;
+C -1 ; WX 222 ; N uniFB8C ; B -137 -24 237 798 ;
+C -1 ; WX 483 ; N uniFB8D ; B -203 -336 504 563 ;
+C -1 ; WX 853 ; N uniFB8E ; B 29 -66 1327 933 ;
+C -1 ; WX 881 ; N uniFB8F ; B 12 -27 1369 938 ;
+C -1 ; WX 213 ; N uniFB90 ; B 0 53 709 936 ;
+C -1 ; WX 326 ; N uniFB91 ; B -4 53 650 924 ;
+C -1 ; WX 853 ; N uniFB92 ; B 29 -66 1327 1077 ;
+C -1 ; WX 881 ; N uniFB93 ; B 12 -27 1369 1034 ;
+C -1 ; WX 213 ; N uniFB94 ; B 0 53 709 1045 ;
+C -1 ; WX 326 ; N uniFB95 ; B -4 53 650 1014 ;
+C -1 ; WX 574 ; N uniFB9E ; B 23 -170 592 453 ;
+C -1 ; WX 637 ; N uniFB9F ; B 23 -375 659 165 ;
+C -1 ; WX 281 ; N uniFBA4 ; B 16 -29 244 669 ;
+C -1 ; WX 267 ; N uniFBA5 ; B 6 -37 284 526 ;
+C -1 ; WX 281 ; N uniFBA6 ; B 16 -29 244 349 ;
+C -1 ; WX 267 ; N uniFBA7 ; B 6 -37 284 192 ;
+C -1 ; WX 246 ; N uniFBA8 ; B 0 -266 209 399 ;
+C -1 ; WX 442 ; N uniFBA8.alt ; B 0 -279 428 399 ;
+C -1 ; WX 494 ; N uniFBA9 ; B -5 -400 518 214 ;
+C -1 ; WX 344 ; N uniFBAA ; B 19 53 333 467 ;
+C -1 ; WX 373 ; N uniFBAB ; B 19 -29 387 385 ;
+C -1 ; WX 322 ; N uniFBAC ; B -11 53 309 458 ;
+C -1 ; WX 354 ; N uniFBAD ; B -11 53 357 458 ;
+C -1 ; WX 755 ; N uniFBAE ; B 64 -213 838 282 ;
+C -1 ; WX 597 ; N uniFBAF ; B 126 -241 772 160 ;
+C -1 ; WX 755 ; N uniFBB0 ; B 64 -213 838 502 ;
+C -1 ; WX 597 ; N uniFBB1 ; B 126 -241 772 475 ;
+C -1 ; WX 234 ; N uniFBE8 ; B 0 53 209 399 ;
+C -1 ; WX 279 ; N uniFBE9 ; B 0 53 302 296 ;
+C -1 ; WX 701 ; N uniFBFC ; B 40 -213 683 573 ;
+C -1 ; WX 634 ; N uniFBFD ; B 16 -542 653 160 ;
+C -1 ; WX 234 ; N uniFBFE ; B -31 -106 224 399 ;
+C -1 ; WX 279 ; N uniFBFF ; B 0 -170 302 296 ;
+C -1 ; WX 612 ; N uniFC08 ; B 23 -516 627 656 ;
+C -1 ; WX 612 ; N uniFC0E ; B 23 -516 624 839 ;
+C -1 ; WX 586 ; N uniFC32 ; B 12 -535 579 907 ;
+C -1 ; WX 533 ; N uniFC3F ; B -82 -546 692 844 ;
+C -1 ; WX 533 ; N uniFC40 ; B -82 -546 692 844 ;
+C -1 ; WX 533 ; N uniFC41 ; B -82 -546 692 844 ;
+C -1 ; WX 567 ; N uniFC42 ; B 14 -503 559 924 ;
+C -1 ; WX 562 ; N uniFC43 ; B 16 -329 561 838 ;
+C -1 ; WX 562 ; N uniFC44 ; B 16 -546 561 838 ;
+C -1 ; WX 612 ; N uniFC4E ; B 23 -516 624 803 ;
+C -1 ; WX 0 ; N uniFC5E ; B 0 0 195 338 ;
+C -1 ; WX 0 ; N uniFC5F ; B 0 0 173 342 ;
+C -1 ; WX 0 ; N uniFC60 ; B 0 0 173 255 ;
+C -1 ; WX 0 ; N uniFC61 ; B 0 0 173 346 ;
+C -1 ; WX 0 ; N uniFC62 ; B 0 0 173 272 ;
+C -1 ; WX 0 ; N uniFC63 ; B 0 0 173 345 ;
+C -1 ; WX 650 ; N uniFC6A ; B -283 -454 687 204 ;
+C -1 ; WX 751 ; N uniFC6D ; B 14 -354 770 301 ;
+C -1 ; WX 670 ; N uniFC6E ; B 23 -553 696 211 ;
+C -1 ; WX 650 ; N uniFC70 ; B -283 -454 687 431 ;
+C -1 ; WX 751 ; N uniFC73 ; B 14 -354 770 544 ;
+C -1 ; WX 670 ; N uniFC74 ; B 23 -553 696 444 ;
+C -1 ; WX 670 ; N uniFC8E ; B 23 -553 702 416 ;
+C -1 ; WX 650 ; N uniFC91 ; B -283 -454 687 204 ;
+C -1 ; WX 751 ; N uniFC94 ; B 14 -400 770 301 ;
+C -1 ; WX 402 ; N uniFC9C ; B -2 -15 421 601 ;
+C -1 ; WX 402 ; N uniFC9D ; B -2 53 421 601 ;
+C -1 ; WX 402 ; N uniFC9E ; B -2 53 429 631 ;
+C -1 ; WX 506 ; N uniFC9F ; B -1 53 538 542 ;
+C -1 ; WX 402 ; N uniFCA1 ; B -2 -15 411 758 ;
+C -1 ; WX 402 ; N uniFCA2 ; B -2 53 411 758 ;
+C -1 ; WX 402 ; N uniFCA3 ; B -2 53 411 758 ;
+C -1 ; WX 506 ; N uniFCA4 ; B -1 53 538 685 ;
+C -1 ; WX 506 ; N uniFCA6 ; B -1 53 547 809 ;
+C -1 ; WX 533 ; N uniFCA8 ; B -4 53 570 593 ;
+C -1 ; WX 533 ; N uniFCAA ; B -4 53 570 593 ;
+C -1 ; WX 533 ; N uniFCAC ; B -4 53 570 783 ;
+C -1 ; WX 765 ; N uniFCB0 ; B -2 53 778 629 ;
+C -1 ; WX 533 ; N uniFCC9 ; B -1 -64 692 844 ;
+C -1 ; WX 533 ; N uniFCCA ; B -1 50 692 844 ;
+C -1 ; WX 533 ; N uniFCCB ; B -1 50 692 844 ;
+C -1 ; WX 337 ; N uniFCCC ; B -1 53 360 777 ;
+C -1 ; WX 493 ; N uniFCCD ; B -5 53 526 861 ;
+C -1 ; WX 445 ; N uniFCCE ; B -1 -78 495 650 ;
+C -1 ; WX 445 ; N uniFCCF ; B -1 53 495 650 ;
+C -1 ; WX 445 ; N uniFCD0 ; B -1 53 495 650 ;
+C -1 ; WX 575 ; N uniFCD1 ; B -1 53 601 648 ;
+C -1 ; WX 402 ; N uniFCD2 ; B -2 -15 410 702 ;
+C -1 ; WX 402 ; N uniFCD3 ; B -2 53 410 702 ;
+C -1 ; WX 402 ; N uniFCD4 ; B -6 53 410 709 ;
+C -1 ; WX 506 ; N uniFCD5 ; B -1 53 538 678 ;
+C -1 ; WX 402 ; N uniFCDA ; B -2 -68 444 601 ;
+C -1 ; WX 402 ; N uniFCDB ; B -2 53 444 601 ;
+C -1 ; WX 402 ; N uniFCDC ; B -2 53 444 601 ;
+C -1 ; WX 506 ; N uniFCDD ; B -1 27 538 542 ;
+C -1 ; WX 765 ; N uniFD30 ; B -2 53 778 923 ;
+C -1 ; WX 554 ; N uniFD3E ; B 81 -306 703 728 ;
+C -1 ; WX 554 ; N uniFD3F ; B -36 -306 586 728 ;
+C -1 ; WX 533 ; N uniFD88 ; B -1 53 577 1110 ;
+C -1 ; WX 747 ; N uniFDF2 ; B 23 31 735 702 ;
+C -1 ; WX 209 ; N uniFE80 ; B 19 161 202 505 ;
+C -1 ; WX 258 ; N uniFE81 ; B 29 40 339 744 ;
+C -1 ; WX 181 ; N uniFE82 ; B -23 53 286 727 ;
+C -1 ; WX 258 ; N uniFE83 ; B 81 40 203 843 ;
+C -1 ; WX 182 ; N uniFE84 ; B 61 53 209 843 ;
+C -1 ; WX 242 ; N uniFE85 ; B -91 -61 209 610 ;
+C -1 ; WX 213 ; N uniFE86 ; B -94 -215 231 500 ;
+C -1 ; WX 258 ; N uniFE87 ; B 74 -195 203 725 ;
+C -1 ; WX 182 ; N uniFE88 ; B 27 -209 209 702 ;
+C -1 ; WX 701 ; N uniFE89 ; B 40 -213 683 606 ;
+C -1 ; WX 634 ; N uniFE8A ; B 16 -542 653 252 ;
+C -1 ; WX 173 ; N uniFE8B ; B 0 53 185 550 ;
+C -1 ; WX 279 ; N uniFE8C ; B 0 53 302 550 ;
+C -1 ; WX 258 ; N uniFE8D ; B 83 40 197 725 ;
+C -1 ; WX 182 ; N uniFE8E ; B 62 53 209 702 ;
+C -1 ; WX 908 ; N uniFE8F ; B 29 -252 902 250 ;
+C -1 ; WX 1571 ; N uniFE90 ; B -51 -234 1602 229 ;
+C -1 ; WX 234 ; N uniFE91 ; B 0 -114 209 399 ;
+C -1 ; WX 279 ; N uniFE92 ; B 0 -80 302 296 ;
+C -1 ; WX 281 ; N uniFE93 ; B -17 -29 252 543 ;
+C -1 ; WX 267 ; N uniFE94 ; B -18 -37 284 385 ;
+C -1 ; WX 911 ; N uniFE95 ; B 29 -59 902 444 ;
+C -1 ; WX 1571 ; N uniFE96 ; B -51 -60 1602 387 ;
+C -1 ; WX 274 ; N uniFE97 ; B -38 53 245 550 ;
+C -1 ; WX 274 ; N uniFE98 ; B -4 53 302 500 ;
+C -1 ; WX 925 ; N uniFE99 ; B 29 -59 902 582 ;
+C -1 ; WX 1571 ; N uniFE9A ; B -51 -60 1602 502 ;
+C -1 ; WX 246 ; N uniFE9B ; B -32 53 223 636 ;
+C -1 ; WX 274 ; N uniFE9C ; B -15 53 302 634 ;
+C -1 ; WX 728 ; N uniFE9D ; B -3 -378 718 555 ;
+C -1 ; WX 547 ; N uniFE9E ; B 17 -891 790 160 ;
+C -1 ; WX 428 ; N uniFE9F ; B 0 21 422 417 ;
+C -1 ; WX 461 ; N uniFEA0 ; B 0 -69 479 363 ;
+C -1 ; WX 624 ; N uniFEA1 ; B 46 -378 768 555 ;
+C -1 ; WX 547 ; N uniFEA2 ; B 17 -891 790 160 ;
+C -1 ; WX 428 ; N uniFEA3 ; B 0 53 422 417 ;
+C -1 ; WX 456 ; N uniFEA4 ; B 0 53 479 363 ;
+C -1 ; WX 728 ; N uniFEA5 ; B -3 -378 718 847 ;
+C -1 ; WX 547 ; N uniFEA6 ; B 17 -891 790 382 ;
+C -1 ; WX 428 ; N uniFEA7 ; B 0 53 422 608 ;
+C -1 ; WX 456 ; N uniFEA8 ; B 0 53 479 604 ;
+C -1 ; WX 297 ; N uniFEA9 ; B -53 -34 257 415 ;
+C -1 ; WX 250 ; N uniFEAA ; B -78 3 269 381 ;
+C -1 ; WX 297 ; N uniFEAB ; B -53 -34 257 675 ;
+C -1 ; WX 250 ; N uniFEAC ; B -78 3 346 653 ;
+C -1 ; WX 222 ; N uniFEAD ; B -137 -24 212 437 ;
+C -1 ; WX 483 ; N uniFEAE ; B -203 -336 504 160 ;
+C -1 ; WX 229 ; N uniFEAF ; B -137 -24 237 637 ;
+C -1 ; WX 480 ; N uniFEB0 ; B -203 -336 504 351 ;
+C -1 ; WX 853 ; N uniFEB1 ; B 6 -355 840 351 ;
+C -1 ; WX 951 ; N uniFEB2 ; B -12 -402 963 198 ;
+C -1 ; WX 469 ; N uniFEB3 ; B 0 53 480 297 ;
+C -1 ; WX 512 ; N uniFEB4 ; B 0 53 528 200 ;
+C -1 ; WX 853 ; N uniFEB5 ; B 6 -355 840 642 ;
+C -1 ; WX 950 ; N uniFEB6 ; B -12 -402 963 553 ;
+C -1 ; WX 469 ; N uniFEB7 ; B 0 53 480 630 ;
+C -1 ; WX 512 ; N uniFEB8 ; B 0 53 528 558 ;
+C -1 ; WX 917 ; N uniFEB9 ; B 5 -217 898 507 ;
+C -1 ; WX 879 ; N uniFEBA ; B 11 -361 901 370 ;
+C -1 ; WX 525 ; N uniFEBB ; B 0 53 509 403 ;
+C -1 ; WX 538 ; N uniFEBC ; B -1 53 558 371 ;
+C -1 ; WX 917 ; N uniFEBD ; B 5 -217 898 627 ;
+C -1 ; WX 879 ; N uniFEBE ; B 11 -361 901 493 ;
+C -1 ; WX 525 ; N uniFEBF ; B 0 53 509 567 ;
+C -1 ; WX 533 ; N uniFEC0 ; B -1 53 558 535 ;
+C -1 ; WX 512 ; N uniFEC1 ; B 19 72 499 782 ;
+C -1 ; WX 505 ; N uniFEC2 ; B 45 51 527 717 ;
+C -1 ; WX 320 ; N uniFEC3 ; B 0 53 339 596 ;
+C -1 ; WX 331 ; N uniFEC4 ; B 0 53 347 596 ;
+C -1 ; WX 512 ; N uniFEC5 ; B 19 72 499 782 ;
+C -1 ; WX 505 ; N uniFEC6 ; B 45 51 527 717 ;
+C -1 ; WX 320 ; N uniFEC7 ; B 0 53 339 596 ;
+C -1 ; WX 331 ; N uniFEC8 ; B 0 53 347 596 ;
+C -1 ; WX 533 ; N uniFEC9 ; B 45 -336 723 558 ;
+C -1 ; WX 442 ; N uniFECA ; B 6 -499 777 365 ;
+C -1 ; WX 420 ; N uniFECB ; B -2 53 427 480 ;
+C -1 ; WX 242 ; N uniFECC ; B -2 53 258 329 ;
+C -1 ; WX 533 ; N uniFECD ; B 45 -336 723 761 ;
+C -1 ; WX 442 ; N uniFECE ; B 6 -499 777 584 ;
+C -1 ; WX 420 ; N uniFECF ; B -2 53 427 682 ;
+C -1 ; WX 235 ; N uniFED0 ; B -2 53 258 531 ;
+C -1 ; WX 1029 ; N uniFED1 ; B 52 -134 1023 616 ;
+C -1 ; WX 1710 ; N uniFED2 ; B 177 -60 1735 582 ;
+C -1 ; WX 205 ; N uniFED3 ; B -2 53 206 657 ;
+C -1 ; WX 268 ; N uniFED4 ; B -2 52 291 587 ;
+C -1 ; WX 640 ; N uniFED5 ; B 10 -188 624 683 ;
+C -1 ; WX 629 ; N uniFED6 ; B 10 -403 651 468 ;
+C -1 ; WX 250 ; N uniFED7 ; B -29 53 254 640 ;
+C -1 ; WX 268 ; N uniFED8 ; B -2 52 291 581 ;
+C -1 ; WX 853 ; N uniFED9 ; B 13 -66 1311 933 ;
+C -1 ; WX 881 ; N uniFEDA ; B 12 -27 1369 938 ;
+C -1 ; WX 213 ; N uniFEDB ; B 0 53 709 936 ;
+C -1 ; WX 326 ; N uniFEDC ; B -4 53 650 924 ;
+C -1 ; WX 640 ; N uniFEDD ; B 42 -408 630 602 ;
+C -1 ; WX 602 ; N uniFEDE ; B 9 -451 623 565 ;
+C -1 ; WX 213 ; N uniFEDF ; B -5 53 250 674 ;
+C -1 ; WX 332 ; N uniFEE0 ; B -3 53 358 730 ;
+C -1 ; WX 515 ; N uniFEE1 ; B 43 -480 485 434 ;
+C -1 ; WX 369 ; N uniFEE2 ; B 7 -569 398 189 ;
+C -1 ; WX 298 ; N uniFEE3 ; B -2 51 302 352 ;
+C -1 ; WX 245 ; N uniFEE4 ; B 0 21 272 204 ;
+C -1 ; WX 574 ; N uniFEE5 ; B 23 -170 592 453 ;
+C -1 ; WX 637 ; N uniFEE6 ; B 23 -375 659 165 ;
+C -1 ; WX 234 ; N uniFEE7 ; B 0 53 209 533 ;
+C -1 ; WX 279 ; N uniFEE8 ; B 0 53 302 534 ;
+C -1 ; WX 281 ; N uniFEE9 ; B 16 -29 244 349 ;
+C -1 ; WX 267 ; N uniFEEA ; B 6 -37 284 192 ;
+C -1 ; WX 403 ; N uniFEEB ; B -2 53 415 458 ;
+C -1 ; WX 494 ; N uniFEEC ; B -5 -157 518 214 ;
+C -1 ; WX 242 ; N uniFEED ; B -91 -61 209 403 ;
+C -1 ; WX 213 ; N uniFEEE ; B -94 -215 231 264 ;
+C -1 ; WX 701 ; N uniFEEF ; B 40 -213 683 573 ;
+C -1 ; WX 634 ; N uniFEF0 ; B 16 -542 653 160 ;
+C -1 ; WX 701 ; N uniFEF1 ; B 40 -409 683 573 ;
+C -1 ; WX 634 ; N uniFEF2 ; B 16 -730 653 160 ;
+C -1 ; WX 234 ; N uniFEF3 ; B -31 -106 224 399 ;
+C -1 ; WX 279 ; N uniFEF4 ; B 0 -170 302 296 ;
+C -1 ; WX 354 ; N uniFEF5 ; B -18 15 345 764 ;
+C -1 ; WX 391 ; N uniFEF6 ; B -23 -101 409 625 ;
+C -1 ; WX 354 ; N uniFEF7 ; B 23 15 345 792 ;
+C -1 ; WX 391 ; N uniFEF8 ; B -4 -101 409 729 ;
+C -1 ; WX 354 ; N uniFEF9 ; B 23 -232 345 728 ;
+C -1 ; WX 391 ; N uniFEFA ; B -4 -355 409 625 ;
+C -1 ; WX 354 ; N uniFEFB ; B 23 15 345 728 ;
+C -1 ; WX 391 ; N uniFEFC ; B -4 -101 409 625 ;
+C -1 ; WX 0 ; N wasla ; B 0 0 234 170 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/frsspout.afm b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/frsspout.afm
new file mode 100644
index 0000000000..61a2868c49
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/frsspout.afm
@@ -0,0 +1,414 @@
+StartFontMetrics 2.0
+Comment Panose 0 0 4 0 0 0 0 0 0 0
+FullName Farsi Simple Outline
+FontName FarsiSimpleOutline
+FamilyName Farsi Simple Outline
+Weight Normal
+Notice Designed for Microsoft Corp. by Platinum Inc.
+IsFixedPitch false
+ItalicAngle 0.00
+FontBBox -299 -898 1728 1345
+Ascender 1345
+Descender -898
+XHeight 244
+CapHeight 342
+UnderlinePosition -143
+UnderlineThickness 20
+EncodingScheme FontSpecific
+StartCharMetrics 394
+C 13 ; WX 244 ; N CR ; B 0 0 0 0 ;
+C 32 ; WX 244 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 278 ; N exclam ; B 89 19 192 565 ;
+C 34 ; WX 278 ; N quotedbl ; B 8 346 266 595 ;
+C 35 ; WX 400 ; N numbersign ; B 6 -20 394 550 ;
+C 36 ; WX 400 ; N dollar ; B 30 -69 373 583 ;
+C 37 ; WX 462 ; N percent ; B 49 -74 416 590 ;
+C 38 ; WX 622 ; N ampersand ; B 13 -21 608 550 ;
+C 39 ; WX 144 ; N quotesingle ; B 23 305 121 550 ;
+C 40 ; WX 278 ; N parenleft ; B 33 -207 270 452 ;
+C 41 ; WX 278 ; N parenright ; B 11 -206 249 452 ;
+C 42 ; WX 332 ; N asterisk ; B 9 380 325 697 ;
+C 43 ; WX 462 ; N plus ; B 43 54 417 430 ;
+C 44 ; WX 278 ; N comma ; B 69 19 218 318 ;
+C 46 ; WX 278 ; N period ; B 90 18 194 121 ;
+C 47 ; WX 278 ; N slash ; B 21 -77 259 704 ;
+C 48 ; WX 400 ; N zero ; B 21 -18 380 549 ;
+C 49 ; WX 400 ; N one ; B 83 -9 311 549 ;
+C 50 ; WX 400 ; N two ; B 9 -9 379 549 ;
+C 51 ; WX 400 ; N three ; B 23 -18 342 549 ;
+C 52 ; WX 400 ; N four ; B 4 -9 381 549 ;
+C 53 ; WX 400 ; N five ; B 29 -18 361 538 ;
+C 54 ; WX 400 ; N six ; B 25 -18 378 549 ;
+C 55 ; WX 400 ; N seven ; B 19 -20 373 538 ;
+C 56 ; WX 400 ; N eight ; B 35 -18 367 549 ;
+C 57 ; WX 400 ; N nine ; B 23 -20 375 549 ;
+C 58 ; WX 278 ; N colon ; B 90 18 191 399 ;
+C 59 ; WX 278 ; N semicolon ; B 69 18 218 458 ;
+C 60 ; WX 451 ; N less ; B -14 60 439 471 ;
+C 61 ; WX 462 ; N equal ; B 43 154 417 327 ;
+C 62 ; WX 451 ; N greater ; B -27 60 426 471 ;
+C 63 ; WX 314 ; N question ; B 31 18 291 562 ;
+C 91 ; WX 278 ; N bracketleft ; B 44 -180 258 430 ;
+C 92 ; WX 278 ; N backslash ; B -135 -77 369 705 ;
+C 93 ; WX 278 ; N bracketright ; B 23 -180 235 430 ;
+C 123 ; WX 384 ; N braceleft ; B 102 -183 337 565 ;
+C 124 ; WX 160 ; N bar ; B 54 -181 104 564 ;
+C 125 ; WX 384 ; N braceright ; B 61 -183 296 565 ;
+C 147 ; WX 462 ; N multiply ; B 52 67 404 418 ;
+C 148 ; WX 462 ; N divide ; B 43 55 417 426 ;
+C 149 ; WX 447 ; N middot ; B 138 360 326 543 ;
+C 171 ; WX 278 ; N quotedblleft ; B 12 350 270 599 ;
+C 183 ; WX 278 ; N quotedblright ; B 8 346 266 595 ;
+C 187 ; WX 447 ; N bullet ; B 138 360 326 543 ;
+C 215 ; WX 407 ; N guillemotleft ; B 30 -4 396 400 ;
+C 247 ; WX 407 ; N guillemotright ; B 17 -4 383 400 ;
+C -1 ; WX 0 ; N .null ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N _394 ; B 0 0 0 0 ;
+C -1 ; WX 462 ; N hyphen ; B 43 212 417 270 ;
+C -1 ; WX 278 ; N uni060C ; B 70 20 216 314 ;
+C -1 ; WX 278 ; N uni061B ; B 70 19 216 454 ;
+C -1 ; WX 314 ; N uni061F ; B 32 19 290 562 ;
+C -1 ; WX 314 ; N uni0621 ; B 22 157 303 509 ;
+C -1 ; WX 290 ; N uni0622 ; B -40 32 431 763 ;
+C -1 ; WX 290 ; N uni0623 ; B 15 32 229 939 ;
+C -1 ; WX 307 ; N uni0624 ; B -43 -68 272 678 ;
+C -1 ; WX 258 ; N uni0625 ; B 18 -202 229 732 ;
+C -1 ; WX 701 ; N uni0626 ; B 33 -221 690 613 ;
+C -1 ; WX 258 ; N uni0627 ; B 41 32 229 732 ;
+C -1 ; WX 908 ; N uni0628 ; B 22 -256 909 257 ;
+C -1 ; WX 281 ; N uni0629 ; B -24 -37 260 551 ;
+C -1 ; WX 911 ; N uni062A ; B 22 -66 909 451 ;
+C -1 ; WX 925 ; N uni062B ; B 22 -66 909 589 ;
+C -1 ; WX 728 ; N uni062C ; B -11 -385 726 562 ;
+C -1 ; WX 624 ; N uni062D ; B -11 -385 726 562 ;
+C -1 ; WX 728 ; N uni062E ; B -11 -385 726 820 ;
+C -1 ; WX 297 ; N uni062F ; B -62 -41 264 422 ;
+C -1 ; WX 341 ; N uni0630 ; B 26 -41 352 613 ;
+C -1 ; WX 222 ; N uni0631 ; B -145 -32 219 444 ;
+C -1 ; WX 229 ; N uni0632 ; B -145 -32 219 613 ;
+C -1 ; WX 853 ; N uni0633 ; B -1 -363 847 358 ;
+C -1 ; WX 853 ; N uni0634 ; B -1 -363 847 651 ;
+C -1 ; WX 917 ; N uni0635 ; B -2 -224 906 515 ;
+C -1 ; WX 917 ; N uni0636 ; B -2 -224 906 619 ;
+C -1 ; WX 512 ; N uni0637 ; B 5 65 506 791 ;
+C -1 ; WX 512 ; N uni0638 ; B 5 65 519 791 ;
+C -1 ; WX 533 ; N uni0639 ; B 38 -343 730 565 ;
+C -1 ; WX 533 ; N uni063A ; B 38 -343 730 729 ;
+C -1 ; WX 242 ; N uni0640 ; B -8 46 251 167 ;
+C -1 ; WX 1029 ; N uni0641 ; B 45 -141 1031 592 ;
+C -1 ; WX 640 ; N uni0642 ; B 3 -195 631 690 ;
+C -1 ; WX 853 ; N uni0643 ; B 6 -73 1318 940 ;
+C -1 ; WX 974 ; N uni0644 ; B 58 -415 950 609 ;
+C -1 ; WX 880 ; N uni06440645062C.Init ; B -26 6 869 1118 ;
+C -1 ; WX 772 ; N uni0645 ; B 61 -488 731 440 ;
+C -1 ; WX 574 ; N uni0646 ; B 16 -177 599 460 ;
+C -1 ; WX 403 ; N uni0647 ; B -13 46 422 465 ;
+C -1 ; WX 307 ; N uni0648 ; B -43 -68 272 411 ;
+C -1 ; WX 701 ; N uni0649 ; B 33 -221 690 581 ;
+C -1 ; WX 701 ; N uni064A ; B 33 -416 690 581 ;
+C -1 ; WX 0 ; N uni064B ; B 0 0 182 227 ;
+C -1 ; WX 0 ; N uni064C ; B -2 0 209 219 ;
+C -1 ; WX 0 ; N uni064D ; B 0 -227 182 0 ;
+C -1 ; WX 0 ; N uni064E ; B 0 0 182 156 ;
+C -1 ; WX 0 ; N uni064F ; B 0 0 198 225 ;
+C -1 ; WX 0 ; N uni0650 ; B 0 -156 182 0 ;
+C -1 ; WX 0 ; N uni0651 ; B 0 0 190 181 ;
+C -1 ; WX 0 ; N uni0651064B ; B 0 0 190 349 ;
+C -1 ; WX 0 ; N uni0652 ; B 0 0 143 169 ;
+C -1 ; WX 0 ; N uni0653 ; B 7 0 353 94 ;
+C -1 ; WX 0 ; N uni0654 ; B -1 0 136 245 ;
+C -1 ; WX 0 ; N uni0655 ; B -1 -245 136 0 ;
+C -1 ; WX 462 ; N uni0660 ; B 168 163 296 356 ;
+C -1 ; WX 462 ; N uni0661 ; B 135 -15 295 504 ;
+C -1 ; WX 462 ; N uni0662 ; B 88 -12 352 500 ;
+C -1 ; WX 462 ; N uni0663 ; B 54 -7 421 500 ;
+C -1 ; WX 462 ; N uni0664 ; B 126 -11 365 508 ;
+C -1 ; WX 462 ; N uni0665 ; B 91 91 375 396 ;
+C -1 ; WX 462 ; N uni0666 ; B 85 0 379 483 ;
+C -1 ; WX 462 ; N uni0667 ; B 57 -1 411 489 ;
+C -1 ; WX 462 ; N uni0668 ; B 58 -12 412 479 ;
+C -1 ; WX 462 ; N uni0669 ; B 100 -28 377 489 ;
+C -1 ; WX 462 ; N uni066A ; B 50 -72 415 589 ;
+C -1 ; WX 278 ; N uni066B ; B 72 -122 192 122 ;
+C -1 ; WX 278 ; N uni066C ; B 72 -122 192 122 ;
+C -1 ; WX 526 ; N uni066D ; B 87 403 424 744 ;
+C -1 ; WX 0 ; N uni0670 ; B -8 -8 63 226 ;
+C -1 ; WX 258 ; N uni0671 ; B 13 32 262 827 ;
+C -1 ; WX 908 ; N uni0679 ; B 22 -66 909 626 ;
+C -1 ; WX 925 ; N uni067E ; B 22 -395 909 257 ;
+C -1 ; WX 624 ; N uni0686 ; B -11 -385 726 562 ;
+C -1 ; WX 297 ; N uni0688 ; B -62 -41 264 805 ;
+C -1 ; WX 222 ; N uni0691 ; B -145 -32 248 805 ;
+C -1 ; WX 222 ; N uni0698 ; B -145 -32 322 825 ;
+C -1 ; WX 853 ; N uni06A9 ; B 6 -73 1318 940 ;
+C -1 ; WX 853 ; N uni06AF ; B 6 -73 1318 1094 ;
+C -1 ; WX 574 ; N uni06BA ; B 16 -177 599 460 ;
+C -1 ; WX 360 ; N uni06BE ; B 15 46 344 465 ;
+C -1 ; WX 281 ; N uni06C0 ; B 8 -37 251 678 ;
+C -1 ; WX 267 ; N uni06C1 ; B 0 -44 276 199 ;
+C -1 ; WX 267 ; N uni06C2 ; B 0 -44 276 524 ;
+C -1 ; WX 267 ; N uni06C2.Fina ; B 0 -44 276 524 ;
+C -1 ; WX 281 ; N uni06C2.Isol ; B 8 -37 251 678 ;
+C -1 ; WX 267 ; N uni06C3 ; B -25 -44 276 392 ;
+C -1 ; WX 267 ; N uni06C3.Fina ; B -25 -44 276 392 ;
+C -1 ; WX 281 ; N uni06C3.Isol ; B -24 -37 260 551 ;
+C -1 ; WX 701 ; N uni06CC ; B 33 -221 690 581 ;
+C -1 ; WX 755 ; N uni06D2 ; B 57 -221 846 290 ;
+C -1 ; WX 755 ; N uni06D3 ; B 57 -221 846 509 ;
+C -1 ; WX 215 ; N uni06D4 ; B 12 53 133 160 ;
+C -1 ; WX 462 ; N uni06F00 ; B 168 163 296 356 ;
+C -1 ; WX 462 ; N uni06F1 ; B 135 -15 295 504 ;
+C -1 ; WX 462 ; N uni06F2 ; B 88 -12 352 500 ;
+C -1 ; WX 462 ; N uni06F3 ; B 54 -7 421 500 ;
+C -1 ; WX 462 ; N uni06F4 ; B 48 -7 373 511 ;
+C -1 ; WX 462 ; N uni06F4.Urdu ; B 100 -7 355 540 ;
+C -1 ; WX 462 ; N uni06F5 ; B 86 -7 409 486 ;
+C -1 ; WX 462 ; N uni06F6 ; B 67 -7 392 506 ;
+C -1 ; WX 462 ; N uni06F7 ; B 57 -1 411 489 ;
+C -1 ; WX 462 ; N uni06F7.Urdu ; B 91 -9 374 520 ;
+C -1 ; WX 462 ; N uni06F8 ; B 58 -12 412 479 ;
+C -1 ; WX 462 ; N uni06F9 ; B 100 -28 377 489 ;
+C -1 ; WX 22 ; N uni200C ; B 0 0 22 795 ;
+C -1 ; WX 22 ; N uni200D ; B -56 0 78 850 ;
+C -1 ; WX 22 ; N uni200E ; B 0 0 148 850 ;
+C -1 ; WX 22 ; N uni200F ; B -126 0 22 850 ;
+C -1 ; WX 479 ; N uni25CC ; B 18 133 492 602 ;
+C -1 ; WX 258 ; N uniFB50 ; B 13 32 262 827 ;
+C -1 ; WX 272 ; N uniFB51 ; B 23 46 286 874 ;
+C -1 ; WX 925 ; N uniFB56 ; B 22 -395 909 257 ;
+C -1 ; WX 1571 ; N uniFB57 ; B -59 -405 1594 240 ;
+C -1 ; WX 234 ; N uniFB58 ; B -25 -282 272 412 ;
+C -1 ; WX 279 ; N uniFB59 ; B -12 -310 296 306 ;
+C -1 ; WX 908 ; N uniFB66 ; B 22 -66 909 626 ;
+C -1 ; WX 1571 ; N uniFB67 ; B -59 -67 1594 600 ;
+C -1 ; WX 234 ; N uniFB68 ; B -12 46 234 740 ;
+C -1 ; WX 279 ; N uniFB69 ; B -12 46 295 692 ;
+C -1 ; WX 624 ; N uniFB7A ; B -11 -385 726 562 ;
+C -1 ; WX 547 ; N uniFB7B ; B 9 -898 797 167 ;
+C -1 ; WX 428 ; N uniFB7C ; B -9 -209 429 425 ;
+C -1 ; WX 461 ; N uniFB7D ; B -7 -284 472 370 ;
+C -1 ; WX 297 ; N uniFB88 ; B -62 -41 264 805 ;
+C -1 ; WX 498 ; N uniFB89 ; B -4 -4 510 764 ;
+C -1 ; WX 222 ; N uniFB8A ; B -145 -32 322 825 ;
+C -1 ; WX 483 ; N uniFB8B ; B -212 -344 497 594 ;
+C -1 ; WX 222 ; N uniFB8C ; B -145 -32 248 805 ;
+C -1 ; WX 483 ; N uniFB8D ; B -212 -344 497 555 ;
+C -1 ; WX 853 ; N uniFB8E ; B 6 -73 1318 940 ;
+C -1 ; WX 881 ; N uniFB8F ; B 4 -34 1376 947 ;
+C -1 ; WX 320 ; N uniFB90 ; B -19 46 1075 943 ;
+C -1 ; WX 489 ; N uniFB91 ; B -20 46 981 931 ;
+C -1 ; WX 853 ; N uniFB92 ; B 6 -73 1318 1094 ;
+C -1 ; WX 881 ; N uniFB93 ; B 4 -34 1376 1048 ;
+C -1 ; WX 320 ; N uniFB94 ; B -19 46 1075 1058 ;
+C -1 ; WX 489 ; N uniFB95 ; B -20 46 981 1039 ;
+C -1 ; WX 574 ; N uniFB9E ; B 16 -177 599 460 ;
+C -1 ; WX 637 ; N uniFB9F ; B 16 -382 652 172 ;
+C -1 ; WX 281 ; N uniFBA4 ; B 8 -37 251 678 ;
+C -1 ; WX 267 ; N uniFBA5 ; B 0 -44 276 524 ;
+C -1 ; WX 281 ; N uniFBA6 ; B 8 -37 251 356 ;
+C -1 ; WX 267 ; N uniFBA7 ; B 0 -44 276 199 ;
+C -1 ; WX 246 ; N uniFBA8 ; B -7 -273 216 408 ;
+C -1 ; WX 442 ; N uniFBA8.alt ; B -7 -287 436 408 ;
+C -1 ; WX 494 ; N uniFBA9 ; B -11 -408 511 222 ;
+C -1 ; WX 360 ; N uniFBAA ; B 15 46 344 465 ;
+C -1 ; WX 373 ; N uniFBAB ; B 12 -37 387 392 ;
+C -1 ; WX 322 ; N uniFBAC ; B -7 46 316 465 ;
+C -1 ; WX 354 ; N uniFBAD ; B -7 46 357 465 ;
+C -1 ; WX 755 ; N uniFBAE ; B 57 -221 846 290 ;
+C -1 ; WX 597 ; N uniFBAF ; B 119 -248 782 167 ;
+C -1 ; WX 755 ; N uniFBB0 ; B 57 -221 846 509 ;
+C -1 ; WX 597 ; N uniFBB1 ; B 119 -248 782 482 ;
+C -1 ; WX 234 ; N uniFBE8 ; B -12 46 216 412 ;
+C -1 ; WX 279 ; N uniFBE9 ; B -12 46 295 306 ;
+C -1 ; WX 701 ; N uniFBFC ; B 33 -221 690 581 ;
+C -1 ; WX 634 ; N uniFBFD ; B 9 -549 646 167 ;
+C -1 ; WX 411 ; N uniFBFE ; B -41 -143 315 401 ;
+C -1 ; WX 279 ; N uniFBFF ; B -36 -219 295 306 ;
+C -1 ; WX 612 ; N uniFC08 ; B 16 -523 635 663 ;
+C -1 ; WX 612 ; N uniFC0E ; B 16 -523 631 847 ;
+C -1 ; WX 586 ; N uniFC32 ; B 5 -542 586 914 ;
+C -1 ; WX 533 ; N uniFC3F ; B -89 -554 699 852 ;
+C -1 ; WX 533 ; N uniFC40 ; B -89 -554 699 852 ;
+C -1 ; WX 533 ; N uniFC41 ; B -89 -554 699 852 ;
+C -1 ; WX 567 ; N uniFC42 ; B 7 -510 566 934 ;
+C -1 ; WX 562 ; N uniFC43 ; B 8 -336 568 851 ;
+C -1 ; WX 562 ; N uniFC44 ; B 8 -553 568 851 ;
+C -1 ; WX 612 ; N uniFC4E ; B 16 -523 631 812 ;
+C -1 ; WX 0 ; N uniFC5E ; B 0 0 211 355 ;
+C -1 ; WX 0 ; N uniFC5F ; B 0 0 190 370 ;
+C -1 ; WX 0 ; N uniFC60 ; B 0 0 190 285 ;
+C -1 ; WX 0 ; N uniFC61 ; B 0 0 201 369 ;
+C -1 ; WX 0 ; N uniFC62 ; B -2 0 188 299 ;
+C -1 ; WX 0 ; N uniFC63 ; B 11 0 201 387 ;
+C -1 ; WX 650 ; N uniFC6A ; B -299 -467 680 211 ;
+C -1 ; WX 751 ; N uniFC6D ; B 7 -362 763 312 ;
+C -1 ; WX 670 ; N uniFC6E ; B 16 -560 691 219 ;
+C -1 ; WX 650 ; N uniFC70 ; B -299 -467 680 438 ;
+C -1 ; WX 751 ; N uniFC73 ; B 7 -362 763 552 ;
+C -1 ; WX 670 ; N uniFC74 ; B 16 -560 689 451 ;
+C -1 ; WX 670 ; N uniFC8E ; B 16 -560 689 429 ;
+C -1 ; WX 650 ; N uniFC91 ; B -299 -467 680 211 ;
+C -1 ; WX 751 ; N uniFC94 ; B 7 -407 763 312 ;
+C -1 ; WX 402 ; N uniFC9C ; B -12 17 489 609 ;
+C -1 ; WX 402 ; N uniFC9D ; B -12 46 489 609 ;
+C -1 ; WX 402 ; N uniFC9E ; B -12 46 489 705 ;
+C -1 ; WX 506 ; N uniFC9F ; B -11 46 546 549 ;
+C -1 ; WX 402 ; N uniFCA1 ; B -12 18 417 774 ;
+C -1 ; WX 402 ; N uniFCA2 ; B -12 46 417 774 ;
+C -1 ; WX 402 ; N uniFCA3 ; B -37 46 417 774 ;
+C -1 ; WX 506 ; N uniFCA4 ; B -11 46 546 692 ;
+C -1 ; WX 506 ; N uniFCA6 ; B -11 46 554 818 ;
+C -1 ; WX 533 ; N uniFCA8 ; B -14 46 577 600 ;
+C -1 ; WX 533 ; N uniFCAA ; B -14 46 577 600 ;
+C -1 ; WX 533 ; N uniFCAC ; B -14 46 577 829 ;
+C -1 ; WX 765 ; N uniFCB0 ; B -9 46 786 637 ;
+C -1 ; WX 533 ; N uniFCC9 ; B -8 -20 699 854 ;
+C -1 ; WX 533 ; N uniFCCA ; B -8 45 699 854 ;
+C -1 ; WX 533 ; N uniFCCB ; B -8 45 699 854 ;
+C -1 ; WX 593 ; N uniFCCC ; B -19 46 543 784 ;
+C -1 ; WX 739 ; N uniFCCD ; B -27 46 792 868 ;
+C -1 ; WX 445 ; N uniFCCE ; B -12 -50 502 658 ;
+C -1 ; WX 445 ; N uniFCCF ; B -12 46 502 658 ;
+C -1 ; WX 445 ; N uniFCD0 ; B -12 46 502 658 ;
+C -1 ; WX 575 ; N uniFCD1 ; B -8 46 608 656 ;
+C -1 ; WX 402 ; N uniFCD2 ; B -12 17 417 794 ;
+C -1 ; WX 402 ; N uniFCD3 ; B -12 46 417 794 ;
+C -1 ; WX 402 ; N uniFCD4 ; B -12 46 417 794 ;
+C -1 ; WX 506 ; N uniFCD5 ; B -11 46 546 721 ;
+C -1 ; WX 402 ; N uniFCDA ; B -12 -98 518 609 ;
+C -1 ; WX 402 ; N uniFCDB ; B -12 26 518 609 ;
+C -1 ; WX 402 ; N uniFCDC ; B -12 26 518 709 ;
+C -1 ; WX 506 ; N uniFCDD ; B -11 -45 546 549 ;
+C -1 ; WX 765 ; N uniFD30 ; B -9 46 786 930 ;
+C -1 ; WX 554 ; N uniFD3E ; B 81 -306 703 728 ;
+C -1 ; WX 554 ; N uniFD3F ; B -36 -306 586 728 ;
+C -1 ; WX 880 ; N uniFD88 ; B -26 46 869 1118 ;
+C -1 ; WX 1192 ; N uniFDF2 ; B 23 35 1107 978 ;
+C -1 ; WX 314 ; N uniFE80 ; B 22 157 303 509 ;
+C -1 ; WX 290 ; N uniFE81 ; B -40 32 431 763 ;
+C -1 ; WX 272 ; N uniFE82 ; B -40 46 431 802 ;
+C -1 ; WX 290 ; N uniFE83 ; B 15 32 229 939 ;
+C -1 ; WX 272 ; N uniFE84 ; B 15 46 286 939 ;
+C -1 ; WX 307 ; N uniFE85 ; B -43 -68 272 678 ;
+C -1 ; WX 242 ; N uniFE86 ; B -50 -222 276 507 ;
+C -1 ; WX 258 ; N uniFE87 ; B 18 -202 229 732 ;
+C -1 ; WX 272 ; N uniFE88 ; B 35 -216 286 703 ;
+C -1 ; WX 701 ; N uniFE89 ; B 33 -221 690 613 ;
+C -1 ; WX 634 ; N uniFE8A ; B 9 -549 646 332 ;
+C -1 ; WX 313 ; N uniFE8B ; B -12 46 315 558 ;
+C -1 ; WX 279 ; N uniFE8C ; B -12 46 295 590 ;
+C -1 ; WX 258 ; N uniFE8D ; B 41 32 229 732 ;
+C -1 ; WX 272 ; N uniFE8E ; B 87 46 286 703 ;
+C -1 ; WX 908 ; N uniFE8F ; B 22 -256 909 257 ;
+C -1 ; WX 1571 ; N uniFE90 ; B -59 -243 1594 240 ;
+C -1 ; WX 234 ; N uniFE91 ; B -12 -123 216 412 ;
+C -1 ; WX 279 ; N uniFE92 ; B -12 -87 295 306 ;
+C -1 ; WX 281 ; N uniFE93 ; B -24 -37 260 551 ;
+C -1 ; WX 267 ; N uniFE94 ; B -25 -44 276 392 ;
+C -1 ; WX 911 ; N uniFE95 ; B 22 -66 909 451 ;
+C -1 ; WX 1571 ; N uniFE96 ; B -59 -67 1594 394 ;
+C -1 ; WX 274 ; N uniFE97 ; B -45 46 252 557 ;
+C -1 ; WX 274 ; N uniFE98 ; B -12 46 295 507 ;
+C -1 ; WX 925 ; N uniFE99 ; B 22 -66 909 589 ;
+C -1 ; WX 1571 ; N uniFE9A ; B -59 -67 1594 510 ;
+C -1 ; WX 246 ; N uniFE9B ; B -41 46 230 646 ;
+C -1 ; WX 274 ; N uniFE9C ; B -22 46 295 644 ;
+C -1 ; WX 728 ; N uniFE9D ; B -11 -385 726 562 ;
+C -1 ; WX 547 ; N uniFE9E ; B 9 -898 797 167 ;
+C -1 ; WX 428 ; N uniFE9F ; B -9 -10 429 425 ;
+C -1 ; WX 461 ; N uniFEA0 ; B -7 -95 472 370 ;
+C -1 ; WX 624 ; N uniFEA1 ; B -11 -385 726 562 ;
+C -1 ; WX 547 ; N uniFEA2 ; B 9 -898 797 167 ;
+C -1 ; WX 428 ; N uniFEA3 ; B -9 46 429 425 ;
+C -1 ; WX 461 ; N uniFEA4 ; B -7 46 472 370 ;
+C -1 ; WX 728 ; N uniFEA5 ; B -11 -385 726 820 ;
+C -1 ; WX 547 ; N uniFEA6 ; B 9 -898 797 401 ;
+C -1 ; WX 428 ; N uniFEA7 ; B -9 46 429 643 ;
+C -1 ; WX 461 ; N uniFEA8 ; B -7 46 472 592 ;
+C -1 ; WX 297 ; N uniFEA9 ; B -62 -41 264 422 ;
+C -1 ; WX 498 ; N uniFEAA ; B -4 -4 510 389 ;
+C -1 ; WX 341 ; N uniFEAB ; B 26 -41 352 613 ;
+C -1 ; WX 498 ; N uniFEAC ; B -4 -4 510 574 ;
+C -1 ; WX 222 ; N uniFEAD ; B -145 -32 219 444 ;
+C -1 ; WX 483 ; N uniFEAE ; B -212 -344 497 167 ;
+C -1 ; WX 229 ; N uniFEAF ; B -145 -32 219 613 ;
+C -1 ; WX 480 ; N uniFEB0 ; B -212 -344 497 394 ;
+C -1 ; WX 853 ; N uniFEB1 ; B -1 -363 847 358 ;
+C -1 ; WX 950 ; N uniFEB2 ; B -20 -410 961 206 ;
+C -1 ; WX 469 ; N uniFEB3 ; B -7 46 487 304 ;
+C -1 ; WX 512 ; N uniFEB4 ; B -12 46 521 207 ;
+C -1 ; WX 853 ; N uniFEB5 ; B -1 -363 847 651 ;
+C -1 ; WX 950 ; N uniFEB6 ; B -20 -410 961 562 ;
+C -1 ; WX 469 ; N uniFEB7 ; B -7 46 487 639 ;
+C -1 ; WX 512 ; N uniFEB8 ; B -12 46 521 595 ;
+C -1 ; WX 917 ; N uniFEB9 ; B -2 -224 906 515 ;
+C -1 ; WX 879 ; N uniFEBA ; B 4 -369 894 377 ;
+C -1 ; WX 525 ; N uniFEBB ; B -7 46 516 411 ;
+C -1 ; WX 533 ; N uniFEBC ; B -8 46 555 378 ;
+C -1 ; WX 917 ; N uniFEBD ; B -2 -224 906 619 ;
+C -1 ; WX 879 ; N uniFEBE ; B 4 -369 894 495 ;
+C -1 ; WX 525 ; N uniFEBF ; B -7 46 516 516 ;
+C -1 ; WX 533 ; N uniFEC0 ; B -8 46 555 516 ;
+C -1 ; WX 512 ; N uniFEC1 ; B 5 65 506 791 ;
+C -1 ; WX 505 ; N uniFEC2 ; B 34 43 520 727 ;
+C -1 ; WX 320 ; N uniFEC3 ; B -7 46 346 604 ;
+C -1 ; WX 331 ; N uniFEC4 ; B -7 46 346 604 ;
+C -1 ; WX 512 ; N uniFEC5 ; B 5 65 519 791 ;
+C -1 ; WX 505 ; N uniFEC6 ; B 34 43 544 727 ;
+C -1 ; WX 320 ; N uniFEC7 ; B -7 46 346 604 ;
+C -1 ; WX 331 ; N uniFEC8 ; B -7 46 346 604 ;
+C -1 ; WX 533 ; N uniFEC9 ; B 38 -343 730 565 ;
+C -1 ; WX 442 ; N uniFECA ; B -1 -506 784 373 ;
+C -1 ; WX 420 ; N uniFECB ; B -9 46 435 488 ;
+C -1 ; WX 235 ; N uniFECC ; B -9 46 251 336 ;
+C -1 ; WX 533 ; N uniFECD ; B 38 -343 730 729 ;
+C -1 ; WX 442 ; N uniFECE ; B -1 -506 784 588 ;
+C -1 ; WX 420 ; N uniFECF ; B -9 46 435 653 ;
+C -1 ; WX 235 ; N uniFED0 ; B -9 46 251 549 ;
+C -1 ; WX 1029 ; N uniFED1 ; B 45 -141 1031 592 ;
+C -1 ; WX 1710 ; N uniFED2 ; B 169 -67 1728 587 ;
+C -1 ; WX 256 ; N uniFED3 ; B -12 46 233 684 ;
+C -1 ; WX 268 ; N uniFED4 ; B -16 46 283 602 ;
+C -1 ; WX 640 ; N uniFED5 ; B 3 -195 631 690 ;
+C -1 ; WX 629 ; N uniFED6 ; B 3 -410 644 475 ;
+C -1 ; WX 256 ; N uniFED7 ; B -39 46 259 754 ;
+C -1 ; WX 268 ; N uniFED8 ; B -16 46 290 588 ;
+C -1 ; WX 853 ; N uniFED9 ; B 6 -73 1318 940 ;
+C -1 ; WX 881 ; N uniFEDA ; B 4 -34 1376 947 ;
+C -1 ; WX 320 ; N uniFEDB ; B -19 46 1075 943 ;
+C -1 ; WX 489 ; N uniFEDC ; B -20 46 981 931 ;
+C -1 ; WX 974 ; N uniFEDD ; B 58 -415 950 609 ;
+C -1 ; WX 903 ; N uniFEDE ; B 7 -458 925 561 ;
+C -1 ; WX 439 ; N uniFEDF ; B -20 46 379 677 ;
+C -1 ; WX 498 ; N uniFEE0 ; B -19 46 522 727 ;
+C -1 ; WX 772 ; N uniFEE1 ; B 61 -488 731 440 ;
+C -1 ; WX 628 ; N uniFEE2 ; B 69 -576 652 223 ;
+C -1 ; WX 523 ; N uniFEE3 ; B -1 46 500 359 ;
+C -1 ; WX 245 ; N uniFEE4 ; B -7 12 265 216 ;
+C -1 ; WX 574 ; N uniFEE5 ; B 16 -177 599 460 ;
+C -1 ; WX 637 ; N uniFEE6 ; B 16 -382 652 172 ;
+C -1 ; WX 234 ; N uniFEE7 ; B -12 46 220 602 ;
+C -1 ; WX 279 ; N uniFEE8 ; B -12 46 295 452 ;
+C -1 ; WX 281 ; N uniFEE9 ; B 8 -37 251 356 ;
+C -1 ; WX 267 ; N uniFEEA ; B 0 -44 276 199 ;
+C -1 ; WX 446 ; N uniFEEB ; B -8 46 437 465 ;
+C -1 ; WX 516 ; N uniFEEC ; B -12 -164 525 222 ;
+C -1 ; WX 307 ; N uniFEED ; B -43 -68 272 411 ;
+C -1 ; WX 242 ; N uniFEEE ; B -50 -222 276 271 ;
+C -1 ; WX 701 ; N uniFEEF ; B 33 -221 690 581 ;
+C -1 ; WX 634 ; N uniFEF0 ; B 9 -549 646 167 ;
+C -1 ; WX 701 ; N uniFEF1 ; B 33 -416 690 581 ;
+C -1 ; WX 634 ; N uniFEF2 ; B 9 -779 646 167 ;
+C -1 ; WX 411 ; N uniFEF3 ; B -41 -143 315 401 ;
+C -1 ; WX 279 ; N uniFEF4 ; B -36 -219 295 306 ;
+C -1 ; WX 546 ; N uniFEF5 ; B -14 7 520 778 ;
+C -1 ; WX 539 ; N uniFEF6 ; B -82 -104 603 708 ;
+C -1 ; WX 532 ; N uniFEF7 ; B 64 7 520 805 ;
+C -1 ; WX 586 ; N uniFEF8 ; B 0 -104 603 791 ;
+C -1 ; WX 532 ; N uniFEF9 ; B 54 -241 520 740 ;
+C -1 ; WX 586 ; N uniFEFA ; B 0 -390 603 632 ;
+C -1 ; WX 559 ; N uniFEFB ; B 64 7 520 740 ;
+C -1 ; WX 586 ; N uniFEFC ; B 0 -104 603 632 ;
+C -1 ; WX 0 ; N wasla ; B 0 0 249 185 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/tradbdo.afm b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/tradbdo.afm
new file mode 100644
index 0000000000..0f833f8f90
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/tradbdo.afm
@@ -0,0 +1,549 @@
+StartFontMetrics 2.0
+Comment Panose 2 1 0 0 0 0 0 0 0 0
+FullName Traditional Arabic Bold
+FontName TraditionalArabic-Bold
+FamilyName Traditional Arabic
+Weight Bold
+Notice Portions (C) 1990 Compugraphic Corporation. Typeface Portions (C) The Monotype Corporation plc. Data Portions (C) The Monotype Corporation plc./Type Solutions Inc. 1990-1992. All Rights Reserved.
+IsFixedPitch false
+ItalicAngle 0.00
+FontBBox -126 -510 1031 1023
+Ascender 1023
+Descender -510
+XHeight 471
+CapHeight 700
+UnderlinePosition -800
+UnderlineThickness 100
+EncodingScheme FontSpecific
+StartCharMetrics 529
+C 32 ; WX 244 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 278 ; N exclam ; B 96 26 185 559 ;
+C 34 ; WX 278 ; N quotedbl ; B 53 396 224 601 ;
+C 35 ; WX 668 ; N numbersign ; B 42 29 626 727 ;
+C 36 ; WX 479 ; N dollar ; B 29 -30 444 735 ;
+C 37 ; WX 896 ; N percent ; B 61 35 835 701 ;
+C 38 ; WX 750 ; N ampersand ; B 57 49 721 647 ;
+C 39 ; WX 281 ; N quotesingle ; B 69 375 213 700 ;
+C 40 ; WX 278 ; N parenleft ; B 41 -195 257 441 ;
+C 41 ; WX 278 ; N parenright ; B 21 -192 237 444 ;
+C 42 ; WX 333 ; N asterisk ; B 17 388 317 688 ;
+C 43 ; WX 519 ; N plus ; B 39 63 480 505 ;
+C 44 ; WX 278 ; N comma ; B 78 -117 185 113 ;
+C 45 ; WX 519 ; N hyphenminus ; B 39 252 480 312 ;
+C 46 ; WX 278 ; N period ; B 98 26 183 113 ;
+C 47 ; WX 278 ; N slash ; B 32 -68 248 697 ;
+C 48 ; WX 500 ; N zero ; B 42 49 457 700 ;
+C 49 ; WX 500 ; N one ; B 71 63 425 700 ;
+C 50 ; WX 500 ; N two ; B 32 63 442 700 ;
+C 51 ; WX 500 ; N three ; B 28 48 420 700 ;
+C 52 ; WX 500 ; N four ; B 33 48 457 700 ;
+C 53 ; WX 500 ; N five ; B 45 48 429 702 ;
+C 54 ; WX 500 ; N six ; B 43 49 458 701 ;
+C 55 ; WX 500 ; N seven ; B 36 48 455 685 ;
+C 56 ; WX 500 ; N eight ; B 46 48 453 700 ;
+C 57 ; WX 500 ; N nine ; B 40 48 457 700 ;
+C 58 ; WX 278 ; N colon ; B 96 26 183 393 ;
+C 59 ; WX 313 ; N semicolon ; B 64 -84 249 482 ;
+C 60 ; WX 667 ; N less ; B 66 130 600 648 ;
+C 61 ; WX 519 ; N equal ; B 39 194 480 371 ;
+C 62 ; WX 667 ; N greater ; B 67 130 601 648 ;
+C 63 ; WX 365 ; N question ; B 44 52 330 700 ;
+C 64 ; WX 927 ; N at ; B 45 -153 908 741 ;
+C 65 ; WX 740 ; N A ; B 9 63 730 700 ;
+C 66 ; WX 698 ; N B ; B 10 63 655 700 ;
+C 67 ; WX 740 ; N C ; B 51 49 702 700 ;
+C 68 ; WX 823 ; N D ; B 21 63 771 698 ;
+C 69 ; WX 646 ; N E ; B -2 63 612 685 ;
+C 70 ; WX 594 ; N F ; B 38 63 543 685 ;
+C 71 ; WX 781 ; N G ; B 51 49 758 700 ;
+C 72 ; WX 833 ; N H ; B 22 63 812 685 ;
+C 73 ; WX 365 ; N I ; B 23 63 341 685 ;
+C 74 ; WX 344 ; N J ; B -120 -164 324 685 ;
+C 75 ; WX 740 ; N K ; B 20 63 749 685 ;
+C 76 ; WX 604 ; N L ; B 13 63 622 685 ;
+C 77 ; WX 927 ; N M ; B 20 63 908 685 ;
+C 78 ; WX 813 ; N N ; B 24 60 793 685 ;
+C 79 ; WX 844 ; N O ; B 52 49 792 704 ;
+C 80 ; WX 646 ; N P ; B 22 63 618 701 ;
+C 81 ; WX 844 ; N Q ; B 52 -164 805 704 ;
+C 82 ; WX 771 ; N R ; B 10 52 786 700 ;
+C 83 ; WX 563 ; N S ; B 58 49 514 700 ;
+C 84 ; WX 729 ; N T ; B 28 63 700 702 ;
+C 85 ; WX 771 ; N U ; B 5 49 766 685 ;
+C 86 ; WX 750 ; N V ; B 5 49 744 685 ;
+C 87 ; WX 1000 ; N W ; B 6 49 994 685 ;
+C 88 ; WX 802 ; N X ; B 9 63 793 685 ;
+C 89 ; WX 750 ; N Y ; B 8 63 741 685 ;
+C 90 ; WX 750 ; N Z ; B 58 63 703 685 ;
+C 91 ; WX 365 ; N bracketleft ; B 115 -124 355 685 ;
+C 92 ; WX 531 ; N backslash ; B 46 45 484 704 ;
+C 93 ; WX 365 ; N bracketright ; B 10 -124 250 685 ;
+C 94 ; WX 583 ; N asciicircum ; B 72 381 510 732 ;
+C 95 ; WX 500 ; N underscore ; B -8 -62 508 -12 ;
+C 96 ; WX 333 ; N grave ; B 7 540 242 729 ;
+C 97 ; WX 479 ; N a ; B 38 52 461 482 ;
+C 98 ; WX 573 ; N b ; B 16 52 528 732 ;
+C 99 ; WX 490 ; N c ; B 44 52 458 482 ;
+C 100 ; WX 573 ; N d ; B 43 52 558 732 ;
+C 101 ; WX 479 ; N e ; B 42 52 448 482 ;
+C 102 ; WX 323 ; N f ; B 9 63 473 735 ;
+C 103 ; WX 552 ; N g ; B 41 -168 538 482 ;
+C 104 ; WX 563 ; N h ; B 9 63 544 732 ;
+C 105 ; WX 292 ; N i ; B 15 63 265 720 ;
+C 106 ; WX 281 ; N j ; B -116 -166 220 720 ;
+C 107 ; WX 542 ; N k ; B 15 63 541 732 ;
+C 108 ; WX 271 ; N l ; B 4 63 255 732 ;
+C 109 ; WX 927 ; N m ; B 17 63 908 493 ;
+C 110 ; WX 573 ; N n ; B 15 63 552 493 ;
+C 111 ; WX 573 ; N o ; B 43 52 530 482 ;
+C 112 ; WX 573 ; N p ; B 13 -164 531 493 ;
+C 113 ; WX 573 ; N q ; B 44 -164 553 482 ;
+C 114 ; WX 396 ; N r ; B 22 63 395 493 ;
+C 115 ; WX 375 ; N s ; B 42 53 338 482 ;
+C 116 ; WX 344 ; N t ; B 24 52 335 596 ;
+C 117 ; WX 573 ; N u ; B 33 52 544 482 ;
+C 118 ; WX 521 ; N v ; B 4 56 517 471 ;
+C 119 ; WX 781 ; N w ; B 4 56 776 471 ;
+C 120 ; WX 531 ; N x ; B 9 63 523 471 ;
+C 121 ; WX 521 ; N y ; B 1 -170 508 471 ;
+C 122 ; WX 510 ; N z ; B 30 63 489 499 ;
+C 123 ; WX 396 ; N braceleft ; B 63 -168 334 732 ;
+C 124 ; WX 566 ; N bar ; B 244 -72 322 704 ;
+C 125 ; WX 396 ; N braceright ; B 62 -168 333 732 ;
+C 126 ; WX 521 ; N asciitilde ; B -15 286 537 463 ;
+C 127 ; WX 781 ; N delete ; B 42 63 742 349 ;
+C 130 ; WX 313 ; N quotesinglbase ; B 64 -84 249 187 ;
+C 131 ; WX 500 ; N florin ; B -125 -170 526 735 ;
+C 132 ; WX 583 ; N quotedblbase ; B 61 -84 522 187 ;
+C 133 ; WX 1000 ; N ellipsis ; B 86 52 915 187 ;
+C 134 ; WX 469 ; N dagger ; B 29 -114 440 693 ;
+C 135 ; WX 479 ; N daggerdbl ; B 34 -114 445 693 ;
+C 136 ; WX 333 ; N circumflex ; B 11 540 323 729 ;
+C 137 ; WX 1021 ; N perthousand ; B 26 35 995 701 ;
+C 138 ; WX 563 ; N Scaron ; B 58 49 514 936 ;
+C 139 ; WX 250 ; N guilsinglleft ; B 21 98 222 468 ;
+C 140 ; WX 1063 ; N OE ; B 51 58 1031 692 ;
+C 145 ; WX 313 ; N quoteleft ; B 64 434 249 705 ;
+C 146 ; WX 313 ; N quoteright ; B 64 433 249 704 ;
+C 147 ; WX 314 ; N quotedblleft ; B 39 372 275 601 ;
+C 148 ; WX 314 ; N quotedblright ; B 41 372 276 601 ;
+C 149 ; WX 354 ; N bullet ; B 38 234 317 513 ;
+C 150 ; WX 500 ; N endash ; B -6 268 506 358 ;
+C 151 ; WX 1000 ; N quotedash ; B -6 268 1006 358 ;
+C 153 ; WX 1000 ; N trademark ; B -2 331 1005 725 ;
+C 154 ; WX 375 ; N scaron ; B 28 53 340 729 ;
+C 155 ; WX 250 ; N guilsinglright ; B 28 98 229 468 ;
+C 156 ; WX 781 ; N oe ; B 44 52 753 482 ;
+C 159 ; WX 750 ; N Ydieresis ; B 8 63 741 887 ;
+C 160 ; WX 244 ; N nbspace ; B 0 0 0 0 ;
+C 161 ; WX 278 ; N exclamdown ; B 96 -63 185 470 ;
+C 162 ; WX 490 ; N cent ; B 44 -105 458 598 ;
+C 163 ; WX 833 ; N sterling ; B 35 -164 801 725 ;
+C 164 ; WX 667 ; N currency ; B 89 145 577 633 ;
+C 165 ; WX 500 ; N yen ; B -110 63 610 685 ;
+C 166 ; WX 566 ; N brokenbar ; B 244 -72 322 704 ;
+C 167 ; WX 469 ; N section ; B 45 -113 424 725 ;
+C 168 ; WX 333 ; N dieresis ; B 10 562 324 682 ;
+C 169 ; WX 750 ; N copyright ; B 29 48 721 740 ;
+C 170 ; WX 365 ; N ordfeminine ; B 49 447 325 704 ;
+C 171 ; WX 407 ; N guillemotleft ; B 41 5 378 393 ;
+C 172 ; WX 667 ; N logicalnot ; B 66 236 600 543 ;
+C 173 ; WX 667 ; N sfthyphen ; B 66 351 600 427 ;
+C 174 ; WX 750 ; N registered ; B 29 48 721 740 ;
+C 175 ; WX 333 ; N overscore ; B 6 587 327 667 ;
+C 176 ; WX 396 ; N degree ; B 29 363 367 701 ;
+C 177 ; WX 519 ; N plusminus ; B 39 -60 480 505 ;
+C 178 ; WX 313 ; N twosuperior ; B 21 367 275 698 ;
+C 179 ; WX 313 ; N threesuperior ; B 31 359 274 698 ;
+C 180 ; WX 333 ; N acute ; B 87 540 322 729 ;
+C 181 ; WX 552 ; N micro ; B 27 -152 547 471 ;
+C 182 ; WX 542 ; N paragraph ; B 0 -170 541 685 ;
+C 183 ; WX 313 ; N middot ; B 76 307 237 442 ;
+C 184 ; WX 333 ; N cedilla ; B 58 -142 246 68 ;
+C 185 ; WX 313 ; N onesuperior ; B 44 367 265 698 ;
+C 186 ; WX 375 ; N ordmasculine ; B 29 447 346 704 ;
+C 187 ; WX 407 ; N guillemotright ; B 41 6 378 394 ;
+C 188 ; WX 823 ; N onequarter ; B 41 35 686 700 ;
+C 189 ; WX 823 ; N onehalf ; B 41 35 710 700 ;
+C 190 ; WX 823 ; N threequarters ; B 46 35 705 700 ;
+C 191 ; WX 365 ; N questiondown ; B 34 -170 320 478 ;
+C 192 ; WX 740 ; N Agrave ; B 9 63 730 934 ;
+C 215 ; WX 519 ; N multiply ; B 66 91 450 476 ;
+C 224 ; WX 479 ; N agrave ; B 38 52 461 729 ;
+C 226 ; WX 479 ; N acircumflex ; B 38 52 461 729 ;
+C 231 ; WX 490 ; N ccedilla ; B 44 -142 458 482 ;
+C 232 ; WX 479 ; N egrave ; B 42 52 448 729 ;
+C 233 ; WX 479 ; N eacute ; B 42 52 448 729 ;
+C 234 ; WX 479 ; N ecircumflex ; B 42 52 448 729 ;
+C 235 ; WX 479 ; N edieresis ; B 42 52 448 682 ;
+C 238 ; WX 292 ; N icircumflex ; B -22 63 290 729 ;
+C 239 ; WX 292 ; N idieresis ; B -21 63 293 682 ;
+C 244 ; WX 573 ; N ocircumflex ; B 43 52 530 729 ;
+C 247 ; WX 519 ; N divide ; B 39 65 480 500 ;
+C 249 ; WX 573 ; N ugrave ; B 33 52 544 729 ;
+C 251 ; WX 573 ; N ucircumflex ; B 33 52 544 729 ;
+C 252 ; WX 573 ; N udieresis ; B 33 52 544 682 ;
+C 255 ; WX 521 ; N ydieresis ; B 1 -170 508 682 ;
+C -1 ; WX 244 ; N CR ; B 0 0 0 0 ;
+C -1 ; WX 0 ; N NULL ; B 0 0 0 0 ;
+C -1 ; WX 537 ; N ain ; B 14 -306 510 456 ;
+C -1 ; WX 425 ; N ainfinal ; B 15 -306 504 354 ;
+C -1 ; WX 387 ; N aininitial ; B 0 63 367 443 ;
+C -1 ; WX 537 ; N ainisolated ; B 14 -306 510 456 ;
+C -1 ; WX 296 ; N ainmedial ; B 0 63 331 360 ;
+C -1 ; WX 208 ; N aleffinal ; B 47 63 242 557 ;
+C -1 ; WX 185 ; N alefisolated ; B 54 84 143 557 ;
+C -1 ; WX 573 ; N alefmaksura ; B 15 -50 538 428 ;
+C -1 ; WX 480 ; N alefmaksurafinal ; B 23 -227 515 171 ;
+C -1 ; WX 573 ; N alefmaksuraisolated ; B 15 -50 538 428 ;
+C -1 ; WX 196 ; N alefwasla ; B 0 84 196 707 ;
+C -1 ; WX 257 ; N alefwaslafinal ; B 29 63 292 707 ;
+C -1 ; WX 196 ; N alefwaslaisolated ; B 0 84 196 707 ;
+C -1 ; WX 257 ; N alefwithfathatanfinal ; B 39 63 292 743 ;
+C -1 ; WX 196 ; N alefwithfathatanisolated ; B 9 84 174 743 ;
+C -1 ; WX 185 ; N alefwithhamzaabove ; B 34 84 186 720 ;
+C -1 ; WX 208 ; N alefwithhamzaabovefinal ; B 34 63 242 720 ;
+C -1 ; WX 185 ; N alefwithhamzaaboveisolated ; B 34 84 186 720 ;
+C -1 ; WX 185 ; N alefwithhamzabelow ; B 24 -130 176 557 ;
+C -1 ; WX 208 ; N alefwithhamzabelowfinal ; B 47 -130 243 557 ;
+C -1 ; WX 185 ; N alefwithhamzabelowisolated ; B 24 -130 176 557 ;
+C -1 ; WX 303 ; N alefwithmaddaabove ; B 0 84 303 671 ;
+C -1 ; WX 257 ; N alefwithmaddaabovefinal ; B 0 63 303 676 ;
+C -1 ; WX 303 ; N alefwithmaddaaboveisolated ; B 0 84 303 671 ;
+C -1 ; WX 537 ; N allahisolated ; B 27 51 506 829 ;
+C -1 ; WX 278 ; N arabicae ; B 29 62 248 428 ;
+C -1 ; WX 185 ; N arabicalef ; B 54 84 143 557 ;
+C -1 ; WX 278 ; N arabiccomma ; B 77 27 209 308 ;
+C -1 ; WX 398 ; N arabicfivepointedstar ; B 25 376 374 708 ;
+C -1 ; WX 519 ; N arabicindicdigiteight ; B 68 9 462 561 ;
+C -1 ; WX 519 ; N arabicindicdigitfive ; B 90 80 432 488 ;
+C -1 ; WX 519 ; N arabicindicdigitfour ; B 128 9 393 570 ;
+C -1 ; WX 519 ; N arabicindicdigitnine ; B 98 6 417 569 ;
+C -1 ; WX 519 ; N arabicindicdigitone ; B 144 8 342 569 ;
+C -1 ; WX 519 ; N arabicindicdigitseven ; B 57 12 453 563 ;
+C -1 ; WX 519 ; N arabicindicdigitsix ; B 89 12 419 541 ;
+C -1 ; WX 519 ; N arabicindicdigitthree ; B 53 8 458 563 ;
+C -1 ; WX 519 ; N arabicindicdigittwo ; B 99 8 389 562 ;
+C -1 ; WX 519 ; N arabicindicdigitzero ; B 171 90 344 347 ;
+C -1 ; WX 499 ; N arabickaf ; B 36 62 470 668 ;
+C -1 ; WX 703 ; N arabickaffinal ; B 27 17 737 633 ;
+C -1 ; WX 519 ; N arabicpercentsign ; B 65 4 463 697 ;
+C -1 ; WX 314 ; N arabicquestionmark ; B 39 26 282 555 ;
+C -1 ; WX 278 ; N arabicsemicolon ; B 75 26 209 449 ;
+C -1 ; WX 703 ; N beh ; B 38 -108 673 426 ;
+C -1 ; WX 721 ; N behfinal ; B 45 -149 755 350 ;
+C -1 ; WX 185 ; N behinitial ; B 0 -86 153 362 ;
+C -1 ; WX 703 ; N behisolated ; B 38 -108 673 426 ;
+C -1 ; WX 205 ; N behmedial ; B 0 -86 239 225 ;
+C -1 ; WX 592 ; N behwithalefmaksurafinal ; B 27 -198 626 239 ;
+C -1 ; WX 519 ; N behwithalefmaksuraisolated ; B 30 -257 499 400 ;
+C -1 ; WX 443 ; N behwithhahinitial ; B 0 -11 435 538 ;
+C -1 ; WX 369 ; N behwithhehinitial ; B 0 -58 353 527 ;
+C -1 ; WX 443 ; N behwithjeeminitial ; B 0 -89 435 538 ;
+C -1 ; WX 443 ; N behwithkhahinitial ; B 0 -11 435 538 ;
+C -1 ; WX 333 ; N behwithmeeminitial ; B 0 -108 323 468 ;
+C -1 ; WX 443 ; N behwithmeemisolated ; B 26 -308 414 386 ;
+C -1 ; WX 592 ; N behwithnoonfinal ; B 20 -156 626 417 ;
+C -1 ; WX 510 ; N behwithrehfinal ; B 0 -183 544 312 ;
+C -1 ; WX 592 ; N behwithyehfinal ; B 27 -305 626 239 ;
+C -1 ; WX 519 ; N behwithyehisolated ; B 30 -312 499 400 ;
+C -1 ; WX 333 ; N caron ; B 10 540 322 729 ;
+C -1 ; WX 832 ; N dad ; B 14 -194 798 478 ;
+C -1 ; WX 850 ; N dadfinal ; B 14 -194 884 478 ;
+C -1 ; WX 609 ; N dadinitial ; B 0 8 579 478 ;
+C -1 ; WX 832 ; N dadisolated ; B 14 -194 798 478 ;
+C -1 ; WX 627 ; N dadmedial ; B 0 9 662 478 ;
+C -1 ; WX 352 ; N dal ; B 39 57 317 461 ;
+C -1 ; WX 407 ; N dalfinal ; B 35 63 437 506 ;
+C -1 ; WX 352 ; N dalisolated ; B 39 57 317 461 ;
+C -1 ; WX 202 ; N damma ; B 34 729 202 938 ;
+C -1 ; WX 202 ; N dammaisolated ; B 34 729 202 938 ;
+C -1 ; WX 202 ; N dammalow ; B 34 510 202 720 ;
+C -1 ; WX 627 ; N dammamedial ; B 0 63 662 720 ;
+C -1 ; WX 205 ; N dammaonhamza ; B 20 490 193 849 ;
+C -1 ; WX 229 ; N dammatan ; B 34 720 229 920 ;
+C -1 ; WX 229 ; N dammatanisolated ; B 34 720 229 920 ;
+C -1 ; WX 229 ; N dammatanlow ; B 34 501 229 702 ;
+C -1 ; WX 205 ; N dammatanonhamza ; B 4 490 203 841 ;
+C -1 ; WX 292 ; N dotlessi ; B 15 63 265 493 ;
+C -1 ; WX 519 ; N extendedarabicindicdigiteight ; B 68 9 462 561 ;
+C -1 ; WX 519 ; N extendedarabicindicdigitfive ; B 75 20 443 569 ;
+C -1 ; WX 519 ; N extendedarabicindicdigitfour ; B 68 8 453 583 ;
+C -1 ; WX 519 ; N extendedarabicindicdigitnine ; B 98 6 417 569 ;
+C -1 ; WX 519 ; N extendedarabicindicdigitone ; B 144 8 342 569 ;
+C -1 ; WX 519 ; N extendedarabicindicdigitseven ; B 57 12 453 563 ;
+C -1 ; WX 518 ; N extendedarabicindicdigitsix ; B 102 8 443 560 ;
+C -1 ; WX 519 ; N extendedarabicindicdigitthree ; B 53 8 458 563 ;
+C -1 ; WX 519 ; N extendedarabicindicdigittwo ; B 99 8 389 562 ;
+C -1 ; WX 519 ; N extendedarabicindicdigitzero ; B 171 90 344 347 ;
+C -1 ; WX 573 ; N farsiyeh ; B 15 -50 538 428 ;
+C -1 ; WX 480 ; N farsiyehfinal ; B 23 -227 515 171 ;
+C -1 ; WX 573 ; N farsiyehisolated ; B 15 -50 538 428 ;
+C -1 ; WX 199 ; N fatha ; B 34 729 199 858 ;
+C -1 ; WX 199 ; N fathaisolated ; B 34 729 199 858 ;
+C -1 ; WX 199 ; N fathalow ; B 34 510 199 640 ;
+C -1 ; WX 627 ; N fathamedial ; B 0 63 662 640 ;
+C -1 ; WX 205 ; N fathaonhamza ; B 34 490 199 752 ;
+C -1 ; WX 199 ; N fathatan ; B 34 729 199 933 ;
+C -1 ; WX 199 ; N fathatanisolated ; B 34 729 199 933 ;
+C -1 ; WX 199 ; N fathatanlow ; B 34 510 199 714 ;
+C -1 ; WX 205 ; N fathatanonhamza ; B 34 490 199 823 ;
+C -1 ; WX 721 ; N feh ; B 38 63 687 702 ;
+C -1 ; WX 739 ; N fehfinal ; B 44 -6 773 590 ;
+C -1 ; WX 240 ; N fehinitial ; B 0 63 216 629 ;
+C -1 ; WX 721 ; N fehisolated ; B 38 63 687 702 ;
+C -1 ; WX 296 ; N fehmedial ; B 0 63 331 590 ;
+C -1 ; WX 537 ; N fehwithalefmaksuraisolated ; B 39 -75 503 629 ;
+C -1 ; WX 537 ; N fehwithyehisolated ; B 39 -234 503 629 ;
+C -1 ; WX 831 ; N gaf ; B 29 17 835 806 ;
+C -1 ; WX 850 ; N gaffinal ; B 27 17 884 884 ;
+C -1 ; WX 443 ; N gafinitial ; B 0 63 453 806 ;
+C -1 ; WX 831 ; N gafisolated ; B 29 17 835 806 ;
+C -1 ; WX 480 ; N gafmedial ; B 0 63 510 884 ;
+C -1 ; WX 537 ; N ghain ; B 14 -306 510 629 ;
+C -1 ; WX 425 ; N ghainfinal ; B 15 -306 504 506 ;
+C -1 ; WX 387 ; N ghaininitial ; B 0 63 367 590 ;
+C -1 ; WX 537 ; N ghainisolated ; B 14 -306 510 629 ;
+C -1 ; WX 296 ; N ghainmedial ; B 0 63 331 506 ;
+C -1 ; WX 555 ; N hah ; B 17 -308 553 333 ;
+C -1 ; WX 537 ; N hahfinal ; B 36 -308 571 333 ;
+C -1 ; WX 480 ; N hahinitial ; B 0 63 447 365 ;
+C -1 ; WX 555 ; N hahisolated ; B 17 -308 553 333 ;
+C -1 ; WX 537 ; N hahmedial ; B 0 63 571 365 ;
+C -1 ; WX 519 ; N hahwithmeeminitial ; B 0 63 502 495 ;
+C -1 ; WX 314 ; N hamza ; B 38 14 300 348 ;
+C -1 ; WX 314 ; N hamzaisolated ; B 38 14 300 348 ;
+C -1 ; WX 278 ; N heh ; B 29 62 248 428 ;
+C -1 ; WX 296 ; N hehfinal ; B 19 63 331 453 ;
+C -1 ; WX 369 ; N hehinitial ; B 0 63 353 426 ;
+C -1 ; WX 278 ; N hehisolated ; B 29 62 248 428 ;
+C -1 ; WX 352 ; N hehmedial ; B 0 -164 386 396 ;
+C -1 ; WX 536 ; N hehwithmeeminitial ; B 0 63 504 653 ;
+C -1 ; WX 168 ; N highhamza ; B 22 637 173 797 ;
+C -1 ; WX 555 ; N jeem ; B 17 -308 553 333 ;
+C -1 ; WX 537 ; N jeemfinal ; B 36 -308 570 333 ;
+C -1 ; WX 480 ; N jeeminitial ; B 0 -44 447 365 ;
+C -1 ; WX 555 ; N jeemisolated ; B 17 -308 553 333 ;
+C -1 ; WX 537 ; N jeemmedial ; B 0 -44 571 365 ;
+C -1 ; WX 519 ; N jeemwithmeeminitial ; B 0 15 502 495 ;
+C -1 ; WX 333 ; N jeh ; B 15 -171 313 588 ;
+C -1 ; WX 352 ; N jehfinal ; B 5 -192 386 527 ;
+C -1 ; WX 333 ; N jehisolated ; B 15 -171 313 588 ;
+C -1 ; WX 443 ; N kafinitial ; B 0 63 453 661 ;
+C -1 ; WX 499 ; N kafisolated ; B 36 62 470 668 ;
+C -1 ; WX 480 ; N kafmedial ; B 0 63 510 739 ;
+C -1 ; WX 199 ; N kasra ; B 34 -438 199 -308 ;
+C -1 ; WX 199 ; N kasraisolated ; B 34 -438 199 -308 ;
+C -1 ; WX 199 ; N kasralow ; B 34 -162 199 -32 ;
+C -1 ; WX 627 ; N kasramedial ; B 0 -162 662 171 ;
+C -1 ; WX 199 ; N kasratan ; B 34 -510 199 -308 ;
+C -1 ; WX 199 ; N kasratanisolated ; B 34 -510 199 -308 ;
+C -1 ; WX 199 ; N kasratanlow ; B 34 -234 199 -32 ;
+C -1 ; WX 831 ; N keheh ; B 29 17 835 661 ;
+C -1 ; WX 850 ; N kehehfinal ; B 27 17 884 739 ;
+C -1 ; WX 443 ; N kehehinitial ; B 0 63 453 661 ;
+C -1 ; WX 831 ; N kehehisolated ; B 29 17 835 661 ;
+C -1 ; WX 480 ; N kehehmedial ; B 0 63 510 739 ;
+C -1 ; WX 555 ; N khah ; B 17 -308 553 506 ;
+C -1 ; WX 537 ; N khahfinal ; B 36 -308 570 506 ;
+C -1 ; WX 480 ; N khahinitial ; B 0 63 447 506 ;
+C -1 ; WX 555 ; N khahisolated ; B 17 -308 553 506 ;
+C -1 ; WX 537 ; N khahmedial ; B 0 63 571 506 ;
+C -1 ; WX 519 ; N khahwithmeeminitial ; B 0 63 502 629 ;
+C -1 ; WX 480 ; N lam ; B 39 -74 433 664 ;
+C -1 ; WX 474 ; N lamfinal ; B 7 -218 508 622 ;
+C -1 ; WX 185 ; N laminitial ; B 0 63 146 654 ;
+C -1 ; WX 480 ; N lamisolated ; B 39 -74 433 664 ;
+C -1 ; WX 244 ; N lammedial ; B 0 63 278 633 ;
+C -1 ; WX 537 ; N lamwithaleffinal ; B 13 3 571 624 ;
+C -1 ; WX 537 ; N lamwithalefhamzaabovefinal ; B 13 3 571 735 ;
+C -1 ; WX 480 ; N lamwithalefhamzaaboveisolatedd ; B 42 1 441 735 ;
+C -1 ; WX 537 ; N lamwithalefhamzabelowfinal ; B 13 -189 571 624 ;
+C -1 ; WX 480 ; N lamwithalefhamzabelowisolated ; B 42 -189 441 609 ;
+C -1 ; WX 480 ; N lamwithalefisolated ; B 42 1 441 609 ;
+C -1 ; WX 608 ; N lamwithalefmaddaabovefinal ; B 0 3 642 700 ;
+C -1 ; WX 480 ; N lamwithalefmaddaaboveisolatedd ; B 0 1 441 700 ;
+C -1 ; WX 519 ; N lamwithalefmaksuraisolated ; B 30 -152 499 658 ;
+C -1 ; WX 519 ; N lamwithhahinitial ; B 0 63 501 658 ;
+C -1 ; WX 573 ; N lamwithhahisolated ; B 20 -308 555 639 ;
+C -1 ; WX 352 ; N lamwithhehinitial ; B 0 63 333 626 ;
+C -1 ; WX 519 ; N lamwithjeeminitial ; B 0 -12 501 658 ;
+C -1 ; WX 573 ; N lamwithjeemisolated ; B 20 -308 555 639 ;
+C -1 ; WX 519 ; N lamwithkhahinitial ; B 0 63 501 658 ;
+C -1 ; WX 573 ; N lamwithkhahisolated ; B 20 -308 555 639 ;
+C -1 ; WX 240 ; N lamwithmeeminitial ; B 0 45 224 650 ;
+C -1 ; WX 314 ; N lamwithmeemisolated ; B 24 -309 287 666 ;
+C -1 ; WX 480 ; N lamwithmeemwithhahinitial ; B 0 63 453 660 ;
+C -1 ; WX 480 ; N lamwithmeemwithjeeminitial ; B 0 -44 453 660 ;
+C -1 ; WX 519 ; N lamwithyehisolated ; B 30 -290 499 658 ;
+C -1 ; WX 22 ; N lefttoright ; B 0 0 148 850 ;
+C -1 ; WX 314 ; N meem ; B 24 -279 305 383 ;
+C -1 ; WX 407 ; N meemfinal ; B 24 -305 441 266 ;
+C -1 ; WX 296 ; N meeminitial ; B 0 63 278 356 ;
+C -1 ; WX 314 ; N meemisolated ; B 24 -279 305 383 ;
+C -1 ; WX 387 ; N meemmedial ; B 0 29 421 308 ;
+C -1 ; WX 462 ; N meemwithhahinitial ; B 0 63 444 543 ;
+C -1 ; WX 462 ; N meemwithjeeminitial ; B 0 -44 444 543 ;
+C -1 ; WX 462 ; N meemwithkhahinitial ; B 0 63 444 543 ;
+C -1 ; WX 333 ; N meemwithmeeminitial ; B 0 54 308 559 ;
+C -1 ; WX 443 ; N noon ; B 38 35 407 566 ;
+C -1 ; WX 462 ; N noonfinal ; B 15 -194 497 339 ;
+C -1 ; WX 185 ; N nooninitial ; B 0 63 153 506 ;
+C -1 ; WX 443 ; N noonisolated ; B 38 35 407 566 ;
+C -1 ; WX 205 ; N noonmedial ; B 0 63 239 389 ;
+C -1 ; WX 592 ; N noonwithalefmaksurafinal ; B 27 -194 626 419 ;
+C -1 ; WX 519 ; N noonwithalefmaksuraisolated ; B 30 -152 499 425 ;
+C -1 ; WX 443 ; N noonwithhahinitial ; B 0 63 435 687 ;
+C -1 ; WX 369 ; N noonwithhehinitial ; B 0 63 353 687 ;
+C -1 ; WX 443 ; N noonwithjeeminitial ; B 0 -89 435 687 ;
+C -1 ; WX 443 ; N noonwithkhahinitial ; B 0 63 435 687 ;
+C -1 ; WX 333 ; N noonwithmeeminitial ; B 0 63 306 629 ;
+C -1 ; WX 443 ; N noonwithmeemisolated ; B 26 -308 414 590 ;
+C -1 ; WX 592 ; N noonwithyehfinal ; B 27 -305 626 419 ;
+C -1 ; WX 519 ; N noonwithyehisolated ; B 30 -312 499 425 ;
+C -1 ; WX 510 ; N noonwithzainfinal ; B 0 -183 544 417 ;
+C -1 ; WX 555 ; N ornateleftparenthesis ; B 27 -306 525 729 ;
+C -1 ; WX 555 ; N ornaterightparenthesis ; B 29 -306 527 729 ;
+C -1 ; WX 703 ; N peh ; B 38 -216 673 426 ;
+C -1 ; WX 721 ; N pehfinal ; B 45 -236 755 350 ;
+C -1 ; WX 185 ; N pehinitial ; B -19 -195 175 362 ;
+C -1 ; WX 703 ; N pehisolated ; B 38 -216 673 426 ;
+C -1 ; WX 205 ; N pehmedial ; B 0 -195 239 225 ;
+C -1 ; WX 369 ; N pehwithhehinitial ; B 0 -167 353 527 ;
+C -1 ; WX 537 ; N qaf ; B 42 -47 500 633 ;
+C -1 ; WX 462 ; N qaffinal ; B 18 -188 497 465 ;
+C -1 ; WX 240 ; N qafinitial ; B 0 63 216 642 ;
+C -1 ; WX 537 ; N qafisolated ; B 42 -47 500 633 ;
+C -1 ; WX 296 ; N qafmedial ; B 0 63 331 592 ;
+C -1 ; WX 755 ; N rayaleflam ; B 24 -93 739 503 ;
+C -1 ; WX 333 ; N reh ; B 15 -171 313 312 ;
+C -1 ; WX 352 ; N rehfinal ; B 5 -192 386 231 ;
+C -1 ; WX 333 ; N rehisolated ; B 15 -171 313 312 ;
+C -1 ; WX 22 ; N righttoleft ; B -126 0 22 850 ;
+C -1 ; WX 813 ; N sad ; B 14 -194 798 383 ;
+C -1 ; WX 850 ; N sadfinal ; B 14 -194 884 387 ;
+C -1 ; WX 609 ; N sadinitial ; B 0 8 579 383 ;
+C -1 ; WX 813 ; N sadisolated ; B 14 -194 798 383 ;
+C -1 ; WX 627 ; N sadmedial ; B 0 9 662 387 ;
+C -1 ; WX 684 ; N seen ; B 14 -194 675 348 ;
+C -1 ; WX 771 ; N seenfinal ; B 8 -194 806 246 ;
+C -1 ; WX 480 ; N seeninitial ; B 0 63 457 348 ;
+C -1 ; WX 684 ; N seenisolated ; B 14 -194 675 348 ;
+C -1 ; WX 557 ; N seenmedial ; B 0 63 591 246 ;
+C -1 ; WX 537 ; N seenwithmeeminitial ; B 0 32 510 528 ;
+C -1 ; WX 208 ; N shadda ; B 34 729 208 890 ;
+C -1 ; WX 208 ; N shaddaisolated ; B 34 729 208 890 ;
+C -1 ; WX 208 ; N shaddalow ; B 34 510 208 672 ;
+C -1 ; WX 627 ; N shaddamedial ; B 0 63 662 672 ;
+C -1 ; WX 213 ; N shaddawithdammaisolated ; B 33 729 213 1023 ;
+C -1 ; WX 208 ; N shaddawithdammaisolatedlow ; B 34 510 208 852 ;
+C -1 ; WX 627 ; N shaddawithdammamedial ; B 0 63 662 852 ;
+C -1 ; WX 236 ; N shaddawithdammatanisolated ; B 34 729 236 1023 ;
+C -1 ; WX 229 ; N shaddawithdammatanisolatedlow ; B 34 510 230 853 ;
+C -1 ; WX 208 ; N shaddawithfathaisolated ; B 33 729 208 935 ;
+C -1 ; WX 208 ; N shaddawithfathaisolatedlow ; B 34 510 208 757 ;
+C -1 ; WX 627 ; N shaddawithfathamedial ; B 0 63 662 757 ;
+C -1 ; WX 208 ; N shaddawithfathatanisolated ; B 33 729 208 992 ;
+C -1 ; WX 208 ; N shaddawithfathatanisolatedlow ; B 34 510 208 831 ;
+C -1 ; WX 208 ; N shaddawithkasraisolated ; B 34 729 208 952 ;
+C -1 ; WX 208 ; N shaddawithkasraisolatedlow ; B 32 510 206 780 ;
+C -1 ; WX 627 ; N shaddawithkasramedial ; B 0 63 662 780 ;
+C -1 ; WX 208 ; N shaddawithkasratanisolated ; B 34 729 208 999 ;
+C -1 ; WX 208 ; N shaddawithkasratanisolatedlow ; B 34 510 208 780 ;
+C -1 ; WX 684 ; N sheen ; B 14 -194 675 542 ;
+C -1 ; WX 771 ; N sheenfinal ; B 8 -194 806 542 ;
+C -1 ; WX 480 ; N sheeninitial ; B 0 63 457 542 ;
+C -1 ; WX 684 ; N sheenisolated ; B 14 -194 675 542 ;
+C -1 ; WX 557 ; N sheenmedial ; B 0 63 591 542 ;
+C -1 ; WX 537 ; N sheenwithmeeminitial ; B 0 32 510 739 ;
+C -1 ; WX 303 ; N smallhighmadda ; B 0 643 303 727 ;
+C -1 ; WX 160 ; N sukun ; B 34 729 160 881 ;
+C -1 ; WX 160 ; N sukunisolated ; B 34 729 160 881 ;
+C -1 ; WX 160 ; N sukunlow ; B 34 510 160 663 ;
+C -1 ; WX 627 ; N sukunmedial ; B 0 63 662 663 ;
+C -1 ; WX 205 ; N sukunonhamza ; B 42 490 193 811 ;
+C -1 ; WX 117 ; N superscriptalef ; B 29 503 87 787 ;
+C -1 ; WX 573 ; N tah ; B 0 63 522 658 ;
+C -1 ; WX 592 ; N tahfinal ; B 14 63 626 658 ;
+C -1 ; WX 425 ; N tahinitial ; B 0 63 394 658 ;
+C -1 ; WX 573 ; N tahisolated ; B 0 63 522 658 ;
+C -1 ; WX 443 ; N tahmedial ; B 0 63 478 658 ;
+C -1 ; WX 627 ; N tatweel ; B 0 63 662 171 ;
+C -1 ; WX 627 ; N tatweelwithfathatanabove ; B 0 63 662 714 ;
+C -1 ; WX 555 ; N tcheh ; B 17 -308 553 333 ;
+C -1 ; WX 537 ; N tchehfinal ; B 36 -308 570 333 ;
+C -1 ; WX 480 ; N tchehinitial ; B 0 -111 447 365 ;
+C -1 ; WX 555 ; N tchehisolated ; B 17 -308 553 333 ;
+C -1 ; WX 537 ; N tchehmedial ; B 0 -165 571 365 ;
+C -1 ; WX 703 ; N teh ; B 38 54 673 489 ;
+C -1 ; WX 721 ; N tehfinal ; B 45 24 755 464 ;
+C -1 ; WX 185 ; N tehinitial ; B 0 63 197 493 ;
+C -1 ; WX 703 ; N tehisolated ; B 38 54 673 489 ;
+C -1 ; WX 278 ; N tehmarbuta ; B 29 62 248 592 ;
+C -1 ; WX 296 ; N tehmarbutafinal ; B 19 63 331 592 ;
+C -1 ; WX 278 ; N tehmarbutaisolated ; B 29 62 248 592 ;
+C -1 ; WX 205 ; N tehmedial ; B 0 63 239 384 ;
+C -1 ; WX 592 ; N tehwithalefmaksurafinal ; B 27 -194 626 417 ;
+C -1 ; WX 443 ; N tehwithhahinitial ; B 0 63 435 700 ;
+C -1 ; WX 369 ; N tehwithhehinitial ; B 0 63 353 687 ;
+C -1 ; WX 443 ; N tehwithjeeminitial ; B 0 -89 435 700 ;
+C -1 ; WX 443 ; N tehwithkhahinitial ; B 0 63 435 700 ;
+C -1 ; WX 333 ; N tehwithmeeminitial ; B 0 63 306 642 ;
+C -1 ; WX 443 ; N tehwithmeemisolated ; B 26 -308 414 592 ;
+C -1 ; WX 592 ; N tehwithnoonfinal ; B 20 -96 626 464 ;
+C -1 ; WX 592 ; N tehwithyehfinal ; B 27 -305 626 417 ;
+C -1 ; WX 519 ; N tehwithyehisolated ; B 30 -312 499 519 ;
+C -1 ; WX 352 ; N thal ; B 39 57 317 608 ;
+C -1 ; WX 407 ; N thalfinal ; B 35 63 437 639 ;
+C -1 ; WX 352 ; N thalisolated ; B 39 57 317 608 ;
+C -1 ; WX 703 ; N theh ; B 38 54 673 587 ;
+C -1 ; WX 721 ; N thehfinal ; B 45 24 755 562 ;
+C -1 ; WX 185 ; N thehinitial ; B 0 63 197 590 ;
+C -1 ; WX 703 ; N thehisolated ; B 38 54 673 587 ;
+C -1 ; WX 205 ; N thehmedial ; B 0 63 239 482 ;
+C -1 ; WX 333 ; N thehwithmeeminitial ; B 0 63 306 739 ;
+C -1 ; WX 443 ; N thehwithmeemisolated ; B 26 -308 414 690 ;
+C -1 ; WX 519 ; N uniE817 ; B 0 -34 503 495 ;
+C -1 ; WX 721 ; N veh ; B 38 63 687 798 ;
+C -1 ; WX 739 ; N vehfinal ; B 44 -6 773 654 ;
+C -1 ; WX 240 ; N vehinitial ; B 0 63 216 735 ;
+C -1 ; WX 721 ; N vehisolated ; B 38 63 687 798 ;
+C -1 ; WX 296 ; N vehmedial ; B 0 63 331 663 ;
+C -1 ; WX 369 ; N waw ; B 5 -162 342 345 ;
+C -1 ; WX 369 ; N wawfinal ; B 6 -180 403 321 ;
+C -1 ; WX 369 ; N wawisolated ; B 5 -162 342 345 ;
+C -1 ; WX 369 ; N wawwithhamzaabove ; B 5 -162 342 552 ;
+C -1 ; WX 369 ; N wawwithhamzaabovefinal ; B 6 -180 404 522 ;
+C -1 ; WX 369 ; N wawwithhamzaaboveisolated ; B 5 -162 342 552 ;
+C -1 ; WX 573 ; N yeh ; B 15 -195 538 428 ;
+C -1 ; WX 480 ; N yehfinal ; B 20 -306 515 171 ;
+C -1 ; WX 185 ; N yehinitial ; B 0 -98 194 362 ;
+C -1 ; WX 573 ; N yehisolated ; B 15 -195 538 428 ;
+C -1 ; WX 205 ; N yehmedial ; B 0 -98 239 225 ;
+C -1 ; WX 592 ; N yehwithalefmaksurafinal ; B 27 -194 711 239 ;
+C -1 ; WX 519 ; N yehwithalefmaksuraisolated ; B 30 -268 513 400 ;
+C -1 ; WX 443 ; N yehwithhahinitial ; B 0 -17 446 538 ;
+C -1 ; WX 573 ; N yehwithhamzaabove ; B 15 -50 538 469 ;
+C -1 ; WX 480 ; N yehwithhamzaabovefinal ; B 23 -227 515 312 ;
+C -1 ; WX 185 ; N yehwithhamzaaboveinitial ; B 0 63 186 552 ;
+C -1 ; WX 573 ; N yehwithhamzaaboveisolated ; B 15 -50 538 469 ;
+C -1 ; WX 205 ; N yehwithhamzaabovemedial ; B 0 63 239 439 ;
+C -1 ; WX 443 ; N yehwithjeeminitial ; B 0 -89 446 538 ;
+C -1 ; WX 443 ; N yehwithkhahinitial ; B 0 -17 446 538 ;
+C -1 ; WX 333 ; N yehwithmeeminitial ; B 0 -113 366 468 ;
+C -1 ; WX 443 ; N yehwithmeemisolated ; B 26 -308 474 386 ;
+C -1 ; WX 592 ; N yehwithnoonfinal ; B 20 -156 626 417 ;
+C -1 ; WX 510 ; N yehwithrehfinal ; B 0 -183 544 312 ;
+C -1 ; WX 573 ; N zah ; B 0 63 522 658 ;
+C -1 ; WX 592 ; N zahfinal ; B 14 63 626 658 ;
+C -1 ; WX 425 ; N zahinitial ; B 0 63 394 658 ;
+C -1 ; WX 573 ; N zahisolated ; B 0 63 522 658 ;
+C -1 ; WX 443 ; N zahmedial ; B 0 63 478 658 ;
+C -1 ; WX 333 ; N zain ; B 15 -171 313 478 ;
+C -1 ; WX 352 ; N zainfinal ; B 5 -192 386 419 ;
+C -1 ; WX 333 ; N zainisolated ; B 15 -171 313 478 ;
+C -1 ; WX 22 ; N zerojoin ; B -56 0 78 850 ;
+C -1 ; WX 22 ; N zeronojoin ; B 0 0 22 795 ;
+C -1 ; WX 0 ; N zerowidthnobreakspace ; B 0 0 0 0 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/trado.afm b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/trado.afm
new file mode 100644
index 0000000000..425879dfe5
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/afm/arabi/microsoft/trado.afm
@@ -0,0 +1,582 @@
+StartFontMetrics 2.0
+Comment Generated by Fontographer 4.1 01-10-2005 at 15:55
+FontName TraditionalArabic
+FullName TraditionalArabic
+FamilyName TraditionalArabic
+Weight Medium
+Notice (Portions \(C\) 1990 Compugraphic Corporation. Typeface Portions \(C\) The Monotype Corporation plc. Data Portions \(C\) The Monotype Corporation plc./Type Solutions Inc. 1990-1992. All Rights Reserved.)
+ItalicAngle 0
+IsFixedPitch false
+UnderlinePosition -366.211
+UnderlineThickness 48.8281
+Version 001.000
+EncodingScheme FontSpecific
+FontBBox -126 -500 1006 994
+CapHeight 685
+XHeight 459
+Descender -170
+Ascender 735
+StartCharMetrics 557
+C 32 ; WX 244 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 277 ; N exclam ; B 96 25 185 558 ;
+C 34 ; WX 277 ; N quotedbl ; B 58 438 220 654 ;
+C 35 ; WX 667 ; N numbersign ; B 45 40 621 729 ;
+C 36 ; WX 458 ; N dollar ; B 25 -39 417 714 ;
+C 37 ; WX 719 ; N percent ; B 22 36 695 716 ;
+C 38 ; WX 729 ; N ampersand ; B 41 48 715 645 ;
+C 39 ; WX 176 ; N quotesingle ; B 40 415 138 700 ;
+C 40 ; WX 277 ; N parenleft ; B 41 -194 256 440 ;
+C 41 ; WX 277 ; N parenright ; B 23 -194 240 440 ;
+C 42 ; WX 332 ; N asterisk ; B 17 386 316 688 ;
+C 43 ; WX 461 ; N plus ; B 51 62 407 421 ;
+C 44 ; WX 277 ; N comma ; B 80 -114 185 114 ;
+C 46 ; WX 277 ; N period ; B 98 25 183 112 ;
+C 47 ; WX 277 ; N slash ; B 32 -67 248 695 ;
+C 48 ; WX 490 ; N zero ; B 36 48 453 700 ;
+C 49 ; WX 490 ; N one ; B 88 62 381 700 ;
+C 50 ; WX 490 ; N two ; B 29 62 449 700 ;
+C 51 ; WX 490 ; N three ; B 34 48 437 700 ;
+C 52 ; WX 490 ; N four ; B 35 48 458 700 ;
+C 53 ; WX 490 ; N five ; B 46 48 428 700 ;
+C 54 ; WX 490 ; N six ; B 44 48 449 700 ;
+C 55 ; WX 490 ; N seven ; B 37 48 439 685 ;
+C 56 ; WX 490 ; N eight ; B 49 48 440 700 ;
+C 57 ; WX 490 ; N nine ; B 41 48 444 700 ;
+C 58 ; WX 277 ; N colon ; B 98 25 183 390 ;
+C 59 ; WX 259 ; N semicolon ; B 67 -84 191 468 ;
+C 60 ; WX 666 ; N less ; B 70 141 595 625 ;
+C 61 ; WX 461 ; N equal ; B 51 176 408 305 ;
+C 62 ; WX 666 ; N greater ; B 71 141 596 625 ;
+C 63 ; WX 354 ; N question ; B 50 50 311 695 ;
+C 64 ; WX 916 ; N at ; B 46 -152 895 757 ;
+C 65 ; WX 676 ; N A ; B 3 62 671 700 ;
+C 66 ; WX 634 ; N B ; B 0 62 582 693 ;
+C 67 ; WX 729 ; N C ; B 51 46 690 700 ;
+C 68 ; WX 759 ; N D ; B 15 62 705 693 ;
+C 69 ; WX 594 ; N E ; B 2 62 549 685 ;
+C 70 ; WX 530 ; N F ; B 42 62 491 685 ;
+C 71 ; WX 740 ; N G ; B 57 46 715 700 ;
+C 72 ; WX 791 ; N H ; B 29 62 763 685 ;
+C 73 ; WX 333 ; N I ; B 44 62 288 685 ;
+C 74 ; WX 301 ; N J ; B -108 -169 272 685 ;
+C 75 ; WX 698 ; N K ; B 19 62 699 685 ;
+C 76 ; WX 551 ; N L ; B 20 62 543 685 ;
+C 77 ; WX 916 ; N M ; B 13 62 895 684 ;
+C 78 ; WX 812 ; N N ; B 29 56 795 685 ;
+C 79 ; WX 823 ; N O ; B 53 46 770 700 ;
+C 80 ; WX 562 ; N P ; B 20 62 526 693 ;
+C 81 ; WX 823 ; N Q ; B 53 -145 800 700 ;
+C 82 ; WX 801 ; N R ; B 19 50 795 693 ;
+C 83 ; WX 490 ; N S ; B 43 46 444 700 ;
+C 84 ; WX 676 ; N T ; B 32 62 645 700 ;
+C 85 ; WX 791 ; N U ; B 18 46 779 685 ;
+C 86 ; WX 687 ; N V ; B 3 46 678 685 ;
+C 87 ; WX 1000 ; N W ; B 0 46 993 685 ;
+C 88 ; WX 750 ; N X ; B 8 62 747 685 ;
+C 89 ; WX 708 ; N Y ; B -1 62 687 685 ;
+C 90 ; WX 676 ; N Z ; B 40 62 628 685 ;
+C 91 ; WX 301 ; N bracketleft ; B 102 -150 294 714 ;
+C 92 ; WX 458 ; N backslash ; B 45 48 412 700 ;
+C 93 ; WX 301 ; N bracketright ; B 6 -150 200 714 ;
+C 94 ; WX 469 ; N asciicircum ; B 18 384 451 734 ;
+C 95 ; WX 500 ; N underscore ; B -7 -62 507 -12 ;
+C 96 ; WX 333 ; N grave ; B 69 550 256 722 ;
+C 97 ; WX 395 ; N a ; B 36 50 390 470 ;
+C 98 ; WX 500 ; N b ; B 5 50 457 734 ;
+C 99 ; WX 426 ; N c ; B 45 50 391 470 ;
+C 100 ; WX 500 ; N d ; B 42 50 498 734 ;
+C 101 ; WX 437 ; N e ; B 47 50 405 470 ;
+C 102 ; WX 270 ; N f ; B 16 62 412 734 ;
+C 103 ; WX 469 ; N g ; B 35 -169 472 470 ;
+C 104 ; WX 520 ; N h ; B 24 62 506 734 ;
+C 105 ; WX 259 ; N i ; B 18 62 240 700 ;
+C 106 ; WX 250 ; N j ; B -104 -169 168 700 ;
+C 107 ; WX 500 ; N k ; B 21 62 496 734 ;
+C 108 ; WX 240 ; N l ; B 5 62 230 734 ;
+C 109 ; WX 791 ; N m ; B 20 62 791 470 ;
+C 110 ; WX 520 ; N n ; B 25 62 508 470 ;
+C 111 ; WX 520 ; N o ; B 44 50 476 470 ;
+C 112 ; WX 500 ; N p ; B 5 -169 453 489 ;
+C 113 ; WX 500 ; N q ; B 45 -169 496 470 ;
+C 114 ; WX 333 ; N r ; B 25 62 342 468 ;
+C 115 ; WX 301 ; N s ; B 32 50 270 470 ;
+C 116 ; WX 291 ; N t ; B 28 50 285 558 ;
+C 117 ; WX 520 ; N u ; B 24 50 497 468 ;
+C 118 ; WX 479 ; N v ; B 6 54 473 458 ;
+C 119 ; WX 740 ; N w ; B 7 54 735 458 ;
+C 120 ; WX 490 ; N x ; B 7 62 483 458 ;
+C 121 ; WX 469 ; N y ; B -4 -169 463 458 ;
+C 122 ; WX 405 ; N z ; B 30 62 394 485 ;
+C 123 ; WX 479 ; N braceleft ; B 103 -169 375 734 ;
+C 124 ; WX 509 ; N bar ; B 233 -169 276 700 ;
+C 125 ; WX 479 ; N braceright ; B 104 -169 375 734 ;
+C 126 ; WX 541 ; N asciitilde ; B 6 300 535 450 ;
+C 161 ; WX 277 ; N exclamdown ; B 96 -8 185 523 ;
+C 162 ; WX 426 ; N cent ; B 45 -104 391 596 ;
+C 163 ; WX 759 ; N sterling ; B 14 -157 735 723 ;
+C 164 ; WX 666 ; N currency ; B 104 154 562 611 ;
+C 165 ; WX 500 ; N yen ; B -105 62 583 685 ;
+C 166 ; WX 509 ; N brokenbar ; B 233 -169 276 700 ;
+C 167 ; WX 469 ; N section ; B 51 -158 416 723 ;
+C 168 ; WX 333 ; N dieresis ; B 25 578 308 666 ;
+C 169 ; WX 759 ; N copyright ; B 34 47 726 739 ;
+C 170 ; WX 259 ; N ordfeminine ; B 20 446 258 700 ;
+C 171 ; WX 407 ; N guillemotleft ; B 41 4 379 392 ;
+C 172 ; WX 666 ; N logicalnot ; B 70 243 596 524 ;
+C 174 ; WX 759 ; N registered ; B 34 47 726 739 ;
+C 176 ; WX 395 ; N degree ; B 47 401 348 702 ;
+C 177 ; WX 461 ; N plusminus ; B 51 85 407 484 ;
+C 178 ; WX 301 ; N twosuperior ; B 22 369 282 700 ;
+C 179 ; WX 301 ; N threesuperior ; B 32 361 282 700 ;
+C 180 ; WX 333 ; N acute ; B 69 550 256 722 ;
+C 182 ; WX 448 ; N paragraph ; B -6 -169 454 685 ;
+C 184 ; WX 333 ; N cedilla ; B 102 -145 240 67 ;
+C 185 ; WX 301 ; N onesuperior ; B 53 369 237 700 ;
+C 186 ; WX 344 ; N ordmasculine ; B 25 446 313 700 ;
+C 187 ; WX 407 ; N guillemotright ; B 32 4 372 392 ;
+C 188 ; WX 719 ; N onequarter ; B 53 36 625 716 ;
+C 189 ; WX 719 ; N onehalf ; B 53 36 663 716 ;
+C 190 ; WX 719 ; N threequarters ; B 26 36 643 716 ;
+C 191 ; WX 354 ; N questiondown ; B 42 -169 303 475 ;
+C 192 ; WX 676 ; N Agrave ; B 3 62 671 935 ;
+C 215 ; WX 461 ; N multiply ; B 63 79 391 405 ;
+C 224 ; WX 395 ; N agrave ; B 36 50 390 722 ;
+C 226 ; WX 395 ; N acircumflex ; B 36 50 390 746 ;
+C 231 ; WX 426 ; N ccedilla ; B 45 -145 391 470 ;
+C 232 ; WX 437 ; N egrave ; B 47 50 405 722 ;
+C 233 ; WX 437 ; N eacute ; B 47 50 405 722 ;
+C 234 ; WX 437 ; N ecircumflex ; B 47 50 405 746 ;
+C 235 ; WX 437 ; N edieresis ; B 47 50 405 666 ;
+C 238 ; WX 259 ; N icircumflex ; B -6 62 240 746 ;
+C 239 ; WX 259 ; N idieresis ; B -17 62 265 666 ;
+C 244 ; WX 520 ; N ocircumflex ; B 44 50 476 746 ;
+C 247 ; WX 461 ; N divide ; B 51 62 407 417 ;
+C 249 ; WX 520 ; N ugrave ; B 24 50 497 722 ;
+C 251 ; WX 520 ; N ucircumflex ; B 24 50 497 746 ;
+C 252 ; WX 520 ; N udieresis ; B 24 50 497 666 ;
+C 255 ; WX 469 ; N ydieresis ; B -4 -169 463 666 ;
+C -1 ; WX 259 ; N dotlessi ; B 18 62 240 475 ;
+C -1 ; WX 990 ; N OE ; B 57 55 942 691 ;
+C -1 ; WX 740 ; N oe ; B 45 50 708 470 ;
+C -1 ; WX 490 ; N Scaron ; B 43 46 444 957 ;
+C -1 ; WX 301 ; N scaron ; B 20 50 270 746 ;
+C -1 ; WX 708 ; N Ydieresis ; B -1 62 687 878 ;
+C -1 ; WX 500 ; N florin ; B -111 -169 498 735 ;
+C -1 ; WX 333 ; N circumflex ; B 45 548 288 746 ;
+C -1 ; WX 333 ; N caron ; B 44 548 287 746 ;
+C -1 ; WX 333 ; N macron ; B 28 593 304 651 ;
+C -1 ; WX 500 ; N endash ; B -5 290 505 333 ;
+C -1 ; WX 259 ; N quoteleft ; B 67 493 191 723 ;
+C -1 ; WX 259 ; N quoteright ; B 67 493 191 723 ;
+C -1 ; WX 259 ; N quotesinglbase ; B 67 -84 191 145 ;
+C -1 ; WX 479 ; N quotedblleft ; B 60 493 411 723 ;
+C -1 ; WX 479 ; N quotedblright ; B 67 493 418 723 ;
+C -1 ; WX 479 ; N quotedblbase ; B 67 -84 418 145 ;
+C -1 ; WX 500 ; N dagger ; B 26 -151 474 712 ;
+C -1 ; WX 520 ; N daggerdbl ; B 37 -148 483 712 ;
+C -1 ; WX 354 ; N bullet ; B 55 251 299 497 ;
+C -1 ; WX 1000 ; N ellipsis ; B 116 50 883 145 ;
+C -1 ; WX 1000 ; N perthousand ; B 16 36 982 716 ;
+C -1 ; WX 229 ; N guilsinglleft ; B 34 98 199 465 ;
+C -1 ; WX 229 ; N guilsinglright ; B 29 98 194 465 ;
+C -1 ; WX 979 ; N trademark ; B 15 331 963 725 ;
+C -1 ; WX 259 ; N periodcentered ; B 79 338 181 433 ;
+C -1 ; WX 781 ; N delete ; B 42 62 742 349 ;
+C -1 ; WX 244 ; N nbspace ; B 0 0 0 0 ;
+C -1 ; WX 666 ; N sfthyphen ; B 70 360 596 404 ;
+C -1 ; WX 461 ; N hyphenminus ; B 51 220 407 261 ;
+C -1 ; WX 277 ; N ch161 ; B 96 25 185 558 ;
+C -1 ; WX 277 ; N ch162 ; B 58 438 220 654 ;
+C -1 ; WX 667 ; N ch163 ; B 45 40 621 729 ;
+C -1 ; WX 458 ; N ch164 ; B 25 -39 417 714 ;
+C -1 ; WX 719 ; N ch165 ; B 22 36 695 716 ;
+C -1 ; WX 729 ; N ch166 ; B 41 48 715 645 ;
+C -1 ; WX 176 ; N ch167 ; B 40 415 138 700 ;
+C -1 ; WX 277 ; N ch168 ; B 41 -194 256 440 ;
+C -1 ; WX 277 ; N ch169 ; B 23 -194 240 440 ;
+C -1 ; WX 461 ; N ch171 ; B 51 62 407 421 ;
+C -1 ; WX 277 ; N arabiccomma ; B 77 26 208 306 ;
+C -1 ; WX 461 ; N ch173 ; B 51 220 407 261 ;
+C -1 ; WX 277 ; N ch174 ; B 98 25 183 112 ;
+C -1 ; WX 277 ; N ch175 ; B 32 -67 248 695 ;
+C -1 ; WX 461 ; N arabicindicdigitone ; B 143 -7 288 487 ;
+C -1 ; WX 461 ; N arabicindicdigittwo ; B 96 -4 344 485 ;
+C -1 ; WX 461 ; N arabicindicdigitthree ; B 62 0 414 488 ;
+C -1 ; WX 461 ; N arabicindicdigitfour ; B 133 -2 355 492 ;
+C -1 ; WX 461 ; N arabicindicdigitfive ; B 98 98 368 389 ;
+C -1 ; WX 461 ; N arabicindicdigitsix ; B 92 8 371 476 ;
+C -1 ; WX 461 ; N arabicindicdigitseven ; B 64 5 403 477 ;
+C -1 ; WX 461 ; N arabicindicdigiteight ; B 64 0 403 471 ;
+C -1 ; WX 461 ; N arabicindicdigitnine ; B 106 -17 369 481 ;
+C -1 ; WX 277 ; N ch186 ; B 98 25 183 390 ;
+C -1 ; WX 259 ; N ch187 ; B 67 -84 191 468 ;
+C -1 ; WX 666 ; N ch188 ; B 70 141 595 625 ;
+C -1 ; WX 461 ; N ch189 ; B 51 176 408 305 ;
+C -1 ; WX 666 ; N ch190 ; B 71 141 596 625 ;
+C -1 ; WX 313 ; N arabicquestionmark ; B 39 25 282 554 ;
+C -1 ; WX 332 ; N ch192 ; B 17 386 316 688 ;
+C -1 ; WX 277 ; N hamza ; B 14 -14 245 274 ;
+C -1 ; WX 233 ; N alefwithmaddaabove ; B 0 62 239 620 ;
+C -1 ; WX 167 ; N alefwithhamzaabove ; B 21 62 173 704 ;
+C -1 ; WX 351 ; N wawwithhamzaabove ; B 18 -169 324 478 ;
+C -1 ; WX 167 ; N alefwithhamzabelow ; B 9 -136 161 541 ;
+C -1 ; WX 571 ; N yehwithhamzaabove ; B 28 -62 533 478 ;
+C -1 ; WX 146 ; N arabicalef ; B 45 62 110 541 ;
+C -1 ; WX 683 ; N beh ; B 41 -91 642 326 ;
+C -1 ; WX 257 ; N tehmarbuta ; B 41 53 224 533 ;
+C -1 ; WX 683 ; N teh ; B 41 41 642 376 ;
+C -1 ; WX 683 ; N theh ; B 41 41 642 465 ;
+C -1 ; WX 536 ; N jeem ; B 20 -309 505 266 ;
+C -1 ; WX 536 ; N hah ; B 20 -309 505 266 ;
+C -1 ; WX 536 ; N khah ; B 20 -309 505 435 ;
+C -1 ; WX 313 ; N dal ; B 41 57 280 365 ;
+C -1 ; WX 313 ; N thal ; B 41 57 280 541 ;
+C -1 ; WX 332 ; N reh ; B 5 -141 296 236 ;
+C -1 ; WX 332 ; N zain ; B 5 -141 296 419 ;
+C -1 ; WX 638 ; N seen ; B 17 -190 635 261 ;
+C -1 ; WX 640 ; N sheen ; B 17 -190 635 459 ;
+C -1 ; WX 796 ; N sad ; B 17 -190 791 306 ;
+C -1 ; WX 807 ; N dad ; B 17 -190 791 458 ;
+C -1 ; WX 554 ; N tah ; B 12 59 519 597 ;
+C -1 ; WX 554 ; N zah ; B 12 59 519 597 ;
+C -1 ; WX 518 ; N ain ; B 23 -309 502 386 ;
+C -1 ; WX 518 ; N ghain ; B 23 -309 502 560 ;
+C -1 ; WX 301 ; N ch219 ; B 6 -150 200 714 ;
+C -1 ; WX 458 ; N ch220 ; B 45 48 412 700 ;
+C -1 ; WX 301 ; N ch221 ; B 102 -150 294 714 ;
+C -1 ; WX 500 ; N ch223 ; B -7 -62 507 -12 ;
+C -1 ; WX 461 ; N ch224 ; B 51 220 407 261 ;
+C -1 ; WX 737 ; N feh ; B 46 53 695 582 ;
+C -1 ; WX 518 ; N qaf ; B 59 -25 474 530 ;
+C -1 ; WX 479 ; N arabickaf ; B 43 54 440 611 ;
+C -1 ; WX 442 ; N lam ; B 41 -62 386 618 ;
+C -1 ; WX 295 ; N meem ; B 35 -267 270 312 ;
+C -1 ; WX 424 ; N noon ; B 49 17 382 500 ;
+C -1 ; WX 257 ; N heh ; B 41 53 224 317 ;
+C -1 ; WX 351 ; N waw ; B 18 -169 324 285 ;
+C -1 ; WX 571 ; N alefmaksura ; B 28 -62 533 379 ;
+C -1 ; WX 571 ; N yeh ; B 28 -186 533 379 ;
+C -1 ; WX 199 ; N fathatan ; B 34 708 199 905 ;
+C -1 ; WX 226 ; N dammatan ; B 31 701 226 901 ;
+C -1 ; WX 199 ; N kasratan ; B 34 -500 199 -302 ;
+C -1 ; WX 199 ; N fatha ; B 34 708 199 833 ;
+C -1 ; WX 202 ; N damma ; B 34 708 202 916 ;
+C -1 ; WX 199 ; N kasra ; B 34 -428 199 -302 ;
+C -1 ; WX 205 ; N shadda ; B 32 708 205 868 ;
+C -1 ; WX 162 ; N sukun ; B 36 708 162 860 ;
+C -1 ; WX 683 ; N peh ; B 41 -197 642 326 ;
+C -1 ; WX 536 ; N tcheh ; B 20 -309 505 266 ;
+C -1 ; WX 257 ; N ch246 ; B 41 53 224 317 ;
+C -1 ; WX 737 ; N veh ; B 46 53 695 645 ;
+C -1 ; WX 831 ; N gaf ; B 19 -2 833 733 ;
+C -1 ; WX 479 ; N ch251 ; B 104 -169 375 734 ;
+C -1 ; WX 509 ; N ch252 ; B 233 -169 276 700 ;
+C -1 ; WX 479 ; N ch253 ; B 103 -169 375 734 ;
+C -1 ; WX 332 ; N jeh ; B 5 -141 312 502 ;
+C -1 ; WX 500 ; N micro ; B 26 -152 496 458 ;
+C -1 ; WX 277 ; N arabicsemicolon ; B 77 25 208 446 ;
+C -1 ; WX 626 ; N tatweel ; B 0 62 661 122 ;
+C -1 ; WX 461 ; N arabicindicdigitzero ; B 175 104 288 272 ;
+C -1 ; WX 461 ; N arabicpercentsign ; B 57 -64 407 582 ;
+C -1 ; WX 397 ; N arabicfivepointedstar ; B 24 375 373 708 ;
+C -1 ; WX 116 ; N superscriptalef ; B 34 502 83 790 ;
+C -1 ; WX 196 ; N alefwasla ; B 0 62 196 691 ;
+C -1 ; WX 167 ; N highhamza ; B 21 636 173 797 ;
+C -1 ; WX 831 ; N keheh ; B 19 -2 833 607 ;
+C -1 ; WX 571 ; N farsiyeh ; B 28 -62 533 379 ;
+C -1 ; WX 257 ; N arabicae ; B 41 53 224 317 ;
+C -1 ; WX 234 ; N smallhighmadda ; B 0 640 239 698 ;
+C -1 ; WX 461 ; N extendedarabicindicdigitzero ; B 175 104 288 272 ;
+C -1 ; WX 461 ; N extendedarabicindicdigitone ; B 143 -7 288 487 ;
+C -1 ; WX 461 ; N extendedarabicindicdigittwo ; B 96 -4 344 485 ;
+C -1 ; WX 461 ; N extendedarabicindicdigitthree ; B 62 0 414 488 ;
+C -1 ; WX 461 ; N extendedarabicindicdigitfour ; B 81 -4 392 499 ;
+C -1 ; WX 461 ; N extendedarabicindicdigitfive ; B 83 7 397 485 ;
+C -1 ; WX 461 ; N extendedarabicindicdigitsix ; B 101 -13 410 485 ;
+C -1 ; WX 461 ; N extendedarabicindicdigitseven ; B 64 5 403 477 ;
+C -1 ; WX 461 ; N extendedarabicindicdigiteight ; B 64 0 403 471 ;
+C -1 ; WX 461 ; N extendedarabicindicdigitnine ; B 106 -17 369 481 ;
+C -1 ; WX 21 ; N zeronojoin ; B 0 0 21 794 ;
+C -1 ; WX 21 ; N zerojoin ; B -55 0 78 849 ;
+C -1 ; WX 21 ; N lefttoright ; B 0 0 147 850 ;
+C -1 ; WX 21 ; N righttoleft ; B -125 0 21 850 ;
+C -1 ; WX 1000 ; N quotedash ; B -5 290 1005 333 ;
+C -1 ; WX 199 ; N fathalow ; B 34 502 199 628 ;
+C -1 ; WX 202 ; N dammalow ; B 34 502 202 710 ;
+C -1 ; WX 162 ; N sukunlow ; B 36 502 162 655 ;
+C -1 ; WX 199 ; N fathatanlow ; B 34 502 199 700 ;
+C -1 ; WX 226 ; N dammatanlow ; B 31 495 226 694 ;
+C -1 ; WX 205 ; N shaddalow ; B 32 502 205 663 ;
+C -1 ; WX 199 ; N kasralow ; B 34 -160 199 -34 ;
+C -1 ; WX 199 ; N kasratanlow ; B 34 -232 199 -34 ;
+C -1 ; WX 205 ; N shaddawithfathaisolatedlow ; B 32 502 205 757 ;
+C -1 ; WX 205 ; N shaddawithdammaisolatedlow ; B 32 502 205 848 ;
+C -1 ; WX 205 ; N shaddawithfathatanisolatedlow ; B 32 502 205 823 ;
+C -1 ; WX 229 ; N shaddawithdammatanisolatedlow ; B 34 502 229 841 ;
+C -1 ; WX 205 ; N shaddawithkasraisolatedlow ; B 32 502 205 774 ;
+C -1 ; WX 479 ; N lamwithmeemwithjeeminitial ; B 0 33 449 617 ;
+C -1 ; WX 369 ; N behwithhehinitial ; B 0 -20 344 462 ;
+C -1 ; WX 369 ; N pehwithhehinitial ; B 0 -121 345 462 ;
+C -1 ; WX 369 ; N tehwithhehinitial ; B 0 62 344 597 ;
+C -1 ; WX 369 ; N noonwithhehinitial ; B 0 62 344 602 ;
+C -1 ; WX 736 ; N rayaleflam ; B 28 -59 711 472 ;
+C -1 ; WX 608 ; N glyph278 ; B 0 -34 583 400 ;
+C -1 ; WX 202 ; N shaddawithfathatanisolated ; B 29 708 202 954 ;
+C -1 ; WX 205 ; N shaddawithkasratanisolatedlow ; B 32 502 205 789 ;
+C -1 ; WX 205 ; N fathaonhamza ; B 31 681 207 910 ;
+C -1 ; WX 205 ; N fathatanonhamza ; B 31 681 207 963 ;
+C -1 ; WX 205 ; N sukunonhamza ; B 52 681 207 989 ;
+C -1 ; WX 205 ; N dammaonhamza ; B 31 681 212 985 ;
+C -1 ; WX 205 ; N dammatanonhamza ; B 34 681 235 989 ;
+C -1 ; WX 196 ; N alefwaslaisolated ; B 0 62 196 691 ;
+C -1 ; WX 218 ; N alefwaslafinal ; B 0 62 252 691 ;
+C -1 ; WX 683 ; N pehisolated ; B 41 -197 642 326 ;
+C -1 ; WX 702 ; N pehfinal ; B 44 -207 736 275 ;
+C -1 ; WX 185 ; N pehinitial ; B 0 -177 163 290 ;
+C -1 ; WX 185 ; N pehmedial ; B 0 -197 219 190 ;
+C -1 ; WX 737 ; N vehisolated ; B 46 53 695 645 ;
+C -1 ; WX 737 ; N vehfinal ; B 46 -5 771 541 ;
+C -1 ; WX 222 ; N vehinitial ; B 0 62 203 585 ;
+C -1 ; WX 295 ; N vehmedial ; B 0 62 330 541 ;
+C -1 ; WX 536 ; N tchehisolated ; B 20 -309 505 266 ;
+C -1 ; WX 498 ; N tchehfinal ; B 20 -308 527 264 ;
+C -1 ; WX 498 ; N tchehinitial ; B 0 -126 455 291 ;
+C -1 ; WX 536 ; N tchehmedial ; B 0 -126 570 293 ;
+C -1 ; WX 332 ; N jehisolated ; B 5 -141 312 502 ;
+C -1 ; WX 313 ; N jehfinal ; B 8 -158 348 416 ;
+C -1 ; WX 831 ; N kehehisolated ; B 19 -2 833 607 ;
+C -1 ; WX 810 ; N kehehfinal ; B 19 -2 844 692 ;
+C -1 ; WX 461 ; N kehehinitial ; B 0 62 466 607 ;
+C -1 ; WX 479 ; N kehehmedial ; B 0 62 509 692 ;
+C -1 ; WX 831 ; N gafisolated ; B 19 -2 833 733 ;
+C -1 ; WX 810 ; N gaffinal ; B 19 -2 844 827 ;
+C -1 ; WX 461 ; N gafinitial ; B 0 62 466 733 ;
+C -1 ; WX 479 ; N gafmedial ; B 0 62 509 815 ;
+C -1 ; WX 571 ; N farsiyehisolated ; B 28 -62 533 379 ;
+C -1 ; WX 479 ; N farsiyehfinal ; B 43 -212 509 122 ;
+C -1 ; WX 424 ; N behwithmeemisolated ; B 35 -280 392 350 ;
+C -1 ; WX 536 ; N behwithalefmaksuraisolated ; B 54 -213 505 351 ;
+C -1 ; WX 536 ; N behwithyehisolated ; B 54 -271 505 351 ;
+C -1 ; WX 424 ; N tehwithmeemisolated ; B 35 -280 397 525 ;
+C -1 ; WX 536 ; N tehwithyehisolated ; B 54 -271 505 456 ;
+C -1 ; WX 424 ; N thehwithmeemisolated ; B 35 -280 398 613 ;
+C -1 ; WX 536 ; N fehwithalefmaksuraisolated ; B 50 -83 488 510 ;
+C -1 ; WX 536 ; N fehwithyehisolated ; B 50 -207 488 510 ;
+C -1 ; WX 518 ; N lamwithjeemisolated ; B 18 -305 500 604 ;
+C -1 ; WX 518 ; N lamwithhahisolated ; B 18 -305 500 604 ;
+C -1 ; WX 518 ; N lamwithkhahisolated ; B 18 -305 500 604 ;
+C -1 ; WX 442 ; N lamwithmeemisolated ; B 35 -305 287 611 ;
+C -1 ; WX 536 ; N lamwithalefmaksuraisolated ; B 54 -137 505 599 ;
+C -1 ; WX 536 ; N lamwithyehisolated ; B 54 -263 505 599 ;
+C -1 ; WX 424 ; N noonwithmeemisolated ; B 35 -280 392 507 ;
+C -1 ; WX 536 ; N noonwithalefmaksuraisolated ; B 54 -137 505 385 ;
+C -1 ; WX 536 ; N noonwithyehisolated ; B 54 -271 505 385 ;
+C -1 ; WX 424 ; N yehwithmeemisolated ; B 35 -280 457 350 ;
+C -1 ; WX 536 ; N yehwithalefmaksuraisolated ; B 54 -216 524 351 ;
+C -1 ; WX 235 ; N shaddawithdammatanisolated ; B 34 708 235 989 ;
+C -1 ; WX 205 ; N shaddawithkasratanisolated ; B 32 708 205 994 ;
+C -1 ; WX 202 ; N shaddawithfathaisolated ; B 29 708 202 900 ;
+C -1 ; WX 207 ; N shaddawithdammaisolated ; B 28 708 207 985 ;
+C -1 ; WX 205 ; N shaddawithkasraisolated ; B 32 708 205 940 ;
+C -1 ; WX 461 ; N behwithrehfinal ; B 4 -138 496 257 ;
+C -1 ; WX 608 ; N behwithnoonfinal ; B 30 -89 643 389 ;
+C -1 ; WX 536 ; N behwithalefmaksurafinal ; B 3 -194 616 186 ;
+C -1 ; WX 536 ; N behwithyehfinal ; B 3 -308 616 186 ;
+C -1 ; WX 608 ; N tehwithnoonfinal ; B 30 -86 643 407 ;
+C -1 ; WX 536 ; N tehwithalefmaksurafinal ; B 3 -194 570 371 ;
+C -1 ; WX 536 ; N tehwithyehfinal ; B 3 -308 570 371 ;
+C -1 ; WX 461 ; N noonwithzainfinal ; B 4 -138 496 373 ;
+C -1 ; WX 536 ; N noonwithalefmaksurafinal ; B 3 -194 570 334 ;
+C -1 ; WX 536 ; N noonwithyehfinal ; B 3 -308 570 334 ;
+C -1 ; WX 461 ; N yehwithrehfinal ; B 4 -138 496 257 ;
+C -1 ; WX 608 ; N yehwithnoonfinal ; B 30 -102 643 389 ;
+C -1 ; WX 536 ; N yehwithalefmaksurafinal ; B 3 -194 691 186 ;
+C -1 ; WX 461 ; N behwithjeeminitial ; B 0 2 440 479 ;
+C -1 ; WX 461 ; N behwithhahinitial ; B 0 2 440 479 ;
+C -1 ; WX 461 ; N behwithkhahinitial ; B 0 2 440 479 ;
+C -1 ; WX 313 ; N behwithmeeminitial ; B 0 2 383 416 ;
+C -1 ; WX 461 ; N tehwithjeeminitial ; B 0 2 440 646 ;
+C -1 ; WX 461 ; N tehwithhahinitial ; B 0 62 440 646 ;
+C -1 ; WX 461 ; N tehwithkhahinitial ; B 0 62 440 646 ;
+C -1 ; WX 313 ; N tehwithmeeminitial ; B 0 62 287 543 ;
+C -1 ; WX 313 ; N thehwithmeeminitial ; B 0 62 290 614 ;
+C -1 ; WX 608 ; N jeemwithmeeminitial ; B 0 2 583 400 ;
+C -1 ; WX 608 ; N hahwithmeeminitial ; B 0 62 583 400 ;
+C -1 ; WX 608 ; N khahwithmeeminitial ; B 0 62 583 507 ;
+C -1 ; WX 536 ; N seenwithmeeminitial ; B 0 57 503 428 ;
+C -1 ; WX 518 ; N lamwithjeeminitial ; B 0 2 499 611 ;
+C -1 ; WX 518 ; N lamwithhahinitial ; B 0 62 499 611 ;
+C -1 ; WX 518 ; N lamwithkhahinitial ; B 0 62 499 611 ;
+C -1 ; WX 257 ; N lamwithmeeminitial ; B 0 50 239 610 ;
+C -1 ; WX 351 ; N lamwithhehinitial ; B 0 62 323 578 ;
+C -1 ; WX 461 ; N meemwithjeeminitial ; B 0 2 440 453 ;
+C -1 ; WX 461 ; N meemwithhahinitial ; B 0 62 440 453 ;
+C -1 ; WX 461 ; N meemwithkhahinitial ; B 0 62 440 453 ;
+C -1 ; WX 351 ; N meemwithmeeminitial ; B 0 57 334 470 ;
+C -1 ; WX 461 ; N noonwithjeeminitial ; B 0 2 440 641 ;
+C -1 ; WX 461 ; N noonwithhahinitial ; B 0 62 440 641 ;
+C -1 ; WX 461 ; N noonwithkhahinitial ; B 0 62 440 641 ;
+C -1 ; WX 313 ; N noonwithmeeminitial ; B 0 62 287 579 ;
+C -1 ; WX 518 ; N hehwithmeeminitial ; B 0 62 484 503 ;
+C -1 ; WX 461 ; N yehwithjeeminitial ; B 0 -80 440 479 ;
+C -1 ; WX 461 ; N yehwithhahinitial ; B 0 -11 440 479 ;
+C -1 ; WX 461 ; N yehwithkhahinitial ; B 0 -11 440 479 ;
+C -1 ; WX 313 ; N yehwithmeeminitial ; B 0 -41 367 416 ;
+C -1 ; WX 626 ; N shaddawithfathamedial ; B 0 62 661 757 ;
+C -1 ; WX 626 ; N shaddawithdammamedial ; B 0 62 661 848 ;
+C -1 ; WX 626 ; N shaddawithkasramedial ; B 0 62 661 774 ;
+C -1 ; WX 536 ; N sheenwithmeeminitial ; B 0 57 503 613 ;
+C -1 ; WX 261 ; N alefwithfathatanfinal ; B 34 62 295 729 ;
+C -1 ; WX 233 ; N alefwithfathatanisolated ; B 34 62 199 729 ;
+C -1 ; WX 554 ; N ornateleftparenthesis ; B 26 -306 524 728 ;
+C -1 ; WX 554 ; N ornaterightparenthesis ; B 28 -306 526 728 ;
+C -1 ; WX 479 ; N lamwithmeemwithhahinitial ; B 0 62 449 617 ;
+C -1 ; WX 536 ; N allahisolated ; B 29 50 497 794 ;
+C -1 ; WX 199 ; N fathatanisolated ; B 34 708 199 905 ;
+C -1 ; WX 626 ; N fathatanontatweel ; B 0 62 661 700 ;
+C -1 ; WX 226 ; N dammatanisolated ; B 31 701 226 901 ;
+C -1 ; WX 199 ; N kasratanisolated ; B 34 -500 199 -302 ;
+C -1 ; WX 199 ; N fathaisolated ; B 34 708 199 833 ;
+C -1 ; WX 626 ; N fathahontatweel ; B 0 62 661 628 ;
+C -1 ; WX 202 ; N dammaisolated ; B 34 708 202 916 ;
+C -1 ; WX 626 ; N dammahontatweel ; B 0 62 661 710 ;
+C -1 ; WX 199 ; N kasraisolated ; B 34 -428 199 -302 ;
+C -1 ; WX 626 ; N kasrahontatweel ; B 0 -160 661 122 ;
+C -1 ; WX 205 ; N shaddaisolated ; B 32 708 205 868 ;
+C -1 ; WX 626 ; N shaddahontatweel ; B 0 62 661 663 ;
+C -1 ; WX 162 ; N sukunisolated ; B 36 708 162 860 ;
+C -1 ; WX 626 ; N sukunontatweel ; B 0 62 661 655 ;
+C -1 ; WX 277 ; N hamzaisolated ; B 14 -14 245 274 ;
+C -1 ; WX 233 ; N alefwithmaddaaboveisolated ; B 0 62 239 620 ;
+C -1 ; WX 261 ; N alefwithmaddaabovefinal ; B 0 62 295 620 ;
+C -1 ; WX 167 ; N alefwithhamzaaboveisolated ; B 21 62 173 704 ;
+C -1 ; WX 218 ; N alefwithhamzaabovefinal ; B 21 62 252 704 ;
+C -1 ; WX 351 ; N wawwithhamzaaboveisolated ; B 18 -169 324 478 ;
+C -1 ; WX 351 ; N wawwithhamzaabovefinal ; B 8 -169 385 413 ;
+C -1 ; WX 167 ; N alefwithhamzabelowisolated ; B 9 -136 161 541 ;
+C -1 ; WX 205 ; N alefwithhamzabelowfinal ; B 44 -136 239 541 ;
+C -1 ; WX 571 ; N yehwithhamzaaboveisolated ; B 28 -62 533 478 ;
+C -1 ; WX 479 ; N yehwithhamzaabovefinal ; B 41 -212 514 313 ;
+C -1 ; WX 185 ; N yehwithhamzaaboveinitial ; B 0 62 173 478 ;
+C -1 ; WX 185 ; N yehwithhamzaabovemedial ; B 0 62 219 391 ;
+C -1 ; WX 146 ; N alefisolated ; B 45 62 110 541 ;
+C -1 ; WX 205 ; N aleffinal ; B 44 62 239 541 ;
+C -1 ; WX 683 ; N behisolated ; B 41 -91 642 326 ;
+C -1 ; WX 702 ; N behfinal ; B 44 -133 736 275 ;
+C -1 ; WX 185 ; N behinitial ; B 0 -77 128 290 ;
+C -1 ; WX 185 ; N behmedial ; B 0 -96 219 190 ;
+C -1 ; WX 257 ; N tehmarbutaisolated ; B 41 53 224 533 ;
+C -1 ; WX 278 ; N tehmarbutafinal ; B 32 62 312 484 ;
+C -1 ; WX 683 ; N tehisolated ; B 41 41 642 376 ;
+C -1 ; WX 702 ; N tehfinal ; B 44 25 736 367 ;
+C -1 ; WX 185 ; N tehinitial ; B 0 62 182 458 ;
+C -1 ; WX 185 ; N tehmedial ; B 0 62 219 371 ;
+C -1 ; WX 683 ; N thehisolated ; B 41 41 642 465 ;
+C -1 ; WX 702 ; N thehfinal ; B 44 25 736 459 ;
+C -1 ; WX 185 ; N thehinitial ; B 0 62 181 601 ;
+C -1 ; WX 185 ; N thehmedial ; B 0 62 219 453 ;
+C -1 ; WX 536 ; N jeemisolated ; B 20 -309 505 266 ;
+C -1 ; WX 498 ; N jeemfinal ; B 20 -308 527 264 ;
+C -1 ; WX 498 ; N jeeminitial ; B 0 35 455 291 ;
+C -1 ; WX 536 ; N jeemmedial ; B 0 33 570 293 ;
+C -1 ; WX 536 ; N hahisolated ; B 20 -309 505 266 ;
+C -1 ; WX 498 ; N hahfinal ; B 20 -308 527 264 ;
+C -1 ; WX 498 ; N hahinitial ; B 0 62 455 291 ;
+C -1 ; WX 536 ; N hahmedial ; B 0 62 570 293 ;
+C -1 ; WX 536 ; N khahisolated ; B 20 -309 505 435 ;
+C -1 ; WX 498 ; N khahfinal ; B 20 -308 527 435 ;
+C -1 ; WX 498 ; N khahinitial ; B 0 62 455 385 ;
+C -1 ; WX 536 ; N khahmedial ; B 0 62 570 386 ;
+C -1 ; WX 313 ; N dalisolated ; B 41 57 280 365 ;
+C -1 ; WX 387 ; N dalfinal ; B 33 62 421 443 ;
+C -1 ; WX 313 ; N thalisolated ; B 41 57 280 541 ;
+C -1 ; WX 387 ; N thalfinal ; B 33 62 421 586 ;
+C -1 ; WX 332 ; N rehisolated ; B 5 -141 296 236 ;
+C -1 ; WX 313 ; N rehfinal ; B 8 -158 348 155 ;
+C -1 ; WX 332 ; N zainisolated ; B 5 -141 296 419 ;
+C -1 ; WX 313 ; N zainfinal ; B 8 -158 348 335 ;
+C -1 ; WX 638 ; N seenisolated ; B 17 -190 635 261 ;
+C -1 ; WX 728 ; N seenfinal ; B 17 -190 762 201 ;
+C -1 ; WX 479 ; N seeninitial ; B 0 62 425 261 ;
+C -1 ; WX 516 ; N seenmedial ; B 0 62 550 201 ;
+C -1 ; WX 640 ; N sheenisolated ; B 17 -190 635 459 ;
+C -1 ; WX 728 ; N sheenfinal ; B 17 -190 762 458 ;
+C -1 ; WX 479 ; N sheeninitial ; B 0 62 425 485 ;
+C -1 ; WX 516 ; N sheenmedial ; B 0 62 550 470 ;
+C -1 ; WX 796 ; N sadisolated ; B 17 -190 791 306 ;
+C -1 ; WX 834 ; N sadfinal ; B 17 -190 868 308 ;
+C -1 ; WX 577 ; N sadinitial ; B 0 -8 547 306 ;
+C -1 ; WX 596 ; N sadmedial ; B 0 -11 630 308 ;
+C -1 ; WX 807 ; N dadisolated ; B 17 -190 791 458 ;
+C -1 ; WX 834 ; N dadfinal ; B 17 -190 869 453 ;
+C -1 ; WX 577 ; N dadinitial ; B 0 -8 547 458 ;
+C -1 ; WX 596 ; N dadmedial ; B 0 -11 630 460 ;
+C -1 ; WX 554 ; N tahisolated ; B 12 59 519 597 ;
+C -1 ; WX 571 ; N tahfinal ; B 12 62 605 597 ;
+C -1 ; WX 424 ; N tahinitial ; B 0 62 395 599 ;
+C -1 ; WX 442 ; N tahmedial ; B 0 -11 477 603 ;
+C -1 ; WX 554 ; N zahisolated ; B 12 59 519 597 ;
+C -1 ; WX 571 ; N zahfinal ; B 12 62 605 597 ;
+C -1 ; WX 424 ; N zahinitial ; B 0 62 395 599 ;
+C -1 ; WX 442 ; N zahmedial ; B 0 -11 477 603 ;
+C -1 ; WX 518 ; N ainisolated ; B 23 -309 502 386 ;
+C -1 ; WX 387 ; N ainfinal ; B 2 -308 476 287 ;
+C -1 ; WX 369 ; N aininitial ; B 0 62 360 361 ;
+C -1 ; WX 295 ; N ainmedial ; B 0 62 330 280 ;
+C -1 ; WX 518 ; N ghainisolated ; B 23 -309 502 560 ;
+C -1 ; WX 387 ; N ghainfinal ; B 2 -308 476 479 ;
+C -1 ; WX 369 ; N ghaininitial ; B 0 62 360 536 ;
+C -1 ; WX 295 ; N ghainmedial ; B 0 62 330 467 ;
+C -1 ; WX 737 ; N fehisolated ; B 46 53 695 582 ;
+C -1 ; WX 737 ; N fehfinal ; B 46 -5 771 481 ;
+C -1 ; WX 222 ; N fehinitial ; B 0 62 203 530 ;
+C -1 ; WX 295 ; N fehmedial ; B 0 62 330 505 ;
+C -1 ; WX 518 ; N qafisolated ; B 59 -25 474 530 ;
+C -1 ; WX 442 ; N qaffinal ; B 17 -140 477 390 ;
+C -1 ; WX 222 ; N qafinitial ; B 0 62 203 521 ;
+C -1 ; WX 295 ; N qafmedial ; B 0 62 330 515 ;
+C -1 ; WX 479 ; N kafisolated ; B 43 54 440 611 ;
+C -1 ; WX 683 ; N arabickaffinal ; B 19 -2 717 578 ;
+C -1 ; WX 461 ; N kafinitial ; B 0 62 466 607 ;
+C -1 ; WX 479 ; N kafmedial ; B 0 62 509 692 ;
+C -1 ; WX 442 ; N lamisolated ; B 41 -62 386 618 ;
+C -1 ; WX 442 ; N lamfinal ; B 8 -217 477 586 ;
+C -1 ; WX 166 ; N laminitial ; B 0 62 136 600 ;
+C -1 ; WX 203 ; N lammedial ; B 0 62 237 582 ;
+C -1 ; WX 295 ; N meemisolated ; B 35 -267 270 312 ;
+C -1 ; WX 387 ; N meemfinal ; B 23 -305 421 207 ;
+C -1 ; WX 295 ; N meeminitial ; B 0 62 269 291 ;
+C -1 ; WX 387 ; N meemmedial ; B 0 49 421 233 ;
+C -1 ; WX 424 ; N noonisolated ; B 49 17 382 500 ;
+C -1 ; WX 442 ; N noonfinal ; B 4 -191 477 280 ;
+C -1 ; WX 185 ; N nooninitial ; B 0 62 130 464 ;
+C -1 ; WX 185 ; N noonmedial ; B 0 62 219 359 ;
+C -1 ; WX 257 ; N hehisolated ; B 41 53 224 317 ;
+C -1 ; WX 277 ; N hehfinal ; B 32 62 312 376 ;
+C -1 ; WX 369 ; N hehinitial ; B 0 62 344 366 ;
+C -1 ; WX 351 ; N hehmedial ; B 0 -123 385 316 ;
+C -1 ; WX 351 ; N wawisolated ; B 18 -169 324 285 ;
+C -1 ; WX 351 ; N wawfinal ; B 8 -169 385 236 ;
+C -1 ; WX 571 ; N alefmaksuraisolated ; B 28 -62 533 379 ;
+C -1 ; WX 479 ; N alefmaksurafinal ; B 43 -212 514 122 ;
+C -1 ; WX 571 ; N yehisolated ; B 28 -186 533 379 ;
+C -1 ; WX 479 ; N yehfinal ; B 43 -306 509 122 ;
+C -1 ; WX 185 ; N yehinitial ; B -5 -75 158 290 ;
+C -1 ; WX 185 ; N yehmedial ; B 0 -95 219 190 ;
+C -1 ; WX 461 ; N lamwithalefmaddaaboveisolatedd ; B 0 -3 417 646 ;
+C -1 ; WX 572 ; N lamwithalefmaddaabovefinal ; B 0 2 606 646 ;
+C -1 ; WX 461 ; N lamwithalefhamzaaboveisolatedd ; B 34 -3 417 708 ;
+C -1 ; WX 518 ; N lamwithalefhamzaabovefinal ; B 16 2 552 708 ;
+C -1 ; WX 461 ; N lamwithalefhamzabelowisolated ; B 35 -189 417 561 ;
+C -1 ; WX 518 ; N lamwithalefhamzabelowfinal ; B 16 -189 552 561 ;
+C -1 ; WX 461 ; N lamwithalefisolated ; B 35 -3 417 561 ;
+C -1 ; WX 518 ; N lamwithaleffinal ; B 16 2 552 561 ;
+C -1 ; WX 0 ; N zerowidthnobreakspace ; B 0 0 0 0 ;
+C -1 ; WX 244 ; N .notdef ; B 0 0 0 0 ;
+C -1 ; WX 244 ; N .notdef ; B 0 0 0 0 ;
+EndCharMetrics
+StartKernData
+StartKernPairs 0
+EndKernPairs
+EndKernData
+EndFontMetrics
diff --git a/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/ararabeyes.enc b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/ararabeyes.enc
new file mode 100644
index 0000000000..c72f6af693
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/ararabeyes.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/ArabeyesArabicEncoding [ % now 256 chars follow
+% 0
+ /alefisolated /alefwithhamzaaboveisolated /alefwithhamzaabovefinal /alefwithhamzabelowisolated
+% 4
+ /alefwithhamzabelowfinal /alefwithmaddaaboveisolated /alefwithmaddaabovefinal /behinitial
+% 8
+ /.notdef /behfinal /behisolated /tehinitial
+% 12
+ /.notdef /tehfinal /tehisolated /thehinitial
+% 16
+ /thehmedial /thehfinal /thehisolated /jeeminitial
+% 20
+ /jeemmedial /jeemfinal /jeemisolated /hahinitial
+% 24
+ /hahmedial /hahfinal /hahisolated /khahinitial
+% 28
+ /khahmedial /khahfinal /khahisolated /.notdef
+% 32
+ /dal /exclam /sukun /numbersign %OK
+% 36
+ /dollar /arabicpercentsign /ampersand /quotesingle %ok
+% 40 (below) parentheses were refelcted, asterisk replaced with arabicfivepointedstar
+ /parenright /parenleft /arabicfivepointedstar /quotedbl %
+% 44 we should get an "arabicslash" in 4th position, we use backslash
+ /arabiccomma /hyphenminus /period /backslash %
+% 48
+ /arabicindicdigitzero /arabicindicdigitone /arabicindicdigittwo /arabicindicdigitthree
+% 52
+ /arabicindicdigitfour /arabicindicdigitfive /arabicindicdigitsix /arabicindicdigitseven
+% 56
+ /arabicindicdigiteight /arabicindicdigitnine /colon /arabicsemicolon % does "colon" look ok ?
+% 60
+ /guillemotright /.notdef /guillemotleft /arabicquestionmark
+% 64
+ /thalfinal /aleffinal /.notdef /rehisolated
+% 68
+ /.nodef /zainisolated /seeninitial /.notdef
+% 72
+ /seenfinal /yehmedial /sheeninitial /sheenmedial
+% 76
+ /sheenfinal /sheenisolated /.notdef /sadmedial
+% 80
+ /sadfinal /sadisolated /dadinitial /dadmedial
+% 84
+ /tehmarbutafinal /wawfinal /tahinitial /tahmedial
+% 88
+ /tahfinal /alefmaksurafinal /zahinitial /ornaterightparenthesis
+% 92
+ /zahmedial /ornateleftparenthesis /zahfinal /zahisolated
+% 96
+ /ainmedial /fathah /behmedial /.notdef
+% 100
+ /dalfinal /.notdef /fehmedial /.notdef
+% 104
+ /hehmedial /kasrah /.notdef /kafmedial
+% 108
+ /lammedial /meemmedial /noonmedial /.notdef
+% 112
+ /pehmedial /qafmedial /rehfinal /seenmedial
+% 116
+ /tehmedial /dammah /.notdef /wawfinal
+% 120
+ /seenisolated /yehmedial /zainfinal /dadfinal
+% 124
+ /dadisolated /sadinitial /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /aininitial /ainfinal /ainisolated /ghaininitial
+% 140
+ /ghainmedial /ghainfinal /ghainisolated /fehinitial
+% 144
+ /fehfinal /fehisolated /qafinitial /qaffinal
+% 148
+ /qafisolated /kafinitial /arabickaffinal /kafisolated
+% 152
+ /laminitial /lamfinal /lamisolated /meeminitial
+% 156
+ /meemfinal /meemisolated /nooninitial /noonfinal
+% 160
+ /noonisolated /hehinitial /hehfinal /hehisolated
+% 164
+ /wawisolated /wawwithhamzaabovefinal /wawwithhamzaaboveisolated /yehinitial
+% 168
+ /yehfinal /yehisolated /tahisolated /alefmaksuraisolated
+% 172
+ /.notdef /tehmarbutaisolated /lamwithaleffinal /lamwithalefisolated
+% 176 2nd with dd!!!!
+ /lamwithalefhamzaabovefinal /lamwithalefhamzaaboveisolatedd
+ /lamwithalefhamzabelowfinal /lamwithalefhamzabelowisolated
+% 180 2nd with dd!!!!
+ /lamwithalefmaddaabovefinal /lamwithalefmaddaaboveisolatedd
+ /yehwithhamzaaboveinitial /yehwithhamzaabovemedial
+% 184
+ /yehwithhamzaabovefinal /yehwithhamzaaboveisolated
+ /hamzaisolated /.notdef
+% 188
+ /.notdef /.notdef /fathatan /dammatan
+% 192
+ /kasratan /fathah /dammah /kasrah
+% 196
+ /shaddah /sukun /.notdef /.notdef
+% 200
+ /.notdef /.notdef /.notdef /.notdef
+% 204
+ /shaddah /.notdef /.notdef /.notdef
+% 208
+ /thalisolated /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /allahisolated /mhmd /tatweel /sallallahou %the 4-ligature mhmd
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/ardtpnaskh.enc b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/ardtpnaskh.enc
new file mode 100644
index 0000000000..ca2c8ad1fa
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/ardtpnaskh.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/DTPNaskArabicEncoding [ % now 256 chars follow
+% 0
+ /alef /hamzah_on_alef /_hamzah_on_alef /hamzah_under_alef
+% 4
+ /_hamzah_under_alef /maddah_on_alef /_maddah_on_alef /baa_
+% 8
+ /.notdef /_baa /baa /taa_
+% 12
+ /.notdef /_taa /taa /thaa_
+% 16
+ /_thaa_ /_thaa /thaa /jeem_
+% 20
+ /_jeem_ /_jeem /jeem /haa_
+% 24
+ /_haa_ /_haa /haa /khaa_
+% 28
+ /_khaa_ /_khaa /khaa /.notdef
+% 32
+ /dal /arab_exclam /sukun /.notdef %OK
+% 36
+ /dollar /arab_percent /.notdef /.notdef %ok
+% 40
+ /parent_right /parent_left /dharma /arab_inch % parentheses were refelcted
+% 44
+ /arab_comma /endash /point /forward_slant % we should get the "arabicslash" in 4th position
+% 48
+ /arab_zero /arab_one /arab_two /arab_three
+% 52
+ /arab_four /arab_five /arab_six /arab_seven
+% 56
+ /arab_eight /arab_nine /colon /arab_semicolon %colon ok ??
+% 60
+ /guillemets_right /.notdef /quillemets_left /arab_question %quill.. not guill..
+% 64
+ /_thal /_alef /.notdef /ra
+% 68
+ /.nodef /zain /seen_ /.notdef
+% 72
+ /_seen /_ya_ /sheen_ /_sheen_
+% 76
+ /_sheen /sheen /.notdef /_sad_
+% 80
+ /_sad /sad /dad_ /_dad_
+% 84
+ /_taa_marbutah /_waw /tah_ /_tah_
+% 88
+ /_tah /_alef_maqsurah /dhah_ /right_Quranquote
+% 92
+ /_dhah_ /left_Quranquote /_dhah /dhah
+% 96
+ /_ain_ /fathah /_baa_ /.notdef
+% 100
+ /_dal /.notdef /_fa_ /.notdef
+% 104
+ /_ha_ /kasrah /.notdef /_caf_
+% 108
+ /_lam_ /_meem_ /_noon_ /.notdef
+% 112
+ /_peh_ /_qaf_ /_ra /_seen_
+% 116
+ /_taa_ /dammah /.notdef /_waw
+% 120
+ /seen /_ya_ /_zain /_dad
+% 124
+ /dad /sad_ /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /ain_ /_ain /ain /ghain_
+% 140
+ /_ghain_ /_ghain /ghain /fa_
+% 144
+ /_fa /fa /qaf_ /_qaf
+% 148
+ /qaf /caf_ /_caf /caf
+% 152
+ /lam_ /_lam /lam /meem_
+% 156
+ /_meem /meem /noon_ /_noon
+% 160
+ /noon /ha_ /_ha /ha
+% 164
+ /waw /_hamzah_on_waw /hamzah_on_waw /ya_
+% 168
+ /_ya /ya /tah /alef_maqsurah
+% 172
+ /.notdef /taa_marbutah /_lam_alef /lam_alef
+% 176
+ /_lam_hamzah_on_alef /lam_hamza_on_alef
+ /_lam_hamzah_under_alef /lam_hamzah_under_alef
+% 180
+ /_lam_maddah_on_alef /lam_maddah_on_alef
+ /hamzah_on_ya_ /_hamzah_on_ya_
+% 184
+ /_hamzah_on_ya /hamzah_on_ya
+ /hamzah /.notdef
+% 188
+ /.notdef /.notdef /fatahatan /dammatan %fatahatan not fathatan :)
+% 192
+ /kasratan /fathah /dammah /kasrah
+% 196
+ /shaddah /sukun /shaddah_fathatan /shaddah_dammatan
+% 200
+ /shaddah_kasratan /shaddah_fathah /shaddah_dammah /shaddah_kasrah
+% 204
+ /shaddah /shaddah_fathah /shaddah_dammah /shaddah_kasrah
+% 208
+ /thal /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /lam_lam_ha /.notdef /tatweel /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/ardtpthuluth.enc b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/ardtpthuluth.enc
new file mode 100644
index 0000000000..8458a5133e
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/ardtpthuluth.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/DTPThuluthArabicEncoding [ % now 256 chars follow
+% 0
+ /fe8d /fe83 /fe84 /fe87
+% 4
+ /fe88 /fe81 /fe82 /fe91
+% 8
+ /.notdef /fe90 /fe8f /fe97
+% 12
+ /.notdef /fe96 /fe95 /fe9b
+% 16
+ /fe9c /fe9a /fe99 /fe9f
+% 20
+ /fea0 /fe9e /fe9d /fea3
+% 24
+ /fea4 /fea2 /fea1 /fea7
+% 28
+ /fea8 /fea6 /fea5 /.notdef
+% 32
+ /fea9 /exclam /u0652 /numbersign
+% 36
+ /dollar /_66a /ampersand /quoteright
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /u060c /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /u0660 /u0661 /_662 /_663
+% 52
+ /_664 /_665 /_666 /_667
+% 56
+ /_668 /_669 /colon /u061b %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /u061f
+% 64
+ /feac /fe8e /.notdef /fead
+% 68
+ /.nodef /feaf /feb3 /.notdef
+% 72
+ /feb2 /fef4 /feb7 /feb8
+% 76
+ /feb6 /feb5 /.notdef /febc
+% 80
+ /feba /feb9 /febf /fec0
+% 84
+ /uE01C /feee /fec3 /fec4
+% 88
+ /fec2 /fef0 /fec7 /braceright
+% 92
+ /fec8 /braceleft /fec6 /fec5
+% 96
+ /fecc /u064E /fe92 /.notdef
+% 100
+ /feaa /.notdef /fed4 /.notdef
+% 104
+ /feec /u0650 /.notdef /fedc
+% 108
+ /fee0 /fee4 /fee8 /.notdef
+% 112
+ /.notdef /fed8 /feae /feb4
+% 116
+ /fe98 /u064F /.notdef /feee
+% 120
+ /feb1 /fef4 /feb0 /febe
+% 124
+ /febd /febb /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /fecb /feca /fec9 /fecf
+% 140
+ /fed0 /fece /fecd /fed3
+% 144
+ /fed2 /fed1 /fed7 /fed6
+% 148
+ /fed5 /fedb /feda /fed9
+% 152
+ /fedf /fede /fedd /fee3
+% 156
+ /fee2 /fee1 /fee7 /fee6
+% 160
+ /fee5 /feeb /feea /fee9
+% 164
+ /feed /fe86 /fe85 /fef3
+% 168
+ /fef2 /fef1 /fec1 /feef
+% 172
+ /.notdef /fe93 /fefc /fefb
+% 176
+ /fef8 /fef7
+ /fefa /fef9
+% 180
+ /fef6 /fef5
+ /fe8b /fe8c
+% 184
+ /fe8a /fe89
+ /fe80 /.notdef
+% 188
+ /.notdef /.notdef /u064B /u064C
+% 192
+ /u064D /u064E /u064F /u0650
+% 196
+ /u0651 /u0652 /.notdef /.notdef
+% 200
+ /.notdef /.notdef /.notdef /.notdef
+% 204
+ /u0652 /.notdef /.notdef /.notdef
+% 208
+ /feab /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /e007 /.notdef /u0640 /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/armonotype.enc b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/armonotype.enc
new file mode 100644
index 0000000000..86518000cb
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/armonotype.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/MonotypeArabicEncoding [ % now 256 chars follow
+% 0
+ /alefisolated /alefwithhamzaaboveisolated /alefwithhamzaabovefinal /alefwithhamzabelowisolated
+% 4
+ /alefwithhamzabelowfinal /alefwithmaddaaboveisolated /alefwithmaddaabovefinal /behinitial
+% 8
+ /.notdef /behfinal /behisolated /tehinitial
+% 12
+ /.notdef /tehfinal /tehisolated /thehinitial
+% 16
+ /thehmedial /thehfinal /thehisolated /jeeminitial
+% 20
+ /jeemmedial /jeemfinal /jeemisolated /hahinitial
+% 24
+ /hahmedial /hahfinal /hahisolated /khahinitial
+% 28
+ /khahmedial /khahfinal /khahisolated /.notdef
+% 32
+ /dalisolated /exclam /sukun /numbersign %OK
+% 36
+ /dollar /arabicpercentsign /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /arabiccomma /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /arabicindicdigitzero /arabicindicdigitone /arabicindicdigittwo /arabicindicdigitthree
+% 52
+ /arabicindicdigitfour /arabicindicdigitfive /arabicindicdigitsix /arabicindicdigitseven
+% 56
+ /arabicindicdigiteight /arabicindicdigitnine /colon /arabicsemicolon %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /arabicquestionmark
+% 64
+ /thalfinal /aleffinal /.notdef /rehisolated
+% 68
+ /.nodef /zainisolated /seeninitial /.notdef
+% 72
+ /seenfinal /yehmedial /sheeninitial /sheenmedial
+% 76
+ /sheenfinal /sheenisolated /.notdef /sadmedial
+% 80
+ /sadfinal /sadisolated /dadinitial /dadmedial
+% 84
+ /tehmarbutafinal /wawfinal /tahinitial /tahmedial
+% 88
+ /tahfinal /alefmaksurafinal /zahinitial /ornaterightparenthesis
+% 92
+ /zahmedial /ornateleftparenthesis /zahfinal /zahisolated
+% 96
+ /ainmedial /fathaisolated /behmedial /.notdef
+% 100
+ /dalfinal /.notdef /fehmedial /.notdef
+% 104
+ /hehmedial /kasraisolated /.notdef /kafmedial
+% 108
+ /lammedial /meemmedial /noonmedial /.notdef
+% 112
+ /pehmedial /qafmedial /rehfinal /seenmedial
+% 116
+ /tehmedial /dammaisolated /.notdef /wawfinal
+% 120
+ /seenisolated /yehmedial /zainfinal /dadfinal
+% 124
+ /dadisolated /sadinitial /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /aininitial /ainfinal /ainisolated /ghaininitial
+% 140
+ /ghainmedial /ghainfinal /ghainisolated /fehinitial
+% 144
+ /fehfinal /fehisolated /qafinitial /qaffinal
+% 148
+ /qafisolated /kafinitial /arabickaffinal /kafisolated
+% 152
+ /laminitial /lamfinal /lamisolated /meeminitial
+% 156
+ /meemfinal /meemisolated /nooninitial /noonfinal
+% 160
+ /noonisolated /hehinitial /hehfinal /hehisolated
+% 164
+ /wawisolated /wawwithhamzaabovefinal /wawwithhamzaaboveisolated /yehinitial
+% 168
+ /yehfinal /yehisolated /tahisolated /alefmaksuraisolated
+% 172
+ /.notdef /tehmarbutaisolated /lamwithaleffinal /lamwithalefisolated
+% 176 2nd with dd!!!!
+ /lamwithalefhamzaabovefinal /lamwithalefhamzaaboveisolatedd
+ /lamwithalefhamzabelowfinal /lamwithalefhamzabelowisolated
+% 180 2nd with dd!!!!
+ /lamwithalefmaddaabovefinal /lamwithalefmaddaaboveisolatedd
+ /yehwithhamzaaboveinitial /yehwithhamzaabovemedial
+% 184
+ /yehwithhamzaabovefinal /yehwithhamzaaboveisolated
+ /hamzaisolated /.notdef
+% 188
+ /.notdef /.notdef /fathatan /dammatan
+% 192
+ /kasratanlow /fathaisolated /dammaisolated /kasraisolated
+% 196
+ /shaddaisolated /sukunisolated /shaddawithfathatanisolated /shaddawithdammatanisolated
+% 200
+ /shaddawithkasratanisolatedlow /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 204
+ /shaddaisolated /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 208
+ /thalisolated /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /allahisolated /.notdef /tatweel /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/aromega.enc b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/aromega.enc
new file mode 100644
index 0000000000..ca7e0ea680
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/aromega.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/OmegaArabicEncoding [ % now 256 chars fol
+% 0
+ /alifiso /alifhamzaiso /alifhamzafin /alifsubhamzaiso
+% 4
+ /alifsubhamzafin /alifmaddaiso /alifmaddafin /behini
+% 8
+ /.notdef /behfin /behiso /tehini
+% 12
+ /.notdef /tehfin /tehiso /thehini
+% 16
+ /thehmed /thehfin /thehiso /jeemini
+% 20
+ /jeemmed /jeemfin /jeemiso /hahini
+% 24
+ /hahmed /hahfin /hahiso /khahini
+% 28
+ /khahmed /khahfin /khahiso /.notdef
+% 32
+ /daliso /exclam /sukun /numbersign %OK
+% 36
+ /dollar /percentarabic /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /stararabic /quotedbl % parentheses were refelcted
+% 44
+ /commaarabic /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /zeroarabic /onearabic /twoarabic /threearabic
+% 52
+ /fourarabic /fivearabic /sixarabic /sevenarabic
+% 56
+ /eightarabic /ninearabic /colon /semicolonarabic %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /questionmarkarabic
+% 64
+ /thalfin /aliffin /.notdef /rehiso
+% 68
+ /.nodef /zainiso /seenini /.notdef
+% 72
+ /seenfin /yehmed /sheenini /sheenmed
+% 76
+ /sheenfin /sheeniso /.notdef /sadmed
+% 80
+ /sadfin /sadiso /dadini /dadmed
+% 84
+ /tehmarbutafin /wawfin /tahini /tahmed
+% 88
+ /tahfin /alifmaksurafin /zahini /ornaterightparenthesis
+% 92
+ /zahmed /ornateleftparenthesis /zahfin /zahiso
+% 96
+ /ainmed /fatha /behmed /.notdef
+% 100
+ /dalfin /.notdef /fehmed /.notdef
+% 104
+ /hehmed /kasra /.notdef /kafmed
+% 108
+ /lammed /meemmed /noonmed /.notdef
+% 112
+ /pehmed /qafmed /rehfin /seenmed
+% 116
+ /tehmed /damma /.notdef /wawfin
+% 120
+ /seeniso /yehmed /zainfin /dadfin
+% 124
+ /dadiso /sadini /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /ainini /ainfin /ainiso /ghainini
+% 140
+ /ghainmed /ghainfin /ghainiso /fehini
+% 144
+ /fehfin /fehiso /qafini /qaffin
+% 148
+ /qafiso /kafini /kaffin /kafiso
+% 152
+ /lamini /lamfin /lamiso /meemini
+% 156
+ /meemfin /meemiso /noonini /noonfin
+% 160
+ /nooniso /hehini /hehfin /hehiso
+% 164
+ /wawiso /wawhamzafin /wawhamzaiso /yehini
+% 168
+ /yehfin /yehiso /tahiso /alifmaksuraiso
+% 172
+ /.notdef /tehmarbutaiso /lamaliffin /lamalifiso
+% 176 2nd with dd!!!!
+ /lamalifhamzafin /lamalifhamzaiso
+ /lamalifsubhamzafin /lamalifsubhamzaiso
+% 180 2nd with dd!!!!
+ /lamalifmaddafin /lamalifmaddaiso
+ /yehhamzaini /yehhamzamed
+% 184
+ /yehhamzafin /yehhamzaiso
+ /hamzastandalone /.notdef
+% 188
+ /.notdef /.notdef /fathatan /dammatan
+% 192
+ /kasratan /fatha /damma /kasra
+% 196
+ /shadda /sukun /shaddawithfathatan /shaddawithdammatan
+% 200
+ /shaddawithkasratan /shaddawithfatha /shaddawithdamma /shaddawithkasra
+% 204
+ /shadda /shaddawithfatha /shaddawithdamma /shaddawithkasra
+% 208
+ /thaliso /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /llahshadda /.notdef /keshideh /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/arsimplified.enc b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/arsimplified.enc
new file mode 100644
index 0000000000..4e86bff7c8
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/arsimplified.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/SimplifiedArabicEncoding [ % now 256 chars follow
+% 0
+ /alefisolated /alefwithhamzaaboveisolated /alefwithhamzaabovefinal /alefwithhamzabelowisolated
+% 4
+ /alefwithhamzabelowfinal /alefwithmaddaaboveisolated /alefwithmaddaabovefinal /behmedial
+% 8
+ /.notdef /behisolated /behisolated /tehmedial
+% 12
+ /.notdef /tehisolated /tehisolated /thehmedial
+% 16
+ /thehmedial /thehisolated /thehisolated /jeemmedial
+% 20
+ /jeemmedial /jeemfinal /jeemisolated /hahmedial
+% 24
+ /hahmedial /hahfinal /hahisolated /khahmedial
+% 28
+ /khahmedial /khahfinal /khahisolated /.notdef
+% 32
+ /dalisolated /exclam /sukun /numbersign %OK
+% 36
+ /dollar /arabicpercentsign /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /arabiccomma /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /arabicindicdigitzero /arabicindicdigitone /arabicindicdigittwo /arabicindicdigitthree
+% 52
+ /arabicindicdigitfour /arabicindicdigitfive /arabicindicdigitsix /arabicindicdigitseven
+% 56
+ /arabicindicdigiteight /arabicindicdigitnine /colon /arabicsemicolon %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /arabicquestionmark
+% 64
+ /thalisolated /aleffinal /.notdef /reh
+% 68
+ /.nodef /zainisolated /seenmedial /.notdef
+% 72
+ /seenisolated /yehmedial /sheenmedial /sheenmedial
+% 76
+ /sheenisolated /sheenisolated /.notdef /sadmedial
+% 80
+ /sadisolated /sadisolated /dadmedial /dadmedial
+% 84
+ /tehmarbutafinal /wawisolated /tahisolated /tahisolated
+% 88
+ /tahisolated /alefmaksurafinal /zahisolated /ornaterightparenthesis
+% 92
+ /zahisolated /ornateleftparenthesis /zahisolated /zahisolated
+% 96
+ /ainmedial /fathaisolated /behmedial /.notdef
+% 100
+ /dalisolated /.notdef /fehmedial /.notdef
+% 104
+ /hehmedial /kasraisolated /.notdef /kafmedial
+% 108
+ /lammedial /meemmedial /noonmedial /.notdef
+% 112
+ /pehmedial /qafmedial /rehisolated /seenmedial
+% 116
+ /tehmedial /dammaisolated /.notdef /wawisolated
+% 120
+ /seenisolated /yehmedial /zainisolated /dadisolated
+% 124
+ /dadisolated /sadmedial /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /aininitial /ainfinal /ainisolated /ghaininitial
+% 140
+ /ghainmedial /ghainfinal /ghainisolated /fehinitial
+% 144
+ /fehisolated /fehisolated /qafinitial /qafisolated
+% 148
+ /qafisolated /kafmedial /kafisolated /kafisolated
+% 152
+ /lammedial /lam /lam /meemmedial % the lamisolated is in fact medial-initial BADD!!
+% 156
+ /meemisolated /meemisolated /noonmedial /noonisolated
+% 160
+ /noonisolated /hehinitial /hehfinal /hehisolated
+% 164
+ /wawisolated /wawwithhamzaabove /wawwithhamzaabove /yehmedial
+% 168
+ /yehfinal /yehisolated /tahisolated /alefmaksuraisolated
+% 172
+ /.notdef /tehmarbutaisolated /lamwithaleffinal /lamwithalefisolated
+% 176 2nd with dd!!!!
+ /lamwithalefhamzaabovefinal /lamwithalefhamzaaboveisolatedd %with dd at the end!!!!
+ /lamwithalefhamzabelowfinal /lamwithalefhamzabelowisolated
+% 180 2nd with dd!!!!
+ /lamwithalefmaddaabovefinal /lamwithalefmaddaaboveisolatedd
+ /yehwithhamzaabovemedial /yehwithhamzaabovemedial
+% 184
+ /yehwithhamzaabovefinal /yehwithhamzaaboveisolated
+ /hamza /.notdef
+% 188
+ /.notdef /.notdef /fathatan /dammatan
+% 192
+ /kasratanlow /fathaisolated /dammaisolated /kasraisolated
+% 196
+ /shaddaisolated /sukunisolated /shaddawithfathatanisolated /shaddawithdammatanisolated
+% 200
+ /shaddawithkasratanlow /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 204
+ /shaddaisolated /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 208
+ /thal /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /allahisolated /.notdef /tatweel /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/arunicode.enc b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/arunicode.enc
new file mode 100644
index 0000000000..f7eb886124
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/arunicode.enc
@@ -0,0 +1,146 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Arabic texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/UnicodeGlyphNamesArabicEncoding [ % now 256 chars follow
+% 0
+ /afii57415 /afii57411 /afii62754 /afii57413
+% 4
+ /afii62756 /afii52400 /afii62753 /afii62761
+% 8
+ /.notdef /afii62763 /afii57416 /afii62765
+% 12
+ /.notdef /afii62767 /afii57418 /afii62768
+% 16
+ /afii62769 /afii62770 /afii57419 /afii62771
+% 20
+ /afii62772 /afii62773 /afii57420 /afii62774
+% 24
+ /afii62775 /afii62776 /afii57421 /afii62777
+% 28
+ /afii62778 /afii62779 /afii57422 /.notdef
+% 32
+ /afii57423 /exclam /afii57458 /numbersign %OK
+% 36
+ /dollar /afii57381 /ampersand /quotesingle %ok
+% 40
+ /afii64061 /afii64060 /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /afii57388 /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /afii57392 /afii57393 /afii57394 /afii57395
+% 52
+ /afii57396 /afii57397 /afii57398 /afii57399
+% 56
+ /afii57400 /afii57401 /colon /afii57403 %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /afii57407
+% 64
+ /afii62781 /afii62760 /.notdef /afii57425
+% 68
+ /.nodef /afii57426 /afii62784 /.notdef
+% 72
+ /afii62786 /afii62361 /afii62787 /afii62788
+% 76
+ /afii62789 /afii57428 /.notdef /afii62791
+% 80
+ /afii62792 /afii62792 /afii62790 /afii62794
+% 84
+ /afii62764 /afii62829 /afii62796 /afii62797
+% 88
+ /afii62798 /afii62830 /afii62799 /afii64061
+% 92
+ /afii62800 /afii64060 /afii62801 /afii57432
+% 96
+ /afii62803 /afii57454 /afii62762 /.notdef
+% 100
+ /afii62780 /.notdef /afii62809 /.notdef
+% 104
+ /afii62827 /afii57456 /.notdef /afii62815
+% 108
+ /afii62818 /afii62821 /afii62824 /.notdef
+% 112
+ /afii62956 /afii62812 /afii62782 /afii62785
+% 116
+ /afii62766 /afii57455 /.notdef /afii62829
+% 120
+ /afii57427 /afii62832 /afii62783 /afii62795
+% 124
+ /afii57430 /afii62790 /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /afii62802 /afii62804 /afii57433 /afii62805
+% 140
+ /afii62806 /afii62807 /afii57434 /afii62808
+% 144
+ /afii62810 /afii57441 /afii62811 /afii62813
+% 148
+% /afii57442 /afii62815 /afii62816 /afii57443
+ /afii57442 /afii52305 /afii62816 /afii57443
+% 152
+ /afii62817 /afii62819 /afii57444 /afii62820
+% 156
+ /afii62822 /afii57445 /afii62823 /afii62825
+% 160
+ /afii57446 /afii57470 /afii62828 /afii57447
+% 164
+ /afii57448 /afii62755 /afii57412 /afii62831
+% 168
+ /afii62833 /afii57450 /afii57431 /afii57449
+% 172
+ /afii.notdef /afii57417 /afii62841 /afii62840
+% 176 2nd with dd!!!!
+ /afii62837 /afii62836
+ /afii62839 /afii62838
+% 180 2nd with dd!!!!
+ /afii62835 /afii62834
+ /afii62757 /afii62758
+% 184
+ /afii62759 /afii57414
+ /afii52399 /.notdef
+% 188
+ /.notdef /.notdef /afii57451 /afii57452
+% 192
+ /afii57453 /afii57454 /afii57455 /afii57456
+% 196
+ /afii57457 /afii57458 /afii62881 /afii62882
+% 200
+ /afii62883 /afii62884 /afii62885 /afii62886
+% 204
+ /afii57457 /afii62884 /afii62885 /afii62886
+% 208
+ /afii57424 /.notdef /.notdef /.notdef
+% 212
+ /.notdef /.notdef /.notdef /.notdef
+% 216
+ /.notdef /.notdef /.notdef /.notdef
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /.notdef
+% 252
+ /afii64184 /.notdef /afii57391 /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/farsitex.enc b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/farsitex.enc
new file mode 100644
index 0000000000..c018d947e0
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/farsitex.enc
@@ -0,0 +1,146 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Farsi texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/UnicodeGlyphNamesFarsiEncoding [ % now 256 chars follow
+% 0
+ /afii57415 /afii57411 /afii62754 /afii57413
+% 4
+ /afii62756 /afii52400 /afii62753 /afii62761
+% 8
+ /.notdef /afii62763 /afii57416 /afii62765
+% 12
+ /.notdef /afii62767 /afii57418 /afii62768
+% 16
+ /afii62769 /afii62770 /afii57419 /afii62771
+% 20
+ /afii62772 /afii62773 /afii57420 /afii62774
+% 24
+ /afii62775 /afii62776 /afii57421 /afii62777
+% 28
+ /afii62778 /afii62779 /afii57422 /.notdef
+% 32
+ /afii57423 /exclam /afii57458 /numbersign %OK
+% 36
+ /dollar /afii57381 /ampersand /quotesingle %ok
+% 40
+ /afii64061 /afii64060 /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /afii57388 /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /afii57392 /afii57393 /afii57394 /afii57395 % 0 1 2 3
+% 52
+ /afii62843 /afii62844 /afii62845 /afii57399 % 4 5 6 7
+% 56
+ /afii57400 /afii57401 /colon /afii57403 % 8 9 % colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /afii57407
+% 64
+ /afii62781 /afii62760 /.notdef /afii57425
+% 68
+ /.nodef /afii57426 /afii62784 /.notdef
+% 72
+ /afii62786 /afii62361 /afii62787 /afii62788
+% 76
+ /afii62789 /afii57428 /.notdef /afii62791
+% 80
+ /afii62792 /afii62792 /afii62790 /afii62794
+% 84
+ /afii62764 /afii62829 /afii62796 /afii62797
+% 88
+ /afii62798 /afii62830 /afii62799 /afii64061
+% 92
+ /afii62800 /afii64060 /afii62801 /afii57432
+% 96
+ /afii62803 /afii57454 /afii62762 /afii62959 %% xxx tchehM
+% 100
+ /afii62780 /.notdef /afii62809 /afii62966 %% xxx gafM
+% 104
+ /afii62827 /afii57456 /.notdef /afii62815
+% 108
+ /afii62818 /afii62821 /afii62824 /.notdef
+% 112
+ /afii62956 /afii62782 /afii62782 /afii62785 %%pehM xxx
+% 116
+ /afii62766 /afii57455 /.notdef /afii62829
+% 120
+ /afii57427 /afii62832 /afii62783 /afii62795
+% 124
+ /afii57430 /afii62790 /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /afii62802 /afii62804 /afii57433 /afii62805
+% 140
+ /afii62806 /afii62807 /afii57434 /afii62808
+% 144
+ /afii62810 /afii57441 /afii62811 /afii62813
+% 148
+% /afii57442 /afii62815 /afii62816 /afii57443
+ /afii57442 /afii52305 /afii62964 /afii57567
+% 152
+ /afii62817 /afii62819 /afii57444 /afii62820
+% 156
+ /afii62822 /afii57445 /afii62823 /afii62825
+% 160
+ /afii57446 /afii57470 /afii62828 /afii57447
+% 164
+ /afii57448 /afii62755 /afii57412 /afii62831
+% 168
+ /afii62830 /afii57449 /afii57431 /.notdef
+% 172
+ /.notdef /afii57417 /afii62841 /afii62840
+% 176 2nd with dd!!!!
+ /afii62837 /afii62836
+ /afii62839 /afii62838
+% 180 2nd with dd!!!!
+ /afii62835 /afii62834
+ /afii62757 /afii62758
+% 184
+ /afii62759 /afii57414
+ /afii52399 /.notdef
+% 188
+ /.notdef /.notdef /afii57451 /afii57452
+% 192
+ /afii57453 /afii57454 /afii57455 /afii57456
+% 196
+ /afii57457 /afii57458 /afii62881 /afii62882
+% 200
+ /afii62883 /afii62884 /afii62885 /afii62886
+% 204
+ /afii57457 /afii62884 /afii62885 /afii62886
+% 208
+ /afii57424 /afii62962 /afii57508 /afii62956
+% 212
+ /afii62958 /afii57506 /afii62965 /afii62967
+% 216
+ /afii57509 /afii62959 /afii62961 /afii57507
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /afii57461
+% 252
+ /afii64184 /.notdef /afii57391 /.notdef % llah (uni0644064406510647) ryal(uniFDFC) tatweel
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/farsiwebencoding.enc b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/farsiwebencoding.enc
new file mode 100644
index 0000000000..c425bd8f5d
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/farsiwebencoding.enc
@@ -0,0 +1,145 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Farsi texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/FarsiWebEncoding [ % now 256 chars follow
+% 0
+ /afii57415.isol /afii57411.isol /afii57411.fina /afii57413.isol
+% 4
+ /afii57413.fina /afii57410.isol /afii57410.fina /afii57416.init
+% 8
+ /.notdef /afii57416.fina /afii57416.isol /afii57418.init
+% 12
+ /.notdef /afii57418.fina /afii57418.isol /afii57419.init
+% 16
+ /afii57419.medi /afii57419.fina /afii57419.isol /afii57420.init
+% 20
+ /afii57420.medi /afii57420.fina /afii57420.isol /afii57421.init
+% 24
+ /afii57421.medi /afii57421.fina /afii57421.isol /afii57422.init
+% 28
+ /afii57422.medi /afii57422.fina /afii57422.isol /.notdef
+% 32
+ /afii57423.isol /exclam /afii57458 /numbersign %OK
+% 36
+ /dollar /afii57381 /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /afii57388 /hyphen /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /uni06F0 /uni06F1 /uni06F2 /uni06F3 % 0 1 2 3
+% 52
+ /uni06F4 /uni06F5 /uni06F6 /uni06F7 % 4 5 6 7
+% 56
+ /uni06F8 /uni06F9 /colon /afii57403 % 8 9 % colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /afii57407
+% 64
+ /afii57424.fina /afii57415.fina /.notdef /afii57425.isol
+% 68
+ /.nodef /afii57426.isol /afii57427.init /.notdef
+% 72
+ /afii57427.fina /uni06CC.media /afii57428.init /afii57428.medi
+% 76
+ /afii57428.fina /afii57428.isol /.notdef /afii57429.medi
+% 80
+ /afii57429.fina /afii57429.isol /afii57430.init /afii57430.medi
+% 84
+ /afii57417.fina /afii57448.fina /afii57431.init /afii57431.medi
+% 88
+ /afii57431.fina /uni06CC.fina /afii57432.init /bracketright
+% 92
+ /afii57432.medi /bracketleft /afii57432.fina /afii57432.isol
+% 96
+ /afii57433.medi /afii57454 /afii57416.medi /afii57507.medi %% xxx tchehM
+% 100
+ /afii57423.fina /.notdef /afii57441.medi /afii57509.medi %% xxx gafM
+% 104
+ /afii57470.medi /afii57456 /.notdef /uni06A9.medi
+% 108
+ /afii57444.medi /afii57445.medi /afii57446.medi /.notdef
+% 112
+ /afii57506.medi /afii57442.medi /afii57425.fina /afii57427.medi %%pehM xxx
+% 116
+ /afii57418.medi /afii57455 /.notdef /afii57448.fina
+% 120
+ /afii57427.isol /uni06CC.medi /afii57426.fina /afii57430.fina
+% 124
+ /afii57430.isol /afii57429.init /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /afii57433.init /afii57433.fina /afii57433.isol /afii57434.init
+% 140
+ /afii57434.medi /afii57434.fina /afii57434.isol /afii57441.init
+% 144
+ /afii57441.fina /afii57441.isol /afii57442.init /afii57442.fina
+% 148
+ /afii57442.isol /uni06A9.init /uni06A9.fina /uni06A9.isol
+% 152
+ /afii57444.init /afii57444.fina /afii57444.isol /afii57445.init
+% 156
+ /afii57445.fina /afii57445.isol /afii57446.init /afii57446.fina
+% 160
+ /afii57446.isol /afii57470.init /afii57470.fina /afii57470.isol
+% 164
+ /afii57448.isol /afii57412.fina /afii57412.isol /uni06CC.init
+% 168
+ /uni06CC.fina /uni06CC.isol /afii57431.isol /.notdef
+% 172
+ /.notdef /afii57417.isol /afii57444_afii57415.fina /afii57444_afii57415.isol
+% 176 2nd with dd!!!!
+ /afii57444_afii57411.fina /afii57444_afii57411.isol
+ /afii57444_afii57413.fina /afii57444_afii57413.isol
+% 180 2nd with dd!!!!
+ /afii57444_afii57410.fina /afii57444_afii57410.isol
+ /afii57414.init /afii57414.medi
+% 184
+ /afii57414.fina /afii57414.isol
+ /afii57409 /.notdef
+% 188
+ /.notdef /.notdef /afii57451 /afii57452
+% 192
+ /afii57453 /afii57454 /afii57455 /afii57456
+% 196
+ /afii57457 /afii57458 /afii57457_afii57451 /afii57457_afii57452
+% 200
+ /afii57457_afii57453 /afii57457_afii57454 /afii57457_afii57455 /afii57457_afii57456
+% 204 ok
+ /afii57457 /afii57457_afii57454 /afii57457_afii57455 /afii57457_afii57456
+% 208
+ /afii57424.isol /afii57508.fina /afii57508.isol /afii57506.init
+% 212
+ /afii57506.fina /afii57506.isol /afii57509.init /afii57509.fina
+% 216
+ /afii57509.isol /afii57507.init /afii57507.fina /afii57507.isol
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /uni066C /uni066B % Arabic Thousands Separator and Arabic decimal separator
+% 252
+ /uni0644064406510647 /uniFDFC /afii57440 /.notdef % llah ryal(uniFDFC) tatweel
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frmonotype.enc b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frmonotype.enc
new file mode 100644
index 0000000000..25d1dceeba
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frmonotype.enc
@@ -0,0 +1,148 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Farsi texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/MonotypeFarsiEncoding [ % now 256 chars follow
+% 0
+ /alefisolated /alefwithhamzaaboveisolated /alefwithhamzaabovefinal /alefwithhamzabelowisolated
+% 4
+ /alefwithhamzabelowfinal /alefwithmaddaaboveisolated /alefwithmaddaabovefinal /behinitial
+% 8
+ /.notdef /behfinal /behisolated /tehinitial
+% 12
+ /.notdef /tehfinal /tehisolated /thehinitial
+% 16
+ /thehmedial /thehfinal /thehisolated /jeeminitial
+% 20
+ /jeemmedial /jeemfinal /jeemisolated /hahinitial
+% 24
+ /hahmedial /hahfinal /hahisolated /khahinitial
+% 28
+ /khahmedial /khahfinal /khahisolated /.notdef
+% 32
+ /dalisolated /exclam /sukun /numbersign %OK
+% 36
+ /dollar /arabicpercentsign /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /arabiccomma /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /extendedarabicindicdigitzero /extendedarabicindicdigitone
+ /extendedarabicindicdigittwo /extendedarabicindicdigitthree
+% 52
+ /extendedarabicindicdigitfour /extendedarabicindicdigitfive
+ /extendedarabicindicdigitsix /extendedarabicindicdigitseven
+% 56
+ /extendedarabicindicdigiteight /extendedarabicindicdigitnine
+ /colon /arabicsemicolon %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /arabicquestionmark
+% 64
+ /thalfinal /aleffinal /.notdef /rehisolated
+% 68
+ /.nodef /zainisolated /seeninitial /.notdef
+% 72
+ /seenfinal /yehmedial /sheeninitial /sheenmedial
+% 76
+ /sheenfinal /sheenisolated /.notdef /sadmedial
+% 80
+ /sadfinal /sadisolated /dadinitial /dadmedial
+% 84
+ /tehmarbutafinal /wawfinal /tahinitial /tahmedial
+% 88
+ /tahfinal /alefmaksurafinal /zahinitial /ornaterightparenthesis
+% 92
+ /zahmedial /ornateleftparenthesis /zahfinal /zahisolated
+% 96
+ /ainmedial /fathaisolated /behmedial /tchehmedial
+% 100
+ /dalfinal /.notdef /fehmedial /gafmedial
+% 104
+ /hehmedial /kasraisolated /.notdef /kehehmedial
+% 108
+ /lammedial /meemmedial /noonmedial /.notdef
+% 112
+ /pehmedial /qafmedial /rehfinal /seenmedial
+% 116
+ /tehmedial /dammaisolated /.notdef /wawfinal
+% 120
+ /seenisolated /yehmedial /zainfinal /dadfinal
+% 124
+ /dadisolated /sadinitial /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /aininitial /ainfinal /ainisolated /ghaininitial
+% 140
+ /ghainmedial /ghainfinal /ghainisolated /fehinitial
+% 144
+ /fehfinal /fehisolated /qafinitial /qaffinal
+% 148
+ /qafisolated /kehehinitial /kehehfinal /kehehisolated
+% 152
+ /laminitial /lamfinal /lamisolated /meeminitial
+% 156
+ /meemfinal /meemisolated /nooninitial /noonfinal
+% 160
+ /noonisolated /hehinitial /hehfinal /hehisolated
+% 164
+ /wawisolated /wawwithhamzaabovefinal /wawwithhamzaaboveisolated /yehinitial
+% 168
+ /farsiyehfinal /farsiyehisolated /tahisolated /.notdef
+% 172
+ /.notdef /tehmarbutaisolated /lamwithaleffinal /lamwithalefisolated
+% 176 2nd with dd!!!!
+ /lamwithalefhamzaabovefinal /lamwithalefhamzaaboveisolatedd
+ /lamwithalefhamzabelowfinal /lamwithalefhamzabelowisolated
+% 180 2nd with dd!!!!
+ /lamwithalefmaddaabovefinal /lamwithalefmaddaaboveisolatedd
+ /yehwithhamzaaboveinitial /yehwithhamzaabovemedial
+% 184
+ /yehwithhamzaabovefinal /yehwithhamzaaboveisolated
+ /hamzaisolated /.notdef
+% 188
+ /.notdef /.notdef /fathatan /dammatan
+% 192
+ /kasratanlow /fathaisolated /dammaisolated /kasraisolated
+% 196
+ /shaddaisolated /sukunisolated /shaddawithfathatanisolated /shaddawithdammatanisolated
+% 200
+ /shaddawithkasratanisolatedlow /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 204
+ /shaddaisolated /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 208
+ /thalisolated /jehfinal /jehisolated /pehinitial
+% 212
+ /pehfinal /pehisolated /gafinitial /gaffinal
+% 216
+ /gafisolated /tchehinitial /tchehfinal /tchehisolated
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /quotesinglbase
+% 252
+ /allahisolated /rayaleflam /tatweel /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frsimple.enc b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frsimple.enc
new file mode 100644
index 0000000000..24a6204cfe
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frsimple.enc
@@ -0,0 +1,142 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Farsi texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/FarsisimpleEncoding[ % now 256 chars follow
+% 0
+ /uniFE8D /uniFE83 /uniFE84 /uniFE87
+% 4
+ /uniFE88 /uniFE81 /uniFE82 /uniFE91
+% 8
+ /.notdef /uniFE90 /uniFE8F /uniFE97
+% 12
+ /.notdef /uniFE96 /uniFE95 /uniFE9B
+% 16
+ /uniFE9C /uniFE9A /uniFE99 /uniFE9F
+% 20
+ /uniFEA0 /uniFE9E /uniFE9D /uniFEA3
+% 24
+ /uniFEA4 /uniFEA2 /uniFEA1 /uniFEA7
+% 28
+ /uniFEA8 /uniFEA6 /uniFEA5 /.notdef
+% 32
+ /uniFEA9 /exclam /.notdef /numbersign %OK
+% 36
+ /dollar /uni066A /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /uni060C /hyphen /uni06D4 /backslash % we should get the "arabicslash" in 4th position
+% 48
+ /uni06F00 /uni06F1 /uni06F2 /uni06F3
+% 52
+ /uni06F4 /uni06F5 /uni06F6 /uni06F7
+% 56
+ /uni06F8 /uni06F9 /colon /uni061B %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /uni061F
+% 64
+ /uniFEAC /uniFE8E /.notdef /uniFEAD
+% 68
+ /.nodef /uniFEAF /uniFEB3 /.notdef
+% 72
+ /uniFEB2 /uniFEF4 /uniFEB7 /uniFEB8
+% 76
+ /uniFEB6 /uniFEB5 /.notdef /uniFEBC
+% 80
+ /uniFEBA /uniFEB9 /uniFEBF /uniFEC0
+% 84
+ /uniFE94 /uniFEEE /uniFEC3 /uniFEC4
+% 88
+ /uniFEC2 /uniFEF0 /uniFEC7 /uniFD3F
+% 92
+ /uniFEC8 /uniFD3E /uniFEC6 /uniFEC5
+% 96
+ /uniFECC /uni0653 /uniFE92 /uniFB7D
+% 100
+ /uniFEAA /.notdef /uniFED4 /uniFB95
+% 104
+ /uniFEEC /.notdef /.notdef /uniFB91
+% 108
+ /uniFEE0 /uniFEE4 /uniFEE8 /.notdef
+% 112
+ /uniFB59 /uniFED8 /uniFEAE /uniFEB4
+% 116
+ /uniFE98 /.notdef /.notdef /uniFEEE
+% 120
+ /uniFEB1 /uniFEF4 /uniFEB0 /uniFEBE
+% 124
+ /uniFEBD /uniFEBB /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /uniFECB /uniFECA /uniFEC9 /uniFECF
+% 140
+ /uniFED0 /uniFECE /uniFECD /uniFED3
+% 144
+ /uniFED2 /uniFED1 /uniFED7 /uniFED6
+% 148
+ /uniFED5 /uniFB90 /uniFB8F /uniFB8E
+% 152
+ /uniFEDF /uniFEDE /uniFEDD /uniFEE3
+% 156
+ /uniFEE2 /uniFEE1 /uniFEE7 /uniFEE6
+% 160
+ /uniFEE5 /uniFEEB /uniFEEA /uniFEE9
+% 164
+ /uniFEED /uniFE86 /uniFE85 /uniFEF3
+% 168
+ /uniFEF0 /uniFEEF /uniFEC1 /.notdef
+% 172
+ /.notdef /uniFE93 /uniFEFC /uniFEFB
+% 176 2nd with dd!!!!
+ /uniFEF8 /uniFEF7 /uniFEFA /uniFEF9
+% 180 2nd with dd!!!!
+ /uniFEF6 /uniFEF5 /uniFE8B /uniFE8C
+% 184
+ /uniFE8A /uniFE89 /uniFE80 /.notdef
+% 188
+ /.notdef /.notdef /.notdef /.notdef
+% 192
+ /.notdef /.notdef /.notdef /.notdef
+% 196
+ /.notdef /.notdef /.notdef /.notdef
+% 200
+ /.notdef /.notdef /.notdef /.notdef
+% 204
+ /.notdef /.notdef /.notdef /.notdef
+% 208
+ /uniFEAB /uniFB8B /uniFB8A /uniFB58
+% 212
+ /uniFB57 /uniFB56 /uniFB94 /uniFB93
+% 216
+ /uniFB92 /uniFB7C /uniFB7B /uniFB7A
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /uni066C
+% 252
+ /uniFDF2 /.notdef /uni0640 /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frsimplified.enc b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frsimplified.enc
new file mode 100644
index 0000000000..3716a63c8a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frsimplified.enc
@@ -0,0 +1,146 @@
+% @psencodingfile{
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Farsi texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/SimplifiedFarsiEncoding [ % now 256 chars follow
+% 0
+ /alefisolated /alefwithhamzaaboveisolated /alefwithhamzaabovefinal /alefwithhamzabelowisolated
+% 4
+ /alefwithhamzabelowfinal /alefwithmaddaaboveisolated /alefwithmaddaabovefinal /behmedial
+% 8
+ /.notdef /behisolated /behisolated /tehmedial
+% 12
+ /.notdef /tehisolated /tehisolated /thehmedial
+% 16
+ /thehmedial /thehisolated /thehisolated /jeemmedial
+% 20
+ /jeemmedial /jeemfinal /jeemisolated /hahmedial
+% 24
+ /hahmedial /hahfinal /hahisolated /khahmedial
+% 28
+ /khahmedial /khahfinal /khahisolated /.notdef
+% 32
+ /dalisolated /exclam /sukun /numbersign %OK
+% 36
+ /dollar /arabicpercentsign /ampersand /quotesingle %ok
+% 40
+ /parenright /parenleft /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /arabiccomma /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /arabicindicdigitzero /arabicindicdigitone /arabicindicdigittwo /arabicindicdigitthree
+% 52
+ /arabicindicdigitfour /arabicindicdigitfive /arabicindicdigitsix /arabicindicdigitseven
+% 56
+ /arabicindicdigiteight /arabicindicdigitnine /colon /arabicsemicolon %colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /arabicquestionmark
+% 64
+ /thalisolated /aleffinal /.notdef /reh
+% 68
+ /.nodef /zainisolated /seenmedial /.notdef
+% 72
+ /seenisolated /yehmedial /sheenmedial /sheenmedial
+% 76
+ /sheenisolated /sheenisolated /.notdef /sadmedial
+% 80
+ /sadisolated /sadisolated /dadmedial /dadmedial
+% 84
+ /tehmarbutafinal /wawisolated /tahisolated /tahisolated
+% 88
+ /tahisolated /alefmaksurafinal /zahisolated /ornaterightparenthesis
+% 92
+ /zahisolated /ornateleftparenthesis /zahisolated /zahisolated
+% 96
+ /ainmedial /fathaisolated /behmedial /tchehmedial
+% 100
+ /dalisolated /.notdef /fehmedial /gafmedial
+% 104
+ /hehmedial /kasraisolated /.notdef /kehehmedial
+% 108
+ /lammedial /meemmedial /noonmedial /.notdef
+% 112
+ /pehmedial /qafmedial /rehisolated /seenmedial
+% 116
+ /tehmedial /dammaisolated /.notdef /wawisolated
+% 120
+ /seenisolated /yehmedial /zainisolated /dadisolated
+% 124
+ /dadisolated /sadmedial /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /aininitial /ainfinal /ainisolated /ghaininitial
+% 140
+ /ghainmedial /ghainfinal /ghainisolated /fehinitial
+% 144
+ /fehisolated /fehisolated /qafinitial /qafisolated
+% 148
+ /qafisolated /kehehinitial /kehehfinal /kehehisolated
+% 152
+ /lammedial /lam /lam /meemmedial % the lamisolated is in fact medial-initial BADD!!
+% 156
+ /meemisolated /meemisolated /noonmedial /noonisolated
+% 160
+ /noonisolated /hehinitial /hehfinal /hehisolated
+% 164
+ /wawisolated /wawwithhamzaabove /wawwithhamzaabove /yehmedial
+% 168
+ /farsiyehfinal /farsiyehisolated /tahisolated /.notdef
+% 172
+ /.notdef /tehmarbutaisolated /lamwithaleffinal /lamwithalefisolated
+% 176 2nd with dd!!!!
+ /lamwithalefhamzaabovefinal /lamwithalefhamzaaboveisolatedd %with dd at the end!!!!
+ /lamwithalefhamzabelowfinal /lamwithalefhamzabelowisolated
+% 180 2nd with dd!!!!
+ /lamwithalefmaddaabovefinal /lamwithalefmaddaaboveisolatedd
+ /yehwithhamzaabovemedial /yehwithhamzaabovemedial
+% 184
+ /yehwithhamzaabovefinal /yehwithhamzaaboveisolated
+ /hamza /.notdef
+% 188
+ /.notdef /.notdef /fathatan /dammatan
+% 192
+ /kasratanlow /fathaisolated /dammaisolated /kasraisolated
+% 196
+ /shaddaisolated /sukunisolated /shaddawithfathatanisolated /shaddawithdammatanisolated
+% 200
+ /shaddawithkasratanisolated /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 204
+ /shaddaisolated /shaddawithfathaisolated /shaddawithdammaisolated /shaddawithkasraisolated
+% 208
+ /thal /jehisolated /jehisolated /pehmedial
+% 212
+ /pehisolated /pehisolated /gafinitial /gaffinal
+% 216
+ /gafisolated /tchehmedial /tchehfinal /tchehisolated
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /quotesinglbase % singl without "e"
+% 252
+ /allahisolated /rayaleflam /tatweel /.notdef
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frunicode.enc b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frunicode.enc
new file mode 100644
index 0000000000..c018d947e0
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/enc/dvips/arabi/frunicode.enc
@@ -0,0 +1,146 @@
+%
+% Encoding file for some PostScript Arabic fonts to use with the
+% Arabi package to write Farsi texts with LaTeX
+%
+% author = "Y. Jabri",
+% email = "yjabri@ensa.univ-oujda.ac.ma",
+% version = "0.1",
+% date = "January 2006",
+%
+%
+%
+/UnicodeGlyphNamesFarsiEncoding [ % now 256 chars follow
+% 0
+ /afii57415 /afii57411 /afii62754 /afii57413
+% 4
+ /afii62756 /afii52400 /afii62753 /afii62761
+% 8
+ /.notdef /afii62763 /afii57416 /afii62765
+% 12
+ /.notdef /afii62767 /afii57418 /afii62768
+% 16
+ /afii62769 /afii62770 /afii57419 /afii62771
+% 20
+ /afii62772 /afii62773 /afii57420 /afii62774
+% 24
+ /afii62775 /afii62776 /afii57421 /afii62777
+% 28
+ /afii62778 /afii62779 /afii57422 /.notdef
+% 32
+ /afii57423 /exclam /afii57458 /numbersign %OK
+% 36
+ /dollar /afii57381 /ampersand /quotesingle %ok
+% 40
+ /afii64061 /afii64060 /asterisk /quotedbl % parentheses were refelcted
+% 44
+ /afii57388 /endash /period /slash % we should get the "arabicslash" in 4th position
+% 48
+ /afii57392 /afii57393 /afii57394 /afii57395 % 0 1 2 3
+% 52
+ /afii62843 /afii62844 /afii62845 /afii57399 % 4 5 6 7
+% 56
+ /afii57400 /afii57401 /colon /afii57403 % 8 9 % colon ok ??
+% 60
+ /guillemotright /.notdef /guillemotleft /afii57407
+% 64
+ /afii62781 /afii62760 /.notdef /afii57425
+% 68
+ /.nodef /afii57426 /afii62784 /.notdef
+% 72
+ /afii62786 /afii62361 /afii62787 /afii62788
+% 76
+ /afii62789 /afii57428 /.notdef /afii62791
+% 80
+ /afii62792 /afii62792 /afii62790 /afii62794
+% 84
+ /afii62764 /afii62829 /afii62796 /afii62797
+% 88
+ /afii62798 /afii62830 /afii62799 /afii64061
+% 92
+ /afii62800 /afii64060 /afii62801 /afii57432
+% 96
+ /afii62803 /afii57454 /afii62762 /afii62959 %% xxx tchehM
+% 100
+ /afii62780 /.notdef /afii62809 /afii62966 %% xxx gafM
+% 104
+ /afii62827 /afii57456 /.notdef /afii62815
+% 108
+ /afii62818 /afii62821 /afii62824 /.notdef
+% 112
+ /afii62956 /afii62782 /afii62782 /afii62785 %%pehM xxx
+% 116
+ /afii62766 /afii57455 /.notdef /afii62829
+% 120
+ /afii57427 /afii62832 /afii62783 /afii62795
+% 124
+ /afii57430 /afii62790 /.notdef /.notdef %
+% 128
+ /.notdef /.notdef /.notdef /.notdef
+% 132
+ /.notdef /.notdef /.notdef /.notdef
+% 136
+ /afii62802 /afii62804 /afii57433 /afii62805
+% 140
+ /afii62806 /afii62807 /afii57434 /afii62808
+% 144
+ /afii62810 /afii57441 /afii62811 /afii62813
+% 148
+% /afii57442 /afii62815 /afii62816 /afii57443
+ /afii57442 /afii52305 /afii62964 /afii57567
+% 152
+ /afii62817 /afii62819 /afii57444 /afii62820
+% 156
+ /afii62822 /afii57445 /afii62823 /afii62825
+% 160
+ /afii57446 /afii57470 /afii62828 /afii57447
+% 164
+ /afii57448 /afii62755 /afii57412 /afii62831
+% 168
+ /afii62830 /afii57449 /afii57431 /.notdef
+% 172
+ /.notdef /afii57417 /afii62841 /afii62840
+% 176 2nd with dd!!!!
+ /afii62837 /afii62836
+ /afii62839 /afii62838
+% 180 2nd with dd!!!!
+ /afii62835 /afii62834
+ /afii62757 /afii62758
+% 184
+ /afii62759 /afii57414
+ /afii52399 /.notdef
+% 188
+ /.notdef /.notdef /afii57451 /afii57452
+% 192
+ /afii57453 /afii57454 /afii57455 /afii57456
+% 196
+ /afii57457 /afii57458 /afii62881 /afii62882
+% 200
+ /afii62883 /afii62884 /afii62885 /afii62886
+% 204
+ /afii57457 /afii62884 /afii62885 /afii62886
+% 208
+ /afii57424 /afii62962 /afii57508 /afii62956
+% 212
+ /afii62958 /afii57506 /afii62965 /afii62967
+% 216
+ /afii57509 /afii62959 /afii62961 /afii57507
+% 220
+ /.notdef /.notdef /.notdef /.notdef
+% 224
+ /.notdef /.notdef /.notdef /.notdef
+% 228
+ /.notdef /.notdef /.notdef /.notdef
+% 232
+ /.notdef /.notdef /.notdef /.notdef
+% 236
+ /.notdef /.notdef /.notdef /.notdef
+% 240
+ /.notdef /.notdef /.notdef /.notdef
+% 244
+ /.notdef /.notdef /.notdef /.notdef
+% 248
+ /.notdef /.notdef /.notdef /afii57461
+% 252
+ /afii64184 /.notdef /afii57391 /.notdef % llah (uni0644064406510647) ryal(uniFDFC) tatweel
+] def
+
diff --git a/language/arabic/arabi/arabi/texmf/fonts/map/dvips/arabi/arabi.map b/language/arabic/arabi/arabi/texmf/fonts/map/dvips/arabi/arabi.map
new file mode 100644
index 0000000000..b124cafda2
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/map/dvips/arabi/arabi.map
@@ -0,0 +1,67 @@
+% \iffalse meta-comment
+%
+% Copyright 2006, 2011, 2012 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Font map correspondence between TFMs and real (actually .PFB)
+% fonts used by the Arabi package.
+%
+%%%%%%%%%%%%%%% Arabeyes Arabic GNU fonts %%%%%%%%%%%%%%%%%%
+aealbattar ae_AlBattar " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_albattar.pfb
+aealmateen ae_AlMateen " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_almateen.pfb
+aealmohanadb ae_AlMohanadBold " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_almohanad_bold.pfb
+aealmothnna ae_AlMothnna " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_almothnna.pfb
+aealyermook ae_AlYermook " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_alyermook.pfb
+aearab ae_Arab " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_arab.pfb
+aecortoba ae_Cortoba " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_cortoba.pfb
+aedimnah ae_Dimnah " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_dimnah.pfb
+aefurat ae_Furat " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_furat.pfb
+aegranada ae_Granada " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_granada.pfb
+aegraph ae_Graph " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_graph.pfb
+aehani ae_Hani " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_hani.pfb
+aehor ae_Hor " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_hor.pfb
+aekayrawan ae_Kayrawan " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_kayrawan.pfb
+aekhalid ae_Khalid " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_khalid.pfb
+aemashq ae_Mashq " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_mashq.pfb
+aemetal ae_Metal " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_metal.pfb
+aenada ae_Nada " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_nada.pfb
+aenagham ae_Nagham " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_nagham.pfb
+aenice ae_Nice " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_nice.pfb
+aeostorah ae_Ostorah " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_ostorah.pfb
+aeouhod ae_Ouhod " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_ouhod.pfb
+aepetra ae_Petra " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_petra.pfb
+aerehan ae_Rehan " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_rehan.pfb
+aesalem ae_Salem " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_salem.pfb
+aeshado ae_Shado " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_shado.pfb
+aesharjah ae_Sharjah " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_sharjah.pfb
+aesindibad ae_Sindibad " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_sindibad.pfb
+aetarablus ae_Tarablus " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_tarablus.pfb
+aetholoth ae_Tholoth " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_tholoth.pfb
+%
+aealmohanadbolditalic ae_AlMohanadBoldItalic " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_AlMohanad_boldItalic.pfb
+ae_almohanad_xxbold ae_AlMohanadExtraBold2 " ArabeyesArabicEncoding ReEncodeFont " <ararabeyes.enc <ae_AlMohanad_xxbold.pfb
+%
+%%%%%%%%%%%%%%%%%%%% FarsiWeb GNU fonts %%%%%%%%%%%%%%%%%%%%
+%nazlibout Nazli-Bold " FarsiWebEncoding ReEncodeFont /PaintType 2 store" <farsiwebencoding.enc <nazlib.pfb
+%nazliout Nazli "FarsiWebEncoding ReEncodeFont /PaintType 2 store" <farsiwebencoding.enc <nazli.pfb
+%titrout Titr-Bold " FarsiWebEncoding ReEncodeFont /PaintType 2 store" <farsiwebencoding.enc <titr.pfb
+homa Homa " FarsiWebEncoding ReEncodeFont " <farsiwebencoding.enc <homa.pfb
+nazli Nazli " FarsiWebEncoding ReEncodeFont " <farsiwebencoding.enc <nazli.pfb
+nazlib Nazli-Bold " FarsiWebEncoding ReEncodeFont " <farsiwebencoding.enc <nazlib.pfb
+titr Titr-Bold " FarsiWebEncoding ReEncodeFont " <farsiwebencoding.enc <titr.pfb
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_almohanad_xxbold.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_almohanad_xxbold.tfm
new file mode 100644
index 0000000000..34b4299169
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_almohanad_xxbold.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_alyermook.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_alyermook.tfm
new file mode 100644
index 0000000000..77f6569e1f
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_alyermook.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_arab.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_arab.tfm
new file mode 100644
index 0000000000..3c82540e24
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_arab.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_tholoth.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_tholoth.tfm
new file mode 100644
index 0000000000..cb1b19dce7
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/ae_tholoth.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealbattar.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealbattar.tfm
new file mode 100644
index 0000000000..18c1010371
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealbattar.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmateen.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmateen.tfm
new file mode 100644
index 0000000000..06cbca4c0a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmateen.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmohanadb.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmohanadb.tfm
new file mode 100644
index 0000000000..ab58caf488
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmohanadb.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmohanadbolditalic.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmohanadbolditalic.tfm
new file mode 100644
index 0000000000..565e67eb68
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmohanadbolditalic.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmothnna.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmothnna.tfm
new file mode 100644
index 0000000000..f538f106c5
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealmothnna.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealyermook.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealyermook.tfm
new file mode 100644
index 0000000000..e313f43f2e
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aealyermook.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aearab.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aearab.tfm
new file mode 100644
index 0000000000..b317144230
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aearab.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aecortoba.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aecortoba.tfm
new file mode 100644
index 0000000000..0731bf35ca
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aecortoba.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aedimnah.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aedimnah.tfm
new file mode 100644
index 0000000000..0233efdac5
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aedimnah.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aefurat.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aefurat.tfm
new file mode 100644
index 0000000000..e3b04eb2b9
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aefurat.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aegranada.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aegranada.tfm
new file mode 100644
index 0000000000..1f75fca3a2
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aegranada.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aegraph.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aegraph.tfm
new file mode 100644
index 0000000000..dc380b307f
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aegraph.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aehani.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aehani.tfm
new file mode 100644
index 0000000000..0d7211a22b
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aehani.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aehor.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aehor.tfm
new file mode 100644
index 0000000000..595b37fd73
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aehor.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aekayrawan.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aekayrawan.tfm
new file mode 100644
index 0000000000..b3c66dbc72
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aekayrawan.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aekhalid.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aekhalid.tfm
new file mode 100644
index 0000000000..1b4de233b2
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aekhalid.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aemashq.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aemashq.tfm
new file mode 100644
index 0000000000..0725fe414e
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aemashq.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aemetal.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aemetal.tfm
new file mode 100644
index 0000000000..fdbb8c5970
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aemetal.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aenada.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aenada.tfm
new file mode 100644
index 0000000000..28a03049d7
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aenada.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aenagham.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aenagham.tfm
new file mode 100644
index 0000000000..20bb699080
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aenagham.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aenice.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aenice.tfm
new file mode 100644
index 0000000000..1d1c329c72
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aenice.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aeostorah.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aeostorah.tfm
new file mode 100644
index 0000000000..ec87b3f6e8
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aeostorah.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aeouhod.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aeouhod.tfm
new file mode 100644
index 0000000000..a1e33ecf9d
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aeouhod.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aepetra.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aepetra.tfm
new file mode 100644
index 0000000000..698770d179
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aepetra.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aerehan.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aerehan.tfm
new file mode 100644
index 0000000000..aa0c069a87
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aerehan.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aesalem.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aesalem.tfm
new file mode 100644
index 0000000000..04a657841e
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aesalem.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aeshado.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aeshado.tfm
new file mode 100644
index 0000000000..7e3af1dae4
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aeshado.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aesharjah.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aesharjah.tfm
new file mode 100644
index 0000000000..2f80103e07
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aesharjah.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aesindibad.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aesindibad.tfm
new file mode 100644
index 0000000000..0f6bcd981b
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aesindibad.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aetarablus.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aetarablus.tfm
new file mode 100644
index 0000000000..9281f0ff78
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aetarablus.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aetholoth.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aetholoth.tfm
new file mode 100644
index 0000000000..b38b766a0d
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/arabeyes/aetholoth.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/homa.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/homa.tfm
new file mode 100644
index 0000000000..076bae3b30
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/homa.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazli.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazli.tfm
new file mode 100644
index 0000000000..4f1027ed1a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazli.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazlib.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazlib.tfm
new file mode 100644
index 0000000000..71fdbfa1d4
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazlib.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazlibout.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazlibout.tfm
new file mode 100644
index 0000000000..71fdbfa1d4
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazlibout.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazliout.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazliout.tfm
new file mode 100644
index 0000000000..4f1027ed1a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/nazliout.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/titr.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/titr.tfm
new file mode 100644
index 0000000000..d04bf815eb
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/titr.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/titrout.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/titrout.tfm
new file mode 100644
index 0000000000..d04bf815eb
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/farsiweb/titrout.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ararial.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ararial.tfm
new file mode 100644
index 0000000000..bac95c7e3a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ararial.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ararialbd.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ararialbd.tfm
new file mode 100644
index 0000000000..c546d61386
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ararialbd.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arcour.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arcour.tfm
new file mode 100644
index 0000000000..ffdeb2c5c5
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arcour.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arcourbd.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arcourbd.tfm
new file mode 100644
index 0000000000..87287af30b
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arcourbd.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/aromega.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/aromega.tfm
new file mode 100644
index 0000000000..6e3902a07c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/aromega.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/aromegab.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/aromegab.tfm
new file mode 100644
index 0000000000..a88dc40e10
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/aromegab.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arsimpbdo.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arsimpbdo.tfm
new file mode 100644
index 0000000000..d0b1958d11
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arsimpbdo.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arsimpo.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arsimpo.tfm
new file mode 100644
index 0000000000..0722fa428d
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/arsimpo.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/artimes.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/artimes.tfm
new file mode 100644
index 0000000000..bac95c7e3a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/artimes.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/artimesbd.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/artimesbd.tfm
new file mode 100644
index 0000000000..c546d61386
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/artimesbd.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/fandlso.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/fandlso.tfm
new file mode 100644
index 0000000000..7e98a5623e
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/fandlso.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frarial.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frarial.tfm
new file mode 100644
index 0000000000..d8c929ef48
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frarial.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frarialb.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frarialb.tfm
new file mode 100644
index 0000000000..2b52706ec5
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frarialb.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsimpbdo.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsimpbdo.tfm
new file mode 100644
index 0000000000..9da55cf00c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsimpbdo.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsimpo.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsimpo.tfm
new file mode 100644
index 0000000000..80a8732b82
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsimpo.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsspbl.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsspbl.tfm
new file mode 100644
index 0000000000..57abe5494c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsspbl.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsspout.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsspout.tfm
new file mode 100644
index 0000000000..285306d1cd
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frsspout.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frtimes.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frtimes.tfm
new file mode 100644
index 0000000000..3fc6cfbbae
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frtimes.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frtimesbd.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frtimesbd.tfm
new file mode 100644
index 0000000000..0336a6ef91
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/frtimesbd.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ftraditionalarabic.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ftraditionalarabic.tfm
new file mode 100644
index 0000000000..da51473b80
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ftraditionalarabic.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ftraditionalarabicbold.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ftraditionalarabicbold.tfm
new file mode 100644
index 0000000000..28abc60662
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/ftraditionalarabicbold.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/tradbdo.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/tradbdo.tfm
new file mode 100644
index 0000000000..f0fdafc89a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/tradbdo.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionaarabicbold.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionaarabicbold.tfm
new file mode 100644
index 0000000000..7395018bbf
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionaarabicbold.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionalarabic.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionalarabic.tfm
new file mode 100644
index 0000000000..adadd3f2b9
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionalarabic.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionalarabicbold.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionalarabicbold.tfm
new file mode 100644
index 0000000000..92cd60c080
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionalarabicbold.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionalarabicreversed.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionalarabicreversed.tfm
new file mode 100644
index 0000000000..06350572f5
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/microsoft/traditionalarabicreversed.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/nonfree/dthuluth.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/nonfree/dthuluth.tfm
new file mode 100644
index 0000000000..d31bbd8487
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/nonfree/dthuluth.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/nonfree/dtpn.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/nonfree/dtpn.tfm
new file mode 100644
index 0000000000..29b8384f9c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/nonfree/dtpn.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/nonfree/dtpnsp.tfm b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/nonfree/dtpnsp.tfm
new file mode 100644
index 0000000000..76899f927e
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/tfm/arabi/nonfree/dtpnsp.tfm
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_albattar.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_albattar.pfb
new file mode 100644
index 0000000000..e6cd2f27de
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_albattar.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almateen.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almateen.pfb
new file mode 100644
index 0000000000..2cc4bf6ca0
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almateen.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_bold.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_bold.pfb
new file mode 100644
index 0000000000..017a7f27ef
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_bold.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_boldItalitalic.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_boldItalitalic.pfb
new file mode 100644
index 0000000000..2cab5de2ce
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_boldItalitalic.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_thin.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_thin.pfb
new file mode 100644
index 0000000000..0b2e8fd8d1
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_thin.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_xxbold.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_xxbold.pfb
new file mode 100644
index 0000000000..287667cbab
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almohanad_xxbold.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almothnna.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almothnna.pfb
new file mode 100644
index 0000000000..3b0da32a4c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_almothnna.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_alyermook.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_alyermook.pfb
new file mode 100644
index 0000000000..780df89902
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_alyermook.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_arab.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_arab.pfb
new file mode 100644
index 0000000000..d13c33e7b9
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_arab.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_cortoba.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_cortoba.pfb
new file mode 100644
index 0000000000..e0a92d4d1a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_cortoba.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_dimnah.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_dimnah.pfb
new file mode 100644
index 0000000000..7456ee78fd
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_dimnah.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_furat.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_furat.pfb
new file mode 100644
index 0000000000..770270cfc4
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_furat.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_granada.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_granada.pfb
new file mode 100644
index 0000000000..01bdfcefea
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_granada.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_graph.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_graph.pfb
new file mode 100644
index 0000000000..7c76c2b229
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_graph.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_hani.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_hani.pfb
new file mode 100644
index 0000000000..80a34c4897
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_hani.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_hor.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_hor.pfb
new file mode 100644
index 0000000000..361f1656fa
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_hor.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_kayrawan.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_kayrawan.pfb
new file mode 100644
index 0000000000..feaef54fdf
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_kayrawan.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_khalid.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_khalid.pfb
new file mode 100644
index 0000000000..1bb6d0c587
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_khalid.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_mashq.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_mashq.pfb
new file mode 100644
index 0000000000..b8005fa378
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_mashq.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_metal.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_metal.pfb
new file mode 100644
index 0000000000..6d42b7a86c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_metal.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_nada.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_nada.pfb
new file mode 100644
index 0000000000..4a5d81e15c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_nada.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_nagham.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_nagham.pfb
new file mode 100644
index 0000000000..0ab8d6d35d
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_nagham.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_nice.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_nice.pfb
new file mode 100644
index 0000000000..6d40a62a49
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_nice.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_ostorah.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_ostorah.pfb
new file mode 100644
index 0000000000..5faf2c4d76
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_ostorah.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_ouhod.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_ouhod.pfb
new file mode 100644
index 0000000000..b23fc76364
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_ouhod.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_petra.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_petra.pfb
new file mode 100644
index 0000000000..841a7c6ffe
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_petra.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_rehan.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_rehan.pfb
new file mode 100644
index 0000000000..1cc981222e
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_rehan.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_salem.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_salem.pfb
new file mode 100644
index 0000000000..8c4f659a80
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_salem.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_shado.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_shado.pfb
new file mode 100644
index 0000000000..10ed4eb978
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_shado.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_sharjah.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_sharjah.pfb
new file mode 100644
index 0000000000..6846285992
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_sharjah.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_sindibad.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_sindibad.pfb
new file mode 100644
index 0000000000..2cd7f21ca1
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_sindibad.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_tarablus.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_tarablus.pfb
new file mode 100644
index 0000000000..c9499da07f
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_tarablus.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_tholoth.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_tholoth.pfb
new file mode 100644
index 0000000000..ea68220ceb
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/arabeyes/ae_tholoth.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/homa.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/homa.pfb
new file mode 100644
index 0000000000..bf8089b2d0
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/homa.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/nazli.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/nazli.pfb
new file mode 100644
index 0000000000..776ce73d13
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/nazli.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/nazlib.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/nazlib.pfb
new file mode 100644
index 0000000000..c128020dcc
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/nazlib.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/titr.pfb b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/titr.pfb
new file mode 100644
index 0000000000..70933e114b
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/farsiweb/titr.pfb
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/microsoft b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/microsoft
new file mode 100644
index 0000000000..26c92f2fba
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/fonts/type1/arabi/microsoft
Binary files differ
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/8859-6.def b/language/arabic/arabi/arabi/texmf/latex/arabi/8859-6.def
new file mode 100644
index 0000000000..ab9d41c308
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/8859-6.def
@@ -0,0 +1,133 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: 8859-6.def
+%
+ \ProvidesFile{8859-6.def}
+ [2006/01/01 v0.1 ISO 8859-6 Arabic input encoding file]
+
+
+\makeatletter
+\ProvideTextCommandDefault{\textdegree}{\ensuremath{{^\circ}}}
+\ProvideTextCommandDefault{\textonehalf}{\ensuremath{\frac12}}
+\ProvideTextCommandDefault{\textonequarter}{\ensuremath{\frac14}}
+\ProvideTextCommandDefault{\textthreequarters}{\ensuremath{\frac34}}
+\ProvideTextCommandDefault{\textflorin}{\textit{f}}
+\ProvideTextCommandDefault{\textcent}
+ {\TextSymbolUnavailable\textcent}
+\ProvideTextCommandDefault{\textyen}
+ {\TextSymbolUnavailable\textyen}
+\ProvideTextCommandDefault{\newsheqel}
+ {\TextSymbolUnavailable\newsheqel}
+\ProvideTextCommandDefault{\textbrokenbar}
+ {\TextSymbolUnavailable\textbrokenbar}
+\ProvideTextCommandDefault{\textperthousand}
+ {\TextSymbolUnavailable\textperthousand}
+\providecommand{\mathonesuperior}{{^1}}
+\providecommand{\maththreesuperior}{{^3}}
+\providecommand{\mathtwosuperior}{{^2}}
+%%
+%% Digits and Punctuation characters are "set" in their
+%% corresponding part in the Latin scripts
+%%
+\DeclareInputText{160}{\nobreakspace}
+\DeclareInputText{164}{} %what is this ?? ;)
+\DeclareInputMath{172}{,} %arabic comma
+\DeclareInputText{187}{;} %arabic semicolon
+\DeclareInputText{191}{?} %arabic question mark
+\DeclareInputText{192}{ } %arabic space
+\DeclareInputText{193}{\hamza}
+\DeclareInputText{194}{\alefmadda}
+\DeclareInputText{195}{\alefhamza}
+\DeclareInputText{196}{\wawhamza}
+\DeclareInputText{197}{\aleflowerhamza}
+\DeclareInputText{198}{\yahamza}
+\DeclareInputText{199}{\alef}
+\DeclareInputText{200}{\baa}
+\DeclareInputText{201}{\T} %taa marbuuta
+\DeclareInputText{202}{\taa}
+\DeclareInputText{203}{\thaa}
+\DeclareInputText{204}{\jeem} %geem
+\DeclareInputText{205}{\Haa}
+\DeclareInputText{206}{\kha}
+\DeclareInputText{207}{\dal}
+\DeclareInputText{208}{\dhal}
+\DeclareInputText{209}{\ra}
+\DeclareInputText{210}{\zay}
+\DeclareInputText{211}{\seen}
+\DeclareInputText{212}{\sheen}
+\DeclareInputText{213}{\sad}
+\DeclareInputText{214}{\dad}
+\DeclareInputText{215}{\Ta}
+\DeclareInputText{216}{\za}
+\DeclareInputText{217}{\ayn}
+\DeclareInputText{218}{\ghayn}
+%
+\DeclareInputText{224}{\tatweel}
+\DeclareInputText{225}{\fa}
+\DeclareInputText{226}{\qaf}
+\DeclareInputText{227}{\kaf}
+\DeclareInputText{228}{\lam}
+\DeclareInputText{229}{\meem}
+\DeclareInputText{230}{\nun}
+\DeclareInputText{231}{\ha}
+\DeclareInputText{232}{\waw}
+\DeclareInputText{233}{\ya}
+\DeclareInputText{234}{\nasb}
+\DeclareInputText{235}{\raff}
+\DeclareInputText{236}{\jarr}
+\DeclareInputText{237}{\fatha}
+\DeclareInputText{238}{\damma}
+\DeclareInputText{239}{\kasra}
+\DeclareInputText{240}{\shadda}
+\DeclareInputText{241}{\sukun}
+\DeclareInputText{242}{\shaddanasb}
+\DeclareInputText{243}{\shaddaraff}
+\DeclareInputText{244}{\shaddajarr}
+\DeclareInputText{245}{\shaddafatha}
+\DeclareInputText{246}{\shaddadamma}
+\DeclareInputText{247}{\shaddakasra}
+%
+%
+% some Farsi characters
+\DeclareInputText{243}{\peh}
+\DeclareInputText{245}{\tcheh}
+\DeclareInputText{254}{\jeh}
+\DeclareInputText{248}{\gaf}
+%\DeclareInputText{xxx}{\kaf}% No FARSI KAF!!!
+\makeatother
+%%
+%% \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 \~}
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/PPRarabic.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/PPRarabic.sty
new file mode 100644
index 0000000000..433145e0f5
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/PPRarabic.sty
@@ -0,0 +1,101 @@
+%==============================================================================
+%% PPRdefault.sty (a slide style for Prosper)
+%% Copyright 2000-2001 Frdric Goualard
+%%
+%% Note: this style was contributed anonymously by a user.
+%%
+%% 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.
+%%
+%%
+%% PPRarabic.sty,v 0.01 2005/09/21
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesPackage{PPRarabic}[2005/09/21]
+\typeout{`an arabic' style for Prosper ---}
+\typeout{PPRarabic.sty, v 0.01 2005/09/21}
+\typeout{adapted from PPRdefault.sty, v 0.01 2005/09/21}
+\typeout{ }
+
+\RequirePackage{amssymb}
+% Loading packages necessary to define this slide style.
+% none
+
+\newgray{grayb}{.5}
+
+\FontTitle{%
+ \usefont{JAE}{reqaa}{m}{n}\fontsize{20.74pt}{18pt}\selectfont\blue}{%
+ \usefont{LAE}{reqaa}{m}{n}\fontsize{20.74pt}{18pt}\selectfont\blue}
+\FontText{%
+ \black\usefont{LAE}{reqaa}{m}{n}\fontsize{12.4pt}{12pt}\selectfont}{%
+ \black\usefont{LAE}{reqaa}{m}{n}\fontsize{12.4pt}{12pt}\selectfont}
+
+
+% Positionning of the title of a slide.
+\newcommand{\slidetitle}[1]{%
+ \rput[c](5.25,4.4){\fontTitle{#1}}
+}
+
+% Positionning for a logo
+\LogoPosition{-1,-1.1}
+
+% Definition of this style for slides.
+
+\newcommand{\BasicFrame}[1]{%
+%\ifinColor
+%\else
+%\fi
+\psline[linewidth=.5pt,linecolor=grayb](-1,0)(-1,-0.6)(-0.4,-0.6)
+\psline[linewidth=.5pt,linecolor=grayb](11,-0.6)(11.6,-0.6)(11.6,0)
+\psline[linewidth=.5pt,linecolor=grayb](-1,6.7)(-1,7.3)(-0.4,7.3)
+\psline[linewidth=.5pt,linecolor=grayb](11.6,6.7)(11.6,7.3)(11,7.3)
+ \PutLogo % Mandatory
+ {#1}
+\raggedright}
+
+\NewSlideStyle[115mm]{t}{5.3,3.2}{BasicFrame}
+\PDFCroppingBox{10 40 594 800}
+%\RequirePackage{semhelv}
+
+
+\myitem{1}{\includegraphics[width=.4cm]{red-bullet-on-white.ps}}
+\myitem{2}{\includegraphics[width=.3cm]{green-bullet-on-white.ps}}
+\myitem{3}{\includegraphics[width=.3cm]{yellow-bullet-on-white.ps}}
+
+
+
+
+
+
+
+
+
+
+
+
+\newpagestyle{arabic}{\hfill }{\ifnoFooter\else\hfill%
+ \ifisDraft
+ {\beginR\@colorFoot\tiny \L{\textbf{\jobname.tex}}~--~\@Title~--~\@Author~--~\L{\number\day/\number\month/\number\year}~--~\timenow~--~\@ensure@R{\sad}.~\thepage\ifallPages\space\@ensure@R{\meem\nun}\space\realpageref{last@page}\fi\endR}%
+ \else
+ \ifshowVersion
+ {\@colorFoot\tiny \L{\textbf{\jobname.tex}}~--~\@Title~--~\@Author~--~\number\day/\number\month/\number\year~--~\timenow~--~\@ensure@R{\sad}.~\thepage\ifallPages\space\@ensure@R{\meem\nun}\space\realpageref{last@page}\fi}%
+ \else
+ {\beginR\@colorFoot\tiny \@cartouche~--~\@ensure@R{\sad}.~\thepage\ifallPages\space\@ensure@R{\meem\nun}\space\realpageref{last@page}\fi\endR}%
+ \fi\fi\fi
+}
+
+\slidepagestyle{arabic}
+
+
+
+\endinput
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: t
+%%% End:
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/arabi4ht.cfg b/language/arabic/arabi/arabi/texmf/latex/arabi/arabi4ht.cfg
new file mode 100644
index 0000000000..d93189e2ab
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/arabi4ht.cfg
@@ -0,0 +1,60 @@
+\Preamble{html,info,ShowFont}%2,
+
+\Css{BODY {
+ PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 100\%; PADDING-BOTTOM: 0px;
+ MARGIN: 0px; COLOR: \#000; PADDING-TOP: 0px; FONT-FAMILY: arial, sans-serif;
+ BACKGROUND-COLOR: \#ced4da
+}}
+\Css{A {
+ COLOR: \#03c; TEXT-DECORATION: none
+}}
+\Css{A:visited {
+ COLOR: \#039; TEXT-DECORATION: none
+}}
+\Css{A:hover {
+ COLOR: \#36f; TEXT-DECORATION: underline
+}}
+\Css{A.selected {
+ FONT-WEIGHT: bold; COLOR: \#88969e
+}}
+
+
+
+
+
+
+
+
+
+
+%\Css{.aedimnah-x-x-125{FONT-FAMILY: "Courier New",Courier,monospace }}
+
+%\Css{.partToc a, .partToc, .likepartToc a, .likepartToc {line-height: 200\%;
+%font-weight:bold; font-size:150\%; color : red ; }}
+%
+%\Css{.chapterToc a, .chapterToc, .likechapterToc a, .likechapterToc,
+%.appendixToc a, .appendixToc {line-height: 200\%; font-weight:bold; color : green ; }}
+%
+\ifx\languagename\undefined
+\else
+\iflanguage{arabic}%
+{\Configure{crosslinks}{ }{ }
+{}{}
+{}{}{}{}}
+{}
+\fi
+
+
+
+%\Configure{thanks author date and}
+%{}{}
+%{\HCode{<div align="left">}}{\HCode{</div>}}
+%{\HCode{<div align="left">}}{\HCode{</div>}}
+%{\HChar{160}\HChar{160}\HChar{160}}{\HCode{<br>}}
+
+
+
+
+\begin{document}
+\EndPreamble
+
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/arabic.cfg b/language/arabic/arabi/arabi/texmf/latex/arabi/arabic.cfg
new file mode 100644
index 0000000000..178cf906cc
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/arabic.cfg
@@ -0,0 +1,64 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: arabic.cfg: configuration file for arabic.ldf
+%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% If you want to customize arabic.ldf, please DO NOT hack into the code,
+% copy this file into a directory searched by TeX, preferably a
+% personal one on multi-user systems, and customize it as you like.
+%
+% WARNING: If you exchange your documents with colleagues using
+% a different TeX installation, it is best NOT TO HAVE a frenchb.cfg
+% file, and add instead the customization commands to the preamble
+% of your documents after babel and frenchb have been loaded.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%
+
+
+
+
+
+
+
+
+
+
+%%
+%% \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 \~}
+%%
+\endinput \ No newline at end of file
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/arabic.ldf b/language/arabic/arabi/arabi/texmf/latex/arabi/arabic.ldf
new file mode 100644
index 0000000000..d96c49be6c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/arabic.ldf
@@ -0,0 +1,240 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: `arabic.ldf' the language definition file of Arabic
+% for use with BABEL.
+%
+
+\ProvidesFile{arabic.ldf}
+
+\ProvidesLanguage{arabic}[2006/01/01 v0.1 Arabic support for the babel system]
+
+
+\LdfInit{arabic}{captionsarabic}
+
+
+\ifx\l@arabic\@undefined
+ \@nopatterns{Arabic}%
+ \adddialect\l@arabic0
+\fi
+\InputIfFileExists{laeenc.def}{%
+ \message{Loading the definitions for the LaTeX{} Arabic encoding}}{%
+ \errhelp{I can't find the laeenc.def file for the Arabic fonts}%
+ \errmessage{Since I do not know what the LAE encoding means^^J
+ I can't typeset Arabic.^^J
+ I stop here, while you get a suitable laeenc.def file}\@@end
+ }
+
+
+\AtEndOfPackage{%
+ \@ifpackageloaded{inputenc}{}{\RequirePackage[cp1256]{inputenc}}}
+
+%NO hyphenation is needed in Arabic!! Update language.dat!!!
+\providehyphenmins{\CurrentOption}{\thr@@\thr@@}
+
+\addto\captionsarabic{%
+\def\prefacename{\textAR{\meem\dal\kha\lam}}%
+\def\refname{\textAR{\alef\lam\meem\ra\alef\jeem\ayn}}
+\def\abstractname{\textAR{\meem\lam\kha\sad}}%
+\def\bibname{\textAR{\alef\lam\meem\sad\alef\dal\ra}}%
+\def\chaptername{\textAR{\alef\lam\baa\alef\baa}}%
+\def\appendixname{\textAR{\alef\lam\meem\lam\Haa\qaf}}%
+%\def\contentsname{\textAR{\alef\lam\meem\Haa\taa\waw\ya\alef\taa}}
+\def\contentsname{\textAR{\alef\lam\fa\ha\ra\seen}}%
+\def\listfigurename{\textAR{\qaf\alef\yahamza\meem\T\space \alef\lam\alefhamza\sheen\kaf\alef\lam}}%
+\def\listtablename{\textAR{\qaf\alef\yahamza\meem\T\space \alef\lam\jeem\dal\alef\waw\lam}}%
+\def\indexname{\textAR{\alef\lam\fa\ha\ra\seen}}%
+\def\figurename{\textAR{\sheen\kaf\lam}}%
+\def\tablename{\textAR{\jeem\dal\waw\lam}}%
+\def\partname{\textAR{\alef\lam\qaf\seen\meem}}%
+\def\enclname{\textAR{\alef\lam\meem\ra\fa\qaf\alef\taa}}
+\def\ccname{\textAR{\nun\seen\kha\T\space\meem\waw\jeem\ha\T\space\aleflowerhamza\lam\alefmaqsura}}% <<
+\def\headtoname{\textAR{\aleflowerhamza\lam\alefmaqsura}}
+\def\pagename{\textAR{\sad\fa\Haa\T}}%
+\def\seename{\textAR{\ra\alef\jeem\ayn}}%\alefhamza\nun\za\ra
+\def\alsoname{\textAR{\ra\alef\jeem\ayn\space\alefhamza\ya\dad\alef}}%<<\alefhamza\nun\za\ra
+\def\proofname{\textAR{\baa\ra\ha\alef\nun}}% for AMS-\LaTeX
+\def\glossaryname{\textAR{\qaf\alef\meem\waw\seen}}%<<
+}
+
+%
+% The default Arabic date form for now :
+%
+\def\arabimonth#1{\ifcase#1\or
+ \kaf\alef\nun\waw\nun\space \alef\lam\thaa\alef\nun\ya\or
+ \sheen\baa\alef\Ta\or
+ \alefmadda\dhal\alef\ra\or
+ \nun\ya\seen\alef\nun\or
+ \alefhamza\ya\alef\ra\or
+ \Haa\zay\ya\ra\alef\nun\or
+ \taa\meem\waw\zay\or
+ \alefmadda\baa\or
+ \alefhamza\ya\lam\waw\lam\or
+ \taa\sheen\ra\ya\nun\space \alef\lam\alefhamza\waw\lam\or
+ \taa\sheen\ra\ya\nun\space \alef\lam\thaa\alef\nun\ya\or
+ \kaf\alef\nun\waw\nun\space \alef\lam\alefhamza\waw\lam\fi}
+
+\def\atoday{%
+ \I{\number\day}%
+\space \textRL{\arabimonth{\month}}%
+\space \I{\number\year}}
+
+\def\datearabic{\def\today{\atoday}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% MACROS FOR Arabic/Latin TYPESETTING
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% First, the common part to Arabic and Farsi
+%
+\InputIfFileExists{arabicore.sty}{%
+ \message{Loading the Common definitions for Arabic and Farsi}}{%
+ \errhelp{I can't find the arabicore.sty file}%
+ \errmessage{Since I can't find the arabicore.sty file^^J
+ I can't typeset Arabic.^^J
+ I stop here, while you get a suitable arabicore.sty file}\@@end
+}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Now the specific part to Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand{\ArabicEncoding}{\fontencoding{LAE}\selectfont}
+
+
+
+\DeclareRobustCommand{\@arabic@R}[1]{\bgroup\beginR\ArabicEncoding #1\endR\egroup}
+\DeclareRobustCommand{\@ensure@arabic}[1]{\if@rl{{\ArabicEncoding #1}}\else
+ \beginR\ArabicEncoding #1\endR\fi}
+
+
+% To avoid bad surprised we use \def to define the \R control sequence,
+% many packages ``like'' to use , like ArabTeX and the Hebrew package
+% supporting Babel
+\newcommand{\textAR}[1]{\expandafter\@arabic@R{#1}}
+%Temporary shortcut
+\newcommand{\AR}[1]{\textAR{#1}}
+%
+\def\textRL#1{\expandafter\@arabic@R{#1}}
+
+
+
+
+
+\def\arabicencoding{LAE}
+\DeclareFontEncoding{LAE}{}{}
+\DeclareFontSubstitution{LAE}{cmr}{m}{n}
+\DeclareErrorFont{LAE}{cmr}{m}{n}{10}
+
+\DeclareRobustCommand{\bbl@arabic}{%
+\bbl@arabi
+\def\encodingdefault{\arabicencoding}%
+\fontencoding{\encodingdefault}\selectfont%
+\@rltrue
+\@arabictrue
+}
+
+
+\addto\extrasarabic{\bbl@arabic}
+
+\addto\noextrasarabic{%
+\@rlfalse
+\@arabicfalse
+\latintext\normalfont %enough ??
+% Restore the lplain.tex penalties??
+\hyphenpenalty=50%
+\binoppenalty=700%
+\relpenalty=500%
+}
+
+
+
+%
+% Now, the Arabic fonts Definitions
+%
+\InputIfFileExists{arabicfnt.sty}{%
+ \message{Loading the Arabi fonts definitions for Arabic}}{%
+ \errhelp{I can't find the arabicfnt.sty file}%
+ \errmessage{Since I can't find the arabicfnt.sty file^^J
+ I can't typeset Arabic.^^J
+ I stop here, while you get a suitable arabicfnt.sty file}\@@end
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%==========================================================%
+% The changes that should be executed after reading %
+% the main style file. (e.g., article.sty) %
+%==========================================================%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+\addto\extrasarabic{%
+ \let\SAV@alph\@alph%
+ \let\SAV@Alph\@Alph%
+ \renewcommand*{\@alph}[1]{\protect\abjadnumeral{\number#1}}%
+ \renewcommand*{\@Alph}[1]{\protect\abjadnumeral{\number#1}}}
+
+\addto\noextrasarabic{%
+ \let\@alph\SAV@alph%
+ \let\@Alph\SAV@Alph}
+
+%
+% Now, the common file to Arabic and Farsi that allows
+% activating and deactivating Vowelization
+%
+\InputIfFileExists{arabnovowel.sty}{%
+ \message{Loading the Common definitions for Arabic and Farsi}}{%
+ \errhelp{I can't find the arabnovowel.sty file}%
+ \errmessage{Since I can't find the arabnovowel.sty file^^J
+ I can't activate or deactivate vowelization.^^J
+ The vowels you type will be printed!}\@@end
+}
+
+
+
+% To get the parentheses around equations numbers to appear correctly
+% works with standard classes article, report and book (with or without amsmath package)
+% and with ams[*] classes. (reqno should be used!!)
+%
+\addto\extrasarabic{%
+\let\SAV@@eqnnum\@eqnnum
+\let\SAV@tagform@\tagform@
+\def\tagform@#1{\maketag@@@{)\ignorespaces#1\unskip\@@italiccorr(}}% if amsmath is loaded
+\renewcommand{\@eqnnum}{)\theequation(}% otherwise
+}
+
+% Restore original values
+\addto\noextrasarabic{%
+\let\@eqnnum\SAV@@eqnnum
+\let\tagform@\SAV@tagform@
+}
+
+
+
+%%%%%% To let this file clean and usable by everybody %%%%%%
+%% use "arabic.cfg" instead and uncomment next line
+%\loadlocalcfg{arabic} %last patches and additional hacks
+%%
+\ldf@finish{arabic}
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/arabicfnt.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/arabicfnt.sty
new file mode 100644
index 0000000000..a67df1dbd6
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/arabicfnt.sty
@@ -0,0 +1,273 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: `arabifnt.sty' Arabic font switching commands used by
+% the Arabi package.
+%
+%%
+\def\fileversion{1.0}
+\def\filedate{2006/01/01}
+%%%%%%%%%%%%%%%%%%%%%%%% Font Names %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Check if file is loaded and announce file on terminal:
+%
+\csname ArabicfontsLoaded\endcsname
+\let\ArabicfontsLoaded\endinput
+
+\message{\space\space Arabic font switching commands v\fileversion\space\space\filedate}
+\message{\space\space (may still change)\space\space}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%%
+%\ProvidesPackage{arabifnt}[2006/01/01 v1.0 Arabic font switching
+% commands (may still change)]
+
+
+
+% \DeclareTextFontCommand {<cmd>} {<font-switches>}
+%
+% Declares command <cmd> to be a font command with one argument. The current font attributes
+% are locally modified by <font-switches> and then the argument of <cmd> is typeset in the
+% resulting new font.
+%
+% Commands defined by \DeclareTextFontCommand automatically take care of any necessary
+% italic correction (on either side).
+
+
+
+
+
+% DecoType Naskh
+ \DeclareTextFontCommand{\textdtp}{\fontfamily{dtpn}\selectfont}
+ \DeclareRobustCommand{\dtp}{\fontfamily{dtpn}\selectfont}
+
+% DecoType Naskh Special
+ \DeclareTextFontCommand{\textdtpsp}{\fontfamily{dtpnsp}\selectfont}
+ \DeclareRobustCommand{\dtpsp}{\fontfamily{dtpnsp}\selectfont}
+
+% DecoType Thuluth
+ \DeclareTextFontCommand{\textdthuluth}{\fontfamily{dthuluth}\selectfont}
+ \DeclareRobustCommand{\dthuluth}{\fontfamily{dthuluth}\selectfont}
+
+
+% Maghribi experimental
+ \DeclareTextFontCommand{\textmaghribi}{\fontfamily{maghribi}\selectfont}
+ \DeclareRobustCommand{\maghribi}{\fontfamily{maghribi}\selectfont}
+
+% Naskh experimental
+ \DeclareTextFontCommand{\textnaskh}{\fontfamily{naskhi}\selectfont}
+ \DeclareRobustCommand{\naskh}{\fontfamily{naskhi}\selectfont}
+
+% ASV Codar
+ \DeclareTextFontCommand{\textasv}{\fontfamily{asv}\selectfont}
+ \DeclareRobustCommand{\asv}{\fontfamily{asv}\selectfont}
+
+% My reqaa
+ \DeclareTextFontCommand{\textreqaa}{\fontfamily{reqaa}\selectfont}
+ \DeclareRobustCommand{\reqaa}{\fontfamily{reqaa}\selectfont}
+
+%
+%
+%======================= Microsoft =========================
+%
+
+
+% Simplified Arabic
+ \DeclareTextFontCommand{\textsimpl}{\fontfamily{arsimpo}\selectfont}
+ \DeclareRobustCommand{\simpl}{\fontfamily{arsimpo}\selectfont}
+
+ \DeclareTextFontCommand{\textsimplb}{\fontfamily{arsimpo}\fontseries{b}\selectfont}
+ \DeclareRobustCommand{\simplb}{\fontfamily{arsimpo}\fontseries{b}\selectfont}
+%
+% Times New Roman
+ \DeclareTextFontCommand{\texttimes}{\fontfamily{artimes}\selectfont}
+ \DeclareRobustCommand{\times}{\fontfamily{artimes}\selectfont}
+%
+ \DeclareTextFontCommand{\texttimesb}{\fontfamily{artimes}\fontseries{b}\selectfont}
+ \DeclareRobustCommand{\timesb}{\fontfamily{artimes}\fontseries{b}\selectfont}
+%
+
+% Courier
+ \DeclareTextFontCommand{\textcour}{\fontfamily{arcour}\selectfont}
+ \DeclareRobustCommand{\cour}{\fontfamily{arcour}\selectfont}
+%
+ \DeclareRobustCommand{\courb}{\fontfamily{arcour}\fontseries{b}\selectfont}
+ \DeclareTextFontCommand{\textcourb}{\fontfamily{arcour}\fontseries{b}\selectfont}
+% Arial
+ \DeclareTextFontCommand{\textarial}{\fontfamily{ararial}\selectfont}
+ \DeclareRobustCommand{\arial}{\fontfamily{ararial}\selectfont}
+%
+ \DeclareRobustCommand{\arialb}{\fontfamily{ararial}\fontseries{b}\selectfont}
+ \DeclareTextFontCommand{\textarialb}{\fontfamily{ararial}\fontseries{b}\selectfont}
+%
+% Traditional Arabic
+ \DeclareTextFontCommand{\texttrad}{\fontfamily{traditionalarabic}\selectfont}
+ \DeclareRobustCommand{\trad}{\fontfamily{traditionalarabic}\selectfont}
+%
+ \DeclareTextFontCommand{\texttradb}{\fontfamily{traditionalarabic}\fontseries{b}\selectfont}
+ \DeclareRobustCommand{\tradb}{\fontfamily{traditionalarabic}\fontseries{b}\selectfont}
+% Andalus
+ \DeclareTextFontCommand{\textandalus}{\fontfamily{andlso}\selectfont}
+ \DeclareRobustCommand{\andalus}{\fontfamily{andlso}\selectfont}
+
+%
+%======================= Omega Project =====================
+%
+
+% Omega Arabic (1)
+ \DeclareTextFontCommand{\textomega}{\fontfamily{aromega}\selectfont}
+ \DeclareRobustCommand{\omega}{\fontfamily{aromega}\selectfont}
+%
+ \DeclareTextFontCommand{\textomegab}{\fontfamily{aromega}\fontseries{b}\selectfont}
+ \DeclareRobustCommand{\omegab}{\fontfamily{aromega}\fontseries{b}\selectfont}
+
+
+%
+%======================= Arabeyes Project ==================
+%
+
+ \DeclareTextFontCommand{\textbook}{\fontfamily{kacstbook}\selectfont}
+ \DeclareRobustCommand{\book}{\fontfamily{kacstbook}\selectfont}
+
+ \DeclareTextFontCommand{\textthol}{\fontfamily{aetholoth}\selectfont}
+ \DeclareRobustCommand{\thol}{\fontfamily{aetholoth}\selectfont}
+
+ \DeclareTextFontCommand{\textyerm}{\fontfamily{aealyermook}\selectfont}
+ \DeclareRobustCommand{\yerm}{\fontfamily{aealyermook}\selectfont}
+
+ \DeclareTextFontCommand{\textmash}{\fontfamily{aemashq}\selectfont}
+ \DeclareRobustCommand{\mashq}{\fontfamily{aemashq}\selectfont} %typo
+
+ \DeclareTextFontCommand{\texthor}{\fontfamily{aehor}\selectfont}
+ \DeclareRobustCommand{\hor}{\fontfamily{aehor}\selectfont}
+
+ \DeclareTextFontCommand{\textbattar}{\fontfamily{aealbattar}\selectfont}
+ \DeclareRobustCommand{\battar}{\fontfamily{aealbattar}\selectfont}
+
+ \DeclareTextFontCommand{\textgranada}{\fontfamily{aegranada}\selectfont}
+ \DeclareRobustCommand{\granada}{\fontfamily{aegranada}\selectfont}
+
+
+
+ \DeclareTextFontCommand{\textkayrawan}{\fontfamily{aekayrawan}\selectfont}
+ \DeclareRobustCommand{\kayrawan}{\fontfamily{aekayrawan}\selectfont}
+
+ \DeclareTextFontCommand{\textdimnah}{\fontfamily{aedimnah}\selectfont}
+ \DeclareRobustCommand{\dimnah}{\fontfamily{aedimnah}\selectfont}
+
+ \DeclareTextFontCommand{\textsindibad}{\fontfamily{aesindibad}\selectfont}
+ \DeclareRobustCommand{\sindibad}{\fontfamily{aesindibad}\selectfont}
+
+ \DeclareTextFontCommand{\textgraph}{\fontfamily{aegraph}\selectfont}
+ \DeclareRobustCommand{\graph}{\fontfamily{aegraph}\selectfont}
+
+ \DeclareTextFontCommand{\textnice}{\fontfamily{aenice}\selectfont}
+ \DeclareRobustCommand{\nice}{\fontfamily{aenice}\selectfont}
+%
+ \DeclareTextFontCommand{\textmohanad}{\fontfamily{aealmohanadb}\selectfont}
+ \DeclareRobustCommand{\mohanad}{\fontfamily{aealmohanadb}\selectfont}
+%
+ \DeclareTextFontCommand{\textmothnna}{\fontfamily{aealmothnna}\selectfont}
+ \DeclareRobustCommand{\mothnna}{\fontfamily{aealmothnna}\selectfont}
+
+ \DeclareTextFontCommand{\textmateen}{\fontfamily{aealmateen}\selectfont}
+ \DeclareRobustCommand{\mateen}{\fontfamily{aealmateen}\selectfont}
+
+ \DeclareTextFontCommand{\textpetra}{\fontfamily{aepetra}\selectfont}
+ \DeclareRobustCommand{\petra}{\fontfamily{aepetra}\selectfont}
+
+ \DeclareTextFontCommand{\textnada}{\fontfamily{aenada}\selectfont}
+ \DeclareRobustCommand{\nada}{\fontfamily{aenada}\selectfont}
+
+ \DeclareTextFontCommand{\textcortoba}{\fontfamily{aecortoba}\selectfont}
+ \DeclareRobustCommand{\cortoba}{\fontfamily{aecortoba}\selectfont}
+
+ \DeclareTextFontCommand{\textostora}{\fontfamily{aeostorah}\selectfont}
+ \DeclareRobustCommand{\ostora}{\fontfamily{aeostorah}\selectfont}
+
+
+ \DeclareTextFontCommand{\textfurat}{\fontfamily{aefurat}\selectfont}
+ \DeclareRobustCommand{\furat}{\fontfamily{aefurat}\selectfont}
+
+% Do not include, soooo bad!
+%
+% \DeclareTextFontCommand{\textnagham}{\fontfamily{aenagham}\selectfont}
+% \DeclareTextFontCommand{\textarab}{\fontfamily{aearab}\selectfont}
+
+ \DeclareTextFontCommand{\textsalem}{\fontfamily{aesalem}\selectfont}
+ \DeclareRobustCommand{\salem}{\fontfamily{aesalem}\selectfont}
+
+ \DeclareTextFontCommand{\textshado}{\fontfamily{aeshado}\selectfont}
+ \DeclareRobustCommand{\shado}{\fontfamily{aeshado}\selectfont}
+
+ \DeclareTextFontCommand{\textmetal}{\fontfamily{aemetal}\selectfont}
+ \DeclareRobustCommand{\metal}{\fontfamily{aemetal}\selectfont}
+
+ \DeclareTextFontCommand{\texttarablus}{\fontfamily{aetarablus}\selectfont}
+ \DeclareRobustCommand{\tarablus}{\fontfamily{aetarablus}\selectfont}
+
+ \DeclareTextFontCommand{\textkhalid}{\fontfamily{aekhalid}\selectfont}
+ \DeclareRobustCommand{\khalid}{\fontfamily{aekhalid}\selectfont}
+
+ \DeclareTextFontCommand{\textsharjah}{\fontfamily{aesharjah}\selectfont}
+ \DeclareRobustCommand{\sharjah}{\fontfamily{aesharjah}\selectfont}
+
+ \DeclareTextFontCommand{\texthani}{\fontfamily{aehani}\selectfont}
+ \DeclareRobustCommand{\hani}{\fontfamily{aehani}\selectfont}
+
+ \DeclareTextFontCommand{\textouhod}{\fontfamily{aeouhod}\selectfont}
+ \DeclareRobustCommand{\ouhod}{\fontfamily{aeouhod}\selectfont}
+
+ \DeclareTextFontCommand{\textrehan}{\fontfamily{aerehan}\selectfont}
+ \DeclareRobustCommand{\rehan}{\fontfamily{aerehan}\selectfont}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+%%
+%% \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 \~}
+%%
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/arabicore.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/arabicore.sty
new file mode 100644
index 0000000000..9c8806ef47
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/arabicore.sty
@@ -0,0 +1,969 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: `Arabicore.sty'
+% The common Macros to Arabic and Farsi
+% The core of the Arabi package macros responsible for Right-to-Left
+%
+%
+\def\fileversion{1.0}
+\def\filedate{2006/01/01}
+%%%%%%%%%%%%%%%%%%%%%%%% Font Names %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Check if file is loaded and announce file on terminal:
+%
+\csname ArabiCoreLoaded\endcsname
+\let\ArabiCoreLoaded\endinput
+
+\message{\space\space Arabi Core switching commands v\fileversion\space\space\filedate}
+\message{\space\space (may still change)\space\space}
+%
+%\ProvidesPackage{arabicore}[2006/01/01 v1.0 Arabi Core switching
+% commands (may still change)]
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% MACROS FOR Arabic/Latin TYPESETTING
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Some flags to keep trace where we are
+%
+\newif\if@rl
+\newif\if@farsi
+\newif\if@arabic
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ArabTeX has already \R as well as \RL command
+% While (La)TeX defines already \L
+% In addition to the fact that the Hebrew package for Babel
+% has \R and \L !!
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% The \cs{R} will mean either Arabic or Farsi according to
+% which one has been loaded last!
+%
+% To force one or the other form use instead \cs{@arabic@R} or \cs{@farsi@R}
+%
+%
+% To avoid bad surprised we use \def to define the \R control sequence,
+% many packages ``like'' to use , like ArabTeX and the Hebrew package
+% supporting Babel
+
+\newcommand{\ARmbox}[1]{\mbox{\textAR{#1}}}
+\newcommand{\FRmbox}[1]{\mbox{\textFR{#1}}}
+\newcommand{\LRmbox}[1]{\mbox{\textLR{#1}}}
+\def\@ensure@R#1{\if@rl#1\else\textRL{#1}\fi}
+\def\@ensure@L#1{\if@rl\textLR{#1}\else#1\fi}
+%
+% shorthands \RL and LR necessary?
+%
+%\DeclareRobustCommand{\R}[1]{\RL{#1}}
+%\DeclareRobustCommand{\L}[1]{\LR{#1}}
+%
+% The command \L exists already to write Polish. We got some
+% complaints that this penalize all peolple using the Polish
+% Language and prevents them from using Arabi at TUG 2006.
+% This is also used by the hyperref package. So we will adapt \textLR instead.
+\def\textLR#1{\bgroup\beginL\latintext #1\endL\egroup}
+%
+
+
+
+\DeclareRobustCommand{\bbl@arabi}{% arabi NOT Arabic :)
+% Flag to detect Arabic, also responsible for the
+% switching direction with \Arabi@rl@everypar
+\@rltrue
+%
+\hyphenpenalty=\@MM
+\binoppenalty=\@MM
+\relpenalty=\@MM
+}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Arabic formatting
+% ``everypar Token'' \& noindent
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% make paragraphs Right-to-Left instead of Left-to-Right
+% and cure the paragraph indent that will appear
+% on the left hand side of the page, instead of
+% the right if nothing is done.
+%
+% Here we define a macro \Arabi@rl@everypar
+% This avoids problems when \everypar is redefined for some reason,
+% in lists for example, and that the default Left-to-Right is restored
+% at the end!
+%
+% If we want to be able to use the paragraph indent without problems,
+% we have to enhance the \everypar defintion a little.
+% Since a paragraph indent is created by inserting a \box at
+% the start of the horizontal list for the paragraph, before \everypar is
+% called. We just need to move that box so that it follows the \beginR.
+%
+%
+% \def\rl@everypar{\if@rl{\setbox\z@\lastbox\beginR\usebox\z@}\fi}
+%
+ \def\Arabi@rl@everypar{\if@rl{\setbox\z@\lastbox\beginR\usebox\z@}\fi}
+ \let\o@everypar=\everypar
+ \newtoks\n@everypar
+ \n@everypar\expandafter{\the\o@everypar}
+ \o@everypar{\Arabi@rl@everypar\the\n@everypar}
+ \let\everypar=\n@everypar
+
+
+\AtEndOfPackage{\edef\latinencoding{\cf@encoding}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%% USE OF ARABIC NUMBERING %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Not yet used!
+%
+\protect\def\arabordinal#1{"
+\ifcase#1\or \or
+\or \or \or
+\or \or \or
+\or \or
+\or \or
+\or \or \or
+\or \or \or
+\or \or
+\fi}
+
+
+% Numbers in Arabic contexts, must be written as input, not reflected!
+% They are already Right-to-Left! Sometimes written in Arabic digits and
+% other times with Arabo-Indic digits. And in Farsi they use Extended
+% Arabo-Indic digits.
+% They have to be input using the \I control sequence or
+% the \EI control sequence.
+
+\newcommand{\I}[1]{\if@farsi\FarsiEncoding\else\ArabicEncoding\fi\beginL#1\endL}%
+\newcommand{\EI}[1]{\textLR{\FarsiEncoding #1}}%
+
+
+
+
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% abjad numerals support
+% defined like "\greeknumeral" macro
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% The command \abjadnumeral {#1}
+% produces the old `abjad' numeral form of the argument,
+% which must be a legal number between 1 and 1999.
+% Otherwise, the normal form is printed instead, in arabic or Latin
+% according to the context.
+%
+\def\Aabjadnumeral#1{\textRL{%
+\ifnum#1>1999 \PackageWarning{babel}{Illegal value (#1) for abjad numeral}\I{#1}
+\else
+ \ifnum#1<\@ne\space\PackageWarning{babel}{Illegal value (#1) for abjad numeral}%
+ \else
+ \ifnum#1<10\expandafter\abj@num@i\number#1%
+ \else
+ \ifnum#1<100\expandafter\abj@num@ii\number#1%
+ \else
+ \ifnum#1<\@m\expandafter\abj@num@iii\number#1%
+ \else
+ \ifnum#1<\@M\expandafter\abj@num@iv\number#1%since #1<2000, we must have 1000
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+\fi
+}}
+
+\def\abj@num@i#1{%
+ \ifcase#1\or \alef\or \baa\or \jeem\or \dal\or \ha\or \waw\or \zay\or \Haa\or \Ta\fi
+ \ifnum#1=\z@\fi}
+\def\abj@num@ii#1{%\ya instead of \alefmaqsura
+ \ifcase#1\or \ya\or \kaf\or \lam\or \meem\or \nun\or \seen\or \ayn\or \fa\or \sad\fi
+ \ifnum#1=\z@\fi\abj@num@i}
+\def\abj@num@iii#1{%
+ \ifcase#1\or \qaf\or \ra\or \sheen\or \taa\or \thaa \or \kha\or \dhal\or \dad\or \za\fi
+ \ifnum#1=\z@\fi\abj@num@ii}
+\def\abj@num@iv#1{%
+ \ifcase#1\or \ghayn\fi
+ \ifnum#1=\z@\fi\abj@num@iii}
+
+\def\Fabjadnumeral#1{\textFR{%
+\ifnum#1>32 \PackageWarning{babel}{Illegal value (#1) for Farsi abjad numeral}\EI{#1}
+\else\F@abjadnumber{#1}\fi}}
+
+\def\F@abjadnumber#1{\ifcase#1\or \alef\or \baa\or \peh\or \taa\or \thaa\or \jeem\or
+ \tcheh\or \Haa\or \kha\or \dal\or \dhal\or \ra\or \zay\or \jeh\or
+ \seen\or \sheen\or \sad\or \dad\or \Ta\or \za\or \ayn\or \ghayn\or \fa\or
+ \qaf\or \kaf\or \gaf\or \lam\or \meem \or \nun\or \waw\or \ha\or\ya\fi}
+
+%
+% Internal form of abjad numerotation
+% To allow it to be used with \pagenumbering command
+% like \pagenumbering{abjad}
+% adapted from "ltpageno.dvi"
+%
+\def\@abjad#1{\if@farsi{\Fabjadnumeral{#1}}\else\Aabjadnumeral{#1}\fi}
+\DeclareRobustCommand{\abjadnumeral}[1]{\@abjad{#1}}
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% NOT SUPPORTED YET !!!!!!!!!!!!!!!!!!!!!!
+% We provide a ---limited--- support for ArabTeX 7 bit encoding but since
+% we can also use ArabteX with our package, it's better to use an
+% arabtext environment to typeset it.
+% the fonts are not the same, but ur text may need a lot of change to get
+% usable with Arabic LaTeX, the best solution to process ArabTeX input is still
+% ArabTeX
+%
+%%%%%%%%%%%%%%%%%%%%%% Do not load our macros if ArabTeX is active %%%%%%%%%%%
+\AtBeginDocument{
+\ifx \ar@batcode \undefined %\RequirePackage{lagally}
+\else
+\message{ArabTeX is aleready loaded,}
+\message{ No support is provided}
+\message{with ArabTeX 7 bit input encoding}%\expandafter \endinput
+% avoid problematic use of < and > when arabtex is loaded
+% since they are active with Arabtex and have a special meaning
+% we do need these symbols to write left and right guillemots in
+% an Arabic context.
+\addto\extrasarabic{%
+\chardef \@other = 12
+%\catcode`\<=\@other
+%\catcode`\>=\@other
+%\catcode`\.=\@other
+%\catcode`\_=\@other
+%\catcode`\^=\@other
+\setnone
+}
+\fi
+}
+
+%%%%%%%%%%%%%% In ArabTeX you have to use %%%%%%%%%%%%%%%%%
+% <\abjad> to get the <\abjadnumeral>s
+%\let\abjad=\abjadnumeral
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%% LOGOS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\Arabi}{\textLR{\sffamily A\kern-.2ex\lower.25ex\hbox{r}\kern-.25exa%
+ \kern-.22exb\kern-.15exi}} %Logo
+
+
+% ****************************************
+% * FOOTNOTES *
+% ****************************************
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% More space between the last line of main text
+% and the top of the first footnote
+
+%\addtolength{\skip\footins}{2mm}
+
+%%%%%%%%%%%%%%%%%%% The footnote rule %%%%%%%%%%%%%%%%%%%%%
+%%%% works equally with ams[classes] %%%%%%%%%%%%%%%%%%%%%%
+
+\let\SAV@footnoterule=\footnoterule%
+\def\footnoterule{\if@rl\hb@xt@\hsize{\hss\vbox{\SAV@footnoterule}}%
+ \else\SAV@footnoterule\fi}
+
+
+\renewcommand{\thefootnote}
+ {\if@rl {\textRL{(\I{\number\c@footnote})}}%
+ \else {\number\c@footnote}\fi}
+
+
+
+% ****************************************
+% * PUNCTUATION *
+% ****************************************
+%
+% TEMPORARILY
+
+\addto\extrasfarsi{%
+\frenchspacing}
+
+%%%%%%%%%%%%%%%%%%%%%%% A patch from rlbabel %%%%%%%%%%%%%%%
+\def\raggedright{%
+ \let\\\@centercr
+ \leftskip\z@skip\rightskip\@flushglue
+ \parindent\z@\parfillskip\z@skip}
+\let\@@raggedleft=\raggedleft
+\let\@@raggedright=\raggedright
+\renewcommand\raggedleft{\if@rl\@@raggedright%
+ \else\@@raggedleft\fi}
+\renewcommand\raggedright{\if@rl\@@raggedleft%
+ \else\@@raggedright\fi}
+
+
+
+%%%% a small utility %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\providecommand{\gobbleone}[1]{\relax}
+
+
+
+
+%%%%%%%%%% To test if the main (TOC) language is Arabic
+%
+\newif\if@rlmain
+%
+%
+% If \mainlanguage{arabic} was not met yet at the
+% beginning of the document, suppose that the "TOC direction et al."
+% is "english" (a Left-to-Right language), if you want a different
+% formatting you should specify your specific TOC language
+%
+\AtBeginDocument{\if@rlmain\relax\else\TOCLanguage{\bbl@main@language}\fi}
+
+
+\def\TOCLanguage#1{\gdef\main@Arabi@language{#1}%
+\edef\tmp{arabic}%
+\edef\tmpp{farsi}%
+\ifx\main@Arabi@language\tmp\global\@rlmaintrue\else
+\ifx\main@Arabi@language\tmpp\global\@rlmaintrue\else
+\global\@rlmainfalse\fi\fi%
+}
+%
+\let\SAV@@part\@part
+\let\SAV@spart\@spart
+%
+%
+\let\SAV@@chapter\@chapter
+\let\SAV@schapter\@schapter
+%
+\let\SAV@section\section
+\let\SAV@subsection\subsection
+\let\SAV@subsubsection\subsubsection
+%
+\let\SAV@paragraph\paragraph
+\let\SAV@subparagraph\subparagraph
+
+
+
+
+
+
+
+\def\@part[#1]#2{%
+\addtocontents{toc}{\xstring\select@language{\main@Arabi@language}}%
+\if@rl{\SAV@@part[\textRL{#1}]{\textRL{#2}}}%
+\else{\SAV@@part[\textLR{#1}]{\textLR{#2}}}%
+\fi}
+
+%\renewcommand{\@spart}[1]{%
+\def\@spart#1{%
+\addtocontents{toc}{\xstring\select@language{\main@Arabi@language}}%
+\if@rl{\SAV@spart{\textRL{#1}}}%
+\else{\SAV@spart{\textLR{#1}}}%
+\fi}
+
+\def\@chapter[#1]#2{%
+\addtocontents{toc}{\xstring\select@language{\main@Arabi@language}}%
+\if@rl{\SAV@@chapter[\textRL{#1}]{\textRL{#2}}}%
+\else{\SAV@@chapter[\textLR{#1}]{\textLR{#2}}}%
+\fi}
+
+%\renewcommand{\@schapter}[1]{%
+\def\@schapter#1{%
+\addtocontents{toc}{\xstring\select@language{\main@Arabi@language}}%
+\if@rl{\SAV@schapter{\textRL{#1}}}%
+\else{\SAV@schapter{\textLR{#1}}}%
+\fi}
+
+
+
+
+%% Wa added a line to the TOC to select the TOCLAnguage after a test with \cs{if@rlmain}
+%% Then we protect the \#7 argument according to the
+%% <TOC language>
+%% Now the starred forms of the \cs{section} family work too.
+%% Taken and modified from Latex.ltx
+%%
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+ \ifnum #2>\c@secnumdepth
+ \let\@svsec\@empty
+ \else
+ \refstepcounter{#1}%
+ \protected@edef\@svsec{\@seccntformat{#1}\relax}%
+ \fi
+ \@tempskipa #5\relax
+ \ifdim \@tempskipa>\z@
+ \begingroup
+ #6{%
+ \@hangfrom{\hskip #3\relax\@svsec}%
+ \interlinepenalty \@M #8\@@par}%
+ \endgroup
+ \csname #1mark\endcsname{#7}%
+ \addtocontents{toc}{\xstring\select@language{\main@Arabi@language}}%
+ \addcontentsline{toc}{#1}{%
+ \ifnum #2>\c@secnumdepth \else
+ \protect\numberline{\csname the#1\endcsname}%
+ \fi
+ \if@rl\textRL{#7}\else\textLR{#7}\fi}%
+ \else
+ \def\@svsechd{%
+ #6{\hskip #3\relax
+ \@svsec #8}%
+ \csname #1mark\endcsname{#7}%
+ \addtocontents{toc}{\xstring\select@language{\main@Arabi@language}}%
+ \addcontentsline{toc}{#1}{%
+ \ifnum #2>\c@secnumdepth \else
+ \protect\numberline{\csname the#1\endcsname}%
+ \fi
+ \if@rl\textRL{#7}\else\textLR{#7}\fi}}%
+ \fi
+ \@xsect{#5}%
+}
+
+
+%% Whenever \leftskip or rightskip add a test \if@rlmain and
+%% swap the two. Also format the page number \#5 according to the
+%% <TOC language>
+%% See Latex.ltx classes.dvi and
+%% see page 32 of the LaTeX companion Ed. 1
+%%
+\def\@dottedtocline#1#2#3#4#5{%
+ \ifnum #1>\c@tocdepth \else
+ \vskip \z@ \@plus.2\p@
+ {\if@rlmain\rightskip\else\leftskip\fi #2\relax
+ \if@rlmain\leftskip\else\rightskip\fi \@tocrmarg \parfillskip
+ -\if@rlmain\leftskip\else\rightskip\fi
+ \parindent #2\relax\@afterindenttrue
+ \interlinepenalty\@M
+ \leavevmode
+ \@tempdima #3\relax
+ \advance\if@rlmain\rightskip\else\leftskip\fi \@tempdima
+ \null\nobreak\hskip -\if@rlmain\rightskip\else\leftskip\fi
+ {#4}\nobreak
+ \leaders\hbox{$\m@th
+ \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
+ mu$}\hfill
+ \nobreak
+ \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor \if@rlmain\I{#5}\else\textLR{#5}\fi}%
+ \par}%
+ \fi}
+
+
+
+
+%% We redefine \l@part to avoid a bad space that occurs with the normal layout
+%%
+\@ifclassloaded{book}{%
+\let\SAV@l@part\l@part %in the case where needed ....
+\renewcommand*\l@part[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
+ {\leavevmode
+ \Large #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}}\par
+ \penalty\@highpenalty
+ \endgroup
+ \fi}
+}{}
+
+
+\let\SAV@tableofcontents\tableofcontents
+\renewcommand{\tableofcontents}{{\select@language{\main@Arabi@language}\SAV@tableofcontents}}
+
+%\listoffigures
+%\listoftables
+
+
+
+
+
+
+
+
+
+%
+% Temporary partial support of \cs{Arabi} for amsbook class
+%
+\@ifclassloaded{amsbook}{
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+ \edef\@toclevel{\ifnum#2=\@m 0\else\number#2\fi}%
+ \ifnum #2>\c@secnumdepth \let\@secnumber\@empty
+ \else \@xp\let\@xp\@secnumber\csname the#1\endcsname\fi
+ \@tempskipa #5\relax
+ \ifnum #2>\c@secnumdepth
+ \let\@svsec\@empty
+ \else
+ \refstepcounter{#1}%
+ \edef\@secnumpunct{%
+ \ifdim\@tempskipa>\z@ % not a run-in section heading
+ \@ifnotempty{#8}{.\@nx\enspace}%
+ \else
+ \@ifempty{#8}{.}{.\@nx\enspace}%
+ \fi
+ }%
+ \protected@edef\@svsec{%
+ \ifnum#2<\@m
+ \@ifundefined{#1name}{}{%
+ \ignorespaces\csname #1name\endcsname\space
+ }%
+ \fi
+ \@seccntformat{#1}%
+ }%
+ \fi
+ \ifdim \@tempskipa>\z@ % then this is not a run-in section heading
+ \begingroup #6\relax
+ \@hangfrom{\hskip #3\relax\@svsec}{\interlinepenalty\@M #8\par}%
+ \endgroup
+ \csname #1mark\endcsname{#7}%
+ \ifnum#2>\@m \else \addtocontents{toc}{\xstring\select@language{\main@Arabi@language}}
+ \@tocwrite{#1}{\if@rl\textRL{#8}\else\textLR{#8}\fi}\fi
+ \else
+ \def\@svsechd{#6\hskip #3\@svsec
+ \@ifnotempty{#8}{\ignorespaces#8\unskip
+ \@addpunct.}%
+ \ifnum#2>\@m \else \addtocontents{toc}{\xstring\select@language{\main@Arabi@language}}
+ \@tocwrite{#1}{\if@rl\textRL{#8}\else\textLR{#8}\fi}\fi
+ }%
+ \fi
+ \global\@nobreaktrue
+ \@xsect{#5}}%
+}{}
+
+%
+% We change \alph{counter} so that we get abjad numerals instead,
+% we change \Alph{counter} to get abjad numerals since no Uppercase
+% exists in Arabic, just to avoid bad surprises.
+%
+% Good for Farsi? Change!?
+%
+
+\let\latin@Alph\Alph
+\let\latin@alph\alph
+\def\arabic@alph#1{\expandafter\abjadnumeral\expandafter{\number#1}}
+\def\arabic@Alph#1{\expandafter\abjadnumeral\expandafter{\number#1}}
+\addto\extrasfarsi{%
+\def\alph#1{\expandafter\abjadnumeral\csname c@#1\endcsname}
+\def\Alph#1{\expandafter\abjadnumeral\csname c@#1\endcsname}
+}
+
+\addto\noextrasfarsi{%
+ \let\alph\latin@alph
+ \let\Alph\latin@Alph}
+
+
+
+\@ifclassloaded{book}{%book
+\renewcommand{\thechapter}{\if@rl\protect\I{\number\c@chapter}\else\protect\textLR{\number\c@chapter}\fi}
+}{%not book
+\@ifclassloaded{amsbook}{%amsbook
+\renewcommand{\thechapter}{\if@rl\protect\I{\number\c@chapter}\else\protect\textLR{\number\c@chapter}\fi}
+}{}}
+
+
+\@ifclassloaded{book}{%book
+\let\SAV@thepart\thepart
+\renewcommand{\thepart}{\if@rl\protect\abjadnumeral{\number\c@part}%
+\else\protect\textLR{\SAV@thepart}\fi}%
+}{%not book
+\@ifclassloaded{amsbook}{%amsbook
+\renewcommand{\thepart}{\if@rl\protect\abjadnumeral{\number\c@part}%
+\else\protect\textLR{\SAV@thepart}\fi}%
+}{}}
+
+
+% ****************************************
+% * PAGE STYLES *
+% ****************************************
+
+
+%%%%%%%%% from latex.ltx
+%% \ps@empty does not need any fix
+\def\ps@plain{\let\@mkboth\@gobbletwo
+ \let\@oddhead\@empty\def\@oddfoot{\reset@font\hfil\if@rlmain
+ \I{\thepage}\else\textLR{\thepage}\fi
+ \hfil}\let\@evenhead\@empty\let\@evenfoot\@oddfoot}
+
+
+
+%
+% Temporary solution TODO
+%
+\def\ps@headings{\ps@plain}
+
+
+
+
+
+
+
+
+%
+\def\ps@myheadings{%
+\gdef\thepage{%
+\protect\if@rlmain\protect\I{\number\c@page}%
+\protect\else\protect\textLR{\number\c@page}%
+\protect\fi}%
+ \let\@oddfoot\@empty\let\@evenfoot\@empty
+ \def\@evenhead{\thepage\hfil\slshape\leftmark}%
+ \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
+ \let\@mkboth\@gobbletwo
+ \let\chaptermark\@gobble
+ \let\sectionmark\@gobble
+ \let\subsectionmark\@gobble
+ }
+%
+%
+
+
+\let\SAV@ps@plain\ps@plain
+\let\SAV@ps@myheadings\ps@myheadings
+\let\SAV@ps@headings\ps@headings
+%
+\def\ps@plain{\ps@empty%
+\gdef\thepage{\protect\if@rlmain\protect\I{\number\c@page}%
+\protect\else\protect\textLR{\number\c@page}%
+\protect\fi}%
+\SAV@ps@plain}
+%
+\def\ps@myheadings{\ps@empty%
+\gdef\thepage{%
+\protect\if@rlmain\protect\I{\number\c@page}%
+\protect\else\protect\textLR{\number\c@page}%
+\protect\fi}%
+\SAV@ps@myheadings}
+%
+\def\ps@headings{\ps@empty%
+\gdef\thepage{%
+\protect\if@rlmain\protect\I{\number\c@page}%
+\protect\else\protect\textLR{\number\c@page}%
+\protect\fi}%
+\SAV@ps@headings}
+
+
+
+
+
+
+%*********************************************************************
+% TODO
+% Referencing
+%
+% CHAPTERS (in part)
+%
+% SECTIONS (in part)
+%
+%
+% Arabize some counters
+%
+\@ifclassloaded{letter}{}{%not letter
+\@ifclassloaded{slide}{}{%not slide
+\@ifclassloaded{article}{%
+\def\thesection{\protect\if@rl\protect\I{\number\c@section}%
+\protect\else\protect\textLR{\number\c@section}%
+\protect\fi}
+\def\thesubsection{\protect\if@rl\protect\I{\number\c@subsection.\number\c@section}%
+\protect\else\protect\textLR{\number\c@section.\number\c@subsection}%
+\protect\fi}%
+}{%book or report [or other]
+\def\thesection{\protect\if@rl\protect\I{\number\c@section.\number\c@chapter}%
+\protect\else\protect\textLR{\number\c@chapter.\number\c@section}%
+\protect\fi}
+\def\thesubsection{\protect\if@rl\protect\I{\number\c@subsection.\number\c@section.\number\c@chapter}%
+\protect\else\protect\textLR{\number\c@chapter.\number\c@section.\number\c@subsection}%
+\protect\fi}%
+}}}%
+
+%
+% Specific to Hyperref
+% TODO
+%
+
+
+%
+% LISTS
+%
+\def\list#1#2{%
+ \ifnum \@listdepth >5\relax
+ \@toodeep
+ \else
+ \global\advance\@listdepth\@ne
+ \fi
+ \rightmargin\z@
+ \listparindent\z@
+ \itemindent\z@
+ \csname @list\romannumeral\the\@listdepth\endcsname
+ \def\@itemlabel{#1}%
+ \let\makelabel\@mklab
+ \@nmbrlistfalse
+ #2\relax
+ \@trivlist
+ \parskip\parsep
+ \parindent\listparindent
+ \advance\linewidth -\rightmargin
+ \advance\linewidth -\leftmargin
+ \if@rl
+ \advance\@totalleftmargin \rightmargin
+ \else
+ \advance\@totalleftmargin \leftmargin
+ \fi
+ \parshape \@ne \@totalleftmargin \linewidth
+ \ignorespaces}
+%
+%%%%%%%%%%%%%%%%%%%%%% ENUMERATE %%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% In the ``second level'' of an enumeration, which uses
+% (\@alph) by default in \LaTeX
+% latin alphabet and parenthese, we use abjad numerals.
+% Should we add parentheses to abjad numerals in \labelenumii ??
+% They look bad with arabic abjad numerals,
+% so parentheses are just suppressed! A "dot" is added after.
+%
+% We do the same for the ``fourth level'' which uses \@Alph
+% uppercase latin alphabet, withoutout parentheses.
+%
+% We keep the 1st and 3rd levels as in standard LaTeX
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%% the counters
+\renewcommand{\theenumii}
+ {\if@rl\expandafter\abjadnumeral{\number\c@enumii}%
+ \else\protect\textLR{\protect\@alph{\number\c@enumii}}\fi}
+
+\renewcommand{\theenumiv}
+ {\if@rl\expandafter\abjadnumeral{\number\c@enumiv}%
+ \else\protect\textLR{\protect\@alph{\number\c@enumiv}}\fi}
+
+%%%%%%%%%%%%%% Now the labels for the items
+
+\renewcommand{\labelenumi}
+ {\if@rl(\I{\number\c@enumi}).%
+ \else{\number\c@enumi}.\fi}
+
+\renewcommand{\labelenumii}
+ {\if@rl\abjadnumeral{\number\c@enumii}. %
+ \else({\number\c@enumii})\fi}
+
+\renewcommand{\labelenumiii}
+ {\if@rl\I{\number\c@enumiii}$\space-\space$ %
+ \else({\number\c@enumiii})\fi}
+
+\renewcommand{\labelenumiv}
+ {\if@rl\abjadnumeral{\number\c@enumiv}$\space-\space$ %
+ \else({\number\c@enumiv})\fi}
+
+
+% \def\theenumii{\arabic{enumii}}
+% \def\theenumiii{\arabic{enumiii}}
+% \def\theenumiv{\arabic{enumiv}}
+%
+%
+
+%%%%%%%%%%%%%%%%%%%%%% ITEMIZE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% The itemize four levels are modified. The \textperiodcentred looks too
+% "thin" with arabic fonts. We removed it and used new symbols
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\renewcommand{\labelitemi}
+ {\if@rl\protect\textLR{$\bullet$} %
+ \else\protect\textbullet\fi}
+
+\renewcommand{\labelitemii}
+ {\if@rl\protect\textLR{$\circ$} %
+ \else\protect\textLR{ \normalfont\bfseries\textendash}\fi}
+
+\renewcommand{\labelitemiii}
+ {\if@rl\protect\textLR{$*$} %
+ \else\protect\textasteriskcentered\fi}
+
+\renewcommand{\labelitemiv}
+ {\if@rl\protect $-$ %
+ \else\protect\textperiodcentred\fi}
+
+
+
+
+
+
+%%%%%%%%%%%%%%%%%%%%%% DESCRIPTION %%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% should change the \texttradb with the more logical \bfseries
+% in the case the user use an other font family but seems not to work all
+% the time !!
+\def \descriptionlabel #1{\if@rl{\if@farsi\textFR{\textbf{#1}}\else\textRL{\textbf{#1}}\fi\hskip \labelsep}%
+ \else{\hspace\labelsep \normalfont{\bfseries #1}}%
+\fi}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% The patch to get correct captions for figures and Tables
+% Adapted from "book.cls"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%%%%%%%%%%% First from latex.ltx %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\long\def\@caption#1[#2]#3{%
+ \par
+ \addtocontents{\csname ext@#1\endcsname}{\xstring\select@language{\main@Arabi@language}}%
+ \addcontentsline{\csname ext@#1\endcsname}{#1}%
+ {\protect\numberline{\csname the#1\endcsname}{\ignorespaces \if@rl{\textRL{#2}}\else\textLR{#2}\fi}}%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces \if@rl{\textRL{#3}}\else\textLR{#3}\fi}\par
+ \endgroup}
+
+
+
+
+\newsavebox\@Arabitempboxa
+
+\long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1: #2}%
+ \sbox\@Arabitempboxa{\textRL{#2} : #1}%
+ \if@rl{
+ \ifdim \wd\@Arabitempboxa >\hsize
+ \textRL{#2} : #1\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@Arabitempboxa\hfil}%
+ \fi}\else{
+ \ifdim \wd\@tempboxa >\hsize
+ #1: #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi}\fi
+ \vskip\belowcaptionskip}
+
+
+\def\fnum@table{\if@rl{\I{\thetable}\nobreakspace\tablename}%
+\else
+{\tablename\nobreakspace\thetable}%
+\fi}
+
+\def\fnum@figure{\if@rl{\I{\thefigure}\nobreakspace\figurename}%
+\else
+{\figurename\nobreakspace\thefigure}%
+\fi}
+
+
+\@ifclassloaded{letter}{}{%not letter
+\@ifclassloaded{slide}{}{%not slide
+\@ifclassloaded{article}{%
+\def\thetable{\protect\if@rl\protect\I{\number\c@table}%
+\protect\else\protect\textLR{\number\c@table}%
+\protect\fi}%
+\def\thefigure{\protect\if@rl\protect\I{\number\c@figure}%
+\protect\else\protect\textLR{\number\c@figure}%
+\protect\fi}%
+}{%report or book
+\def\thetable{\protect\if@rl\protect\I{\number\c@table.\number\c@chapter}%
+\protect\else\protect\textLR{\number\c@chapter.\number\c@table}%
+\protect\fi}
+\def\thefigure{\protect\if@rl\protect\I{\number\c@figure.\number\c@chapter}%
+\protect\else\protect\textLR{\number\c@chapter.\number\c@figure}%
+\protect\fi}
+}%article
+}%slide
+}%letter
+
+
+
+
+
+% the package \pkg{ifthen} is needed. We test if the font contains a character
+% \cs{rial}. Else we define it just to be the \cs{rial} of the font \texttt{nazli]
+% which has one
+\AtBeginDocument{\RequirePackage{ifthen}}
+\newlength{\llahheight}
+\newlength{\Decimalheight}
+
+\DeclareRobustCommand{\llah}{%The Final Glyph
+ \settoheight{\llahheight}{\llahchar}%
+ \ifthenelse{\lengthtest{\llahheight=0pt}}%
+ {\mbox{\textFR{\textnazli{\llahchar{}}}}}%
+ {\llahchar{}}%
+ }
+
+%\DeclareRobustCommand{\llah}{%The Final Glyph
+% \llahchar{}}%
+%
+%\DeclareRobustCommand{\allah}{%The whole word
+% \settoheight{\llahheight}{\llahchar}%
+% \ifthenelse{\lengthtest{\llahheight=0pt}}%
+% {\mbox{\textFR{\textnazli{\alef\llahchar{}}}}}%
+% {\alef\llahchar{}}%
+% }
+
+\DeclareRobustCommand{\allah}{%The whole word
+ \alef\llah{}}%
+
+\DeclareRobustCommand{\Decimal}{%
+ \settoheight{\Decimalheight}{\Decimalchar}%
+ \ifthenelse{\lengthtest{\Decimalheight=0pt}}%
+ {\mbox{\textFR{\textnazli{\Decimalchar}}}}%
+ {\Decimalchar}%
+ }
+
+
+\DeclareRobustCommand{\openguill}{<~}
+\DeclareRobustCommand{\closguill}{~>}
+%
+
+%
+% TITLE AUTHOR DATE
+%
+\let\@@title=\title
+\renewcommand{\title}[1]{\@@title{\if@rl\beginR #1\endR\else #1\fi}}
+\let\@@author=\author
+\renewcommand{\author}[1]{\@@author{\if@rl\beginR #1\endR\else #1\fi}}
+\let\@@date=\date
+\renewcommand{\date}[1]{\@@date{\if@rl\beginR #1\endR\else #1\fi}}
+
+
+
+
+
+
+
+\AtBeginDocument{%
+%%%%%%%%%%%%%%%% require a TeX--XeT/eTeX engine %%%%%%%%%%%%
+\ifx\TeXXeTstate\undefined\else%
+ \TeXXeTstate=1 %ensures that TeX--XeT/eTeX is active
+\fi
+\ifx\beginL\@undefined%
+ \newlinechar`\^^J
+ \typeout{^^JTo avoid this error message,^^J%
+ run TeX--XeT or e-TeX engine instead of regular TeX.^^J}
+ \errmessage{Right-to-Left Support Error: use TeX--XeT or e-TeX
+ engine}%
+\fi
+}
+
+\endinput
+
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/arabiftoday.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/arabiftoday.sty
new file mode 100644
index 0000000000..85175e0377
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/arabiftoday.sty
@@ -0,0 +1,240 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: `Arabiftoday.sty' Farsi Jalai date module for use with
+% the Arabi package.
+%
+%% %%%%%%%%%%%%%%%%% MODIFICATION %%%%%%%%%%%%%%%%%%%%%%%%%%
+%% just renamed the months properly for use with Arabi
+%% Did not want to use any local encoding, so we used the
+%% internal glyphs names!
+%% And added the control sequence \farsimonth
+%%
+%% Youssef JABRI January 2006
+%%==========================================================
+%%
+%% This file is a part of FarsiTeX, a Persian/English typesetting system.
+%%
+%% Copyright (C) 1996 Hassan Abolhassani
+%% Copyright (C) 1996-2001 Roozbeh Pournader <roozbeh@sharif.edu>
+%% Copytight (C) 2000-2001 Behdad Esfahbod <behdad@bamdad.org>
+%%
+%% FarsiTeX 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.
+%%
+%% FarsiTeX 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 FarsiTeX; if not, write to the Free Software
+%% Foundation, 59 Temple Place, Suite 330, Boston, MA 02111-1307,
+%% USA.
+%%
+%% Any licensing or usage questions should be directed to Roozbeh
+%% Pournader <roozbeh@sharif.edu>.
+%%
+
+\newif\ifFT@leap \newif\ifFT@kabiseh
+\newcount\FT@i \newcount\FT@y \newcount\FT@m \newcount\FT@d
+\newcount\FT@latini \newcount\FT@farsii
+\newcount\FT@latinii \newcount\FT@farsiii
+\newcount\FT@latiniii \newcount\FT@farsiiii
+\newcount\FT@latiniv \newcount\FT@farsiiv
+\newcount\FT@latinv \newcount\FT@farsiv
+\newcount\FT@latinvi \newcount\FT@farsivi
+\newcount\FT@latinvii \newcount\FT@farsivii
+\newcount\FT@latinviii \newcount\FT@farsiviii
+\newcount\FT@latinix \newcount\FT@farsiix
+\newcount\FT@latinx \newcount\FT@farsix
+\newcount\FT@latinxi \newcount\FT@farsixi
+\newcount\FT@latinxii \newcount\FT@farsixii
+ \newcount\FT@farsixiii
+
+\newcount\FT@temp
+\newcount\FT@temptwo
+\newcount\FT@tempthree
+\newcount\FT@yModHundred
+\newcount\FT@thirtytwo
+\newcount\FT@dn
+\newcount\FT@sn
+\newcount\FT@mminusone
+
+\def\ftoday{%
+\FT@y=\year \FT@m=\month \FT@d=\day
+%
+\FT@temp=\FT@y
+\divide\FT@temp by 100\relax
+\multiply\FT@temp by 100\relax
+\FT@yModHundred=\FT@y
+\advance\FT@yModHundred by -\FT@temp\relax
+%
+\ifodd\FT@yModHundred
+ \FT@leapfalse
+\else
+ \FT@temp=\FT@yModHundred
+ \divide\FT@temp by 2\relax
+ \ifodd\FT@temp\FT@leapfalse
+ \else
+ \ifnum\FT@yModHundred=0%
+ \FT@temp=\FT@y
+ \divide\FT@temp by 400\relax
+ \multiply\FT@temp by 400\relax
+ \ifnum\FT@y=\FT@temp\FT@leaptrue\else\FT@leapfalse\fi
+ \else\FT@leaptrue
+ \fi
+ \fi
+\fi
+%
+\FT@latini=31\relax
+\ifFT@leap
+ \FT@latinii = 29\relax
+\else
+ \FT@latinii = 28\relax
+\fi
+\FT@latiniii = 31\relax
+\FT@latiniv = 30\relax
+\FT@latinv = 31\relax
+\FT@latinvi = 30\relax
+\FT@latinvii = 31\relax
+\FT@latinviii = 31\relax
+\FT@latinix = 30\relax
+\FT@latinx = 31\relax
+\FT@latinxi = 30\relax
+\FT@latinxii = 31\relax
+%
+\FT@thirtytwo=32\relax
+%
+\FT@temp=\FT@y
+\advance\FT@temp by -17\relax
+\FT@temptwo=\FT@temp
+\divide\FT@temptwo by 33\relax
+\multiply\FT@temptwo by 33\relax
+\advance\FT@temp by -\FT@temptwo
+\ifnum\FT@temp=\FT@thirtytwo\FT@kabisehfalse
+\else
+ \FT@temptwo=\FT@temp
+ \divide\FT@temptwo by 4\relax
+ \multiply\FT@temptwo by 4\relax
+ \advance\FT@temp by -\FT@temptwo
+ \ifnum\FT@temp=\z@\FT@kabisehtrue\else\FT@kabisehfalse\fi
+\fi
+%
+% --BE
+% In fact farsii is equal to the Leap years from a fixed year to the last
+% year minus the Kabise years from a fixed year to the last year plus a const.
+%
+\FT@tempthree=\FT@y % Number of Leap years
+\advance\FT@tempthree by -1
+\FT@temp=\FT@tempthree % T := (MY-1) div 4
+\divide\FT@temp by 4\relax
+\FT@temptwo=\FT@tempthree % T := T - ((MY-1) div 100)
+\divide\FT@temptwo by 100\relax
+\advance\FT@temp by -\FT@temptwo
+\FT@temptwo=\FT@tempthree % T := T + ((MY-1) div 400)
+\divide\FT@temptwo by 400\relax
+\advance\FT@temp by \FT@temptwo
+\advance\FT@tempthree by -611 % Number of Kabise years
+\FT@temptwo=\FT@tempthree % T := T - ((SY+10) div 33) * 8
+\divide\FT@temptwo by 33\relax
+\multiply\FT@temptwo by 8\relax
+\advance\FT@temp by -\FT@temptwo
+\FT@temptwo=\FT@tempthree %
+\divide\FT@temptwo by 33\relax
+\multiply\FT@temptwo by 33\relax
+\advance\FT@tempthree by -\FT@temptwo
+\ifnum\FT@tempthree=32\advance\FT@temp by 1\fi % if (SY+10) mod 33=32 then Inc(T);
+\divide\FT@tempthree by 4\relax % T := T - ((SY+10) mod 33) div 4
+\advance\FT@temp by -\FT@tempthree
+\advance\FT@temp by -137 % T := T - 137 Adjust the value
+\FT@farsii=31
+\advance\FT@farsii by -\FT@temp % now 31 - T is the farsii
+%
+\FT@farsiii = 30\relax
+\ifFT@kabiseh
+ \FT@farsiiii = 30\relax
+\else
+ \FT@farsiiii = 29\relax
+\fi
+\FT@farsiiv = 31\relax
+\FT@farsiv = 31\relax
+\FT@farsivi = 31\relax
+\FT@farsivii = 31\relax
+\FT@farsiviii= 31\relax
+\FT@farsiix = 31\relax
+\FT@farsix = 30\relax
+\FT@farsixi = 30\relax
+\FT@farsixii = 30\relax
+\FT@farsixiii= 30\relax
+%
+\FT@dn= 0\relax
+\FT@sn= 0\relax
+\FT@mminusone=\FT@m
+\advance\FT@mminusone by -1\relax
+%
+\FT@i=0\relax
+\ifnum\FT@i < \FT@mminusone
+\loop
+\advance \FT@i by 1\relax
+\advance\FT@dn by \csname FT@latin\romannumeral\the\FT@i\endcsname
+\ifnum\FT@i<\FT@mminusone \repeat
+\fi
+\advance \FT@dn by \FT@d
+%
+\FT@i=1\relax
+\FT@sn = \FT@farsii
+\ifnum \FT@sn<\FT@dn
+\loop
+\advance \FT@i by 1\relax
+\advance\FT@sn by \csname FT@farsi\romannumeral\the\FT@i\endcsname
+\ifnum \FT@sn<\FT@dn \repeat
+\fi
+\ifnum \FT@i < 4
+ \FT@m = 9 \advance\FT@m by \FT@i
+ \advance \FT@y by -622\relax
+\else
+ \FT@m = \FT@i \advance \FT@m by -3\relax
+ \advance \FT@y by -621\relax
+\fi
+\advance\FT@sn by -\csname FT@farsi\romannumeral\the\FT@i%
+\endcsname
+\ifnum\FT@i = 1
+ \FT@d = \FT@dn \advance \FT@d by 30 \advance\FT@d by -\FT@farsii
+\else
+ \FT@d = \FT@dn \advance \FT@d by -\FT@sn
+\fi
+\beginL\number\FT@d\endL\space%
+%Changedc from here YJ
+\farsimonth{\FT@m}\space\beginL\number\FT@y\endL%
+}
+% added \farsimonth YJ
+\def\farsimonth#1{\ifcase#1\or \fa\ra\waw\ra\dal\ya\nun\or
+\alef\ra\dal\ya\baa\ha\sheen\taa\or
+\kha\ra\dal\alef\dal\or \taa\ya\ra\or
+\meem\ra\dal\alef\dal\or
+\sheen\ha\ra\ya\waw\ra\or \meem\ha\ra\or
+\alefmadda\baa\alef\nun\or \alefmadda\dhal\ra\or
+\dal\ya\or \baa\ha\meem\nun\or
+\alef\seen\fa\nun\dal\fi}
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/arabnovowel.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/arabnovowel.sty
new file mode 100644
index 0000000000..3a4ab16b86
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/arabnovowel.sty
@@ -0,0 +1,202 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: `arabnovowel.sty' To vocalize and deVocalize Arabic/Farsi text
+%
+%
+%%%%%%%%%%%%%%%%%%%%%%%% Font Names %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Check if file is loaded and announce file on terminal:
+%
+\csname ArabnovowelLoaded\endcsname
+\let\ArabnovowelLoaded\endinput
+
+
+\ProvidesFile{arabnovowel.sty}
+ [2005/09/07 v0.1 Arabic dummy vowel slots when needed]
+
+
+% A Flag to dectect later on if we are vocalizing or not
+\newif\ifVocalize
+%
+% Declaring vowels off
+%
+\DeclareTextCommand{\fathaOFF}{LAE}{}
+\DeclareTextCommand{\dammaOFF}{LAE}{}
+\DeclareTextCommand{\kasraOFF}{LAE}{}
+\DeclareTextCommand{\sukunOFF}{LAE}{}
+\DeclareTextCommand{\shaddaOFF}{LAE}{}
+%
+\DeclareTextCommand{\raffOFF}{LAE}{}
+\DeclareTextCommand{\nasbOFF}{LAE}{}
+\DeclareTextCommand{\jarrOFF}{LAE}{}
+%
+\DeclareTextCommand{\shaddanasbOFF}{LAE}{}
+\DeclareTextCommand{\shaddaraffOFF}{LAE}{}
+\DeclareTextCommand{\shaddajarrOFF}{LAE}{}
+%
+\DeclareTextCommand{\shaddafathaOFF}{LAE}{}
+\DeclareTextCommand{\shaddadammaOFF}{LAE}{}
+\DeclareTextCommand{\shaddakasraOFF}{LAE}{}
+%
+% Declaring Saved vowels for posterior use
+%
+\DeclareTextSymbol{\nasbSAV}{LAE}{190}
+\DeclareTextSymbol{\raffSAV}{LAE}{191}
+\DeclareTextSymbol{\jarrSAV}{LAE}{192}
+%
+\DeclareTextSymbol{\shaddanasbSAV}{LAE}{198}
+\DeclareTextSymbol{\shaddaraffSAV}{LAE}{199}
+\DeclareTextSymbol{\shaddajarrSAV}{LAE}{200}
+%
+% Then, Vowels that come anywhere in a word
+%
+\DeclareTextSymbol{\fathaSAV}{LAE}{97}%{161}
+\DeclareTextSymbol{\dammaSAV}{LAE}{117}%{162}
+\DeclareTextSymbol{\kasraSAV}{LAE}{105}%{163}
+\DeclareTextSymbol{\shaddaSAV}{LAE}{204}%{164}
+\DeclareTextSymbol{\sukunSAV}{LAE}{34}%{197}%{}
+%
+\DeclareTextSymbol{\shaddafathaSAV}{LAE}{201}%169
+\DeclareTextSymbol{\shaddadammaSAV}{LAE}{202}%170
+\DeclareTextSymbol{\shaddakasraSAV}{LAE}{203}%171
+%
+% And now for the LFE encoding used by Farsi
+%
+\DeclareTextCommand{\ffathaOFF}{LFE}{}
+\DeclareTextCommand{\fdammaOFF}{LFE}{}
+\DeclareTextCommand{\fkasraOFF}{LFE}{}
+\DeclareTextCommand{\fsukunOFF}{LFE}{}
+\DeclareTextCommand{\fshaddaOFF}{LFE}{}
+%
+\DeclareTextCommand{\fraffOFF}{LFE}{}
+\DeclareTextCommand{\fnasbOFF}{LFE}{}
+\DeclareTextCommand{\fjarrOFF}{LFE}{}
+%
+\DeclareTextCommand{\fshaddanasbOFF}{LFE}{}
+\DeclareTextCommand{\fshaddaraffOFF}{LFE}{}
+\DeclareTextCommand{\fshaddajarrOFF}{LFE}{}
+%
+\DeclareTextCommand{\fshaddafathaOFF}{LFE}{}
+\DeclareTextCommand{\fshaddadammaOFF}{LFE}{}
+\DeclareTextCommand{\fshaddakasraOFF}{LFE}{}
+%
+% Declaring Saved vowels for posterior use
+%
+\DeclareTextSymbol{\fnasbSAV}{LFE}{190}
+\DeclareTextSymbol{\fraffSAV}{LFE}{191}
+\DeclareTextSymbol{\fjarrSAV}{LFE}{192}
+%
+\DeclareTextSymbol{\fshaddanasbSAV}{LFE}{198}
+\DeclareTextSymbol{\fshaddaraffSAV}{LFE}{199}
+\DeclareTextSymbol{\fshaddajarrSAV}{LFE}{200}
+%
+% Then, Vowels that come anywhere in a word
+%
+\DeclareTextSymbol{\ffathaSAV}{LFE}{97}%{161}
+\DeclareTextSymbol{\fdammaSAV}{LFE}{117}%{162}
+\DeclareTextSymbol{\fkasraSAV}{LFE}{105}%{163}
+\DeclareTextSymbol{\fshaddaSAV}{LFE}{204}%{164}
+\DeclareTextSymbol{\fsukunSAV}{LFE}{34}%{197}%{}
+%
+\DeclareTextSymbol{\fshaddafathaSAV}{LFE}{201}%169
+\DeclareTextSymbol{\fshaddadammaSAV}{LFE}{202}%170
+\DeclareTextSymbol{\fshaddakasraSAV}{LFE}{203}%171
+%
+%%%%%%%%%%% An Arabi Strut that does not depend on the font
+% and changes with the the same font according the fact the
+% text is vocalized or not!
+%
+\newlength{\ArabiStruthightOFF}
+\newlength{\ArabiStrutdepthOFF}
+\newlength{\ArabiStruthightON}
+\newlength{\ArabiStrutdepthON}
+%
+\settoheight{\ArabiStruthightOFF}{{\if@farsi\fontencoding{LFE}\else%
+ \fontencoding{LAE}\fi\selectfont\alefhamza}}%
+\settodepth{\ArabiStrutdepthOFF}{{\if@farsi\fontencoding{LFE}\else%
+ \fontencoding{LAE}\fi\selectfont\Haa}}%
+\settoheight{\ArabiStruthightON}{{\if@farsi\fontencoding{LFE}\else%
+ \fontencoding{LAE}\fi\selectfont\damma}}%
+\settodepth{\ArabiStrutdepthON}{{\if@farsi\fontencoding{LFE}\else%
+ \fontencoding{LAE}\fi\selectfont\kasra}}%
+%
+%
+\def\ArabiStrutON{\rule[\ArabiStrutdepthON]{0pt}{\ArabiStruthightON}}
+\def\ArabiStrutOFF{\rule[\ArabiStrutdepthOFF]{0pt}{\ArabiStruthightOFF}}
+%
+%
+% Switching vowels off
+%
+\def\Novocalize{%
+\Vocalizefalse
+\renewcommand{\fatha}{\if@farsi\ffathaOFF\else\fathaOFF\fi}%
+\renewcommand{\damma}{\if@farsi\fdammaOFF\else\dammaOFF\fi}%
+\renewcommand{\kasra}{\if@farsi\fkasraOFF\else\kasraOFF\fi}%
+\renewcommand{\sukun}{\if@farsi\fsukunOFF\else\sukunOFF\fi}%
+\renewcommand{\shadda}{\if@farsi\fshaddaOFF\else\shaddaOFF\fi}%
+%
+\renewcommand{\raff}{\if@farsi\fraffOFF\else\raffOFF\fi}%
+\renewcommand{\nasb}{\if@farsi\fnasbOFF\else\nasbOFF\fi}%
+\renewcommand{\jarr}{\if@farsi\fjarrOFF\else\raffOFF\fi}%
+%
+\renewcommand{\shaddanasb}{\if@farsi\fshaddanasbOFF\else\shaddanasbOFF\fi}%
+\renewcommand{\shaddaraff}{\if@farsi\fshaddaraffOFF\else\shaddaraffOFF\fi}%
+\renewcommand{\shaddajarr}{\if@farsi\fshaddajarrOFF\else\shaddajarrOFF\fi}%
+%
+\renewcommand{\shaddafatha}{\if@farsi\fshaddafathaOFF\else\shaddafathaOFF\fi}%
+\renewcommand{\shaddadamma}{\if@farsi\fshaddadammaOFF\else\shaddadammaOFF\fi}%
+\renewcommand{\shaddakasra}{\if@farsi\fshaddakasraOFF\else\shaddakasraOFF\fi}%
+}
+%
+% reactivating vowels
+%
+\def\Vocalize{%
+\Vocalizetrue
+\renewcommand{\fatha}{\if@farsi\ffathaSAV\else\fathaSAV\fi}%
+\renewcommand{\damma}{\if@farsi\fdammaSAV\else\dammaSAV\fi}%
+\renewcommand{\kasra}{\if@farsi\fkasraSAV\else\kasraSAV\fi}%
+\renewcommand{\sukun}{\if@farsi\fsukunSAV\else\sukunSAV\fi}%
+\renewcommand{\shadda}{\if@farsi\fshaddaSAV\else\shaddaSAV\fi}%
+%
+\renewcommand{\raff}{\if@farsi\fraffSAV\else\raffSAV\fi}%
+\renewcommand{\nasb}{\if@farsi\fnasbSAV\else\nasbSAV\fi}%
+\renewcommand{\jarr}{\if@farsi\fjarrSAV\else\raffSAV\fi}%
+%
+\renewcommand{\shaddanasb}{\if@farsi\fshaddanasbSAV\else\shaddanasbSAV\fi}%
+\renewcommand{\shaddaraff}{\if@farsi\fshaddaraffSAV\else\shaddaraffSAV\fi}%
+\renewcommand{\shaddajarr}{\if@farsi\fshaddajarrSAV\else\shaddajarrSAV\fi}%
+%
+\renewcommand{\shaddafatha}{\if@farsi\fshaddafathaSAV\else\shaddafathaSAV\fi}%
+\renewcommand{\shaddadamma}{\if@farsi\fshaddadammaSAV\else\shaddadammaSAV\fi}%
+\renewcommand{\shaddakasra}{\if@farsi\fshaddakasraSAV\else\shaddakasraSAV\fi}%
+}
+%
+% The default value of \cs{Voclaizetrue} and \cs{vocalize}
+%
+\Vocalizetrue
+\Vocalize
+
+
+\def\ArabiStrut{\ifVocalize\ArabiStrutON\else\ArabiStrutOFF\fi}
+
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/arfonts.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/arfonts.sty
new file mode 100644
index 0000000000..41084bd7aa
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/arfonts.sty
@@ -0,0 +1,191 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: `ARfonts.sty' Arabic font .....
+% the Arabi package.
+%
+%%
+\ProvidesPackage{ARfonts}[2006/01/01 Part of the Arabi package]
+
+
+\newif\iffree\newif\ifmixed\newif\ifmscore
+
+\DeclareOption{free}{\mixedfalse\mscorefalse\freetrue}
+\DeclareOption{mixed}{\freefalse\mscorefalse\mixedtrue}
+\DeclareOption{mscore}{\freefalse\mixedfalse\mscoretrue}
+\ExecuteOptions{free}
+\ProcessOptions
+
+\ifmixed
+\DeclareFontFamily{LAE}{\rmdefault}{\hyphenchar\font=-1}%
+\DeclareFontShape{LAE}{\rmdefault}{m}{n}{<-> s*[1.25] dtpn }{}%traditionalarabic
+\DeclareFontShape{LAE}{\rmdefault}{m}{it}{<-> s*[1.25] aedimnah }{}%
+\DeclareFontShape{LAE}{\rmdefault}{m}{sl}{<-> s*[1.25] aedimnah }{}%
+\DeclareFontShape{LAE}{\rmdefault}{m}{sc}{<-> s*[1.25] aenada }{}%
+%
+\DeclareFontShape{LAE}{\rmdefault}{bx}{n}{<-> s*[1.25] traditionalarabicbold }{}%
+\DeclareFontShape{LAE}{\rmdefault}{bx}{sl}{<-> s*[1.25] traditionalarabicbold }{}%
+\DeclareFontShape{LAE}{\rmdefault}{bx}{it}{<-> s*[1.25] traditionalarabicbold }{}%
+%%%%
+\DeclareFontShape{LAE}{\rmdefault}{b}{n}{<-> s*[1.25] traditionalarabicbold }{}%
+\DeclareFontShape{LAE}{\rmdefault}{b}{sl}{<-> s*[1.25] traditionalarabicbold }{}%
+\DeclareFontShape{LAE}{\rmdefault}{b}{it}{<-> s*[1.25] traditionalarabicbold }{}%
+
+\DeclareFontFamily{LAE}{\sfdefault}{\hyphenchar\font=-1}
+\DeclareFontShape{LAE}{\sfdefault}{m}{n}{<-> s*[1.25] arsimpo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{m}{it}{<-> s*[1.25] arsimpo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{m}{sl}{<-> s*[1.25] arsimpo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{m}{sc}{<-> s*[1.25] arsimpo }{}%
+%
+\DeclareFontShape{LAE}{\sfdefault}{bx}{n}{<-> s*[1.25] arsimpbdo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{bx}{sl}{<-> s*[1.25] arsimpbdo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{bx}{it}{<-> s*[1.25] arsimpbdo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{bx}{sc}{<-> s*[1.25] arsimpbdo }{}%
+%%%%
+\DeclareFontShape{LAE}{\sfdefault}{b}{n}{<-> s*[1.25] arsimpbdo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{b}{sl}{<-> s*[1.25] arsimpbdo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{b}{it}{<-> s*[1.25] arsimpbdo }{}%
+
+
+\DeclareFontFamily{LAE}{\ttdefault}{\hyphenchar\font=-1}%
+\DeclareFontShape{LAE}{\ttdefault}{m}{n}{<-> s*[1.25] aenice }{}%
+\DeclareFontShape{LAE}{\ttdefault}{m}{it}{<-> s*[1.25] aenice }{}%
+\DeclareFontShape{LAE}{\ttdefault}{m}{sl}{<-> s*[1.25] aenice }{}%
+\DeclareFontShape{LAE}{\ttdefault}{m}{sc}{<-> s*[1.25] aenice }{}%
+%
+\DeclareFontShape{LAE}{\ttdefault}{bx}{n}{<-> s*[1.25] aegraph }{}%
+\DeclareFontShape{LAE}{\ttdefault}{bx}{sl}{<-> s*[1.25] aegraph }{}%
+\DeclareFontShape{LAE}{\ttdefault}{bx}{it}{<-> s*[1.25] aegraph }{}%
+\DeclareFontShape{LAE}{\ttdefault}{bx}{sc}{<-> s*[1.25] aegraph }{}%
+%%%%
+\DeclareFontShape{LAE}{\ttdefault}{b}{n}{<-> s*[1.25] aegraph }{}%
+\DeclareFontShape{LAE}{\ttdefault}{b}{sl}{<-> s*[1.25] aegraph }{}%
+\DeclareFontShape{LAE}{\ttdefault}{b}{it}{<-> s*[1.25] aegraph }{}%
+\else
+\iffree
+\DeclareFontFamily{LAE}{\rmdefault}{\hyphenchar\font=-1}%
+\DeclareFontShape{LAE}{\rmdefault}{m}{n}{<-> s*[1.25] aealmohanadb }{}%
+\DeclareFontShape{LAE}{\rmdefault}{m}{it}{<-> s*[1.25] aealmohanadbolditalic }{}%
+\DeclareFontShape{LAE}{\rmdefault}{m}{sl}{<-> s*[1.25] aealmohanadbolditalic }{}%
+\DeclareFontShape{LAE}{\rmdefault}{m}{sc}{<-> s*[1.25] aenada }{}%
+%
+\DeclareFontShape{LAE}{\rmdefault}{bx}{n}{<-> s*[1.25] ae_almohanad_xxbold }{}%
+\DeclareFontShape{LAE}{\rmdefault}{bx}{sl}{<->s*[1.25] aealmohanadbolditalic }{}%
+\DeclareFontShape{LAE}{\rmdefault}{bx}{it}{<->s*[1.25] aealmohanadbolditalic }{}%
+%%%%
+\DeclareFontShape{LAE}{\rmdefault}{b}{n}{<-> s*[1.25] ae_almohanad_xxbold }{}%
+\DeclareFontShape{LAE}{\rmdefault}{b}{sl}{<-> s*[1.25] aealmohanadbolditalic }{}%
+\DeclareFontShape{LAE}{\rmdefault}{b}{it}{<-> s*[1.25] aealmateen }{}%
+%
+%%%%%%%%%%%%%%%%%%%%%%% Nice for typewriter type %%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%% and graph for typewriter type Bold face %%%%%%%%%%%%%%%%%%%%%%
+\DeclareFontFamily{LAE}{\ttdefault}{\hyphenchar\font=-1}
+\DeclareFontShape{LAE}{\ttdefault}{m}{n}{<-> s*[1.25] aenice }{}%
+\DeclareFontShape{LAE}{\ttdefault}{m}{sl}{<-> s*[1.25] aenice }{}%
+\DeclareFontShape{LAE}{\ttdefault}{m}{it}{<-> s*[1.25] aenice }{}%
+\DeclareFontShape{LAE}{\ttdefault}{m}{sc}{<-> s*[1.25] aenice }{}%Andalus for small caps!
+%
+\DeclareFontShape{LAE}{\ttdefault}{bx}{n}{<-> s*[1.25] aegraph }{}%
+\DeclareFontShape{LAE}{\ttdefault}{bx}{sl}{<->s*[1.25] aegraph }{}%
+\DeclareFontShape{LAE}{\ttdefault}{bx}{it}{<->s*[1.25] aegraph }{}%
+%%%%
+\DeclareFontShape{LAE}{\ttdefault}{b}{n}{<-> s*[1.25] aegraph }{}%
+\DeclareFontShape{LAE}{\ttdefault}{b}{sl}{<-> s*[1.25] aegraph }{}%
+\DeclareFontShape{LAE}{\ttdefault}{b}{it}{<-> s*[1.25] aegraph }{}%
+%
+%%%%%%%%%%%%%%%%%%%%%%% Sindibad for Sans Serif !! %%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%% Didn't find better ?! and looks sans serif
+%%%%
+\DeclareFontFamily{LAE}{\sfdefault}{\hyphenchar\font=-1}%
+\DeclareFontShape{LAE}{\sfdefault}{m}{n}{<-> s*[1.25] aesindibad }{}%
+\DeclareFontShape{LAE}{\sfdefault}{m}{sl}{<-> s*[1.25] aesindibad }{}%
+\DeclareFontShape{LAE}{\sfdefault}{m}{it}{<-> s*[1.25] aesindibad }{}%
+\DeclareFontShape{LAE}{\sfdefault}{m}{sc}{<-> s*[1.25] aesindibad }{}%
+%
+\DeclareFontShape{LAE}{\sfdefault}{bx}{n}{<-> s*[1.25] aesindibad }{}%
+\DeclareFontShape{LAE}{\sfdefault}{bx}{sl}{<->s*[1.25] aesindibad }{}%
+\DeclareFontShape{LAE}{\sfdefault}{bx}{it}{<->s*[1.25] aesindibad }{}%
+%%%%
+\DeclareFontShape{LAE}{\sfdefault}{b}{n}{<-> s*[1.25] aesindibad }{}%
+\DeclareFontShape{LAE}{\sfdefault}{b}{sl}{<-> s*[1.25] aesindibad }{}%
+\DeclareFontShape{LAE}{\sfdefault}{b}{it}{<-> s*[1.25] aesindibad }{}%
+%
+\else
+\ifmscore
+\DeclareFontFamily{LAE}{\rmdefault}{\hyphenchar\font=-1}%
+\DeclareFontShape{LAE}{\rmdefault}{m}{n}{<-> s*[1.25] traditionalarabic }{}%
+\DeclareFontShape{LAE}{\rmdefault}{m}{it}{<-> s*[1.25] traditionalarabic }{}%
+\DeclareFontShape{LAE}{\rmdefault}{m}{sl}{<-> s*[1.25] traditionalarabic }{}%
+\DeclareFontShape{LAE}{\rmdefault}{m}{sc}{<-> s*[1.25] andlso }{}%
+%
+\DeclareFontShape{LAE}{\rmdefault}{bx}{n}{<-> s*[1.25] traditionalarabicbold }{}%
+\DeclareFontShape{LAE}{\rmdefault}{bx}{sl}{<->s*[1.25] traditionalarabicbold }{}%
+\DeclareFontShape{LAE}{\rmdefault}{bx}{it}{<->s*[1.25] traditionalarabicbold }{}%
+%%%%
+\DeclareFontShape{LAE}{\rmdefault}{b}{n}{<-> s*[1.25] traditionalarabicbold }{}%
+\DeclareFontShape{LAE}{\rmdefault}{b}{sl}{<-> s*[1.25] traditionalarabicbold }{}%
+\DeclareFontShape{LAE}{\rmdefault}{b}{it}{<-> s*[1.25] traditionalarabicbold }{}%
+%
+%%%%%%%%%%%%%%%%%%%%%%% Arial for typewriter type ?! %%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%% Courier seems to have a BAD spacing ?! %%%%%%%%%%%%%%%%%%%%%%%%%%
+\DeclareFontFamily{LAE}{\ttdefault}{\hyphenchar\font=-1}
+\DeclareFontShape{LAE}{\ttdefault}{m}{n}{<-> s*[1.25] ararial }{}%
+\DeclareFontShape{LAE}{\ttdefault}{m}{sl}{<-> s*[1.25] ararial }{}%
+\DeclareFontShape{LAE}{\ttdefault}{m}{it}{<-> s*[1.25] ararial }{}%
+\DeclareFontShape{LAE}{\ttdefault}{m}{sc}{<-> s*[1.25] andlso }{}%Andalus for small caps!
+%
+\DeclareFontShape{LAE}{\ttdefault}{bx}{n}{<-> s*[1.25] ararialbd }{}%
+\DeclareFontShape{LAE}{\ttdefault}{bx}{sl}{<->s*[1.25] ararialbd }{}%
+\DeclareFontShape{LAE}{\ttdefault}{bx}{it}{<->s*[1.25] ararialbd }{}%
+%%%%
+\DeclareFontShape{LAE}{\ttdefault}{b}{n}{<-> s*[1.25] ararialbd }{}%
+\DeclareFontShape{LAE}{\ttdefault}{b}{sl}{<-> s*[1.25] ararialbd }{}%
+\DeclareFontShape{LAE}{\ttdefault}{b}{it}{<-> s*[1.25] ararialbd }{}%
+%
+%%%%%%%%%%%%%%%%%%%%%%% Simplified Arabic for Sans Serif !! %%%%%%%%%%%%%%%%%%%%%%%%%%%
+\DeclareFontFamily{LAE}{\sfdefault}{\hyphenchar\font=-1}%
+\DeclareFontShape{LAE}{\sfdefault}{m}{n}{<-> s*[1.25] arsimpo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{m}{sl}{<-> s*[1.25] arsimpo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{m}{it}{<-> s*[1.25] arsimpo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{m}{sc}{<-> s*[1.25] arsimpo }{}%
+%
+\DeclareFontShape{LAE}{\sfdefault}{bx}{n}{<-> s*[1.25] arsimpbdo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{bx}{sl}{<->s*[1.25] arsimpbdo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{bx}{it}{<->s*[1.25] arsimpbdo }{}%
+%%%%
+\DeclareFontShape{LAE}{\sfdefault}{b}{n}{<-> s*[1.25] arsimpbdo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{b}{sl}{<-> s*[1.25] arsimpbdo }{}%
+\DeclareFontShape{LAE}{\sfdefault}{b}{it}{<-> s*[1.25] arsimpbdo }{}%
+\fi
+\fi
+\fi
+
+
+
+
+
+
+
+
+
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/bblopts.cfg b/language/arabic/arabi/arabi/texmf/latex/arabi/bblopts.cfg
new file mode 100644
index 0000000000..16550fb086
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/bblopts.cfg
@@ -0,0 +1,42 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: bblopts.cfg
+%
+%
+%
+%
+
+
+\ProvidesFile{bblopts.cfg}
+ [2005/09/08 v0.1 %
+ add Arabic and Farsi to "declared" options of babel]
+
+
+\DeclareOption{arabic}{%
+ \input{arabic.ldf}
+ }
+
+\DeclareOption{farsi}{%
+ \input{farsi.ldf}
+ }
+
+\endinput \ No newline at end of file
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/calendrierfpar.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/calendrierfpar.sty
new file mode 100644
index 0000000000..1e1723752e
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/calendrierfpar.sty
@@ -0,0 +1,817 @@
+\def\CalendrierFP@version{Version 0.46, 9 mai 2003}
+\message{`Calendrier avec FP', \CalendrierFP@version\space Manuel Luque}
+% Requires PSTricks, pstcol, pst-3d, multido, fp packages
+\RequirePackage{pstricks}
+\RequirePackage{pst-3d}
+\RequirePackage{multido}
+\RequirePackage{fp}
+\FPmessagesfalse
+\FPdebugfalse
+\RequirePackage{pst-key}
+%% Manuel LUQUE <Mluque5130aol.com> %%
+%% 1 Octobre 1999 pour le dodcadre %%
+%% 23 avril 2003 pour le calendrier %%
+%% 27 avril : placer une date de son choix
+%% suggestion de Jean-Michel Sarlat
+%% jours fris et ftes : 1 mai 003 %%
+%% 1 et 8 mai, 15 aot, 1 et 11 novembre, 25 dcembre
+%% fte de Pques %%
+%% ascension et pentecte : 8 mai 2003
+\RequirePackage[arabic,english]{babel}
+%
+\definecolor{RougeA}{cmyk}{0.05,0.1,0.1,0}
+\definecolor{RougeB}{cmyk}{0.05,0.15,0.15,0}
+\definecolor{RougeC}{cmyk}{0.05,0.2,0.2,0}
+\definecolor{RougeD}{cmyk}{0.05,0.25,0.25,0}
+\definecolor{RougeE}{cmyk}{0.05,0.3,0.3,0}
+\definecolor{RougeF}{cmyk}{0.05,0.35,0.35,0}
+\definecolor{RougeG}{cmyk}{0.05,0.4,0.4,0}
+\definecolor{RougeH}{cmyk}{0.05,0.45,0.45,0}
+\definecolor{RougeI}{cmyk}{0.05,0.5,0.5,0}
+\definecolor{RougeJ}{cmyk}{0.05,0.55,0.55,0}
+\definecolor{RougeK}{cmyk}{0.05,0.6,0.6,0}
+\definecolor{RougeL}{cmyk}{0.1,0.65,0.65,0}
+\newpsstyle{holiday}{framesep=2pt,doubleline=true,doublecolor=red,linecolor=red,fillstyle=solid,fillcolor=RougeA}
+\SpecialCoor%
+\define@key{psset}{Vx}{\edef\psk@Solide@Viewpointx{#1}}
+\define@key{psset}{Vy}{\edef\psk@Solide@Viewpointy{#1}}
+\define@key{psset}{Vz}{\edef\psk@Solide@Viewpointz{#1}}
+\setkeys{psset}{Vx=1,Vy=1,Vz=1}
+\def\RA{7.36022}\gdef\rb{5.06525}\gdef\racal{8.19574}%
+\gdef\rc{5.06525}\gdef\rd{8.19574}
+\newpsstyle{janvier}{Vx=-\rc,Vy=0,Vz=-\rd,viewangle=108}
+\newpsstyle{fevrier}{Vx=\rc,Vy=0,Vz=-\rd,viewangle=180}
+\newpsstyle{mars}{Vx=0,Vy=-\racal,Vz=-\rb,viewangle=144}
+\newpsstyle{avril}{Vx=-\rd,Vy=-\rc,Vz=0,viewangle=162}
+\newpsstyle{mai}{Vx=-\rd,Vy=\rc,Vz=0,viewangle=198}
+\newpsstyle{juin}{Vx=0,Vy=\racal,Vz=-\rb,viewangle=216}
+\newpsstyle{juillet}{Vx=-\rc,Vy=0,Vz=\rd,viewangle=0}
+\newpsstyle{aout}{Vx=0,Vy=-\racal,Vz=\rb,viewangle=-36}
+\newpsstyle{septembre}{Vx=\rd,Vy=-\rc,Vz=0,viewangle=-18}
+\newpsstyle{octobre}{Vx=\rd,Vy=\rc,Vz=0,viewangle=18}
+\newpsstyle{novembre}{Vx=0,Vy=\racal,Vz=\rb,viewangle=36}
+\newpsstyle{decembre}{Vx=\rc,Vy=0,Vz=\rb,viewangle=0}
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%\newcount\tmpi
+%\newcount\tmpii
+%\FPset{\tmpi}{0}
+%\FPset{\tmpii}{0}
+%
+%
+%\def\Remainder#1#2#3{%
+%\FPeval{#3}{(#1)-((#2)*((#1)/(#2)))}
+%}% % c = a - b(a/b)
+%
+%\def\Remainder#1#2#3{%
+% #3 = #1% % c = a
+% \divide #3 by #2% % c = a/b
+% \multiply #3 by -#2% % c = -b(a/b)
+% \advance #3 by #1}% % c = a - b(a/b)
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+\def\dodecaedre{%
+\@ifnextchar[{\pst@dodecaedre}{\pst@dodecaedre[]}}%
+\def\pst@dodecaedre[#1]{{%
+\setkeys{psset}{#1}%
+\pspicture(-8,-12)(8,12)%
+\psset{fillstyle=solid}%
+\psset{viewpoint={\psk@Solide@Viewpointx} {\psk@Solide@Viewpointy} {\psk@Solide@Viewpointz}}%
+\newcommand{\faceA}{\pspolygon(\RA;18)(\RA;90)(\RA;162)(\RA;234)(\RA;306)}
+\newcommand{\faceB}{\pspolygon(\RA;270)(\RA;-18)(\RA;54)(\RA;126)(\RA;198)}
+\newcommand{\faceC}{\pspolygon(\RA;0)(\RA;72)(\RA;144)(\RA;216)(\RA;288)}
+\newcommand{\faceD}{\pspolygon(\RA;36)(\RA;108)(\RA;180)(\RA;252)(\RA;324)}
+%face1
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(0)+(\psk@Solide@Viewpointy)*(\racal)+(\psk@Solide@Viewpointz)*(\rb)}%
+\FPifpos{\Test}\ThreeDput[normal=0 {\racal} {\rb}](0,\racal,\rb){%
+\psset{fillcolor=RougeA}\faceA\rput{36}{\rput(-1.8,0){\Calendrier[Mois=11]}}}\fi
+%face2
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(0)-(\psk@Solide@Viewpointy)*(\racal)+(\psk@Solide@Viewpointz)*(\rb)}%
+\FPifpos{\Test}\ThreeDput[normal=0 {-\racal} {\rb}](0,-\racal,\rb){%
+\psset{fillcolor=RougeB}\faceA\rput{-36}{\rput(-1.8,0){\Calendrier[Mois=8]}}}\fi
+%face3
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(0)+(\psk@Solide@Viewpointy)*(\racal)-(\psk@Solide@Viewpointz)*(\rb)}%
+\FPifpos{\Test}\ThreeDput[normal=0 {\racal} {-\rb}](0,\racal,-\rb){%
+\psset{fillcolor=RougeC}\faceB\rput{216}{\rput(-1.8,0){\Calendrier[Mois=6]}}}\fi
+%face4
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(0)-(\psk@Solide@Viewpointy)*(\racal)-(\psk@Solide@Viewpointz)*(\rb)}%
+\FPifpos{\Test}\ThreeDput[normal=0 {-\racal} {-\rb}](0,-\racal,-\rb){%
+\psset{fillcolor=RougeD}\faceB\rput{144}{\rput(-1.8,0){\Calendrier[Mois=3]}}}\fi%
+%face 5
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(\rc)+(\psk@Solide@Viewpointy)*(0)+(\psk@Solide@Viewpointz)*(\rd)}%
+\FPifpos{\Test}\ThreeDput[normal={\rc} 0 {\rd}](\rc,0,\rd){%
+\psset{fillcolor=RougeE}\faceB\rput(-1.8,0){\Calendrier[Mois=12]}}\fi
+%face6
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(-\rc)+(\psk@Solide@Viewpointy)*(0)+(\psk@Solide@Viewpointz)*(\rd)}%
+\FPifpos{\Test}\ThreeDput[normal={-\rc} 0 {\rd}](-\rc,0,\rd){%
+\psset{fillcolor=RougeF}\faceB\rput{0}{\rput(-1.8,0){\Calendrier[Mois=7]}}}\fi
+%face7
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(\rc)+(\psk@Solide@Viewpointy)*(0)-(\psk@Solide@Viewpointz)*(\rd)}%
+\FPifpos{\Test}\ThreeDput[normal={\rc} 0 {-\rd}](\rc,0,-\rd){%
+\psset{fillcolor=RougeG}\faceA\rput{180}{\rput(-1.8,0){\Calendrier[Mois=2]}}}\fi
+%face8
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(-\rc)+(\psk@Solide@Viewpointy)*(0)-(\psk@Solide@Viewpointz)*(\rd)}%
+\FPifpos{\Test}\ThreeDput[normal={-\rc} 0 {-\rd}](-\rc,0,-\rd){%
+\psset{fillcolor=RougeH}\faceA\rput{108}{\rput(-1.8,0){\Calendrier[Mois=1]}}}\fi%
+%face 9
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(\rd)+(\psk@Solide@Viewpointy)*(\rc)+(\psk@Solide@Viewpointz)*(0)}%
+\FPifpos{\Test}\ThreeDput[normal={\rd} {\rc} 0](\rd,\rc,0){%
+\psset{fillcolor=RougeI}\faceC\rput{18}{\rput(-1.8,0){\Calendrier[Mois=10]}}}\fi
+%face10
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(-\rd)+(\psk@Solide@Viewpointy)*(\rc)+(\psk@Solide@Viewpointz)*(0)}%
+\FPifpos{\Test}\ThreeDput[normal={-\rd} {\rc} 0](-\rd,\rc,0){%
+\psset{fillcolor=RougeJ}\faceD\rput{198}{\rput(-1.8,0){\Calendrier[Mois=5]}}}\fi
+%face11
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(\rd)-(\psk@Solide@Viewpointy)*(\rc)+(\psk@Solide@Viewpointz)*(0)}%
+\FPifpos{\Test}\ThreeDput[normal={\rd} {-\rc} 0](\rd,-\rc,0){%
+\psset{fillcolor=RougeK}\faceD\rput{-18}{\rput(-1.8,0){\Calendrier[Mois=9]}}}\fi
+%face8
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(-\rd)+(\psk@Solide@Viewpointz)*(0)-(\psk@Solide@Viewpointy)*(\rc)}%
+\FPifpos{\Test}\ThreeDput[normal={-\rd} {-\rc} 0](-\rd,-\rc,0){%
+\psset{fillcolor=RougeL}\faceC\rput{162}{\rput(-1.8,0){\Calendrier[Mois=4]}}}\fi%
+\endpspicture
+}}
+%
+\define@key{psset}{Jour}{\edef\psk@CalendrierJ{#1}}
+\define@key{psset}{MoisChoisi}{\edef\psk@CalendrierMchoix{#1}}
+\define@key{psset}{Mois}{\edef\psk@CalendrierM{#1}}
+\define@key{psset}{An}{\edef\psk@CalendrierA{#1}}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\setkeys{psset}{Jour=\number\day,Mois=\number\month,MoisChoisi=\number\month,An=\number\year}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%
+\newcount\colonne\newcount\ligne
+
+\def\Calendrier{\@ifnextchar[{\pst@Calendrier}{\pst@Calendrier[]}}
+
+\def\pst@Calendrier[#1]{{%
+\setkeys{psset}{#1}
+% calcul de la date de Pques
+% lundi de Pques
+\FPset{\Year}{\psk@CalendrierA}
+\FPeval\GY{(\Year)-19*trunc((\Year)/19,0)}
+\FPeval{\Cent}{trunc((\Year)/100,0)}
+\FPeval{\Iter}{trunc((\Cent)-trunc((\Cent)/4,0)-trunc((8*(\Cent)+13)/25,0)+
+ (\GY)*19+15,0)}
+\FPeval{\Iterdiv}{trunc((\Iter)/30,0)}
+\FPeval\Hepact{(\Iter)-30*(\Iterdiv)}
+\FPeval\Inbre{trunc((\Hepact)-trunc((\Hepact)/28,0)*
+ (1-trunc((\Hepact)/28,0))*(trunc(29/((\Hepact)+1),0)*trunc((21-(\GY))/11,0)),0)}
+\FPeval\Jnbreinter{trunc((\Year)+trunc((\Year)/4,0)+(\Inbre)+2-(\Cent)+trunc((\Cent)/4,0),0)}
+\FPeval\Jnbre{trunc((\Jnbreinter)-7*trunc((\Jnbreinter)/7,0),0)}
+\FPeval\Lnbre{trunc((\Inbre)-(\Jnbre),0)}
+\FPeval\Month{trunc(3+trunc(((\Lnbre)+40)/44,0),0)}
+\FPeval\Day{trunc((\Lnbre)+28-31*trunc((\Month)/4,0),0)}
+\ifnum\Month=4
+ \ifnum\Day>25 \FPeval{\Day}{trunc((\Day)-7,0)} % dimanche de Pques
+% \ifnum\Day>25 \FPeval{\Day}{trunc((\Day)-6,0)} % Lundi de Pques
+% \else
+% \FPeval{\Day}{trunc((\Day)+1,0)} % Lundi de Pques
+ \fi
+\fi
+\ifnum\Month=3
+ \ifnum\Day=32 \FPset{\Day}{1}\FPset{\Month}{4}%
+% \else
+% \FPeval{\Day}{trunc((\Day)+1,0)} % Lundi
+ \fi
+\fi
+%
+% calcul du jour de l'ascension
+% si Pques tombe au mois d'avril, faire (39-30)+\Day = 9+\Day
+% pour le jour du mois de mai de l'ascension
+\ifnum\Month=4
+\FPeval\DayAscension{trunc((\Day)+9,0)}
+\FPeval\MonthAscension{trunc((\Month)+1,0)}
+% Ascension le \FPprint\DayAscension/\FPprint\MonthAscension/\FPprint\Year
+\FPeval\TestJourPentecote{trunc((\DayAscension)+10,0)}
+ \ifnum\TestJourPentecote>31
+ \FPeval\DayPentecote{trunc((\TestJourPentecote)-31,0)}
+ \FPeval\MonthPentecote{trunc((\Month)+2,0)}
+ \else
+ \FPset{\DayPentecote}{\TestJourPentecote}
+ \FPset\MonthPentecote{\MonthAscension}
+ \fi
+
+% Pentec\^ote le \FPprint\DayPentecote/\FPprint\MonthPentecote/\FPprint\Year
+\fi
+
+% Dans le cas o Pques tombe en mars
+% (39-30)+\Day=8+\Day
+% si 8+\Day<ou=30 on reste en avril
+% \DayAscension=8+\Day
+% \MonthAscension=4
+% Pentcte est 10 jours aprs l'ascension
+\ifnum\Month=3
+\FPeval\TestSiJourAvril{trunc((\Day)+8,0)}
+\ifnum\TestSiJourAvril<30
+ \FPeval\MonthAscension{trunc((\Month)+1,0)}
+ \FPeval\DayAscension{trunc(8+(\Day),0)}
+ \else
+ \FPeval\DayAscension{trunc((\Day)-22,0)}
+ \FPeval\MonthAscension{trunc((\Month)+2,0)}
+\fi
+ \FPeval\TestJourPentecote{trunc((\DayAscension)+10,0)}
+ \ifnum\MonthAscension=4
+ \ifnum\TestJourPentecote<31
+ \FPset{\DayPentecote}{\TestJourPentecote}
+ \FPset\MonthPentecote{4}
+ \else
+ \FPeval\DayPentecote{trunc((\TestJourPentecote)-30,0)}
+ \FPset\MonthPentecote{5}
+ \fi
+ \fi
+ \ifnum\MonthAscension=5
+ \FPeval\DayPentecote{trunc((\DayAscension)+10,0)}
+ \FPset\MonthPentecote{5}
+ \fi
+\fi
+%
+% test d'une anne bissextile
+\FPeval{\YearBissextil}{(((\psk@CalendrierA)*11)+14)/30}
+\FPtrunc{\YearBissextil}{\YearBissextil}{0}
+\FPiflt{\YearBissextil}{11}\FPset{\YearBissextil}{1}\else\FPset{\YearBissextil}{0}\fi
+%
+\ifnum\psk@CalendrierM=1\def\adddays{0}\def\Name{\meem\Haa\ra\meem}\def\NbreJours{30}\fi
+\ifnum\psk@CalendrierM=2\def\adddays{30}\def\Name{\sad\fa\ra}\def\NbreJours{29}\fi
+\ifnum\psk@CalendrierM=3\def\adddays{59}%
+\def\Name{\ra\baa\ya\ayn\space\alef\lam\alefhamza\waw\lam}\def\NbreJours{30}\fi
+\ifnum\psk@CalendrierM=4\def\adddays{89}%
+\def\Name{\ra\baa\ya\ayn\space\alef\lam\thaa\alef\nun\ya}\def\NbreJours{29}\fi
+\ifnum\psk@CalendrierM=5\def\adddays{118}%
+\def\Name{\jeem\meem\alef\dal\alefmaqsura\space\alef\lam\alefhamza\waw\lam\alefmaqsura}\def\NbreJours{30}\fi
+\ifnum\psk@CalendrierM=6\def\adddays{148}%
+\def\Name{\jeem\meem\alef\dal\alefmaqsura\space\alef\lam\thaa\alef\nun\ya\T}\def\NbreJours{29}\fi
+\ifnum\psk@CalendrierM=7\def\adddays{177}%
+\def\Name{\ra\jeem\baa}\def\NbreJours{30}\fi
+\ifnum\psk@CalendrierM=8
+ \ifnum\YearBissextil=\psk@CalendrierA\def\adddays{207}\else\def\adddays{207}\fi
+\def\Name{\sheen\ayn\baa\alef\nun}\def\NbreJours{29}\fi
+\ifnum\psk@CalendrierM=9\def\adddays{236}%
+\def\Name{\ra\meem\dad\alef\nun}\def\NbreJours{30}\fi
+\ifnum\psk@CalendrierM=10\def\adddays{266}%
+\def\Name{\sheen\waw\alef\lam}\def\NbreJours{29}\fi
+\ifnum\psk@CalendrierM=11\def\adddays{295}%
+\def\Name{\dhal\waw\space\alef\lam\qaf\ayn\dal\T}\def\NbreJours{30}\fi
+\ifnum\psk@CalendrierM=12\def\adddays{325}%
+\def\Name{\dhal\waw\space\alef\lam\Haa\jeem\T}%
+ \ifnum\YearBissextil=1\def\NbreJours{30}\else\def\NbreJours{29}
+\fi\fi
+%
+%\ifnum\YearBissextil=\psk@CalendrierA
+% \FPeval{\NbYearBissextil}{((\psk@CalendrierA)-2000)/4}
+% \FPtrunc{\NbYearBissextil}{\NbYearBissextil}{0}
+% \else
+% \FPeval{\NbYearBissextil}{((\psk@CalendrierA)-2000)/4+1}
+% \FPtrunc{\NbYearBissextil}{\NbYearBissextil}{0}
+%\fi
+%% le 1 Moharram 1400 est un samedi : Nbdays=6
+%\FPeval{\NbDays}{6+(((\psk@CalendrierA)-1400))*4% each normal year +4 days, 354=50*7+4
+%+(\NbYearBissextil)%each 30 years 11 bisextil ones
+%+(\adddays)}
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\FPeval{\tmpii}{(\psk@CalendrierA)/210}
+\FPtrunc{\tmpii}{\tmpii}{0}
+\FPeval{\tmpi}{(\psk@CalendrierA)-((210)*(\tmpii))}
+\FPclip{\rest}{\tmpi}
+\message{the rest is \rest}
+\FPeval{\tmpii}{\tmpi/30}%
+\FPtrunc{\tmpii}{\tmpii}{0}% %<<<<<<<<<<<< Vertical entry D: 0 4 1 5 2 6 3
+\FPeval{\difference}{(((\tmpii)+1)*30)-(\tmpi)}%<<<< horizontal entry
+\FPclip{\difference}{\difference}
+\message{the difference is \difference}%
+%%% colon 7
+\FPifeq{\tmpii}{0}%
+%%%% row 1
+%\FPifeq{\difference}{8}
+%\FPset{\firstDay}{6}
+%\else
+%\FPifeq{\difference}{16}
+%\FPset{\firstDay}{6}
+%\else
+%\FPifeq{\difference}{5}
+%\FPset{\firstDay}{6}
+%\else
+%\FPifeq{\difference}{13}
+%\FPset{\firstDay}{6}
+%\else
+%\FPifeq{\difference}{21}
+%\FPset{\firstDay}{6}
+%\else
+%\FPifeq{\difference}{29}
+%\FPset{\firstDay}{6}
+%\else %%%%%%%%%%%
+%%%% row 2
+%\FPifeq{\difference}{2}
+%\FPset{\firstDay}{7}
+%\else
+%\FPifeq{\difference}{10}
+%\FPset{\firstDay}{7}
+%\else
+%\FPifeq{\difference}{18}
+%\FPset{\firstDay}{7}
+%\else
+%\FPifeq{\difference}{26}
+%\FPset{\firstDay}{7}
+%\else
+%%%% row 3
+%\FPifeq{\difference}{23}
+%\FPset{\firstDay}{1}
+%\else
+%\FPifeq{\difference}{6}
+%\FPset{\firstDay}{1}
+%\else
+%\FPifeq{\difference}{14}
+%\FPset{\firstDay}{1}
+%\else
+%%%% row 4
+%\FPifeq{\difference}{4}
+%\FPset{\firstDay}{2}
+%\else
+%\FPifeq{\difference}{12}
+%\FPset{\firstDay}{2}
+%\else
+%\FPifeq{\difference}{20}
+%\FPset{\firstDay}{2}
+%\else
+%\FPifeq{\difference}{28}
+%\FPset{\firstDay}{2}
+%\else
+%%%% row 5
+%\FPifeq{\difference}{1}
+%\FPset{\firstDay}{3}
+%\else
+%\FPifeq{\difference}{9}
+%\FPset{\firstDay}{3}
+%\else
+%\FPifeq{\difference}{17}
+%\FPset{\firstDay}{3}
+%\else
+%\FPifeq{\difference}{25}
+%\FPset{\firstDay}{3}
+%\else
+%%%% row 6
+%\FPifeq{\difference}{6}
+%\FPset{\firstDay}{4}
+%\else
+%\FPifeq{\difference}{14}
+%\FPset{\firstDay}{4}
+%\else
+%\FPifeq{\difference}{22}
+%\FPset{\firstDay}{4}
+%\else
+%\FPifeq{\difference}{30} %<<<<<<<<<<<<<<< or 0
+%\FPset{\firstDay}{4}
+%\else
+%%%% row 7
+%\FPifeq{\difference}{3}
+%\FPset{\firstDay}{5}
+%\else
+%\FPifeq{\difference}{11}
+%\FPset{\firstDay}{5}
+%\else
+%\FPifeq{\difference}{19}
+%\FPset{\firstDay}{5}
+%\else
+%\FPifeq{\difference}{27}
+%\FPset{\firstDay}{5}
+%\else
+%\FPifeq{\difference}{24}
+%\FPset{\firstDay}{5}
+%\fi\fi\fi\fi\fi%row 7
+%\fi\fi\fi\fi%row 6
+%\fi\fi\fi\fi%row 5
+%\fi\fi\fi\fi%row 4
+%\fi\fi\fi%row 3
+%\fi\fi\fi\fi%row 2
+\fi\fi\fi\fi\fi\fi%row 1
+\else % colonne 5
+\FPifeq{\tmpii}{1}%
+%%% row 1
+%\FPifeq{\difference}{8}
+%\FPset{\firstDay}{4}
+%\else
+%\FPifeq{\difference}{16}
+%\FPset{\firstDay}{4}
+%\else
+%\FPifeq{\difference}{5}
+%\FPset{\firstDay}{4}
+%\else
+%\FPifeq{\difference}{13}
+%\FPset{\firstDay}{4}
+%\else
+%\FPifeq{\difference}{21}
+%\FPset{\firstDay}{4}
+%\else
+%\FPifeq{\difference}{29}
+%\FPset{\firstDay}{4}
+%\else %%%%%%%%%%%
+%%%% row 2
+%\FPifeq{\difference}{2}
+%\FPset{\firstDay}{5}
+%\else
+%\FPifeq{\difference}{10}
+%\FPset{\firstDay}{5}
+%\else
+%\FPifeq{\difference}{18}
+%\FPset{\firstDay}{5}
+%\else
+%\FPifeq{\difference}{26}
+%\FPset{\firstDay}{5}
+%\else
+%%%% row 3
+%\FPifeq{\difference}{23}
+%\FPset{\firstDay}{6}
+%\else
+%\FPifeq{\difference}{6}
+%\FPset{\firstDay}{6}
+%\else
+%\FPifeq{\difference}{14}
+%\FPset{\firstDay}{6}
+%\else
+%%%% row 4
+%\FPifeq{\difference}{4}
+%\FPset{\firstDay}{7}
+%\else
+%\FPifeq{\difference}{12}
+%\FPset{\firstDay}{7}
+%\else
+%\FPifeq{\difference}{20}
+%\FPset{\firstDay}{7}
+%\else
+%\FPifeq{\difference}{28}
+%\FPset{\firstDay}{7}
+%\else
+%%%% row 5
+%\FPifeq{\difference}{1}
+%\FPset{\firstDay}{1}
+%\else
+%\FPifeq{\difference}{9}
+%\FPset{\firstDay}{1}
+%\else
+%\FPifeq{\difference}{17}
+%\FPset{\firstDay}{1}
+%\else
+%\FPifeq{\difference}{25}
+%\FPset{\firstDay}{1}
+%\else
+%%%% row 6
+%\FPifeq{\difference}{6}
+%\FPset{\firstDay}{2}
+%\else
+%\FPifeq{\difference}{14}
+%\FPset{\firstDay}{2}
+%\else
+%\FPifeq{\difference}{22}
+%\FPset{\firstDay}{2}
+%\else
+%\FPifeq{\difference}{30} %<<<<<<<<<<<<<<< or 0
+%\FPset{\firstDay}{2}
+%\else
+%%%% row 7
+%\FPifeq{\difference}{3}
+%\FPset{\firstDay}{3}
+%\else
+%\FPifeq{\difference}{11}
+%\FPset{\firstDay}{3}
+%\else
+%\FPifeq{\difference}{19}
+%\FPset{\firstDay}{3}
+%\else
+%\FPifeq{\difference}{27}
+%\FPset{\firstDay}{3}
+%\else
+%\FPifeq{\difference}{24}
+%\FPset{\firstDay}{3}
+%\fi\fi\fi\fi\fi%row 7
+%\fi\fi\fi\fi%row 6
+%\fi\fi\fi\fi%row 5
+%\fi\fi\fi\fi%row 4
+%\fi\fi\fi%row 3
+%\fi\fi\fi\fi%row 2
+%\fi\fi\fi\fi\fi\fi%row 1
+\else % colonne 3
+ \FPifeq{\tmpii}{2}%
+%%%% row 1
+%\FPifeq{\difference}{8}
+%\FPset{\firstDay}{2}
+%\else
+%\FPifeq{\difference}{16}
+%\FPset{\firstDay}{2}
+%\else
+%\FPifeq{\difference}{5}
+%\FPset{\firstDay}{2}
+%\else
+%\FPifeq{\difference}{13}
+%\FPset{\firstDay}{2}
+%\else
+%\FPifeq{\difference}{21}
+%\FPset{\firstDay}{2}
+%\else
+%\FPifeq{\difference}{29}
+%\FPset{\firstDay}{2}
+%\else %%%%%%%%%%%
+%%%% row 2
+%\FPifeq{\difference}{2}
+%\FPset{\firstDay}{3}
+%\else
+%\FPifeq{\difference}{10}
+%\FPset{\firstDay}{3}
+%\else
+%\FPifeq{\difference}{18}
+%\FPset{\firstDay}{3}
+%\else
+%\FPifeq{\difference}{26}
+%\FPset{\firstDay}{3}
+%\else
+%%%% row 3
+%\FPifeq{\difference}{23}
+%\FPset{\firstDay}{4}
+%\else
+%\FPifeq{\difference}{6}
+%\FPset{\firstDay}{4}
+%\else
+%\FPifeq{\difference}{14}
+%\FPset{\firstDay}{4}
+%\else
+%%%% row 4
+%\FPifeq{\difference}{4}
+%\FPset{\firstDay}{5}
+%\else
+%\FPifeq{\difference}{12}
+%\FPset{\firstDay}{5}
+%\else
+%\FPifeq{\difference}{20}
+%\FPset{\firstDay}{5}
+%\else
+%\FPifeq{\difference}{28}
+%\FPset{\firstDay}{5}
+%\else
+%%%% row 5
+%\FPifeq{\difference}{1}
+%\FPset{\firstDay}{6}
+%\else
+%\FPifeq{\difference}{9}
+%\FPset{\firstDay}{6}
+%\else
+%\FPifeq{\difference}{17}
+%\FPset{\firstDay}{6}
+%\else
+%\FPifeq{\difference}{25}
+%\FPset{\firstDay}{6}
+%\else
+%%%% row 6
+%\FPifeq{\difference}{6}
+%\FPset{\firstDay}{7}
+%\else
+%\FPifeq{\difference}{14}
+%\FPset{\firstDay}{7}
+%\else
+%\FPifeq{\difference}{22}
+%\FPset{\firstDay}{7}
+%\else
+%\FPifeq{\difference}{30} %<<<<<<<<<<<<<<< or 0
+%\FPset{\firstDay}{7}
+%\else
+%%%% row 7
+%\FPifeq{\difference}{3}
+%\FPset{\firstDay}{1}
+%\else
+%\FPifeq{\difference}{11}
+%\FPset{\firstDay}{1}
+%\else
+%\FPifeq{\difference}{19}
+%\FPset{\firstDay}{1}
+%\else
+%\FPifeq{\difference}{27}
+%\FPset{\firstDay}{1}
+%\else
+%\FPifeq{\difference}{24}
+%\FPset{\firstDay}{1}
+%\fi\fi\fi\fi\fi%row 7
+%\fi\fi\fi\fi%row 6
+%\fi\fi\fi\fi%row 5
+%\fi\fi\fi\fi%row 4
+%\fi\fi\fi%row 3
+%\fi\fi\fi\fi%row 2
+%\fi\fi\fi\fi\fi\fi%row 1
+\else % colonne 1
+ \FPifeq{\tmpii}{3}%
+%%% row 1
+\FPifeq{\difference}{8}
+\FPset{\firstDay}{7}
+\else
+\FPifeq{\difference}{16}
+\FPset{\firstDay}{7}
+\else
+\FPifeq{\difference}{5}
+\FPset{\firstDay}{7}
+\else
+\FPifeq{\difference}{13}
+\FPset{\firstDay}{7}
+\else
+\FPifeq{\difference}{21}
+\FPset{\firstDay}{7}
+\else
+\FPifeq{\difference}{29}
+\FPset{\firstDay}{7}
+\else %%%%%%%%%%%
+%%% row 2
+\FPifeq{\difference}{2}
+\FPset{\firstDay}{1}
+\else
+\FPifeq{\difference}{10}
+\FPset{\firstDay}{1}
+\else
+\FPifeq{\difference}{18}
+\FPset{\firstDay}{1}
+\else
+\FPifeq{\difference}{26}
+\FPset{\firstDay}{1}
+\else
+%%% row 3
+\FPifeq{\difference}{23}
+\FPset{\firstDay}{2}
+\else
+\FPifeq{\difference}{6}
+\FPset{\firstDay}{2}
+\else
+\FPifeq{\difference}{14}
+\FPset{\firstDay}{2}
+\else
+%%% row 4
+\FPifeq{\difference}{4}
+\FPset{\firstDay}{3}
+\else
+\FPifeq{\difference}{12}
+\FPset{\firstDay}{3}
+\else
+\FPifeq{\difference}{20}
+\FPset{\firstDay}{3}
+\else
+\FPifeq{\difference}{28}
+\FPset{\firstDay}{3}
+\else
+%%% row 5
+\FPifeq{\difference}{1}
+\FPset{\firstDay}{4}
+\else
+\FPifeq{\difference}{9}
+\FPset{\firstDay}{4}
+\else
+\FPifeq{\difference}{17}
+\FPset{\firstDay}{4}
+\else
+\FPifeq{\difference}{25}
+\FPset{\firstDay}{4}
+\else
+%%% row 6
+\FPifeq{\difference}{6}
+\FPset{\firstDay}{5}
+\else
+\FPifeq{\difference}{14}
+\FPset{\firstDay}{5}
+\else
+\FPifeq{\difference}{22}
+\FPset{\firstDay}{5}
+\else
+\FPifeq{\difference}{30} %<<<<<<<<<<<<<<< or 0
+\FPset{\firstDay}{5}
+\else
+%%% row 7
+\FPifeq{\difference}{3}
+\FPset{\firstDay}{6}
+\else
+\FPifeq{\difference}{11}
+\FPset{\firstDay}{6}
+\else
+\FPifeq{\difference}{19}
+\FPset{\firstDay}{6}
+\else
+\FPifeq{\difference}{27}
+\FPset{\firstDay}{6}
+\else
+\FPifeq{\difference}{24}
+\FPset{\firstDay}{6}
+\fi\fi\fi\fi%row 7
+\fi\fi\fi%row 6
+\fi\fi\fi%row 5
+\fi\fi\fi%row 4
+\fi\fi%row 3
+\fi\fi\fi%row 2
+\fi\fi\fi\fi\fi%row 1
+\else % colonne 6 %<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+ \FPifeq{\tmpii}{4}\FPset{\firstDay}{5}
+\else % colonne 4
+ \FPifeq{\tmpii}{5}\FPset{\firstDay}{3}
+\else % colonne 2
+ \FPifeq{\tmpii}{6}\FPset{\firstDay}{1}
+\fi%\fi\fi\fi\fi\fi
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\FPclip{\firstDay}{\firstDay}
+\message{^^JfAtiH muHarram for \psk@CalendrierA\space is \firstDay\space where 1 is Monday^^J}%
+\FPeval{\NbDays}{(\firstDay)+(\adddays)}
+%\FPtrunc{\NbDays}{\NbDays}{0}
+%
+\FPeval{\Frac}{(\NbDays)/7}
+\FPtrunc{\Frac}{\Frac}{0}
+%
+\FPeval{\Quotient}{(\Frac)*7}
+\FPtrunc{\Quotient}{\Quotient}{0}
+%
+\FPeval{\firstDay}{(\NbDays)-({\Quotient})}
+\FPclip{\firstDay}{\firstDay}
+%
+\FPifzero\firstDay\FPset{\firstDay}{7}\fi
+\ligne=2
+\colonne=\firstDay
+\pspicture(0,-4)(8,4)
+\psframe*[linecolor=blue](0.5,3.2)(7.5,4)
+\rput(4,3.6){\textcolor{white}{\textsf{\textbf{\huge\R{\Name}}}}}
+\rput(1,2.8){\textsf{\textbf{\Large L}}}
+\rput(2,2.8){\textsf{\textbf{\Large M}}}
+\rput(3,2.8){\textsf{\textbf{\Large M}}}
+\rput(4,2.8){\textsf{\textbf{\Large J}}}
+\rput(5,2.8){\textsf{\textbf{\Large V}}}
+\rput(6,2.8){\textsf{\textbf{\Large S}}}
+\rput(7,2.8){\textsf{\textbf{\Large D}}}
+\multido{\i=\firstDay+1}{\NbreJours}{%
+\ifnum\i>7\ligne=1\fi
+\ifnum\i>14\ligne=0\fi
+\ifnum\i>21\ligne=-1\fi
+\ifnum\i>28\ligne=-2\fi
+\ifnum\i>35\ligne=-3\fi
+ \ifnum\psk@CalendrierM=\psk@CalendrierMchoix
+ \ifnum\the\multidocount=\psk@CalendrierJ
+ \rput(\colonne,\ligne){%
+ \pscirclebox[linestyle=none,fillstyle=solid,fillcolor=yellow]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \else\rput(\colonne,\ligne){\textbf{\Large\the\multidocount}}
+ \fi
+ \else\rput(\colonne,\ligne){\textbf{\Large\the\multidocount}}
+ \fi
+% les jours fris
+% le 1 de l'an
+ \ifnum\psk@CalendrierM=1
+ \ifnum\the\multidocount=1
+ \rput(\colonne,\ligne){\psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi\fi
+% le 1 mai et 8 mai
+ \ifnum\psk@CalendrierM=5
+ \ifnum\the\multidocount=1
+ \rput(\colonne,\ligne){\psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}%
+ \fi
+ \ifnum\the\multidocount=8
+ \rput(\colonne,\ligne){\psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}%
+ \fi
+ \fi
+% 15 aot
+ \ifnum\psk@CalendrierM=8
+ \ifnum\the\multidocount=15
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi\fi
+% 1 Novembre et 11 Novembre
+ \ifnum\psk@CalendrierM=11
+ \ifnum\the\multidocount=1
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi
+ \ifnum\the\multidocount=11
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi
+ \fi
+% Nol
+ \ifnum\psk@CalendrierM=12
+ \ifnum\the\multidocount=25
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi\fi
+% Dimanche de Pques
+ \ifnum\psk@CalendrierM=\Month
+ \ifnum\the\multidocount=\Day
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi\fi
+% Ascension
+ \ifnum\psk@CalendrierM=\MonthAscension
+ \ifnum\the\multidocount=\DayAscension
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi\fi
+% Pentecte
+ \ifnum\psk@CalendrierM=\MonthPentecote
+ \ifnum\the\multidocount=\DayPentecote
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi\fi
+%
+\advance\colonne by +1
+\ifnum\colonne>7\colonne=1\fi}
+\rput(4,-3.5){\psovalbox[fillstyle=solid,fillcolor=blue,linestyle=none]{\textcolor{white}{\textsf{\textbf{\huge\psk@CalendrierA}}}}}
+\multido{\rL=-2.5+1.0}{6}{\psline[linecolor=blue](0.5,\rL)(7.5,\rL)}
+\endpspicture}}
+%
+%% END: CalendrierFP.sty
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/calendrierfpmodified.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/calendrierfpmodified.sty
new file mode 100644
index 0000000000..9b84fed5b0
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/calendrierfpmodified.sty
@@ -0,0 +1,389 @@
+% Modified some fonts and colors declarations to use
+% an Arabic Markup (Youssef JABRI)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def\CalendrierFP@version{Version 0.46, 9 mai 2003}
+\message{`Calendrier avec FP', \CalendrierFP@version\space Manuel Luque}
+% Requires PSTricks, pstcol, pst-3d, multido, fp packages
+\RequirePackage{pstricks}
+\RequirePackage{pst-3d}
+\RequirePackage{multido}
+\RequirePackage{fp}
+\FPmessagesfalse
+\RequirePackage{pst-key}
+%% Manuel LUQUE <Mluque5130aol.com> %%
+%% 1 Octobre 1999 pour le dodcadre %%
+%% 23 avril 2003 pour le calendrier %%
+%% 27 avril : placer une date de son choix
+%% suggestion de Jean-Michel Sarlat
+%% jours fris et ftes : 1 mai 003 %%
+%% 1 et 8 mai, 15 aot, 1 et 11 novembre, 25 dcembre
+%% fte de Pques %%
+%% ascension et pentecte : 8 mai 2003
+
+\definecolor{RougeA}{cmyk}{0.05,0.1,0.1,0}
+\definecolor{RougeB}{cmyk}{0.05,0.15,0.15,0}
+\definecolor{RougeC}{cmyk}{0.05,0.2,0.2,0}
+\definecolor{RougeD}{cmyk}{0.05,0.25,0.25,0}
+\definecolor{RougeE}{cmyk}{0.05,0.3,0.3,0}
+\definecolor{RougeF}{cmyk}{0.05,0.35,0.35,0}
+\definecolor{RougeG}{cmyk}{0.05,0.4,0.4,0}
+\definecolor{RougeH}{cmyk}{0.05,0.45,0.45,0}
+\definecolor{RougeI}{cmyk}{0.05,0.5,0.5,0}
+\definecolor{RougeJ}{cmyk}{0.05,0.55,0.55,0}
+\definecolor{RougeK}{cmyk}{0.05,0.6,0.6,0}
+\definecolor{RougeL}{cmyk}{0.1,0.65,0.65,0}
+\newpsstyle{holiday}{framesep=2pt,doubleline=true,doublecolor=red,linecolor=red,fillstyle=solid,fillcolor=RougeA}
+\SpecialCoor%
+\define@key{psset}{Vx}{\edef\psk@Solide@Viewpointx{#1}}
+\define@key{psset}{Vy}{\edef\psk@Solide@Viewpointy{#1}}
+\define@key{psset}{Vz}{\edef\psk@Solide@Viewpointz{#1}}
+\setkeys{psset}{Vx=1,Vy=1,Vz=1}
+\def\RA{7.36022}\gdef\rb{5.06525}\gdef\ramodified{8.19574}%
+\gdef\rc{5.06525}\gdef\rd{8.19574}
+\newpsstyle{janvier}{Vx=-\rc,Vy=0,Vz=-\rd,viewangle=108}
+\newpsstyle{fevrier}{Vx=\rc,Vy=0,Vz=-\rd,viewangle=180}
+\newpsstyle{mars}{Vx=0,Vy=-\ramodified,Vz=-\rb,viewangle=144}
+\newpsstyle{avril}{Vx=-\rd,Vy=-\rc,Vz=0,viewangle=162}
+\newpsstyle{mai}{Vx=-\rd,Vy=\rc,Vz=0,viewangle=198}
+\newpsstyle{juin}{Vx=0,Vy=\ramodified,Vz=-\rb,viewangle=216}
+\newpsstyle{juillet}{Vx=-\rc,Vy=0,Vz=\rd,viewangle=0}
+\newpsstyle{aout}{Vx=0,Vy=-\ramodified,Vz=\rb,viewangle=-36}
+\newpsstyle{septembre}{Vx=\rd,Vy=-\rc,Vz=0,viewangle=-18}
+\newpsstyle{octobre}{Vx=\rd,Vy=\rc,Vz=0,viewangle=18}
+\newpsstyle{novembre}{Vx=0,Vy=\ramodified,Vz=\rb,viewangle=36}
+\newpsstyle{decembre}{Vx=\rc,Vy=0,Vz=\rb,viewangle=0}
+%
+\def\dodecaedre{%
+\@ifnextchar[{\pst@dodecaedre}{\pst@dodecaedre[]}}%
+\def\pst@dodecaedre[#1]{{%
+\setkeys{psset}{#1}%
+\pspicture(-8,-12)(8,12)%
+\psset{fillstyle=solid}%
+\psset{viewpoint={\psk@Solide@Viewpointx} {\psk@Solide@Viewpointy} {\psk@Solide@Viewpointz}}%
+\newcommand{\faceA}{\pspolygon(\RA;18)(\RA;90)(\RA;162)(\RA;234)(\RA;306)}
+\newcommand{\faceB}{\pspolygon(\RA;270)(\RA;-18)(\RA;54)(\RA;126)(\RA;198)}
+\newcommand{\faceC}{\pspolygon(\RA;0)(\RA;72)(\RA;144)(\RA;216)(\RA;288)}
+\newcommand{\faceD}{\pspolygon(\RA;36)(\RA;108)(\RA;180)(\RA;252)(\RA;324)}
+%face1
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(0)+(\psk@Solide@Viewpointy)*(\ramodified)+(\psk@Solide@Viewpointz)*(\rb)}%
+\FPifpos{\Test}\ThreeDput[normal=0 {\ramodified} {\rb}](0,\ramodified,\rb){%
+\psset{fillcolor=RougeA}\faceA\rput{36}{\rput(-1.8,0){\Calendrier[Mois=11]}}}\fi
+%face2
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(0)-(\psk@Solide@Viewpointy)*(\ramodified)+(\psk@Solide@Viewpointz)*(\rb)}%
+\FPifpos{\Test}\ThreeDput[normal=0 {-\ramodified} {\rb}](0,-\ramodified,\rb){%
+\psset{fillcolor=RougeB}\faceA\rput{-36}{\rput(-1.8,0){\Calendrier[Mois=8]}}}\fi
+%face3
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(0)+(\psk@Solide@Viewpointy)*(\ramodified)-(\psk@Solide@Viewpointz)*(\rb)}%
+\FPifpos{\Test}\ThreeDput[normal=0 {\ramodified} {-\rb}](0,\ramodified,-\rb){%
+\psset{fillcolor=RougeC}\faceB\rput{216}{\rput(-1.8,0){\Calendrier[Mois=6]}}}\fi
+%face4
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(0)-(\psk@Solide@Viewpointy)*(\ramodified)-(\psk@Solide@Viewpointz)*(\rb)}%
+\FPifpos{\Test}\ThreeDput[normal=0 {-\ramodified} {-\rb}](0,-\ramodified,-\rb){%
+\psset{fillcolor=RougeD}\faceB\rput{144}{\rput(-1.8,0){\Calendrier[Mois=3]}}}\fi%
+%face 5
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(\rc)+(\psk@Solide@Viewpointy)*(0)+(\psk@Solide@Viewpointz)*(\rd)}%
+\FPifpos{\Test}\ThreeDput[normal={\rc} 0 {\rd}](\rc,0,\rd){%
+\psset{fillcolor=RougeE}\faceB\rput(-1.8,0){\Calendrier[Mois=12]}}\fi
+%face6
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(-\rc)+(\psk@Solide@Viewpointy)*(0)+(\psk@Solide@Viewpointz)*(\rd)}%
+\FPifpos{\Test}\ThreeDput[normal={-\rc} 0 {\rd}](-\rc,0,\rd){%
+\psset{fillcolor=RougeF}\faceB\rput{0}{\rput(-1.8,0){\Calendrier[Mois=7]}}}\fi
+%face7
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(\rc)+(\psk@Solide@Viewpointy)*(0)-(\psk@Solide@Viewpointz)*(\rd)}%
+\FPifpos{\Test}\ThreeDput[normal={\rc} 0 {-\rd}](\rc,0,-\rd){%
+\psset{fillcolor=RougeG}\faceA\rput{180}{\rput(-1.8,0){\Calendrier[Mois=2]}}}\fi
+%face8
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(-\rc)+(\psk@Solide@Viewpointy)*(0)-(\psk@Solide@Viewpointz)*(\rd)}%
+\FPifpos{\Test}\ThreeDput[normal={-\rc} 0 {-\rd}](-\rc,0,-\rd){%
+\psset{fillcolor=RougeH}\faceA\rput{108}{\rput(-1.8,0){\Calendrier[Mois=1]}}}\fi%
+%face 9
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(\rd)+(\psk@Solide@Viewpointy)*(\rc)+(\psk@Solide@Viewpointz)*(0)}%
+\FPifpos{\Test}\ThreeDput[normal={\rd} {\rc} 0](\rd,\rc,0){%
+\psset{fillcolor=RougeI}\faceC\rput{18}{\rput(-1.8,0){\Calendrier[Mois=10]}}}\fi
+%face10
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(-\rd)+(\psk@Solide@Viewpointy)*(\rc)+(\psk@Solide@Viewpointz)*(0)}%
+\FPifpos{\Test}\ThreeDput[normal={-\rd} {\rc} 0](-\rd,\rc,0){%
+\psset{fillcolor=RougeJ}\faceD\rput{198}{\rput(-1.8,0){\Calendrier[Mois=5]}}}\fi
+%face11
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(\rd)-(\psk@Solide@Viewpointy)*(\rc)+(\psk@Solide@Viewpointz)*(0)}%
+\FPifpos{\Test}\ThreeDput[normal={\rd} {-\rc} 0](\rd,-\rc,0){%
+\psset{fillcolor=RougeK}\faceD\rput{-18}{\rput(-1.8,0){\Calendrier[Mois=9]}}}\fi
+%face8
+\FPeval{\Test}{(\psk@Solide@Viewpointx)*(-\rd)+(\psk@Solide@Viewpointz)*(0)-(\psk@Solide@Viewpointy)*(\rc)}%
+\FPifpos{\Test}\ThreeDput[normal={-\rd} {-\rc} 0](-\rd,-\rc,0){%
+\psset{fillcolor=RougeL}\faceC\rput{162}{\rput(-1.8,0){\Calendrier[Mois=4]}}}\fi%
+\endpspicture
+}}
+%
+\define@key{psset}{Jour}{\edef\psk@CalendrierJ{#1}}
+\define@key{psset}{MoisChoisi}{\edef\psk@CalendrierMchoix{#1}}
+\define@key{psset}{Mois}{\edef\psk@CalendrierM{#1}}
+\define@key{psset}{An}{\edef\psk@CalendrierA{#1}}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\setkeys{psset}{Jour=\number\day,Mois=\number\month,MoisChoisi=\number\month,An=\number\year}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%
+\newcount\colonne\newcount\ligne
+
+\def\Calendrier{\@ifnextchar[{\pst@Calendrier}{\pst@Calendrier[]}}
+
+\def\pst@Calendrier[#1]{{%
+\setkeys{psset}{#1}
+% calcul de la date de Pques
+% lundi de Pques
+\FPset{\Year}{\psk@CalendrierA}
+\FPeval\GY{(\Year)-19*trunc((\Year)/19,0)}
+\FPeval{\Cent}{trunc((\Year)/100,0)}
+\FPeval{\Iter}{trunc((\Cent)-trunc((\Cent)/4,0)-trunc((8*(\Cent)+13)/25,0)+
+ (\GY)*19+15,0)}
+\FPeval{\Iterdiv}{trunc((\Iter)/30,0)}
+\FPeval\Hepact{(\Iter)-30*(\Iterdiv)}
+\FPeval\Inbre{trunc((\Hepact)-trunc((\Hepact)/28,0)*
+ (1-trunc((\Hepact)/28,0))*(trunc(29/((\Hepact)+1),0)*trunc((21-(\GY))/11,0)),0)}
+\FPeval\Jnbreinter{trunc((\Year)+trunc((\Year)/4,0)+(\Inbre)+2-(\Cent)+trunc((\Cent)/4,0),0)}
+\FPeval\Jnbre{trunc((\Jnbreinter)-7*trunc((\Jnbreinter)/7,0),0)}
+\FPeval\Lnbre{trunc((\Inbre)-(\Jnbre),0)}
+\FPeval\Month{trunc(3+trunc(((\Lnbre)+40)/44,0),0)}
+\FPeval\Day{trunc((\Lnbre)+28-31*trunc((\Month)/4,0),0)}
+\ifnum\Month=4
+ \ifnum\Day>25 \FPeval{\Day}{trunc((\Day)-7,0)} % dimanche de Pques
+% \ifnum\Day>25 \FPeval{\Day}{trunc((\Day)-6,0)} % Lundi de Pques
+% \else
+% \FPeval{\Day}{trunc((\Day)+1,0)} % Lundi de Pques
+ \fi
+\fi
+\ifnum\Month=3
+ \ifnum\Day=32 \FPset{\Day}{1}\FPset{\Month}{4}%
+% \else
+% \FPeval{\Day}{trunc((\Day)+1,0)} % Lundi
+ \fi
+\fi
+%
+% calcul du jour de l'ascension
+% si Pques tombe au mois d'avril, faire (39-30)+\Day = 9+\Day
+% pour le jour du mois de mai de l'ascension
+\ifnum\Month=4
+\FPeval\DayAscension{trunc((\Day)+9,0)}
+\FPeval\MonthAscension{trunc((\Month)+1,0)}
+% Ascension le \FPprint\DayAscension/\FPprint\MonthAscension/\FPprint\Year
+\FPeval\TestJourPentecote{trunc((\DayAscension)+10,0)}
+ \ifnum\TestJourPentecote>31
+ \FPeval\DayPentecote{trunc((\TestJourPentecote)-31,0)}
+ \FPeval\MonthPentecote{trunc((\Month)+2,0)}
+ \else
+ \FPset{\DayPentecote}{\TestJourPentecote}
+ \FPset\MonthPentecote{\MonthAscension}
+ \fi
+
+% Pentec\^ote le \FPprint\DayPentecote/\FPprint\MonthPentecote/\FPprint\Year
+\fi
+
+% Dans le cas o Pques tombe en mars
+% (39-30)+\Day=8+\Day
+% si 8+\Day<ou=30 on reste en avril
+% \DayAscension=8+\Day
+% \MonthAscension=4
+% Pentcte est 10 jours aprs l'ascension
+\ifnum\Month=3
+\FPeval\TestSiJourAvril{trunc((\Day)+8,0)}
+\ifnum\TestSiJourAvril<30
+ \FPeval\MonthAscension{trunc((\Month)+1,0)}
+ \FPeval\DayAscension{trunc(8+(\Day),0)}
+ \else
+ \FPeval\DayAscension{trunc((\Day)-22,0)}
+ \FPeval\MonthAscension{trunc((\Month)+2,0)}
+\fi
+ \FPeval\TestJourPentecote{trunc((\DayAscension)+10,0)}
+ \ifnum\MonthAscension=4
+ \ifnum\TestJourPentecote<31
+ \FPset{\DayPentecote}{\TestJourPentecote}
+ \FPset\MonthPentecote{4}
+ \else
+ \FPeval\DayPentecote{trunc((\TestJourPentecote)-30,0)}
+ \FPset\MonthPentecote{5}
+ \fi
+ \fi
+ \ifnum\MonthAscension=5
+ \FPeval\DayPentecote{trunc((\DayAscension)+10,0)}
+ \FPset\MonthPentecote{5}
+ \fi
+\fi
+%
+% test d'une anne bissextile
+\FPeval{\YearBissextil}{(\psk@CalendrierA)/4}
+\FPtrunc{\YearBissextil}{\YearBissextil}{0}
+\FPeval{\YearBissextil}{(\YearBissextil)*4}
+\FPtrunc{\YearBissextil}{\YearBissextil}{0}
+%
+\ifnum\psk@CalendrierM=1\def\adddays{0}\def\Name{\textAR{\textgranada{}}}\def\NbreJours{31}\fi
+\ifnum\psk@CalendrierM=2\def\adddays{31}\def\Name{\textAR{\granada }}
+ \ifnum\YearBissextil=\psk@CalendrierA\def\NbreJours{29}\else\def\NbreJours{28}
+\fi\fi
+\ifnum\psk@CalendrierM=3
+ \ifnum\YearBissextil=\psk@CalendrierA\def\adddays{60}\else\def\adddays{59}\fi
+\def\Name{\textAR{\granada }}\def\NbreJours{31}\fi
+\ifnum\psk@CalendrierM=4
+ \ifnum\YearBissextil=\psk@CalendrierA\def\adddays{91}\else\def\adddays{90}\fi
+\def\Name{\textAR{\granada }}\def\NbreJours{30}\fi
+\ifnum\psk@CalendrierM=5
+ \ifnum\YearBissextil=\psk@CalendrierA\def\adddays{121}\else\def\adddays{120}\fi
+\def\Name{\textAR{\granada }}\def\NbreJours{31}\fi
+\ifnum\psk@CalendrierM=6
+ \ifnum\YearBissextil=\psk@CalendrierA\def\adddays{152}\else\def\adddays{151}\fi
+\def\Name{\textAR{\granada }}\def\NbreJours{30}\fi
+\ifnum\psk@CalendrierM=7
+ \ifnum\YearBissextil=\psk@CalendrierA\def\adddays{182}\else\def\adddays{181}\fi
+\def\Name{\textAR{\granada }}\def\NbreJours{31}\fi
+\ifnum\psk@CalendrierM=8
+ \ifnum\YearBissextil=\psk@CalendrierA\def\adddays{213}\else\def\adddays{212}\fi
+\def\Name{\textAR{\granada }}\def\NbreJours{31}\fi
+\ifnum\psk@CalendrierM=9
+ \ifnum\YearBissextil=\psk@CalendrierA\def\adddays{244}\else\def\adddays{243}\fi
+\def\Name{\textAR{\granada }}\def\NbreJours{30}\fi
+\ifnum\psk@CalendrierM=10
+ \ifnum\YearBissextil=\psk@CalendrierA\def\adddays{274}\else\def\adddays{273}\fi
+\def\Name{\textAR{\granada }}\def\NbreJours{31}\fi
+\ifnum\psk@CalendrierM=11
+ \ifnum\YearBissextil=\psk@CalendrierA\def\adddays{305}\else\def\adddays{304}\fi
+\def\Name{\textAR{\textgranada{ }}}\def\NbreJours{30}\fi
+\ifnum\psk@CalendrierM=12
+ \ifnum\YearBissextil=\psk@CalendrierA\def\adddays{335}\else\def\adddays{334}\fi
+\def\Name{\textAR{\granada }}\def\NbreJours{31}\fi
+%
+\ifnum\YearBissextil=\psk@CalendrierA
+ \FPeval{\NbYearBissextil}{((\psk@CalendrierA)-2000)/4}
+ \FPtrunc{\NbYearBissextil}{\NbYearBissextil}{0}
+ \else
+ \FPeval{\NbYearBissextil}{((\psk@CalendrierA)-2000)/4+1}
+ \FPtrunc{\NbYearBissextil}{\NbYearBissextil}{0}
+\fi
+% le 1 janvier 2000 est un samedi : Nbdays=6
+\FPeval{\NbDays}{6+((\psk@CalendrierA)-2000)+(\NbYearBissextil)+(\adddays)}
+%
+\FPtrunc{\NbDays}{\NbDays}{0}
+%
+\FPeval{\Frac}{(\NbDays)/7}
+\FPtrunc{\Frac}{\Frac}{0}
+%
+\FPeval{\Quotient}{(\Frac)*7}
+\FPtrunc{\Quotient}{\Quotient}{0}
+%
+\FPeval{\firstDay}{(\NbDays)-({\Quotient})}
+%
+\FPclip{\firstDay}{\firstDay}
+\FPifzero\firstDay\FPset{\firstDay}{7}\fi
+\ligne=2
+\colonne=\firstDay
+\pspicture(0,-4)(8,4)%\psgrid
+\psframe*[linecolor=yellow](0.5,3.9)(7.5,4)
+\psframe*[linecolor=LightCyan](0.5,2.4)(7.5,3.9)
+%
+\rput(1,3.2){%\fcolorbox{LemonChiffon}{LemonChiffon}%
+{\rotatebox{45}{\textAR{\Large\textbattar{}}}}}
+%
+\rput(2,3.2){%\fcolorbox{LemonChiffon}{LemonChiffon}%
+{\rotatebox{45}{\textAR{\Large\textbattar{}}}}}
+%
+\rput(3,3.2){%\fcolorbox{LemonChiffon}{LemonChiffon}%
+{\rotatebox{45}{\textAR{\Large\textbattar{}}}}}
+%
+\rput(4,3.2){%\fcolorbox{LemonChiffon}{LemonChiffon}%
+{\rotatebox{45}{\textAR{\Large\textbattar{}}}}}
+%
+\rput(5,3.2){%\fcolorbox{LemonChiffon}{LemonChiffon}%
+{\rotatebox{45}{\textAR{\Large\textbattar{}}}}}
+%
+\rput(6,3.2){%\fcolorbox{LemonChiffon}{LemonChiffon}%
+{\rotatebox{45}{\textAR{\Large\textbattar{}}}}}
+%
+\rput(7,3.2){%\fcolorbox{LemonChiffon}{LemonChiffon}%
+{\rotatebox{45}{\textAR{\Large\textbattar{}}}}}
+%
+\rput(4,4.7){\psovalbox[linestyle=none,fillstyle=solid,framesep=.1pt,fillcolor=yellow]%LemonChiffon
+{\textcolor{black}{\textsf{\textbf{\huge\Name}}}}}
+%
+\multido{\i=\firstDay+1}{\NbreJours}{%
+\ifnum\i>7\ligne=1\fi
+\ifnum\i>14\ligne=0\fi
+\ifnum\i>21\ligne=-1\fi
+\ifnum\i>28\ligne=-2\fi
+\ifnum\i>35\ligne=-3\fi
+ \ifnum\psk@CalendrierM=\psk@CalendrierMchoix
+ \ifnum\the\multidocount=\psk@CalendrierJ
+ \rput(\colonne,\ligne)%{%current day
+%\pscirclebox[linestyle=none,fillstyle=solid,fillcolor=LemonChiffon]
+{\textbf{%\textcolor{red}
+{\Large\the\multidocount}}}%}
+ \else\rput(\colonne,\ligne){{\Large\the\multidocount}}
+ \fi
+ \else\rput(\colonne,\ligne){{\Large\the\multidocount}}
+ \fi
+%
+\advance\colonne by +1
+\ifnum\colonne>7\colonne=1\fi}
+\rput(4,-4){\psovalbox[fillstyle=solid,fillcolor=yellow,linestyle=none]{\textcolor{black}{{{\huge\psk@CalendrierA}}}}}
+\multido{\rL=-2.5+1.0}{6}{\psline[linecolor=LightCyan](0.5,\rL)(7.5,\rL)}
+\endpspicture}}
+%
+%% END: CalendrierFP.sty
+\endinput
+
+
+
+% les jours fris
+% le 1 de l'an
+ \ifnum\psk@CalendrierM=1
+ \ifnum\the\multidocount=1
+ \rput(\colonne,\ligne){\psframebox[style=holiday]{\textrm{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi\fi
+% le 1 mai et 8 mai
+ \ifnum\psk@CalendrierM=5
+ \ifnum\the\multidocount=1
+ \rput(\colonne,\ligne){\psframebox[style=holiday]{\textrm{\textcolor{red}{\Large\the\multidocount}}}}%
+ \fi
+ \ifnum\the\multidocount=8
+ \rput(\colonne,\ligne){\psframebox[style=holiday]{\textrm{\textcolor{red}{\Large\the\multidocount}}}}%
+ \fi
+ \fi
+% 15 aot
+ \ifnum\psk@CalendrierM=8
+ \ifnum\the\multidocount=15
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi\fi
+% 1 Novembre et 11 Novembre
+ \ifnum\psk@CalendrierM=11
+ \ifnum\the\multidocount=1
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi
+ \ifnum\the\multidocount=11
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi
+ \fi
+% Nol
+ \ifnum\psk@CalendrierM=12
+ \ifnum\the\multidocount=25
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi\fi
+% Dimanche de Pques
+ \ifnum\psk@CalendrierM=\Month
+ \ifnum\the\multidocount=\Day
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi\fi
+% Ascension
+ \ifnum\psk@CalendrierM=\MonthAscension
+ \ifnum\the\multidocount=\DayAscension
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi\fi
+% Pentecte
+ \ifnum\psk@CalendrierM=\MonthPentecote
+ \ifnum\the\multidocount=\DayPentecote
+ \rput(\colonne,\ligne){%
+ \psframebox[style=holiday]{\textbf{\textcolor{red}{\Large\the\multidocount}}}}
+ \fi\fi \ No newline at end of file
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/cp1256.def b/language/arabic/arabi/arabi/texmf/latex/arabi/cp1256.def
new file mode 100644
index 0000000000..dfd98ae656
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/cp1256.def
@@ -0,0 +1,146 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: cp1256.def
+%%
+ \ProvidesFile{cp1256.def}
+ [2006/01/01 v0.1 CP1256 Arabic input encoding file]
+
+
+\makeatletter
+\ProvideTextCommandDefault{\textdegree}{\ensuremath{{^\circ}}}
+\ProvideTextCommandDefault{\textonehalf}{\ensuremath{\frac12}}
+\ProvideTextCommandDefault{\textonequarter}{\ensuremath{\frac14}}
+\ProvideTextCommandDefault{\textthreequarters}{\ensuremath{\frac34}}
+\ProvideTextCommandDefault{\textflorin}{\textit{f}}
+\ProvideTextCommandDefault{\textcent}
+ {\TextSymbolUnavailable\textcent}
+\ProvideTextCommandDefault{\textyen}
+ {\TextSymbolUnavailable\textyen}
+\ProvideTextCommandDefault{\newsheqel}
+ {\TextSymbolUnavailable\newsheqel}
+\ProvideTextCommandDefault{\textbrokenbar}
+ {\TextSymbolUnavailable\textbrokenbar}
+\ProvideTextCommandDefault{\textperthousand}
+ {\TextSymbolUnavailable\textperthousand}
+\providecommand{\mathonesuperior}{{^1}}
+\providecommand{\maththreesuperior}{{^3}}
+\providecommand{\mathtwosuperior}{{^2}}
+%%
+%% Digits and Punctuation characters are "set" in their
+%% corresponding part in the Latin scripts
+%%
+\DeclareInputText{160}{\nobreakspace}
+\DeclareInputMath{161}{,} %arabic comma
+\DeclareInputText{164}{} %what is this ?? ;)
+\DeclareInputText{186}{;} %arabic semicolon
+\DeclareInputText{191}{?} %arabic question mark
+\DeclareInputText{193}{\hamza}
+\DeclareInputText{194}{\alefmadda}
+\DeclareInputText{195}{\alefhamza}
+\DeclareInputText{196}{\wawhamza}
+\DeclareInputText{197}{\aleflowerhamza}
+\DeclareInputText{198}{\yahamza}
+\DeclareInputText{199}{\alef}
+\DeclareInputText{200}{\baa}
+\DeclareInputText{201}{\T} %taa marbuuta
+\DeclareInputText{202}{\taa}
+\DeclareInputText{203}{\thaa}
+\DeclareInputText{204}{\jeem} %geem
+\DeclareInputText{205}{\Haa}
+\DeclareInputText{206}{\kha}
+\DeclareInputText{207}{\dal}
+\DeclareInputText{208}{\dhal}
+\DeclareInputText{209}{\ra}
+\DeclareInputText{210}{\zay}
+\DeclareInputText{211}{\seen}
+\DeclareInputText{212}{\sheen}
+\DeclareInputText{213}{\sad}
+\DeclareInputText{214}{\dad}
+%
+\DeclareInputText{216}{\Ta}
+\DeclareInputText{217}{\za}
+\DeclareInputText{218}{\ayn}
+\DeclareInputText{219}{\ghayn}
+\DeclareInputText{220}{\tatweel}
+\DeclareInputText{221}{\fa}
+\DeclareInputText{222}{\qaf}
+\DeclareInputText{223}{\kaf}
+%
+\DeclareInputText{225}{\lam}
+%
+\DeclareInputText{227}{\meem}
+\DeclareInputText{228}{\nun}
+\DeclareInputText{229}{\ha}
+\DeclareInputText{230}{\waw}
+%
+\DeclareInputText{236}{\alefmaqsura}
+\DeclareInputText{237}{\ya}
+%
+\DeclareInputText{187}{\closguill}%Opening guillemet!!
+\DeclareInputText{171}{\openguill}%Closing guillemet!!
+\DeclareInputText{175}{-}% High --
+\DeclareInputText{151}{\textemdash}%---
+\DeclareInputText{150}{\textendash}%--
+% Farsi characters
+\DeclareInputText{129}{\peh}
+\DeclareInputText{141}{\tcheh}
+\DeclareInputText{142}{\jeh}
+\DeclareInputText{144}{\gaf}
+\DeclareInputText{152}{\farsikaf}% FARSI KAF
+\DeclareInputText{157}{\ZWNJ}
+\DeclareInputText{158}{\noboundary}%%200C;ZWNJ%<< * is a local trick in our font to force final form
+ %and the {} to force initial form of the next character
+
+%
+\DeclareInputText{240}{\nasb}
+\DeclareInputText{241}{\raff}
+\DeclareInputText{242}{\jarr}
+\DeclareInputText{243}{\fatha}
+\DeclareInputText{245}{\damma}
+\DeclareInputText{246}{\kasra}
+\DeclareInputText{248}{\shadda}
+\DeclareInputText{250}{\sukun}%247
+%
+% Special characters to be ignored
+%
+\DeclareInputText{160}{}%NSP
+\DeclareInputText{173}{}%SHY
+\DeclareInputText{252}{}%LRO
+\DeclareInputText{253}{}%RLO
+\makeatother
+%%
+%% \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 \~}
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/farsi.ldf b/language/arabic/arabi/arabi/texmf/latex/arabi/farsi.ldf
new file mode 100644
index 0000000000..135eaad8f4
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/farsi.ldf
@@ -0,0 +1,356 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: `farsi.ldf' the language definition file of Farsi
+% for use with BABEL.
+%
+
+\ProvidesFile{farsi.ldf}
+
+\ProvidesLanguage{farsi}[2006/01/01 v0.1 Farsi support for the babel system]
+
+
+\LdfInit{farsi}{captionsfarsi}
+
+
+\ifx\l@farsi\@undefined
+ \@nopatterns{farsi}%
+ \adddialect\l@farsi0
+\fi
+\InputIfFileExists{lfeenc.def}{%
+ \message{Loading the definitions for the LaTeX{} Farsi encoding}}{%
+ \errhelp{I can't find the laeenc.def file for the Farsi fonts}%
+ \errmessage{Since I do not know what the LFE encoding means^^J
+ I can't typeset Farsi.^^J
+ I stop here, while you get a suitable lfeenc.def file}\@@end
+ }
+
+%% actually, due to the fact that there is no standard encoding
+%% used widely by the Iranian community. We adopt the Unicode utf8
+%% encoding and the Windows CP1256. The user may use the editor he wants if it can export
+%% to one of these two formats. If none is specified we will assume it's utf-8!!
+%% If no encoding is loaded, utf-8 will be automatically!
+%%
+\AtEndOfPackage{%
+ \@ifpackageloaded{inputenc}{}{\RequirePackage[utf8]{inputenc}}}
+
+
+
+%NO hyphenation is needed in Farsi!!
+\providehyphenmins{\CurrentOption}{\thr@@\thr@@}
+
+
+%% Some captions are missing. The others have been ``stolen'' from \FarsiTeX
+\addto\captionsfarsi{%
+\def\prefacename{\textFR{\meem\dal\kha\lam}}% <<
+\def\refname{\textFR{\meem\ra\jeem\ayn}}%
+\def\abstractname{\textFR{\tcheh\kaf\ya\dal\ha}}%
+\def\bibname{\textFR{\kaf\taa\alef\baa\ZWNJ\nun\alef\meem\ha}}%
+\def\chaptername{\textFR{\fa\sad\lam}}%
+\def\appendixname{\textFR{\peh\ya\waw\seen\taa}}%
+\def\contentsname{\textFR{\fa\ha\ra\seen\taa\space\meem\nun\dal\ra\jeem\alef\taa}}%
+\def\listfigurename{\textFR{\lam\ya\seen\taa\ \alef\sheen\kaf\alef\lam}}%
+\def\listtablename{\textFR{\lam\ya\seen\taa\ \jeem\dal\alef\waw\lam}}%
+\def\indexname{\textFR{\fa\ha\ra\seen\taa\ \alef\lam\fa\baa\alef\ya\ya}}%
+\def\figurename{\textFR{\sheen\kaf\lam}}%
+\def\tablename{\textFR{\jeem\dal\waw\lam}}%
+\def\partname{\textFR{\baa\kha\sheen}}%
+\def\enclname{}%<-- Needs translation
+\def\ccname{\textFR{\nun\seen\kha\T\space\lam\noboundary}}% <<
+\def\headtoname{}%<-- Needs translation
+\def\pagename{\textFR{\sad\fa\Haa\T}}%
+\def\seename{\textFR{\ra\alef\jeem\ayn}}%<<
+\def\alsoname{\textFR{\ra\alef\jeem\ayn\space\alefhamza\ya\dad\alef}}%<<
+\def\proofname{\textFR{\baa\ra\ha\alef\nun}}% for AMS-\LaTeX
+\def\glossaryname{\textFR{\qaf\alef\meem\waw\seen}}%<<
+}
+
+
+
+
+%
+% The default format for the date in IRAN
+% It's called the Jalali calendar. Adapted from FarsiTeX
+%
+\InputIfFileExists{arabiftoday.sty}{%
+ \message{Loading the definitions for the Jalali calendar}}{%
+ \errhelp{I can't find the arabiftoday.sty file for the Jalali calendar}%
+ \errmessage{Since I do not know what the Jalali calendar is^^J
+ I can't typeset the Farsi date.^^J
+ I stop here, while you get a suitable arabiftoday.sty file}\@@end
+}
+
+\def\datefarsi{\def\today{\ftoday}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% MACROS FOR Arabic/Latin TYPESETTING
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% First, the common part to Arabic and Farsi
+%
+\InputIfFileExists{arabicore.sty}{%
+ \message{Loading the Common definitions for Arabic and Farsi}}{%
+ \errhelp{I can't find the arabicore.sty file}%
+ \errmessage{Since I can't find the arabicore.sty file^^J
+ I can't typeset Arabic.^^J
+ I stop here, while you get a suitable arabicore.sty file}\@@end
+}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Now the specific part to Farsi
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%\newif\if@farsi %-----> Arabicore
+%
+\newcommand{\FarsiEncoding}{\fontencoding{LFE}\selectfont}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ArabTeX has already \R as well as \RL command
+% While (La)TeX defines already \L
+% In addition to the fact that the Hebrew package for Babel
+% has \R and \L !!
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\DeclareRobustCommand{\@farsi@R}[1]{\bgroup\beginR\@arabicfalse\@farsitrue\FarsiEncoding
+ #1\endR\egroup}
+% To avoid bad surprised we use \def to define the \R control sequence,
+% many packages ``like'' to use , like ArabTeX and the Hebrew package
+% supporting Babel
+\newcommand{\textFR}[1]{\expandafter\@farsi@R{#1}}%
+\def\textRL#1{\expandafter\@farsi@R{#1}}%
+%Temporary shortcut
+\newcommand{\FR}[1]{\textFR{#1}}
+% For \cs{L} see the core !
+\DeclareRobustCommand{\@ensure@farsi}[1]{\if@farsi #1 \else\beginR\FarsiEncoding #1\endR\fi}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+
+
+\def\farsiencoding{LFE}
+\DeclareFontEncoding{LFE}{}{}
+\DeclareFontSubstitution{LFE}{cmr}{m}{n}
+\DeclareErrorFont{LFE}{cmr}{m}{n}{10}
+
+\DeclareRobustCommand{\bbl@farsi}{%
+ \bbl@arabi%
+ \fontencoding\farsiencoding\selectfont%
+ \let\encodingdefault\farsiencoding%
+ \@rltrue%
+ \@farsitrue%
+}
+
+\addto\extrasfarsi{\bbl@farsi
+}
+
+\addto\noextrasfarsi{%
+\@rlfalse
+\@farsifalse
+\latintext\normalfont %enough ??
+% Restore the lplain.tex penalties??
+\hyphenpenalty=50
+\binoppenalty=700
+\relpenalty=500
+}
+
+
+% The package \pkg{ifthen} is needed. We test if the font contains a character
+% \cs{rial}. Else we define it just to be the \cs{rial} of the font \texttt{nazli]
+% which has one
+%
+\newlength{\rialheight}%
+
+\DeclareTextCommand{\rial}{LFE}{%
+ \settoheight{\rialheight}{\rialchar}%
+ \ifthenelse{\lengthtest{\rialheight=0pt}}%
+ {\mbox{\textnazli{\,\rialchar\,}}}%
+ {{}\,\rialchar\,{}}%
+ }
+
+
+%
+% Now, the Farsi fonts Definitions
+%
+\InputIfFileExists{farsifnt.sty}{%
+ \message{Loading the Arabi fonts definitions for Farsi}}{%
+ \errhelp{I can't find the farsifnt.sty file}%
+ \errmessage{Since I can't find the farsifnt.sty file^^J
+ I can't typeset Farsi.^^J
+ I stop here, while you get a suitable farsifnt.sty file}\@@end
+}
+
+
+
+%% Numbers in Arabic contexts, must be written as input, not reflected!
+%% They are already Right-to-Left! Sometimes written in Arabic digits and
+%% other times with Arabo-Indic digits.
+%% They have to be input using the \I control sequence
+%%
+\newcommand{\ExtendedIndicDigit}[1]{\L{\FarsiEncoding #1}}
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%==========================================================%
+% The changes that should be executed after reading %
+% the main style file. (e.g., article.sty) %
+%==========================================================%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\addto\extrasfarsi{%
+ \let\SAV@alph\@alph%
+ \let\SAV@Alph\@Alph%
+ \renewcommand*{\@alph}[1]{\protect\abjadnumeral{\number#1}}%
+ \renewcommand*{\@Alph}[1]{\protect\abjadnumeral{\number#1}}}
+
+\addto\noextrasfarsi{%
+ \let\@alph\SAV@alph%
+ \let\@Alph\SAV@Alph}
+
+
+
+% ****************************************
+% * PUNCTUATION *
+% ****************************************
+%
+% TEMPORARILY
+
+\addto\extrasfarsi{%
+\frenchspacing}
+
+
+
+
+%% We change \alph{counter} so that we get abjad numerals instead,
+%% we change \Alph{counter} to get abjad numerals since no Uppercase
+%% exists in Arabic, just to avoid bad surprises.
+%%
+
+%% Good for Farsi? Change!?
+%%
+
+\let\latin@Alph\Alph
+\let\latin@alph\alph
+\def\arabic@alph#1{\expandafter\abjadnumeral\expandafter{\number#1}}
+\def\arabic@Alph#1{\expandafter\abjadnumeral\expandafter{\number#1}}
+\addto\extrasfarsi{%
+\def\alph#1{\expandafter\abjadnumeral\csname c@#1\endcsname}
+\def\Alph#1{\expandafter\abjadnumeral\csname c@#1\endcsname}
+}
+\addto\noextrasfarsi{%
+ \let\alph\latin@alph
+ \let\Alph\latin@Alph}
+
+
+
+%
+% Now, the common file to Arabic and Farsi that allows
+% activating and deactivating Vowelization
+%
+\InputIfFileExists{arabnovowel.sty}{%
+ \message{Loading the Common definitions for Arabic and Farsi}}{%
+ \errhelp{I can't find the arabnovowel.sty file}%
+ \errmessage{Since I can't find the arabnovowel.sty file^^J
+ I can't activate or deactivate vowelization.^^J
+ The vowels you type will be printed!}\@@end
+}
+
+% To get the parentheses around equations numbers to appear correctly
+% works with standard classes article, report and book (with or without amsmath package)
+% and with ams[*] classes. (reqno should be used!!)
+%
+\addto\extrasfarsi{%
+\let\SAV@@eqnnum\@eqnnum
+\let\SAV@tagform@\tagform@
+\def\tagform@#1{\maketag@@@{)\ignorespaces#1\unskip\@@italiccorr(}}% if amsmath is loaded
+\renewcommand{\@eqnnum}{)\theequation(}% otherwise
+}
+
+% Restore original values
+\addto\noextrasfarsi{%
+\let\@eqnnum\SAV@@eqnnum
+\let\tagform@\SAV@tagform@
+}
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Experimental Farsi mathematics
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%% Farsi digits in MATHS %%%%%%%%%%%%%%%%%%
+
+% New MathVersion
+\DeclareMathVersion{farsimath}
+
+% DeclareSymbolFont to be used with persian and Arabic digits
+\DeclareSymbolFont{farsiletters}{LFE}{nazli}{m}{n}
+% SetSymbolFont for each version
+\SetSymbolFont{farsiletters}{farsimath}{LFE}{nazli}{m}{n}
+% We suppose the normal mathematics fonts when restoring back
+% the normal behaviour
+\SetSymbolFont{farsiletters}{normal}{OT1}{cmr}{m}{n}
+
+%To work with persianmathdigits
+\DeclareMathSymbol{0}{\mathalpha}{farsiletters}{48}%
+\DeclareMathSymbol{1}{\mathalpha}{farsiletters}{49}%
+\DeclareMathSymbol{2}{\mathalpha}{farsiletters}{50}%
+\DeclareMathSymbol{3}{\mathalpha}{farsiletters}{51}%
+\DeclareMathSymbol{4}{\mathalpha}{farsiletters}{52}%
+\DeclareMathSymbol{5}{\mathalpha}{farsiletters}{53}%
+\DeclareMathSymbol{6}{\mathalpha}{farsiletters}{54}%
+\DeclareMathSymbol{7}{\mathalpha}{farsiletters}{55}%
+\DeclareMathSymbol{8}{\mathalpha}{farsiletters}{56}%
+\DeclareMathSymbol{9}{\mathalpha}{farsiletters}{57}%
+
+
+\newcommand{\farsimathdigits}{%
+\mathversion{farsimath}}
+\newcommand{\arabicmathdigits}{%
+\mathversion{normal}}
+
+
+
+% We suppose the normal behaviour inside Farsi is to use
+% Farsi digits
+\addto\extrasfarsi{%
+\farsimathdigits
+}
+% While outside, the Arabic digits are used
+\addto\noextrasfarsi{%
+\arabicmathdigits
+}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+%%%%%% To let this file clean and usable by everybody %%%%%%
+% use "farsi.cfg" instead and uncomment next line
+%\loadlocalcfg{farsi} %last patches and additional hacks
+%%
+\ldf@finish{farsi}
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/farsifnt.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/farsifnt.sty
new file mode 100644
index 0000000000..b9bf8e67b7
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/farsifnt.sty
@@ -0,0 +1,178 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: `farsifnt.sty' Arabic font switching commands used by
+% the Arabi package.
+%
+\def\fileversion{1.0}
+\def\filedate{2006/01/01}
+%%%%%%%%%%%%%%%%%%%%%%%% Font Names %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Check if file is loaded and announce file on terminal:
+%
+\csname FarsifontsLoaded\endcsname
+\let\FarsifontsLoaded\endinput
+
+\message{\space\space Farsi font switching commands v\fileversion\space\space\filedate}
+\message{\space\space (may still change)\space\space}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%%
+%\ProvidesPackage{farsifnt}[2006/01/01 v1.0 Farsi font switching
+% commands (may still change)]
+
+
+
+% \DeclareTextFontCommand {<cmd>} {<font-switches>}
+%
+% Declares command <cmd> to be a font command with one argument. The current font attributes
+% are locally modified by <font-switches> and then the argument of <cmd> is typeset in the
+% resulting new font.
+%
+% Commands defined by \DeclareTextFontCommand automatically take care of any necessary
+% italic correction (on either side).
+
+
+%
+%============================== Microsoft ===================================
+%
+% Farsi Simple and outline
+ \DeclareTextFontCommand{\textfrsimpl}{\fontfamily{farsismpl}\selectfont}
+ \DeclareRobustCommand{\frsimpl}{\fontfamily{farsismpl}\selectfont}
+%
+ \DeclareRobustCommand{\frsimplout}{\fontfamily{farsismpl}\fontseries{b}\selectfont}
+ \DeclareTextFontCommand{\textfrsimplout}{\fontfamily{farsismpl}\fontseries{b}\selectfont}
+
+
+% Arial
+ \DeclareTextFontCommand{\textfrarial}{\fontfamily{frarial}\selectfont}
+ \DeclareRobustCommand{\frarial}{\fontfamily{frarial}\selectfont}
+%
+ \DeclareTextFontCommand{\textfrarialb}{\fontfamily{frarial}\fontseries{b}\selectfont}
+ \DeclareRobustCommand{\frarialb}{\fontfamily{frarial}\fontseries{b}\selectfont}
+
+% Times New Roman
+ \DeclareTextFontCommand{\textftimes}{\fontfamily{frtimes}\selectfont}
+ \DeclareRobustCommand{\ftimes}{\fontfamily{frtimes}\selectfont}
+%
+ \DeclareTextFontCommand{\textftimesb}{\fontfamily{frtimes}\fontseries{b}\selectfont}
+ \DeclareRobustCommand{\ftimesb}{\fontfamily{frtimes}\fontseries{b}\selectfont}
+% Courier
+% \DeclareTextFontCommand{\textcour}{\fontfamily{cour}\selectfont}
+% \DeclareRobustCommand{\cour}{\fontfamily{cour}\selectfont}
+%
+% \DeclareTextFontCommand{\textcourb}{\fontfamily{cour}\fontseries{b}\selectfont}
+% \DeclareRobustCommand{\courb}{\fontfamily{cour}\fontseries{b}\selectfont}
+% Traditional Arabic
+ \DeclareTextFontCommand{\textftrad}{\fontfamily{ftraditionalarabic}\selectfont}
+ \DeclareRobustCommand{\ftrad}{\fontfamily{ftraditionalarabic}\selectfont}
+%
+ \DeclareTextFontCommand{\textftradb}{\fontfamily{ftraditionalarabic}\fontseries{b}\selectfont}
+ \DeclareRobustCommand{\ftradb}{\fontfamily{ftraditionalarabic}\fontseries{b}\selectfont}
+% Simplified arabic
+ \DeclareTextFontCommand{\textfrsimplarabic}{\fontfamily{smplarabic}\selectfont}
+ \DeclareRobustCommand{\frsimplarabic}{\fontfamily{smplarabic}\selectfont}
+%
+ \DeclareTextFontCommand{\textfrsimplarabicb}{\fontfamily{smplarabic}\fontseries{b}\selectfont}
+ \DeclareRobustCommand{\frsimplarabicb}{\fontfamily{smplarabic}\fontseries{b}\selectfont}
+%
+% Andalus
+ \DeclareTextFontCommand{\textfandalus}{\fontfamily{fandlso}\selectfont}
+ \DeclareRobustCommand{\fandalus}{\fontfamily{fandlso}\selectfont}
+
+%
+%================================== ?????????????? ==========================
+%
+
+
+%
+%=============================== FarsiWeb Project Fonts ===================================
+% Nazli (Normal and Bold)
+ \DeclareTextFontCommand{\textnazli}{\fontfamily{nazli}\selectfont}
+ \DeclareRobustCommand{\nazli}{\fontfamily{nazli}\selectfont}
+%
+ \DeclareTextFontCommand{\textnazlib}{\fontfamily{nazli}\fontseries{b}\selectfont}
+ \DeclareRobustCommand{\nazlib}{\fontfamily{nazli}\fontseries{b}\selectfont}
+% Nazli Outline (Normal and Bold)
+ \DeclareTextFontCommand{\textnazliout}{\fontfamily{nazliout}\selectfont}
+ \DeclareRobustCommand{\nazliout}{\fontfamily{nazliout}\selectfont}
+%
+ \DeclareTextFontCommand{\textnazlibout}{\fontfamily{nazliout}\fontseries{b}\selectfont}
+ \DeclareRobustCommand{\nazlibout}{\fontfamily{nazliout}\fontseries{b}\selectfont}
+%
+% Titr (Bold only for titles)
+ \DeclareTextFontCommand{\texttitr}{\fontfamily{titr}\selectfont}
+ \DeclareRobustCommand{\titr}{\fontfamily{titr}\selectfont}
+%
+% Titr Outline
+ \DeclareTextFontCommand{\texttitrout}{\fontfamily{titrout}\selectfont}
+ \DeclareRobustCommand{\titrout}{\fontfamily{titrout}\selectfont}
+%
+% Koodak
+ \DeclareTextFontCommand{\textkoodak}{\fontfamily{koodak}\selectfont}
+ \DeclareRobustCommand{\koodak}{\fontfamily{koodak}\selectfont}
+%
+% Homa
+ \DeclareTextFontCommand{\texthoma}{\fontfamily{homa}\selectfont}
+ \DeclareRobustCommand{\homa}{\fontfamily{homa}\selectfont}
+% Elham
+ \DeclareTextFontCommand{\textelham}{\fontfamily{elham}\selectfont}
+ \DeclareRobustCommand{\elham}{\fontfamily{elham}\selectfont}
+%
+% Roya (Normal and Bold)
+ \DeclareTextFontCommand{\textroya}{\fontfamily{roya}\selectfont}
+ \DeclareRobustCommand{\roya}{\fontfamily{roya}\selectfont}
+%
+ \DeclareTextFontCommand{\textroyab}{\fontfamily{roya}\fontseries{b}\selectfont}
+ \DeclareRobustCommand{\royab}{\fontfamily{roya}\fontseries{b}\selectfont}
+
+% Terafik (Normal and Bold)
+ \DeclareTextFontCommand{\textterafik}{\fontfamily{terafik}\selectfont}
+ \DeclareTextFontCommand{\terafik}{\fontfamily{terafik}\selectfont}
+%
+ \DeclareTextFontCommand{\textterafikb}{\fontfamily{terafik}\fontseries{b}\selectfont}
+ \DeclareTextFontCommand{\terafikb}{\fontfamily{terafik}\fontseries{b}\selectfont}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%
+%% \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 \~}
+%%
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/fmultico.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/fmultico.sty
new file mode 100644
index 0000000000..a37c417449
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/fmultico.sty
@@ -0,0 +1,567 @@
+%%
+%% This is file `fmulticol.sty', generated
+%% on <1993/12/2> with the docstrip utility (2.0r).
+%%
+%% The original source files were:
+%%
+%% multicol.doc (with options: `style,check,marktrace')
+%%
+%% Copyright (C) 1989-1992 by Frank Mittelbach. All rights reserved.
+%% Copyright (C) 1996 by The FarsiTeX Project Group.
+%%
+%% This file is part of the multicol package.
+%%
+%% IMPORTANT NOTICE:
+%%
+%% You are not allowed to change this file. You may however copy
+%% this file to a file with a different name and then change the copy
+%% if you obey the restrictions on file changes described in
+%% readme.mz.
+%%
+%% You are NOT ALLOWED to distribute this file alone. You are NOT
+%% ALLOWED to take money for the distribution or use of this file (or
+%% a changed version) except for a nominal charge for copying etc.
+%%
+%% You are allowed to distribute this file under the condition that
+%% it is distributed together with all files mentioned in readme.mz1.
+%%
+%% If you receive only some of these files from someone, complain!
+%%
+%% However, if these files are distributed by established suppliers
+%% as part of a complete TeX distribution, and the structure of the
+%% distribution would make it difficult to distribute the whole set
+%% of files, *those parties* are allowed to distribute only some of
+%% the files provided that it is made clear that the user will get a
+%% complete distribution-set upon request to that supplier (not me).
+%% Notice that this permission is not granted to the end user.
+%%
+%%
+%% For error reports in case of UNCHANGED versions see readme.mz
+%%
+%%
+
+%%% Save file as: multicol.doc Source: FILESERV@SHSU.BITNET
+%%% Note: This is a file from the MULTICOL (version 1.4m, 7 September 1992)
+%%% set written by Frank Mittelbach <MITTELBACH@MZDMZA.ZDM.Uni-Mainz.de>.
+%%% NOTE: This is part 1 of a 3 part distribution.
+%%% The following checksum includes all SHSU-generated topmatter.
+%%% checksum = "34058 854 5506 38012" =
+%%%
+\def\fileversion{v1.4m}
+\def\filedate{92/09/04}
+\def\docdate {92/09/04}
+
+%% \CheckSum{1101}
+%% \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 \~}
+%%
+%% Style-option `multicol' to use with LaTeX v2.09
+%% Copyright (C) 1989-1992 Frank Mittelbach, all rights reserved.
+\@ifundefined{mult@cols}{}{\endinput}
+\typeout{Style option: `multicol'
+ \fileversion\space <\filedate> (FMi)}
+\typeout{English documentation
+ \@spaces\@spaces\space<\docdate> (FMi)}
+\def\multicols#1{\col@number#1\relax
+ \ifnum\col@number<\tw@
+ \@warning{Using `\number\col@number'
+ columns doesn't seem a good idea.^^J
+ I therefore use two columns instead}%
+ \col@number\tw@ \fi
+ \ifnum\col@number>5
+ \@warning{Current implementation doesn't
+ support more than five columns.^^J
+ I therefore use five columns instead}%
+ \col@number5 \fi
+ \@ifnextchar[\mult@cols{\mult@cols[]}}
+\def\mult@cols[#1]{\@ifnextchar[%
+ {\mult@@cols{#1}}%
+ {\mult@@cols{#1}[\premulticols]}}
+\def\mult@@cols#1[#2]{%
+ \par
+ \ifinner \@boxedmulticolstrue
+ \else
+ \ifnum \doublecol@number>\z@
+ \@boxedmulticolstrue
+ \fi
+ \fi
+ \ifnum\c@tracingmulticols>\z@
+ \typeout{^^J^^JStarting multicolumn
+ output with \the\col@number
+ \space columns%
+ \if@boxedmulticols\space
+ (boxed mode)\fi
+ \on@line:^^J}\fi
+ \enough@room{#2}%
+ {#1\par}\addvspace\multicolsep
+ \begingroup
+ \prepare@multicols
+ \if@boxedmulticols
+ \setbox\mult@box\vbox\bgroup
+ \penalty-\@M
+ \fi
+ \ignorespaces}
+\newif\if@boxedmulticols \@boxedmulticolsfalse
+\newbox\mult@box
+\def\enough@room#1{%
+ \if@boxedmulticols\else
+ \par
+ \bgroup\@nobreakfalse\addpenalty\z@\egroup
+ \page@free \pagegoal
+ \advance \page@free -\pagetotal
+ \ifnum \c@tracingmulticols>\z@
+ \typeout{Current page:}%
+ \message{\@spaces goal height=%
+ \the\pagegoal: used \the\pagetotal
+ \space -> free=\the\page@free}%
+ \typeout{\@spaces needed \the#1
+ (for \string#1)}\fi
+ \ifdim \page@free <#1\newpage \fi
+ \fi}
+\def\prepare@multicols{%
+ \multicol@leftmargin\@totalleftmargin
+ \@totalleftmargin\z@
+ \parshape\z@
+ \doublecol@number\col@number
+ \multiply\doublecol@number\tw@
+ \if@boxedmulticols
+ \let\l@kept@firstmark\kept@firstmark
+ \let\l@kept@botmark\kept@botmark
+ \global\let\kept@firstmark\@empty
+ \global\let\kept@botmark\@empty
+ \else
+ \nointerlineskip \null
+ \output{%
+ \global\setbox\partial@page\vbox
+ {%
+%%%---END---Part 1 of 3---multicol.doc
+
+%%% Save file as: multicol.doc Source: FILESERV@SHSU.BITNET
+%%% Note: This is a file from the MULTICOL (version 1.4m, 7 September 1992)
+%%% set written by Frank Mittelbach <MITTELBACH@MZDMZA.ZDM.Uni-Mainz.de>.
+%%% NOTE: This is part 2 of a 3 part distribution.
+%%% The following checksum includes all SHSU-generated topmatter.
+%%% checksum = "02434 960 4927 38435" =
+%%%
+ \ifvoid\partial@page\else
+ \@latexerr{Error saving partial
+ page\on@line}%
+ {The part of the page before
+ the multicols environment was
+ nearly full with the result
+ that starting the environment
+ will produce an overfull
+ page. Some text may be lost!
+ Please increase \premulticols
+ either generally or for this
+ environment by specifying a
+ suitable value in the second
+ optional argument to the
+ multicols environment.}
+ \unvbox\partial@page
+ \box\last@line
+ \fi
+ \unvbox\@cclv
+ \global\setbox\last@line\lastbox
+ }%
+ \prep@keptmarks
+ \global\let\kept@topmark\firstmark
+ }\eject
+ \advance\@colroom-\ht\partial@page
+ \vsize\col@number\@colroom
+ \advance\vsize\c@collectmore\baselineskip
+ \output{\multi@column@out}%
+ \multiply\count\footins\col@number
+ \multiply\skip \footins\col@number
+ \reinsert@footnotes
+ \fi
+ \vbadness10001 \hbadness5000
+ \tolerance\multicoltolerance
+ \pretolerance\multicolpretolerance
+ \setemergencystretch\col@number\hsize
+ \set@floatcmds
+ \advance\baselineskip\multicolbaselineskip
+ \hsize\linewidth \advance\hsize\columnsep
+ \advance\hsize-\col@number\columnsep
+ \divide\hsize\col@number
+ \full@width\linewidth
+ \linewidth\hsize
+}
+\newdimen\multicol@leftmargin
+\def\endmulticols{\par
+ \if@boxedmulticols
+ \egroup
+ \setbox\@tempboxa\vsplit\mult@box to\z@
+ \balance@columns
+ \return@nonemptymark{first}\kept@firstmark
+ \return@nonemptymark{bot}\kept@botmark
+ \page@sofar
+ \global\let\kept@firstmark\l@kept@firstmark
+ \global\let\kept@botmark\l@kept@botmark
+ \ifnum\c@tracingmulticols>\tw@
+ \typeout{Restore kept marks to%
+ ^^J first: \meaning\kept@firstmark%
+ ^^J bot\space\space:
+ \meaning\kept@botmark }%
+ \fi
+ \else
+ \bgroup\@nobreakfalse\addpenalty\z@\egroup
+ \output{\balance@columns@out}\eject
+ \ifvbox\partial@page\unvbox\partial@page\fi
+ \global\let\kept@firstmark\@empty
+ \global\let\kept@botmark\@empty
+ \ifnum\c@tracingmulticols>\tw@
+ \typeout{Make kept marks empty}%
+ \fi
+ \fi
+ \@checkend{multicols}%
+ \endgroup
+ \if@boxedmulticols\else
+ \reinsert@footnotes
+ \fi
+ \global\c@unbalance\z@
+ \enough@room\postmulticols
+ \addvspace\multicolsep
+ \ifnum\c@tracingmulticols>\z@
+ \typeout{^^JEnding multicolumn
+ output%
+ \if@boxedmulticols
+ \space(boxed mode)\fi
+ .^^J^^J}\fi}
+\newcount\c@unbalance
+\newcount\c@collectmore
+\newcount\c@tracingmulticols
+\newcount\col@number
+\newcount\doublecol@number
+\newcount\multicoltolerance
+\newcount\multicolpretolerance
+\newdimen\full@width
+\newdimen\page@free
+\newdimen\premulticols
+\newdimen\postmulticols
+\newskip\multicolsep
+\newskip\multicolbaselineskip
+\newbox\partial@page
+\newbox\last@line
+\c@unbalance = 0
+\c@collectmore = 0
+\c@tracingmulticols = 0
+\col@number = 1
+\multicoltolerance = 9999
+\multicolpretolerance = -1
+\premulticols = 50pt
+\postmulticols= 20pt
+\multicolsep = 12pt plus 4pt minus 3pt
+\multicolbaselineskip=0pt
+\def\process@cols#1#2{\count@#1\relax
+ \loop #2%
+ \advance\count@\tw@
+ \ifnum\count@<\doublecol@number
+ \repeat}
+\def\revprocess@cols#1#2{\count@\doublecol@number\relax
+\advance\count@ by -2
+% \ifodd\count@ \advance\count@ by -1 \fi
+ \loop #2%
+ \ifnum\count@>#1\relax
+ \advance\count@-\tw@
+ \repeat}
+\def\page@sofar{%
+ \process@cols\z@{\wd\count@\hsize}%
+ \ifnum\c@tracingmulticols>\z@
+ \typeout{Column spec:
+ (\the\multicol@leftmargin\space -->
+ \the\full@width\space = \the\hsize
+ \space x \the\col@number)^^J}%
+ \fi
+\ifvmode\else\errmessage{Multicol Error}\fi
+ \moveright\multicol@leftmargin
+ \hbox to\full@width{%
+ \box\z@
+ \llap{\phantom p}%
+ \revprocess@cols\tw@{%
+ \hss\vrule\@width\columnseprule\hss\box\count@}%
+}%
+%%%%%\ifvmode\else\errmessage{Multicol Error}\fi
+%%%%% \moveright\multicol@leftmargin
+%%%%% \hbox to\full@width{%
+%%%%% \process@cols\tw@{\box\count@
+%%%%% \hss\vrule\@width\columnseprule\hss}%
+%%%%% \box\z@
+%%%%% \rlap{\phantom p}%
+%%%%%}%
+}
+\def\reinsert@footnotes{\ifvoid\footins\else
+ \insert\footins{}\fi}
+\def\multi@column@out{%
+ \ifnum\outputpenalty <-\@Mi
+ \speci@ls \else
+ \splittopskip\topskip
+ \splitmaxdepth\maxdepth
+ \dimen@\@colroom
+ \divide\skip\footins\col@number
+ \ifvoid\footins \else
+ \advance\dimen@-\skip\footins
+ \advance\dimen@-\ht\footins \fi
+ \process@cols\tw@{\setbox\count@
+ \vsplit\@cclv to\dimen@
+ \set@keptmarks
+ \ifshr@nking
+ \setbox\count@\vbox to\dimen@
+ {\unvbox\count@\vfill}%
+ \fi
+ }%
+ \setbox\z@\vsplit\@cclv to\dimen@
+ \set@keptmarks
+ \ifshr@nking
+ \setbox\z@\vbox to\dimen@
+ {\unvbox\z@\vfill}%
+ \fi
+ \ifvoid\@cclv \else
+ \unvbox\@cclv
+ \penalty\outputpenalty
+ \ifvoid\footins\else
+ \@warning{I moved some lines to
+ the next page.^^J
+ \@spaces Footnotes on page
+ \thepage\space might be wrong}%
+ \fi
+ \ifnum \c@tracingmulticols>\thr@@
+ \hrule\allowbreak \fi
+ \fi
+ \ifx\@empty\kept@firstmark
+ \let\firstmark\kept@topmark
+ \let\botmark\kept@topmark
+ \else
+ \let\firstmark\kept@firstmark
+ \let\botmark\kept@botmark
+ \fi
+ \ifnum\c@tracingmulticols>\tw@
+ \typeout{Use kept top
+ \space\space mark:
+ `\meaning\kept@topmark'%
+ ^^JUse kept first mark:
+ `\meaning\kept@firstmark'%
+ ^^JUse kept bot
+ \space\space mark:
+ `\meaning\kept@botmark'%
+ ^^JProduce first mark:
+ `\meaning\firstmark'%
+ ^^JProduce bot
+ \space\space mark:
+ `\meaning\botmark'}%
+ \fi
+ \setbox\@cclv\vbox{\unvbox\partial@page
+ \page@sofar}%
+ \@makecol\@outputpage
+ \global\let\kept@topmark\botmark
+ \global\let\kept@firstmark\@empty
+ \global\let\kept@botmark\@empty
+ \ifnum\c@tracingmulticols>\tw@
+ \typeout{(Re)Init top
+ \space\space mark:
+ `\meaning\kept@topmark'}%
+ \fi
+ \global\@colroom\@colht
+ \process@deferreds
+ \@whilesw\if@fcolmade\fi{\@outputpage
+ \global\@colroom\@colht
+ \process@deferreds}%
+ \ifnum\c@tracingmulticols>\@ne
+ \typeout{Colroom: \the\@colht\space
+ after float space removed
+ = \the\@colroom }\fi
+ \global\vsize\col@number\@colroom
+ \global\advance\vsize
+ \c@collectmore\baselineskip
+ \fi}
+\def\speci@ls{%
+ \typeout{Floats and marginpars not
+ allowed inside `multicols'
+ environment!}%
+ \unvbox\@cclv\reinsert@footnotes
+ \xdef\@freelist{\@freelist\@currlist}%
+ \gdef\@currlist{}}
+\def\process@deferreds{%
+ \@floatplacement
+ \@tryfcolumn\@deferlist
+ \if@fcolmade\else
+ \begingroup
+ \let\@tempb\@deferlist
+ \gdef\@deferlist{}%
+ \let\@elt\@scolelt
+ \@tempb \endgroup
+ \fi}
+\newif\ifshr@nking
+\def\raggedcolumns{%
+ \@bsphack\shr@nkingtrue\@esphack}
+\def\flushcolumns{%
+ \@bsphack\shr@nkingfalse\@esphack}
+\def\balance@columns@out{%
+ \setbox\mult@box\vbox{\unvbox\@cclv}%
+ \balance@columns
+ \global\vsize\@colroom
+ \global\advance\vsize\ht\partial@page
+ \unvbox\partial@page
+ \return@nonemptymark{first}\kept@firstmark
+ \return@nonemptymark{bot}\kept@botmark
+ \page@sofar}
+\def\balance@columns{%
+ \setbox\mult@box\vbox to\ht\mult@box{%
+ \unvbox\mult@box
+ \remove@discardable@items
+ }%
+ \get@keptmarks\mult@box
+ \splittopskip\topskip
+ \splitmaxdepth\maxdepth
+ \@tempdima\ht\mult@box
+ \advance\@tempdima\dp\mult@box
+ \divide\@tempdima\col@number
+%%%---END---Part 2 of 3---multicol.doc
+
+%%% Save file as: multicol.doc Source: FILESERV@SHSU.BITNET
+%%% Note: This is a file from the MULTICOL (version 1.4m, 7 September 1992)
+%%% set written by Frank Mittelbach <MITTELBACH@MZDMZA.ZDM.Uni-Mainz.de>.
+%%% NOTE: This is part 3 of a 3 part distribution.
+%%% The following checksum includes all SHSU-generated topmatter.
+%%% checksum = "15022 557 2546 20727" =
+%%%
+ \count@\@tempdima
+ \divide\count@\baselineskip
+ \dimen@\count@\baselineskip
+ \advance\dimen@\topskip
+ \ifdim \dimen@ >\@tempdima
+ \advance\dimen@-\baselineskip
+ \fi
+ \advance\dimen@\c@unbalance\baselineskip
+ \ifnum\c@tracingmulticols>\@ne
+ \typeout{Balance columns\on@line:
+ \ifnum\c@unbalance=\z@\else
+ (off balance=\number\c@unbalance)\fi}%
+ \fi
+ \ifnum\dimen@<\topskip
+ \ifnum\c@tracingmulticols>\@ne
+ \typeout{Start value
+ \the\dimen@ \space ->
+ \the\topskip \space (corrected)}%
+ \fi
+ \dimen@\topskip
+ \fi
+ \vbadness\@M \loop
+ {\process@cols\@ne{\global\setbox\count@
+ \box\voidb@x}}%
+ \global\setbox\@ne\copy\mult@box
+ {\process@cols\thr@@{%
+ \global\setbox\count@
+ \vsplit\@ne to\dimen@
+ }}%
+ \boxmaxdepth\maxdepth
+ \global\setbox\@ne\vbox{\unvbox\@ne}%
+ \ifnum\c@tracingmulticols>\@ne
+ \message{\@spaces First column
+ = \the\ht\thr@@}\fi
+ \ifshr@nking \global\setbox\thr@@
+ \vbox{\unvbox\thr@@}%
+ \ifnum\c@tracingmulticols>\@ne
+ \message{ after shrinking
+ \the\ht\thr@@}\fi\fi
+ \ifnum\c@tracingmulticols>\@ne
+ \message{<> last column =
+ \the\ht\@ne^^J}%
+ \fi
+ \ifdim\ht\@ne >\ht\thr@@
+ \advance\dimen@\p@
+ \repeat
+ \dimen@\ht\thr@@
+ \ifdim\dimen@>\@colroom
+ \dimen@\@colroom
+ \fi
+ \process@cols\z@{\@tempcnta\count@
+ \advance\@tempcnta\@ne
+ \setbox\count@\vbox to\dimen@
+ {\unvbox\@tempcnta
+ \ifshr@nking\vfill\fi}}%
+}
+\@ifundefined{emergencystretch}
+ {\newdimen\emergencystretch}{}
+\def\setemergencystretch#1#2{%
+ \emergencystretch 4pt
+ \multiply\emergencystretch#1}
+
+\def\set@floatcmds{%
+ \let\@dblfloat\@dbflt
+ \def\end@dblfloat{\par
+ \vskip\z@\egroup
+ \ifnum\@floatpenalty<\z@
+ \@cons\@deferlist\@currbox
+ \fi
+ \ifnum\@floatpenalty=-\@Mii
+ \@esphack
+ \fi}}
+\def\kept@topmark{{}{}}
+\let\kept@firstmark\@empty
+\let\kept@botmark\@empty
+\def\return@nonemptymark#1#2{%
+ \ifx#2\@empty
+ \else
+ \ifnum\c@tracingmulticols>\tw@
+ \typeout{Returned #1 mark: \meaning#2}%
+ \nobreak
+ \fi
+ \mark{#2}%
+ \nobreak
+ \fi}
+\def\get@keptmarks#1{%
+ \begingroup
+ \vbadness\@M
+ \setbox#1\copy#1%
+ \setbox#1\vsplit#1to\maxdimen
+ \set@keptmarks
+ \endgroup
+}
+\def\set@keptmarks{%
+ \ifx\kept@firstmark\@empty
+ \expandafter\gdef\expandafter
+ \kept@firstmark
+ \expandafter{\splitfirstmark}%
+ \ifnum\c@tracingmulticols>\tw@
+ \ifx\kept@firstmark\@empty\else
+ \typeout{Set kept first mark:
+ `\meaning\kept@firstmark'}%
+ \fi
+ \fi
+ \fi
+ \expandafter\def\expandafter\@tempa
+ \expandafter{\splitbotmark}%
+ \ifx\@tempa\@empty\else
+ \global\let\kept@botmark\@tempa
+ \ifnum\c@tracingmulticols>\tw@
+ \typeout{Set kept bot mark:
+ `\meaning\kept@botmark'}%
+ \fi
+ \fi}%
+\def\prep@keptmarks{%
+ \if@boxedmulticols \else
+ \get@keptmarks\partial@page
+ \fi}
+\def\remove@discardable@items{%
+ \unskip\unpenalty\unkern
+ \unskip\unpenalty\unkern
+ \unskip\unpenalty\unkern
+ \unskip\unpenalty\unkern
+}
+\endinput
+%%
+%% End of file `multicol.sty'.
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/fnum.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/fnum.sty
new file mode 100644
index 0000000000..a461ae4ecd
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/fnum.sty
@@ -0,0 +1,20 @@
+\def\abjad#1{\@abjad{\@nameuse{c@#1}}}
+\def\adadi#1{\@adadi{\@nameuse{c@#1}}}
+\def\harfi#1{\@harfi{\@nameuse{c@#1}}}
+
+\def\@abjad#1{\beginR\ifcase#1\or \or \or \or \else\@iabjad{#1}\fi\endR}
+\def\@iabjad#1{\ifcase#1\or \or \or \or \or \or \or \or \or
+ \or \or \or \or \or \or \or \or \or \or
+ \or \or \or \or \or \or \or \or \or \else\@ctrerr\fi}
+
+\def\@adadi#1{\beginR\ifcase#1\or \or \or \or \else
+ \@iadadi{#1}\fi\endR}
+\def\@iadadi#1{\ifcase#1\or \or \or \or \or \or \or Դ\or ȴ\or
+ \or \or \or \or â\or \or â\or â\or
+ \or \or \or ƴ\else\@ctrerr\fi}
+
+\def\@harfi#1{\beginR\ifcase#1\or \or \or \or \else\@iharfi{#1}\fi\endR}
+\def\@iharfi#1{\ifcase#1\or \or \or \or \or \or \or \or \or
+ \or \or \or \or \or \or \or \or
+ \or \or \or \or \or \or \or \or \or \or \or \or
+ \or \or \else\@ctrerr\fi}
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/frfonts.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/frfonts.sty
new file mode 100644
index 0000000000..b98ee9986e
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/frfonts.sty
@@ -0,0 +1,134 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: `FRfonts.sty' Arabic font .....
+% the Arabi package.
+%
+%%
+
+\ProvidesPackage{FRfonts}[2006/12/01 Part of the Arabi package]
+
+
+\newif\ifffree\newif\iffmscore
+
+\DeclareOption{free}{\fmscorefalse\ffreetrue}
+\DeclareOption{mscore}{\ffreefalse\fmscoretrue}
+\ExecuteOptions{free}
+\ProcessOptions
+
+\ifffree
+\DeclareFontFamily{LFE}{\rmdefault}{\hyphenchar\font=-1}%
+\DeclareFontShape{LFE}{\rmdefault}{m}{n}{<-> s*[1.25] nazli }{}%
+\DeclareFontShape{LFE}{\rmdefault}{m}{it}{<-> s*[1.25] nazli }{}%
+\DeclareFontShape{LFE}{\rmdefault}{m}{sl}{<-> s*[1.25] nazli }{}%
+\DeclareFontShape{LFE}{\rmdefault}{m}{sc}{<-> s*[1.25] nazli }{}%
+%
+\DeclareFontShape{LFE}{\rmdefault}{bx}{n}{<-> s*[1.25] titr }{}%
+\DeclareFontShape{LFE}{\rmdefault}{bx}{sl}{<->s*[1.25] titr }{}%
+\DeclareFontShape{LFE}{\rmdefault}{bx}{it}{<->s*[1.25] titr }{}%
+%%%%
+\DeclareFontShape{LFE}{\rmdefault}{b}{n}{<-> s*[1.25] titr }{}%
+\DeclareFontShape{LFE}{\rmdefault}{b}{sl}{<-> s*[1.25] titr }{}%
+\DeclareFontShape{LFE}{\rmdefault}{b}{it}{<-> s*[1.25] titr }{}%
+%
+%%%%%%%%%%%%%%%%%%%%%%% Terafik for typewriter type %%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%% and Terafik bold for typewriter type Bold face %%%%%%%%%%%%%%%%%%%%%%
+\DeclareFontFamily{LFE}{\ttdefault}{\hyphenchar\font=-1}
+\DeclareFontShape{LFE}{\ttdefault}{m}{n}{<-> s*[1.25] homa }{}%
+\DeclareFontShape{LFE}{\ttdefault}{m}{sl}{<-> s*[1.25] homa }{}%
+\DeclareFontShape{LFE}{\ttdefault}{m}{it}{<-> s*[1.25] homa }{}%
+\DeclareFontShape{LFE}{\ttdefault}{m}{sc}{<-> s*[1.25] homa }{}%
+%
+\DeclareFontShape{LFE}{\ttdefault}{bx}{n}{<-> s*[1.25] homa }{}%
+\DeclareFontShape{LFE}{\ttdefault}{bx}{sl}{<->s*[1.25] homa }{}%
+\DeclareFontShape{LFE}{\ttdefault}{bx}{it}{<->s*[1.25] homa }{}%
+%%%%
+\DeclareFontShape{LFE}{\ttdefault}{b}{n}{<-> s*[1.25] homa }{}%
+\DeclareFontShape{LFE}{\ttdefault}{b}{sl}{<-> s*[1.25] homa }{}%
+\DeclareFontShape{LFE}{\ttdefault}{b}{it}{<-> s*[1.25] homa }{}%
+%
+%%%%%%%%%%%%%%%%%%%%%%% Roya for Sans Serif !! %%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%
+\DeclareFontFamily{LFE}{\sfdefault}{\hyphenchar\font=-1}%
+\DeclareFontShape{LFE}{\sfdefault}{m}{n}{<-> s*[1.25] nazlib }{}%
+\DeclareFontShape{LFE}{\sfdefault}{m}{sl}{<-> s*[1.25] nazlib }{}%
+\DeclareFontShape{LFE}{\sfdefault}{m}{it}{<-> s*[1.25] nazlib }{}%
+\DeclareFontShape{LFE}{\sfdefault}{m}{sc}{<-> s*[1.25] nazlib }{}%
+%
+\DeclareFontShape{LFE}{\sfdefault}{bx}{n}{<-> s*[1.25] nazlib }{}%
+\DeclareFontShape{LFE}{\sfdefault}{bx}{sl}{<->s*[1.25] nazlib }{}%
+\DeclareFontShape{LFE}{\sfdefault}{bx}{it}{<->s*[1.25] nazlib }{}%
+%%%%
+\DeclareFontShape{LFE}{\sfdefault}{b}{n}{<-> s*[1.25] nazlib }{}%
+\DeclareFontShape{LFE}{\sfdefault}{b}{sl}{<-> s*[1.25] nazlib }{}%
+\DeclareFontShape{LFE}{\sfdefault}{b}{it}{<-> s*[1.25] nazlib }{}%
+\else
+\iffmscore
+\DeclareFontFamily{LFE}{\rmdefault}{\hyphenchar\font=-1}%
+\DeclareFontShape{LFE}{\rmdefault}{m}{n}{<-> s*[1.25] frsspbl }{}%
+\DeclareFontShape{LFE}{\rmdefault}{m}{it}{<-> s*[1.25] frsspbl }{}%
+\DeclareFontShape{LFE}{\rmdefault}{m}{sl}{<-> s*[1.25] frsspbl }{}%
+\DeclareFontShape{LFE}{\rmdefault}{m}{sc}{<-> s*[1.25] fandlso }{}%
+%
+\DeclareFontShape{LFE}{\rmdefault}{bx}{n}{<-> s*[1.25] frsspout }{}%
+\DeclareFontShape{LFE}{\rmdefault}{bx}{sl}{<->s*[1.25] frsspout }{}%
+\DeclareFontShape{LFE}{\rmdefault}{bx}{it}{<->s*[1.25] frsspout }{}%
+%%%%
+\DeclareFontShape{LFE}{\rmdefault}{b}{n}{<-> s*[1.25] frsspout }{}%
+\DeclareFontShape{LFE}{\rmdefault}{b}{sl}{<-> s*[1.25] frsspout }{}%
+\DeclareFontShape{LFE}{\rmdefault}{b}{it}{<-> s*[1.25] frsspout }{}%
+%
+%%%%%%%%%%%%%%%%%%%%%%% Arial for typewriter type ?! %%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%% Courier seems to have a BAD spacing ?! %%%%%%%%%%%%%%%%%%%%%%%%%%
+\DeclareFontFamily{LFE}{\ttdefault}{\hyphenchar\font=-1}
+\DeclareFontShape{LFE}{\ttdefault}{m}{n}{<-> s*[1.25] frarial }{}%
+\DeclareFontShape{LFE}{\ttdefault}{m}{sl}{<-> s*[1.25] frarial }{}%
+\DeclareFontShape{LFE}{\ttdefault}{m}{it}{<-> s*[1.25] frarial }{}%
+\DeclareFontShape{LFE}{\ttdefault}{m}{sc}{<-> s*[1.25] fandlso }{}%Andalus for small caps!
+%
+\DeclareFontShape{LFE}{\ttdefault}{bx}{n}{<-> s*[1.25] frarialb }{}%
+\DeclareFontShape{LFE}{\ttdefault}{bx}{sl}{<->s*[1.25] frarialb }{}%
+\DeclareFontShape{LFE}{\ttdefault}{bx}{it}{<->s*[1.25] frarialb }{}%
+%%%%
+\DeclareFontShape{LFE}{\ttdefault}{b}{n}{<-> s*[1.25] frarialb }{}%
+\DeclareFontShape{LFE}{\ttdefault}{b}{sl}{<-> s*[1.25] frarialb }{}%
+\DeclareFontShape{LFE}{\ttdefault}{b}{it}{<-> s*[1.25] frarialb }{}%
+%
+%%%%%%%%%%%%%%%%%%%%%%% Simplified Arabic for Sans Serif !! %%%%%%%%%%%%%%%%%%%%%%%%%%%
+\DeclareFontFamily{LFE}{\sfdefault}{\hyphenchar\font=-1}%
+\DeclareFontShape{LFE}{\sfdefault}{m}{n}{<-> s*[1.25] frsimpo }{}%
+\DeclareFontShape{LFE}{\sfdefault}{m}{sl}{<-> s*[1.25] frsimpo }{}%
+\DeclareFontShape{LFE}{\sfdefault}{m}{it}{<-> s*[1.25] frsimpo }{}%
+\DeclareFontShape{LFE}{\sfdefault}{m}{sc}{<-> s*[1.25] frsimpo }{}%
+%
+\DeclareFontShape{LFE}{\sfdefault}{bx}{n}{<-> s*[1.25] frsimpbdo }{}%
+\DeclareFontShape{LFE}{\sfdefault}{bx}{sl}{<->s*[1.25] frsimpbdo }{}%
+\DeclareFontShape{LFE}{\sfdefault}{bx}{it}{<->s*[1.25] frsimpbdo }{}%
+%%%%
+\DeclareFontShape{LFE}{\sfdefault}{b}{n}{<-> s*[1.25] frsimpbdo }{}%
+\DeclareFontShape{LFE}{\sfdefault}{b}{sl}{<-> s*[1.25] frsimpbdo }{}%
+\DeclareFontShape{LFE}{\sfdefault}{b}{it}{<-> s*[1.25] frsimpbdo }{}%
+\fi
+\fi
+
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/haparabica.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/haparabica.sty
new file mode 100644
index 0000000000..ffd5ee4b36
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/haparabica.sty
@@ -0,0 +1,153 @@
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesPackage{HAPArabica}[2004/05/16]
+\typeout{`Arabica' style for HA-prosper}
+\typeout{(c) 2005 Youssef Jabri, Oujda, Morocco}
+\typeout{Package version: 0.1}
+\typeout{Adapted from HAPTycja}
+
+% Color definitions
+\newrgbcolor{tjlblue}{.90 .95 .98}%{.78 .82 .85}
+\newrgbcolor{tjblue}{.19 .39 .61}
+\newrgbcolor{tjdblue}{.19 .44 .61}%{.09 .27 .47}
+\newrgbcolor{HAP@textc}{.09 .27 .47}
+\newrgbcolor{tjyellow}{1 .81 .42}
+\newrgbcolor{tjlyellow}{1 .97 .84}
+\newrgbcolor{HAP@framecolor}{.17 .31 .44}%{.09 .27 .47}
+
+% Highlighting definitions
+\newrgbcolor{HAP@hcolor}{.09 .27 .47} % Highlight frame color
+\newrgbcolor{HAP@htcolor}{1 .97 .84} % Highlight text color
+
+% Font definitions
+\FontTitle{\usefont{T1}{phv}{b}{n}\fontsize{14.4pt}{14pt}\selectfont\tjdblue}%
+ {\usefont{T1}{phv}{b}{n}\fontsize{14.4pt}{14pt}\selectfont\tjdblue}
+\FontText{\usefont{T1}{phv}{m}{n}\fontsize{10pt}{10pt}\selectfont\HAP@textc}%
+ {\usefont{T1}{phv}{m}{n}\fontsize{10pt}{10pt}\selectfont\HAP@textc}
+\FontLeftFoot{\@fontTextColor\fontsize{8pt}{8pt}\selectfont\tjdblue}%
+ {\@fontTextColor\fontsize{8pt}{4pt}\selectfont\tjdblue}
+\FontRightFoot{\@fontTextColor\fontsize{8pt}{8pt}\selectfont\tjdblue}%
+ {\@fontTextColor\fontsize{8pt}{4pt}\selectfont\tjdblue}
+
+% Slide style definitions
+\RequirePackage{pst-grad}
+\newcommand{\TitleSlide}[1]{%
+ \ifHAP@portrait
+ \psframe[linestyle=none,fillcolor=tjlyellow,fillstyle=solid](-2,11.5)(12.5,-.9)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-2,9.1)(-1,9.1)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-1,9.1)(-1,9.4)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-1,9.4)(12.5,9.4)%
+ \psframe[linestyle=none,fillstyle=gradient,gradbegin=tjlyellow,gradend=tjyellow,%
+ gradmidpoint=1](-2,-.15)(12.5,-2.26)%
+ \HAP@PutLF{tl}{-0.95,-.35}%
+ \HAP@PutRF{tr}{8.6,-.35}%
+ \else%
+ \psframe[linestyle=none,fillcolor=tjlyellow,fillstyle=solid](-2,9)(12.5,-.6)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-2,7.6)(-1,7.6)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-1,7.6)(-1,7.9)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-1,7.9)(11.5,7.9)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(11.5,7.9)(11.5,8.2)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(11.5,8.2)(12.5,8.2)%
+ \psframe[linestyle=none,fillstyle=gradient,gradbegin=tjlyellow,gradend=tjyellow,% title slide bottom
+ gradmidpoint=1](-2,-.5)(12.5,-1.32)%
+ \HAP@PutLF{tl}{-1.65,-.9}%
+ \HAP@PutRF{tr}{11.35,-.9}%
+ \fi%
+ {#1}}%
+
+\newcommand{\NormalSlide}[1]{%
+ \ifHAP@portrait%
+ \psframe[linestyle=none,fillcolor=tjlyellow,fillstyle=solid](-2,11.5)(12.5,-.9)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-2,9.1)(-1,9.1)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-1,9.1)(-1,9.4)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-1,9.4)(12.5,9.4)%
+ \psframe[linestyle=none,fillstyle=gradient,gradbegin=tjyellow,gradend=tjlyellow,%
+ gradmidpoint=1](8.4,11.5)(10,-2)%
+ \rput[lb](-2.3,9.95){%
+ \@ifundefined{HAP@NSNav}%
+ {\includegraphics[scale=.14]{flower.ps}}%
+ {\Acrobatmenu{\HAP@NSNav}{\includegraphics[scale=.14]{flower.ps}}}%
+ }%
+ \psframe[linestyle=none,fillstyle=gradient,gradbegin=tjlyellow,gradend=tjyellow,%
+ gradmidpoint=1](-2,-.15)(12.5,-5)%
+ \ifHAP@toc%
+ \rput[tr](3.7,-.8){\begin{minipage}[t]{2cm}\HAP@tsections\end{minipage}}%
+ \rput[tl](4.1,-.8){\begin{minipage}[t]{2cm}\HAP@tcontent\end{minipage}}%
+ \fi%
+ \HAP@PutLF{tl}{-0.95,-.35}%
+ \HAP@PutRF{tr}{8.6,-.35}%
+ \else%
+ \psframe[linestyle=none,fillcolor=tjlyellow,fillstyle=solid](-2,9)(9.4,-.6)% slide body
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-2,7.6)(-1,7.6)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-1,7.6)(-1,7.8)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-1,7.8)(9.3,7.8)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(9.3,7.8)(9.3,9)%11.5
+ \psframe[linestyle=none,fillstyle=gradient,gradbegin=tjyellow,gradend=tjlyellow,% vertical panel
+ gradmidpoint=1](9.3,9)(12.5,-2)% all slide height
+% \psframe[linestyle=none,fillstyle=gradient,gradbegin=tjlblue,gradend=tjblue,% bottom
+% gradmidpoint=1](-2,-.5)(12.5,-1.32)%
+ \psframe[linestyle=none,fillstyle=solid,fillcolor=tjlyellow,gradmidpoint=1](-2,-.5)(12.5,-1.32)%% bottom
+
+ \ifHAP@toc%
+ \rput[lt](9.475,7.25){\begin{minipage}[t]{2cm}\HAP@toc\end{minipage}}%
+ \fi%
+ \HAP@PutLF{tl}{-1.65,-.9}%
+ \HAP@PutRF{tr}{11.35,-.9}%
+ \fi%
+ {#1}}%
+
+\newcommand{\SpecialSlide}[1]{%
+ \ifHAP@portrait%
+ \psframe[linestyle=none,fillcolor=tjlyellow,fillstyle=solid](-2,11.5)(12.5,-.9)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-2,9.1)(-1,9.1)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-1,9.1)(-1,9.4)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-1,9.4)(12.5,9.4)%
+ \psframe[linestyle=none,fillstyle=gradient,gradbegin=tjyellow,gradend=tjlyellow,gradmidpoint=1](8.4,11.5)(10,-.2)%
+ \psframe[linestyle=none,fillstyle=gradient,gradbegin=tjlyellow,gradend=tjyellow,gradmidpoint=1](-2,-.15)(12.5,-5)%
+ \ifHAP@toc%
+ \rput[tr](3.7,-.8){\begin{minipage}[t]{2cm}\HAP@tsections\end{minipage}}%
+ \rput[tl](4.1,-.8){\begin{minipage}[t]{2cm}\HAP@tcontent\end{minipage}}%
+ \fi%
+ \HAP@PutLF{tl}{-0.95,-.35}%
+ \HAP@PutRF{tr}{8.6,-.35}%
+ \else%
+ \psframe[linestyle=none,fillcolor=tjlyellow,fillstyle=solid](-2,9)(9.4,-.6)%
+ \psframe[linestyle=none,fillstyle=gradient,gradbegin=tjyellow,gradend=tjlyellow,gradmidpoint=1](9.3,9)(12.5,-2)%
+ \psframe[linestyle=none,fillcolor=tjlyellow,fillstyle=solid](9.2,7.91)(12.5,-2)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-2,7.6)(-1,7.6)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-1,7.6)(-1,7.9)%
+ \psline[linewidth=.3pt,linecolor=tjdblue]{C-C}(-1,7.9)(12.5,7.9)%
+ \psframe[linestyle=none,fillstyle=gradient,gradbegin=tjlyellow,gradend=tjyellow,gradmidpoint=1](-2,-.5)(12.5,-1.32)%
+ \HAP@PutLF{tl}{-1.65,-.9}%
+ \HAP@PutRF{tr}{11.35,-.9}%
+ \fi%
+ {#1}}%
+
+\ifHAP@portrait
+ \newcommand{\HAPR@titleSlide}{\NewSlideStyle[9cm]{tl}{-.65,2.9}{TitleSlide}}
+ \newcommand{\HAPR@normalSlide}{\NewSlideStyle[8.7cm]{tl}{-.65,3.3}{NormalSlide}}
+ \newcommand{\HAPR@wideSlide}{\NewSlideStyle[8.7cm]{tl}{-.65,3.3}{NormalSlide}}
+ \newcommand{\HAPR@dualSlide}{\NewSlideStyle[4.2cm]{tl}{-.65,3.3}{NormalSlide}}
+ \newcommand{\slidetitle}[1]{\rput[Br](8.3,4.55){\fontTitle{#1}}}
+\else
+ \newcommand{\HAPR@titleSlide}{\NewSlideStyle[11.7cm]{tl}{-.6,3.4}{TitleSlide}}
+ \newcommand{\HAPR@normalSlide}{\NewSlideStyle[9.5cm]{tl}{-.6,3.7}{NormalSlide}}
+ \newcommand{\HAPR@wideSlide}{\NewSlideStyle[11.7cm]{tl}{-.6,3.7}{SpecialSlide}}
+ \newcommand{\HAPR@dualSlide}{\NewSlideStyle[5.5cm]{tl}{-.6,3.7}{SpecialSlide}}
+ \newcommand{\slidetitle}[1]{\rput[Br](9.2,4.55){\fontTitle{#1}}}
+\fi
+
+% List item definitions
+\RequirePackage{pifont}
+\myitem{1}{\raisebox{1pt}{\fontsize{7pt}{7pt}\selectfont\ding{110}}}
+\myitem{2}{\raisebox{1pt}{\fontsize{7pt}{7pt}\selectfont\ding{117}}}
+\myitem{3}{\raisebox{1pt}{\fontsize{5pt}{5pt}\selectfont\ding{110}}}
+
+% Style of table of contents entries
+\newcommand{\HAP@tsectionm}{%
+ \ifHAP@portrait\else
+ \psline[linecolor=tjdblue,linewidth=.25pt](-.04,-.05)(2,-.05)%
+ \fi
+}
+\newcommand{\HAP@tsectiononly}[1]{\parbox{2cm}{\raggedleft#1\,}}%
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealbattar.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealbattar.fd
new file mode 100644
index 0000000000..03a3b685b6
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealbattar.fd
@@ -0,0 +1,19 @@
+%%
+%% This is file `laeaealbattar.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+\ProvidesFile{laeaealbattar.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{aealbattar}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aealbattar}{m}{n}{<-> s*[1.25] aealbattar}{}
+\DeclareFontShape{LAE}{aealbattar}{bx}{n}{<-> s*[1.25] aealbattar}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealmateen.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealmateen.fd
new file mode 100644
index 0000000000..aaf7da1ca5
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealmateen.fd
@@ -0,0 +1,19 @@
+%%
+%% This is file `laeaealmateen.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+\ProvidesFile{laeaealmateen.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{aealmateen}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aealmateen}{m}{n}{<-> s*[1.25] aealmateen}{}
+\DeclareFontShape{LAE}{aealmateen}{bx}{n}{<-> s*[1.25] aealmateen}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealmohanadb.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealmohanadb.fd
new file mode 100644
index 0000000000..eaefac5179
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealmohanadb.fd
@@ -0,0 +1,37 @@
+%%
+%% This is file `laeaealmohanadb.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaealmohanadb.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aealmohanadb}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aealmohanadb}{m}{n}{%
+ <-> s*[1.25] aealmohanadb }{}
+
+%%%%%%% Italicized shape
+\DeclareFontShape{LAE}{cmr}{m}{it}{<-> s*[1.25] ae_almohanad_bolditalic }{}
+\DeclareFontShape{LAE}{cmr}{m}{sl}{<-> s*[1.25] ae_almohanad_bolditalic }{}
+
+%%%%%%% Bold extended series
+\DeclareFontShape{LAE}{aealmohanadb}{b}{n}{<-> s*[1.25] ae_almohanad_xxbold}{}
+\DeclareFontShape{LAE}{aealmohanadb}{bx}{n}{<-> s*[1.25] ae_almohanad_xxbold}{}
+
+
+%%%%%%% Bold extended (Italic) series
+\DeclareFontShape{LAE}{aealmohanadb}{bx}{sl}{<-> ssub * aealmohanadb/b/n}{}
+\DeclareFontShape{LAE}{aealmohanadb}{bx}{it}{<-> ssub * aealmohanadb/b/n}{}
+
+
+\endinput
+
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealmothnna.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealmothnna.fd
new file mode 100644
index 0000000000..0fe543bf6c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealmothnna.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaealmothnna.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaealmothnna.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aealmothnna}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aealmothnna}{m}{n}{<-> s*[1.25] aealmothnna}{}
+\DeclareFontShape{LAE}{aealmothnna}{bx}{n}{<-> ssub * aealmothnna/m/n}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealyermook.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealyermook.fd
new file mode 100644
index 0000000000..d56a79d1cc
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaealyermook.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `aealyermook.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{aealyermook.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aealyermook}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aealyermook}{m}{n}{<-> s*[1.25] aealyermook }{}
+\DeclareFontShape{LAE}{aealyermook}{bx}{n}{<-> ssub * aealyermook/m/n}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaearab.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaearab.fd
new file mode 100644
index 0000000000..70f26ac8fb
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaearab.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaearab.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaearab.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aearab}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aearab}{m}{n}{<-> s*[1.25] aearab }{}
+\DeclareFontShape{LAE}{aearab}{bx}{n}{<-> ssub * aearab/m/n}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaecortoba.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaecortoba.fd
new file mode 100644
index 0000000000..f7cc7ec530
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaecortoba.fd
@@ -0,0 +1,23 @@
+%%
+%% This is file `laeaecortoba.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaecortoba.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+
+\DeclareFontFamily{LAE}{aecortoba}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aecortoba}{m}{n}{<-> s*[1.25] aecortoba}{}
+\DeclareFontShape{LAE}{aecortoba}{bx}{n}{<-> ssub * aecortoba/m/n}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaedimnah.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaedimnah.fd
new file mode 100644
index 0000000000..9696bc5367
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaedimnah.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaedimnah.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaedimnah.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{aedimnah}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aedimnah}{m}{n}{<-> s*[1.25] aedimnah}{}
+
+\DeclareFontShape{LAE}{aedimnah}{bx}{n}{<-> ssub * aedimnah/m/n}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaefurat.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaefurat.fd
new file mode 100644
index 0000000000..3a2f935ae0
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaefurat.fd
@@ -0,0 +1,21 @@
+%%
+%% This is file `laeaefurat.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaefurat.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{aefurat}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aefurat}{m}{n}{<-> s*[1.25] aefurat}{}
+\DeclareFontShape{LAE}{aefurat}{bx}{n}{<-> ssub * aefurat/m/n}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaegranada.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaegranada.fd
new file mode 100644
index 0000000000..e8ff6dad6a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaegranada.fd
@@ -0,0 +1,28 @@
+%%
+%% This is file `laeaegranada.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaegranada.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{aegranada}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aegranada}{m}{n}{<-> s*[1.25] aegranada}{}
+\DeclareFontShape{LAE}{aegranada}{m}{it}{<-> ssub * aegranada/m/n }{}
+\DeclareFontShape{LAE}{aegranada}{m}{sl}{<-> ssub * aegranada/m/n }{}
+\DeclareFontShape{LAE}{aegranada}{bx}{n}{<-> ssub * aegranada/m/n }{}
+\DeclareFontShape{LAE}{aegranada}{bx}{it}{<-> ssub * aegranada/m/n }{}
+\DeclareFontShape{LAE}{aegranada}{bx}{sl}{<-> ssub * aegranada/m/n }{}
+\DeclareFontShape{LAE}{aegranada}{b}{n}{<-> ssub * aegranada/m/n }{}
+\DeclareFontShape{LAE}{aegranada}{b}{sl}{<-> ssub * aegranada/m/n }{}
+\DeclareFontShape{LAE}{aegranada}{b}{it}{<-> ssub * aegranada/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaegraph.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaegraph.fd
new file mode 100644
index 0000000000..0418e9b737
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaegraph.fd
@@ -0,0 +1,21 @@
+%%
+%% This is file `laeaegraph.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaegraph.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{aegraph}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aegraph}{m}{n}{<-> s*[1.25] aegraph }{}
+\DeclareFontShape{LAE}{aegraph}{bx}{n}{<-> ssub * aegraph/m/n}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaehani.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaehani.fd
new file mode 100644
index 0000000000..8c16e43d22
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaehani.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaehani.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaehani.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aehani}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aehani}{m}{n}{<-> s*[1.25] aehani }{}
+\DeclareFontShape{LAE}{aehani}{bx}{n}{<-> ssub * aehani/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaehor.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaehor.fd
new file mode 100644
index 0000000000..3ea7694501
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaehor.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaehor.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaehor.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aehor}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aehor}{m}{n}{<-> s*[1.25] aehor }{}
+\DeclareFontShape{LAE}{aehor}{bx}{n}{<-> ssub * aehor }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaekayrawan.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaekayrawan.fd
new file mode 100644
index 0000000000..c4261cb54a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaekayrawan.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaekayrawan.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaekayrawan.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aekayrawan}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aekayrawan}{m}{n}{<-> s*[1.25] aekayrawan }{}
+\DeclareFontShape{LAE}{aekayrawan}{bx}{n}{<-> ssub * aekayrawan/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaekhalid.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaekhalid.fd
new file mode 100644
index 0000000000..5da33af061
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaekhalid.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaekhalid.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaekhalid.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aekhalid}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aekhalid}{m}{n}{<-> s*[1.25] aekhalid }{}
+\DeclareFontShape{LAE}{aekhalid}{bx}{n}{<-> ssub * aekhalid/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaemashq.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaemashq.fd
new file mode 100644
index 0000000000..05e9513fba
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaemashq.fd
@@ -0,0 +1,21 @@
+%%
+%% This is file `laeaemashq.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaemashq.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{aemashq}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aemashq}{m}{n}{<-> s*[1.25]aemashq }{}
+\DeclareFontShape{LAE}{aemashq}{bx}{n}{<-> ssub * aemashq/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaemetal.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaemetal.fd
new file mode 100644
index 0000000000..35f6c66a6e
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaemetal.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaemetal.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaemetal.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aemetal}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aemetal}{m}{n}{<-> s*[1.25] aemetal }{}
+\DeclareFontShape{LAE}{aemetal}{bx}{n}{<-> ssub * aemetal/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaenada.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaenada.fd
new file mode 100644
index 0000000000..5ecbebb2a9
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaenada.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaenada.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaenada.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aenada}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aenada}{m}{n}{<-> s*[1.25] aenada }{}
+\DeclareFontShape{LAE}{aenada}{bx}{n}{<-> ssub * aenada/m/n}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaenagham.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaenagham.fd
new file mode 100644
index 0000000000..c8fb4c1878
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaenagham.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaenagham.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaenagham.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aenagham}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aenagham}{m}{n}{<-> s*[1.25] aenagham }{}
+\DeclareFontShape{LAE}{aenagham}{bx}{n}{<-> ssub * aenagham/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaenice.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaenice.fd
new file mode 100644
index 0000000000..39e3d057d1
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaenice.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaenice.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaenice.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aenice}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aenice}{m}{n}{<-> s*[1.25] aenice }{}
+\DeclareFontShape{LAE}{aenice}{bx}{n}{<-> ssub * aenice/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaeostorah.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaeostorah.fd
new file mode 100644
index 0000000000..78100a804a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaeostorah.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaeostorah.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaeostorah.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aeostorah}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aeostorah}{m}{n}{<-> s*[1.25] aeostorah }{}
+\DeclareFontShape{LAE}{aeostorah}{bx}{n}{<-> ssub * aeostorah }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaeouhod.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaeouhod.fd
new file mode 100644
index 0000000000..8a2448da21
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaeouhod.fd
@@ -0,0 +1,23 @@
+%%
+%% This is file `laeaeouhod.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaeouhod.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aeouhod}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aeouhod}{m}{n}{<-> s*[1.25] aeouhod }{}
+
+\DeclareFontShape{LAE}{aeouhod}{bx}{n}{<-> ssub * aeouhod/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaepetra.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaepetra.fd
new file mode 100644
index 0000000000..b8117e0500
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaepetra.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaepetra.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaepetra.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aepetra}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aepetra}{m}{n}{<-> s*[1.25] aepetra }{}
+\DeclareFontShape{LAE}{aepetra}{bx}{n}{<-> ssub * aepetra/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaerehan.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaerehan.fd
new file mode 100644
index 0000000000..40a2bd407c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaerehan.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaerehan.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaerehan.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aerehan}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aerehan}{m}{n}{<-> s*[1.25] aerehan }{}
+\DeclareFontShape{LAE}{aerehan}{bx}{n}{<-> ssub * aerehan }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaesalem.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaesalem.fd
new file mode 100644
index 0000000000..98437d9feb
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaesalem.fd
@@ -0,0 +1,23 @@
+%%
+%% This is file `laeaesalem.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaesalem.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aesalem}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aesalem}{m}{n}{<-> s*[1.25] aesalem }{}
+
+\DeclareFontShape{LAE}{aesalem}{bx}{n}{<-> ssub * aesalem/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaeshado.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaeshado.fd
new file mode 100644
index 0000000000..35e138913d
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaeshado.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaeshado.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaeshado.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aeshado}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aeshado}{m}{n}{<-> s*[1.25] aeshado }{}
+\DeclareFontShape{LAE}{aeshado}{bx}{n}{<-> ssub * aeshado/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaesharjah.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaesharjah.fd
new file mode 100644
index 0000000000..fb48eb199e
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaesharjah.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaesharjah.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaesharjah.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aesharjah}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aesharjah}{m}{n}{<-> s*[1.25] aesharjah }{}
+\DeclareFontShape{LAE}{aesharjah}{bx}{n}{<-> ssub * aesharjah/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaesindibad.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaesindibad.fd
new file mode 100644
index 0000000000..7f5f937af0
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaesindibad.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaesindibad.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaesindibad.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aesindibad}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aesindibad}{m}{n}{<-> s*[1.25] aesindibad }{}
+\DeclareFontShape{LAE}{aesindibad}{bx}{n}{<-> ssub * aesindibad/m/n}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaetarablus.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaetarablus.fd
new file mode 100644
index 0000000000..9d0cfeb270
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaetarablus.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaetarablus.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaetarablus.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aetarablus}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aetarablus}{m}{n}{<-> s*[1.25] aetarablus }{}
+\DeclareFontShape{LAE}{aetarablus}{bx}{n}{<-> ssub * aetarablus/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeaetholoth.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaetholoth.fd
new file mode 100644
index 0000000000..0043ae0e5b
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeaetholoth.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeaetholth.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeaetholth.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aetholoth}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aetholoth}{m}{n}{<-> s*[1.25] aetholoth }{}
+\DeclareFontShape{LAE}{aetholoth}{bx}{n}{<-> ssub * aetholoth/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeandlso.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeandlso.fd
new file mode 100644
index 0000000000..43f67fcff5
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeandlso.fd
@@ -0,0 +1,22 @@
+%%
+%% This is file `laeandlso.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeandlso.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{andlso}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{andlso}{m}{n}{<-> s*[1.25] andlso }{}
+\DeclareFontShape{LAE}{andlso}{bx}{n}{<-> ssub * andlso/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeararial.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeararial.fd
new file mode 100644
index 0000000000..b44f54b5f3
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeararial.fd
@@ -0,0 +1,24 @@
+%%
+%% This is file `laeararial.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeararial.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+
+\DeclareFontFamily{LAE}{ararial}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{ararial}{m}{n}{<-> s*[1.25] ararial }{}
+\DeclareFontShape{LAE}{ararial}{b}{n}{<-> s*[1.25] ararialbd }{}
+\DeclareFontShape{LAE}{ararial}{bx}{n}{<-> ssub * ararial/b/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laearcour.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laearcour.fd
new file mode 100644
index 0000000000..3de2034ce5
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laearcour.fd
@@ -0,0 +1,23 @@
+%%
+%% This is file `laeararial.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeararial.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{arcour}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{arcour}{m}{n}{<-> s*[1.25] arcour }{}
+\DeclareFontShape{LAE}{arcour}{b}{n}{<-> s*[1.25] arcourbd }{}
+\DeclareFontShape{LAE}{arcour}{bx}{n}{<-> ssub * arcour/b/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laearomega.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laearomega.fd
new file mode 100644
index 0000000000..92a62bedc2
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laearomega.fd
@@ -0,0 +1,24 @@
+%%
+%% This is file `laearomega.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laearomega.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{aromega}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{aromega}{m}{n}{<-> s*[1.25] aromega }{}
+\DeclareFontShape{LAE}{aromega}{b}{n}{<-> s*[1.25] aromegab}{}
+\DeclareFontShape{LAE}{aromega}{bx}{n}{<-> ssub * aromega/b/n}{}
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laearsimpo.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laearsimpo.fd
new file mode 100644
index 0000000000..f1f8aff2e8
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laearsimpo.fd
@@ -0,0 +1,23 @@
+%%
+%% This is file `laearsimpo.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laearsimpo.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{arsimpo}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{arsimpo}{m}{n}{<-> s*[1.25] arsimpo }{}
+\DeclareFontShape{LAE}{arsimpo}{b}{n}{<-> s*[1.25] arsimpbdo}{}
+\DeclareFontShape{LAE}{arsimpo}{bx}{n}{<-> ssub * arsimpo/b/n}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeartimes.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeartimes.fd
new file mode 100644
index 0000000000..26efd0c208
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeartimes.fd
@@ -0,0 +1,23 @@
+%%
+%% This is file `laeartimes.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laeartimes.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{artimes}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{artimes}{m}{n}{<-> s*[1.25] artimes }{}
+\DeclareFontShape{LAE}{artimes}{b}{n}{<-> s*[1.25] artimesbd }{}
+\DeclareFontShape{LAE}{artimes}{bx}{n}{<-> ssub * artimes/b/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeasv.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laeasv.fd
new file mode 100644
index 0000000000..3ead1d25e7
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeasv.fd
@@ -0,0 +1,19 @@
+%%
+%% This is file `laeasv.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+\ProvidesFile{laeasv.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{asv}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{asv}{m}{n}{<-> s*[1.2] asv}{} %s*[1.25]
+\DeclareFontShape{LAE}{asv}{bx}{n}{<-> s*[1.2] asv-bold}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laecmr.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laecmr.fd
new file mode 100644
index 0000000000..7f8485c777
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laecmr.fd
@@ -0,0 +1,31 @@
+%%
+%% This is file `laecmr.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laecmr.fd}
+ [2006/01/01 v0.1 LaTeX Arabic default font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{cmr}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{cmr}{m}{n}{<-> s*[1.25] aealmohanadb }{}
+%%%%%%% Italicized shape
+\DeclareFontShape{LAE}{cmr}{m}{it}{<-> s*[1.25] aedimnah }{}
+\DeclareFontShape{LAE}{cmr}{m}{sl}{<-> ssub * cmr/m/it }{}
+\DeclareFontShape{LAE}{cmr}{m}{sc}{<-> s*[1.25] aenada }{}
+%%%%%%% Bold extended series
+\DeclareFontShape{LAE}{cmr}{b}{n}{<-> s*[1.25] aealmateen }{}
+\DeclareFontShape{LAE}{cmr}{bx}{n}{<-> ssub * cmr/b/n }{}
+%%%%%%% Bold extended (Italic) series
+\DeclareFontShape{LAE}{cmr}{bx}{sl}{<-> ssub * cmr/b/n }{}
+\DeclareFontShape{LAE}{cmr}{bx}{it}{<-> ssub * cmr/b/n }{}
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laecmss.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laecmss.fd
new file mode 100644
index 0000000000..ebc4c9114e
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laecmss.fd
@@ -0,0 +1,29 @@
+%%
+%% This is file `laecmss.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laecmss.fd}
+ [2006/01/01 v0.1 LaTeX Arabic default font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{cmss}{\hyphenchar\font=-1}%
+\DeclareFontShape{LAE}{cmss}{m}{n}{<-> s*[1.25] aesindibad }{}
+%%%%%%% Italicized shape
+\DeclareFontShape{LAE}{cmss}{m}{it}{<-> ssub * cmss/m/n }{}
+\DeclareFontShape{LAE}{cmss}{m}{sl}{<-> ssub * cmss/m/n }{}
+\DeclareFontShape{LAE}{cmss}{m}{sc}{<-> ssub * cmss/m/n }{}
+%%%%%%% Bold extended series
+\DeclareFontShape{LAE}{cmss}{b}{n}{<-> s*[1.25] aegraph }{}
+\DeclareFontShape{LAE}{cmss}{bx}{n}{<-> ssub * cmss/b/n }{}
+%%%%%%% Bold extended (Italic) series
+\DeclareFontShape{LAE}{cmss}{bx}{sl}{<-> ssub * cmss/b/n }{}
+\DeclareFontShape{LAE}{cmss}{bx}{it}{<-> ssub * cmss/b/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laecmtt.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laecmtt.fd
new file mode 100644
index 0000000000..d496634736
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laecmtt.fd
@@ -0,0 +1,29 @@
+%%
+%% This is file `laecmtt.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laecmtt.fd}
+ [2006/01/01 v0.1 LaTeX Arabic default font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{cmtt}{\hyphenchar\font=-1}%
+\DeclareFontShape{LAE}{cmtt}{m}{n}{<-> s*[1.25] aenice }{}
+%%%%%%% Italicized shape
+\DeclareFontShape{LAE}{cmtt}{m}{it}{<-> ssub * cmtt/m/n }{}
+\DeclareFontShape{LAE}{cmtt}{m}{sl}{<-> ssub * cmtt/m/n }{}
+\DeclareFontShape{LAE}{cmtt}{m}{sc}{<-> ssub * cmtt/m/n }{}
+%%%%%%% Bold extended series
+\DeclareFontShape{LAE}{cmtt}{b}{n}{<-> s*[1.25] aegraph }{}
+\DeclareFontShape{LAE}{cmtt}{bx}{n}{<-> ssub * cmtt/b/n }{}
+%%%%%%% Bold extended (Italic) series
+\DeclareFontShape{LAE}{cmtt}{bx}{sl}{<-> ssub * cmtt/b/n }{}
+\DeclareFontShape{LAE}{cmtt}{bx}{it}{<-> ssub * cmtt/b/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laedthuluth.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laedthuluth.fd
new file mode 100644
index 0000000000..f6323e16eb
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laedthuluth.fd
@@ -0,0 +1,19 @@
+%%
+%% This is file `laedthuluth.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+\ProvidesFile{laedthuluth.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{dthuluth}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{dthuluth}{m}{n}{<-> s*[1.25] dthuluth}{}
+\DeclareFontShape{LAE}{dthuluth}{bx}{n}{<-> s*[1.25] dthuluth}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laedtpn.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laedtpn.fd
new file mode 100644
index 0000000000..477b90e4fc
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laedtpn.fd
@@ -0,0 +1,19 @@
+%%
+%% This is file `laedtpn.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+\ProvidesFile{laedtpn.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{dtpn}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{dtpn}{m}{n}{<-> s*[1.25] dtpn}{}
+\DeclareFontShape{LAE}{dtpn}{bx}{n}{<-> s*[1.25] dtpn}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laedtpnsp.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laedtpnsp.fd
new file mode 100644
index 0000000000..b9b26585ff
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laedtpnsp.fd
@@ -0,0 +1,19 @@
+%%
+%% This is file `laedtpnsp.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+\ProvidesFile{laedtpnsp.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{dtpn}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{dtpnsp}{m}{n}{<-> s*[1.25] dtpnsp}{}
+\DeclareFontShape{LAE}{dtpnsp}{bx}{n}{<-> s*[1.25] dtpnsp}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeenc.def b/language/arabic/arabi/arabi/texmf/latex/arabi/laeenc.def
new file mode 100644
index 0000000000..85d3731f31
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeenc.def
@@ -0,0 +1,125 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: laeenc.def
+%%
+\ProvidesFile{laeenc.def}
+ [2006/01/01 v0.1 Local Arabic font encoding (test version: may change)]
+
+\DeclareFontEncoding{LAE}{}{}
+\DeclareFontSubstitution{LAE}{cmr}{m}{n}
+\DeclareErrorFont{LAE}{cmr}{m}{n}{10}
+
+\ProvideTextCommand{\textcopyright}{LAE}{\textcircled{\@latin{c}}}
+\ProvideTextCommand{\textregistered}{LAE}{\textcircled{\scshape%
+ \@latin{r}}}
+\ProvideTextCommand{\texttrademark}{LAE}{\textsuperscript{\@latin{TM}}}
+
+\DeclareTextSymbol{\hamza}{LAE}{186}
+\DeclareTextSymbol{\alefmadda}{LAE}{6}
+\DeclareTextSymbol{\alefhamza}{LAE}{2}
+\DeclareTextSymbol{\wawhamza}{LAE}{165}
+\DeclareTextSymbol{\aleflowerhamza}{LAE}{4}
+\DeclareTextSymbol{\yahamza}{LAE}{183}
+\DeclareTextSymbol{\alef}{LAE}{65}
+\DeclareTextSymbol{\baa}{LAE}{98}
+\DeclareTextSymbol{\T}{LAE}{84} %taa marbuuta
+\DeclareTextSymbol{\taa}{LAE}{116}
+\DeclareTextSymbol{\thaa}{LAE}{16}
+\DeclareTextSymbol{\jeem}{LAE}{20} %geem
+\DeclareTextSymbol{\Haa}{LAE}{24}
+\DeclareTextSymbol{\kha}{LAE}{28}
+\DeclareTextSymbol{\dal}{LAE}{100}
+\DeclareTextSymbol{\dhal}{LAE}{64}
+\DeclareTextSymbol{\ra}{LAE}{114}
+\DeclareTextSymbol{\zay}{LAE}{122}
+\DeclareTextSymbol{\seen}{LAE}{115}
+\DeclareTextSymbol{\sheen}{LAE}{75}
+\DeclareTextSymbol{\sad}{LAE}{79}
+\DeclareTextSymbol{\dad}{LAE}{83}
+\DeclareTextSymbol{\Ta}{LAE}{87}
+\DeclareTextSymbol{\za}{LAE}{92}
+\DeclareTextSymbol{\ayn}{LAE}{96}
+\DeclareTextSymbol{\ghayn}{LAE}{140}
+%
+\DeclareTextSymbol{\keshchar}{LAE}{254}%tatweel
+\DeclareTextSymbol{\fa}{LAE}{102}
+\DeclareTextSymbol{\qaf}{LAE}{113}
+\DeclareTextSymbol{\kaf}{LAE}{107}
+\DeclareTextSymbol{\lam}{LAE}{108}
+\DeclareTextSymbol{\meem}{LAE}{109}
+\DeclareTextSymbol{\nun}{LAE}{110}
+\DeclareTextSymbol{\ha}{LAE}{104}
+\DeclareTextSymbol{\waw}{LAE}{119}
+\DeclareTextSymbol{\ya}{LAE}{121}
+\DeclareTextSymbol{\alefmaqsura}{LAE}{89}%170
+%
+%%%%%%%%%%%% Vowels
+%
+% Firt, Vowels that come only at the end of a word
+%
+\DeclareTextSymbol{\nasb}{LAE}{190}
+\DeclareTextSymbol{\raff}{LAE}{191}
+\DeclareTextSymbol{\jarr}{LAE}{192}
+%
+\DeclareTextSymbol{\shaddanasb}{LAE}{198}
+\DeclareTextSymbol{\shaddaraff}{LAE}{199}
+\DeclareTextSymbol{\shaddajarr}{LAE}{200}
+%
+% Then, Vowels that come anywhere in a word
+%
+\DeclareTextSymbol{\fatha}{LAE}{97}
+\DeclareTextSymbol{\damma}{LAE}{117}
+\DeclareTextSymbol{\kasra}{LAE}{105}
+\DeclareTextSymbol{\shadda}{LAE}{204}
+\DeclareTextSymbol{\sukun}{LAE}{34}
+%
+\DeclareTextSymbol{\shaddafatha}{LAE}{201}
+\DeclareTextSymbol{\shaddadamma}{LAE}{202}
+\DeclareTextSymbol{\shaddakasra}{LAE}{203}
+%
+% Some special ones for LAE!
+%
+\DeclareTextCommand{\tatweel}{LAE}{\keshchar}
+\DeclareTextSymbol{\llahchar}{LAE}{252}
+\DeclareTextSymbol{\Decimalchar}{LAE}{251}
+%%
+%% \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 \~}
+%%
+\endinput
+
+
+
+
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laeenc.dfu b/language/arabic/arabi/arabi/texmf/latex/arabi/laeenc.dfu
new file mode 100644
index 0000000000..4792f83885
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laeenc.dfu
@@ -0,0 +1,127 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: laeenc.dfu
+
+ \ProvidesFile{laeenc.dfu}
+ [2006/01/01 v1.0 UTF-8 support for Arabic and Farsi for use with inputenc]
+%%%%%%%%%%
+% The foolowing Arabic characters are put in the place of
+% corresponding Latin ones.
+%
+\DeclareUnicodeCharacter{066A}{\%}%066A;afii57381;ARABIC PERCENT SIGN
+\DeclareUnicodeCharacter{060C}{,}%060C;afii57388;ARABIC COMMA
+\DeclareUnicodeCharacter{0660}{0}%0660;afii57392;ARABIC-INDIC DIGIT ZERO
+\DeclareUnicodeCharacter{0661}{1}%0661;afii57393;ARABIC-INDIC DIGIT ONE
+\DeclareUnicodeCharacter{0662}{2}%0662;afii57394;ARABIC-INDIC DIGIT TWO
+\DeclareUnicodeCharacter{0663}{3}%0663;afii57395;ARABIC-INDIC DIGIT THREE
+\DeclareUnicodeCharacter{0664}{4}%0664;afii57396;ARABIC-INDIC DIGIT FOUR
+\DeclareUnicodeCharacter{0665}{5}%0665;afii57397;ARABIC-INDIC DIGIT FIVE
+\DeclareUnicodeCharacter{0666}{6}%0666;afii57398;ARABIC-INDIC DIGIT SIX
+\DeclareUnicodeCharacter{0667}{7}%0667;afii57399;ARABIC-INDIC DIGIT SEVEN
+\DeclareUnicodeCharacter{0668}{8}%0668;afii57400;ARABIC-INDIC DIGIT EIGHT
+\DeclareUnicodeCharacter{0669}{9}%0669;afii57401;ARABIC-INDIC DIGIT NINE
+\DeclareUnicodeCharacter{061B}{;}%061B;afii57403;ARABIC SEMICOLON
+\DeclareUnicodeCharacter{061F}{?}%061F;afii57407;ARABIC QUESTION MARK
+%%%%%%%%%%%%%%%
+\DeclareUnicodeCharacter{0621}{\hamza}%0621;afii57409;ARABIC LETTER HAMZA
+\DeclareUnicodeCharacter{0622}{\alefmadda}%0622;afii57410;ARABIC LETTER ALEF WITH MADDA ABOVE
+\DeclareUnicodeCharacter{0623}{\alefhamza}%0623;afii57411;ARABIC LETTER ALEF WITH HAMZA ABOVE
+\DeclareUnicodeCharacter{0624}{\wawhamza} % 0624;afii57412;ARABIC LETTER WAW WITH HAMZA ABOVE
+\DeclareUnicodeCharacter{0625}{\aleflowerhamza}%0625;afii57413;ARABIC LETTER ALEF WITH HAMZA BELOW
+\DeclareUnicodeCharacter{0626}{\yahamza}%0626;afii57414;ARABIC LETTER YEH WITH HAMZA ABOVE
+\DeclareUnicodeCharacter{0627}{\alef}%0627;afii57415;ARABIC LETTER ALEF
+\DeclareUnicodeCharacter{0628}{\baa}%0628;afii57416;ARABIC LETTER BEH
+\DeclareUnicodeCharacter{0629}{\T}%0629;afii57417;ARABIC LETTER TEH MARBUTA
+\DeclareUnicodeCharacter{062A}{\taa}%062A;afii57418;ARABIC LETTER TEH
+\DeclareUnicodeCharacter{062B}{\thaa}%062B;afii57419;ARABIC LETTER THEH
+\DeclareUnicodeCharacter{062C}{\jeem}%062C;afii57420;ARABIC LETTER JEEM
+\DeclareUnicodeCharacter{062D}{\Haa}%062D;afii57421;ARABIC LETTER HAH
+\DeclareUnicodeCharacter{062E}{\kha}%062E;afii57422;ARABIC LETTER KHAH
+\DeclareUnicodeCharacter{062F}{\dal}%062F;afii57423;ARABIC LETTER DAL
+\DeclareUnicodeCharacter{0630}{\dhal}%0630;afii57424;ARABIC LETTER THAL
+\DeclareUnicodeCharacter{0631}{\ra}%0631;afii57425;ARABIC LETTER REH
+\DeclareUnicodeCharacter{0632}{\zay}%0632;afii57426;ARABIC LETTER ZAIN
+\DeclareUnicodeCharacter{0633}{\seen}%0633;afii57427;ARABIC LETTER SEEN
+\DeclareUnicodeCharacter{0634}{\sheen}%0634;afii57428;ARABIC LETTER SHEEN
+\DeclareUnicodeCharacter{0635}{\sad}%0635;afii57429;ARABIC LETTER SAD
+\DeclareUnicodeCharacter{0636}{\dad}%0636;afii57430;ARABIC LETTER DAD
+\DeclareUnicodeCharacter{0637}{\Ta}%0637;afii57431;ARABIC LETTER TAH
+\DeclareUnicodeCharacter{0638}{\za}%0638;afii57432;ARABIC LETTER ZAH
+\DeclareUnicodeCharacter{0639}{\ayn}%0639;afii57433;ARABIC LETTER AIN
+\DeclareUnicodeCharacter{063A}{\ghayn}%063A;afii57434;ARABIC LETTER GHAIN
+\DeclareUnicodeCharacter{0640}{\tatweel}%0640;afii57440;ARABIC TATWEEL
+\DeclareUnicodeCharacter{0641}{\fa} %0641;afii57441;ARABIC LETTER FEH
+\DeclareUnicodeCharacter{0642}{\qaf}%0642;afii57442;ARABIC LETTER QAF
+\DeclareUnicodeCharacter{0643}{\kaf}%0643;afii57443;ARABIC LETTER KAF
+\DeclareUnicodeCharacter{0644}{\lam}%0644;afii57444;ARABIC LETTER LAM
+\DeclareUnicodeCharacter{0645}{\meem}%0645;afii57445;ARABIC LETTER MEEM
+\DeclareUnicodeCharacter{0646}{\nun}%0646;afii57446;ARABIC LETTER NOON
+\DeclareUnicodeCharacter{0647}{\ha}%0647;afii57470;ARABIC LETTER HEH
+\DeclareUnicodeCharacter{0648}{\waw}%0648;afii57448;ARABIC LETTER WAW
+\DeclareUnicodeCharacter{0649}{\alefmaqsura}%0649;afii57449;ARABIC LETTER ALEF MAKSURA
+\DeclareUnicodeCharacter{064A}{\ya}%064A;afii57450;ARABIC LETTER YEH
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\DeclareUnicodeCharacter{064B}{\nasb}%064B;afii57451;ARABIC FATHATAN
+\DeclareUnicodeCharacter{064C}{\raff}%064C;afii57452;ARABIC DAMMATAN
+\DeclareUnicodeCharacter{064D}{\jarr}%064D;afii57453;ARABIC KASRATAN
+\DeclareUnicodeCharacter{064E}{\fatha}%064E;afii57454;ARABIC FATHA
+\DeclareUnicodeCharacter{064F}{\damma}%064F;afii57455;ARABIC DAMMA
+\DeclareUnicodeCharacter{0650}{\kasra}%0650;afii57456;ARABIC KASRA
+\DeclareUnicodeCharacter{0651}{\shadda}%0651;afii57457;ARABIC SHADDA
+\DeclareUnicodeCharacter{0652}{\sukun}%0652;afii57458;ARABIC SUKUN
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% The non-Arabic language characters used with languages
+% like Farsi, ...
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Farsi
+\DeclareUnicodeCharacter{067E}{\peh}%067E;afii57506;ARABIC LETTER PEH
+\DeclareUnicodeCharacter{0686}{\tcheh}%0686;afii57507;ARABIC LETTER TCHEH
+\DeclareUnicodeCharacter{0698}{\jeh}%0698;afii57508;ARABIC LETTER JEH
+\DeclareUnicodeCharacter{06A9}{\farsikaf}%06CC;afii?????;FARSI LETTER KAF
+\DeclareUnicodeCharacter{06AF}{\gaf}%06AF;afii57509;ARABIC LETTER GAF
+\DeclareUnicodeCharacter{06CC}{\farsiya}%06CC;afii?????;FARSI LETTER YEH
+% Farsi numbers !
+\DeclareUnicodeCharacter{06F0}{0}%06F0;afii57392;EXTENDED ARABIC-INDIC DIGIT ZERO
+\DeclareUnicodeCharacter{06F1}{1}%06F1;afii57393;EXTENDED ARABIC-INDIC DIGIT ONE
+\DeclareUnicodeCharacter{06F2}{2}%06F2;afii57394;EXTENDED ARABIC-INDIC DIGIT TWO
+\DeclareUnicodeCharacter{06F3}{3}%06F3;afii57395;EXTENDED ARABIC-INDIC DIGIT THREE
+\DeclareUnicodeCharacter{06F4}{4}%06F4;afii57396;EXTENDED ARABIC-INDIC DIGIT FOUR
+\DeclareUnicodeCharacter{06F5}{5}%06F5;afii57397;EXTENDED ARABIC-INDIC DIGIT FIVE
+\DeclareUnicodeCharacter{06F6}{6}%06F6;afii57398;EXTENDED ARABIC-INDIC DIGIT SIX
+\DeclareUnicodeCharacter{06F7}{7}%06F7;afii57399;EXTENDED ARABIC-INDIC DIGIT SEVEN
+\DeclareUnicodeCharacter{06F8}{8}%06F8;afii57400;EXTENDED ARABIC-INDIC DIGIT EIGHT
+\DeclareUnicodeCharacter{06F9}{9}%06F9;afii57401;EXTENDED ARABIC-INDIC DIGIT NINE
+%
+% Some important special chartacters
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\DeclareUnicodeCharacter{200C}{\ZWNJ}%200C;ZWNJ%<< * is a local trick in our font to force final form
+ %and the {} to force initial form of the next character
+\DeclareUnicodeCharacter{06D5}{\noboundary}%200D;ZWJ
+
+
+
+\endinput
+
+
+
+
+
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laekacstbook.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laekacstbook.fd
new file mode 100644
index 0000000000..8ee10c6dc2
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laekacstbook.fd
@@ -0,0 +1,29 @@
+%%
+%% This is file `laekacstbook.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laekacstbook.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{kacstbook}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{kacstbook}{m}{n}{<-> s*[1.25] kacstbook }{}
+\DeclareFontShape{LAE}{kacstbook}{m}{it}{<-> s*[1.25] kacstbookitalic }{}
+\DeclareFontShape{LAE}{kacstbook}{m}{sl}{<-> s*[1.25] kacstbookitalic }{}
+\DeclareFontShape{LAE}{kacstbook}{bx}{n}{<-> s*[1.25] kacstbookbold }{}
+\DeclareFontShape{LAE}{kacstbook}{b}{n}{<-> s*[1.25] kacstbookbold }{}
+\DeclareFontShape{LAE}{kacstbook}{bx}{it}{<-> s*[1.25] kacstbookbolditalic }{}
+\DeclareFontShape{LAE}{kacstbook}{b}{it}{<-> s*[1.25] kacstbookbolditalic }{}
+\DeclareFontShape{LAE}{kacstbook}{bx}{sl}{<-> s*[1.25] kacstbookbolditalic }{}
+\DeclareFontShape{LAE}{kacstbook}{b}{sl}{<-> s*[1.25] kacstbookbolditalic }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laemaghribi.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laemaghribi.fd
new file mode 100644
index 0000000000..bc12ef2ddc
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laemaghribi.fd
@@ -0,0 +1,24 @@
+%%
+%% This is file `laemaghribi.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laemaghribi.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{maghribi}{\hyphenchar\font=-1}% s*[1.25]s*[1.25]
+
+\DeclareFontShape{LAE}{maghribi}{m}{n}{<-> s*[1.2] maghribi1 }{}
+\DeclareFontShape{LAE}{maghribi}{b}{n}{<-> s*[1.2] maghribi1}{}
+\DeclareFontShape{LAE}{maghribi}{bx}{n}{<-> ssub * maghribi/b/n}{}
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laenaskhi.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laenaskhi.fd
new file mode 100644
index 0000000000..8ec4a12cce
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laenaskhi.fd
@@ -0,0 +1,19 @@
+%%
+%% This is file `laenaskhi.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+\ProvidesFile{laenaskhi.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{naskhi}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{naskhi}{m}{n}{<-> s*[1.0] naskhi}{} %s*[1.25]
+\DeclareFontShape{LAE}{naskhi}{bx}{n}{<-> s*[1.0] naskhi}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laereqaa.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laereqaa.fd
new file mode 100644
index 0000000000..b798ba4b9f
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laereqaa.fd
@@ -0,0 +1,19 @@
+%%
+%% This is file `laereqaa.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+\ProvidesFile{laereqaa.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{reqaa}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{reqaa}{m}{n}{<-> s*[1.25] myreqaa}{}
+\DeclareFontShape{LAE}{reqaa}{bx}{n}{<-> s*[1.25] myreqaa}{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/laetraditionalarabic.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/laetraditionalarabic.fd
new file mode 100644
index 0000000000..1641189e17
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/laetraditionalarabic.fd
@@ -0,0 +1,28 @@
+%%
+%% This is file `laetraditionalarabic.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{laetraditionalarabic.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LAE}{traditionalarabic}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LAE}{traditionalarabic}{m}{n}{%
+ <-> s*[1.25] traditionalarabic }{}
+
+\DeclareFontShape{LAE}{traditionalarabic}{b}{n}{%
+ <-> s*[1.25] traditionalarabicbold }{}
+
+\DeclareFontShape{LAE}{traditionalarabic}{bx}{n}{%
+ <-> ssub * traditionalarabic/b/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lagally.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/lagally.sty
new file mode 100644
index 0000000000..fb2d471dfb
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lagally.sty
@@ -0,0 +1,80 @@
+
+%\ifx \ar@batcode \undefined \else
+%\message{ArabTeX is aleready loaded, No support is provided}
+%\message{with ArabTeX 7 bit input encoding}\expandafter \endinput
+%\fi
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% to test with ArabTeX input %%%%%%%%%%%%%%
+
+\initiate@active@char{_}
+\initiate@active@char{^}
+\initiate@active@char{.}
+\initiate@active@char{'}
+
+
+\expandafter\addto\csname extrasarabic\endcsname{%
+ \bbl@activate{_}\bbl@activate{^}\bbl@activate{.}\bbl@activate{'}
+%
+ }
+
+
+\expandafter\addto\csname noextrasarabic\endcsname{%
+ \bbl@deactivate{_}\bbl@deactivate{^}\bbl@deactivate{.}\bbl@deactivate{'}
+%
+}
+
+
+
+\declare@shorthand{arabic}{_h}{%g
+\textormath{\kha}{\sb{h}}}%
+\declare@shorthand{arabic}{_t}{%g
+\textormath{\thaa}{\sb{t}}}%
+\declare@shorthand{arabic}{_d}{%g
+\textormath{\dhal}{\sb{d}}}%
+\declare@shorthand{arabic}{_A}{%g
+\textormath{\alefmaqsura}{\sb{A}}}%
+\declare@shorthand{arabic}{_a}{%g
+\textormath{\keshchar}{\sb{a}}}%
+
+\declare@shorthand{arabic}{^g}{%g
+\textormath{\jeem}{\sp{g}}}%
+\declare@shorthand{arabic}{^s}{%g
+\textormath{\sheen}{\sp{s}}}%
+
+\declare@shorthand{arabic}{.g}{%g
+\textormath{\ghayn}{.g}}%
+\declare@shorthand{arabic}{.h}{%g
+\textormath{\Haa}{.h}}%
+\declare@shorthand{arabic}{.s}{%g
+\textormath{\sad}{.s}}%
+\declare@shorthand{arabic}{.d}{%g
+\textormath{\dad}{.d}}%
+\declare@shorthand{arabic}{.t}{%g
+\textormath{\Ta}{.t}}%
+\declare@shorthand{arabic}{.z}{%g
+\textormath{\za}{.z}}%
+
+\declare@shorthand{arabic}{'a}{%g
+\textormath{\alefhamza\ifx\vocalizetrue\fatha\fi}{'a}}%
+\declare@shorthand{arabic}{'u}{%g
+\textormath{\alefhamza\ifx\vocalizetrue\damma\fi}{'u}}%
+\declare@shorthand{arabic}{'i}{%g
+\textormath{\aleflowerhamza\ifx\vocalizetrue\kasra\fi}{'i}}%
+
+
+\declare@shorthand{arabic}{^u}{%g latin chars
+\textormath{\relax\damma}{}}%
+
+
+\addto\extrasarabic{\languageshorthands{arabic}}%
+
+
+
+
+\endinput
+
+
+
+
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfecmr.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfecmr.fd
new file mode 100644
index 0000000000..1977e32aee
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfecmr.fd
@@ -0,0 +1,29 @@
+%%
+%% This is file `lfecmr.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1a
+%%
+%%
+
+
+\ProvidesFile{lfecmr.fd}
+ [2006/12/01 v0.1a LaTeX default Farsi font description
+ (test version: may change)]
+
+\DeclareFontFamily{LFE}{cmr}{\hyphenchar\font=-1}%
+\DeclareFontShape{LFE}{cmr}{m}{n}{<-> s*[1.25] nazli }{}
+%%%%%%% Italicized shape
+\DeclareFontShape{LFE}{cmr}{m}{it}{<-> ssub * nazli/m/n }{}
+\DeclareFontShape{LFE}{cmr}{m}{sl}{<-> ssub * nazli/m/n }{}
+\DeclareFontShape{LFE}{cmr}{m}{sc}{<-> ssub * nazli/m/n }{}
+%%%%%%% Bold extended series
+\DeclareFontShape{LFE}{cmr}{b}{n}{<-> s*[1.25] titr }{}
+\DeclareFontShape{LFE}{cmr}{bx}{n}{<-> ssub * nazli/b/n }{}
+%%%%%%% Bold extended (Italic) series
+\DeclareFontShape{LFE}{cmr}{bx}{sl}{<-> ssub * nazli/b/n }{}
+\DeclareFontShape{LFE}{cmr}{bx}{it}{<-> ssub * nazli/b/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfecmss.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfecmss.fd
new file mode 100644
index 0000000000..9865bbe54b
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfecmss.fd
@@ -0,0 +1,29 @@
+%%
+%% This is file `lfecmss.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1a
+%%
+%%
+
+
+\ProvidesFile{lfecmss.fd}
+ [2006/12/01 v0.1a LaTeX default Farsi font description
+ (test version: may change)]
+
+\DeclareFontFamily{LAE}{cmss}{\hyphenchar\font=-1}%
+\DeclareFontShape{LAE}{cmss}{m}{n}{<-> s*[1.25] nazlib }{}
+%%%%%%% Italicized shape
+\DeclareFontShape{LAE}{cmss}{m}{it}{<-> ssub * cmss/m/n }{}
+\DeclareFontShape{LAE}{cmss}{m}{sl}{<-> ssub * cmss/m/n }{}
+\DeclareFontShape{LAE}{cmss}{m}{sc}{<-> ssub * cmss/m/n }{}
+%%%%%%% Bold extended series
+\DeclareFontShape{LAE}{cmss}{bx}{n}{<-> s*[1.25] nazlib }{}
+\DeclareFontShape{LAE}{cmss}{b}{n}{<-> ssub * cmss/bx/n }{}
+%%%%%%% Bold extended (Italic) series
+\DeclareFontShape{LAE}{cmss}{bx}{sl}{<-> ssub * cmss/bx/n }{}
+\DeclareFontShape{LAE}{cmss}{bx}{it}{<-> ssub * cmss/bx/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfecmtt.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfecmtt.fd
new file mode 100644
index 0000000000..43e36be495
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfecmtt.fd
@@ -0,0 +1,29 @@
+%%
+%% This is file `lfecmtt.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1a
+%%
+%%
+
+
+\ProvidesFile{lfecmtt.fd}
+ [2006/12/01 v0.1a LaTeX default Farsi font description
+ (test version: may change)]
+
+\DeclareFontFamily{LFE}{cmtt}{\hyphenchar\font=-1}%
+\DeclareFontShape{LFE}{cmtt}{m}{n}{<-> s*[1.25] homa }{}
+%%%%%%% Italicized shape
+\DeclareFontShape{LFE}{cmtt}{m}{it}{<-> ssub * cmtt/m/n }{}
+\DeclareFontShape{LFE}{cmtt}{m}{sl}{<-> ssub * cmtt/m/n }{}
+\DeclareFontShape{LFE}{cmtt}{m}{sc}{<-> ssub * cmtt/m/n }{}
+%%%%%%% Bold extended series
+\DeclareFontShape{LFE}{cmtt}{bx}{n}{<-> s*[1.25] homa }{}
+\DeclareFontShape{LFE}{cmtt}{b}{n}{<-> ssub * cmtt/bx/n }{}
+%%%%%%% Bold extended (Italic) series
+\DeclareFontShape{LFE}{cmtt}{bx}{sl}{<-> ssub * cmtt/bx/n }{}
+\DeclareFontShape{LFE}{cmtt}{bx}{it}{<-> ssub * cmtt/bx/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfeelham.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfeelham.fd
new file mode 100644
index 0000000000..775276a719
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfeelham.fd
@@ -0,0 +1,23 @@
+%%
+%% This is file `lfeelham.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfeelham.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LFE}{elham}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LFE}{elham}{m}{n}{<-> s*[1.25] elham }{}
+\DeclareFontShape{LFE}{elham}{bx}{n}{ <-> ssub * elham/m/n }{}
+\DeclareFontShape{LFE}{elham}{b}{n}{<-> ssub * elham/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfeenc.def b/language/arabic/arabi/arabi/texmf/latex/arabi/lfeenc.def
new file mode 100644
index 0000000000..a06f370a1a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfeenc.def
@@ -0,0 +1,151 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: lfeenc.def
+
+\ProvidesFile{lfeenc.def}
+ [2006/01/01 v0.1 Local Farsi font encoding (test version: may change)]
+
+\DeclareFontEncoding{LFE}{}{}
+\DeclareFontSubstitution{LFE}{cmr}{m}{n}
+\DeclareErrorFont{LFE}{cmr}{m}{n}{10}
+
+\ProvideTextCommand{\textcopyright}{LFE}{\textcircled{\@latin{c}}}
+\ProvideTextCommand{\textregistered}{LFE}{\textcircled{\scshape%
+ \@latin{r}}}
+\ProvideTextCommand{\texttrademark}{LFE}{\textsuperscript{\@latin{TM}}}
+
+\DeclareTextSymbol{\hamza}{LFE}{186}
+\DeclareTextSymbol{\alefmadda}{LFE}{6}
+\DeclareTextSymbol{\alefhamza}{LFE}{2}
+\DeclareTextSymbol{\wawhamza}{LFE}{165}
+\DeclareTextSymbol{\aleflowerhamza}{LFE}{4}
+\DeclareTextSymbol{\yahamza}{LFE}{183}
+\DeclareTextSymbol{\alef}{LFE}{65}
+\DeclareTextSymbol{\baa}{LFE}{98}
+\DeclareTextSymbol{\peh}{LFE}{112}
+\DeclareTextSymbol{\T}{LFE}{84} %taa marbuuta
+\DeclareTextSymbol{\taa}{LFE}{116}
+\DeclareTextSymbol{\thaa}{LFE}{16}
+\DeclareTextSymbol{\jeem}{LFE}{20} %geem
+\DeclareTextSymbol{\tcheh}{LFE}{99}
+\DeclareTextSymbol{\Haa}{LFE}{24}
+\DeclareTextSymbol{\kha}{LFE}{28}
+\DeclareTextSymbol{\dal}{LFE}{100}
+\DeclareTextSymbol{\dhal}{LFE}{64}
+\DeclareTextSymbol{\ra}{LFE}{114}
+\DeclareTextSymbol{\zay}{LFE}{122}
+\DeclareTextSymbol{\seen}{LFE}{115}
+\DeclareTextSymbol{\sheen}{LFE}{75}
+\DeclareTextSymbol{\sad}{LFE}{79}
+\DeclareTextSymbol{\dad}{LFE}{83}
+\DeclareTextSymbol{\Ta}{LFE}{87}
+\DeclareTextSymbol{\za}{LFE}{92}
+\DeclareTextSymbol{\ayn}{LFE}{96}
+\DeclareTextSymbol{\ghayn}{LFE}{140}
+\DeclareTextSymbol{\jeh}{LFE}{209}
+%
+\DeclareTextSymbol{\keshchar}{LFE}{254}%tatweel
+\DeclareTextSymbol{\fa}{LFE}{102}
+\DeclareTextSymbol{\qaf}{LFE}{113}
+\DeclareTextSymbol{\farsikaf}{LFE}{107}
+%
+\DeclareTextSymbol{\kaf}{LFE}{107}%added to use CP 1256
+%
+\DeclareTextSymbol{\gaf}{LFE}{103}
+\DeclareTextSymbol{\lam}{LFE}{108}
+\DeclareTextSymbol{\meem}{LFE}{109}
+\DeclareTextSymbol{\nun}{LFE}{110}
+\DeclareTextSymbol{\ha}{LFE}{104}
+\DeclareTextSymbol{\waw}{LFE}{119}
+\DeclareTextSymbol{\farsiya}{LFE}{121}
+%
+\DeclareTextSymbol{\ya}{LFE}{121}%added to use CP 1256
+%
+\DeclareTextSymbol{\alefmaqsura}{LFE}{89}
+%
+%%%%%%%%%%%% Vowels
+%
+% Firt, Vowels that come only at the end of a word
+%
+\DeclareTextSymbol{\nasb}{LFE}{190}
+\DeclareTextSymbol{\raff}{LFE}{191}
+\DeclareTextSymbol{\jarr}{LFE}{192}
+%
+\DeclareTextSymbol{\shaddanasb}{LFE}{198}
+\DeclareTextSymbol{\shaddaraff}{LFE}{199}
+\DeclareTextSymbol{\shaddajarr}{LFE}{200}
+%
+% Then, Vowels that come anywhere in a word
+%
+\DeclareTextSymbol{\fatha}{LFE}{97}
+\DeclareTextSymbol{\damma}{LFE}{117}
+\DeclareTextSymbol{\kasra}{LFE}{105}
+\DeclareTextSymbol{\shadda}{LFE}{204}
+\DeclareTextSymbol{\sukun}{LFE}{34}
+%
+\DeclareTextSymbol{\shaddafatha}{LFE}{201}
+\DeclareTextSymbol{\shaddadamma}{LFE}{202}
+\DeclareTextSymbol{\shaddakasra}{LFE}{203}
+%
+\DeclareTextCommand{\ZWNJ}{LFE}{{}}%\kern0ptZWNJ *to force final of previous char
+ %and + to force initian of next one
+%
+\DeclareTextCommand{\Farsimadda}{LFE}{}%Farsi madda accent
+\DeclareTextCommand{\Farsihamza}{LFE}{}%Farsi hamza accent
+\DeclareTextCommand{\Farsihamzabelow}{LFE}{}%Farsi hamza accent below
+
+%
+% Some special ones for LFE!
+%
+\DeclareTextCommand{\tatweel}{LFE}{\keshchar}
+% a little utility !
+\DeclareTextCommand{\Notdef}{LFE}{}%!!!!!!!!!!!
+% The macro \cs{rial} is defined in the `farsi.ldf' file
+\DeclareTextSymbol{\rialchar}{LFE}{253}
+%
+\DeclareTextSymbol{\llahchar}{LFE}{252}
+\DeclareTextSymbol{\Decimalchar}{LFE}{251}
+
+
+
+%%
+%% \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 \~}
+%%
+\endinput
+
+
+
+
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfefandlso.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfefandlso.fd
new file mode 100644
index 0000000000..599dbee845
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfefandlso.fd
@@ -0,0 +1,21 @@
+%%
+%% This is file `lfefandlso.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfefandlso.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+\DeclareFontFamily{LFE}{fandlso}{\hyphenchar\font=-1}%
+\DeclareFontShape{LFE}{fandlso}{m}{n}{<-> s*[1.25] fandlso }{}
+\DeclareFontShape{LFE}{fandlso}{bx}{n}{<-> ssub * fandlso/m/n }{}
+\DeclareFontShape{LFE}{fandlso}{b}{n}{<-> ssub * fandlso/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfefarsismpl.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfefarsismpl.fd
new file mode 100644
index 0000000000..2b710c85b3
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfefarsismpl.fd
@@ -0,0 +1,23 @@
+%%
+%% This is file `lfefarsismpl.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfefarsismpl.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LFE}{farsismpl}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LFE}{farsismpl}{m}{n}{<-> s*[1.25] frsspbl }{}
+\DeclareFontShape{LFE}{farsismpl}{bx}{n}{<-> s*[1.25] frsspout }{}
+\DeclareFontShape{LFE}{farsismpl}{b}{n}{<-> ssub * farsismpl/bx/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfefrarial.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfefrarial.fd
new file mode 100644
index 0000000000..ac223f0727
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfefrarial.fd
@@ -0,0 +1,24 @@
+%%
+%% This is file `lfefrarial.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfefrarial.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LFE}{frarial}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LFE}{frarial}{m}{n}{<-> s*[1.25] frarial }{}
+\DeclareFontShape{LFE}{frarial}{b}{n}{<-> s*[1.25] frarialb }{}
+\DeclareFontShape{LFE}{frarial}{bx}{n}{<-> ssub * frarial/b/n }{}
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfefrtimes.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfefrtimes.fd
new file mode 100644
index 0000000000..b858a8baeb
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfefrtimes.fd
@@ -0,0 +1,23 @@
+%%
+%% This is file `lfefrtimes.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfefrtimes.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LFE}{frtimes}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LFE}{frtimes}{m}{n}{<-> s*[1.25] frtimes }{}
+\DeclareFontShape{LFE}{frtimes}{bx}{n}{<-> s*[1.25] frtimesbd }{}
+\DeclareFontShape{LFE}{frtimes}{b}{n}{<-> ssub * frtimes/bx/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfeftraditionalarabic.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfeftraditionalarabic.fd
new file mode 100644
index 0000000000..9620b8a04c
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfeftraditionalarabic.fd
@@ -0,0 +1,26 @@
+%%
+%% This is file `lfefTraditionalArabic.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfefTraditionalArabic.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LFE}{ftraditionalarabic}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LFE}{ftraditionalarabic}{m}{n}{%
+ <-> s*[1.25] ftraditionalarabic }{}
+\DeclareFontShape{LFE}{ftraditionalarabic}{bx}{n}{%
+ <-> s*[1.25] ftraditionalarabicbold }{}
+\DeclareFontShape{LFE}{ftraditionalarabic}{b}{n}{%
+ <-> ssub * ftraditionalarabic/bx/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfehoma.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfehoma.fd
new file mode 100644
index 0000000000..5bf97f2850
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfehoma.fd
@@ -0,0 +1,25 @@
+%%
+%% This is file `lfehoma.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfehoma.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+
+
+\DeclareFontFamily{LFE}{homa}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LFE}{homa}{m}{n}{<-> s*[1.25] homa }{}
+\DeclareFontShape{LFE}{homa}{b}{n}{<-> ssub * homa/m/n }{}
+\DeclareFontShape{LFE}{homa}{bx}{n}{<-> ssub * homa/m/n }{}
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfekoodak.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfekoodak.fd
new file mode 100644
index 0000000000..ce6ddb102d
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfekoodak.fd
@@ -0,0 +1,23 @@
+%%
+%% This is file `lfekoodak.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfekoodak.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LFE}{koodak}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LFE}{koodak}{m}{n}{<-> s*[1.25] koodak }{}
+\DeclareFontShape{LFE}{koodak}{bx}{n}{<-> ssub * koodak/m/n }{}
+\DeclareFontShape{LFE}{koodak}{b}{n}{<-> ssub * koodak/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfenazli.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfenazli.fd
new file mode 100644
index 0000000000..f9525b8df9
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfenazli.fd
@@ -0,0 +1,26 @@
+%%
+%% This is file `lfenazli.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfenazli.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{LFE}{nazli}{\hyphenchar\font=-1}%
+ %as in \DeclareFontFamily{T1}{cmtt}{\hyphenchar\font=-1}
+
+\DeclareFontShape{LFE}{nazli}{m}{n}{<-> s*[1.25] nazli }{}
+
+\DeclareFontShape{LFE}{nazli}{b}{n}{<-> s*[1.25] nazlib }{}
+\DeclareFontShape{LFE}{nazli}{bx}{n}{<-> ssub * nazli/b/n }{}
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfenazliout.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfenazliout.fd
new file mode 100644
index 0000000000..7a46ac79ad
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfenazliout.fd
@@ -0,0 +1,24 @@
+%%
+%% This is file `lfenazliout.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfenazliout.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+
+
+\DeclareFontFamily{LFE}{nazliout}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LFE}{nazliout}{m}{n}{<-> s*[1.25] nazliout }{}
+\DeclareFontShape{LFE}{nazliout}{bx}{n}{<-> s*[1.25] nazlibout }{}
+\DeclareFontShape{LFE}{nazliout}{b}{n}{<-> ssub * nazliout/bx/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lferoya.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lferoya.fd
new file mode 100644
index 0000000000..3df5d1a3ed
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lferoya.fd
@@ -0,0 +1,24 @@
+%%
+%% This is file `lferoya.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lferoya.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+
+
+\DeclareFontFamily{LFE}{roya}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LFE}{roya}{m}{n}{<-> s*[1.25] roya }{}
+\DeclareFontShape{LFE}{roya}{bx}{n}{<-> s*[1.25] royab }{}
+\DeclareFontShape{LFE}{roya}{b}{n}{<-> ssub * roya/bx/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfesmplarabic.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfesmplarabic.fd
new file mode 100644
index 0000000000..0a57ab93b4
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfesmplarabic.fd
@@ -0,0 +1,23 @@
+%%
+%% This is file `lfesmplarabic.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfesmplarabic.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+\DeclareFontFamily{LFE}{smplarabic}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LFE}{smplarabic}{m}{n}{<-> s*[1.25] frsimpo }{}
+\DeclareFontShape{LFE}{smplarabic}{b}{n}{<-> s*[1.25] frsimpbdo }{}
+\DeclareFontShape{LFE}{smplarabic}{bx}{n}{<-> ssub * smplarabic/b/n}{}
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfeterafik.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfeterafik.fd
new file mode 100644
index 0000000000..308ea7f320
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfeterafik.fd
@@ -0,0 +1,25 @@
+%%
+%% This is file `lfeterafik.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfeterafik.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+
+
+\DeclareFontFamily{LFE}{terafik}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LFE}{terafik}{m}{n}{<-> s*[1.25] terafik }{}
+\DeclareFontShape{LFE}{terafik}{b}{n}{<-> s*[1.25] terafikb }{}
+\DeclareFontShape{LFE}{terafik}{bx}{n}{<-> ssub * terafik/b/n }{}
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfetitr.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfetitr.fd
new file mode 100644
index 0000000000..e6afbab214
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfetitr.fd
@@ -0,0 +1,25 @@
+%%
+%% This is file `lfetitr.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfetitr.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+
+
+\DeclareFontFamily{LFE}{titr}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LFE}{titr}{m}{n}{<-> s*[1.25] titr }{}
+\DeclareFontShape{LFE}{titr}{b}{n}{<-> ssub * titr/m/n }{}
+\DeclareFontShape{LFE}{titr}{bx}{n}{<-> ssub * titr/m/n }{}
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/lfetitrout.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/lfetitrout.fd
new file mode 100644
index 0000000000..082c047027
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/lfetitrout.fd
@@ -0,0 +1,24 @@
+%%
+%% This is file `lfetitrout.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{lfetitrout.fd}
+ [2006/01/01 v0.1 LaTeX Farsi font description
+ (test version: may change)]
+
+
+
+\DeclareFontFamily{LFE}{titrout}{\hyphenchar\font=-1}%
+
+\DeclareFontShape{LFE}{titrout}{m}{n}{<-> s*[1.25] titrout }{}
+\DeclareFontShape{LFE}{titrout}{bx}{n}{<-> ssub * titrout/m/n }{}
+\DeclareFontShape{LFE}{titrout}{b}{n}{<-> ssub * titrout/m/n }{}
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/mosq.def b/language/arabic/arabi/arabi/texmf/latex/arabi/mosq.def
new file mode 100644
index 0000000000..17027231ba
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/mosq.def
@@ -0,0 +1,51 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: mosq.def for use with `shapepar.sty' the package by Donald Arseneau
+
+\def\mosqdoor{%
+ {15}% Horizontal center
+ {0}b{15}\\% Text begins at x=15, y=0
+ {1}t{13}{4}\\%
+ {2}t{10.5}{9}\\%
+ {3}t{8.5}{13}\\%
+ {4}t{7.2}{15.6}\\%
+ {5}t{6.3}{17.4}\\%
+ {6}t{5.5}{19}\\%
+ {7}t{4.8}{20.4}\\%
+ {8}t{4.3}{21.4}\\%
+ {9}t{4.1}{21.8}\\%
+ {9.5}t{3.9}{22.2}\\%
+ {10}t{4.1}{21.8}\\%
+ {11}t{4.3}{21.4}\\%
+ {12}t{4.5}{21}\\%
+ {13}t{5}{20}\\%
+ {14}t{5.8}{18.4}\\%
+ {15}t{7}{16}\\%
+ {17}t{7}{16}\\%
+ {18}t{7}{16}\\% <<
+ {18.1}t{6}{18}\\%
+ {19}t{6}{18}\\%
+ {20}t{5}{20}\\%
+ {29}t{5}{20}\\%
+ {30}e{15}%
+}% End of mosq door definition.
+\endinput \ No newline at end of file
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/poetry.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/poetry.sty
new file mode 100644
index 0000000000..8cf78f10c3
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/poetry.sty
@@ -0,0 +1,143 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: poetry.sty
+%%%%%%%%%%%%%%%%%%%%%%%% poetry %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% \def \setversedim #1#2 % set length of half-verse, separation
+% \def \halfverses #1#2 % first half-verse, second half-verse (boyh are in arabic)
+% \def \connverses #1#2#3 % first half-verse, connection, second half-verse
+%
+% 04.10.2005
+%
+% avoids loading twice
+\expandafter \ifx \csname ar@poetry\endcsname \relax \else
+ \expandafter \endinput \fi
+
+\def\ar@poetry{\relax}
+
+
+\ProvidesFile{poetry.sty}
+ [2005/10/04 v0.1 Arabic poetry]
+
+
+
+%%%%%%%%%%%%%% A slight modification of the halfverses Macro %%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%% from the ArabTeX package by K. Lagally. %%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%% verses.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% verses.sty
+% utility for ArabTeX
+% macros for typesetting Arabic verses in two columns
+% usage: load as a package or after loading ArabTeX
+% provides:
+% \def \setversedim #1#2{% set length of half-verse, separation
+% \def \halfverses #1#2{% first half-verse, second half-verse
+% \def \connverses #1#2#3{% first half-verse, connection, second half-verse
+% use within an Arabic environment
+% 28.03.1998
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%% Macro "borrowed" from the Midnight bundle.
+%% From the Macro \border ...
+%%
+%%%%%%% exactly fitting border with overlaps
+% \border makes a border of the specified dimensions, by overlapping some
+% of the elements when necessary.
+% \hborder takes four arguments, the width, and the indices of the left
+% element, the middle element, and the right element. It makes an horizontal
+% border of the form \hbox to wd{ l m+ r }, where there is at least one m.
+% If wd is large enough to set at least {l m r}, all overlap is between
+% elements of type m. In the unusual case where wd is too small, the overlap
+% is necessarily with the corner elements.
+%
+%\def\hborder#1#2#3#4% wd, l, m, r
+% {\hbox to#1
+% {\setbox0=\hbox{\borderelm#3}%
+% \borderelm#2%
+% \hskip0pt minus1fil %
+% \copy0\kern-.5\wd0 %
+% \cleaders\copy0\hskip0pt plus1fil %
+% \kern-.5\wd0\copy0 %
+% \hskip0pt minus1fil %
+% \borderelm#4%
+% }%
+% }
+%
+\DeclareRobustCommand{\Spreadbox}[2]{\bgroup%
+\setbox0=\hbox{{\if@farsi\fontencoding{LFE}\else\fontencoding{LAE}\fi\selectfont\keshchar}}
+\renewcommand{\tatweel}{%
+\noboundary\nobreak%
+\hskip0pt% minus1fil %
+\copy0\kern-.5\wd0 %
+\cleaders\copy0\hskip0pt plus1fil %
+\kern-.5\wd0\copy0 %
+\hskip0pt% minus1fil %
+\nobreak\noboundary}
+%
+\parbox{#1}{\hbox to #1{\if@farsi\FR{#2}\else\AR{#2}\fi}}\egroup}
+
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newdimen \a@hvlen
+\newdimen \a@hvsep
+\newdimen \a@hvind
+
+% define some verse dimensions, verses will be centered
+\def \setversedim #1#2{% set length of half-verse, separation
+\a@hvlen #1\relax \a@hvsep #2\relax
+\a@hvind \hsize \advance \a@hvind -\a@hvsep
+\divide \a@hvind 2 \advance \a@hvind -\a@hvlen }
+
+
+%strut for the Arabic font Traditional Arabic if vowels are used!
+%\def\astrut{\rule[-.3cm]{0cm}{8.5mm}}
+\def\astrut{\hbox{\ArabiStrut}}
+%%
+%% better to use instead of \hfil --> \hspace*{\stretch{1}}?
+%%
+
+
+% macro for a verse with a connection
+\def \Connverses #1#2#3{% first half-verse + strut, connection, second half-verse
+\noindent \hspace \a@hvind \astrut
+\Spreadbox \a@hvlen {#1}% first block
+%\Spreadbox \a@hvsep {\hfill #2\hfill}% separator
+\Spreadbox \a@hvsep {\hspace*{\stretch{1}} #2\hspace*{\stretch{1}}}% separator
+\Spreadbox \a@hvlen {#3}% second block
+\par }
+
+
+% macro for two half verses
+\def \Halfverses #1#2{% normal case
+%\Connverses {#1}{\hfill}{#2}}
+\Connverses {#1}{\hspace*{\stretch{1}}}{#2}}
+
+
+
+
+\endinput \ No newline at end of file
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/puenc-ar.def b/language/arabic/arabi/arabi/texmf/latex/arabi/puenc-ar.def
new file mode 100644
index 0000000000..22257a156a
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/puenc-ar.def
@@ -0,0 +1,67 @@
+\ProvidesFile{puenc-ar.def}
+ [2006/09/26 v1.0a
+ Hyperref: PDF Unicode definition for Arabic characters Youssef Jabri]
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\DeclareTextCommand{\hamza}{PU}{\9006\041}%0621;afii57409;ARABIC LETTER HAMZA
+\DeclareTextCommand{\alefmadda}{PU}{\9006\042}%0622;afii57410;ARABIC LETTER ALEF WITH MADDA ABOVE
+\DeclareTextCommand{\alefhamza}{PU}{\9006\043}%0623;afii57411;ARABIC LETTER ALEF WITH HAMZA ABOVE
+\DeclareTextCommand{\wawhamza}{PU}{\9006\044} % 0624;afii57412;ARABIC LETTER WAW WITH HAMZA ABOVE
+\DeclareTextCommand{\aleflowerhamza}{PU}{\9006\045}%0625;afii57413;ARABIC LETTER ALEF WITH HAMZA BELOW
+\DeclareTextCommand{\yahamza}{PU}{\9006\046}%0626;afii57414;ARABIC LETTER YEH WITH HAMZA ABOVE
+\DeclareTextCommand{\alef}{PU}{\9006\047}%0627;afii57415;ARABIC LETTER ALEF
+\DeclareTextCommand{\baa}{PU}{\9006\050}%0628;afii57416;ARABIC LETTER BEH
+\DeclareTextCommand{\T}{PU}{\9006\051}%0629;afii57417;ARABIC LETTER TEH MARBUTA
+\DeclareTextCommand{\taa}{PU}{\9006\052}%062A;afii57418;ARABIC LETTER TEH
+\DeclareTextCommand{\thaa}{PU}{\9006\053}%062B;afii57419;ARABIC LETTER THEH
+\DeclareTextCommand{\jeem}{PU}{\9006\054}%062C;afii57420;ARABIC LETTER JEEM
+\DeclareTextCommand{\Haa}{PU}{\9006\055}%062D;afii57421;ARABIC LETTER HAH
+\DeclareTextCommand{\kha}{PU}{\9006\056}%062E;afii57422;ARABIC LETTER KHAH
+\DeclareTextCommand{\dal}{PU}{\9006\057}%062F;afii57423;ARABIC LETTER DAL
+\DeclareTextCommand{\dhal}{PU}{\9006\060}%0630;afii57424;ARABIC LETTER THAL
+\DeclareTextCommand{\ra}{PU}{\9006\061}%0631;afii57425;ARABIC LETTER REH
+\DeclareTextCommand{\zay}{PU}{\9006\062}%0632;afii57426;ARABIC LETTER ZAIN
+\DeclareTextCommand{\seen}{PU}{\9006\063}%0633;afii57427;ARABIC LETTER SEEN
+\DeclareTextCommand{\sheen}{PU}{\9006\064}%0634;afii57428;ARABIC LETTER SHEEN
+\DeclareTextCommand{\sad}{PU}{\9006\065}%0635;afii57429;ARABIC LETTER SAD
+\DeclareTextCommand{\dad}{PU}{\9006\066}%0636;afii57430;ARABIC LETTER DAD
+\DeclareTextCommand{\Ta}{PU}{\9006\067}%0637;afii57431;ARABIC LETTER TAH
+\DeclareTextCommand{\za}{PU}{\9006\070}%0638;afii57432;ARABIC LETTER ZAH
+\DeclareTextCommand{\ayn}{PU}{\9006\071}%0639;afii57433;ARABIC LETTER AIN
+\DeclareTextCommand{\ghayn}{PU}{\9006\072}%063A;afii57434;ARABIC LETTER GHAIN
+\DeclareTextCommand{\tatweel}{PU}{\9006\100}%0640;afii57440;ARABIC TATWEEL
+\DeclareTextCommand{\fa}{PU}{\9006\101}%0641;afii57441;ARABIC LETTER FEH
+\DeclareTextCommand{\qaf}{PU}{\9006\102}%0642;afii57442;ARABIC LETTER QAF
+\DeclareTextCommand{\kaf}{PU}{\9006\103}%0643;afii57443;ARABIC LETTER KAF
+\DeclareTextCommand{\lam}{PU}{\9006\104}%0644;afii57444;ARABIC LETTER LAM
+\DeclareTextCommand{\meem}{PU}{\9006\105}%0645;afii57445;ARABIC LETTER MEEM
+\DeclareTextCommand{\nun}{PU}{\9006\106}%0646;afii57446;ARABIC LETTER NOON
+\DeclareTextCommand{\ha}{PU}{\9006\107}%0647;afii57470;ARABIC LETTER HEH
+\DeclareTextCommand{\waw}{PU}{\9006\110}%0648;afii57448;ARABIC LETTER WAW
+\DeclareTextCommand{\alefmaqsura}{PU}{\9006\111}%0649;afii57449;ARABIC LETTER ALEF MAKSURA
+\DeclareTextCommand{\ya}{PU}{\9006\112}%064A;afii57450;ARABIC LETTER YEH
+%
+\DeclareTextCommand{\nasb}{PU}{\9006\113}%064B;afii57451;ARABIC FATHATAN
+\DeclareTextCommand{\raff}{PU}{\9006\114}%064C;afii57452;ARABIC DAMMATAN
+\DeclareTextCommand{\jarr}{PU}{\9006\115}%064D;afii57453;ARABIC KASRATAN
+\DeclareTextCommand{\fatha}{PU}{\9006\116}%064E;afii57454;ARABIC FATHA
+\DeclareTextCommand{\damma}{PU}{\9006\117}%064F;afii57455;ARABIC DAMMA
+\DeclareTextCommand{\kasra}{PU}{\9006\120}%0650;afii57456;ARABIC KASRA
+\DeclareTextCommand{\shadda}{PU}{\9006\121}%0651;afii57457;ARABIC SHADDA
+\DeclareTextCommand{\sukun}{PU}{\9006\122}%0652;afii57458;ARABIC SUKUN
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Farsi
+\DeclareTextCommand{\peh}{PU}{\9006\176}%067E;afii57506;ARABIC LETTER PEH
+\DeclareTextCommand{\tcheh}{PU}{\9006\206}%0686;afii57507;ARABIC LETTER TCHEH
+\DeclareTextCommand{\jeh}{PU}{\9006\230}%0698;afii57508;ARABIC LETTER JEH
+\DeclareTextCommand{\farsikaf}{PU}{\9006\251}%06A9???;afii?????;FARSI LETTER KAF
+\DeclareTextCommand{\gaf}{PU}{\9006\257}%06AF;afii57509;ARABIC LETTER GAF
+\DeclareTextCommand{\farsiya}{PU}{\9006\314}%06CC;afii?????;FARSI LETTER YEH
+%
+\DeclareTextCommand{\ZWNJ}{PU}{\9040\014}%200C;ZWNJ%
+\DeclareTextCommand{\noboundary}{PU}{\9006\325}%200D;ZWJ
+%
+\endinput
+
+
+066A arabicpercentsign \ No newline at end of file
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/transcmr.fd b/language/arabic/arabi/arabi/texmf/latex/arabi/transcmr.fd
new file mode 100644
index 0000000000..decc49e5cb
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/transcmr.fd
@@ -0,0 +1,90 @@
+%%
+%% This is file `transcmr.fd',
+%%
+%% A part of the Arabi package to be used with the Babel system
+%% to write Arabic and/or Farsi
+%%
+%% Version 0.1
+%%
+%%
+
+
+\ProvidesFile{transcmr.fd}
+ [2006/01/01 v0.1 LaTeX Arabic font description
+ (test version: may change)]
+
+
+\DeclareFontFamily{trans}{cmr}{\hyphenchar\font=-1}%
+\ProvidesFile{ot1cmr.fd}
+ [1999/05/25 v2.5h Standard LaTeX font definitions]
+\DeclareFontFamily{trans}{cmr}{\hyphenchar\font45 }
+
+
+% This is just a copy of ot1cmr.fd
+
+\DeclareFontShape{trans}{cmr}{m}{n}%
+ {<5><6><7><8><9><10><12>gen*cmr%
+ <10.95>cmr10%
+ <14.4>cmr12%
+ <17.28><20.74><24.88>cmr17}{}
+\DeclareFontShape{trans}{cmr}{m}{sl}%
+ {%
+ <5><6><7>cmsl8%
+ <8><9>gen*cmsl%
+ <10><10.95>cmsl10%
+ <12><14.4><17.28><20.74><24.88>cmsl12%
+ }{}
+\DeclareFontShape{trans}{cmr}{m}{it}%
+ {%
+ <5><6><7>cmti7%
+ <8>cmti8%
+ <9>cmti9%
+ <10><10.95>cmti10%
+ <12><14.4><17.28><20.74><24.88>cmti12%
+ }{}
+\DeclareFontShape{trans}{cmr}{m}{sc}%
+ {%
+ <5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88>cmcsc10%
+ }{}
+% Warning: please note that the upright shape below is
+% used for the \pounds symbol of LaTeX. So this
+% font definition shouldn't be removed.
+%
+\DeclareFontShape{trans}{cmr}{m}{ui}
+ {
+ <5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88>cmu10%
+ }{}
+%%%%%%% bold series
+\DeclareFontShape{trans}{cmr}{b}{n}
+ {%
+ <5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88>cmb10%
+ }{}
+%%%%%%%% bold extended series
+\DeclareFontShape{trans}{cmr}{bx}{n}
+ {%
+ <5><6><7><8><9>gen*cmbx%
+ <10><10.95>cmbx10%
+ <12><14.4><17.28><20.74><24.88>cmbx12%
+ }{}
+\DeclareFontShape{trans}{cmr}{bx}{sl}
+ {%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>cmbxsl10%
+ }{}
+\DeclareFontShape{trans}{cmr}{bx}{it}
+ {%
+ <5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88>cmbxti10%
+ }{}
+% Again this is necessary for a correct \pounds symbol in
+% the cmr fonts Hopefully the dc/ec font layout will take
+% over soon.
+%
+\DeclareFontShape{trans}{cmr}{bx}{ui}
+ {<->sub*cmr/m/ui}{}
+
+
+\endinput
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/translit.sty b/language/arabic/arabi/arabi/texmf/latex/arabi/translit.sty
new file mode 100644
index 0000000000..76fb785219
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/translit.sty
@@ -0,0 +1,186 @@
+% \iffalse meta-comment
+%
+% Copyright 2006 Youssef Jabri
+%
+%
+% This file is part of the `Arabi' system.
+% -------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3b
+% 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.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This file has the LPPL maintenance status "maintained".
+%
+%
+% \fi
+%
+% Filename: translit.sty
+%%
+%% When texts are in general not fully vowelized, the transliteration
+%% cannot be expected to be correct.
+%%
+%% Moreover, when writing using CP1256/ISO 8859-6 8-bit input encoding,
+%% there is no way to distinguish between long vowels A I U and the letters
+%% alif yaa and waw. neither, it is possible to write correctly the hamza
+%% when on alif waw or yaa.
+%%
+\ProvidesFile{tranlit.sty}
+ [2005/09/08 v0.1 Arabic transliteration (test version: may change)]
+
+%\renewcommand{\rmdefault}{ptm}
+%\renewcommand{\sfdefault}{phv}
+%\renewcommand{\ttdefault}{pcr}
+
+
+\DeclareTextCommand{\hamza}{T1}{\ensuremath{\rhook }}
+\DeclareTextCommand{\alefmadda}{T1}{\ensuremath{\rhook\kern-.1em \bar a}}
+\DeclareTextCommand{\alefhamza}{T1}{\ensuremath{\rhook\kern-.3em a}}
+\DeclareTextCommand{\wawhamza}{T1}{\ensuremath{\rhook\kern-.1em w}}
+\DeclareTextCommand{\aleflowerhamza}{T1}{\ensuremath{\rhook\kern-.3em i}}
+\DeclareTextCommand{\yahamza}{T1}{183}
+
+\DeclareTextCommand{\alef}{T1}{\ensuremath{\bar a}}
+\DeclareTextCommand{\baa}{T1}{\ensuremath{b}}
+\DeclareTextCommand{\T}{T1}{\ensuremath{t}} %taa marbuuta
+\DeclareTextCommand{\taa}{T1}{\ensuremath{t}}
+
+\DeclareTextCommand{\thaa}{T1}{\ensuremath{\bar t}}
+\DeclareTextCommand{\jeem}{T1}{\ensuremath{\check{g}}} %geem ???
+\DeclareTextCommand{\Haa}{T1}{\textit{\d h}}
+\DeclareTextCommand{\kha}{T1}{\ensuremath{\underbar{\text{\textit{h}}}}} %<<<<<<<<<<<<<
+\DeclareTextCommand{\dal}{T1}{\ensuremath{d}}
+\DeclareTextCommand{\dhal}{T1}{\ensuremath{\bar d}}
+\DeclareTextCommand{\ra}{T1}{\ensuremath{r}}
+\DeclareTextCommand{\zay}{T1}{\ensuremath{z}}
+\DeclareTextCommand{\seen}{T1}{\ensuremath{s}}
+\DeclareTextCommand{\sheen}{T1}{\ensuremath{\check{s}}}
+\DeclareTextCommand{\sad}{T1}{\textit{\d s}}
+\DeclareTextCommand{\dad}{T1}{\textit{\d d}}
+\DeclareTextCommand{\Ta}{T1}{\textit{\d{t}}}
+\DeclareTextCommand{\za}{T1}{\ensuremath{\dot z}}
+\DeclareTextCommand{\ayn}{T1}{\ensuremath{\lhook }}
+\DeclareTextCommand{\ghayn}{T1}{\textit{\d g}}
+%
+\DeclareTextCommand{\keshchar}{T1}{254}
+\DeclareTextCommand{\fa}{T1}{\ensuremath{f}}
+\DeclareTextCommand{\qaf}{T1}{\ensuremath{q}}
+\DeclareTextCommand{\kaf}{T1}{\ensuremath{k}}
+\DeclareTextCommand{\lam}{T1}{\ensuremath{l}}
+\DeclareTextCommand{\meem}{T1}{\ensuremath{m}}
+\DeclareTextCommand{\nun}{T1}{\ensuremath{n}}
+\DeclareTextCommand{\ha}{T1}{\ensuremath{h}}
+\DeclareTextCommand{\waw}{T1}{\ensuremath{w}}
+\DeclareTextCommand{\ya}{T1}{\ensuremath{y}}
+\DeclareTextCommand{\alefmaqsura}{T1}{\ensuremath{\bar a}}%170
+%
+%%%%%%%%%%%% Vowels
+%
+% Firt, Vowels that come only at the end of a word
+%
+\DeclareTextCommand{\nasb}{T1}{\ensuremath{aN}}
+\DeclareTextCommand{\raff}{T1}{\ensuremath{uN}}
+\DeclareTextCommand{\jarr}{T1}{\ensuremath{iN}}
+%
+\DeclareTextCommand{\shaddanasb}{T1}{\ensuremath{aN}}
+\DeclareTextCommand{\shaddaraff}{T1}{\ensuremath{uN}}
+\DeclareTextCommand{\shaddajarr}{T1}{\ensuremath{iN}}
+%
+% Then, Vowels that come anywhere in a word
+%
+\DeclareTextCommand{\fatha}{T1}{\ensuremath{a}}%{161}
+\DeclareTextCommand{\damma}{T1}{\ensuremath{u}}%{162}
+\DeclareTextCommand{\kasra}{T1}{\ensuremath{i}}%{163}
+\DeclareTextCommand{\shadda}{T1}{\ensuremath{}}%{164}
+\DeclareTextCommand{\sukun}{T1}{\ensuremath{}}%{197}%{}
+%
+\DeclareTextCommand{\shaddafatha}{T1}{\ensuremath{a}}%169
+\DeclareTextCommand{\shaddadamma}{T1}{\ensuremath{u}}%170
+\DeclareTextCommand{\shaddakasra}{T1}{\ensuremath{i}}%171
+%
+
+
+%%%%%%%%%%%% Vowels after passing through \novocalize <--> \vocalize
+%
+% Firt, Vowels that come only at the end of a word
+%
+\DeclareTextCommand{\nasbSAV}{T1}{\ensuremath{aN}}
+\DeclareTextCommand{\raffSAV}{T1}{\ensuremath{uN}}
+\DeclareTextCommand{\jarrSAV}{T1}{\ensuremath{iN}}
+%
+\DeclareTextCommand{\shaddanasbSAV}{T1}{\ensuremath{aN}}
+\DeclareTextCommand{\shaddaraffSAV}{T1}{\ensuremath{uN}}
+\DeclareTextCommand{\shaddajarrSAV}{T1}{\ensuremath{iN}}
+%
+% Then, Vowels that come anywhere in a word
+%
+\DeclareTextCommand{\fathaSAV}{T1}{\ensuremath{a}}%{161}
+\DeclareTextCommand{\dammaSAV}{T1}{\ensuremath{u}}%{162}
+\DeclareTextCommand{\kasraSAV}{T1}{\ensuremath{i}}%{163}
+\DeclareTextCommand{\shaddaSAV}{T1}{\ensuremath{}}%{164}
+\DeclareTextCommand{\sukunSAV}{T1}{\ensuremath{}}%{197}%{}
+%
+\DeclareTextCommand{\shaddafathaSAV}{T1}{\ensuremath{a}}%169
+\DeclareTextCommand{\shaddadammaSAV}{T1}{\ensuremath{u}}%170
+\DeclareTextCommand{\shaddakasraSAV}{T1}{\ensuremath{i}}%171
+%
+
+%%%%%%%%%%%% Vowels after passing through \novocalize --> \vocalize
+%
+% Firt, Vowels that come only at the end of a word
+%
+\DeclareTextCommand{\nasbOFF}{T1}{\ensuremath{aN}}
+\DeclareTextCommand{\raffOFF}{T1}{\ensuremath{uN}}
+\DeclareTextCommand{\jarrOFF}{T1}{\ensuremath{iN}}
+%
+\DeclareTextCommand{\shaddanasbOFF}{T1}{\ensuremath{aN}}
+\DeclareTextCommand{\shaddaraffOFF}{T1}{\ensuremath{uN}}
+\DeclareTextCommand{\shaddajarrOFF}{T1}{\ensuremath{iN}}
+%
+% Then, Vowels that come anywhere in a word
+%
+\DeclareTextCommand{\fathaOFF}{T1}{\ensuremath{a}}%{161}
+\DeclareTextCommand{\dammaOFF}{T1}{\ensuremath{u}}%{162}
+\DeclareTextCommand{\kasraOFF}{T1}{\ensuremath{i}}%{163}
+\DeclareTextCommand{\shaddaOFF}{T1}{\ensuremath{}}%{164}
+\DeclareTextCommand{\sukunOFF}{T1}{\ensuremath{}}%{197}%{}
+%
+\DeclareTextCommand{\shaddafathaOFF}{T1}{\ensuremath{a}}%169
+\DeclareTextCommand{\shaddadammaOFF}{T1}{\ensuremath{u}}%170
+\DeclareTextCommand{\shaddakasraOFF}{T1}{\ensuremath{i}}%171
+%
+
+
+
+\DeclareTextCommand{\tatweel}{T1}{}
+
+
+
+%%
+%% \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 \~}
+%%
+\endinput
+%%
+%% End of file `jaeenc.def'.
+
+
+
+
diff --git a/language/arabic/arabi/arabi/texmf/latex/arabi/updmap.cfg b/language/arabic/arabi/arabi/texmf/latex/arabi/updmap.cfg
new file mode 100644
index 0000000000..b807c6a887
--- /dev/null
+++ b/language/arabic/arabi/arabi/texmf/latex/arabi/updmap.cfg
@@ -0,0 +1,2 @@
+# arabi
+Map arabi.map
diff --git a/language/arabic/arabtex/alocal.sty b/language/arabic/arabtex/alocal.sty
new file mode 100644
index 0000000000..626d644581
--- /dev/null
+++ b/language/arabic/arabtex/alocal.sty
@@ -0,0 +1,20 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% alocal.sty
+% ArabTeX
+% stub for local extensions
+% should normally be empty!
+% Version 26.02.2006
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@message {3.11 local stub, 26.02.2006}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\relax
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
diff --git a/language/arabic/arabtex/announce.txt b/language/arabic/arabtex/announce.txt
new file mode 100644
index 0000000000..f1217164e8
--- /dev/null
+++ b/language/arabic/arabtex/announce.txt
@@ -0,0 +1,50 @@
+----------------------------------------------------------------------
+ ArabTeX Version 3.11 is available
+----------------------------------------------------------------------
+As of today, Oct. 23, 2003, a new version 3.11 of ArabTeX is available
+by FTP from "ftp.informatik.uni-stuttgart.de" (129.69.211.2).
+The package resides in "/pub/arabtex/", see the file "arabtex.htm".
+
+This server always carries the current version; in case of doubt check
+the version number and the date of the file /pub/arabtex/apatch.sty.
+To receive a status report you may also send an empty Email message to
+"arabtex@informatik.uni-stuttgart.de".
+
+Please observe that we are *not* the same as the (old) "Stuttgart server"!
+
+The identical package is also available from the CTAN server network:
+
+ ftp://ftp.tex.ac.uk/tex-archive/languages/arabtex/ (UK)
+ ftp://ftp.dante.de/tex-archive/languages/arabtex/ (Germany)
+ ftp://ctan.tug.org/tex-archive/languages/arabtex/ (USA)
+
+ArabTeX is a TeX macro package with associated Naskh fonts designed to
+generate the Arabic writing from texts coded in an ASCII transliteration
+as well as in some other popular encodings for Arabic and Hebrew, e.g.
+ASMO 449, ISO 8859-6 (ASMO 708), Arabic Windows encoding, and HED.
+It is compatible with Plain TeX, LaTeX, NFSS, and the EDMAC package.
+It also cooperates well with LaTeX 2e of June 1996 or later.
+There is some support for Persian, Urdu, Pashto, and Sindhi.
+Unicode Arabic and Hebrew support is present but not extensively tested.
+
+The version 3.11 supports vowelized and non-vowelized Hebrew, and
+bidirectional line-breaking within insertions. The former limitation
+that an insertion must fit on the current line no more exists.
+
+For information on updates, see the file "changes.txt".
+
+----------------------------------------------------------------------
+ Prof. Klaus Lagally
+ Institut fuer Formale Methoden der Informatik
+ Universitaet Stuttgart
+ Universitaetsstrasse 38
+ D-70569 Stuttgart
+ GERMANY
+
+ lagally@informatik.uni-stuttgart.de
+ FAX: +49 - 711 - 7816 370
+--------------------------------------------------------------------------
+ Copyright (c) 1990 - 2003, Klaus Lagally
+--------------------------------------------------------------------------
+
+
diff --git a/language/arabic/arabtex/apatch.sty b/language/arabic/arabtex/apatch.sty
new file mode 120000
index 0000000000..7b61c757be
--- /dev/null
+++ b/language/arabic/arabtex/apatch.sty
@@ -0,0 +1 @@
+texinput/apatch.sty \ No newline at end of file
diff --git a/language/arabic/arabtex/arabtex-doc.pdf b/language/arabic/arabtex/arabtex-doc.pdf
new file mode 100644
index 0000000000..0a550378e5
--- /dev/null
+++ b/language/arabic/arabtex/arabtex-doc.pdf
Binary files differ
diff --git a/language/arabic/arabtex/arabtex-doc.tex b/language/arabic/arabtex/arabtex-doc.tex
new file mode 100644
index 0000000000..7fcd116a62
--- /dev/null
+++ b/language/arabic/arabtex/arabtex-doc.tex
@@ -0,0 +1,568 @@
+\documentclass[pagesize=auto]{scrartcl}
+
+\usepackage{fixltx2e}
+\usepackage{xspace}
+\usepackage{lmodern}
+\usepackage{mflogo}
+\usepackage[T1]{fontenc}
+\usepackage{textcomp}
+\usepackage{array}
+\usepackage{booktabs}
+\usepackage{microtype}
+\usepackage{hyperref}
+
+\newcommand*{\ArabTeX}{Arab\kern-0.12em\TeX\@\xspace}
+\newcommand*{\meta}[1]{\textlangle\textsl{#1}\textrangle}
+\newcommand*{\symb}[1]{\textsf{\textlangle#1\textrangle}}
+
+\pdfstringdefDisableCommands{%
+ \def\ArabTeX{ArabTeX\xspace}%
+ \def\meta#1{<#1>}%
+ \def\symb#1{<#1>}%
+}
+
+\newenvironment{codetable}[1]{%
+ \catcode`\"=12
+ \catcode`\'=12
+ \catcode`\`=12
+ \catcode`\_=12
+ \catcode`\^=12
+ \catcode`\~=12
+ \par
+ \nopagebreak
+ \medskip
+ \noindent
+ \quitvmode
+ \tabular{@{}*{\numexpr#1-1\relax}{I@{\qquad}}I@{}}%
+}{%
+ \endtabular
+ \par
+ \medskip
+}
+
+\newcolumntype{I}{>{\ttfamily}r@{\hspace{0.6em}}l}
+
+\title{The \ArabTeX package}
+\author{Klaus Lagally}
+\date{20.11.1993}
+
+
+\begin{document}
+
+\maketitle
+
+\tableofcontents
+
+\section{\ArabTeX Version~3 (20.11.1993)}
+
+The introduction below is slightly out of date
+but may be used as a first start.
+
+
+\section{\ArabTeX Version~2 (05.11.1992)}
+
+\subsection{What is \ArabTeX?}
+
+\ArabTeX is a package extending the capabilities of \TeX/\LaTeX\ to generate
+the arabic writing from an ASCII transliteration for texts in several
+languages using the arabic script.
+
+It consists of a \TeX\ macro package and an arabic font in several sizes,
+presently only available in the Naskhi style. \ArabTeX will run with Plain
+\TeX\ and also with \LaTeX; other additions to \TeX\ have not been tried.
+
+\ArabTeX is primarily intended for generating the arabic writing, but the
+scientific transcription can be also easily generated. For other languages
+using the arabic script limited support is available.
+
+
+\subsection{Installing \ArabTeX:}
+
+The installation procedure is system dependent. You have to install the
+``\textsf{nash14}'' font with its ``\texttt{*.pk}'' and ``\texttt{*.tfm}'' files on the font search path of
+your \TeX\ system, and the ``\texttt{*.sty}'' files and ``\texttt{arabtex.tex}'' on the source
+search path of your system. Possibly you will have to rename the ``\texttt{*.pk}''
+files according to local conventions, and as a last resort you can try to
+recreate the font from the ``\texttt{*.mf}'' \MF\ sources. Additional fonts if
+available are installed analogously.
+
+
+\subsection{Activating ArabTeX:}
+
+With Plain \TeX, load the ArabTeX macros by ``\verb+\input arabtex+''.\@ With \LaTeX,
+include the option ``\texttt{arabtex}'' in the document header. In both cases several
+additional files will be loaded automatically.
+
+\ArabTeX defines several additional commands as indicated below, and also a
+large number of internal commands which could lead to storage overflow in
+a small TeX implementation. All internal commands contain an ``at'' sign \texttt{<@>}
+in their names and thus should not interfere with any user defined
+commands (but possibly with \TeX\ extensions we do not know about).
+
+With Plain \TeX, the arabic font is only available at the normal 14~point
+size which ought to cooperate well with the ``\textsf{cm}'' fonts at 10~points. For
+other sizes, change the ``\verb+\magnification+'' or define additional font
+identifiers yourself. To change the default, inspect ``\texttt{arabtex.tex}'' and
+redefine the ``\verb+\pnash+'' command accordingly. With \LaTeX, the size changing
+commands will also operate on the arabic font.
+
+
+\subsection{Input to ArabTeX:}
+
+After activating \ArabTeX, your modified \TeX/\LaTeX\ system will recognize
+the following items:
+%
+\begin{itemize}
+\item normal \TeX/\LaTeX\ text and commands,
+\item short arabic quotations bracketed by \verb+<+ and \verb+>+; these must fit on one
+ line of output, and you have to select one of the Arabic writing styles,
+ e.g \verb+\setarab+, before using this feature. A quotation may also be started
+ with \verb+\<+.
+\item longer arabic texts bracketed by \verb+\begin{arabtext}+ and \verb+\end{arabtext}+,
+ called ``Arabic Environments'' in the sequel.
+\end{itemize}
+
+An Arabic Environment consists of one or several paragraphs separated by
+blank lines or \verb+\par+ commands. Every paragraph and every arabic quotation
+is a sequence of the following kinds of items, separated by blank spaces
+or newlines:
+%
+\begin{itemize}
+\item isolated (legal) special characters, interpreted as the corresponding
+ arabic special character;
+\item ``numbers'', character sequences starting with a digit. A ``number'' will be
+ translated in the normal writing sequence from left to right even if it
+ contains letters and/or special characters;
+\item ``arabic quotes'', coded as two left quotes or two right quotes each;
+\item ``words'', character sequences starting with a letter or special character
+ followed by a letter. The (coded) characters of a word will in the
+ output be arranged from right to left.
+\item \TeX/\LaTeX\ control sequences WITHOUT parameters. These will be executed
+ immediately.
+\item \ArabTeX control sequences with or without parameters. These will be
+ executed immediately.
+\item a sequence of items enclosed in curly braces \verb+{+ and \verb+}+. The output from
+ the constituents will be arranged from right to left and must fit on one
+ output line. As far as \TeX\ is concerned, this is NO group. This feature
+ may not be nested.
+\end{itemize}
+
+Output from all items will be arranged from right to left, lines will be
+broken as necessary.
+
+Inside an Arabic Environment, but NOT in an arabic quotation, you may also
+have:
+
+\begin{itemize}
+\item short mathematical insertions, bracketed by SINGLE \verb+$+ signs. They must
+ fit on one output line and are processed as usual;
+\item short non-arabic text quotations, bracketed by \verb+<+ and \verb+>+. These must fit
+ on one output line and introduce a new level of grouping, so if they
+ contain any \TeX/\LaTeX\ assignments the effects of these will be local.
+\end{itemize}
+
+Control sequences in an Arabic Environment may be of the following kinds:
+
+\begin{itemize}
+\item \ArabTeX option changing commands. These may also be used outside an
+ Arabic Environment and generally have a global effect;
+\item \verb+\\+ for a new line;
+\item \verb+\par+ (or a blank line) for a new paragraph, \verb+\noindent+ for a new paragraph
+ without indentation (NOT in arabic quotations);
+\item \verb+\emphasize+ \meta{item} will put a bar over the next \meta{item};
+\item \verb+\setnash+, \verb+\setnashbf+, \verb+\setnastaliq+ font selection commands, see below;
+\item size changing \LaTeX\ commands like \verb+\large+ etc., only if you use \LaTeX;
+\item most other \TeX/\LaTeX\ commands make no sense in an Arabic Environment.
+\item you MUST NOT nest another \LaTeX\ environment inside an Arabic Environment
+ (except possibly display math which we did not test, and might work);
+\item if you really need to use a control sequence with parameters, define a
+ new \TeX\ macro or enclose the whole construct in curly braces \verb+{+ and \verb+}+.
+\end{itemize}
+
+
+\subsection{Font selection:}
+
+For space economy, only the \textsf{Naskh} font is available by default. With \LaTeX,
+additional fonts can be loaded by the document style options ``\texttt{nashbf}''
+and/or ``\texttt{nastaliq}'' (when available). Users of Plain \TeX\ can load and define
+suitable fonts themselves.
+
+The following font selection commands are available:
+
+\begin{itemize}
+\item \verb+\setnash+ (default) selects the \textsf{Naskh} font.
+\item \verb+\setnashbf+ selects a bold-face version of \textsf{Naskh}.
+\item \verb+\setnastaliq+ selects the \textsf{Nastaliq} font.
+\end{itemize}
+
+If a font is not available or has not been loaded, the corresponding
+command will select the default font.
+
+With \LaTeX, the size changing commands will also operate on the additional
+fonts.
+
+
+\subsection{Input coding:}
+
+The ASCII input notation for arabic text is modelled closely after the
+transliteration standards ISO/R\,233 and DIN\,31\,635. As these standards do
+not guarantee unique re-transliteration and are also not ASCII compatible,
+some modifications were necessary. These follow the general rules:
+%
+\begin{itemize}
+\item if the transliteration uses a single letter, code that letter;
+\item if the transliteration uses a letter with a diacritical mark, put a
+ special character similar to the diacritical mark BEFORE the letter.
+\end{itemize}
+
+
+\subsubsection{Additional characters generally available:}
+
+\begin{codetable}{6}
+ b & bah & d & dal & .s & ssad & f & fah & h & hah & ' & hamza \\
+ t & tah & _d & dhal & .d & ddad & q & qaf & w & waw & N & tanween \\
+ _t & thah & r & rah & .t & ttah & k & kaf & y & yah & Y & alif maqsoura \\
+ ^g & geem & z & zay & .z & tthah & l & lam & g & gaf & _A & alif maqsoura \\
+ .h & hhah & s & seen & ` & `ain & m & meem & p & pah & T & tah marbouta \\
+ _h & khah & ^s & sheen & .g & ghain & n & noon & v & vah & W & waw (see below)
+\end{codetable}
+
+
+\subsubsection{Standard arabic and persian characters:}
+
+\begin{codetable}{1}
+ c & hhah with hamza \\
+ ^c & gim with three dots (below) \\
+ ,c & khah with three dots (above) \\
+ ^z & zay with three dots (above) \\
+ ~n & kaf with three dots (Ottoman) \\
+ ~l & law with a bow accent (Kurdish) \\
+ ~r & rah with two bows (Kurdish)
+\end{codetable}
+
+See also ``Urdu'' and ``Pashto'' below.
+
+
+\subsubsection{Additional coding rules:}
+
+\begin{itemize}
+\item For long vowels, use capital letters \verb+A+, \verb+I+, \verb+U+, or \verb+_a+, \verb+_i+, \verb+_u+.
+\item As the transliteration is ambiguous, use \verb+T+ for \symb{tah marbouta},
+ \verb+N+ for \symb{tanween}, \verb+Y+ or \verb+_A+ for \symb{alif maqsoura}.
+\item Short vowels \verb+a+, \verb+i+, \verb+u+ need not generally be written except in the
+ following cases:
+ \begin{itemize}
+ \item at the beginning of a word where they generate \symb{alif},
+ \item adjacent to \symb{hamza} where they will influence the carrier,
+ \item when the transcription is wanted,
+ \item in \verb+\fullvocalize+ mode.
+ \end{itemize}
+\item \symb{hamza} is denoted by a single RIGHT quote; its carrier will be
+ determined from the context according to the rules for writing arabic
+ words. If that is not wanted, ``quote'' it (see below).
+\item \symb{`ain} is a single LEFT quote, don't confuse it with \symb{hamza}!
+\item \symb{madda} is generated by a right quote (\symb{hamza}) before \verb+A+: \verb+'A+.
+\item The ``invisible letter'' \verb+|+ may be inserted in order to break unwanted
+ ligatures and to influence the \symb{hamza} writing. It will not show in the
+ arabic output or in the transcription.
+\item \symb{tashdid} is indicated by doubling the appropriate letter.
+\item The article is always written \verb+al-+ (with hyphen!).
+\item Hyphens \verb+-+ may be used freely, and generally do not change the writing,
+ but will show up in the transcription. At the beginning and the end of a
+ word they enforce the use of the connection form of the adjacent letter
+ (if it exists), like e.g. in the date \verb+1400 h-+.
+\item A double hyphen \verb+--+ between two otherwise joining letters will break
+ any ligature and will insert a horizontal stroke (\symb{tatweel}, \symb{kashida})
+ without appearing in the transcription. It may be used repeatedly.
+\end{itemize}
+
+
+\subsection{Quoting:}
+
+A double quote \verb+"+ will modify the meaning of the following character as
+follows:
+%
+\begin{itemize}
+\item if a short vowel follows, the appropriate diacritical mark \symb{fatha},
+ \symb{kasra}, \symb{damma} will be put on the preceding character even if the
+ vocalization is off otherwise. If \verb+N+ follows the short vowel, the
+ appropriate form of \symb{tanween} will be generated instead. At the
+ beginning of a word, \symb{alif} is assumed as the first character. If the
+ previous word ended with a vowel, \symb{wasla} is generated instead of the
+ vowel indicator.
+\item if the following character is a single right quote, a \symb{hamza} mark will
+ be put on the preceding character even if in conflict with the \symb{hamza}
+ rules.
+\item if the following character is the ``invisible letter'' \verb+|+, the connection
+ between the adjacent letters will be broken and a small space inserted.
+\item otherwise: a \symb{sukun} will be put on the preceding character. The
+ following character will be processed again.
+\end{itemize}
+%
+The double quote will not show up in the transcription.
+
+
+\subsection{Ligatures:}
+
+There is no way to explicitly indicate ligatures as a large number of them
+are generated automatically. Any unwanted ligature can be suppressed by
+interposing the invisible letter \verb+|+ between the two letters otherwise
+combined into a ligature. After ``\verb+\ligsfalse+'' ligatures in the middle of a
+word will not normally be produced; for some texts this looks better. You
+can return to the normal strategy by ``\verb+\ligstrue+''.
+
+
+\subsection{Vocalization:}
+
+There are three modes of rendering short vowels:
+%
+\begin{labeling}{\texttt{\string\fullvocalize}:}
+\item[\texttt{\string\fullvocalize}:]
+ \begin{itemize}
+ \item every short vowel will generate the corresponding diacritic mark
+ \symb{fatha}, \symb{kasra}, \symb{damma}.
+ \item If \verb+N+ follows a short vowel, the corresponding form of \symb{tanween} is
+ generated instead.
+ \item \verb+_a+ will produce a \symb{qur'an alif} accent instead of an explicit
+ \symb{alif} character which is coded \verb+A+.
+ \item if a long vowel follows a consonant, the corresponding short vowel is
+ implied. The long vowel itself carries no diacritical mark.
+ \item if no vowel is given after a consonant, \symb{sukun} will be generated
+ except if a double ``sun letter'' follows \symb{lam}.
+ \item \symb{alif} at the beginning of a word carries \symb{wasla} instead of the vowel
+ indicator if the preceding word ended with a vowel.
+ \end{itemize}
+\item[\texttt{\string\vocalize}:] as above, but \symb{sukun} and \symb{wasla} will not be generated except
+ if explicitly indicated by ``quoting''.
+\item[\texttt{\string\novocalize}:] no diacritics will be generated except if explicitly asked for
+ by ``quoting''.
+\end{labeling}
+%
+In all modes, a double consonant will generate \symb{tashdid}, and \verb+'A+ always
+generates \symb{madda} on \symb{alif}. After \verb+aN+ the silent \symb{alif} character is
+generated if necessary. The silent \symb{alif} may also be explicitly indicated
+by \verb+aNa+ or \verb+aNA+, or coded literally as \verb+A+ in \verb+\novocalize+ mode. If a
+silent \symb{alif maqsoura} is wanted instead, write \verb+aNY+, \verb+aN_A+, \verb+Y+ or \verb+_A+.
+A silent \symb{alif} after \symb{waw} is indicated by \verb+Ua+, \verb+UA+ or \verb+Wa+, \verb+WA+ (with
+a capital \verb+W+!).
+
+
+\subsection{Transcription:}
+
+In addition to the arabic writing, the standard scientific transcription
+may also be obtained from a fully vocalized input text. This is indicated
+by ``\verb+\transtrue+'' and may be switched off again by ``\verb+\transfalse+''. If ONLY
+the transcription is wanted, you can deactivate the arabic writing by
+``\verb+\arabfalse+''; it can be reactivated by ``\verb+\arabtrue+''. If both modes are
+active their output will be interleaved line by line.
+
+The transcription mode assumes that the input text is in the Arabic
+language and has been coded according to the rules given above. For words
+from other languages the transcription might be in error. For Arabic text,
+the following special cases are handled:
+%
+\begin{itemize}
+\item after the article, a double consonant will be assimilated;
+\item an initial vowel will be omitted if the preceding word ended with a
+ vowel. If that is not wanted start with \symb{hamza}.
+\item a silent \symb{alif} or \symb{alif maqsoura} after \verb+N+ (\symb{tanwin}) and \verb+U+ is
+ omitted in the transcription. The same happens after \symb{waw} if it is
+ written \verb+W+.
+\end{itemize}
+
+For space economy, the transcription module is NOT loaded by default. If
+you want to use it, add the style option ``\texttt{atrans}'' with \LaTeX; and with
+Plain \TeX, say ``\verb+\input atrans.sty+''.
+
+
+\subsection{Support for other languages:}
+
+\ArabTeX is primarily intended for writing texts in classical and modern
+Arabic, but it also provides limited support for several other languages
+that are customarily written in the arabic alphabet. The vocalization and
+the transcription cannot generally be expected to be correct, but might
+work by accident.
+
+In order to switch to the conventions for one of these languages, say
+``\verb+\setfarsi+'', ``\verb+\seturdu+'', ``\verb+\setpashto+'', ``\verb+\setmaghribi+''; ``\verb+\setarab+'' is the
+default and can also be used to switch back to the arabic conventions.
+
+
+\subsubsection{Farsi, Dari:}
+
+All characters needed for writing Farsi are available by default. The
+short vowels \verb+e+ and \verb+o+ are mapped to \symb{i} and \symb{u}, the long vowels \verb+E+
+and \verb+O+ to \symb{I} and \symb{U}.
+
+The \symb{izafet} connection may be written literally, which may look awkward
+in the case of \verb+h"'+, or always as \verb+-i+ (with hyphen); then the correct
+spelling will be determined from the context. Likewise the \symb{yah-i-wahdat}
+can always be written \verb+-I+.
+
+The final \symb{yah} carries no dots.
+
+Farsi uses the Nasta`liq font if available.
+
+
+\subsubsection{Ottoman:}
+
+see Farsi.
+
+
+\subsubsection{Kurdish:}
+
+see Farsi.
+
+
+\subsubsection{Urdu:}
+
+The additional characters in Urdu are coded as follows:
+%
+\begin{codetable}{1}
+ h & always denotes the ``two-eyed \symb{hah}'' \\
+ ,h & the ``wavy'' \symb{hah} letter \\
+ ,t & \symb{tah} with a small \symb{ttah} accent \\
+ ,d & \symb{dal} with a small \symb{ttah} accent \\
+ ,r & \symb{rah} with a small \symb{ttah} accent \\
+ .n & \symb{noon} without a dot (modifies a preceding vowel) \\
+ E & \symb{yah bari} in the final position, otherwise mapped to \symb{yah} \\
+ O & mapped to \symb{U}
+\end{codetable}
+
+The short vowels \verb+e+ and \verb+o+ are mapped to \symb{a} and \symb{u}.
+
+\emph{Note:} Some of the given codings also occur in Pashto but with a different
+meaning, see below.
+
+Urdu uses the Nasta`liq font if available.
+
+
+\subsubsection{Pashto:}
+
+The additional characters for Pashto are coded as follows:
+%
+\begin{codetable}{1}
+ ,t & \symb{tah} with a small loop \\
+ ,d & \symb{dal} with a small loop \\
+ ,r & \symb{rah} with a small loop \\
+ .n & \symb{noon} with a small loop \\
+ g & \symb{gaf} is written with a small loop instead of a bar \\
+ ,z & \symb{rah} with one dot above and one below \\
+ ,s & \symb{sin} with one dot above and one below \\
+ e & like \symb{a}, with a \symb{zwarakay} mark if vocalized \\
+ e'i & \symb{yah} with \symb{hamza} \\
+ E & \symb{yah} with two dots below aligned vertically \\
+ Ey & \symb{yah} written with a final stroke \\
+ o & mapped to \symb{u} \\
+ O & mapped to \symb{U} \\
+ w"' & \symb{hamza} on \symb{waw} \\
+ h"' & \symb{hamza} on \symb{hah}
+\end{codetable}
+
+The \symb{qur'an alif} accent is not available for Pashto.
+
+The rules for \symb{izafet} and \symb{yah-i-wahdat} apply.
+
+Note: Some of the given codings also occur in Urdu but with a different
+meaning, see above. For writing some words in the Urdu style, write the
+command \verb+\seturdu+ and afterwards switch back to the Pashto conventions by
+\verb+\setpashto+.
+
+
+\subsubsection{Maghribi:}
+
+This is just a different writing convention. \symb{fah} is written with one dot
+below the letter, \symb{qaf} with one dot above the normal letter form of
+\symb{fah}. The three dots of \symb{vah} are put below the letter. Otherwise like
+Arabic.
+
+
+\subsection{Miscellaneous features:}
+
+As \ArabTeX is slow, it will produce some terminal output while running
+to indicate it is still alive. If that is not wanted, say ``\verb+\quiet+'' or
+``\verb*+\tracingarab = 0 +'' (outside an Arabic Environment). ``\verb*+\tracingarab = 1 +''
+will report arabic paragraphs, a value of 2: arabic lines and insertions,
+a value of 3 or more: individual items.
+
+Whether \symb{yah} in the final position carries dots or not depends on the
+chosen language convention. You can override this by ``\verb+\yahdots+'' and
+``\verb+\yahnodots+''.
+
+To reproduce erroneous or archaic texts exactly as they are, the
+following additional codings are available:
+%
+\begin{codetable}{1}
+ .k & \symb{kaf} in final position without a diacritical mark \\
+ .f & \symb{fah} without a dot \\
+ .b & \symb{bah} without a dot \\
+ .n & \symb{noon} without a dot (not available for Pashto) \\
+ Y & \symb{alif maqsoura}, \symb{yah} without dots in all positions. \\
+\end{codetable}
+
+
+\subsection{How to move from Version 1 to Version 2}
+
+Version 2 is not fully compatible with Version 1; however, moving to the
+new version should cause little problems, and is recommended as version 1
+is no longer supported. Apart from some extensions, most changes were
+introduced in order to better conform to the transliteration standards,
+and to have less compatibility problems with \TeX\ and \LaTeX. Further
+versions are expected to be upward compatible if no grave bugs turn up.
+
+The main differences between versions 1 and 2 are:
+%
+\begin{itemize}
+\item The font size has increased, so the document layout may change. The old
+ font can no more be used.
+\item Some arabic characters are now coded differently: \symb{`ain} is denoted by a
+ left quote, and \verb+c+, \verb+^z+, \verb+^t+, and \verb+.n+ denote different characters
+ from what they did before. This was changed in order to better conform
+ to the standard transliteration.
+\item There are a lot more ligatures than before. This normally need not
+ concern the user.
+\item \verb+\vocalize+ will no more generate \symb{sukun} and \symb{wasla} except if explicitly
+ indicated by quoting. See \verb+\fullvocalize+.
+\item Arabic Environments are always bracketed by the new control sequences\\
+ \verb+\begin{arabtext}+ and \verb+\end{arabtext}+ even if only the transcription is
+ wanted.
+\item Short arabic quotations are now bracketed by \verb+\<+ and \verb+>+ so \verb+<+ has its
+ standard \TeX\ meaning.
+\end{itemize}
+
+We recommend converting existent input files to the new notation. If that
+is impractical in special cases, the \LaTeX\ option ``\texttt{oldarabtex}'' and/or the
+command ``\verb+\oldarabtex+'' will switch back to most of the old conventions (and
+problems). This shortcut will probably go away in some future version.
+
+
+\subsection{Acknowledgments:}
+
+The development of \ArabTeX would not have been possible without the
+assistance of many people. Apart from my local team, helpful advice came
+among others from Wolfdietrich Fischer, Ahmed El-Hadi, Abdelsalam Heddaya,
+Iqbal Khan, Tom Koornwinder, Eberhard Krueger, Asif Lakehsar, Jan Lodder,
+Richard Lorch, Eberhard Mattes, and Bernd Raichle. I also have to thank
+the many people who sent bug reports and comments.
+
+
+\subsection{Please send bug reports, suggestions and inquiries to the author:}
+
+\noindent
+Prof. Klaus Lagally\\
+Institut fuer Informatik\\
+Universitaet Stuttgart\\
+Breitwiesenstrasse 20--22\\
+D-70565 Stuttgart \\
+GERMANY
+
+\medskip
+\noindent
+\texttt{lagally@informatik.uni-stuttgart.de}
+
+\bigskip
+\noindent
+\textbf{Copyright \textcopyright\ 1990--1993, Klaus Lagally}
+
+
+\end{document}
diff --git a/language/arabic/arabtex/arabtex.gif b/language/arabic/arabtex/arabtex.gif
new file mode 100644
index 0000000000..04c2a4df31
--- /dev/null
+++ b/language/arabic/arabtex/arabtex.gif
Binary files differ
diff --git a/language/arabic/arabtex/arabtex.htm b/language/arabic/arabtex/arabtex.htm
new file mode 100644
index 0000000000..99cad67167
--- /dev/null
+++ b/language/arabic/arabtex/arabtex.htm
@@ -0,0 +1,267 @@
+<html><head>
+<title>ArabTeX Version 3</title></head>
+<body>
+<center>
+<img src="arabtex.gif" alt="ArabTeX logo">
+<h1> ArabTeX Version 3 </h1>
+</center>
+
+<hr><!-- ================================================ -->
+
+<a href="http://129.69.218.213/arabtex/doc/arabtex/html/changes.htm">
+ Last changes: Version 3.11s, July 02, 2006
+</a>
+<p>
+<img src="new1.gif" alt="new">
+There is also a prototype of
+<a href="http://129.69.218.213/arab312/doc/arabtex/html/changes.htm">
+Version 3.12, July 06, 2006
+</a>
+
+<hr><!-- ================================================ -->
+
+<img src="new1.gif" alt="new">
+There is a new version of the User Manual
+<a href="http://129.69.218.213/arabtex/doc/arabdoc.ps">
+(PS),</a>
+<a href="http://129.69.218.213/arabtex/doc/arabdoc.pdf">
+(PDF).</a>
+<br>
+This version is reasonably current, but still being updated.
+<p>
+Should you be an Orientalist, you might want to look at a small list of
+<a href="http://129.69.218.213/arabtex/doc/arabtex/html/refer.htm">applications</a>.
+
+</p><hr><!-- ================================================ -->
+
+ The set of files, of which THIS file is supposed to be part of,
+ contains a package extending the capabilities of TeX/LaTeX to
+ generate the arabic writing from an ASCII transliteration for
+ texts in several languages using the arabic script. Several
+ other common encodings are also supported.
+<p>
+
+<img src="new1.gif" alt="new">
+The package is available in packed form as
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arab311.zip">
+arab311.zip</a>
+<!--
+and <a href=ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtds.zip>arabtds.zip</a>
+-->
+for PC users, and
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arab311.tgz">
+arab311.tgz</a> or
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arab311.tar.z">
+arab311.tar.Z</a> for *N*X users.
+<br>
+Note: we had to change the file names to avoid some server problems.
+<p>
+
+<img src="new1.gif" alt="new">
+The files
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/tex311.zip">
+tex311.zip</a> and
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/tex311.tgz">
+tex311.tgz</a>
+contain just the ArabTeX macros.
+For upgrading to the minor version (3.11), downloading these is sufficient
+if the fonts are already installed.
+<p>
+Depending on the server there may be also the unpacked files,
+or only these.
+</p>
+
+<p>
+In case of doubt, check for the latest version of
+"<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty">
+apatch.sty</a>".
+<br>
+This file contains last minute corrections that possibly
+are not yet contained in the packed files.
+</p><p>
+
+The following ASCII files give more detailed information:
+
+<table>
+<!--
+<tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/doc/arabtex.doc">
+arabtex.doc
+ </td><td>
+ a short introduction ( rather out of date)
+</td></tr>
+-->
+
+<tbody><tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/doc/txt/arabtex.faq">
+arabtex.faq</a>
+
+</td><td>answers to some Frequently Asked Questions
+ (updated as necessary)
+</td></tr>
+
+<tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/changes.txt">
+changes.txt</a>
+
+</td><td>release history, new features, and known bugs
+ (updated as necessary)
+</td></tr>
+
+<tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/doc/changes2.txt">
+changes2.txt</a>
+
+</td><td>release history up to version 3.00
+
+</td></tr>
+
+<tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/install.txt">
+install.txt</a>
+
+</td><td>list of available files, and installation notes
+</td></tr>
+
+<tr><td valign="top">
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty">
+apatch.sty</a>
+
+</td><td>last minute corrections; put this file onto the TEXINPUT path;
+it will patch automatically (updated as necessary).
+</td></tr>
+</tbody></table>
+
+There are also various additional documentation files.
+</p><p>
+<img src="new1.gif" alt="new">
+The contents of a subdirectory "REPORT", if still present, are OBSOLETE.
+Refer to the (draft of the)
+<a href="http://129.69.218.213/arabtex/doc/arabdoc.pdf">
+user manual</a> instead.
+
+</p><hr><!-- ================================================ -->
+
+There was a prototype, ArabTeX Version 1, which is now OBSOLETE.
+<br>
+
+Version 2 was the first complete release accompanied by a manual,
+but is no more being maintained.
+<br>
+
+Version 3 is an upward compatible extension of Version 2
+with many new features, e.g. the possibility to read input files
+in the ASMO 449, ISO 8859-6, and UTF-8 Codes,
+and a host of new commands for better formatting of Arabic text,
+or catering for historic writing styles.
+<br>
+
+Versions from 3.05 onward contain a package to process Hebrew,
+and provide long right-to-left insertions.
+
+For details, consult the manual.
+
+<hr><!-- ================================================ -->
+
+<img src="new1.gif" alt="new">
+ ArabTeX is copyrighted by the author. If you use the system for
+ scientific work please give appropriate credit to the software
+ and the author (e.g. in the colophon of a monograph.) We also
+ appreciate a complimentary copy of any scientific work produced
+ with ArabTeX.
+<p>
+
+<img src="new1.gif" alt="new">
+ArabTeX may be redistributed and/or modified under the terms
+of the LaTeX Project Public License distributed
+from CTAN archives in the directory
+<a href="ftp://ftp.dante.de/tex-archive/macros/latex/base/lppl.txt">
+macros/latex/base/lppl.txt</a>;
+either version 1 of the License,
+or (at your option) any later version.
+
+</p><hr><!-- ================================================ -->
+
+ArabTeX is an experimental system and supposed to change without
+prior notice. Whoever will use it does so at her/his/its own risk.
+We cannot take any responsibility on correct function, suitability
+for whatever purpose, or correct documentation.
+
+If you have any complaints or suggestions, please forward them to
+<a href="mailto:lagally@informatik.uni-stuttgart.de">the author</a>.
+We shall consider any reasonable suggestion,
+but we will use our own judgment on changes,
+and our resources are severely limited.
+<p>
+
+If problems turn up while running ArabTeX, please
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.htm">
+check first</a>
+at "ftp.informatik.uni-stuttgart.de" whether there is a new version,
+or whether there are any new corrections in
+"<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty">
+apatch.sty</a>".
+
+If the problem goes away with the new version, please inform the
+server you got ArabTeX from; otherwise
+<a href="mailto:lagally@informatik.uni-stuttgart.de">send a bug report</a>
+to the author.
+
+</p><hr><!-- ================================================ -->
+
+The reference site
+"<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex">
+ftp.informatik.uni-stuttgart.de</a>"
+always holds the current version.
+<br>
+We know that the CTAN servers
+"<a href="ftp://ftp.tex.ac.uk/">ftp.tex.ac.uk</a>",
+"<a href="ftp://ftp.dante.de/">ftp.dante.de</a>",
+"<a href="ftp://ctan.tug.org/">ctan.tug.org</a>"
+mirror this site and update on a regular schedule.
+
+<hr><!-- ================================================ -->
+
+An empty E-Mail message to
+"<a href="mailto:arabtex@informatik.uni-stuttgart.de">
+arabtex@informatik.uni-stuttgart.de</a>"
+will produce a current status report.
+
+<hr><!-- ================================================ -->
+
+<blockquote>
+ Prof. Klaus Lagally<br>
+ Institut fuer Formale Konzepte der Informatik<br>
+ Universitaet Stuttgart<br>
+ Universitaetsstrasse 38<br>
+ D-70569 Stuttgart<br>
+ GERMANY<br>
+ lagally@informatik.uni-stuttgart.de
+</blockquote>
+<hr>
+ Copyright (c) 1990 - 2006,
+<a href="mailto:lagally@informatik.uni-stuttgart.de">
+ Klaus Lagally </a>
+<hr>
+</body></html>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/language/arabic/arabtex/arabtex.tex b/language/arabic/arabtex/arabtex.tex
new file mode 120000
index 0000000000..df1c333d9f
--- /dev/null
+++ b/language/arabic/arabtex/arabtex.tex
@@ -0,0 +1 @@
+texinput/arabtex.tex \ No newline at end of file
diff --git a/language/arabic/arabtex/changes.txt b/language/arabic/arabtex/changes.txt
new file mode 100644
index 0000000000..911e50b9f1
--- /dev/null
+++ b/language/arabic/arabtex/changes.txt
@@ -0,0 +1,2438 @@
+CHANGES.TXT 02.07.2006
+--------------------------------------------------------------------------
+ ArabTeX Version 3
+ =================
+--------------------------------------------------------------------------
+ NOTE: Version management:
+
+ - We distinguish major versions "m.00", minor versions "m.nn-"
+ with nn > 0, and patch versions "m.nnx" where "x" is a letter.
+
+ - to update from an older major version: reinstall completely.
+
+ - to update from an older minor version: replace the contents of
+ "TEXINPUT" and, if so indicated, "REPORT". Replace the fonts
+ only if so indicated explicitly.
+
+ - to update to a newer patch version: replace the ASCII file
+ "apatch.sty" and, if you use Hebrew, "hepatch.sty". These files
+ are distributed as unpacked text files, and will be applied
+ automatially whenever starting ArabTeX.
+
+ - Patch versions within the same minor version are cumulative, so
+ a newer patch will encompass all earlier versions.
+
+ - To back out from a patch version, replace "apatch.sty" by an
+ earlier version (within the same minor version only!) if still
+ locally available, or else edit out the current additions from
+ "apatch.sty" and, if applicable, "hepatch.sty" (save a copy
+ first!). Also please inform the author why you backed out.
+
+ - There is no provision to return gracefully to earlier minor or
+ even major versions. We can make them available on request, but
+ you should have good reasons, and there will be no support.
+
+==========================================================================
+02.07.2006: Version 3.11s
+
+ Fixes:
+
+ - In mixed paragraphs, the handling of horizontal spacing between
+ Arabic insertions and Roman text, and vice versa, is determined
+ by the spaces (if present) in the input text inside and outside
+ of the RL{} commands.
+
+ New features:
+
+ - The experimental package "saw.sty" provides macros \SAW and \ALS
+ for producing special glyph combinations for theological and
+ religious texts (with the exception of the Holy Qur'an, which we
+ do not support). These macros work inside and outside of Arabic
+ mode; presently they are available in \normalsize only.
+
+ Note:
+
+ - We are informed of a project, within the Muslim world, to extend
+ ArabTeX by special features for printing the Holy Qur'an. We
+ know about the difficulties, and we wish them success.
+
+ Installation:
+
+ - download "apatch.sty" and, if required, "saw.sty".
+
+--------------------------------------------------------------------------
+17.04.2006: Version 3.11r
+
+ Fixes:
+
+ - A glitch in EDMAC mode was fixed.
+
+ - <Roman insertions> within Arabic text work again, also when the
+ <shorthand> notation for Arabic insertions in Roman text is in
+ force.
+
+ New features:
+
+ - Processing of bidirectional paragraphs has been reimplemented
+ completely. Roman paragraphs with Arabic script insertions may
+ have arbitrary, variable '\parshape's and even nested recursive
+ insertions to arbitrary depth. This is rarely needed, but it is
+ a strong torture test for the new algorithm.
+
+ - With LaTeX, the package 'lineno.sty' for producing line numbers
+ is now fully supported. The former restrictions no more apply.
+
+ Installation:
+
+ - download "apatch.sty" and also "alocal.sty".
+
+--------------------------------------------------------------------------
+01.03.2006: Version 3.11q
+
+ Fixes:
+
+ - Some more incompatiblities with Plain TeX have been fixed.
+
+ - Vertical spacing commands in LaTeX work better within Arabic
+ environments.
+
+ New features:
+
+ - A new file "alocal.sty" was introduced in order to facilitate
+ loading local extensions for individual users. Normally it
+ does nothing, but must be present.
+
+ - There is some limited support for users of "lineno.sty"; if
+ that package is present, line numbers will work in the basic
+ \linenumber mode within Arabic environments, and \linelabel
+ can also be used. Other features have not been tested.
+
+ CAUTION: The command \RL{} is presently not quite compatible
+ with the "lineno.sty" package, and might break, both itself
+ and the line numbers! In that case, try \< > for insertions.
+
+ Installation:
+
+ - download "apatch.sty" and also "alocal.sty".
+
+--------------------------------------------------------------------------
+08.02.2006: Version 3.11p
+
+ Fixes:
+
+ - There was an incompatibility between the patching mechanism in
+ "apatch.sty" and Plain TeX (only!).
+
+ - Final "ha'" in Jawi had the wrong shape.
+
+ New features:
+
+ - There is an improved version of "verses.sty"; for documentation
+ see the file itself.
+
+ Installation:
+
+ - download "apatch.sty" and, if required, "verses.sty".
+
+--------------------------------------------------------------------------
+01.02.2006: Version 3.11o
+
+ Fixes:
+
+ - The lines of a bidirectional paragraph were sometimes mixed up
+ when a page break interfered. This was neither easy to find nor
+ to fix.
+
+ - An incompatible (!) change in Plain TeX 3.1415926 had broken the
+ transcription module. Use of ArabTeX with LaTeX was not affected.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+06.04.2005: Version 3.11n
+
+ Fixes:
+
+ - In the Arabic document classes the commands 'figure' and 'table'
+ were broken. They work again.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+23.01.2005: Version 3.11m
+
+ Fixes:
+
+ - In the Arabic document classes the list environments were
+ broken. Their labels work again.
+
+ - Punctuation marks in the Arabic script have been moved down
+ slightly.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+24.06.2004: Version 3.11l
+
+ Fixes:
+
+ - An incompatibility between Kashmiri mode and Hebrew mode was
+ taken care of. A small glitch in Uighuric mode was fixed.
+
+ - Arabic and Hebrew (right to left) insertions in a left-to-right
+ paragraph now also work correctly within LaTeX table fields
+ specified with the p{} qualifier.
+
+ New features:
+
+ - The skip values \LRskip {\hskip \z@ plus 0.1em } before a RTL
+ insertion, and \RLskip {\hskip \z@ plus 0.1em } after a RTL
+ insertion, may be adjusted by the user to tune the appearance
+ of bidirectional paragraphs.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+24.05.2004: Version 3.11k
+
+ Fixes:
+
+ - Arabic and Hebrew (right to left) insertions in a left-to-right
+ paragraph now also work correctly at the very beginning of the
+ paragraph, and also in the context of nested LaTeX environments.
+ There used to be spurious spaces and shifted baselines.
+
+ Note:
+
+ - the reading modules 'bhs.sty', 'witbhs.sty', and 'buck.sty'
+ presently cannot coexist with other input encoding methods for
+ Arabic and Hebrew, not even with the standard transliteration
+ encoding. This restriction might go away in further versions.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+17.05.2004: Version 3.11j
+
+ Fixes:
+
+ - The unconditional placement of a 'hamza' mark on a character
+ by the suffix < " ' > had been disabled for internal reasons.
+ It is active again.
+
+ - In Hebrew mode, the placement of diacritics within a final kaph
+ letter was fixed again. This had already been corrected in the
+ version 3.11d, but that patch did not work.
+
+ New features:
+
+ - The experimental reading module 'buck.sty' for the 'Buckwalter'
+ encoding conventions has been upwards compatibly extended to
+ cover XML compatible extensions, several Persian letters, and
+ new encodings of diacritic marks as proposed by the Archimedes
+ project. For details and open issues, enquire.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+26.04.2004: Version 3.11i
+
+ Fixes:
+
+ - The algorithm for bidirectional line-breaking in mixed Arabic-
+ Roman paragraphs has been completely re-implemented. It is now
+ shorter and faster, and hopefully, has fewer bugs.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+15.03.2004: Version 3.11h
+
+ Fixes:
+
+ - For Pashto and Sindhi modes, and also for special purposes,
+ a few input encodings have been changed to conform with the
+ new version of the user manual (still in preparation).
+
+ New features:
+
+ - For YIVO Yiddish, a few additional input encodings have been
+ provided to write Hebrew words according to the conventions
+ of the "Yiddishe Shraybmashinke" by Refoyl Finkel.
+
+ - In 'verses.sty' the command \setversedim {length}{gap} to set
+ the length of the halfverses and their separation, has been
+ expanded to the format \setversedim {length1}[length2]{gap} by
+ an optional second (!) argument to set the lengths of the
+ two hemistichs independently. The old format still works.
+ The command \halfverses {first}[conn]{second} is equivalent to
+ \connverses {first}{conn}{second} (mind the brackets!)
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+26.02.2004: Version 3.11g
+
+ Fixes:
+
+ - When the Arabic Windows encoding is used, double quotes <">
+ are interpreted as directional quotes <``> and <''> according
+ to the context.
+
+ - When using 'verses.sty' the text will be centered, both in
+ Plain TeX mode and in LaTeX mode. Whenever this is not feasible
+ due to the indicated verse dimensions, hemistichs will be put
+ flush right and flush left in alternate lines. Connecting the
+ hemistichs in that case is not possible; end the last word of
+ the first hemistich, and start the first word of the second,
+ by a dash <-> to get the connecting forms of the appropriate
+ letters, if they exist.
+
+ New features:
+
+ - Within an Arabic word in transliteration encoding, a plus sign
+ <+> will unconditionally place a 'sukun' or, after an initial
+ 'alif', a 'wasla', on the preceding letter. As the first
+ character, or isolated or after punctuation, the plus sign
+ denotes itself.
+
+ - In Sindhi mode, the special ending 'in' as in <min> and <'in>
+ may also be coded <.mIN> and <'IN>.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+12.02.2004: Version 3.11f
+
+ Fixes:
+
+ - Some character assignments for Judeo-Arabic were corrected.
+
+ - Various minor technical bugs were found and corrected.
+
+ New features:
+
+ - The file 'arabwin.sty' is obsolete and should no more be used;
+ for the Arabic Windows encoding use 'cp1256.sty' instead. The
+ encoding is set by '\setcode{cp1256}' or '\setcode{arabwin}'.
+
+ - In pausal position, the feminine ending <aT> (tah marbuta) is
+ now transcribed as 'ah'. The input encoding is unchanged.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+08.12.2003: Version 3.11e
+
+ Fixes:
+
+ - Bidirectional paragraphs are now handled correctly even within
+ the LaTeX environments 'quote' and 'quotation'.
+
+ - In Hebrew mode, the positioning of 'nikudot' on final 'kaph'
+ was improved.
+
+ - The handling of final 'Urdu wavy hah' was improved.
+
+ - After switching the font size in LaTeX (also implicitly in
+ section titles and such), an initial number sometimes was
+ lost even outside of Arabic or Hebrew mode. This has been
+ corrected.
+
+ New features:
+
+ - The font 'xnsh14' is the default for Arabic mode. In Hebrew
+ mode, 'hclassic' is the default.
+
+ - ArabTeX now seems to be compatible with 'inputenc.sty'.
+
+ - In the Unicode mode, additional extended Arabic characters
+ are now supported, so are ZWJ = ZERO WIDTH JOINER and ZWNJ
+ = ZERO WIDTH NON-JOINER (see below).
+
+ - 'dotless bah' and 'Uzbek ae' are supported in Unicode mode.
+
+ - Within an Arabic word in transliteration encoding, a star <*>
+ will unconditionally place a 'shadda' on the preceding letter.
+ At the beginning of a word, or isolated or after punctuation,
+ the star denotes itself.
+
+ Notes:
+
+ - Changes of input encoding are \global for technical reasons.
+
+ - Private reading modules for individual users may be broken
+ by the new reading strategy introduced for compatibility with
+ 'inputenc.sty'. In case of problems, contact the author. New
+ versions of 'buck.sty, 'bhs.sty', and 'witbhs.sty' have been
+ prepared.
+
+ Open issues:
+
+ - The space introduced by ZWNJ = ZERO WIDTH NON-JOINER is still
+ too wide. No fix is known.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+23.10.2003: Version 3.11d
+
+ Fixes:
+
+ - In the Arabic document classes, the formatting of the table
+ of contents was improved. A strange bug was corrected.
+
+ - A storage leak was found which prevented the formatting of
+ longer documents, leading to 'save stack overflow'.
+
+ - A bug in the ligatures module was found which used to produce
+ bogus messages 'missing letter y in font xnsh14' and to
+ slightly interfere with correct vowelization.
+
+ - A bug in the output module was found which used to produce
+ bogus messages 'underfull vbox while \output was active'.
+ The fix might slightly influence page breaking.
+
+ New features:
+
+ - There is now limited support for Arabized LyX.
+ Since there are no 'italic', 'slanted', 'sanserif' etc. fonts
+ available for ArabTeX, all special font variants are presently
+ mapped into 'bold face'. This could be changed at the user's
+ request; please send any suggestions to the author.
+
+ - The messages in the LOG file are less verbose now.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+17.09.2003: Version 3.11c
+
+ Fixes:
+
+ - in Hebrew mode, a spurious 'shwa' on 'gimel' was fixed.
+
+ New features:
+
+ - Hebrew mode provides a new command \setjudarab to activate
+ an experimental Judaeo-Arabic mode. Input is supposed to be
+ Arabic in the standard transliteration encoding (other modes
+ might work by accident), output is an extended Hebrew writing
+ in the chosen Hebrew font, and the standard transliteration
+ when activated. Arabic vowels are presently not provided; the
+ Hebrew vowels work but are presumably of no use.
+
+ Caution: The new mode can be expected to contain errors. We
+ do not know the exact writing conventions, and have no access
+ to any relevant literature. Scholars in the field are urged
+ to contact the author. Comments and suggestions are invited.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+08.09.2003: Version 3.11b
+
+ Fixes:
+
+ - the selection of fonts in Arabic and Hebrew mode has been
+ drastically changed, and several logical errors have been
+ eliminated. Some of the remaining bugs have been fixed.
+
+ - Hebrew Plain mode works again. To use it, download the new
+ version of 'hebtex.tex'(!), the Hebrew Plain driver. The
+ corrections cannot be handled by "apatch.sty" alone.
+
+ New features:
+
+ - ArabTeX now seems to cooperate with LyX in Arabic and Hebrew
+ mode.
+
+ Installation:
+
+ - download "apatch.sty".
+
+ - in case you are using the Hebrew Plain mode (and only then)
+ also download the new version of the driver module "hebtex.tex"
+ (not "hebtex.sty"!)
+
+--------------------------------------------------------------------------
+27.08.2003: Version 3.11a
+
+ Fixes:
+
+ - the 'hanging heh' in Urdu mode has been fixed.
+
+ - the selection of fonts in Arabic and Hebrew mode has been
+ drastically changed, and several logical errors have been
+ eliminated. Hopefully there are not too many new bugs.
+
+ - Hebrew Plain mode should work again. If you are not directly
+ concerned, forget it; tests are going on. The necessary
+ corrections cannot be handled by "apatch.sty" alone, see the
+ remarks below.
+
+ Installation:
+
+ - download "apatch.sty".
+
+ - in case you are using the Hebrew Plain mode (and only then)
+ also download the new version of the driver module "hebtex.tex"
+ (not "hebtex.sty"!)
+
+--------------------------------------------------------------------------
+22.08.2002: Version 3.11
+
+ Status:
+
+ - This is a new minor version. All existing patches have been
+ merged into the respective macro files. To install it, load
+ and replace all macros in the subdirectory "TEXINPUT"; there
+ are some new files, and some have been extensively rewritten!
+ The functionality is supposed to be unchanged.
+
+ - Distribution and modification of ArabTeX is now governed by
+ the Latex Project Public License (see LPPL.TXT).
+
+ - We recommend installing of the fonts "xnash14" and "xnash14bf"
+ to obtain better quality of output. These fonts are now the
+ default; to revert to the old font versions use the command
+ "\oldarabfont".
+
+ New features:
+
+ - In Hebrew mode, all standard fonts available on CTAN are now
+ supported, including the possibility of generating vowel points
+ in \vocalize mode.
+
+ Bugs:
+
+ - Hebrew Plain TeX mode is currently broken.
+
+ Installation:
+
+ - Download the contents of "TEXINPUT", and in case of any font
+ problems also "MFINPUT".
+
+ - In case of problems with old DVI files regenerate them; or else
+ download "arabsymb.mf" and regenerate the font "nash14".
+
+==========================================================================
+23.04.2003: Version 3.10k
+
+ Fixes:
+
+ - some glitches in Farsi mode were fixed.
+
+ - in Uighuric mode, some transcriptions were missing.
+
+ - in Urdu mode, final 'wavy hah' is generated now.
+
+ New features:
+
+ - in Uighuric mode, <:s> produces 'sin' with three dots below.
+ <A> produces 'alif' with 'madda', so does <^A>.
+
+ - in Farsi mode and its descendants, 'kasra' on a double letter
+ will be positioned below the letter instead of below the
+ 'shadda' mark. This feature will later become an option.
+
+ - the internal test mode is less verbose. This need not concern
+ normal users.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+16.11.2002: Version 3.10j
+
+ Fixes:
+
+ - the handling of 'ayin' in Hebrew mode was improved.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+14.11.2002: Version 3.10i
+
+ Fixes:
+
+ - "matres lectionis" in Hebrew work better.
+
+ - Version 3.10h was broken on some servers!
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+28.08.2002: Version 3.10h
+
+ Fixes:
+
+ - The math command \cap was broken.
+
+ - Line breaking of Roman insertions within Arabic mode seems to
+ work correctly now.
+
+ New features:
+
+ - There is formally a new language mode \setbalut for Balochy.
+ Presently it is mapped to \setpashto but will be extended as
+ soon as the exact writing rules are known.
+
+ - The command \cond #1{#2}{#3}\fi will expand to either #2 or #3
+ depending on the TeX conditional #1. It is nearly equivalent
+ to #1 #2\else #3\fi but may also be used in Arabic mode. The
+ command is skippable and fully expandable.
+
+ - \endinput may occur in Arabic mode.
+
+ - The input character <G> encodes Pashto 'gAf' with a ring. In
+ Farsi and Pashto mode, <g> produces Farsi 'gAf' with a stroke.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+16.06.2002: Version 3.10g
+
+ Fixes:
+
+ - in Pashto mode, <.n> will produce 'noon' with a dot and a ring.
+ Some further Pashto codes can be found in Table 4.2.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+11.05.2002: Version 3.10f
+
+ Fixes:
+
+ - in Persian mode, some bugs concerning 'hamze on he' were fixed.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+14.04.2002: Version 3.10e
+
+ Fixes:
+
+ - in the standard Hebrew transcription, 'shwa' was missing.
+
+ - in Persian mode, 'hamze on he' is produced if required.
+
+ - in Hebrew mode using the 'hclassic' and 'hcaption' fonts, the
+ vowel points are generated differently to render better when
+ using T1 fonts.
+
+ - in CP1256 encoding, explicit 'shadda' works now correctly.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+07.03.2002: Version 3.10d
+
+ Fixes:
+
+ - In many of the non-standard encodings the handling of double
+ letters (implicit shadda or not) has been corrected.
+
+ - In the Arabic document classes 'arabbook', 'arabrep', 'arabart'
+ the handling of figure and table \captions has been improved.
+
+ Hints:
+
+ - When using a local addition to ArabTeX together with a patch
+ version of ArabTeX, read the local addition by \input after
+ the command \begin{document}, not by an \usepackage command.
+ Otherwise a race condition occurs that could overwrite your
+ local additions.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+03.03.2002: Version 3.10c
+
+ Fixes:
+
+ - The default language is Arabic again.
+
+ - The LaTeX commands \footnote, \footnotemark, and \footnotetext
+ in normal LTR LaTeX mode were broken in version 3.10b. Sorry!
+
+ - In the Arabic document classes 'arabbook', 'arabrep', 'arabart'
+ the environment 'tabular' works correctly.
+
+ - In the Arabic document classes 'arabbook', 'arabrep', 'arabart'
+ the command \tableofcontents works correctly.
+
+ - In the Arabic document classes 'arabbook', 'arabrep', 'arabart'
+ the commands \table and \figure may have a \caption.
+
+ Hints:
+
+ - In the Arabic document classes 'arabbook', 'arabrep', 'arabart'
+ and *also* in normal LTR mode, within the \tabular environment
+ every row but the last must be terminated by \\, also if \hline
+ follows. The text of the error message has been improved.
+
+ New Features:
+
+ - The Arabic document classes 'arabbook', 'arabrep', 'arabart'
+ formerly required the use of the ArabTeX standard encoding for
+ correct functioning of generated section heads and the like.
+ This restriction was never noticed, and applies no more.
+
+ - Abjad numbers now also work with other input encodings.
+
+ - Within an Arabic environment the command \stdcode{some text}
+ accepts Arabic text in the ArabTeX standard encoding even if
+ otherwise some other encoding is in use. This may be useful
+ for local corrections.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+12.02.2002: Version 3.10b
+
+ Fixes:
+
+ - The LaTeX commands \footnote, \footnotemark, and \footnotetext
+ now work correctly within Arabic environments, even if only
+ transliteration mode is active. The output mode (transliterate,
+ Arabic writing, or both) of Arabic inserts in the footnote text
+ is inherited from the main document if not explicitly switched
+ locally within the footnote text.
+
+ Hints:
+
+ - Footnotes containing Arabic inserts might come out too high.
+ This may be prevented, at the risk of lines overlapping, by
+ \smash-ing the Arabic insert or even the complete footnote.
+
+ - Within transliteration mode hyphenation is only performed after
+ long vowels, thus \sloppy mode might be required. If the last
+ word of a line ends with a long vowel, a spurious hyphen will
+ appear. This is a bug; presently no fix is known!
+
+ New Features:
+
+ - The LaTeX footnote commands (see above) also work within the
+ Arabic document classes 'arabart', 'arabrep', and 'arabbook'.
+
+ - By default, or after the command \LRfootnotes, the footnotes
+ are positioned as in a Roman document, and the footnote text
+ is assumed to be Roman by default. Arabic inserts are produced
+ by \RL{ }.
+
+ - After the command \RLfootnotes, footnotes run from right to
+ left and the default language mode is Arabic. Roman inserts
+ are produced by \LR{ }.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+06.10.2001: Version 3.10a
+
+ Fixes:
+
+ - A few minor patches from 'v3.09' did not make it into 'v3.10'.
+
+ - The transliteration of '_h' was improved.
+
+ - Plain TeX mode now also uses fonts "xnash14" and "xnash14bf"
+ as the default.
+
+ - In Hebrew mode, 'cholem male' and vowels in contact now work
+ correctly.
+
+ - In Hebrew mode, footnotes containing Hebrew inserts now have
+ uniform baselines again.
+
+ New Features:
+
+ - All patches are now handled by "apatch.sty".
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+17.09.2001: Version 3.10
+
+ Status:
+
+ - This is a new minor version. All existing patches have been
+ merged into the respective macro files. To install it, load
+ and replace all macros in the subdirectory "TEXINPUT"; there
+ are some new files, and some have been extensively rewritten!
+ The functionality is supposed to be unchanged.
+
+ - Distribution and modification of ArabTeX is now governed by
+ the Latex Project Public License (see LPPL.TXT).
+
+ - We recommend installing of the fonts "xnash14" and "xnash14bf"
+ to obtain better quality of output. These fonts are now the
+ default; to revert to the old font versions use the command
+ "\oldarabfont".
+
+ New features:
+
+ - In Hebrew mode, all standard fonts available on CTAN are now
+ supported, including the possibility of generating vowel points
+ in \vocalize mode.
+
+ Bugs:
+
+ - Presently none are known.
+
+ Installation:
+
+ - Download the contents of "TEXINPUT", and in case of any font
+ problems also "MFINPUT".
+
+ - In case of problems with old DVI files regenerate them; or else
+ download "arabsymb.mf" and regenerate the font "nash14".
+
+==========================================================================
+13.05.2001: Version 3.09g
+
+ Fixes:
+
+ - Some spurious spaces in the transliteration were fixed.
+
+ - \tabular within \center was broken by \RL{}.
+
+ - Hamza and `Ayn were broken in a \tabbing environment.
+
+ New Features:
+
+ - The file "arabtds.zip" in the distribution, when available,
+ contains the ArabTeX package repacked according to the TDS
+ (TeX Directory Structure). To install the complete package,
+ PC Users of MikTeX and several other TeX distributions that
+ presuppose the TDS structure, should download this file only
+ (in binary mode!) and unpack it at the top level of their
+ local TEXMF tree. For other installations, moving around some
+ files or adjusting some access path might be required.
+
+ - Reminder: some TeX installations require a command "texhash"
+ or "texconfig" to activate a newly installed package.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+27.05.2000: Version 3.09f
+
+ Fixes:
+
+ - The LaTeX command \cdot works again.
+
+ - The LaTeX command \protect may appear in RL mode. It has no
+ visible effect.
+
+ - The vertical bar | has no function, but does no harm behind an
+ Arabic character that does not connect to the left.
+
+ - The behaviour of "wasla" in the transliteration was fixed.
+
+ - The vertical spacing of footnotes is no more influenced by \RL
+ insertions in the first line.
+
+ New Features:
+
+ - Brackets [ and ] and parentheses ( and ) may be used within an
+ Arabic or Hebrew word to indicate optional parts; they do not
+ change the connection behaviour of the adjacent characters.
+
+ Installation:
+
+ - download "apatch.sty" and "hepatch.sty".
+
+--------------------------------------------------------------------------
+05.04.2000: Version 3.09e
+
+ Fixes:
+
+ - to switch the transcription font say, e.g., \settransfont{\rm}.
+ \settransfont{rm} (forgetting the \) now also works, instead of
+ producing impressive garbage.
+
+ - an \RL{} insertion text may now begin with a space.
+
+ - footnotes containing \RL{} insertions have uniform baselines.
+
+ - the space command \ works within RL mode.
+
+ - \bf and \rm (for returning to normal) work within RL mode.
+
+ New Features:
+
+ - within RL environments, \newcommand, \newenvironment, and \def
+ and their relatives may be used to define new control sequences
+ which have to expand to legal ArabTeX input; they will not be
+ visible outside of the environment (even if \gdef or \xdef is
+ used.) For a user defined command to be visible both outside
+ and inside RL mode, define it in LR mode and announce it to the
+ ArabTeX command processor by \allowarab.
+
+ - the new commands \shadda, \madda, \sukun in Arabic mode and the
+ commands \raphe, \dagesh, \mappiq in Hebrew mode will place the
+ corresponding diacritic on the preceding letter. In Hebrew mode
+ \maqqef will produce a connector, \abbr an abbreviation mark.
+
+ - A single hyphen will be invisible in the RL writing, but will
+ show up in the transcription; the adjacent letters will always
+ assume the connecting form, if it exists, even at the beginning
+ or the end of a word.
+
+ - any paragraph containing \RL{} insertions will now have uniform
+ baselines. The users might have to adjust \baselinestretch.
+
+ - RL insertions now also work for encodings like MacOS Arabic and
+ MacOS Hebrew that provide an RL space.
+
+ Installation:
+
+ - download "apatch.sty"
+
+--------------------------------------------------------------------------
+18.03.2000: Version 3.09d
+
+ Fixes:
+
+ - the transcription did not work correctly within a LaTeX tabbing
+ environment since this environment mungles the accent commands.
+ (We consider this a mis-feature in LaTeX!)
+
+ Installation:
+
+ - download "apatch.sty"
+
+--------------------------------------------------------------------------
+19.10.1999: Version 3.09c
+
+ Fixes:
+
+ - "\cap" for capitalisation of the transcription now works also
+ within section titles and in the table of contents.
+
+ Installation:
+
+ - download "apatch.sty"
+
+--------------------------------------------------------------------------
+30.07.1999: Version 3.09b
+
+ Note: version 3.09a did not work.
+
+ Fixes:
+
+ - In the Hebrew mode, "maqqef" now works with all fonts.
+
+ Installation:
+
+ - download "hepatch.sty"
+
+--------------------------------------------------------------------------
+17.07.1999: Version 3.09
+
+ Status:
+
+ - This is a new minor version. All existing patches have been
+ merged into the respective macro files. To install it, load
+ and replace all macros in the subdirectory "TEXINPUT"; there
+ are some new files, and some have been extensively rewritten!
+ The functionality is supposed to be unchanged.
+
+ - We recommend installing of the fonts "xnash14" and "xnash14bf"
+ to obtain better quality of output. These fonts are now the
+ default; to revert to the old font versions use the command
+ "\oldarabfont".
+
+ New features:
+
+ - Many ArabTeX commands that used to be fragile in connection
+ with LaTeX are now robust.
+
+ - Within the LaTeX document classes "arabart", "arabrep", and
+ "arabbook" nearly all LaTeX environments are allowed also
+ within Arabic mode.
+
+ Recommendations:
+
+ - When typesetting Roman text with Arabic or Hebrew insertions, a
+ better result can usually be obtained by typesetting on a grid;
+ this can be accomplished by resetting the parameters \lineskip
+ to 0pt, \lineskiplimit to -30pt, and redefining \baselinestretch
+ to 1.2 (or \baselineskip to 1.2\baselineskip, with Plain TeX).
+ You may want to experiment with the factor quoted as "1.2".
+
+ Bugs:
+
+ - Presently none are known.
+
+ Installation:
+
+ - Download the contents of "TEXINPUT", and in case of any font
+ problems also "MFINPUT".
+
+ - In case of problems with old DVI files regenerate them; or else
+ download "arabsymb.mf" and regenerate the font "nash14".
+
+==========================================================================
+24.06.99: Version 3.08i
+
+ New Features:
+
+ - there is an "abstract" environment in the Arabic classes.
+ - mathematical displays bracketed by $$ $$ may be nested within an
+ Arabic environment. Bracketing by $ $ was always there.
+ - The LaTeX commands \( \), \[ \], and also the LaTeX environments
+ "math", "displaymath", "equation", "eqnarray", and "eqnarray*"
+ are supported within Arabic environments, also with the options
+ "leqno" and "fleqn", if LaTeX is used.
+
+ Upcoming Features:
+
+ - a new edition of the User manual is in preparation.
+
+ Installation:
+
+ - download "apatch.sty", if you are interested.
+
+--------------------------------------------------------------------------
+10.06.99: Version 3.08h
+
+ Fixes:
+
+ - there were a few glitches in Pashto and Kashmiri encoding
+ - there were a few glitches in Pashto transliteration
+ - the command \settrans #1 is allowed within Arabic mode
+ - the command \tracingmacros #1 is allowed within Arabic mode
+
+ New Features:
+
+ - the environments "RLtext", "arabtext", and "hebtext" are now
+ equivalent
+ - the braces \< and > are admissible within Arabic mode but have
+ no effect
+ - the command \addcontentsline also works in the Arabic classes
+ "arabrep", "arabart", "arabbook"
+ - the title of the table of contents is context dependent in the
+ Arabic document classes
+
+ Upcoming Features:
+
+ - a new edition of the User manual is in preparation
+ - there is yet no "abstract" environment in the Arabic classes
+
+ Installation:
+
+ - download "apatch.sty"
+
+--------------------------------------------------------------------------
+16.05.99: Version 3.08g2
+
+ Fixes:
+
+ - In the transcription mode, capitalization (see version 3.08) can
+ now also be used within a word, even several times.
+ - In the transcription, the positioning of the marks for Hamza and
+ Ayn was slightly improved.
+ - in Urdu mode, Ta' marbuta works again.
+ - in BHS mode, Shin works again.
+ - in the Arabic document classes, some spurious font switches were
+ fixed.
+
+ New Features:
+
+ - There is a new language mode: Kashmiri. See "kashmiri.tex" for a
+ short description.
+
+ Installation:
+
+ - download "apatch.sty" (and "kashmiri.sty", "kashmiri.tex" and/or
+ "bhs.sty" if required)
+
+--------------------------------------------------------------------------
+10.05.99: Version 3.08f
+
+ Fixes:
+
+ - In the transcription mode, capitalization (see version 3.08) can
+ now also be used in the English (Encyclopedia of Islam) style.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+22.04.99: Version 3.08e
+
+ Fixes:
+
+ - We found some grave errors in the Urdu mode; it seems to work
+ again now. Observe that there are several forms of "heh":
+ - the two-eyed form for aspiration: code <h>
+ - the wavy form for other cases: code <,h>
+ - the final closed form: code <H>
+ For the Name of God, use <H> in Urdu mode, or switch to \setarab
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+10.04.99: Version 3.08d
+
+ Fixes:
+
+ - For use with EDMAC, the file "aedpatch.sty" has been updated to
+ fix some spurious spaces.
+ - For use with Hebrew, the files "hclassic.mf" and "hcaption.mf"
+ have been slightly adjusted, and "hcbase_pc.mf" was renamed to
+ "hcbase.mf" to fix an incompatibility in some operating systems
+ preventing automatic font generation; the fonts themselves are
+ unchanged.
+
+ Installation:
+
+ - download the indicated files, if you need them; otherwise you
+ may safely ignore this version.
+
+ Note: the version number of ArabTeX (in the LOG) is still 3.08c !
+
+--------------------------------------------------------------------------
+25.03.99: Version 3.08c
+
+ Fixes:
+
+ - Most of the LaTeX renumbering commands introduced in the last
+ version (3.08b) do NOT work and have been blocked off. LaTeX
+ does not allow font changes within numbering commands, since
+ these must be fully expandable within TeX's mouth.
+
+ - "arabrep.cls" has been updated again.
+
+ Old Features:
+
+ - There is only one new numbering command, and it only can be
+ used in the context of the Arabic document classes, also as a
+ \pagenumbering style, and for renaming e.g. \thesection:
+
+ \abj{ctr} "abjad" notation for counters.
+
+ - \pagenumbering{abj} may also be written \pagenumbering{abjad}.
+
+ - in the Arabic document classes, put \tableofcontents within
+ an Arabic environment.
+
+ Installation:
+
+ - download "apatch.sty", and also "arabrep.cls" when required.
+ The latter file is not contained within the packed versions!
+
+--------------------------------------------------------------------------
+21.03.99: Version 3.08b1
+
+ New Features:
+
+ - For LaTeX there are additional numbering commands for counters
+ (cf. Section C.8.4 "Numbering" in the LaTeX manual:)
+
+ \arab{ctr} "Arabic" Arabic numerals
+ \Arab{ctr} "Arabic" Arabic numerals, bold
+ \abj{ctr} "abjad" notation
+ \Abj{ctr} "abjad" notation, bold
+ \Arabic{ctr} "European" Arabic numerals, bold (extension!)
+
+ - There are also the corresponding \pagenumbering styles, e.g.:
+ \pagenumbering{Abj} for bold "abjad" page numbers.
+
+ Fixes:
+
+ - Some of these commands were present in 3.07g but did not work.
+
+ - isiri.sty had become incompatible and has been updated.
+
+ - arabrep.cls had become incompatible and has been updated.
+
+ Hints:
+
+ - if your MFINPUT subdirectory of ArabTeX should contain a file
+ "asymbols.mf", delete it. It is obsolete and may be in conflict
+ with AMSTeX and/or AMSLaTeX.
+
+ Installation:
+
+ - download "apatch.sty", and "isiri.sty" or "arabrep.cls" when
+ required. The latter two files are not contained within the
+ packed versions!
+
+--------------------------------------------------------------------------
+13.02.99: Version 3.08a
+
+ Fixes:
+
+ - The transliteration of "Quran alif" was in error.
+
+ Installation:
+
+ - download "apatch.sty" if required.
+
+--------------------------------------------------------------------------
+01.12.98: Version 3.08
+
+ Status:
+
+ - This is a new minor version. All existing patches have been
+ merged into the respective macro files. To install it, load
+ and replace all macros in the subdirectory "TEXINPUT"; there
+ are some new files, and some have been extensively rewritten!
+ The functionality is supposed to be unchanged.
+
+ - We recommend installing of the fonts "xnash14" and "xnash14bf"
+ (and activating them) to obtain better quality of output.
+
+ - ArabTeX is believed to be fully compatible with Babel; however,
+ it does not use its features. Please report incompatibilities.
+
+ - BHS mode is now also compatible with "german.sty".
+
+ New features:
+
+ - There are two new experimental fonts "xnash14" and "xnash14bf"
+ which overcome some limitations inherent in the previously
+ available versions "nash14" and "nash14bf". These fonts can be
+ activated (if installed) by the new command "\newarabfont" and
+ can be deactivated again by "\oldarabfont"; these commands
+ change the meaning of the commands "\setnash" and "\setnashbf"
+ to switch to the new versions, if required, and back.
+
+ - In transcription mode, single characters may be capitalized by
+ prefixing the command \cap in the input; the Arabic writing is
+ not affected.
+ - with ' (hamza) and ` (`ayn) the next visible letter will be
+ capitalized.
+ - this feature also works within words, after prefixes and after
+ the article, even if written in the assimilated form.
+
+ - In transcription mode, the representations of "hamza" and "ayin"
+ have been changed slightly; this might influence line breaks.
+
+ Recommendations:
+
+ - When typesetting Roman text with Arabic or Hebrew insertions, a
+ better result can usually be obtained by typesetting on a grid;
+ this can be accomplished by resetting the parameters \lineskip
+ to 0pt, \lineskiplimit to -30pt, and redefining \baselinestretch
+ to 1.2 (or \baselineskip to 1.2\baselineskip, with Plain TeX).
+ You may want to experiment with the factor quoted as "1.2".
+
+ Bugs:
+
+ - Presently none are known.
+
+ Installation:
+
+ - Download the contents of "TEXINPUT".
+
+ - In case of problems with old DVI files regenerate them; or else
+ download "arabsymb.mf" and regenerate the font "nash14".
+
+==========================================================================
+21.10.98: Version 3.07k
+
+ Fixes:
+
+ - A very obscure internal error has been corrected.
+
+ - In Hebrew mode, the positioning of dagesh and also of some vowel
+ points has been improved.
+ - In Hebrew mode, "meteg" (and silluq) now also works with cholem.
+ - In Hebrew mode, there now is a small space before sof pasuq.
+
+ Installation:
+
+ - download "apatch.sty" and "hepatch.sty".
+
+--------------------------------------------------------------------------
+18.10.98: Version 3.07j
+
+ Fixes:
+
+ - In Hebrew mode, patach furtivum after cholem works now.
+ - In Hebrew verbatim encodings (HED and ISO 8859-8), neither two
+ identical letters nor a medial letter and its final form will be
+ any more combined (erroneously) to a letter with dagesh.
+
+ Open Problems:
+
+ - On some servers, the font "nash14" seems to be broken. This does
+ NOT concern current ArabTeX runs, but displaying older DVI files
+ might be affected in that some characters, e.g., <^gim>, may be
+ missing.
+ - This will be fixed in the next minor version 3.08; for the time
+ being there are two workarounds:
+ - Reprocess the ArabTeX input file; the display will be correct.
+ - If this is not possible or not wanted, download the ASCII file
+ "arabsymb.mf" and regenerate the font as required.
+ - The font "nash14bf" might have the same problem; the workarounds
+ apply also.
+ - Neither new ArabTeX runs nor the font "xnsh14" are affected.
+
+ Hints:
+
+ - With Hebrew and LaTeX, the LaTeX2e version should be 1996/12/01
+ or newer; older versions have been reported to produce obscure
+ errors. We can no more check this.
+
+ Installation:
+
+ - download "hepatch.sty", and "arabsymb.mf" if required.
+
+--------------------------------------------------------------------------
+30.09.98: Version 3.07i
+
+ Fixes:
+
+ - ArabTeX and CJK are now fully compatible. The loading sequence
+ of ArabTeX and CJK is arbitrary.
+ - defective notation of fatha, kasra, damma works again.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+17.09.98: Version 3.07h
+
+ Fixes:
+
+ - The position of some more diacritic dots has been corrected.
+ - several ligatures have been improved.
+
+ New Features:
+
+ - ArabTeX is now compatible with the package "fnpara.sty" IF this
+ package is loaded BEFORE "arabtex.sty" so that ArabTeX can find
+ out about its presence.
+ - ArabTeX is now compatible with the package "CJK.sty" IF this
+ package is loaded BEFORE "arabtex.sty" so that ArabTeX can find
+ out about its presence.
+
+ Special Features:
+
+ - for users of "tustep.sty" (if any :-):
+ ArabTeX is compatible again.
+
+ Known bugs:
+
+ - There is a problem concerning double consonants in Hebrew, only
+ in the HED encoding.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+28.08.98: Version 3.07g
+
+ Fixes:
+
+ - The position of some diacritic dots has been corrected.
+
+ New Features:
+
+ - For LaTeX there are additional styles for page numbers:
+ \pagenumbering{arab} will produce *real* Arabic page numbers
+ \pagenumbering{Arab} will produce bold Arabic page numbers
+ \pagenumbering{abjad} will produce "abjad" page numbers
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+06.08.98: Version 3.07f
+
+ Fixes:
+
+ - there was a small problem transliterating emphasized words.
+
+ - separating words by || did not work.
+
+ - the character for final "ny" in Malay was wrong.
+ - the character for final "h" in Malay was wrong.
+
+ New Features:
+
+ - Arabic and Persian words may be separated by \, (small space)
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+31.07.98: Version 3.07e
+
+ Fixes:
+
+ - there were spurious characters in Hebrew output.
+
+ Installation:
+
+ - download "apatch.sty" and "hepatch.sty".
+
+--------------------------------------------------------------------------
+28.07.98: Version 3.07d
+
+ New Features:
+
+ - there is a new directory "psfonts" that contains the Postscript
+ Type 1 versions of the fonts "xnsh14" and "xnsh14bf". The files
+ are called "xnsh14.pfb", "xnsh14bf.pfb", and "arabtex.map". The
+ fonts use the original TFM files. They have been tested with
+ dvips 5.76, ghostscript 5.10, a LaserJet 4+, and Acrobat Reader.
+
+ These font files have been built and donated by Taco Hoekwater
+ (taco.hoekwater@wkap.nl). Three cheers on him!
+
+ Old Features:
+
+ - the Arabic commands \lq (opening quotes), \rq (closing quotes),
+ and \,(small non-breaking space) have been present for some time;
+ we forgot to document this fact.
+
+ Installation:
+
+ - download and install the contents of the directory "psfonts"
+ wherever appropriate on your system; this is system dependent.
+
+ - "apatch.sty" was changed, but need not be downloaded except on
+ special advice.
+
+--------------------------------------------------------------------------
+27.07.98: Version 3.07c
+
+ Fixes:
+
+ - in Farsi mode ,a and ,e work again.
+
+ Installation:
+
+ - download "apatch.sty" and "hepatch.sty".
+
+--------------------------------------------------------------------------
+23.07.98: Version 3.07b
+
+ Fixes:
+
+ - The letter SIN in Hebrew mode was broken.
+ - The Sindhi abbreviations look better now.
+
+ Installation:
+
+ - download "apatch.sty" and "hepatch.sty".
+
+--------------------------------------------------------------------------
+20.07.98: Version 3.07a
+
+ Fixes:
+
+ - After installing the version 3.07 on our local server we noticed
+ an incompatibility with LaTeX2e; also by some new strategies the
+ patching mechanism had been broken. To fix these effects we had
+ to modify several source modules; we also found, and repaired,
+ several minor bugs. This is in fact nearly a new minor version;
+ on installation see below.
+
+ - To our surprise we found, and repaired, a Y2000 problem.
+
+ Changes:
+
+ - Switch to the new font "xnsh14" by the command "\newarabfont";
+ use "\oldarabfont" for switching back. The previous command
+ "\newfont" collides with a command in LaTeX2e.
+
+ Extensions:
+
+ - The font "xnsh14" contains all character fragments necessary to
+ build the characters in the extended Arabic segment of Unicode.
+ There is as yet no reading module for Unicode or UTF-8 encoding;
+ the present version of "utf8.sty" is still inconsistent.
+
+ - There are new commands "\MIN" and "\IN" for two frequently used
+ abbreviations in Sindhi.
+
+ - The file "atrans.sty" is loaded automatically.
+
+ - The file "etrans.sty" has been deleted. Use "\settrans{english}"
+
+ - The file "nashbf.sty" has been deleted. Use "\setnashbf"
+
+ Installation:
+
+ - If you already have loaded version 3.07, unpack and replace the
+ macro files in "tex307a.zip"; otherwise do a complete install as
+ indicated below for version 3.07 first.
+
+--------------------------------------------------------------------------
+16.07.98: Version 3.07
+
+ Status:
+
+ - This is a new minor version. All existing patches have been
+ merged into the respective macro files. To install it, load
+ and replace all macros in the subdirectory "TEXINPUT"; there
+ are several new files!
+
+ - We have rewritten substantial parts of the package in order to
+ increase stability and also to ease maintenance and extensions;
+ the modularisation is now different, and some of the internal
+ interfaces have been modified. This need not concern the user;
+ the functionality has not been changed, and apparently nothing
+ was broken during the transition to the new structure.
+ - The main reason for the changes was, apart from improving the
+ overall structure, to prepare for the handling of the full
+ Arabic segment of Unicode. This goal has not yet been attained,
+ but it required substantial changes in the internal structures.
+ - The positioning of diacritical marks has on the average been
+ much improved. There are a few exceptions; affected users that
+ need the maximum quality available could try their luck with
+ the new fonts "xnash14" and "xnash14bf" (see below). Otherwise
+ the user interface has not changed.
+
+ Additions:
+
+ - There are two new experimental fonts "xnash14" and "xnash14bf"
+ which overcome some limitations inherent in the previously
+ available versions "nash14" and "nash14bf". These fonts can be
+ activated (if installed) by the new command "\newfont" and can
+ be deactivated again by "\oldfont"; these commands change the
+ meaning of the commands "\setnash" and "\setnashbf" to switch
+ to the new versions, if required, and back. Normal users not
+ requiring the new versions can safely ignore this feature; they
+ need not now install these fonts.
+
+ Bugs:
+
+ - Presently none are known.
+
+==========================================================================
+24.03.98: Version 3.06h
+
+ Fixes:
+
+ - some ligatures had been broken by the Sindhi mode; these have
+ been fixed.
+ - kashida before alif maqsura works again.
+
+ Problems:
+
+ - verses produced via "verses.sty" will ruin the word spacing if
+ they occur within an Arabic paragraph inside a footnote, and
+ possibly in other circumstances. There is a workaround: put the
+ command "\setspace{4.3pt plus 0.001fil}" after the last verse.
+
+--------------------------------------------------------------------------
+11.03.98: Version 3.06g3
+
+ Fixes:
+
+ - bi-directional linebreaking has been improved; there were some
+ spurious blank spaces.
+
+ New features:
+
+ - ArabTeX is now believed to be compatible with the BABEL system.
+ We cannot test this locally; reports are welcome. We acknowledge
+ useful hints by Olaf Kummer and Johannes Braams.
+
+ - there is now less spurious information in the LOG file.
+
+ - there are some preparations for processing the UTF-8 encoding
+ and the extended Arabic character set provided in UNICODE. These
+ features cannot yet be accessed from the user level.
+
+--------------------------------------------------------------------------
+26.01.98: Version 3.06f
+
+ Fixes:
+
+ - the special handling of final "mim" has been restricted to the
+ Sindhi mode.
+ - the positioning of diacritics has been improved.
+
+ - Hebrew and EDMAC users: the "\if@lodia effect" has been fixed.
+
+ Note to users of EDMAC:
+
+ - download the new version 3.06a of 22.01.98 of "aedpatch.sty".
+ This fixes the format of footnote paragraphs. (This correction
+ cannot technically be handled by a patch within "apatch.sty").
+
+ Note to users of the Sindhi mode:
+
+ - please download the fonts again to get all characters.
+
+--------------------------------------------------------------------------
+15.12.97: Version 3.06e
+
+ Fixes:
+
+ - "alif maqsura" and isolated "hamza" take explicit vowel marks
+ and also "tanwin" if required.
+ - final "mim" in the Urdu mode again has the long shape. In the
+ Sindhi mode a short form is simulated by a kashida if needed.
+ - in Urdu the encoding <,d> produces "dal" with a "toi" accent,
+ and initial <U> becomes "alif+damma" and "waw" as required.
+ - some transcription errors in Urdu mode have been fixed.
+ - some ligatures in Sindhi mode are improved.
+
+ Problems:
+
+ - medial "wavy hah" in Urdu has a mark below it (controversial).
+
+--------------------------------------------------------------------------
+27.11.97: Version 3.06d
+
+ Fixes:
+
+ - the input letter <A> denotes alif also in initial position and
+ after a prefix separated by a hyphen. It may take short vowels,
+ and also sukun (only if quoted). This feature may be useful when
+ copying corrupted texts.
+ - the "lam" of the article carries "sukun" also if the following
+ word starts with "`ayin", like with the other "moon letters".
+ - the encodings <I> and <iy> are equivalent; also <Iy> and <iyy>,
+ <U> and <uw>, <Uw> and <uww>.
+ - <"> and <""> at the beginning of a word generate alif with wasla
+ even after a prefix.
+ - a prefix before hyphen no more needs a short vowel to work.
+ - the invisible character <|> is legal in the initial or the final
+ position (but makes no sense there). It never takes a vowel mark.
+
+ New features:
+
+ - the inflection endings <-a>, <-i>, <-u>, <-aN>, <-iN>, <-uN> may
+ be separated by a hyphen, also if written <-aNA>. Otherwise the
+ character after a hyphen will be considered to start a new word,
+ but may be joined to the prefix if possible (e.g., in <al-i-ismu>
+ where <-i-> is a connection vowel producing "kasra", and <ismu>
+ starts with "alif" "wasla" combined with "lam" into "lam-alif"
+ carrying both "wasla" and "kasra".)
+ - if a ligature is separated by <|> or <--> (kashida), any vowel
+ mark present will migrate to the appropriate character glyph. The
+ same happens with the implicit vowel mark that is produced by the
+ long vowels in the vowelizing modes.
+ - a comma <,> between digits will no more break the digit sequence
+ but will be recognized as a decimal separator. A hyphen <-> and a
+ solidus </> will also not break a digit sequence. A "number" must
+ still begin with a digit to be recognized.
+
+ Problems:
+
+ - the Urdu mode is still broken.
+ - for the new language modes (see 3.06) there is yet no (correct)
+ transcription.
+
+ Hints:
+
+ - users of the Sindhi mode should regenerate the fonts otherwise
+ the "wide kaf" may be missing.
+
+--------------------------------------------------------------------------
+23.11.97: Version 3.06c
+
+ Fixes:
+
+ - final "alif maqsura" carries no sukun.
+ - in connection with EDMAC, an Arabic lemma bearing a footnote is
+ spread out by the same factor as the rest of the line, (e.g. in
+ verses) even if it contains spaces.
+ - Arabic footnotes with EDMAC no more produce overfull boxes, and
+ will no more let the page overflow.
+
+ Known bugs:
+
+ - prefixes separated by a hyphen must presently be given in the
+ fully vowelized input form, otherwise the writing is wrong.
+ - The Urdu mode is broken; also its transcription is wrong.
+
+--------------------------------------------------------------------------
+25.09.97: Version 3.06b
+
+ Fixes:
+
+ - in Kurdish mode, kashida and breaking of ligatures work now
+
+--------------------------------------------------------------------------
+18.09.97: Version 3.06a
+
+ Fixes:
+
+ - there were sometimes spurious newlines if the transliteration
+ was generated via an Arabic insertion
+ - ligatures can again be broken by inserting a bar |
+ - the ligatures family lam-gim, ta-gim etc. works again
+ - there were spurious spaces in bidirectional text under EDMAC
+
+--------------------------------------------------------------------------
+06.08.97: Version 3.06
+
+ Status:
+
+ - This is a new minor version. All existing patches have been
+ merged into the respective macro files.
+ - This doc file has been trimmed down; history information up to
+ version 3.00 has been moved to "changes2.txt".
+ - Several file names of the mini-documentation have been changed
+ to lower case and carry the suffix ".txt", for the benefit of
+ certain web-browsers. See also the file "arabtex.htm".
+
+ Fixes:
+
+ - some minor bugs have been fixed that had introduced spurious
+ spaces or newlines when switching between Arabic and Hebrew.
+ - "kashida" (--) between a consonant and a (long or short) vowel
+ will no more split the vowel indicator from the consonant glyph.
+
+ Additions:
+
+ - the new command "\setsindhi" will switch to a language mode for
+ Sindhi in an extended Arabic script. For details, process and
+ read the file "sindhi.tex".
+ - the new command "\setuighur" will switch to a language mode for
+ Uighuric in an extended Arabic script. For details, process and
+ read the file "uighur.tex".
+ - the new command "\setmalay" will switch to a language mode for
+ Old Malay (Jawi) in an extended Arabic script. For details,
+ process and read the file "malay.tex".
+ - These new language modes are strictly experimental and just a
+ starting point. As the author speaks none of these languages,
+ feedback and comments by interested users are badly needed.
+
+==========================================================================
+19.06.97: Version 3.05h
+
+ Fixes:
+
+ - some ligatures with "kaf" have been improved.
+ - "quoting" of "wasla" works in all vowel modes.
+ - "kashida" works also before long vowels.
+ - breaking of ligatures works correctly also with long vowels
+ and in combination with "quoting".
+
+--------------------------------------------------------------------------
+12.06.97: Version 3.05g
+
+ Fixes:
+
+ - a bug fix for the new Sindhi module has been introduced (this
+ mode is in alpha status and not yet publicly available; if you
+ are interested in testing it: enquire)
+
+--------------------------------------------------------------------------
+10.06.97: Version 3.05f
+
+ Fixes:
+
+ - a spurious error message about a "missing character" has been
+ eliminated.
+ - "\settrans{english}" switches again to the transliteration
+ conventions of the Library of Congress.
+ - ArabTeX will no more overwrite a user macro "\x".
+
+ Additions:
+
+ - the new command "\arabfootnotes" makes LaTeX footnotes run from
+ right to left, and their text is considered Arabic by default.
+ There is as yet no command to switch back to the default mode
+ (left to right, Roman). With Plain TeX the new command is not
+ yet available.
+
+--------------------------------------------------------------------------
+28.05.97: Version 3.05e
+
+ Fixes:
+
+ - <U> in the Urdu mode works again.
+ - some errors in the transliteration have been corrected.
+ - some ligatures have been corrected.
+
+--------------------------------------------------------------------------
+22.05.97: Version 3.05d
+
+ Fixes:
+
+ - \tabular structures within the Arabic document classes are now
+ correctly aligned.
+ - a few ligatures have been improved.
+ - some internal routines have been updated preparing for some
+ planned extensions. No visible effect.
+ - a new test for version clashes has been introduced.
+
+--------------------------------------------------------------------------
+14.05.97: Version 3.05c
+
+ Fixes: The patching routine seems to work again.
+
+--------------------------------------------------------------------------
+14.05.97: Version 3.05b
+
+ Problems:
+
+ - LaTeX is too clever and interferes with the patching routine.
+ Therefore the existing patches for Hebrew have been moved to
+ the file "hepatch.sty". Arabic mode is presently not affected.
+
+--------------------------------------------------------------------------
+13.05.97: Version 3.05a
+
+ Fixes:
+
+ - in Hebrew mode when using HED encoding, Thet and Maqqef did
+ not work correctly.
+ - in EDMAC mode with Plain TeX the list of modules was missing.
+ - some internal interfaces have been updated. This has no effect
+ on the external operation but helps stability.
+
+--------------------------------------------------------------------------
+07.05.97: Version 3.05
+
+ Status:
+
+ - The internal structure has changed extensively; this need not
+ trouble the user.
+ - Warning: NEVER MIX old and new files; they may be incompatible!
+
+ Fixes:
+
+ - A number of minor and some major bugs have been fixed.
+
+ Modifications:
+
+ - With EDMAC, the first argument of \text need not fit on the
+ current line. All arguments are assumed to be Roman text; they
+ may contain (or consist of) \<Arabic insertions>.
+
+ Additions:
+
+ - The ISIRI 3342 encoding is supported; load the reading module
+ by \input isiri.sty or \usepackage {isiri}. Activate it by the
+ command \setcode {isiri}.
+ - Hebrew support has been expanded; read the file "hebrew.305".
+ ArabTeX will try to use fonts locally available, irrespective
+ of their encoding.
+ - the file "verses.sty" supports typesetting poetry in two blocks.
+ For a description, see the file itself.
+ - See also the comments on Version 3.04 below.
+
+ Hints:
+
+ - If you want to process the manual "arabdoc.tex" under LaTeX 2e
+ and get error messages, delete the *.aux, *.toc, and *.lot file
+ and try again. These files depend on the LaTeX version used.
+ - see also version 3.04.
+
+ Complaints:
+
+ - There is STILL no Nasta`liq font.
+ - the user manual "arabdoc.tex" is outdated.
+
+ Known bugs:
+
+ - None as yet.
+
+ How to move from earlier minor versions to version 3.05:
+
+ - replace the contents of "TEXINPUT" and "REPORT".
+ - read and/or print "README.305"
+ - if interested, process the user manual "arabdoc.tex"; see the
+ hints above.
+
+==========================================================================
+05.10.96: Version 3.04e
+
+ Fixes:
+
+ - removed many small bugs in Persian (thanks, Ivan Dershzanski!)
+ - initial <alif> coded <A> in verbatim mode may carry a vowel
+ - <yah> without dots coded <Y> acts like a consonant except at the
+ end of a word
+ - <aNy> denotes <fathatan> on <alif maqsura> erroneously written
+ with dots
+
+ Modifications:
+
+ - removed quoted hamza ("') from verbatim mode (was ambiguous!)
+
+--------------------------------------------------------------------------
+18.05.96: Version 3.04d
+10.05.96: Version 3.04c (not distributed)
+
+ Fixes:
+
+ - in "arabart.cls" (twocolumn) the right column is output first
+ to get correct numbering of sectional units
+ - corrected the vertical position of "marginpar"
+ - a space is assumed after a new command defined via \allowarab
+
+--------------------------------------------------------------------------
+08.04.96: Version 3.04b
+
+ Fixes:
+
+ - \footnote works again within an Arabic environment
+
+ Known bugs:
+
+ - \footnote is incompatible with "arabart.cls"
+
+--------------------------------------------------------------------------
+21.03.96: Version 3.04a
+
+ Fixes:
+
+ - \baselineskip works correctly with EDMAC
+ - \emphasize puts the overbar at uniform height in \novocalize
+
+ Necessary action:
+
+ If required, download the ASCII file "apatch.sty" again. This
+ is a patch for version 3.04!
+
+ See also version 3.04 below.
+
+--------------------------------------------------------------------------
+19.03.96: Version 3.04
+
+ Status:
+
+ - ArabTeX now cooperates well with LaTeX 2e (June 1995 and later)
+ and also still with Plain TeX and LaTeX 2.09. The configuration
+ is determined automatically. With LaTeX 2e ArabTeX and all its
+ suboptions are packages.
+ - The internal structure has changed extensively; this need not
+ trouble the user.
+
+ Fixes:
+
+ - \baselineskup, \parskip, \baselinestretch now work correctly
+ in the Arabic modes.
+ - The TeX special characters \#, \$, \%, \& can now be used (they
+ just had been forgotten).
+ - A number of minor bugs have been fixed.
+
+ Modifications:
+
+ - Digits and punctuation have been raised to the writing line.
+ We feel this looks better.
+ - The handling of numbers (= digit sequences) has been improved.
+ Within a number, the decimal separator is the comma.
+ - Bidirectional line-breaking has again been much improved. The
+ command \goodpar still works but is rarely required.
+ - The option "abidir" is no more necessary.
+ - The option "nashbf" is no more necessary.
+ - The option "abjad" is no more necessary.
+
+ Additions:
+
+ - User defined macros can be made known to ArabTeX by the
+ declaration \allowarab {\macro_name} (previous to their use
+ within an Arabic environment). The replacement text after
+ substituting the parameters must be legal ArabTeX input and
+ may contain further macro calls. The macro must be previously
+ defined via \newcommand or \def.
+
+ - The Arabic Windows encoding is supported; load the reading
+ module by \input arabwin.sty, \usepackage {arabwin} or by
+ adding the LaTeX 2.09 option "arabwin". Activate it by the
+ command \setcode {arabwin}.
+
+ - There are some additional transliteration modes for Persian
+ and Urdu; in case of interest: inquire directly.
+
+ - The package "raw.sty" defines the command \setraw to switch
+ off all special processing for numbers, special characters
+ and parentheses. This may be helpful for OCR work. Switch
+ back by \unsetraw.
+
+ - The (experimental) LaTeX 2e class file "arabart.cls" provides
+ an Arabic article format. Within Arabic environments a number
+ of LaTeX commands are enabled: sectioning, list environments,
+ page headers and footers, table of contents, footnotes, quote,
+ quotation, verse, center, twocolumn. All text arguments are
+ considered to be Arabic text in the chosen encoding. Some of
+ the LaTeX environments are missing, e.g., tabular and tabbing,
+ minipages, pictures. They can usually be simulated by leaving
+ the Arabic environment and reverting to the standard LaTeX
+ commands.
+
+ We are working on extensions to this format; suggestions and
+ bug reports are welcome. We do not intend to supply a version
+ for LaTeX 2.09.
+
+ - See also the comments on Version 3.03 below.
+ - The notes in README.303 still apply.
+
+ Hints:
+
+ - Uniform baselines may be obtained by setting \lineskiplimit
+ to -\baselineskip and adjusting \baselinestretch to 1.4 (with
+ LaTeX) or \baselineskip to 1.4\baselineskip with Plain TeX.
+ Some experimenting is advised.
+ - If you want to process the manual "arabdoc.tex" under LaTeX 2e
+ first move the file "arabimax.tex" to the REPORT subdirectory.
+ You will get some error messages on the first run. Forget them
+ and process the file again; LaTeX 2e is to blame. Warning: the
+ report is not quite up to date.
+ - Put any local macro definitions into the LaTeX preamble or else
+ precede them by \setnone; thus the < sign can be used in the
+ normal meaning as a comparison operator. Activate short Arabic
+ insertions again by \setarab or any other of the commands for
+ language choice.
+ - PiCTeX users may use Arabic labels within diagrams if and only
+ if these are included in \< and > (NOT < and >).
+ - If you use MlTeX and the output looks broken, note the version
+ number of MlTeX and inform us.
+
+ Complaints:
+
+ - There is STILL no Nasta`liq font.
+
+ Known bugs:
+
+ - None as yet.
+
+ How to move from earlier minor versions to version 3.04:
+
+ - read and/or print "README.303"
+
+==========================================================================
+04.07.95: Version 3.03e
+
+ Fixes:
+
+ - Final yah before hamza works again
+
+--------------------------------------------------------------------------
+24.05.95: Version 3.03d
+
+ Fixes:
+
+ - After switching to other encodings switching back to the
+ standard encoding works again.
+ - An empty \RL {} insertion will no more blow the system.
+
+ Problems:
+
+ - see version 3.03c
+
+--------------------------------------------------------------------------
+02.05.95: Version 3.03c
+
+ Fixes:
+
+ - The METAFONT routines for the fonts "nash14" and "nash14bf"
+ used a file "asymbols.mf" that conflicted with the AMS-Fonts.
+ This file has been renamed to "arabsymb.mf". To use the new
+ version, download "arabsymb.mf" and "nashbase.mf" from the
+ subdirectory ARABTEX/MFINPUT and delete "asymbols.mf". This
+ only concerns users who need to regenerate the fonts locally.
+
+ Problems:
+
+ - The font "dclassic" used by the Hebrew mode of ArabTeX has on
+ the archive "noa.huji.ac.il" been replaced by a new version
+ that is incompatible to the previous version while keeping the
+ same name. We are working on a solution to resolve the ensuing
+ compatibility problems. Users of the previous version are not
+ affected.
+
+ Acknowledgment:
+
+ - The routines for building up punctuated Hebrew characters have
+ profited from macros written by Joel Hoffmann and contained in
+ his packages "dots.sty" and "hvowel1.sty". We apologize for not
+ pointing out this fact clearly.
+
+ Necessary action:
+
+ - Normally none, except if indicated above.
+
+--------------------------------------------------------------------------
+24.04.95: Version 3.03b
+
+ Fixes:
+
+ - The handling of single and double quotes, and of other special
+ characters, in the ASMO 449 and ISO 8859-6 encodings has been
+ improved.
+ - After a punctuation character inside a word (usually an error)
+ no space will be produced.
+ - <tanwIn> on <'alif maqsUraT> works again.
+ - In \setverb mode, a <harakaT> on <'alif> now works.
+ - In \setverb mode, <A> may be used to produce <'alif>.
+ - The ligature <lm|a> is produced instead of <l|ma>.
+ - <ba'>, <ya'> etc. before <lAm> now have the short form.
+
+ Known bugs in ArabTeX:
+
+ - \begin{arabtext} inside a minipage will produce a spurious
+ empty line; the reason is unknown.
+
+ Hints:
+
+ - Numbers after quotes will not be recognized as such and thus
+ will be reversed; as a workaround, leave a space around the
+ digits, e.g., <`` 1234 ''> or use a \nospace command, e.g.,
+ <`` \nospace 1234 \nospace ''>.
+ Mind the spaces before the \nospace commands in the example!
+ - With LaTeX2e, load ArabTeX and its suboptions by the command
+ \usepackage.
+
+--------------------------------------------------------------------------
+28.03.95: Version 3.03a
+
+ Fixes:
+
+ - A workaround for an error in some versions of ML-TeX has
+ been tentatively introduced. Non-ML-TeX users may safely
+ ignore this.
+
+--------------------------------------------------------------------------
+10.03.95: Version 3.03
+
+ Fixes:
+
+ - A number of minor bugs have been fixed, nothing dramatic.
+ - The spacing of punctuation has been improved.
+
+ Modifications:
+
+ - Hebrew vowel points are provided. Hebrew mode now uses the font
+ "dclassic". It can be downloaded e.g. from "noa.huji.ac.il".
+
+ Additions:
+
+ - The Hebrew encoding used in the machine readable version
+ of BHS is supported. See README.303!
+ - \obeylines and \obeyspaces also work for Arabic text. They
+ however must be used in a group that contains the Arabic
+ text AND this group must be followed by at least one space.
+ - An <Arabic insertion> inside a \verbatim environment will be
+ typeset in Arabic. Big TeX may be necessary.
+ An Arabic environment will be typeset verbatim.
+ - \vskip, \hskip, \vspace, \hspace, \newpage, \vfill are legal
+ in Arabic mode.
+ - A list of the loaded modules is put into the log file.
+
+ Known bugs:
+
+ - None as yet.
+
+ How to move from earlier minor versions to version 3.03:
+
+ - completely replace the contents of the subdirectory TEXINPUT
+ - move the updated files "arabdoc?.tex" from the outermost level
+ to the subdirectory "REPORT"
+ - read and/or print "README.303"
+
+==========================================================================
+12.08.94: Version 3.02b
+
+ Fixes:
+
+ - \fullvocalize mode uses somewhat less TeX main memory than
+ before but might still overflow; using \newpage explicitly
+ could help
+ - some ligatures have been improved
+ - spacing has been improved in short insertions when the
+ transliteration is also generated
+ - in Hebrew mode, HED encoding, double letters work again
+ - explicit spreading works again correctly
+ - <hamza> in rare cases had the wrong carrier
+ - if an Arabic word starts with a vowel, "quoting" toggles
+ <wasla> if no vowel is given in the input
+ - bidirectional line-breaking has been much improved. The
+ command \goodpar is rarely necessary
+
+ Hints:
+
+ - etrans.sty is no more necessary; load atrans.sty
+ - \settrans{english} switches to the romanization conventions
+ of the Library of Congress
+
+--------------------------------------------------------------------------
+19.07.94: Version 3.02a
+
+ Fixes:
+
+ - in Arabic, alif maqsura after tanwin works again
+ - in Hebrew, before an apostrophe the medial form is used
+ - in Hebrew, hyphen/maqqef works correctly
+
+ Hints:
+
+ - with Plain TeX (and/or EDMAC) only: load the ASCII file
+ "apatch.sty" explicitly as the last file!
+
+--------------------------------------------------------------------------
+14.07.94: Version 3.02
+
+ Fixes:
+
+ - some minor bugs have been corrected
+ - the User Manual has been slightly updated, but is otherwise
+ somewhat out of date.
+
+ Modifications:
+
+ - for storage reasons the transcription module is not loaded
+ automatically; add the LaTeX option "atrans" if required,
+ or say "\input atrans.sty".
+
+ Additions:
+
+ - EDMAC 3.00 and EDMAC 3.15 are both supported.
+ - the LaTeX option "abidir" provides the new command \RL {text}
+ for right-to-left insertions; it is used like <text> which is
+ still provided, and which should be used wherever possible for
+ reasons of efficiency.
+ - the LaTeX option "hebtex" loads the modules for processing text
+ in Hebrew. Switch to Hebrew by \sethebrew, and back to Arabic
+ by \setarab. Hebrew text can be coded in the standard ArabTeX
+ input notation, or in the encoding used by the editor HED; the
+ latter coding is activated by \setcode {hed}. The reading module
+ is supposed to also process texts in "newcode" (not tested!)
+ - For using the Hebrew mode, the font "deadsea" must be available;
+ it can be downloaded e.g. from "noa.huji.ac.il". Vowels are
+ presently not provided.
+ - For details see the ASCII file "readme.302".
+
+ Hints:
+
+ - only load the modules really required, or you might have to use
+ a Big TeX!
+
+ Known bugs:
+
+ - None.
+
+ How to move from earlier minor versions to version 3.02:
+
+ - completely replace the contents of the subdirectory TEXINPUT
+ - move the updated files "arabdoc?.tex" from the outermost level
+ to the subdirectory "REPORT"
+ - read and/or print "README.302"
+
+==========================================================================
+05.05.94: Version 3.01a
+
+ Fixes:
+
+ - \parskip now has effect also inside Arabic environments.
+
+ Additions:
+
+ - The EDMAC commands \pstart, \pend, \autopar are allowed
+ inside an Arabic environment, IF properly nested.
+
+--------------------------------------------------------------------------
+28.04.94: Version 3.01
+
+ There has been extensive internal rewriting but the external
+ effects are minor.
+
+ - \setarab is the language default again. It will no more break
+ the user's macro definitions IF these are put into the LaTeX
+ preamble, or before "\input arabtex.sty" when using Plain TeX.
+
+ Fixes:
+
+ - Spaces are normally ignored after allowed control sequences
+ inside Arabic text, (if not produced by the command itself.)
+ - The spacing between a final silent <hah> in Persian and the
+ next word has been improved.
+
+ - An error in "twoblocks.sty" has been corrected that produced
+ a spurious vertical space.
+ - An error in "asmo449.sty" has been corrected that produced
+ nonsense from the combination "Gdr" (article with an explicit
+ <sukUn>)
+ - In "abjad.sty", the <gIm> for the numeral 3 has no dot.
+
+ Additions:
+
+ - The commands \smallskip, \medskip, \bigskip, \newpage,
+ \clearpage, \pagebreak, \hskip {glue}, \vskip {glue}, \today
+ now work inside Arabic text.
+ - there is a new language mode: \setturk for Ottoman.
+ The input notation has been extended to cover both the standard
+ and the modern Turkish transliteration.
+ The documentation remains to be written :-(
+ - there is a new language mode: \setkurdish for Kurdish.
+ The documentation remains to be written :-(
+ - "" produces an explicit <sukUn> except in \fullvocalize mode
+ where it deletes a <sukUn> otherwise present.
+ - The new commands \setarabfont {\nash} or \setarabfont {\nashbf}
+ supersede \setnash and \setnashbf (which are still supported).
+
+ Known bugs:
+
+ - None.
+
+ Hints:
+
+ - The LaTeX style option "atrans" is redundant.
+ - After changing the input coding, select the language mode and
+ the vowelization mode anew (this is a feature :-).
+
+ How to move from earlier minor versions to version 3.01:
+
+ - completely replace the contents of the directory TEXINPUT
+ - observe that there is a new file "acmd.sty"
+
+==========================================================================
+07.12.93: Version 3.00b
+
+ Fixes:
+
+ - corrected handling of <tanween fatha> in \setverb mode.
+ - improved error handling for illegal commands.
+ - ligature <geem>-<meem> also in spreading mode.
+
+ Additions:
+
+ - \setspace{rubber_length} changes the default for spaces in
+ Arabic text; 3pt plus .5fil is recommended for \spreadbox.
+
+ Known bugs:
+
+ - arguments of boxing commands may not contain insertions.
+ - in ASMO449, the combination Gdr (article with an explicit
+ sukoon) will produce nonsense.
+
+ Hints:
+
+ - There is no language default. Do not forget \setarab etc.
+ or otherwise you might get strange results.
+ - After changing the input coding, select the language and
+ the vowelization mode anew (this is a feature).
+
+ These are in the manual but easily overlooked.
+
+--------------------------------------------------------------------------
+26.11.93: Version 3.00a
+
+ Fixes:
+
+ - the <hamza> carrier is now <ya'> the before diphthong <ay>
+
+ Additions:
+
+ - more Qur'anic writing variants provided
+ - \hfil is allowed in Arabic text
+
+--------------------------------------------------------------------------
+20.11.93: Major Version 3.00
+
+ Status:
+
+ - large portions of the code have been rearranged and partly
+ rewritten
+ - The User Manual has been extensively updated and describes
+ all (supported) ArabTeX features currently implemented
+ - Version 3.00 seems to be compatible with Version 2 files
+ - NFSS and NFSS2 can be used but are not required
+ - all known bugs have been removed
+ - Version 3.00 still can be run (slowly) on a standard PC XT
+
+ Additions:
+
+ - texts coded in ASMO 449 or ISO 8859-6 can now be processed
+ - several historic writing variants are additionally supported
+ - details of Farsi support are now described in the User Manual
+ - many new commands are valid inside Arabic text; a complete
+ list appears in the log file of each ArabTeX run, and also
+ in the new User Manual
+ - see also versions 2.00 - 2.08 below
+
+==========================================================================
+
+ How to move from version 2.0x, 0 <= x <= 8, to version 3.00:
+
+ - completely replace the contents of the directory TEXINPUT
+ - completely replace the contents of the directory REPORT
+ - process AND READ the new User Manual "arabdoc.tex"
+ - leave the fonts alone
+
+ How to move from version 1 (or none at all) to version 3.00:
+
+ - Do as above; install the fonts "nash14" and "nash14bf" first
+ according to local TeX conventions.
+ - If the font "nash10" is still there, delete it.
+
+==========================================================================
+ For information on older versions see the file "changes2.txt".
+==========================================================================
+ Prof. Klaus Lagally
+ Institut fuer Formale Methoden der Informatik
+ Universitaet Stuttgart
+ Universitaetsstrasse 38
+ D-70569 Stuttgart
+ GERMANY
+
+ lagally@informatik.uni-stuttgart.de
+ FAX: +49 - 711 - 7816 370
+--------------------------------------------------------------------------
+ Copyright (c) 1990 - 2006, Klaus Lagally
+--------------------------------------------------------------------------
+
diff --git a/language/arabic/arabtex/doc/html/arabtex.gif b/language/arabic/arabtex/doc/html/arabtex.gif
new file mode 100644
index 0000000000..04c2a4df31
--- /dev/null
+++ b/language/arabic/arabtex/doc/html/arabtex.gif
Binary files differ
diff --git a/language/arabic/arabtex/doc/html/arabtex.htm b/language/arabic/arabtex/doc/html/arabtex.htm
new file mode 100644
index 0000000000..b7d37b79b3
--- /dev/null
+++ b/language/arabic/arabtex/doc/html/arabtex.htm
@@ -0,0 +1,219 @@
+<html><head>
+<title>ArabTeX Version 3</title></head>
+<body>
+<center>
+<img src="arabtex.gif" alt="ArabTeX logo">
+<h1> ArabTeX Version 3 </h1>
+</center>
+
+<hr><!-- ================================================ -->
+
+<a href="http://129.69.218.213/arabtex/doc/html/changes.htm">
+ Last changes: Version 3.11d, October 23, 2003
+</a>
+
+<hr><!-- ================================================ -->
+
+<img src="new1.gif" alt="new">
+There is a draft version of the new
+<a href="http://129.69.218.213/arabtex/doc/arabdoc.pdf">
+user manual.</a>
+<br>
+Please note that this version is incomplete and still being updated.
+<p>
+Should you be an Orientalist, you might want to look at a small list of
+<a href="http://129.69.218.213/arabtex/doc/html/refer.htm">applications</a>.
+
+</p><hr><!-- ================================================ -->
+
+ The set of files, of which THIS file is supposed to be part of,
+ contains a package extending the capabilities of TeX/LaTeX to
+ generate the arabic writing from an ASCII transliteration for
+ texts in several languages using the arabic script. Several
+ other common encodings are also supported.
+<p>
+The package is available in packed form as
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.zip">
+arabtex.zip</a>
+<!--
+and <a href=ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtds.zip>arabtds.zip</a>
+-->
+for PC users and
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.tar.z">
+arabtex.tar.Z</a> for *N*X users.
+<br>
+Depending on the server there may be also the unpacked files,
+or only these.
+</p><p>
+In case of doubt, check for the latest version of
+"<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty">
+apatch.sty</a>".
+<br>
+This file contains last minute corrections that possibly
+are not yet contained in the packed files.
+</p><p>
+
+The following ASCII files give more detailed information:
+
+<table>
+<!--
+<tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/doc/arabtex.doc">
+arabtex.doc
+ </td><td>
+ a short introduction ( rather out of date)
+</td></tr>
+-->
+
+<tbody><tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/doc/arabtex.faq">
+arabtex.faq</a>
+
+</td><td>answers to some Frequently Asked Questions
+ (updated as necessary)
+</td></tr>
+
+<tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/changes.txt">
+changes.txt</a>
+
+</td><td>release history, new features, and known bugs
+ (updated as necessary)
+</td></tr>
+
+<tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/doc/changes2.txt">
+changes2.txt</a>
+
+</td><td>release history up to version 3.00
+
+</td></tr>
+
+<tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/install.txt">
+install.txt</a>
+
+</td><td>list of available files, and installation notes
+</td></tr>
+
+<tr><td valign="top">
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty">
+apatch.sty</a>
+
+</td><td>last minute corrections; put this file onto the TEXINPUT path;
+it will patch automatically (updated as necessary).
+</td></tr>
+</tbody></table>
+
+There are also various additional documentation files.
+</p><p>
+<img src="new1.gif" alt="new">
+The contents of a subdirectory "REPORT", if still present, are OBSOLETE.
+Refer to the (draft of the)
+<a href="http://129.69.218.213/arabtex/doc/arabdoc.pdf">
+user manual</a> instead.
+
+</p><hr><!-- ================================================ -->
+
+There was a prototype, ArabTeX Version 1, which is now OBSOLETE.
+<br>
+
+Version 2 was the first complete release accompanied by a manual,
+but is no more being maintained.
+<br>
+
+Version 3 is an upward compatible extension of Version 2
+with many new features, e.g. the possibility to read input files
+in the ASMO 449, ISO 8859-6, and UTF-8 Codes,
+and a host of new commands for better formatting of Arabic text,
+or catering for historic writing styles.
+<br>
+
+Versions from 3.05 onward contain a package to process Hebrew,
+and provide long right-to-left insertions.
+
+For details, consult the manual.
+
+<hr><!-- ================================================ -->
+
+<img src="new1.gif" alt="new">
+ ArabTeX is copyrighted by the author. If you use the system for
+ scientific work please give appropriate credit to the software
+ and the author (e.g. in the colophon of a monograph.) We also
+ appreciate a complimentary copy of any scientific work produced
+ with ArabTeX.
+<p>
+
+<img src="new1.gif" alt="new">
+ArabTeX may be redistributed and/or modified under the terms
+of the LaTeX Project Public License distributed
+from CTAN archives in the directory
+<a href="ftp://ftp.dante.de/tex-archive/macros/latex/base/lppl.txt">
+macros/latex/base/lppl.txt</a>;
+either version 1 of the License,
+or (at your option) any later version.
+
+</p><hr><!-- ================================================ -->
+
+ArabTeX is an experimental system and supposed to change without
+prior notice. Whoever will use it does so at her/his/its own risk.
+We cannot take any responsibility on correct function, suitability
+for whatever purpose, or correct documentation.
+
+If you have any complaints or suggestions, please forward them to
+<a href="mailto:lagally@informatik.uni-stuttgart.de">the author</a>.
+We shall consider any reasonable suggestion,
+but we will use our own judgment on changes,
+and our resources are severely limited.
+<p>
+
+If problems turn up while running ArabTeX, please
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.htm">
+check first</a>
+at "ftp.informatik.uni-stuttgart.de" whether there is a new version,
+or whether there are any new corrections in
+"<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty">
+apatch.sty</a>".
+
+If the problem goes away with the new version, please inform the
+server you got ArabTeX from; otherwise
+<a href="mailto:lagally@informatik.uni-stuttgart.de">send a bug report</a>
+to the author.
+
+</p><hr><!-- ================================================ -->
+
+The reference site
+"<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex">
+ftp.informatik.uni-stuttgart.de</a>"
+always holds the current version.
+<br>
+We know that the CTAN servers
+"<a href="ftp://ftp.tex.ac.uk/">ftp.tex.ac.uk</a>",
+"<a href="ftp://ftp.dante.de/">ftp.dante.de</a>",
+"<a href="ftp://ctan.tug.org/">ctan.tug.org</a>"
+mirror this site and update on a regular schedule.
+
+<hr><!-- ================================================ -->
+
+An empty E-Mail message to
+"<a href="mailto:arabtex@informatik.uni-stuttgart.de">
+arabtex@informatik.uni-stuttgart.de</a>"
+will produce a current status report.
+
+<hr><!-- ================================================ -->
+
+<blockquote>
+ Prof. Klaus Lagally<br>
+ Institut fuer Formale Konzepte der Informatik<br>
+ Universitaet Stuttgart<br>
+ Universitaetsstrasse 20-22<br>
+ D-70569 Stuttgart<br>
+ GERMANY<br>
+ lagally@informatik.uni-stuttgart.de
+</blockquote>
+<hr>
+ Copyright (c) 1990 - 2003,
+<a href="mailto:lagally@informatik.uni-stuttgart.de">
+ Klaus Lagally </a>
+<hr>
+</body></html> \ No newline at end of file
diff --git a/language/arabic/arabtex/doc/html/changes.htm b/language/arabic/arabtex/doc/html/changes.htm
new file mode 100644
index 0000000000..308b26e200
--- /dev/null
+++ b/language/arabic/arabtex/doc/html/changes.htm
@@ -0,0 +1,93 @@
+<html>
+<head>
+<title> Last Changes to ArabTeX </title>
+</head>
+<body>
+<!-- *************************************************************** -->
+<h1>Last Changes to ArabTeX </H1>
+
+<hr><!-- *************************************************************** -->
+
+<h2> Version management:</h2>
+
+<!-- *************************************************************** -->
+<UL>
+<li> We distinguish major versions "m.00", minor versions "m.nn-"
+ with nn > 0, and patch versions "m.nnx" where "x" is a letter.
+
+<li> to update from an older major version: reinstall completely.
+
+<li> to update from an older minor version: replace the contents of
+ the subdirectory "TEXINPUT".
+ Replace the fonts only if so indicated explicitly.
+
+<li> to update to a newer patch version: replace the ASCII file "<a
+ href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty"
+ >apatch.sty</a>".
+ This file is distributed as an unpacked text file,
+ and will be applied automatially whenever starting ArabTeX.
+
+<li> Patch versions within the same minor version are cumulative, so
+ a newer patch will encompass all earlier versions.
+
+<li> To back out from a patch version, replace "apatch.sty" by an
+ earlier version (within the same minor version only!) if still
+ locally available, or else edit out the current additions from
+ "apatch.sty" (save a copy first!).
+ Also please inform the author why you had to back out.
+
+<li> There is no provision to return gracefully to earlier minor or
+ even major versions. We can make them available on request, but
+ you should have good reasons, and there will be no support.
+</UL>
+<hr><!-- *************************************************************** -->
+
+Current minor version:
+ <a href="chg311.htm">Version 3.11</a><br>
+
+<hr><!-- *************************************************************** -->
+
+<img src="new1.gif" alt="new">
+There is a draft version of the new
+<a href="129.69.218.213/arabtex/doc/arabdoc.pdf">user manual.</a>
+<br>
+Please note that this version is incomplete and still being updated.
+
+<hr><!-- *************************************************************** -->
+
+Current patch versions:
+<blockquote>
+<a href="chg311a.htm">Version 3.11a </a><br>
+<a href="chg311b.htm">Version 3.11b </a><br>
+<a href="chg311c.htm">Version 3.11c </a><br>
+<a href="chg311d.htm">Version 3.11d </a><br>
+</blockquote>
+
+For information on earlier versions: see
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/changes.txt">
+ changes.txt
+</a>
+
+<hr><!-- *************************************************************** -->
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.htm">
+ Back to the ArabTeX directory
+</a>
+
+<hr><!-- *************************************************************** -->
+<blockquote>
+ Prof. Klaus Lagally<br>
+ Institut f&uuml;r Formale Methoden der Informatik<br>
+ Universit&auml;t Stuttgart<br>
+ Universit&auml;tsstra&szlig;e 38<br>
+ D-70569 Stuttgart<br>
+ GERMANY<br>
+ lagally@informatik.uni-stuttgart.de
+</blockquote>
+
+<hr><!-- *************************************************************** -->
+ Copyright (c) 1990 - 2003,
+<a href="http://www.informatik.uni-stuttgart.de/ifi/bs/people/lagall_e.htm">
+ Klaus Lagally </a>
+</body>
+</html>
+
diff --git a/language/arabic/arabtex/doc/html/chg311.htm b/language/arabic/arabtex/doc/html/chg311.htm
new file mode 100644
index 0000000000..411e336ce6
--- /dev/null
+++ b/language/arabic/arabtex/doc/html/chg311.htm
@@ -0,0 +1,84 @@
+<html>
+<head>
+<title> ArabTeX Version 3.11 </title>
+</head>
+
+<hr><!-- *************************************************************** -->
+<body>
+<h2>
+22.08.2003: ArabTeX Version 3.11
+</h2>
+
+<hr><!-- *************************************************************** -->
+
+<strong>
+There is a draft version of the new
+<a href="../arabdoc.pdf">user manual.</a>
+<img src="new2.gif" alt="new">
+<br>
+Please note that this version is still being updated.
+</strong>
+
+<hr><!-- *************************************************************** -->
+
+ Status:
+<ul>
+<li> This is a new minor version. All existing patches have been
+ merged into the respective macro files. To install it, load
+ and replace all macros in the subdirectory "TEXINPUT"; there
+ are several new files, and some have been extensively rewritten!
+ The functionality is supposed to be unchanged.
+
+<li> Distribution and modification of ArabTeX is now governed by the
+ <a href="http://www.latex-project.org/lppl.txt">
+ Latex Project Public License</a> (see LPPL.TXT).
+
+<li> We recommend installing of the fonts "xnash14" and "xnash14bf"
+ to obtain better quality of output.
+ These fonts are now the default; to revert to the old versions
+ use the command "\oldarabfont".
+
+</ul>
+
+ New features:
+<ul>
+<li> In Hebrew mode, all standard fonts available on CTAN are now
+ supported, including the possibility of generating vowel points
+ in \vocalize mode.
+
+</ul>
+
+ Bugs:
+<ul>
+<li> See
+<a href="changes.htm"> Last changes </a>
+</ul>
+
+ Installation:
+<ul>
+<li> Download the contents of "TEXINPUT", and in case of any font
+ problems also "MFINPUT".
+
+<li> In case of problems with old DVI files regenerate them; or else
+ download "arabsymb.mf" and regenerate the font "nash14".
+</ul>
+
+<hr><!-- *************************************************************** -->
+
+<a href="changes.htm"> Last changes </a>
+
+<hr><!-- *************************************************************** -->
+
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.htm">
+ Back to the ArabTeX directory
+</a>
+
+<hr><!-- *************************************************************** -->
+
+ Copyright (c) 1990 - 2003,
+<!--<a href="mailto:lagally@informatik.uni-stuttgart.de">-->
+<a href="http://www.informatik.uni-stuttgart.de/ifi/bs/people/lagall_e.htm">
+ Klaus Lagally </a>
+</body>
+</html>
+
diff --git a/language/arabic/arabtex/doc/html/chg311a.htm b/language/arabic/arabtex/doc/html/chg311a.htm
new file mode 100644
index 0000000000..8759503058
--- /dev/null
+++ b/language/arabic/arabtex/doc/html/chg311a.htm
@@ -0,0 +1,79 @@
+<html>
+<head>
+<title> ArabTeX Version 3.11a </title>
+</head>
+<body>
+<!-- *************************************************************** -->
+<h2>
+27.08.2003: ArabTeX Version 3.11a
+</h2>
+
+<hr><!-- *************************************************************** -->
+
+ Fixes:
+<ul>
+<li>
+ the 'hanging heh' in Urdu mode has been fixed.
+
+<li>
+ the selection of fonts in Arabic and Hebrew mode has been
+ drastically changed, and several logical errors have been
+ eliminated. Hopefully there are not too many new bugs.
+
+<li>
+ Hebrew Plain mode should work again. If you are not directly
+ concerned, forget it; tests are going on. The necessary
+ corrections cannot be handled by "apatch.sty" alone, see the
+ remarks below.
+</ul>
+
+
+<!--
+ New Features:
+<ul>
+<li> All patches are now handled by "apatch.sty".
+</ul>
+-->
+
+ Installation:
+<ul>
+<li>
+ download <a
+ href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty">
+ "apatch.sty"</a>.
+<li>
+ in case you are using the Hebrew Plain mode (and only then) also
+ download the new version of the driver module <a
+ href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/hebtex.tex">
+ "hebtex.tex"</a> (not "hebtex.sty"!)
+</ul>
+
+<!--
+<hr>
+-->
+<!-- *************************************************************** -->
+
+<!--
+Previous patch version:
+<a href="chg311a.htm">Version 3.11a </a><br>
+-->
+
+<hr><!-- *************************************************************** -->
+
+Current minor version:
+<a href="chg311.htm">Version 3.11</a><br>
+
+<a href="changes.htm"> Last changes </a>
+
+<hr><!-- *************************************************************** -->
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.htm">
+ Back to the ArabTeX directory
+</a>
+
+<hr><!-- *************************************************************** -->
+ Copyright (c) 1990 - 2003,
+<a href="http://www.informatik.uni-stuttgart.de/ifi/bs/people/lagall_e.htm">
+ Klaus Lagally </a>
+</body>
+</html>
+
diff --git a/language/arabic/arabtex/doc/html/chg311b.htm b/language/arabic/arabtex/doc/html/chg311b.htm
new file mode 100644
index 0000000000..86ee5cdd4a
--- /dev/null
+++ b/language/arabic/arabtex/doc/html/chg311b.htm
@@ -0,0 +1,75 @@
+<html>
+<head>
+<title> ArabTeX Version 3.11b </title>
+</head>
+<body>
+<!-- *************************************************************** -->
+<h2>
+08.09.2003: ArabTeX Version 3.11b
+</h2>
+
+<hr><!-- *************************************************************** -->
+
+ Fixes:
+<ul>
+<li>
+ the selection of fonts in Arabic and Hebrew mode has been
+ drastically changed, and several logical errors have been
+ eliminated. Some of the remaining bugs have been fixed.
+
+<li>
+ Hebrew Plain mode works again. To use it, download the new
+ version of "hebtex.tex"(!), the Hebrew Plain driver. The
+ corrections cannot be handled by "apatch.sty" alone.
+
+</ul>
+
+
+ New Features:
+<ul>
+<li>
+ ArabTeX now seems to cooperate with LyX in Arabic and Hebrew
+ mode.
+</ul>
+
+ Installation:
+<ul>
+<li>
+ download <a
+ href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty">
+ "apatch.sty"</a>.
+
+<li>
+ in case you are using the Hebrew Plain mode (and only then) also
+ download the new version of the driver module <a
+ href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/hebtex.tex">
+ "hebtex.tex"<a/> (not "hebtex.sty"!)
+</ul>
+
+<!--
+<hr>
+-->
+<!-- *************************************************************** -->
+
+Previous patch version:
+<a href="chg311a.htm">Version 3.11a </a><br>
+
+<hr><!-- *************************************************************** -->
+
+Current minor version:
+<a href="chg311.htm">Version 3.11</a><br>
+
+<a href="changes.htm"> Last changes </a>
+
+<hr><!-- *************************************************************** -->
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.htm">
+ Back to the ArabTeX directory
+</a>
+
+<hr><!-- *************************************************************** -->
+ Copyright (c) 1990 - 2003,
+<a href="http://www.informatik.uni-stuttgart.de/ifi/bs/people/lagall_e.htm">
+ Klaus Lagally </a>
+</body>
+</html>
+
diff --git a/language/arabic/arabtex/doc/html/chg311c.htm b/language/arabic/arabtex/doc/html/chg311c.htm
new file mode 100644
index 0000000000..5028456e8e
--- /dev/null
+++ b/language/arabic/arabtex/doc/html/chg311c.htm
@@ -0,0 +1,72 @@
+<html>
+<head>
+<title> ArabTeX Version 3.11c </title>
+</head>
+<body>
+<!-- *************************************************************** -->
+<h2>
+17.09.2003: ArabTeX Version 3.11c
+</h2>
+
+<hr><!-- *************************************************************** -->
+
+ Fixes:
+<ul>
+<li>
+ in Hebrew mode, a spurious 'shwa' on 'gimel' was fixed.
+</ul>
+
+
+ New Features:
+<ul>
+<li>
+ Hebrew mode provides a new command \setjudarab to activate
+ an experimental Judaeo-Arabic mode. Input is supposed to be
+ Arabic in the standard transliteration encoding (other modes
+ might work by accident), output is an extended Hebrew writing
+ in the chosen Hebrew font, and the standard transliteration
+ when activated. Arabic vowels are presently not provided; the
+ Hebrew vowels work but are presumably of no use.
+<p>
+ Caution: The new mode can be expected to contain errors. We
+ do not know the exact writing conventions, and have no access
+ to any relevant literature. Scholars in the field are urged
+ to <a href="mailto:lagallyk@acm.org">contact the author</a>.
+ Comments and suggestions are invited.
+</ul>
+
+ Installation:
+<ul>
+<li>
+ download <a
+ href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty">
+ "apatch.sty"</a>.
+</ul>
+
+<!--
+<hr>
+-->
+<!-- *************************************************************** -->
+
+Previous patch version:
+<a href="chg311b.htm">Version 3.11b </a><br>
+
+<hr><!-- *************************************************************** -->
+
+Current minor version:
+<a href="chg311.htm">Version 3.11</a><br>
+
+<a href="changes.htm"> Last changes </a>
+
+<hr><!-- *************************************************************** -->
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.htm">
+ Back to the ArabTeX directory
+</a>
+
+<hr><!-- *************************************************************** -->
+ Copyright (c) 1990 - 2003,
+<a href="http://www.informatik.uni-stuttgart.de/ifi/bs/people/lagall_e.htm">
+ Klaus Lagally </a>
+</body>
+</html>
+
diff --git a/language/arabic/arabtex/doc/html/chg311d.htm b/language/arabic/arabtex/doc/html/chg311d.htm
new file mode 100644
index 0000000000..50e4807a26
--- /dev/null
+++ b/language/arabic/arabtex/doc/html/chg311d.htm
@@ -0,0 +1,82 @@
+<html>
+<head>
+<title> ArabTeX Version 3.11d </title>
+</head>
+<body>
+<!-- *************************************************************** -->
+<h2>
+23.10.2003: ArabTeX Version 3.11d
+</h2>
+
+<hr><!-- *************************************************************** -->
+
+ Fixes:
+<ul>
+<li>
+ In the Arabic document classes, the formatting of the table
+ of contents was improved. A strange bug was corrected.
+
+<li>
+ A storage leak was found which prevented the formatting of
+ longer documents, leading to 'save stack overflow'.
+
+<li>
+ A bug in the ligatures module was found which used to produce
+ bogus messages 'missing letter y in font xnsh14' and to
+ slightly interfere with correct vowelization.
+
+<li>
+ A bug in the output module was found which used to produce
+ bogus messages 'underfull vbox while \output was active'.
+ The fix might slightly influence page breaking.
+</ul>
+
+
+ New Features:
+<ul>
+<li>
+ There is now limited support for Arabized LyX.
+ Since there are no 'italic', 'slanted', 'sanserif' etc. fonts
+ available for ArabTeX, all special font variants are presently
+ mapped into 'bold face'. This could be changed at the user's
+ request; please send any suggestions to the author.
+
+<li>
+ The messages in the LOG file are less verbose now.
+</ul>
+
+ Installation:
+<ul>
+<li>
+ download <a
+ href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty">
+ "apatch.sty"</a>.
+</ul>
+
+<!--
+<hr>
+-->
+<!-- *************************************************************** -->
+
+Previous patch version:
+<a href="chg311c.htm">Version 3.11c </a><br>
+
+<hr><!-- *************************************************************** -->
+
+Current minor version:
+<a href="chg311.htm">Version 3.11</a><br>
+
+<a href="changes.htm"> Last changes </a>
+
+<hr><!-- *************************************************************** -->
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.htm">
+ Back to the ArabTeX directory
+</a>
+
+<hr><!-- *************************************************************** -->
+ Copyright (c) 1990 - 2003,
+<a href="http://www.informatik.uni-stuttgart.de/ifi/bs/people/lagall_e.htm">
+ Klaus Lagally </a>
+</body>
+</html>
+
diff --git a/language/arabic/arabtex/doc/html/miktex.htm b/language/arabic/arabtex/doc/html/miktex.htm
new file mode 100644
index 0000000000..0f55c6ee2f
--- /dev/null
+++ b/language/arabic/arabtex/doc/html/miktex.htm
@@ -0,0 +1,180 @@
+<html><head>
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+ <title>MiKTeX 2.1 FAQ</title><link rel="stylesheet" href="miktexman.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.39"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="d40e2" class="article"><div class="titlepage"><div><h2 class="title"><a name="d40e2"></a>MiKTeX 2.1 FAQ</h2></div><div><h3 class="author">Christian Schenk</h3></div><div><p class="copyright">Copyright &copy; 2001 Christian Schenk</p></div><div><div class="legalnotice"><p>
+ Permission is granted to make and distribute verbatim copies
+ of this manual provided the copyright notice and this
+ permission notice are preserved on all copies.
+ </p><p>
+ Permission is granted to copy and distribute modified versions
+ of this manual under the conditions for verbatim copying,
+ provided that the entire resulting derived work is distributed
+ under the terms of a permission notice identical to this one.
+ </p><p>
+ Permission is granted to copy and distribute translations of
+ this manual into another language, under the above conditions
+ for modified versions, except that this permission notice may
+ be stated in a translation approved by the Free Software
+ Foundation.
+ </p></div></div><hr></div><div id="d40e42" class="preface"><div class="titlepage"><div><h2 class="title"><a name="d40e42"></a>About this document</h2></div></div><p>
+ This is the official MiKTeX FAQ list.
+ Visit the MiKTeX Project page at
+ <a href="http://www.miktex.org" target="_top">www.miktex.org</a> to
+ view the latest version of this document.
+ </p><p>
+ Please feel free to contribute more questions (and answers) by
+ sending an email to <tt>&lt;<a href="mailto:faq@miktex.org">faq@miktex.org</a>&gt;</tt>.
+ </p></div><div id="d40e61" class="chapter"><div class="titlepage"><div><h2 class="title"><a name="d40e61"></a>Chapter 1. General</h2></div></div><div class="qandaset"><dl><dt>1.1 <a href="#d40e66">
+ What is MiKTeX?
+ </a></dt><dt>1.2 <a href="#d40e85">
+ Which Windows version is required for running
+ MiKTeX?}
+ </a></dt><dt>1.3 <a href="#d40e115">
+ Who maintains MiKTeX?
+ </a></dt><dt>1.4 <a href="#d40e131">
+ Is MiKTeX Year 2000 compliant?
+ </a></dt></dl><div class="qandaentry"><div class="question"><p><a name="d40e66"></a><b>1.1 </b>
+ What is MiKTeX?
+ </p></div><div class="answer"><p><a name="d40e72"></a><b> </b>
+ MiKTeX is a software
+ distribution for Windows, which includes
+ TeX and
+ TeX-related applications.
+ </p></div></div><div class="qandaentry"><div class="question"><p><a name="d40e85"></a><b>1.2 </b>
+ Which Windows version is required for running
+ MiKTeX?}
+ </p></div><div class="answer"><p><a name="d40e91"></a><b> </b>
+ MiKTeX requires a 32-bit Windows:
+ <div class="itemizedlist"><ul><li><p><a name="d40e98"></a>
+ Windows 95
+ </p></li><li><p><a name="d40e101"></a>
+ Windows 98
+ </p></li><li><p><a name="d40e104"></a>
+ Windows ME
+ </p></li><li><p><a name="d40e107"></a>
+ Windows NT
+ </p></li><li><p><a name="d40e110"></a>
+ Windows 2000
+ </p></li></ul></div>
+ </p></div></div><div class="qandaentry"><div class="question"><p><a name="d40e115"></a><b>1.3 </b>
+ Who maintains MiKTeX?
+ </p></div><div class="answer"><p><a name="d40e121"></a><b> </b>
+ MiKTeX is maintained by
+ Christian Schenk (<tt>&lt;<a href="mailto:cs@miktex.org">cs@miktex.org</a>&gt;</tt>).
+ </p></div></div><div class="qandaentry"><div class="question"><p><a name="d40e131"></a><b>1.4 </b>
+ Is MiKTeX Year 2000 compliant?
+ </p></div><div class="answer"><p><a name="d40e137"></a><b> </b>
+ MiKTeX is Year 2000 compliant to the extent that it has
+ been designed and tested to be compliant. But remember
+ that MiKTeX comes with no warranty, and this applies to
+ Y2K compliance.
+ </p></div></div></div></div><div id="d40e146" class="chapter"><div class="titlepage"><div><h2 class="title"><a name="d40e146"></a>Chapter 2. Getting Started</h2></div></div><div class="qandaset"><dl><dt>2.1 <a href="#d40e151">
+ How do I install MiKTeX?
+ </a></dt><dt>2.2 <a href="#d40e167">
+ I have installed MiKTeX. How
+ do I use it?How do I use it?
+ </a></dt><dt>2.3 <a href="#texshells">
+ Which program should I use to edit TeX documents?
+ </a></dt></dl><div class="qandaentry"><div class="question"><p><a name="d40e151"></a><b>2.1 </b>
+ How do I install MiKTeX?
+ </p></div><div class="answer"><p><a name="d40e157"></a><b> </b>
+ The MiKTeX distribution includes
+ a setup wizard (<b>setupwiz.exe</b>). It should
+ be sufficient to start the wizard and then clicking the
+ @samp{Next} button until the installation process concludes.
+ </p></div></div><div class="qandaentry"><div class="question"><p><a name="d40e167"></a><b>2.2 </b>
+ I have installed MiKTeX. How
+ do I use it?How do I use it?
+ </p></div><div class="answer"><p><a name="d40e173"></a><b> </b>
+ MiKTeX is mostly a collection
+ of command-line oriented utilities. You should install a
+ TeX shell/editor if you are a
+ TeX novice (see <a href="#texshells" title="">Q: 2.3</a>).
+ </p></div></div><div class="qandaentry"><div class="question"><p><a name="texshells"></a><b>2.3 </b>
+ Which program should I use to edit TeX documents?
+ </p></div><div class="answer"><p><a name="d40e194"></a><b> </b>
+ See <a href="http://www.germany.net/teilnehmer/100/122054/texwin.htm" target="_top">http://www.germany.net/teilnehmer/100/122054/texwin.htm</a>
+ for a list of TeX shells. The
+ most popular shell seems to be WinEdt (ShareWare, <a href="http://www.winedt.com" target="_top">http://www.winedt.com</a>).
+ Emacs users may prefer
+ AUC-TeX (<a href="http://sunsite.auc.dk/auctex/" target="_top">http://sunsite.auc.dk/auctex/</a>).
+ </p></div></div></div></div><div id="d40e215" class="chapter"><div class="titlepage"><div><h2 class="title"><a name="d40e215"></a>Chapter 3. Net Resources</h2></div></div><div class="qandaset"><dl><dt>3.1 <a href="#d40e220">
+ Is there a home page?
+ </a></dt><dt>3.2 <a href="#d40e230">
+ Is there a mailing list?
+ </a></dt><dt>3.3 <a href="#joinml">
+ How can I join the mailing list?
+ </a></dt><dt>3.4 <a href="#d40e254">
+ How can I read old articles?
+ </a></dt><dt>3.5 <a href="#d40e264">
+ How can I leave the mailing list?
+ </a></dt></dl><div class="qandaentry"><div class="question"><p><a name="d40e220"></a><b>3.1 </b>
+ Is there a home page?
+ </p></div><div class="answer"><p><a name="d40e223"></a><b> </b>
+ Yes. The official project page is <a href="http://www.miktex.org" target="_top">http://www.miktex.org</a>.
+ </p></div></div><div class="qandaentry"><div class="question"><p><a name="d40e230"></a><b>3.2 </b>
+ Is there a mailing list?
+ </p></div><div class="answer"><p><a name="d40e233"></a><b> </b>
+ Yes (see <a href="#joinml" title="">Q: 3.3</a>).
+ </p></div></div><div class="qandaentry"><div class="question"><p><a name="joinml"></a><b>3.3 </b>
+ How can I join the mailing list?
+ </p></div><div class="answer"><p><a name="d40e242"></a><b> </b>
+ Send an email to <tt>&lt;<a href="mailto:miktex-request@dsts.dk">miktex-request@dsts.dk</a>&gt;</tt>.
+ The message body must contain one line:
+ </p><div class="informalexample" id="d40e248"><a name="d40e248"></a><pre class="programlisting">
+subscribe
+ </pre></div><p>
+ You will receive instructions (via email) on how to use
+ the mailing list.
+ </p></div></div><div class="qandaentry"><div class="question"><p><a name="d40e254"></a><b>3.4 </b>
+ How can I read old articles?
+ </p></div><div class="answer"><p><a name="d40e257"></a><b> </b>
+ Old articles are accessible via <a href="http://www.egroups.com/group/miktex/" target="_top">http://www.egroups.com/group/miktex/</a>.
+ </p></div></div><div class="qandaentry"><div class="question"><p><a name="d40e264"></a><b>3.5 </b>
+ How can I leave the mailing list?
+ </p></div><div class="answer"><p><a name="d40e267"></a><b> </b>
+ Send an email to <tt>&lt;<a href="mailto:majordomo@dsts.dk">majordomo@dsts.dk</a>&gt;</tt>. The
+ message body must contain one line:
+ </p><div class="informalexample" id="d40e273"><a name="d40e273"></a><pre class="programlisting">
+unsubscribe miktex
+ </pre></div></div></div></div></div><div id="d40e276" class="chapter"><div class="titlepage"><div><h2 class="title"><a name="d40e276"></a>Chapter 4. Maintenance</h2></div></div><div class="qandaset"><dl><dt>4.1 <a href="#d40e281">
+ Which is the best directory to keep
+ .sty files where
+ MiKTeX can find them?
+ </a></dt><dt>4.2 <a href="#d40e362">
+ How do I add new languages to the LaTeX format file?
+ </a></dt></dl><div class="qandaentry"><div class="question"><p><a name="d40e281"></a><b>4.1 </b>
+ Which is the best directory to keep
+ <tt>.sty</tt> files where
+ MiKTeX can find them?
+ </p></div><div class="answer"><p><a name="d40e290"></a><b> </b>
+ Each new LaTeX
+ <i><tt>package</tt></i> should be installed in
+ the folder
+ <tt>tex\latex\<i><tt>package</tt></i></tt>}
+ relative to the local TEXMF folder (usually
+ <tt>C:\localtexmf\</tt>).
+ </p><p>
+ Example: suppose you want to install the package
+ thesis-ex which consists of the
+ style file <tt>thesis-es.sty</tt>:
+ </p><div class="procedure"><a name="d40e315"></a><ol><li><a name="d40e316"></a><p>
+ Create a new folder:
+ </p><div class="informalexample" id="d40e319"><a name="d40e319"></a><pre class="screen">
+<tt>C:\&gt; </tt><b><tt>mkdir C:\localtexmf\tex\latex\thesis-ex</tt></b>
+<tt>C:\&gt; </tt>
+ </pre></div></li><li><a name="d40e330"></a><p>
+ Copy all files (only one in our case) to the new folder:
+ </p><div class="informalexample" id="d40e333"><a name="d40e333"></a><pre class="screen">
+<tt>C:\&gt; </tt><b><tt>copy thesis-ex.sty C:\localtexmftex\latex\thesis-ex</tt></b>
+<tt>C:\&gt; </tt>
+ </pre></div></li><li><a name="d40e344"></a><p>
+ Refresh the file name database so that MiKTeX finds the new files:
+ </p><div class="informalexample" id="d40e350"><a name="d40e350"></a><pre class="screen">
+<tt>C:\&gt; </tt><b><tt>initexmf -u</tt></b>
+<tt>C:\&gt; </tt>
+ </pre></div></li></ol></div></div></div><div class="qandaentry"><div class="question"><p><a name="d40e362"></a><b>4.2 </b>
+ How do I add new languages to the LaTeX format file?
+ </p></div><div class="answer"><p><a name="d40e368"></a><b> </b>
+ You can use MiKTeX Options
+ to add new languages.
+ </p></div></div></div></div></div></body></html> \ No newline at end of file
diff --git a/language/arabic/arabtex/doc/html/new1.gif b/language/arabic/arabtex/doc/html/new1.gif
new file mode 100644
index 0000000000..9b24baff3c
--- /dev/null
+++ b/language/arabic/arabtex/doc/html/new1.gif
Binary files differ
diff --git a/language/arabic/arabtex/doc/html/new2.gif b/language/arabic/arabtex/doc/html/new2.gif
new file mode 100644
index 0000000000..ffe0211447
--- /dev/null
+++ b/language/arabic/arabtex/doc/html/new2.gif
Binary files differ
diff --git a/language/arabic/arabtex/doc/html/refer.htm b/language/arabic/arabtex/doc/html/refer.htm
new file mode 100644
index 0000000000..f579ec65bb
--- /dev/null
+++ b/language/arabic/arabtex/doc/html/refer.htm
@@ -0,0 +1,109 @@
+<html>
+<head>
+<title> ArabTeX References </title>
+</head>
+
+<!-------------------------------------------------------------------------->
+<body>
+<h2>
+Some ArabTeX References
+</h2>
+
+<hr><!---------------------------------------------------------------------->
+
+The following list contains some examples of publications
+heavily relying on ArabTeX for typesetting.
+<P>
+The list is neither complete, nor do we have any judgment on the content.
+Some titles contain quotations in the ArabTeX transliteration conventions;
+these may be not too readable.
+
+<ul>
+<li>
+Benno van Dalen: <I>Ancient and Mediaeval Astronomical Tables:
+mathematical structure and parameter values.</I>
+Proefschrift Universiteit Utrecht, 1993.
+
+<li>
+<I>Abu Ma`shar: The Abbreviation of the Introduction
+to Astrology, together with the Medieval Latin Translation
+of Adelard of Bath.</I>
+Edited and translated by Ch. Burnett, K. Yamamoto
+and M. Yano. E. J. Brill, Leiden, New York, K&ouml;ln 1994.
+
+<li>
+U. Rebstock: <I>Der Mu`amalat-Traktat des Ibn al-Haitham.</I>
+Zeitschrift f&uuml;r Geschichte der Arabisch-Islamischen Wissenschaften 10,
+61 - 121, 1995/96.
+
+<li>
+Idris Samawi Hamid: <I>The Metaphysics and Cosmology of Process
+according to Shaykh 'Ahmad al-'Ahsa'i.</I>
+Critical Edition, Translation and Analysis of
+<i>Observations in Wisdom</i>.
+State University of New York at Buffalo, PhD Dissertation, 1998.
+
+<li>
+<I>Kushyar Ibn Labban's Introduction to Astrology.</I>
+Edited and Translated by Michio Yano.
+Institute for the Study of Languages and Cultures of Asia and Africa,
+Tokyo 1997.
+
+<li>
+Arnoud Vrolijk: <I>Bringing a laugh to a scowling face. </I>
+A study and critical edition of the
+"Nuzhat al-nufus wa-mudhik al-`abus" by
+`Ali Ibn Sudun al-Bashbughawi
+(Cairo 810/1407 - Damascus 868/1464).
+Research School CNWS, School of Asian, African, and Amerindian Studies,
+Leiden, The Netherlands, 1998.
+
+<li>
+E.S.Kennedy, P.Kunitzsch and R.P.Lorch:
+<I>The Melon-shaped Astrolabe in Arabic Astronomy.</I>
+Texts edited with translation and commentary.
+Boethius,
+Texte und Abhandlungen zur Geschichte der Mathematik und der
+Naturwissenschaften, Band 43.
+Franz Steiner Verlag Stuttgart, 1999.
+
+<li>
+Charif Bahbouh, Martina Bahbouhova:
+<I>365 + 1 arabske prislovi a mudroslovi.</I>
+Dar Ibn Rushd, Praha, 2001.
+
+<li>
+<I>Wolfdietrich Fischer: A Grammar of Classical Arabic.</I>
+Third Revised Edition.
+Translated from the German by Jonathan Rodgers.
+Yale University Press, New Haven & London, 2001.
+
+<li>
+<I>Thabit ibn Qurra: On the Sector-Figure and Related Texts.</I>
+Edited with Translation and Commentary by Richard Lorch.
+Institute for the History of Arabic-Islamic Science
+at the Johann Wolfgang Goethe University,
+Frankfurt am Main, 2001.
+
+<li>
+Tilman Hannemann:
+<I>Recht und Religion in der Gro&szlig;en Kabylei
+(18./19. Jahrhundert).</I>
+Zu rechtskulturellen Wandlungsprozessen im tribalen Gewohnheitsrecht.
+Dissertation Universit&auml;t Bremen, 2002.
+</ul>
+
+
+<hr><!----------------------------------------------------------------------->
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.htm">
+ Back to the ArabTeX directory
+</a>
+
+<hr><!---------------------------------------------------------------------->
+ Copyright (c) 1990 - 2003,
+<!--<a href="mailto:lagally@informatik.uni-stuttgart.de">-->
+<a href="http://www.informatik.uni-stuttgart.de/ifi/bs/people/lagall_e.htm">
+ Klaus Lagally </a>
+</body>
+</html>
+
diff --git a/language/arabic/arabtex/doc/txt/announce.txt b/language/arabic/arabtex/doc/txt/announce.txt
new file mode 100644
index 0000000000..f1217164e8
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/announce.txt
@@ -0,0 +1,50 @@
+----------------------------------------------------------------------
+ ArabTeX Version 3.11 is available
+----------------------------------------------------------------------
+As of today, Oct. 23, 2003, a new version 3.11 of ArabTeX is available
+by FTP from "ftp.informatik.uni-stuttgart.de" (129.69.211.2).
+The package resides in "/pub/arabtex/", see the file "arabtex.htm".
+
+This server always carries the current version; in case of doubt check
+the version number and the date of the file /pub/arabtex/apatch.sty.
+To receive a status report you may also send an empty Email message to
+"arabtex@informatik.uni-stuttgart.de".
+
+Please observe that we are *not* the same as the (old) "Stuttgart server"!
+
+The identical package is also available from the CTAN server network:
+
+ ftp://ftp.tex.ac.uk/tex-archive/languages/arabtex/ (UK)
+ ftp://ftp.dante.de/tex-archive/languages/arabtex/ (Germany)
+ ftp://ctan.tug.org/tex-archive/languages/arabtex/ (USA)
+
+ArabTeX is a TeX macro package with associated Naskh fonts designed to
+generate the Arabic writing from texts coded in an ASCII transliteration
+as well as in some other popular encodings for Arabic and Hebrew, e.g.
+ASMO 449, ISO 8859-6 (ASMO 708), Arabic Windows encoding, and HED.
+It is compatible with Plain TeX, LaTeX, NFSS, and the EDMAC package.
+It also cooperates well with LaTeX 2e of June 1996 or later.
+There is some support for Persian, Urdu, Pashto, and Sindhi.
+Unicode Arabic and Hebrew support is present but not extensively tested.
+
+The version 3.11 supports vowelized and non-vowelized Hebrew, and
+bidirectional line-breaking within insertions. The former limitation
+that an insertion must fit on the current line no more exists.
+
+For information on updates, see the file "changes.txt".
+
+----------------------------------------------------------------------
+ Prof. Klaus Lagally
+ Institut fuer Formale Methoden der Informatik
+ Universitaet Stuttgart
+ Universitaetsstrasse 38
+ D-70569 Stuttgart
+ GERMANY
+
+ lagally@informatik.uni-stuttgart.de
+ FAX: +49 - 711 - 7816 370
+--------------------------------------------------------------------------
+ Copyright (c) 1990 - 2003, Klaus Lagally
+--------------------------------------------------------------------------
+
+
diff --git a/language/arabic/arabtex/doc/txt/arabtex.doc b/language/arabic/arabtex/doc/txt/arabtex.doc
new file mode 100644
index 0000000000..524cf6fa7f
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/arabtex.doc
@@ -0,0 +1,523 @@
+arabtex.doc 20.11.1993
+ A r a b T e X Version 3
+ ========================
+------------------------------------------------------------------------
+The introduction below is slightly out of date
+but may be used as a first start.
+------------------------------------------------------------------------
+arabtex.doc 05.11.1992
+ A r a b T e X Version 2
+ ========================
+
+What is ArabTeX?
+================
+
+ArabTeX is a package extending the capabilities of TeX/LaTeX to generate
+the arabic writing from an ASCII transliteration for texts in several
+languages using the arabic script.
+
+It consists of a TeX macro package and an arabic font in several sizes,
+presently only available in the Naskhi style. ArabTeX will run with Plain
+TeX and also with LaTeX; other additions to TeX have not been tried.
+
+ArabTeX is primarily intended for generating the arabic writing, but the
+scientific transcription can be also easily generated. For other languages
+using the arabic script limited support is available.
+
+
+Installing ArabTeX:
+===================
+
+The installation procedure is system dependent. You have to install the
+"nash14" font with its "*.pk" and "*.tfm" files on the font search path of
+your TeX system, and the "*.sty" files and "arabtex.tex" on the source
+search path of your system. Possibly you will have to rename the "*.pk"
+files according to local conventions, and as a last resort you can try to
+recreate the font from the "*.mf" METAFONT sources. Additional fonts if
+available are installed analogously.
+
+
+Activating ArabTeX:
+===================
+
+With Plain TeX, load the ArabTeX macros by "\input arabtex". With LaTeX,
+include the option "arabtex" in the document header. In both cases several
+additional files will be loaded automatically.
+
+ArabTeX defines several additional commands as indicated below, and also a
+large number of internal commands which could lead to storage overflow in
+a small TeX implementation. All internal commands contain an "at" sign <@>
+in their names and thus should not interfere with any user defined
+commands (but possibly with TeX extensions we do not know about).
+
+With Plain TeX, the arabic font is only available at the normal 14 point
+size which ought to cooperate well with the "cm" fonts at 10 points. For
+other sizes, change the "\magnification" or define additional font
+identifiers yourself. To change the default, inspect "arabtex.tex" and
+redefine the "\pnash" command accordingly. With LaTeX, the size changing
+commands will also operate on the arabic font.
+
+
+Input to ArabTeX:
+=================
+
+After activating ArabTeX, your modified TeX/LaTeX system will recognize
+the following items:
+
+- normal TeX/LaTeX text and commands,
+
+- short arabic quotations bracketed by < and >; these must fit on one
+ line of output, and you have to select one of the Arabic writing styles,
+ e.g \setarab, before using this feature. A quotation may also be started
+ with \<.
+
+- longer arabic texts bracketed by \begin{arabtext} and \end{arabtext},
+ called "Arabic Environments" in the sequel.
+
+An Arabic Environment consists of one or several paragraphs separated by
+blank lines or \par commands. Every paragraph and every arabic quotation
+is a sequence of the following kinds of items, separated by blank spaces
+or newlines:
+
+- isolated (legal) special characters, interpreted as the corresponding
+ arabic special character;
+
+- "numbers", character sequences starting with a digit. A "number" will be
+ translated in the normal writing sequence from left to right even if it
+ contains letters and/or special characters;
+
+- "arabic quotes", coded as two left quotes or two right quotes each;
+
+- "words", character sequences starting with a letter or special character
+ followed by a letter. The (coded) characters of a word will in the
+ output be arranged from right to left.
+
+- TeX/LaTeX control sequences WITHOUT parameters. These will be executed
+ immediately.
+
+- ArabTeX control sequences with or without parameters. These will be
+ executed immediately.
+
+- a sequence of items enclosed in curly braces { and }. The output from
+ the constituents will be arranged from right to left and must fit on one
+ output line. As far as TeX is concerned, this is NO group. This feature
+ may not be nested.
+
+Output from all items will be arranged from right to left, lines will be
+broken as necessary.
+
+Inside an Arabic Environment, but NOT in an arabic quotation, you may also
+have:
+
+- short mathematical insertions, bracketed by SINGLE $ signs. They must
+ fit on one output line and are processed as usual;
+
+- short non-arabic text quotations, bracketed by < and >. These must fit
+ on one output line and introduce a new level of grouping, so if they
+ contain any TeX/LaTeX assignments the effects of these will be local.
+
+Control sequences in an Arabic Environment may be of the following kinds:
+
+- ArabTeX option changing commands. These may also be used outside an
+ Arabic Environment and generally have a global effect;
+
+- \\ for a new line;
+
+- \par (or a blank line) for a new paragraph, \noindent for a new paragraph
+ without indentation (NOT in arabic quotations);
+
+- \emphasize <item> will put a bar over the next <item>;
+
+- \setnash, \setnashbf, \setnastaliq font selection commands, see below;
+
+- size changing LaTeX commands like \large etc., only if you use LaTeX;
+
+- most other TeX/LaTeX commands make no sense in an Arabic Environment.
+
+- you MUST NOT nest another LaTeX environment inside an Arabic Environment
+ (except possibly display math which we did not test, and might work);
+
+- if you really need to use a control sequence with parameters, define a
+ new TeX macro or enclose the whole construct in curly braces { and }.
+
+
+Font selection:
+===============
+
+For space economy, only the Naskh font is available by default. With LaTeX,
+additional fonts can be loaded by the document style options "nashbf"
+and/or "nastaliq" (when available). Users of Plain TeX can load and define
+suitable fonts themselves.
+
+The following font selection commands are available:
+
+- \setnash (default) selects the Naskh font.
+
+- \setnashbf selects a bold-face version of Naskh.
+
+- \setnastaliq selects the Nastaliq font.
+
+If a font is not available or has not been loaded, the corresponding
+command will select the default font.
+
+With LaTeX, the size changing commands will also operate on the additional
+fonts.
+
+
+Input coding:
+=============
+
+The ASCII input notation for arabic text is modelled closely after the
+transliteration standards ISO/R 233 and DIN 31 635. As these standards do
+not guarantee unique re-transliteration and are also not ASCII compatible,
+some modifications were necessary. These follow the general rules:
+
+- if the transliteration uses a single letter, code that letter;
+
+- if the transliteration uses a letter with a diacritical mark, put a
+ special character similar to the diacritical mark BEFORE the letter.
+
+Standard arabic and persian characters:
+---------------------------------------
+
+b bah | d dal | .s ssad | f fah | h hah | ' hamza
+t tah | _d dhal | .d ddad | q qaf | w waw | N tanween
+_t thah | r rah | .t ttah | k kaf | y yah | Y alif maqsoura
+^g geem | z zay | .z tthah | l lam | g gaf | _A alif maqsoura
+.h hhah | s seen | ` `ain | m meem | p pah | T tah marbouta
+_h khah | ^s sheen | .g ghain | n noon | v vah | W waw (see below)
+
+Additional characters generally available:
+------------------------------------------
+
+c hhah with hamza
+^c gim with three dots (below)
+,c khah with three dots (above)
+^z zay with three dots (above)
+~n kaf with three dots (Ottoman)
+~l law with a bow accent (Kurdish)
+~r rah with two bows (Kurdish)
+
+See also "Urdu" and "Pashto" below.
+
+Additional coding rules:
+------------------------
+
+- For long vowels, use capital letters <A>, <I>, <U>, or <_a>, <_i>, <_u>.
+
+- As the transliteration is ambiguous, use <T> for <tah marbouta>,
+ <N> for <tanween>, <Y> or <_A> for <alif maqsoura>.
+
+- Short vowels <a>, <i>, <u> need not generally be written except in the
+ following cases:
+ - at the beginning of a word where they generate <alif>,
+ - adjacent to <hamza> where they will influence the carrier,
+ - when the transcription is wanted,
+ - in \fullvocalize mode.
+
+- <hamza> is denoted by a single RIGHT quote; its carrier will be
+ determined from the context according to the rules for writing arabic
+ words. If that is not wanted, "quote" it (see below).
+
+- <`ain> is a single LEFT quote, don't confuse it with <hamza>!
+
+- <madda> is generated by a right quote (<hamza>) before <A>: <'A>.
+
+- The "invisible letter" <|> may be inserted in order to break unwanted
+ ligatures and to influence the <hamza> writing. It will not show in the
+ arabic output or in the transcription.
+
+- <tashdid> is indicated by doubling the appropriate letter.
+
+- The article is always written <al-> (with hyphen!).
+
+- Hyphens <-> may be used freely, and generally do not change the writing,
+ but will show up in the transcription. At the beginning and the end of a
+ word they enforce the use of the connection form of the adjacent letter
+ (if it exists), like e.g. in the date <1400 h->.
+
+- A double hyphen <--> between two otherwise joining letters will break
+ any ligature and will insert a horizontal stroke (<tatweel>, <kashida>)
+ without appearing in the transcription. It may be used repeatedly.
+
+
+Quoting:
+========
+
+A double quote <"> will modify the meaning of the following character as
+follows:
+
+- if a short vowel follows, the appropriate diacritical mark <fatha>,
+ <kasra>, <damma> will be put on the preceding character even if the
+ vocalization is off otherwise. If <N> follows the short vowel, the
+ appropriate form of <tanween> will be generated instead. At the
+ beginning of a word, <alif> is assumed as the first character. If the
+ previous word ended with a vowel, <wasla> is generated instead of the
+ vowel indicator.
+
+- if the following character is a single right quote, a <hamza> mark will
+ be put on the preceding character even if in conflict with the <hamza>
+ rules.
+
+- if the following character is the "invisible letter" <|>, the connection
+ between the adjacent letters will be broken and a small space inserted.
+
+- otherwise: a <sukun> will be put on the preceding character. The
+ following character will be processed again.
+
+The double quote will not show up in the transcription.
+
+
+Ligatures:
+==========
+
+There is no way to explicitly indicate ligatures as a large number of them
+are generated automatically. Any unwanted ligature can be suppressed by
+interposing the invisible letter <|> between the two letters otherwise
+combined into a ligature. After "\ligsfalse" ligatures in the middle of a
+word will not normally be produced; for some texts this looks better. You
+can return to the normal strategy by "\ligstrue".
+
+
+Vocalization:
+=============
+
+There are three modes of rendering short vowels:
+
+\fullvocalize:
+ - every short vowel will generate the corresponding diacritic mark
+ <fatha>, <kasra>, <damma>.
+
+ - If <N> follows a short vowel, the corresponding form of <tanween> is
+ generated instead.
+
+ - <_a> will produce a <qur'an alif> accent instead of an explicit
+ <alif> character which is coded <A>.
+
+ - if a long vowel follows a consonant, the corresponding short vowel is
+ implied. The long vowel itself carries no diacritical mark.
+
+ - if no vowel is given after a consonant, <sukun> will be generated
+ except if a double "sun letter" follows <lam>.
+
+ - <alif> at the beginning of a word carries <wasla> instead of the vowel
+ indicator if the preceding word ended with a vowel.
+
+\vocalize: as above, but <sukun> and <wasla> will not be generated except
+ if explicitly indicated by "quoting".
+
+\novocalize: no diacritics will be generated except if explicitly asked for
+ by "quoting".
+
+In all modes, a double consonant will generate <tashdid>, and <'A> always
+generates <madda> on <alif>. After <aN> the silent <alif> character is
+generated if necessary. The silent <alif> may also be explicitly indicated
+by <aNa> or <aNA>, or coded literally as <A> in \novocalize mode. If a
+silent <alif maqsoura> is wanted instead, write <aNY>, <aN_A>, <Y> or <_A>.
+A silent <alif> after <waw> is indicated by <Ua>, <UA> or <Wa>, <WA> (with
+a capital <W>!).
+
+
+Transcription:
+==============
+
+In addition to the arabic writing, the standard scientific transcription
+may also be obtained from a fully vocalized input text. This is indicated
+by "\transtrue" and may be switched off again by "\transfalse". If ONLY
+the transcription is wanted, you can deactivate the arabic writing by
+"\arabfalse"; it can be reactivated by "\arabtrue". If both modes are
+active their output will be interleaved line by line.
+
+The transcription mode assumes that the input text is in the Arabic
+language and has been coded according to the rules given above. For words
+from other languages the transcription might be in error. For Arabic text,
+the following special cases are handled:
+
+- after the article, a double consonant will be assimilated;
+
+- an initial vowel will be omitted if the preceding word ended with a
+ vowel. If that is not wanted start with <hamza>.
+
+- a silent <alif> or <alif maqsoura> after <N> (<tanwin>) and <U> is
+ omitted in the transcription. The same happens after <waw> if it is
+ written <W>.
+
+For space economy, the transcription module is NOT loaded by default. If
+you want to use it, add the style option "atrans" with LaTeX; and with
+Plain TeX, say "\input atrans.sty".
+
+
+Support for other languages:
+============================
+
+ArabTeX is primarily intended for writing texts in classical and modern
+Arabic, but it also provides limited support for several other languages
+that are customarily written in the arabic alphabet. The vocalization and
+the transcription cannot generally be expected to be correct, but might
+work by accident.
+
+In order to switch to the conventions for one of these languages, say
+"\setfarsi", "\seturdu", "\setpashto", "\setmaghribi"; "\setarab" is the
+default and can also be used to switch back to the arabic conventions.
+
+- Farsi, Dari:
+--------------
+All characters needed for writing Farsi are available by default. The
+short vowels <e> and <o> are mapped to <i> and <u>, the long vowels <E>
+and <O> to <I> and <U>.
+
+The <izafet> connection may be written literally, which may look awkward
+in the case of <h"'>, or always as <-i> (with hyphen); then the correct
+spelling will be determined from the context. Likewise the <yah-i-wahdat>
+can always be written <-I>.
+
+The final <yah> carries no dots.
+
+Farsi uses the Nasta`liq font if available.
+
+- Ottoman: see Farsi.
+----------
+
+- Kurdish: see Farsi.
+----------
+
+- Urdu:
+-------
+The additional characters in Urdu are coded as follows:
+
+h always denotes the "two-eyed <hah>"
+,h the "wavy" <hah> letter
+,t <tah> with a small <ttah> accent
+,d <dal> with a small <ttah> accent
+,r <rah> with a small <ttah> accent
+.n <noon> without a dot (modifies a preceding vowel)
+E <yah bari> in the final position, otherwise mapped to <yah>
+O mapped to <U>
+
+The short vowels <e> and <o> are mapped to <a> and <u>.
+
+Note: Some of the given codings also occur in Pashto but with a different
+meaning, see below.
+
+Urdu uses the Nasta`liq font if available.
+
+- Pashto:
+---------
+The additional characters for Pashto are coded as follows:
+
+,t <tah> with a small loop
+,d <dal> with a small loop
+,r <rah> with a small loop
+.n <noon> with a small loop
+g <gaf> is written with a small loop instead of a bar
+,z <rah> with one dot above and one below
+,s <sin> with one dot above and one below
+e like <a>, with a <zwarakay> mark if vocalized
+e'i <yah> with <hamza>
+E <yah> with two dots below aligned vertically
+Ey <yah> written with a final stroke
+o mapped to <u>
+O mapped to <U>
+w"' <hamza> on <waw>
+h"' <hamza> on <hah>
+
+The <qur'an alif> accent is not available for Pashto.
+
+The rules for <izafet> and <yah-i-wahdat> apply.
+
+Note: Some of the given codings also occur in Urdu but with a different
+meaning, see above. For writing some words in the Urdu style, write the
+command \seturdu and afterwards switch back to the Pashto conventions by
+\setpashto.
+
+- Maghribi:
+-----------
+This is just a different writing convention. <fah> is written with one dot
+below the letter, <qaf> with one dot above the normal letter form of
+<fah>. The three dots of <vah> are put below the letter. Otherwise like
+Arabic.
+
+Miscellaneous features:
+=======================
+- As ArabTeX is slow, it will produce some terminal output while running
+ to indicate it is still alive. If that is not wanted, say "\quiet" or
+ "\tracingarab = 0 " (outside an Arabic Environment). "\tracingarab = 1 "
+ will report arabic paragraphs, a value of 2: arabic lines and insertions,
+ a value of 3 or more: individual items.
+
+- Whether <yah> in the final position carries dots or not depends on the
+ chosen language convention. You can override this by "\yahdots" and
+ "\yahnodots".
+
+- To reproduce erroneous or archaic texts exactly as they are, the
+ following additional codings are available:
+
+ .k <kaf> in final position without a diacritical mark
+ .f <fah> without a dot
+ .b <bah> without a dot
+ .n <noon> without a dot (not available for Pashto)
+ Y <alif maqsoura>, <yah> without dots in all positions.
+
+How to move from Version 1 to Version 2:
+========================================
+
+Version 2 is not fully compatible with Version 1; however, moving to the
+new version should cause little problems, and is recommended as version 1
+is no longer supported. Apart from some extensions, most changes were
+introduced in order to better conform to the transliteration standards,
+and to have less compatibility problems with TeX and LaTeX. Further
+versions are expected to be upward compatible if no grave bugs turn up.
+
+The main differences between versions 1 and 2 are:
+
+- The font size has increased, so the document layout may change. The old
+ font can no more be used.
+
+- Some arabic characters are now coded differently: <`ain> is denoted by a
+ left quote, and <c>, <^z>, <^t>, and <.n> denote different characters
+ from what they did before. This was changed in order to better conform
+ to the standard transliteration.
+
+- There are a lot more ligatures than before. This normally need not
+ concern the user.
+
+- \vocalize will no more generate <sukun> and <wasla> except if explicitly
+ indicated by quoting. See \fullvocalize.
+
+- Arabic Environments are always bracketed by the new control sequences
+ \begin{arabtext} and \end{arabtext} even if only the transcription is
+ wanted.
+
+- Short arabic quotations are now bracketed by \< and > so < has its
+ standard TeX meaning.
+
+We recommend converting existent input files to the new notation. If that
+is impractical in special cases, the LaTeX option "oldarabtex" and/or the
+command "\oldarabtex" will switch back to most of the old conventions (and
+problems). This shortcut will probably go away in some future version.
+
+Acknowledgments:
+================
+
+The development of ArabTeX would not have been possible without the
+assistance of many people. Apart from my local team, helpful advice came
+among others from Wolfdietrich Fischer, Ahmed El-Hadi, Abdelsalam Heddaya,
+Iqbal Khan, Tom Koornwinder, Eberhard Krueger, Asif Lakehsar, Jan Lodder,
+Richard Lorch, Eberhard Mattes, and Bernd Raichle. I also have to thank
+the many people who sent bug reports and comments.
+
+Please send bug reports, suggestions and inquiries to the author:
+=================================================================
+
+Prof. Klaus Lagally
+Institut fuer Informatik
+Universitaet Stuttgart
+Breitwiesenstrasse 20-22
+D-70565 Stuttgart
+GERMANY
+
+lagally@informatik.uni-stuttgart.de
+--------------------------------------------------------------------------
+ Copyright (c) 1990 - 1993, Klaus Lagally
+--------------------------------------------------------------------------
+
diff --git a/language/arabic/arabtex/doc/txt/arabtex.faq b/language/arabic/arabtex/doc/txt/arabtex.faq
new file mode 100644
index 0000000000..50c49fda33
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/arabtex.faq
@@ -0,0 +1,67 @@
+arabtex.faq 17.11.1993
+ What ArabTeX is NOT
+ ===================
+
+From some enquiries following the release of ArabTeX Version 1 we learned
+there are many possible misconceptions about what ArabTeX can and cannot
+do. ArabTeX is
+
+- NOT a convenient, simple text system for everyday use. As with TeX and
+ LaTeX, it needs some practicing to work with it efficiently, and you
+ have to understand what you are writing.
+
+- NOT a WYSIWYG system. You need some text editor to produce the ASCII
+ input file it reads, and you have to format your document off-line in
+ order to look at its final form. However, the input should be fairly
+ readable, and you can make a good guess what the output it produces will
+ look like.
+
+- NOT a preprocessor to produce input for TeX. It will directly extend
+ your TeX system's capabilities IFF your TeX system can be extended by
+ loading additional macros and fonts, AND is large enough not to
+ overflow.
+
+- NOT a substitute for a calligrapher. A competent human will do a much
+ better job, as also will a good printing shop. However, we found not all
+ printing shops are good, and at least outside the arabic world a good
+ calligrapher is hard to find.
+
+- NOT an automatic translator between Arabic and any other language. That
+ possibility is probably still very far off. However, ArabTeX may help
+ you by observing numerous schematic rules about writing, transliteration
+ and transcription of Arabic text.
+
+- NOT using any Artificial Intelligence techniques. The rules it observes
+ are frozen into its algorithm, and as there are many rules and special
+ cases, it is complicated (and slow).
+
+- NOT depending on special hardware and/or a special keyboard. It will run
+ on any PC or work station in conjunction with a TeX implementation that
+ is easily extensible and large enough.
+
+- NOT perfect and not free of errors (alas!). We will consider any bug
+ report and any suggestion for new features and other changes. However,
+ we cannot promise to fix every bug as our resources (primarily time) are
+ limited, and we reserve the right to use our own judgment concerning
+ possible changes.
+
+- NOT particularly efficient up to now. We concentrated on getting it
+ running correctly first, and tuning should (and will) come later. There
+ is ample opportunity for improvements but they could take some time.
+
+- NOT terribly expensive. In fact, it is free for scientific and strictly
+ private, noncommercial use. For commercial purposes you need a license
+ agreement; inquire at the author's address.
+
+ Prof. Klaus Lagally
+ Institut fuer Informatik
+ Universitaet Stuttgart
+ Breitwiesenstrasse 20-22
+ D-70565 Stuttgart
+ GERMANY
+
+ lagally@informatik.uni-stuttgart.de
+
+--------------------------------------------------------------------------
+ Copyright (c) 1990 - 1993, Klaus Lagally
+--------------------------------------------------------------------------
diff --git a/language/arabic/arabtex/doc/txt/arabtex.htm b/language/arabic/arabtex/doc/txt/arabtex.htm
new file mode 100644
index 0000000000..d26bfcbcde
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/arabtex.htm
@@ -0,0 +1,240 @@
+<html><head>
+<title>ArabTeX Version 3</title></head>
+<body>
+<center>
+<img src="arabtex.gif" alt="ArabTeX logo">
+<h1> ArabTeX Version 3 </h1>
+</center>
+
+<hr><!-- ================================================ -->
+
+<a href="http://129.69.218.213/arabtex/doc/arabtex/html/changes.htm">
+ Last changes: Version 3.11l, June 24, 2004
+</a>
+
+<hr><!-- ================================================ -->
+
+<img src="new1.gif" alt="new">
+There is a new version of the User Manual
+<a href="http://129.69.218.213/arabtex/doc/arabdoc.ps">
+(PS),</a>
+<a href="http://129.69.218.213/arabtex/doc/arabdoc.pdf">
+(PDF).</a>
+<br>
+This version is reasonably current, but still being updated.
+<p>
+Should you be an Orientalist, you might want to look at a small list of
+<a href="http://129.69.218.213/arabtex/doc/arabtex/html/refer.htm">applications</a>.
+
+</p><hr><!-- ================================================ -->
+
+ The set of files, of which THIS file is supposed to be part of,
+ contains a package extending the capabilities of TeX/LaTeX to
+ generate the arabic writing from an ASCII transliteration for
+ texts in several languages using the arabic script. Several
+ other common encodings are also supported.
+<p>
+
+<img src="new1.gif" alt="new">
+The package is available in packed form as
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arab311.zip">
+arab311.zip</a>
+<!--
+and <a href=ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtds.zip>arabtds.zip</a>
+-->
+for PC users, and
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arab311.tgz">
+arab311.tgz</a> or
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arab311.tar.z">
+arab311.tar.Z</a> for *N*X users.
+<br>
+Note: we had to change the file names to avoid some server problems.
+<p>
+
+<img src="new1.gif" alt="new">
+The files
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/tex311.zip">
+tex311.zip</a> and
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/tex311.tgz">
+tex311.tgz</a>
+contain just the ArabTeX macros.
+For upgrading to the minor version (3.11), downloading these is sufficient
+if the fonts are already installed.
+<p>
+Depending on the server there may be also the unpacked files,
+or only these.
+</p>
+
+<p>
+In case of doubt, check for the latest version of
+"<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty">
+apatch.sty</a>".
+<br>
+This file contains last minute corrections that possibly
+are not yet contained in the packed files.
+</p><p>
+
+The following ASCII files give more detailed information:
+
+<table>
+<!--
+<tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/doc/arabtex.doc">
+arabtex.doc
+ </td><td>
+ a short introduction ( rather out of date)
+</td></tr>
+-->
+
+<tbody><tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/doc/txt/arabtex.faq">
+arabtex.faq</a>
+
+</td><td>answers to some Frequently Asked Questions
+ (updated as necessary)
+</td></tr>
+
+<tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/changes.txt">
+changes.txt</a>
+
+</td><td>release history, new features, and known bugs
+ (updated as necessary)
+</td></tr>
+
+<tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/doc/changes2.txt">
+changes2.txt</a>
+
+</td><td>release history up to version 3.00
+
+</td></tr>
+
+<tr><td>
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/install.txt">
+install.txt</a>
+
+</td><td>list of available files, and installation notes
+</td></tr>
+
+<tr><td valign="top">
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty">
+apatch.sty</a>
+
+</td><td>last minute corrections; put this file onto the TEXINPUT path;
+it will patch automatically (updated as necessary).
+</td></tr>
+</tbody></table>
+
+There are also various additional documentation files.
+</p><p>
+<img src="new1.gif" alt="new">
+The contents of a subdirectory "REPORT", if still present, are OBSOLETE.
+Refer to the (draft of the)
+<a href="http://129.69.218.213/arabtex/doc/arabdoc.pdf">
+user manual</a> instead.
+
+</p><hr><!-- ================================================ -->
+
+There was a prototype, ArabTeX Version 1, which is now OBSOLETE.
+<br>
+
+Version 2 was the first complete release accompanied by a manual,
+but is no more being maintained.
+<br>
+
+Version 3 is an upward compatible extension of Version 2
+with many new features, e.g. the possibility to read input files
+in the ASMO 449, ISO 8859-6, and UTF-8 Codes,
+and a host of new commands for better formatting of Arabic text,
+or catering for historic writing styles.
+<br>
+
+Versions from 3.05 onward contain a package to process Hebrew,
+and provide long right-to-left insertions.
+
+For details, consult the manual.
+
+<hr><!-- ================================================ -->
+
+<img src="new1.gif" alt="new">
+ ArabTeX is copyrighted by the author. If you use the system for
+ scientific work please give appropriate credit to the software
+ and the author (e.g. in the colophon of a monograph.) We also
+ appreciate a complimentary copy of any scientific work produced
+ with ArabTeX.
+<p>
+
+<img src="new1.gif" alt="new">
+ArabTeX may be redistributed and/or modified under the terms
+of the LaTeX Project Public License distributed
+from CTAN archives in the directory
+<a href="ftp://ftp.dante.de/tex-archive/macros/latex/base/lppl.txt">
+macros/latex/base/lppl.txt</a>;
+either version 1 of the License,
+or (at your option) any later version.
+
+</p><hr><!-- ================================================ -->
+
+ArabTeX is an experimental system and supposed to change without
+prior notice. Whoever will use it does so at her/his/its own risk.
+We cannot take any responsibility on correct function, suitability
+for whatever purpose, or correct documentation.
+
+If you have any complaints or suggestions, please forward them to
+<a href="mailto:lagally@informatik.uni-stuttgart.de">the author</a>.
+We shall consider any reasonable suggestion,
+but we will use our own judgment on changes,
+and our resources are severely limited.
+<p>
+
+If problems turn up while running ArabTeX, please
+<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/arabtex.htm">
+check first</a>
+at "ftp.informatik.uni-stuttgart.de" whether there is a new version,
+or whether there are any new corrections in
+"<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex/apatch.sty">
+apatch.sty</a>".
+
+If the problem goes away with the new version, please inform the
+server you got ArabTeX from; otherwise
+<a href="mailto:lagally@informatik.uni-stuttgart.de">send a bug report</a>
+to the author.
+
+</p><hr><!-- ================================================ -->
+
+The reference site
+"<a href="ftp://ftp.informatik.uni-stuttgart.de/pub/arabtex">
+ftp.informatik.uni-stuttgart.de</a>"
+always holds the current version.
+<br>
+We know that the CTAN servers
+"<a href="ftp://ftp.tex.ac.uk/">ftp.tex.ac.uk</a>",
+"<a href="ftp://ftp.dante.de/">ftp.dante.de</a>",
+"<a href="ftp://ctan.tug.org/">ctan.tug.org</a>"
+mirror this site and update on a regular schedule.
+
+<hr><!-- ================================================ -->
+
+An empty E-Mail message to
+"<a href="mailto:arabtex@informatik.uni-stuttgart.de">
+arabtex@informatik.uni-stuttgart.de</a>"
+will produce a current status report.
+
+<hr><!-- ================================================ -->
+
+<blockquote>
+ Prof. Klaus Lagally<br>
+ Institut fuer Formale Konzepte der Informatik<br>
+ Universitaet Stuttgart<br>
+ Universitaetsstrasse 20-22<br>
+ D-70569 Stuttgart<br>
+ GERMANY<br>
+ lagally@informatik.uni-stuttgart.de
+</blockquote>
+<hr>
+ Copyright (c) 1990 - 2004,
+<a href="mailto:lagally@informatik.uni-stuttgart.de">
+ Klaus Lagally </a>
+<hr>
+</body></html>
diff --git a/language/arabic/arabtex/doc/txt/arwindoc.tex b/language/arabic/arabtex/doc/txt/arwindoc.tex
new file mode 100644
index 0000000000..94549cb437
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/arwindoc.tex
@@ -0,0 +1,118 @@
+% arwindoc.tex
+% 9 Apr 1997
+%
+\documentclass[12pt]{article}
+\usepackage{arabtex}
+
+\begin {document}
+
+
+\begin{table}[htbp]
+\begin{center}
+\novocalize \setarab
+\small \tabcolsep 4.5pt
+
+\def \sun {% sun symbol
+\unitlength 0.2em
+\begin{picture}(4,4)(-1.4,-1.2)
+\put(0.6,0.2){\circle{1.6}}
+\put(+1.0,+1.0){.} \put(+1.0,-1.0){.}
+\put(-1.0,-1.0){.} \put(-1.0,+1.0){.}
+\put(+0.8,+0.8){.} \put(+0.8,-0.8){.}
+\put(-0.8,-0.8){.} \put(-0.8,+0.8){.}
+\end{picture}}
+
+\def \mc #1{\multicolumn{2}{c|}{#1}}
+
+
+\begin{tabular}
+{|c||@{}c@{}|@{}c@{}|c|@{}c@{}|@{}c@{}|c|c|c|c|c|c|@{}c@{}|c|c|c|c|@{}c@{%
+\vrule height 15pt depth 9pt width 0pt}||}
+\hline
+ & 00& 01& 02&\mc{03}&04&05 &06&07&08&09&10&11&12& 13 & 14 & 15 \\
+\hline
+\hline
+00 &NUL&DLE&SP &0& \<0> &@& P & ` & p && &NSP& & & \<_d> & & \<|B"aN> \\
+\hline
+01 &SOH&DC1&! &1& \<1> &A& Q & a & q &&&\<,> && \<-'> & \<r> & \<l> & \<|B"uN> \\
+\hline
+02 &STX&DC2&" &2& \<2> &B& R & b & r &&&&& \<'A> & \<z> & & \<|B"iN> \\
+\hline
+03 &ETX&DC3&\# &3& \<3> &C& S & c & s &&&&& \<'a> & \<s> & \<m> & \<|B"a> \\
+\hline
+04 &EOT&DC4&\$ &4& \<4> &D& T & d & t &&&&&\<w"'>& \<^s> & \<n> & \\
+\hline
+05 &ENQ&NAK&\% &5& \<5> &E& U & e & u &&&&& \<'i> & \<.s> & \<h> & \<|B"u> \\
+\hline
+06 &ACK&SYN&\& &6& \<6> &F& V & f & v &&&&& \<Y"'->& \<.d> & \<w> & \<|B"i> \\
+\hline
+07 &BEL&ETB& ' &7& \<7> &G& W & g & w &&&&& \<a> & & & \\
+\hline
+08 &BS &CAN& ) &8& \<8> &H& X & h & x &&&&& \<b> & \<.t> & & \<|BB> \\
+\hline
+09 &HT &EM & ( &9& \<9> &I& Y & i & y &&&&& \<T> & \<.z> & & \\
+\hline
+10 &LF &SUB&$*$&\mc{:} &J& Z & j & z &&&&\<;>& \<t> & \<`> & & \<|B"> \\
+\hline
+11 &VT &ESC&$+$&\mc{;} &K&\verb"]"&k&\verb"}"&&&&&\<_t>&\<.g>& & \\
+\hline
+12 &FF &IS4& , &\mc{$>$}&L&\verb"\"&l&\verb"|"&&&& &\<^g>&\<B|B|B> & \<Y> & \\
+\hline
+13 &CR &IS3&$-$&\mc{$=$}&M&\verb"["&m&\verb"{"&&&SHY& &\<.h>& \<f> & \<y> & \\
+\hline
+14 &SO &IS2& . &\mc{$<$}&N&\verb"^"&n&\verb"~"& & & & &\<_h>&\<q>& & \\
+\hline
+15 &SI &IS1& / &\mc{?} &O&\verb"_"&o& & & & & \<?> &\<d> &\<k>& &DEL\\
+\hline
+\end{tabular}
+\end{center}
+%\caption{MS Windows with arabic support code table}\label{awin}
+\caption{MS Arabic Windows code table (CP 1256)}\label{awin}
+\end{table}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+The file \verb"arabwin.sty" contains a reading module for the
+{\em MS-Windows with arabic support} code.
+It is installed by the \LaTeX\ option \verb"arabwin"
+or by \verb"\input arabwin.sty".
+The module is activated by \verb"\setcode {arabwin}";
+all following Arabic text will be considered to be coded according to
+the {\em MS-Windows with arabic support} standard.
+The ArabTeX notation may be reactivated by \verb"\setcode {arabtex}".
+ \index{code!MS-Windows}
+ \index{MS-Windows}
+ \index{code!8-bit}
+ \index{\setcode{arabwin}}
+ \index{\setcode{arabtex}}
+
+The {\em MS-Windows with arabic support} code (see Table \ref{awin})
+is an 8-bit code closely related both to 7-bit ASCII;
+whereas the lower 128 positions are identical to
+ASCII (ISO 646), some of the upper 128 positions contain the Arabic characters
+plus additional graphic and control characters.
+ \index{code!ASCII}
+
+We reuse the ASMO 449
+reading routines, after suitable modification of the input.
+This only works correctly if the input text does not contain
+genuine ASCII letters, as we
+project the Arabic characters onto their locations in ASMO 449.
+Please note that only the characters that appear in Table \ref{awin}
+are correctly processed.
+Some of the code switching messages in the log file are spurious;
+do not worry.
+
+The notes on vowelization and transliteration of ASMO 449 apply also.
+
+The driver file indicated for ASMO 449 will be usable after the
+obvious modifications; however, your \TeX\ installation must be
+capable of processing 8-bit data input.
+This is nowadays usually the case; otherwise you can try to
+locally find some utility program that will strip the highest order bit
+off the characters in your file, and process the result via ASMO 449.
+
+\end {document}
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/doc/txt/changes.txt b/language/arabic/arabtex/doc/txt/changes.txt
new file mode 100644
index 0000000000..a82914b6e9
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/changes.txt
@@ -0,0 +1,2074 @@
+CHANGES.TXT 23.10.2003
+--------------------------------------------------------------------------
+ ArabTeX Version 3
+ =================
+--------------------------------------------------------------------------
+ NOTE: Version management:
+
+ - We distinguish major versions "m.00", minor versions "m.nn-"
+ with nn > 0, and patch versions "m.nnx" where "x" is a letter.
+
+ - to update from an older major version: reinstall completely.
+
+ - to update from an older minor version: replace the contents of
+ "TEXINPUT" and, if so indicated, "REPORT". Replace the fonts
+ only if so indicated explicitly.
+
+ - to update to a newer patch version: replace the ASCII file
+ "apatch.sty" and, if you use Hebrew, "hepatch.sty". These files
+ are distributed as unpacked text files, and will be applied
+ automatially whenever starting ArabTeX.
+
+ - Patch versions within the same minor version are cumulative, so
+ a newer patch will encompass all earlier versions.
+
+ - To back out from a patch version, replace "apatch.sty" by an
+ earlier version (within the same minor version only!) if still
+ locally available, or else edit out the current additions from
+ "apatch.sty" and, if applicable, "hepatch.sty" (save a copy
+ first!). Also please inform the author why you backed out.
+
+ - There is no provision to return gracefully to earlier minor or
+ even major versions. We can make them available on request, but
+ you should have good reasons, and there will be no support.
+
+--------------------------------------------------------------------------
+23.10.2003: Version 3.11d
+
+ Fixes:
+
+ - In the Arabic document classes, the formatting of the table
+ of contents was improved. A strange bug was corrected.
+
+ - A storage leak was found which prevented the formatting of
+ longer documents, leading to 'save stack overflow'.
+
+ - A bug in the ligatures module was found which used to produce
+ bogus messages 'missing letter y in font xnsh14' and to
+ slightly interfere with correct vowelization.
+
+ - A bug in the output module was found which used to produce
+ bogus messages 'underfull vbox while \output was active'.
+ The fix might slightly influence page breaking.
+
+ New features:
+
+ - There is now limited support for Arabized LyX.
+ Since there are no 'italic', 'slanted', 'sanserif' etc. fonts
+ available for ArabTeX, all special font variants are presently
+ mapped into 'bold face'. This could be changed at the user's
+ request; please send any suggestions to the author.
+
+ - The messages in the LOG file are less verbose now.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+17.09.2003: Version 3.11c
+
+ Fixes:
+
+ - in Hebrew mode, a spurious 'shwa' on 'gimel' was fixed.
+
+ New features:
+
+ - Hebrew mode provides a new command \setjudarab to activate
+ an experimental Judaeo-Arabic mode. Input is supposed to be
+ Arabic in the standard transliteration encoding (other modes
+ might work by accident), output is an extended Hebrew writing
+ in the chosen Hebrew font, and the standard transliteration
+ when activated. Arabic vowels are presently not provided; the
+ Hebrew vowels work but are presumably of no use.
+
+ Caution: The new mode can be expected to contain errors. We
+ do not know the exact writing conventions, and have no access
+ to any relevant literature. Scholars in the field are urged
+ to contact the author. Comments and suggestions are invited.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+08.09.2003: Version 3.11b
+
+ Fixes:
+
+ - the selection of fonts in Arabic and Hebrew mode has been
+ drastically changed, and several logical errors have been
+ eliminated. Some of the remaining bugs have been fixed.
+
+ - Hebrew Plain mode works again. To use it, download the new
+ version of 'hebtex.tex'(!), the Hebrew Plain driver. The
+ corrections cannot be handled by "apatch.sty" alone.
+
+ New features:
+
+ - ArabTeX now seems to cooperate with LyX in Arabic and Hebrew
+ mode.
+
+ Installation:
+
+ - download "apatch.sty".
+
+ - in case you are using the Hebrew Plain mode (and only then)
+ also download the new version of the driver module "hebtex.tex"
+ (not "hebtex.sty"!)
+
+--------------------------------------------------------------------------
+27.08.2003: Version 3.11a
+
+ Fixes:
+
+ - the 'hanging heh' in Urdu mode has been fixed.
+
+ - the selection of fonts in Arabic and Hebrew mode has been
+ drastically changed, and several logical errors have been
+ eliminated. Hopefully there are not too many new bugs.
+
+ - Hebrew Plain mode should work again. If you are not directly
+ concerned, forget it; tests are going on. The necessary
+ corrections cannot be handled by "apatch.sty" alone, see the
+ remarks below.
+
+ Installation:
+
+ - download "apatch.sty".
+
+ - in case you are using the Hebrew Plain mode (and only then)
+ also download the new version of the driver module "hebtex.tex"
+ (not "hebtex.sty"!)
+
+--------------------------------------------------------------------------
+22.08.2002: Version 3.11
+
+ Status:
+
+ - This is a new minor version. All existing patches have been
+ merged into the respective macro files. To install it, load
+ and replace all macros in the subdirectory "TEXINPUT"; there
+ are some new files, and some have been extensively rewritten!
+ The functionality is supposed to be unchanged.
+
+ - Distribution and modification of ArabTeX is now governed by
+ the Latex Project Public License (see LPPL.TXT).
+
+ - We recommend installing of the fonts "xnash14" and "xnash14bf"
+ to obtain better quality of output. These fonts are now the
+ default; to revert to the old font versions use the command
+ "\oldarabfont".
+
+ New features:
+
+ - In Hebrew mode, all standard fonts available on CTAN are now
+ supported, including the possibility of generating vowel points
+ in \vocalize mode.
+
+ Bugs:
+
+ - Hebrew Plain TeX mode is currently broken.
+
+ Installation:
+
+ - Download the contents of "TEXINPUT", and in case of any font
+ problems also "MFINPUT".
+
+ - In case of problems with old DVI files regenerate them; or else
+ download "arabsymb.mf" and regenerate the font "nash14".
+
+==========================================================================
+23.04.2003: Version 3.10k
+
+ Fixes:
+
+ - some glitches in Farsi mode were fixed.
+
+ - in Uighuric mode, some transcriptions were missing.
+
+ - in Urdu mode, final 'wavy hah' is generated now.
+
+ New features:
+
+ - in Uighuric mode, <:s> produces 'sin' with three dots below.
+ <A> produces 'alif' with 'madda', so does <^A>.
+
+ - in Farsi mode and its descendants, 'kasra' on a double letter
+ will be positioned below the letter instead of below the
+ 'shadda' mark. This feature will later become an option.
+
+ - the internal test mode is less verbose. This need not concern
+ normal users.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+16.11.2002: Version 3.10j
+
+ Fixes:
+
+ - the handling of 'ayin' in Hebrew mode was improved.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+14.11.2002: Version 3.10i
+
+ Fixes:
+
+ - "matres lectionis" in Hebrew work better.
+
+ - Version 3.10h was broken on some servers!
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+28.08.2002: Version 3.10h
+
+ Fixes:
+
+ - The math command \cap was broken.
+
+ - Line breaking of Roman insertions within Arabic mode seems to
+ work correctly now.
+
+ New features:
+
+ - There is formally a new language mode \setbalut for Balochy.
+ Presently it is mapped to \setpashto but will be extended as
+ soon as the exact writing rules are known.
+
+ - The command \cond #1{#2}{#3}\fi will expand to either #2 or #3
+ depending on the TeX conditional #1. It is nearly equivalent
+ to #1 #2\else #3\fi but may also be used in Arabic mode. The
+ command is skippable and fully expandable.
+
+ - \endinput may occur in Arabic mode.
+
+ - The input character <G> encodes Pashto 'gAf' with a ring. In
+ Farsi and Pashto mode, <g> produces Farsi 'gAf' with a stroke.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+16.06.2002: Version 3.10g
+
+ Fixes:
+
+ - in Pashto mode, <.n> will produce 'noon' with a dot and a ring.
+ Some further Pashto codes can be found in Table 4.2.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+11.05.2002: Version 3.10f
+
+ Fixes:
+
+ - in Persian mode, some bugs concerning 'hamze on he' were fixed.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+14.04.2002: Version 3.10e
+
+ Fixes:
+
+ - in the standard Hebrew transcription, 'shwa' was missing.
+
+ - in Persian mode, 'hamze on he' is produced if required.
+
+ - in Hebrew mode using the 'hclassic' and 'hcaption' fonts, the
+ vowel points are generated differently to render better when
+ using T1 fonts.
+
+ - in CP1256 encoding, explicit 'shadda' works now correctly.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+07.03.2002: Version 3.10d
+
+ Fixes:
+
+ - In many of the non-standard encodings the handling of double
+ letters (implicit shadda or not) has been corrected.
+
+ - In the Arabic document classes 'arabbook', 'arabrep', 'arabart'
+ the handling of figure and table \captions has been improved.
+
+ Hints:
+
+ - When using a local addition to ArabTeX together with a patch
+ version of ArabTeX, read the local addition by \input after
+ the command \begin{document}, not by an \usepackage command.
+ Otherwise a race condition occurs that could overwrite your
+ local additions.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+03.03.2002: Version 3.10c
+
+ Fixes:
+
+ - The default language is Arabic again.
+
+ - The LaTeX commands \footnote, \footnotemark, and \footnotetext
+ in normal LTR LaTeX mode were broken in version 3.10b. Sorry!
+
+ - In the Arabic document classes 'arabbook', 'arabrep', 'arabart'
+ the environment 'tabular' works correctly.
+
+ - In the Arabic document classes 'arabbook', 'arabrep', 'arabart'
+ the command \tableofcontents works correctly.
+
+ - In the Arabic document classes 'arabbook', 'arabrep', 'arabart'
+ the commands \table and \figure may have a \caption.
+
+ Hints:
+
+ - In the Arabic document classes 'arabbook', 'arabrep', 'arabart'
+ and *also* in normal LTR mode, within the \tabular environment
+ every row but the last must be terminated by \\, also if \hline
+ follows. The text of the error message has been improved.
+
+ New Features:
+
+ - The Arabic document classes 'arabbook', 'arabrep', 'arabart'
+ formerly required the use of the ArabTeX standard encoding for
+ correct functioning of generated section heads and the like.
+ This restriction was never noticed, and applies no more.
+
+ - Abjad numbers now also work with other input encodings.
+
+ - Within an Arabic environment the command \stdcode{some text}
+ accepts Arabic text in the ArabTeX standard encoding even if
+ otherwise some other encoding is in use. This may be useful
+ for local corrections.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+12.02.2002: Version 3.10b
+
+ Fixes:
+
+ - The LaTeX commands \footnote, \footnotemark, and \footnotetext
+ now work correctly within Arabic environments, even if only
+ transliteration mode is active. The output mode (transliterate,
+ Arabic writing, or both) of Arabic inserts in the footnote text
+ is inherited from the main document if not explicitly switched
+ locally within the footnote text.
+
+ Hints:
+
+ - Footnotes containing Arabic inserts might come out too high.
+ This may be prevented, at the risk of lines overlapping, by
+ \smash-ing the Arabic insert or even the complete footnote.
+
+ - Within transliteration mode hyphenation is only performed after
+ long vowels, thus \sloppy mode might be required. If the last
+ word of a line ends with a long vowel, a spurious hyphen will
+ appear. This is a bug; presently no fix is known!
+
+ New Features:
+
+ - The LaTeX footnote commands (see above) also work within the
+ Arabic document classes 'arabart', 'arabrep', and 'arabbook'.
+
+ - By default, or after the command \LRfootnotes, the footnotes
+ are positioned as in a Roman document, and the footnote text
+ is assumed to be Roman by default. Arabic inserts are produced
+ by \RL{ }.
+
+ - After the command \RLfootnotes, footnotes run from right to
+ left and the default language mode is Arabic. Roman inserts
+ are produced by \LR{ }.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+06.10.2001: Version 3.10a
+
+ Fixes:
+
+ - A few minor patches from 'v3.09' did not make it into 'v3.10'.
+
+ - The transliteration of '_h' was improved.
+
+ - Plain TeX mode now also uses fonts "xnash14" and "xnash14bf"
+ as the default.
+
+ - In Hebrew mode, 'cholem male' and vowels in contact now work
+ correctly.
+
+ - In Hebrew mode, footnotes containing Hebrew inserts now have
+ uniform baselines again.
+
+ New Features:
+
+ - All patches are now handled by "apatch.sty".
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+17.09.2001: Version 3.10
+
+ Status:
+
+ - This is a new minor version. All existing patches have been
+ merged into the respective macro files. To install it, load
+ and replace all macros in the subdirectory "TEXINPUT"; there
+ are some new files, and some have been extensively rewritten!
+ The functionality is supposed to be unchanged.
+
+ - Distribution and modification of ArabTeX is now governed by
+ the Latex Project Public License (see LPPL.TXT).
+
+ - We recommend installing of the fonts "xnash14" and "xnash14bf"
+ to obtain better quality of output. These fonts are now the
+ default; to revert to the old font versions use the command
+ "\oldarabfont".
+
+ New features:
+
+ - In Hebrew mode, all standard fonts available on CTAN are now
+ supported, including the possibility of generating vowel points
+ in \vocalize mode.
+
+ Bugs:
+
+ - Presently none are known.
+
+ Installation:
+
+ - Download the contents of "TEXINPUT", and in case of any font
+ problems also "MFINPUT".
+
+ - In case of problems with old DVI files regenerate them; or else
+ download "arabsymb.mf" and regenerate the font "nash14".
+
+==========================================================================
+13.05.2001: Version 3.09g
+
+ Fixes:
+
+ - Some spurious spaces in the transliteration were fixed.
+
+ - \tabular within \center was broken by \RL{}.
+
+ - Hamza and `Ayn were broken in a \tabbing environment.
+
+ New Features:
+
+ - The file "arabtds.zip" in the distribution, when available,
+ contains the ArabTeX package repacked according to the TDS
+ (TeX Directory Structure). To install the complete package,
+ PC Users of MikTeX and several other TeX distributions that
+ presuppose the TDS structure, should download this file only
+ (in binary mode!) and unpack it at the top level of their
+ local TEXMF tree. For other installations, moving around some
+ files or adjusting some access path might be required.
+
+ - Reminder: some TeX installations require a command "texhash"
+ or "texconfig" to activate a newly installed package.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+27.05.2000: Version 3.09f
+
+ Fixes:
+
+ - The LaTeX command \cdot works again.
+
+ - The LaTeX command \protect may appear in RL mode. It has no
+ visible effect.
+
+ - The vertical bar | has no function, but does no harm behind an
+ Arabic character that does not connect to the left.
+
+ - The behaviour of "wasla" in the transliteration was fixed.
+
+ - The vertical spacing of footnotes is no more influenced by \RL
+ insertions in the first line.
+
+ New Features:
+
+ - Brackets [ and ] and parentheses ( and ) may be used within an
+ Arabic or Hebrew word to indicate optional parts; they do not
+ change the connection behaviour of the adjacent characters.
+
+ Installation:
+
+ - download "apatch.sty" and "hepatch.sty".
+
+--------------------------------------------------------------------------
+05.04.2000: Version 3.09e
+
+ Fixes:
+
+ - to switch the transcription font say, e.g., \settransfont{\rm}.
+ \settransfont{rm} (forgetting the \) now also works, instead of
+ producing impressive garbage.
+
+ - an \RL{} insertion text may now begin with a space.
+
+ - footnotes containing \RL{} insertions have uniform baselines.
+
+ - the space command \ works within RL mode.
+
+ - \bf and \rm (for returning to normal) work within RL mode.
+
+ New Features:
+
+ - within RL environments, \newcommand, \newenvironment, and \def
+ and their relatives may be used to define new control sequences
+ which have to expand to legal ArabTeX input; they will not be
+ visible outside of the environment (even if \gdef or \xdef is
+ used.) For a user defined command to be visible both outside
+ and inside RL mode, define it in LR mode and announce it to the
+ ArabTeX command processor by \allowarab.
+
+ - the new commands \shadda, \madda, \sukun in Arabic mode and the
+ commands \raphe, \dagesh, \mappiq in Hebrew mode will place the
+ corresponding diacritic on the preceding letter. In Hebrew mode
+ \maqqef will produce a connector, \abbr an abbreviation mark.
+
+ - A single hyphen will be invisible in the RL writing, but will
+ show up in the transcription; the adjacent letters will always
+ assume the connecting form, if it exists, even at the beginning
+ or the end of a word.
+
+ - any paragraph containing \RL{} insertions will now have uniform
+ baselines. The users might have to adjust \baselinestretch.
+
+ - RL insertions now also work for encodings like MacOS Arabic and
+ MacOS Hebrew that provide an RL space.
+
+ Installation:
+
+ - download "apatch.sty"
+
+--------------------------------------------------------------------------
+18.03.2000: Version 3.09d
+
+ Fixes:
+
+ - the transcription did not work correctly within a LaTeX tabbing
+ environment since this environment mungles the accent commands.
+ (We consider this a mis-feature in LaTeX!)
+
+ Installation:
+
+ - download "apatch.sty"
+
+--------------------------------------------------------------------------
+19.10.1999: Version 3.09c
+
+ Fixes:
+
+ - "\cap" for capitalisation of the transcription now works also
+ within section titles and in the table of contents.
+
+ Installation:
+
+ - download "apatch.sty"
+
+--------------------------------------------------------------------------
+30.07.1999: Version 3.09b
+
+ Note: version 3.09a did not work.
+
+ Fixes:
+
+ - In the Hebrew mode, "maqqef" now works with all fonts.
+
+ Installation:
+
+ - download "hepatch.sty"
+
+--------------------------------------------------------------------------
+17.07.1999: Version 3.09
+
+ Status:
+
+ - This is a new minor version. All existing patches have been
+ merged into the respective macro files. To install it, load
+ and replace all macros in the subdirectory "TEXINPUT"; there
+ are some new files, and some have been extensively rewritten!
+ The functionality is supposed to be unchanged.
+
+ - We recommend installing of the fonts "xnash14" and "xnash14bf"
+ to obtain better quality of output. These fonts are now the
+ default; to revert to the old font versions use the command
+ "\oldarabfont".
+
+ New features:
+
+ - Many ArabTeX commands that used to be fragile in connection
+ with LaTeX are now robust.
+
+ - Within the LaTeX document classes "arabart", "arabrep", and
+ "arabbook" nearly all LaTeX environments are allowed also
+ within Arabic mode.
+
+ Recommendations:
+
+ - When typesetting Roman text with Arabic or Hebrew insertions, a
+ better result can usually be obtained by typesetting on a grid;
+ this can be accomplished by resetting the parameters \lineskip
+ to 0pt, \lineskiplimit to -30pt, and redefining \baselinestretch
+ to 1.2 (or \baselineskip to 1.2\baselineskip, with Plain TeX).
+ You may want to experiment with the factor quoted as "1.2".
+
+ Bugs:
+
+ - Presently none are known.
+
+ Installation:
+
+ - Download the contents of "TEXINPUT", and in case of any font
+ problems also "MFINPUT".
+
+ - In case of problems with old DVI files regenerate them; or else
+ download "arabsymb.mf" and regenerate the font "nash14".
+
+==========================================================================
+24.06.99: Version 3.08i
+
+ New Features:
+
+ - there is an "abstract" environment in the Arabic classes.
+ - mathematical displays bracketed by $$ $$ may be nested within an
+ Arabic environment. Bracketing by $ $ was always there.
+ - The LaTeX commands \( \), \[ \], and also the LaTeX environments
+ "math", "displaymath", "equation", "eqnarray", and "eqnarray*"
+ are supported within Arabic environments, also with the options
+ "leqno" and "fleqn", if LaTeX is used.
+
+ Upcoming Features:
+
+ - a new edition of the User manual is in preparation.
+
+ Installation:
+
+ - download "apatch.sty", if you are interested.
+
+--------------------------------------------------------------------------
+10.06.99: Version 3.08h
+
+ Fixes:
+
+ - there were a few glitches in Pashto and Kashmiri encoding
+ - there were a few glitches in Pashto transliteration
+ - the command \settrans #1 is allowed within Arabic mode
+ - the command \tracingmacros #1 is allowed within Arabic mode
+
+ New Features:
+
+ - the environments "RLtext", "arabtext", and "hebtext" are now
+ equivalent
+ - the braces \< and > are admissible within Arabic mode but have
+ no effect
+ - the command \addcontentsline also works in the Arabic classes
+ "arabrep", "arabart", "arabbook"
+ - the title of the table of contents is context dependent in the
+ Arabic document classes
+
+ Upcoming Features:
+
+ - a new edition of the User manual is in preparation
+ - there is yet no "abstract" environment in the Arabic classes
+
+ Installation:
+
+ - download "apatch.sty"
+
+--------------------------------------------------------------------------
+16.05.99: Version 3.08g2
+
+ Fixes:
+
+ - In the transcription mode, capitalization (see version 3.08) can
+ now also be used within a word, even several times.
+ - In the transcription, the positioning of the marks for Hamza and
+ Ayn was slightly improved.
+ - in Urdu mode, Ta' marbuta works again.
+ - in BHS mode, Shin works again.
+ - in the Arabic document classes, some spurious font switches were
+ fixed.
+
+ New Features:
+
+ - There is a new language mode: Kashmiri. See "kashmiri.tex" for a
+ short description.
+
+ Installation:
+
+ - download "apatch.sty" (and "kashmiri.sty", "kashmiri.tex" and/or
+ "bhs.sty" if required)
+
+--------------------------------------------------------------------------
+10.05.99: Version 3.08f
+
+ Fixes:
+
+ - In the transcription mode, capitalization (see version 3.08) can
+ now also be used in the English (Encyclopedia of Islam) style.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+22.04.99: Version 3.08e
+
+ Fixes:
+
+ - We found some grave errors in the Urdu mode; it seems to work
+ again now. Observe that there are several forms of "heh":
+ - the two-eyed form for aspiration: code <h>
+ - the wavy form for other cases: code <,h>
+ - the final closed form: code <H>
+ For the Name of God, use <H> in Urdu mode, or switch to \setarab
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+10.04.99: Version 3.08d
+
+ Fixes:
+
+ - For use with EDMAC, the file "aedpatch.sty" has been updated to
+ fix some spurious spaces.
+ - For use with Hebrew, the files "hclassic.mf" and "hcaption.mf"
+ have been slightly adjusted, and "hcbase_pc.mf" was renamed to
+ "hcbase.mf" to fix an incompatibility in some operating systems
+ preventing automatic font generation; the fonts themselves are
+ unchanged.
+
+ Installation:
+
+ - download the indicated files, if you need them; otherwise you
+ may safely ignore this version.
+
+ Note: the version number of ArabTeX (in the LOG) is still 3.08c !
+
+--------------------------------------------------------------------------
+25.03.99: Version 3.08c
+
+ Fixes:
+
+ - Most of the LaTeX renumbering commands introduced in the last
+ version (3.08b) do NOT work and have been blocked off. LaTeX
+ does not allow font changes within numbering commands, since
+ these must be fully expandable within TeX's mouth.
+
+ - "arabrep.cls" has been updated again.
+
+ Old Features:
+
+ - There is only one new numbering command, and it only can be
+ used in the context of the Arabic document classes, also as a
+ \pagenumbering style, and for renaming e.g. \thesection:
+
+ \abj{ctr} "abjad" notation for counters.
+
+ - \pagenumbering{abj} may also be written \pagenumbering{abjad}.
+
+ - in the Arabic document classes, put \tableofcontents within
+ an Arabic environment.
+
+ Installation:
+
+ - download "apatch.sty", and also "arabrep.cls" when required.
+ The latter file is not contained within the packed versions!
+
+--------------------------------------------------------------------------
+21.03.99: Version 3.08b1
+
+ New Features:
+
+ - For LaTeX there are additional numbering commands for counters
+ (cf. Section C.8.4 "Numbering" in the LaTeX manual:)
+
+ \arab{ctr} "Arabic" Arabic numerals
+ \Arab{ctr} "Arabic" Arabic numerals, bold
+ \abj{ctr} "abjad" notation
+ \Abj{ctr} "abjad" notation, bold
+ \Arabic{ctr} "European" Arabic numerals, bold (extension!)
+
+ - There are also the corresponding \pagenumbering styles, e.g.:
+ \pagenumbering{Abj} for bold "abjad" page numbers.
+
+ Fixes:
+
+ - Some of these commands were present in 3.07g but did not work.
+
+ - isiri.sty had become incompatible and has been updated.
+
+ - arabrep.cls had become incompatible and has been updated.
+
+ Hints:
+
+ - if your MFINPUT subdirectory of ArabTeX should contain a file
+ "asymbols.mf", delete it. It is obsolete and may be in conflict
+ with AMSTeX and/or AMSLaTeX.
+
+ Installation:
+
+ - download "apatch.sty", and "isiri.sty" or "arabrep.cls" when
+ required. The latter two files are not contained within the
+ packed versions!
+
+--------------------------------------------------------------------------
+13.02.99: Version 3.08a
+
+ Fixes:
+
+ - The transliteration of "Quran alif" was in error.
+
+ Installation:
+
+ - download "apatch.sty" if required.
+
+--------------------------------------------------------------------------
+01.12.98: Version 3.08
+
+ Status:
+
+ - This is a new minor version. All existing patches have been
+ merged into the respective macro files. To install it, load
+ and replace all macros in the subdirectory "TEXINPUT"; there
+ are some new files, and some have been extensively rewritten!
+ The functionality is supposed to be unchanged.
+
+ - We recommend installing of the fonts "xnash14" and "xnash14bf"
+ (and activating them) to obtain better quality of output.
+
+ - ArabTeX is believed to be fully compatible with Babel; however,
+ it does not use its features. Please report incompatibilities.
+
+ - BHS mode is now also compatible with "german.sty".
+
+ New features:
+
+ - There are two new experimental fonts "xnash14" and "xnash14bf"
+ which overcome some limitations inherent in the previously
+ available versions "nash14" and "nash14bf". These fonts can be
+ activated (if installed) by the new command "\newarabfont" and
+ can be deactivated again by "\oldarabfont"; these commands
+ change the meaning of the commands "\setnash" and "\setnashbf"
+ to switch to the new versions, if required, and back.
+
+ - In transcription mode, single characters may be capitalized by
+ prefixing the command \cap in the input; the Arabic writing is
+ not affected.
+ - with ' (hamza) and ` (`ayn) the next visible letter will be
+ capitalized.
+ - this feature also works within words, after prefixes and after
+ the article, even if written in the assimilated form.
+
+ - In transcription mode, the representations of "hamza" and "ayin"
+ have been changed slightly; this might influence line breaks.
+
+ Recommendations:
+
+ - When typesetting Roman text with Arabic or Hebrew insertions, a
+ better result can usually be obtained by typesetting on a grid;
+ this can be accomplished by resetting the parameters \lineskip
+ to 0pt, \lineskiplimit to -30pt, and redefining \baselinestretch
+ to 1.2 (or \baselineskip to 1.2\baselineskip, with Plain TeX).
+ You may want to experiment with the factor quoted as "1.2".
+
+ Bugs:
+
+ - Presently none are known.
+
+ Installation:
+
+ - Download the contents of "TEXINPUT".
+
+ - In case of problems with old DVI files regenerate them; or else
+ download "arabsymb.mf" and regenerate the font "nash14".
+
+==========================================================================
+21.10.98: Version 3.07k
+
+ Fixes:
+
+ - A very obscure internal error has been corrected.
+
+ - In Hebrew mode, the positioning of dagesh and also of some vowel
+ points has been improved.
+ - In Hebrew mode, "meteg" (and silluq) now also works with cholem.
+ - In Hebrew mode, there now is a small space before sof pasuq.
+
+ Installation:
+
+ - download "apatch.sty" and "hepatch.sty".
+
+--------------------------------------------------------------------------
+18.10.98: Version 3.07j
+
+ Fixes:
+
+ - In Hebrew mode, patach furtivum after cholem works now.
+ - In Hebrew verbatim encodings (HED and ISO 8859-8), neither two
+ identical letters nor a medial letter and its final form will be
+ any more combined (erroneously) to a letter with dagesh.
+
+ Open Problems:
+
+ - On some servers, the font "nash14" seems to be broken. This does
+ NOT concern current ArabTeX runs, but displaying older DVI files
+ might be affected in that some characters, e.g., <^gim>, may be
+ missing.
+ - This will be fixed in the next minor version 3.08; for the time
+ being there are two workarounds:
+ - Reprocess the ArabTeX input file; the display will be correct.
+ - If this is not possible or not wanted, download the ASCII file
+ "arabsymb.mf" and regenerate the font as required.
+ - The font "nash14bf" might have the same problem; the workarounds
+ apply also.
+ - Neither new ArabTeX runs nor the font "xnsh14" are affected.
+
+ Hints:
+
+ - With Hebrew and LaTeX, the LaTeX2e version should be 1996/12/01
+ or newer; older versions have been reported to produce obscure
+ errors. We can no more check this.
+
+ Installation:
+
+ - download "hepatch.sty", and "arabsymb.mf" if required.
+
+--------------------------------------------------------------------------
+30.09.98: Version 3.07i
+
+ Fixes:
+
+ - ArabTeX and CJK are now fully compatible. The loading sequence
+ of ArabTeX and CJK is arbitrary.
+ - defective notation of fatha, kasra, damma works again.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+17.09.98: Version 3.07h
+
+ Fixes:
+
+ - The position of some more diacritic dots has been corrected.
+ - several ligatures have been improved.
+
+ New Features:
+
+ - ArabTeX is now compatible with the package "fnpara.sty" IF this
+ package is loaded BEFORE "arabtex.sty" so that ArabTeX can find
+ out about its presence.
+ - ArabTeX is now compatible with the package "CJK.sty" IF this
+ package is loaded BEFORE "arabtex.sty" so that ArabTeX can find
+ out about its presence.
+
+ Special Features:
+
+ - for users of "tustep.sty" (if any :-):
+ ArabTeX is compatible again.
+
+ Known bugs:
+
+ - There is a problem concerning double consonants in Hebrew, only
+ in the HED encoding.
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+28.08.98: Version 3.07g
+
+ Fixes:
+
+ - The position of some diacritic dots has been corrected.
+
+ New Features:
+
+ - For LaTeX there are additional styles for page numbers:
+ \pagenumbering{arab} will produce *real* Arabic page numbers
+ \pagenumbering{Arab} will produce bold Arabic page numbers
+ \pagenumbering{abjad} will produce "abjad" page numbers
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+06.08.98: Version 3.07f
+
+ Fixes:
+
+ - there was a small problem transliterating emphasized words.
+
+ - separating words by || did not work.
+
+ - the character for final "ny" in Malay was wrong.
+ - the character for final "h" in Malay was wrong.
+
+ New Features:
+
+ - Arabic and Persian words may be separated by \, (small space)
+
+ Installation:
+
+ - download "apatch.sty".
+
+--------------------------------------------------------------------------
+31.07.98: Version 3.07e
+
+ Fixes:
+
+ - there were spurious characters in Hebrew output.
+
+ Installation:
+
+ - download "apatch.sty" and "hepatch.sty".
+
+--------------------------------------------------------------------------
+28.07.98: Version 3.07d
+
+ New Features:
+
+ - there is a new directory "psfonts" that contains the Postscript
+ Type 1 versions of the fonts "xnsh14" and "xnsh14bf". The files
+ are called "xnsh14.pfb", "xnsh14bf.pfb", and "arabtex.map". The
+ fonts use the original TFM files. They have been tested with
+ dvips 5.76, ghostscript 5.10, a LaserJet 4+, and Acrobat Reader.
+
+ These font files have been built and donated by Taco Hoekwater
+ (taco.hoekwater@wkap.nl). Three cheers on him!
+
+ Old Features:
+
+ - the Arabic commands \lq (opening quotes), \rq (closing quotes),
+ and \,(small non-breaking space) have been present for some time;
+ we forgot to document this fact.
+
+ Installation:
+
+ - download and install the contents of the directory "psfonts"
+ wherever appropriate on your system; this is system dependent.
+
+ - "apatch.sty" was changed, but need not be downloaded except on
+ special advice.
+
+--------------------------------------------------------------------------
+27.07.98: Version 3.07c
+
+ Fixes:
+
+ - in Farsi mode ,a and ,e work again.
+
+ Installation:
+
+ - download "apatch.sty" and "hepatch.sty".
+
+--------------------------------------------------------------------------
+23.07.98: Version 3.07b
+
+ Fixes:
+
+ - The letter SIN in Hebrew mode was broken.
+ - The Sindhi abbreviations look better now.
+
+ Installation:
+
+ - download "apatch.sty" and "hepatch.sty".
+
+--------------------------------------------------------------------------
+20.07.98: Version 3.07a
+
+ Fixes:
+
+ - After installing the version 3.07 on our local server we noticed
+ an incompatibility with LaTeX2e; also by some new strategies the
+ patching mechanism had been broken. To fix these effects we had
+ to modify several source modules; we also found, and repaired,
+ several minor bugs. This is in fact nearly a new minor version;
+ on installation see below.
+
+ - To our surprise we found, and repaired, a Y2000 problem.
+
+ Changes:
+
+ - Switch to the new font "xnsh14" by the command "\newarabfont";
+ use "\oldarabfont" for switching back. The previous command
+ "\newfont" collides with a command in LaTeX2e.
+
+ Extensions:
+
+ - The font "xnsh14" contains all character fragments necessary to
+ build the characters in the extended Arabic segment of Unicode.
+ There is as yet no reading module for Unicode or UTF-8 encoding;
+ the present version of "utf8.sty" is still inconsistent.
+
+ - There are new commands "\MIN" and "\IN" for two frequently used
+ abbreviations in Sindhi.
+
+ - The file "atrans.sty" is loaded automatically.
+
+ - The file "etrans.sty" has been deleted. Use "\settrans{english}"
+
+ - The file "nashbf.sty" has been deleted. Use "\setnashbf"
+
+ Installation:
+
+ - If you already have loaded version 3.07, unpack and replace the
+ macro files in "tex307a.zip"; otherwise do a complete install as
+ indicated below for version 3.07 first.
+
+--------------------------------------------------------------------------
+16.07.98: Version 3.07
+
+ Status:
+
+ - This is a new minor version. All existing patches have been
+ merged into the respective macro files. To install it, load
+ and replace all macros in the subdirectory "TEXINPUT"; there
+ are several new files!
+
+ - We have rewritten substantial parts of the package in order to
+ increase stability and also to ease maintenance and extensions;
+ the modularisation is now different, and some of the internal
+ interfaces have been modified. This need not concern the user;
+ the functionality has not been changed, and apparently nothing
+ was broken during the transition to the new structure.
+ - The main reason for the changes was, apart from improving the
+ overall structure, to prepare for the handling of the full
+ Arabic segment of Unicode. This goal has not yet been attained,
+ but it required substantial changes in the internal structures.
+ - The positioning of diacritical marks has on the average been
+ much improved. There are a few exceptions; affected users that
+ need the maximum quality available could try their luck with
+ the new fonts "xnash14" and "xnash14bf" (see below). Otherwise
+ the user interface has not changed.
+
+ Additions:
+
+ - There are two new experimental fonts "xnash14" and "xnash14bf"
+ which overcome some limitations inherent in the previously
+ available versions "nash14" and "nash14bf". These fonts can be
+ activated (if installed) by the new command "\newfont" and can
+ be deactivated again by "\oldfont"; these commands change the
+ meaning of the commands "\setnash" and "\setnashbf" to switch
+ to the new versions, if required, and back. Normal users not
+ requiring the new versions can safely ignore this feature; they
+ need not now install these fonts.
+
+ Bugs:
+
+ - Presently none are known.
+
+==========================================================================
+24.03.98: Version 3.06h
+
+ Fixes:
+
+ - some ligatures had been broken by the Sindhi mode; these have
+ been fixed.
+ - kashida before alif maqsura works again.
+
+ Problems:
+
+ - verses produced via "verses.sty" will ruin the word spacing if
+ they occur within an Arabic paragraph inside a footnote, and
+ possibly in other circumstances. There is a workaround: put the
+ command "\setspace{4.3pt plus 0.001fil}" after the last verse.
+
+--------------------------------------------------------------------------
+11.03.98: Version 3.06g3
+
+ Fixes:
+
+ - bi-directional linebreaking has been improved; there were some
+ spurious blank spaces.
+
+ New features:
+
+ - ArabTeX is now believed to be compatible with the BABEL system.
+ We cannot test this locally; reports are welcome. We acknowledge
+ useful hints by Olaf Kummer and Johannes Braams.
+
+ - there is now less spurious information in the LOG file.
+
+ - there are some preparations for processing the UTF-8 encoding
+ and the extended Arabic character set provided in UNICODE. These
+ features cannot yet be accessed from the user level.
+
+--------------------------------------------------------------------------
+26.01.98: Version 3.06f
+
+ Fixes:
+
+ - the special handling of final "mim" has been restricted to the
+ Sindhi mode.
+ - the positioning of diacritics has been improved.
+
+ - Hebrew and EDMAC users: the "\if@lodia effect" has been fixed.
+
+ Note to users of EDMAC:
+
+ - download the new version 3.06a of 22.01.98 of "aedpatch.sty".
+ This fixes the format of footnote paragraphs. (This correction
+ cannot technically be handled by a patch within "apatch.sty").
+
+ Note to users of the Sindhi mode:
+
+ - please download the fonts again to get all characters.
+
+--------------------------------------------------------------------------
+15.12.97: Version 3.06e
+
+ Fixes:
+
+ - "alif maqsura" and isolated "hamza" take explicit vowel marks
+ and also "tanwin" if required.
+ - final "mim" in the Urdu mode again has the long shape. In the
+ Sindhi mode a short form is simulated by a kashida if needed.
+ - in Urdu the encoding <,d> produces "dal" with a "toi" accent,
+ and initial <U> becomes "alif+damma" and "waw" as required.
+ - some transcription errors in Urdu mode have been fixed.
+ - some ligatures in Sindhi mode are improved.
+
+ Problems:
+
+ - medial "wavy hah" in Urdu has a mark below it (controversial).
+
+--------------------------------------------------------------------------
+27.11.97: Version 3.06d
+
+ Fixes:
+
+ - the input letter <A> denotes alif also in initial position and
+ after a prefix separated by a hyphen. It may take short vowels,
+ and also sukun (only if quoted). This feature may be useful when
+ copying corrupted texts.
+ - the "lam" of the article carries "sukun" also if the following
+ word starts with "`ayin", like with the other "moon letters".
+ - the encodings <I> and <iy> are equivalent; also <Iy> and <iyy>,
+ <U> and <uw>, <Uw> and <uww>.
+ - <"> and <""> at the beginning of a word generate alif with wasla
+ even after a prefix.
+ - a prefix before hyphen no more needs a short vowel to work.
+ - the invisible character <|> is legal in the initial or the final
+ position (but makes no sense there). It never takes a vowel mark.
+
+ New features:
+
+ - the inflection endings <-a>, <-i>, <-u>, <-aN>, <-iN>, <-uN> may
+ be separated by a hyphen, also if written <-aNA>. Otherwise the
+ character after a hyphen will be considered to start a new word,
+ but may be joined to the prefix if possible (e.g., in <al-i-ismu>
+ where <-i-> is a connection vowel producing "kasra", and <ismu>
+ starts with "alif" "wasla" combined with "lam" into "lam-alif"
+ carrying both "wasla" and "kasra".)
+ - if a ligature is separated by <|> or <--> (kashida), any vowel
+ mark present will migrate to the appropriate character glyph. The
+ same happens with the implicit vowel mark that is produced by the
+ long vowels in the vowelizing modes.
+ - a comma <,> between digits will no more break the digit sequence
+ but will be recognized as a decimal separator. A hyphen <-> and a
+ solidus </> will also not break a digit sequence. A "number" must
+ still begin with a digit to be recognized.
+
+ Problems:
+
+ - the Urdu mode is still broken.
+ - for the new language modes (see 3.06) there is yet no (correct)
+ transcription.
+
+ Hints:
+
+ - users of the Sindhi mode should regenerate the fonts otherwise
+ the "wide kaf" may be missing.
+
+--------------------------------------------------------------------------
+23.11.97: Version 3.06c
+
+ Fixes:
+
+ - final "alif maqsura" carries no sukun.
+ - in connection with EDMAC, an Arabic lemma bearing a footnote is
+ spread out by the same factor as the rest of the line, (e.g. in
+ verses) even if it contains spaces.
+ - Arabic footnotes with EDMAC no more produce overfull boxes, and
+ will no more let the page overflow.
+
+ Known bugs:
+
+ - prefixes separated by a hyphen must presently be given in the
+ fully vowelized input form, otherwise the writing is wrong.
+ - The Urdu mode is broken; also its transcription is wrong.
+
+--------------------------------------------------------------------------
+25.09.97: Version 3.06b
+
+ Fixes:
+
+ - in Kurdish mode, kashida and breaking of ligatures work now
+
+--------------------------------------------------------------------------
+18.09.97: Version 3.06a
+
+ Fixes:
+
+ - there were sometimes spurious newlines if the transliteration
+ was generated via an Arabic insertion
+ - ligatures can again be broken by inserting a bar |
+ - the ligatures family lam-gim, ta-gim etc. works again
+ - there were spurious spaces in bidirectional text under EDMAC
+
+--------------------------------------------------------------------------
+06.08.97: Version 3.06
+
+ Status:
+
+ - This is a new minor version. All existing patches have been
+ merged into the respective macro files.
+ - This doc file has been trimmed down; history information up to
+ version 3.00 has been moved to "changes2.txt".
+ - Several file names of the mini-documentation have been changed
+ to lower case and carry the suffix ".txt", for the benefit of
+ certain web-browsers. See also the file "arabtex.htm".
+
+ Fixes:
+
+ - some minor bugs have been fixed that had introduced spurious
+ spaces or newlines when switching between Arabic and Hebrew.
+ - "kashida" (--) between a consonant and a (long or short) vowel
+ will no more split the vowel indicator from the consonant glyph.
+
+ Additions:
+
+ - the new command "\setsindhi" will switch to a language mode for
+ Sindhi in an extended Arabic script. For details, process and
+ read the file "sindhi.tex".
+ - the new command "\setuighur" will switch to a language mode for
+ Uighuric in an extended Arabic script. For details, process and
+ read the file "uighur.tex".
+ - the new command "\setmalay" will switch to a language mode for
+ Old Malay (Jawi) in an extended Arabic script. For details,
+ process and read the file "malay.tex".
+ - These new language modes are strictly experimental and just a
+ starting point. As the author speaks none of these languages,
+ feedback and comments by interested users are badly needed.
+
+==========================================================================
+19.06.97: Version 3.05h
+
+ Fixes:
+
+ - some ligatures with "kaf" have been improved.
+ - "quoting" of "wasla" works in all vowel modes.
+ - "kashida" works also before long vowels.
+ - breaking of ligatures works correctly also with long vowels
+ and in combination with "quoting".
+
+--------------------------------------------------------------------------
+12.06.97: Version 3.05g
+
+ Fixes:
+
+ - a bug fix for the new Sindhi module has been introduced (this
+ mode is in alpha status and not yet publicly available; if you
+ are interested in testing it: enquire)
+
+--------------------------------------------------------------------------
+10.06.97: Version 3.05f
+
+ Fixes:
+
+ - a spurious error message about a "missing character" has been
+ eliminated.
+ - "\settrans{english}" switches again to the transliteration
+ conventions of the Library of Congress.
+ - ArabTeX will no more overwrite a user macro "\x".
+
+ Additions:
+
+ - the new command "\arabfootnotes" makes LaTeX footnotes run from
+ right to left, and their text is considered Arabic by default.
+ There is as yet no command to switch back to the default mode
+ (left to right, Roman). With Plain TeX the new command is not
+ yet available.
+
+--------------------------------------------------------------------------
+28.05.97: Version 3.05e
+
+ Fixes:
+
+ - <U> in the Urdu mode works again.
+ - some errors in the transliteration have been corrected.
+ - some ligatures have been corrected.
+
+--------------------------------------------------------------------------
+22.05.97: Version 3.05d
+
+ Fixes:
+
+ - \tabular structures within the Arabic document classes are now
+ correctly aligned.
+ - a few ligatures have been improved.
+ - some internal routines have been updated preparing for some
+ planned extensions. No visible effect.
+ - a new test for version clashes has been introduced.
+
+--------------------------------------------------------------------------
+14.05.97: Version 3.05c
+
+ Fixes: The patching routine seems to work again.
+
+--------------------------------------------------------------------------
+14.05.97: Version 3.05b
+
+ Problems:
+
+ - LaTeX is too clever and interferes with the patching routine.
+ Therefore the existing patches for Hebrew have been moved to
+ the file "hepatch.sty". Arabic mode is presently not affected.
+
+--------------------------------------------------------------------------
+13.05.97: Version 3.05a
+
+ Fixes:
+
+ - in Hebrew mode when using HED encoding, Thet and Maqqef did
+ not work correctly.
+ - in EDMAC mode with Plain TeX the list of modules was missing.
+ - some internal interfaces have been updated. This has no effect
+ on the external operation but helps stability.
+
+--------------------------------------------------------------------------
+07.05.97: Version 3.05
+
+ Status:
+
+ - The internal structure has changed extensively; this need not
+ trouble the user.
+ - Warning: NEVER MIX old and new files; they may be incompatible!
+
+ Fixes:
+
+ - A number of minor and some major bugs have been fixed.
+
+ Modifications:
+
+ - With EDMAC, the first argument of \text need not fit on the
+ current line. All arguments are assumed to be Roman text; they
+ may contain (or consist of) \<Arabic insertions>.
+
+ Additions:
+
+ - The ISIRI 3342 encoding is supported; load the reading module
+ by \input isiri.sty or \usepackage {isiri}. Activate it by the
+ command \setcode {isiri}.
+ - Hebrew support has been expanded; read the file "hebrew.305".
+ ArabTeX will try to use fonts locally available, irrespective
+ of their encoding.
+ - the file "verses.sty" supports typesetting poetry in two blocks.
+ For a description, see the file itself.
+ - See also the comments on Version 3.04 below.
+
+ Hints:
+
+ - If you want to process the manual "arabdoc.tex" under LaTeX 2e
+ and get error messages, delete the *.aux, *.toc, and *.lot file
+ and try again. These files depend on the LaTeX version used.
+ - see also version 3.04.
+
+ Complaints:
+
+ - There is STILL no Nasta`liq font.
+ - the user manual "arabdoc.tex" is outdated.
+
+ Known bugs:
+
+ - None as yet.
+
+ How to move from earlier minor versions to version 3.05:
+
+ - replace the contents of "TEXINPUT" and "REPORT".
+ - read and/or print "README.305"
+ - if interested, process the user manual "arabdoc.tex"; see the
+ hints above.
+
+==========================================================================
+05.10.96: Version 3.04e
+
+ Fixes:
+
+ - removed many small bugs in Persian (thanks, Ivan Dershzanski!)
+ - initial <alif> coded <A> in verbatim mode may carry a vowel
+ - <yah> without dots coded <Y> acts like a consonant except at the
+ end of a word
+ - <aNy> denotes <fathatan> on <alif maqsura> erroneously written
+ with dots
+
+ Modifications:
+
+ - removed quoted hamza ("') from verbatim mode (was ambiguous!)
+
+--------------------------------------------------------------------------
+18.05.96: Version 3.04d
+10.05.96: Version 3.04c (not distributed)
+
+ Fixes:
+
+ - in "arabart.cls" (twocolumn) the right column is output first
+ to get correct numbering of sectional units
+ - corrected the vertical position of "marginpar"
+ - a space is assumed after a new command defined via \allowarab
+
+--------------------------------------------------------------------------
+08.04.96: Version 3.04b
+
+ Fixes:
+
+ - \footnote works again within an Arabic environment
+
+ Known bugs:
+
+ - \footnote is incompatible with "arabart.cls"
+
+--------------------------------------------------------------------------
+21.03.96: Version 3.04a
+
+ Fixes:
+
+ - \baselineskip works correctly with EDMAC
+ - \emphasize puts the overbar at uniform height in \novocalize
+
+ Necessary action:
+
+ If required, download the ASCII file "apatch.sty" again. This
+ is a patch for version 3.04!
+
+ See also version 3.04 below.
+
+--------------------------------------------------------------------------
+19.03.96: Version 3.04
+
+ Status:
+
+ - ArabTeX now cooperates well with LaTeX 2e (June 1995 and later)
+ and also still with Plain TeX and LaTeX 2.09. The configuration
+ is determined automatically. With LaTeX 2e ArabTeX and all its
+ suboptions are packages.
+ - The internal structure has changed extensively; this need not
+ trouble the user.
+
+ Fixes:
+
+ - \baselineskup, \parskip, \baselinestretch now work correctly
+ in the Arabic modes.
+ - The TeX special characters \#, \$, \%, \& can now be used (they
+ just had been forgotten).
+ - A number of minor bugs have been fixed.
+
+ Modifications:
+
+ - Digits and punctuation have been raised to the writing line.
+ We feel this looks better.
+ - The handling of numbers (= digit sequences) has been improved.
+ Within a number, the decimal separator is the comma.
+ - Bidirectional line-breaking has again been much improved. The
+ command \goodpar still works but is rarely required.
+ - The option "abidir" is no more necessary.
+ - The option "nashbf" is no more necessary.
+ - The option "abjad" is no more necessary.
+
+ Additions:
+
+ - User defined macros can be made known to ArabTeX by the
+ declaration \allowarab {\macro_name} (previous to their use
+ within an Arabic environment). The replacement text after
+ substituting the parameters must be legal ArabTeX input and
+ may contain further macro calls. The macro must be previously
+ defined via \newcommand or \def.
+
+ - The Arabic Windows encoding is supported; load the reading
+ module by \input arabwin.sty, \usepackage {arabwin} or by
+ adding the LaTeX 2.09 option "arabwin". Activate it by the
+ command \setcode {arabwin}.
+
+ - There are some additional transliteration modes for Persian
+ and Urdu; in case of interest: inquire directly.
+
+ - The package "raw.sty" defines the command \setraw to switch
+ off all special processing for numbers, special characters
+ and parentheses. This may be helpful for OCR work. Switch
+ back by \unsetraw.
+
+ - The (experimental) LaTeX 2e class file "arabart.cls" provides
+ an Arabic article format. Within Arabic environments a number
+ of LaTeX commands are enabled: sectioning, list environments,
+ page headers and footers, table of contents, footnotes, quote,
+ quotation, verse, center, twocolumn. All text arguments are
+ considered to be Arabic text in the chosen encoding. Some of
+ the LaTeX environments are missing, e.g., tabular and tabbing,
+ minipages, pictures. They can usually be simulated by leaving
+ the Arabic environment and reverting to the standard LaTeX
+ commands.
+
+ We are working on extensions to this format; suggestions and
+ bug reports are welcome. We do not intend to supply a version
+ for LaTeX 2.09.
+
+ - See also the comments on Version 3.03 below.
+ - The notes in README.303 still apply.
+
+ Hints:
+
+ - Uniform baselines may be obtained by setting \lineskiplimit
+ to -\baselineskip and adjusting \baselinestretch to 1.4 (with
+ LaTeX) or \baselineskip to 1.4\baselineskip with Plain TeX.
+ Some experimenting is advised.
+ - If you want to process the manual "arabdoc.tex" under LaTeX 2e
+ first move the file "arabimax.tex" to the REPORT subdirectory.
+ You will get some error messages on the first run. Forget them
+ and process the file again; LaTeX 2e is to blame. Warning: the
+ report is not quite up to date.
+ - Put any local macro definitions into the LaTeX preamble or else
+ precede them by \setnone; thus the < sign can be used in the
+ normal meaning as a comparison operator. Activate short Arabic
+ insertions again by \setarab or any other of the commands for
+ language choice.
+ - PiCTeX users may use Arabic labels within diagrams if and only
+ if these are included in \< and > (NOT < and >).
+ - If you use MlTeX and the output looks broken, note the version
+ number of MlTeX and inform us.
+
+ Complaints:
+
+ - There is STILL no Nasta`liq font.
+
+ Known bugs:
+
+ - None as yet.
+
+ How to move from earlier minor versions to version 3.04:
+
+ - read and/or print "README.303"
+
+==========================================================================
+04.07.95: Version 3.03e
+
+ Fixes:
+
+ - Final yah before hamza works again
+
+--------------------------------------------------------------------------
+24.05.95: Version 3.03d
+
+ Fixes:
+
+ - After switching to other encodings switching back to the
+ standard encoding works again.
+ - An empty \RL {} insertion will no more blow the system.
+
+ Problems:
+
+ - see version 3.03c
+
+--------------------------------------------------------------------------
+02.05.95: Version 3.03c
+
+ Fixes:
+
+ - The METAFONT routines for the fonts "nash14" and "nash14bf"
+ used a file "asymbols.mf" that conflicted with the AMS-Fonts.
+ This file has been renamed to "arabsymb.mf". To use the new
+ version, download "arabsymb.mf" and "nashbase.mf" from the
+ subdirectory ARABTEX/MFINPUT and delete "asymbols.mf". This
+ only concerns users who need to regenerate the fonts locally.
+
+ Problems:
+
+ - The font "dclassic" used by the Hebrew mode of ArabTeX has on
+ the archive "noa.huji.ac.il" been replaced by a new version
+ that is incompatible to the previous version while keeping the
+ same name. We are working on a solution to resolve the ensuing
+ compatibility problems. Users of the previous version are not
+ affected.
+
+ Acknowledgment:
+
+ - The routines for building up punctuated Hebrew characters have
+ profited from macros written by Joel Hoffmann and contained in
+ his packages "dots.sty" and "hvowel1.sty". We apologize for not
+ pointing out this fact clearly.
+
+ Necessary action:
+
+ - Normally none, except if indicated above.
+
+--------------------------------------------------------------------------
+24.04.95: Version 3.03b
+
+ Fixes:
+
+ - The handling of single and double quotes, and of other special
+ characters, in the ASMO 449 and ISO 8859-6 encodings has been
+ improved.
+ - After a punctuation character inside a word (usually an error)
+ no space will be produced.
+ - <tanwIn> on <'alif maqsUraT> works again.
+ - In \setverb mode, a <harakaT> on <'alif> now works.
+ - In \setverb mode, <A> may be used to produce <'alif>.
+ - The ligature <lm|a> is produced instead of <l|ma>.
+ - <ba'>, <ya'> etc. before <lAm> now have the short form.
+
+ Known bugs in ArabTeX:
+
+ - \begin{arabtext} inside a minipage will produce a spurious
+ empty line; the reason is unknown.
+
+ Hints:
+
+ - Numbers after quotes will not be recognized as such and thus
+ will be reversed; as a workaround, leave a space around the
+ digits, e.g., <`` 1234 ''> or use a \nospace command, e.g.,
+ <`` \nospace 1234 \nospace ''>.
+ Mind the spaces before the \nospace commands in the example!
+ - With LaTeX2e, load ArabTeX and its suboptions by the command
+ \usepackage.
+
+--------------------------------------------------------------------------
+28.03.95: Version 3.03a
+
+ Fixes:
+
+ - A workaround for an error in some versions of ML-TeX has
+ been tentatively introduced. Non-ML-TeX users may safely
+ ignore this.
+
+--------------------------------------------------------------------------
+10.03.95: Version 3.03
+
+ Fixes:
+
+ - A number of minor bugs have been fixed, nothing dramatic.
+ - The spacing of punctuation has been improved.
+
+ Modifications:
+
+ - Hebrew vowel points are provided. Hebrew mode now uses the font
+ "dclassic". It can be downloaded e.g. from "noa.huji.ac.il".
+
+ Additions:
+
+ - The Hebrew encoding used in the machine readable version
+ of BHS is supported. See README.303!
+ - \obeylines and \obeyspaces also work for Arabic text. They
+ however must be used in a group that contains the Arabic
+ text AND this group must be followed by at least one space.
+ - An <Arabic insertion> inside a \verbatim environment will be
+ typeset in Arabic. Big TeX may be necessary.
+ An Arabic environment will be typeset verbatim.
+ - \vskip, \hskip, \vspace, \hspace, \newpage, \vfill are legal
+ in Arabic mode.
+ - A list of the loaded modules is put into the log file.
+
+ Known bugs:
+
+ - None as yet.
+
+ How to move from earlier minor versions to version 3.03:
+
+ - completely replace the contents of the subdirectory TEXINPUT
+ - move the updated files "arabdoc?.tex" from the outermost level
+ to the subdirectory "REPORT"
+ - read and/or print "README.303"
+
+==========================================================================
+12.08.94: Version 3.02b
+
+ Fixes:
+
+ - \fullvocalize mode uses somewhat less TeX main memory than
+ before but might still overflow; using \newpage explicitly
+ could help
+ - some ligatures have been improved
+ - spacing has been improved in short insertions when the
+ transliteration is also generated
+ - in Hebrew mode, HED encoding, double letters work again
+ - explicit spreading works again correctly
+ - <hamza> in rare cases had the wrong carrier
+ - if an Arabic word starts with a vowel, "quoting" toggles
+ <wasla> if no vowel is given in the input
+ - bidirectional line-breaking has been much improved. The
+ command \goodpar is rarely necessary
+
+ Hints:
+
+ - etrans.sty is no more necessary; load atrans.sty
+ - \settrans{english} switches to the romanization conventions
+ of the Library of Congress
+
+--------------------------------------------------------------------------
+19.07.94: Version 3.02a
+
+ Fixes:
+
+ - in Arabic, alif maqsura after tanwin works again
+ - in Hebrew, before an apostrophe the medial form is used
+ - in Hebrew, hyphen/maqqef works correctly
+
+ Hints:
+
+ - with Plain TeX (and/or EDMAC) only: load the ASCII file
+ "apatch.sty" explicitly as the last file!
+
+--------------------------------------------------------------------------
+14.07.94: Version 3.02
+
+ Fixes:
+
+ - some minor bugs have been corrected
+ - the User Manual has been slightly updated, but is otherwise
+ somewhat out of date.
+
+ Modifications:
+
+ - for storage reasons the transcription module is not loaded
+ automatically; add the LaTeX option "atrans" if required,
+ or say "\input atrans.sty".
+
+ Additions:
+
+ - EDMAC 3.00 and EDMAC 3.15 are both supported.
+ - the LaTeX option "abidir" provides the new command \RL {text}
+ for right-to-left insertions; it is used like <text> which is
+ still provided, and which should be used wherever possible for
+ reasons of efficiency.
+ - the LaTeX option "hebtex" loads the modules for processing text
+ in Hebrew. Switch to Hebrew by \sethebrew, and back to Arabic
+ by \setarab. Hebrew text can be coded in the standard ArabTeX
+ input notation, or in the encoding used by the editor HED; the
+ latter coding is activated by \setcode {hed}. The reading module
+ is supposed to also process texts in "newcode" (not tested!)
+ - For using the Hebrew mode, the font "deadsea" must be available;
+ it can be downloaded e.g. from "noa.huji.ac.il". Vowels are
+ presently not provided.
+ - For details see the ASCII file "readme.302".
+
+ Hints:
+
+ - only load the modules really required, or you might have to use
+ a Big TeX!
+
+ Known bugs:
+
+ - None.
+
+ How to move from earlier minor versions to version 3.02:
+
+ - completely replace the contents of the subdirectory TEXINPUT
+ - move the updated files "arabdoc?.tex" from the outermost level
+ to the subdirectory "REPORT"
+ - read and/or print "README.302"
+
+==========================================================================
+05.05.94: Version 3.01a
+
+ Fixes:
+
+ - \parskip now has effect also inside Arabic environments.
+
+ Additions:
+
+ - The EDMAC commands \pstart, \pend, \autopar are allowed
+ inside an Arabic environment, IF properly nested.
+
+--------------------------------------------------------------------------
+28.04.94: Version 3.01
+
+ There has been extensive internal rewriting but the external
+ effects are minor.
+
+ - \setarab is the language default again. It will no more break
+ the user's macro definitions IF these are put into the LaTeX
+ preamble, or before "\input arabtex.sty" when using Plain TeX.
+
+ Fixes:
+
+ - Spaces are normally ignored after allowed control sequences
+ inside Arabic text, (if not produced by the command itself.)
+ - The spacing between a final silent <hah> in Persian and the
+ next word has been improved.
+
+ - An error in "twoblocks.sty" has been corrected that produced
+ a spurious vertical space.
+ - An error in "asmo449.sty" has been corrected that produced
+ nonsense from the combination "Gdr" (article with an explicit
+ <sukUn>)
+ - In "abjad.sty", the <gIm> for the numeral 3 has no dot.
+
+ Additions:
+
+ - The commands \smallskip, \medskip, \bigskip, \newpage,
+ \clearpage, \pagebreak, \hskip {glue}, \vskip {glue}, \today
+ now work inside Arabic text.
+ - there is a new language mode: \setturk for Ottoman.
+ The input notation has been extended to cover both the standard
+ and the modern Turkish transliteration.
+ The documentation remains to be written :-(
+ - there is a new language mode: \setkurdish for Kurdish.
+ The documentation remains to be written :-(
+ - "" produces an explicit <sukUn> except in \fullvocalize mode
+ where it deletes a <sukUn> otherwise present.
+ - The new commands \setarabfont {\nash} or \setarabfont {\nashbf}
+ supersede \setnash and \setnashbf (which are still supported).
+
+ Known bugs:
+
+ - None.
+
+ Hints:
+
+ - The LaTeX style option "atrans" is redundant.
+ - After changing the input coding, select the language mode and
+ the vowelization mode anew (this is a feature :-).
+
+ How to move from earlier minor versions to version 3.01:
+
+ - completely replace the contents of the directory TEXINPUT
+ - observe that there is a new file "acmd.sty"
+
+==========================================================================
+07.12.93: Version 3.00b
+
+ Fixes:
+
+ - corrected handling of <tanween fatha> in \setverb mode.
+ - improved error handling for illegal commands.
+ - ligature <geem>-<meem> also in spreading mode.
+
+ Additions:
+
+ - \setspace{rubber_length} changes the default for spaces in
+ Arabic text; 3pt plus .5fil is recommended for \spreadbox.
+
+ Known bugs:
+
+ - arguments of boxing commands may not contain insertions.
+ - in ASMO449, the combination Gdr (article with an explicit
+ sukoon) will produce nonsense.
+
+ Hints:
+
+ - There is no language default. Do not forget \setarab etc.
+ or otherwise you might get strange results.
+ - After changing the input coding, select the language and
+ the vowelization mode anew (this is a feature).
+
+ These are in the manual but easily overlooked.
+
+--------------------------------------------------------------------------
+26.11.93: Version 3.00a
+
+ Fixes:
+
+ - the <hamza> carrier is now <ya'> the before diphthong <ay>
+
+ Additions:
+
+ - more Qur'anic writing variants provided
+ - \hfil is allowed in Arabic text
+
+--------------------------------------------------------------------------
+20.11.93: Major Version 3.00
+
+ Status:
+
+ - large portions of the code have been rearranged and partly
+ rewritten
+ - The User Manual has been extensively updated and describes
+ all (supported) ArabTeX features currently implemented
+ - Version 3.00 seems to be compatible with Version 2 files
+ - NFSS and NFSS2 can be used but are not required
+ - all known bugs have been removed
+ - Version 3.00 still can be run (slowly) on a standard PC XT
+
+ Additions:
+
+ - texts coded in ASMO 449 or ISO 8859-6 can now be processed
+ - several historic writing variants are additionally supported
+ - details of Farsi support are now described in the User Manual
+ - many new commands are valid inside Arabic text; a complete
+ list appears in the log file of each ArabTeX run, and also
+ in the new User Manual
+ - see also versions 2.00 - 2.08 below
+
+==========================================================================
+
+ How to move from version 2.0x, 0 <= x <= 8, to version 3.00:
+
+ - completely replace the contents of the directory TEXINPUT
+ - completely replace the contents of the directory REPORT
+ - process AND READ the new User Manual "arabdoc.tex"
+ - leave the fonts alone
+
+ How to move from version 1 (or none at all) to version 3.00:
+
+ - Do as above; install the fonts "nash14" and "nash14bf" first
+ according to local TeX conventions.
+ - If the font "nash10" is still there, delete it.
+
+==========================================================================
+ For information on older versions see the file "changes2.txt".
+==========================================================================
+ Prof. Klaus Lagally
+ Institut fuer Formale Methoden der Informatik
+ Universitaet Stuttgart
+ Universitaetsstrasse 38
+ D-70569 Stuttgart
+ GERMANY
+
+ lagally@informatik.uni-stuttgart.de
+ FAX: +49 - 711 - 7816 370
+--------------------------------------------------------------------------
+ Copyright (c) 1990 - 2003, Klaus Lagally
+--------------------------------------------------------------------------
+
diff --git a/language/arabic/arabtex/doc/txt/changes2.txt b/language/arabic/arabtex/doc/txt/changes2.txt
new file mode 100644
index 0000000000..8437dc3091
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/changes2.txt
@@ -0,0 +1,378 @@
+CHANGES 25.10.1993
+--------------------------------------------------------------------------
+ ArabTeX Version 2
+ =================
+ (for information on newer versions see the file "changes.txt")
+--------------------------------------------------------------------------
+25.10.93: Version 2.08 (not widely distributed)
+
+ Status:
+
+ - all corrections in version 2.07 have been incorporated; there
+ has been extensive rearrangement of code
+ - all known bugs have been removed
+ - some details in the manual have been rearranged; otherwise
+ the manual is slightly out of date
+
+ Additions:
+
+ - \footnote in Arabic text now also works inside a minipage
+ - more commands are valid inside Arabic text; a complete list
+ appears in the log file
+ - see also versions 2.07a - d below
+
+ How to move from version 2.0x, 0 <= x <= 7d:
+
+ - install all files in the directory TEXINPUT anew
+ - replace "arabdoc.tex", "arabdoc0.tex", "arabdoc.ind" in the
+ directory REPORT
+ - leave the fonts alone
+
+ How to move from version 1 (or none at all) to version 2.08:
+
+ - Do as above; install the fonts "nash14" and "nash14bf" first
+ according to local TeX conventions.
+ - If the font "nash10" is still there, delete it.
+
+--------------------------------------------------------------------------
+01.07.93: Version 2.07d
+
+ Fixes:
+
+ - "quoting" for <sukun> and <wasla> works now correctly.
+ - <H> for silent <hah> in Persian works as described.
+
+ Additions:
+
+ - <j> instead of <^g> for <gim>, and <x> instead of <_h> for <hhah>
+ are now legal, but not recommended.
+
+ If required, download the ASCII file "apatch.sty" again.
+
+--------------------------------------------------------------------------
+04.05.93: Version 2.07c
+
+ Fixes:
+
+ - a modification that will usually prevent a known bug in Ml-TeX
+ from doing too much harm. May be ignored by non-Ml-TeX-users;
+ otherwise download the new version of "apatch.sty".
+
+--------------------------------------------------------------------------
+26.03.93: Version 2.07b
+
+ New features:
+
+ - The commands \smallskip, \medskip, \bigskip, \input filename
+ work also inside an arabic environment
+ - <aa> works like <A>: <kaatib> is like <kAtib>.
+ There always was <iy> for <I>, <uw> for <U>.
+ - Download the "apatch.sty" ASCII file again if you have already
+ installed the version 2.07.
+
+--------------------------------------------------------------------------
+25.03.93: Version 2.07a
+
+ Fixes:
+
+ - There was a subtle interaction with the \tabular environment
+ which prevented printing of the user manual.
+ - Download the "apatch.sty" ASCII file again if you have already
+ installed the version 2.07.
+ - The compressed versions have been corrected.
+
+--------------------------------------------------------------------------
+22.03.93: Version 2.07
+
+ Policy:
+
+ - ArabTeX is still free for scientific purposes, but we should
+ appreciate receiving an offprint of any publication produced
+ by using ArabTeX, for our collection. This does not apply to
+ any personal correspondence.
+
+ Status:
+
+ - There have been extensive changes to all "*.sty" files.
+ - Many minor errors have been fixed.
+ - There is a new file "aedpatch.sty".
+ - The tentative features of version 2.06 have been incorporated.
+ - The command processing has been completely reworked and is
+ believed to be more robust.
+ - The font has not changed.
+ - The user manual has not yet been updated; visible changes are
+ minor.
+
+ New features:
+
+ - ArabTeX is now compatible with the EDMAC package for critical
+ editions (see TUGboat 11/1, 623-643 (1990)). Just load ArabTeX
+ *after* loading EDMAC. The necessary extensions will be loaded
+ automatically via "aedpatch.sty".
+ - All arguments of EDMAC commands are considered "Roman" text but
+ may contain arabic insertions.
+
+ Changes and extensions:
+
+ - Arabic insertions may now also contain commands.
+ - Most Plain TeX or LaTeX commands that make sense in an arabic
+ environment are now allowed, as well as in arabic insertions.
+ - Font, mode and size changing commands obey the normal grouping
+ rules.
+ - The commands \footnote and \marginpar work now both in Plain TeX
+ and LaTeX mode; observe the different calling conventions!
+ - The \marginpar command inside arabic text works also with Plain
+ TeX, analogous to the LaTeX \marginpar command; marginal notes
+ always go to the right margin. If this feature is used, the user
+ may have to adjust the parameters \marginparwidth, \marginparsep,
+ and \hsize accordingly.
+ - The new options \accentshigh and \accentslow influence the
+ positioning of the diacritical marks. \accentslow is the default.
+ - The new options \oldtanwin and \newtanwin influence the position
+ of <tanwin fa.tha>: on the last consonant or on the final <alif>
+ if applicable. Defaults are language dependent.
+ - A group of arabic words can be emphasized by overlining; this is
+ effected by \emphasize {arabic words}.
+ - A group of arabic words, if enclosed in curly braces, is not
+ split across a line boundary.
+ - A final silent <hah> in Persian can be denoted <h>, <H>, or <T>.
+
+ Known problems:
+
+ - None at present.
+
+ How to move from versions 2.05 - 2.06 to version 2.07:
+
+ - Replace all "*.sty" files
+ - The fonts "nash14" and "nash14bf" are unchanged.
+
+ How to move from versions 2.00 - 2.04 to version 2.07:
+
+ - As above; add the manual files "arabdoc*.*" in the directory
+ "report" and process them to get the User Manual.
+
+ How to move from version 1 (or none at all) to version 2.07:
+
+ - Do as above; install the fonts "nash14" and "nash14bf" first
+ according to local TeX conventions.
+ - If the font "nash10" is still there, delete it.
+
+-----------------------------------------------------------------------
+02.12.92: Version 2.06
+
+ Status:
+
+ - This is an experimental version processing some Persian
+ features differently; otherwise identical to version 2.05.
+ - This version is NOT part of the packages "arabtex.zip" and
+ "arabtex.tar.Z"; instead there are additional ASCII files
+ "apatch25.sty", "apatch26.sty", and "arab2-06.doc". Thus
+ installing it does not destroy a working version 2.05.
+ - This version has not been extensively tested.
+ - Moving back and forth between versions 2.05 and 2.06 is easy.
+
+ - For details: see the file "arab2-06.doc".
+
+--------------------------------------------------------------------------
+05.11.92: Version 2.05
+
+ Status:
+
+ - There is a new User Manual "arabdoc.tex" in the subdirectory
+ "report". It contains many examples for the use of ArabTeX;
+ some of them also show several small extensions for special
+ cases which are not otherwise documented, but supported.
+ - The new User Manual is in ArabTeX format for local printing,
+ so it serves at the same time as an extensive installation test.
+ A hard-copy version is available on request; write to the author
+ and enclose DM 10 (outside of Europe US$ 10) to cover printing
+ and mailing expenses. For additional DM 5 (US$ 5) you can also
+ get the software on diskette (please indicate computer system,
+ TeX implementation version, and desired diskette format).
+ - The "*.sty" files have been updated so that the system works
+ (apparently) exactly as described in the User Manual; some small
+ bugs that have shown up in the meantime have been fixed.
+
+ Changes and extensions:
+
+ - The vowel marks, if shown, are now positioned at about the same
+ height from the baseline.
+ - Arabic words can be emphasized by overlining.
+ - A group of arabic words, if enclosed in curly braces, is not
+ split across a line boundary.
+ - A final mute "hah" in Persian can be denoted <h>, <H>, or <T>.
+
+ How to move from versions 2.00 - 2.04 to version 2.05:
+
+ - Replace all "*.sty" files
+ - Add the manual files "arabdoc*.*" in the directory "report" and
+ process them to get the new User Manual.
+ - The fonts "nash14" and "nash14bf" are unchanged.
+
+ How to move from version 1 (or none at all) to version 2.05:
+
+ - Do as above; install the fonts "nash14" and "nash14bf" first
+ according to local TeX conventions.
+ - If the font "nash10" is still there, delete it.
+
+ Known problems:
+
+ - The non-arabic language modes have not been extensively tested.
+ - The text file "arabtex.doc" can be used as a first introduction,
+ but does not describe all features. For full details, see the
+ User Manual.
+
+--------------------------------------------------------------------------
+05.08.92: Version 2.04
+
+ Status and fixes:
+
+ - see also Version 2.03 below
+ - "awrite.sty" has been extensively restructured to ease
+ further maintenance
+ - the storage utilization is somewhat better, the running time
+ is about the same as with version 2.02
+
+ Changes: only format and contents of THIS file
+
+ How to move from version 2.02:
+
+ - replace aparse.sty, awrite.sty, aligs.sty
+ or: reinstall all *.sty files if that is easier
+ - the font has NOT changed, leave it alone
+
+ How to move from version 2.00:
+
+ - replace all *.sty files, including "apatch.sty" (new)
+ - the font has NOT changed, leave it alone
+ - there is a new demo for Farsi: "omar.tex"
+
+--------------------------------------------------------------------------
+01.08.92: Version 2.03 (not distributed)
+
+ Status and fixes:
+
+ - a rare but grave bug has been fixed; it made ArabTeX explode
+ on <sa'AmaTuN> and a few related words.
+ - to fix the bug, the internal interface of "aparse.sty",
+ "awrite.sty", and "aligs.sty" had to be altered drastically.
+
+ Changes: none
+
+--------------------------------------------------------------------------
+03.05.92: Version 2.02
+
+ Status and fixes:
+
+ - there have been extensive changes to nearly all "*.sty" files
+ - the Nasta'liq font is still missing; sorry, but at the moment
+ there is no free time to design it. For the meantime, Naskh will
+ be substituted automatically, and should be readable.
+ - the problem with ^ and _ has been fixed; they now work correctly
+ in all modes
+ - the <~n> problem has been fixed
+ - the prefix <li-> before <alif> with <hamza> below now works, as
+ e.g. in <li-'ism>
+ - short Arabic quotations may be used in moving arguments in
+ LaTeX, e.g. section names, frameboxes, captions, margin notes
+ and the like
+ - Farsi and related languages: <izafet> and <yah-i-wahdat> now
+ seem to work correctly.
+
+ Changes:
+
+ - in Farsi and related languages, the final <hah> after <a> and
+ <e> is NO MORE generated automatically; you have to write it
+ explicitly if you want it. THIS IS NO BUG: the old strategy was
+ found to be inconsistent.
+ - the additional option \showtrue will echo the ASCII input
+ verbatim; \showfalse will switch this mode off again. This
+ feature is intended for test purposes; it might not work in all
+ contexts, and could disappear again.
+ - there is a new file "apatch.sty" which is loaded automatically
+ and will contain last minute corrections (none at the moment)
+
+ Open problems:
+
+ - see "bugs" and "fixes" below
+
+ Hints:
+
+ - with LaTeX, the option "arabtex" should ONLY be followed by its
+ local sub-options like "nashbf" or "atrans"; put other options
+ BEFORE it and DON'T define any own commands that use "<"; use
+ ">" instead.
+ - with Plain TeX, define your own macros BEFORE "\input arabtex".
+
+ How to move from version 2.00 or 2.01:
+
+ - replace all *.sty files, including "apatch.sty" (new)
+ - the font has NOT changed, leave it alone
+ - there is a new demo for Farsi: "omar.tex"
+
+--------------------------------------------------------------------------
+15.04.92: Version 2.01 (was available on direct request)
+
+ Status and fixes:
+
+ - Temporary patch for the ^ and _ problem (thanks, Bernd Raichle!)
+ but still does not work in moving arguments
+
+ More known bugs:
+
+ - \footnote does not work (we never promised it would, but will
+ think about it)
+ - \footnotemark may put the mark into unexpected places if used
+ within an Arabic Environment; however:
+ \footnotetext works outside Arabic Environments even with Arabic
+ text in angle brackets
+ - the prefix <li-> as in <li-'ism> will produce garbage
+ - <~n> will blow up
+
+ How to get the version: DON'T, this version is obsolete
+
+--------------------------------------------------------------------------
+10.04.92: Version 2.0
+
+ Version 2.00 is here at last. See "README".
+
+ Changes from version 1:
+
+ - now compatible with Plain TeX
+ - new (hopefully) better looking font
+ - many ligatures generated automatically
+ - support for Farsi, Urdu, Pashto, Ottoman, Maghribi
+ - some more documentation
+ - the input coding has changed slightly
+
+ Implementation status:
+
+ - all macro files have version number 2.00
+ - only fonts nash14 and nash14bf, no nasta`liq font yet available
+ - ArabTeX was developed on a PC AT with emTeX and is known also to
+ run on a PC XT and a U*IX work station; therefore it is
+ supposed to be easily portable
+ - language options other than Arabic have not been extensively
+ tested
+
+ Known bugs:
+
+ - control sequences inside of curly braces do not work
+ - arabic insertions may still be started with <
+ - < is an active character and may conflict with the user's macros
+ - ^ and _ do not work correctly in math environments
+ - some troubles with <izafet> in Farsi
+
+--------------------------------------------------------------------------
+ Prof. Klaus Lagally
+ Institut fuer Informatik
+ Universitaet Stuttgart
+ Breitwiesenstrasse 20-22
+ D-70565 Stuttgart
+ GERMANY
+
+ lagally@informatik.uni-stuttgart.de
+ FAX: +49 - 711 - 7816 370
+--------------------------------------------------------------------------
+ Copyright (c) 1990 - 1997, Klaus Lagally
+--------------------------------------------------------------------------
diff --git a/language/arabic/arabtex/doc/txt/hebrew.305 b/language/arabic/arabtex/doc/txt/hebrew.305
new file mode 100644
index 0000000000..7e77654aeb
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/hebrew.305
@@ -0,0 +1,171 @@
+HEBREW.305 17.04.1997
+--------------------------------------------------------------------------
+ Processing Hebrew with ArabTeX Version 3.05
+ ===========================================
+ These features are not yet described in the User Manual!
+--------------------------------------------------------------------------
+
+ To process Hebrew input with ArabTeX, you have to load the Hebrew
+ extension "hebtex.sty" that will load several additional modules.
+ After ArabTeX has been loaded, proceed as follows:
+
+ - with LaTeX2e say: \usepackage {hebtex}
+
+ - with LaTeX 2.09: add the style option "hebtex".
+
+ - for use with Plain TeX, say "\input hebtex"; ArabTeX AND the
+ Hebrew extension will be loaded.
+
+ The extension provides a language mode \sethebrew, and several
+ common encodings of texts in Hebrew, that may be switched by
+ the \setcode command. One of the encodings is compatible with
+ Dov Grobgeld's editor HED, so files prepared for HebrewTeX are
+ supposed to be compatible, including most HebrewTeX commands
+ (the Hebrew date quite probably does NOT work correctly).
+ Hebrew "newcode" encoding probably works too, but has not yet
+ been tested. In addition, the standard ArabTeX encoding has been
+ extended to cater for Hebrew too.
+
+ Language switching:
+
+ - \sethebrew switches to Hebrew mode, \setarab back to Arabic.
+ Remember to switch the encoding and the vowelization mode too!
+
+ Standard encoding:
+
+ - \setcode {standard} or \setcode {arabtex}
+ switches to the standard encoding, defined as follows:
+
+ ' aleph b beth g gimel d daleth
+ h heh w waw z zayin _h chet
+ _t teth y yod k kaph l lamed
+ m mem n nun s samekh ` ayin
+ p peh .s sade q qof r resh
+ ,s sin ^s shin S s(h)in t taw
+
+ Note: without punctuation, sin, shin and s(h)in look identical;
+ otherwise "sin" has a dot to the left, "shin" has a dot to the
+ right, "s(h)in" is the form without a dot.
+
+ There are some alternative encodings for soft consonants:
+
+ v for b f for p
+
+ - \vocalize (default) switches on vowels and special punctuation;
+ \novocalize switches them off again.
+
+ "dagesh lene" with "bgdkpt" and "mappiq" with "h" is expressed
+ by prefixing a dot:
+ ".b", ".g", ".d", ".k", ".p", ".t"; ".h"
+
+ Vowels are encoded as follows:
+
+ short long defective half
+ vowels vowels notation vowels
+
+ a pathach A qames .a chateph patach
+ e segol E sere yod _e sere .e chateph segol
+ i chireq I chireq yod .i shewa
+ o qames chatuph O cholem waw _o cholem .o chateph qames
+ u qibbus U shureq .u no vowel mark
+
+ The "matres lectionis" can also be written explicitly, e.g.,
+ "_ey" for "E", "iy" for "I", "_ow" for "O"
+
+ - "patach furtivum" is written ".a" BEFORE its carrier: "rU.a_h".
+
+ - "dagesh forte" is expressed by doubling the consonant; thus two
+ equal consonants in sequence (even in \novocalize mode) must
+ be separated by some short vowel indicator (or ".u"), if the
+ standard encoding is used.
+
+ - "dagesh orthophonicum" is coded like "dagesh forte".
+
+ - "meteg" is indicated by | after the vowel.
+
+ - "maqqef" is -- (en-dash; a single hyphen will be ignored)
+
+ - Prefixes may be separated by a single hyphen, which appears in
+ the transcription without changing the Hebrew writing.
+
+ - For those rare cases where a consonant is missing, input "|
+ (quote bar); this may also carry vowels.
+
+ - "raphe" and cantillation marks are not supported.
+
+ Abbreviations may not be used in this mode as we know of no
+ obvious way of indicating them (sorry; any ideas ?).
+
+ Other encodings:
+
+ - \setcode {hed}, \setcode {newcode} or \setcode {iso8859-8}
+ activates the verbatim reading module for the Hebrew characters
+ in code positions 128 .. 154 as generated by HED, and also
+ in code positions 224 .. 250 ("newcode", ISO 8859-8).
+
+ If this encoding is used, vowel points, dagesh and meteg cannot
+ be used as they cannot be represented in the input encoding.
+ Abbreviations may be expressed by a single or double apostrophe
+ (right quote). The final and the medial forms of characters are
+ equivalent; ArabTeX chooses the appropriate shape automatically.
+
+ - setcode {bhs} switches to the encoding used in the machine-
+ readable version of BHS. Add "bhs" as a LaTeX style option,
+ or say \input bhs.sty. The line-breaks of the source are
+ (usually) respected. BHS line numbers and comments are only
+ partially supported.
+
+ Transcription systems:
+
+ - \transtrue activates the standard ZDMG transcription, and
+ there are provisions for additional transcription systems:
+
+ - \settrans {zaw) switches to the conventions of "Zeitschrift
+ fuer die Alttestamentliche Wissenschaft" (recommended);
+
+ - \settrans {gesenius} activates the system used in W. Gesenius'
+ Hebrew Grammar, 26th edition (deprecated).
+
+ - \settrans {standard} restores the standard ZDMG transcription.
+
+ Fonts:
+
+ - Presently ArabTeX provides no own Hebrew font but uses the font
+ "hclassic" which can be downloaded e.g., from
+
+ ftp://noa.huji.ac.il/tex/fonts
+ ftp://ftp.dante.de/tex-archive/language/hebrew/fonts
+ ftp://ftp.tex.ac.uk/tex-archive/language/hebrew/fonts
+
+ This font has been designed by Joel Hoffman, who also wrote some
+ macro packages from which we took a few ideas for positioning
+ punctuation.
+
+ - If no vowel points are required, the standard fonts "DeadSea",
+ "OldJaffa", TelAviv", and "Jerusalem" can also be used. They
+ are activated by the commands \ds, \oj, \ta, \jm; \hc switches
+ to the default "hclassic" font.
+
+ - The "Shalom" family of fonts is activated by \shlmold, \shlmscr,
+ and \shlmstk. Their vowel points presently do NOT work.
+
+ - In case a font is not found but locally available, check and,
+ if required, correct the exact spelling of the font name within
+ the file "Uheb.fd". There are various variants on the Net.
+
+ - Comments and bug reports are welcome.
+
+--------------------------------------------------------------------------
+ Prof. Klaus Lagally
+ Institut fuer Informatik
+ Universitaet Stuttgart
+ Breitwiesenstrasse 20-22
+ D-70565 Stuttgart
+ GERMANY
+
+ lagally@informatik.uni-stuttgart.de
+--------------------------------------------------------------------------
+ Copyright (c) 1997, Klaus Lagally
+--------------------------------------------------------------------------
+
+
diff --git a/language/arabic/arabtex/doc/txt/install.txt b/language/arabic/arabtex/doc/txt/install.txt
new file mode 100644
index 0000000000..c980ef8500
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/install.txt
@@ -0,0 +1,176 @@
+INSTALL 17.09.2001
+--------------------------------------------------------------------------
+ ArabTeX Version 3.10
+ ====================
+--------------------------------------------------------------------------
+ The ArabTeX package is distributed as one of the following
+ binary files:
+
+ arabtex.zip for PC users:
+ The ArabTeX package in compressed ZIP format.
+ Unpack with (PK)UNZIP as a directory tree.
+
+ arabtex.tar.Z for UNIX users:
+ The ArabTeX package in compressed tar format.
+ Unpack as a directory tree.
+
+ In addition, there may be ASCII files "apatch.sty", "hepatch.sty"
+ with last minute corrections. These are not difference files;
+ just put them on the TEXINPUT path.
+
+ Depending on the server there may also be the unpacked files.
+
+ The binary package, if complete, should contain at least:
+
+ Main directory: (ASCII files and subdirectories)
+ ---------------
+ announce.txt describing the current version
+ arabtex.htm general information in HTML format
+ arabtex.gif the ArabTeX logo
+ changes.txt release history and known bugs
+ install.txt THIS file
+ readme.txt general information
+ lppl.txt license information
+
+ doc subdirectory containing documentation
+ texinput subdirectory containing the TeX macros
+ mfinput subdirectory containing the METAFONT sources
+ tfm subdirectory containing the TFM font files
+ laser.pk subdirectory containing 300 dpi pixel files
+ psfonts subdirectory containing T1 Postscript fonts
+ examples subdirectory containing some examples
+
+ Subdirectory "texinput": (ASCII files)
+ ----------------------
+ manifest.txt list of contents
+ .
+ arabtex.sty LaTeX 2e package, LaTeX 2.09 style option: driver
+ arabtex.tex loader and patches for use with Plain TeX
+ hebtex.tex Hebrew mode: loader for use with Plain TeX
+ .
+ about 40 ASCII files containing the ArabTeX macros
+ .
+ miscellaneous utility files (usually not required)
+
+ Subdirectory "report": (ASCII files) (deleted)
+ ---------------------
+ The old user manual that used to be here has been superseded by
+ a new PDF version "doc/arabdoc.pdf"
+
+ Subdirectory "mfinput": (ASCII files)
+ ---------------------
+ nash14.mf METAFONT driver file for font nash14
+ nash14bf.mf METAFONT driver file for font nash14bf
+
+ nash.mf the following files will be loaded automatically:
+ nashbase.mf
+ nashchar.mf
+ nashdia.mf
+ nashdig.mf
+ nashlig.mf
+ nashspec.mf
+ arabsymb.mf
+
+ hclassic.mf Hebrew font by Joel Hoffman
+ hcaption.mf Hebrew font by Joel Hoffman
+ hcbase_p.mf
+
+ xnsh14.mf driver file for font xnsh14
+ xnsh14bf.mf driver file for font xnsh14bf
+ several additional files will be loaded on demand
+
+ Subdirectory "tfm": (Binary files)
+ -------------------
+ hclassic.tfm TeX font metrics
+ hcaption.tfm
+ nash14.tfm TeX font metrics
+ nash14bf.tfm
+ xnsh14.tfm
+ xnsh14bf.tfm
+ yarborn.tfm
+
+ Subdirectory "laser.pk": (Binary files)
+ -------------------
+ nash14.300pk bitmaps in PK format at 300 dpi
+ nash14.329pk \magstephalf
+ nash14.360pk \magstep 1
+ nash14.432pk \magstep 2
+ nash14.518pk \magstep 3
+ nash14.622pk \magstep 4
+ nash14.746pk \magstep 5
+ nash14bf.300k etc.: the same for the font nash14bf
+ analogous files for the other fonts provided
+
+ The font files are customized for a HP Laserjet with 300 dpi
+ resolution. If that does not suit your needs, recompile the
+ sources with METAFONT.
+
+ NOTE: On systems using the 8+3 file naming convention you may
+ have to move the bitmap files to several directories and to
+ rename them according to local conventions.
+
+ Subdirectory "psfonts": (Binary files)
+ ---------------------
+ arabtex.map font description for DVIPS
+ xnsh14.pfb T1 font
+ xnsh14bf.pfb T1 font
+
+ Subdirectory "doc": documentation
+ ---------------------
+ arabdoc.pdf user manual (incomplete, in progress)
+
+ Subdirectory "html": HTML and GIF files
+ ---------------------
+ arabtex.htm documentation in HTML format
+ refer.htm references
+ changes.htm current status
+ chg310.htm
+ some auxiliary files
+
+ Subdirectory "txt": ASCII documentation
+ ---------------------
+ hebrew.305 details on the Hebrew extension
+ readme.305 additional details
+ arabtex.doc a short introduction (rather old)
+ arabtex.faq answers to some Frequently Asked Questions
+ arwindos.tex notes on Windows CP 1256 encoding support
+ malay.tex
+ sindhi.tex notes on various extensions
+ uighur.tex
+ changes2.txt older release history
+
+ Subdirectory "patches": (ASCII) sub-versions
+ ---------------------
+ apatch.sty current sub-version
+ hepatch.sty
+ apatch03.10-
+ hepatch3.10-
+ . former sub-versions as applicable
+
+ Subdirectory "examples": (ASCII and binary files)
+ ---------------------
+ guha.tex a small LaTeX demo
+ guha.dvi the demo output in DVI format
+ guha.ps the demo output in PostScript format
+ omar.tex a small demo for Farsi
+ ligtable.tex a LaTeX demo showing many ligatures
+ .
+ some more example files in PS or DVI format
+
+ NOTE: Depending on the structure of your TeX installation you may
+ have to move the subdirectories to other places and/or to issue
+ some command to refresh the TeX system. This is strongly dependent
+ on the local configuration; possibly ask some local TeX guru.
+
+--------------------------------------------------------------------------
+ Prof. Klaus Lagally
+ Institut fuer Informatik
+ Universitaet Stuttgart
+ Breitwiesenstrasse 20-22
+ D-70565 Stuttgart
+ GERMANY
+
+ lagally@informatik.uni-stuttgart.de
+--------------------------------------------------------------------------
+ Copyright (c) 1990 - 2001, Klaus Lagally
+--------------------------------------------------------------------------
diff --git a/language/arabic/arabtex/doc/txt/kashmiri.tex b/language/arabic/arabtex/doc/txt/kashmiri.tex
new file mode 100644
index 0000000000..440de9f94c
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/kashmiri.tex
@@ -0,0 +1,123 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\documentclass[12pt]{article}
+\usepackage{arabtex}
+\usepackage{kashmiri}
+
+%\advance \topsep -10mm
+%\advance \textwidth 10mm
+%\advance \textheight 10mm
+\parindent 0pt
+\parskip 2mm
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\begin{document}
+\setkashmiri
+
+\title{Kashmiri in Arab\TeX}
+\author {Klaus Lagally}
+%\date {}
+\maketitle
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%\makeatletter
+%\urd@false
+
+\begin{table}[tbph]
+\begin{center}
+\Large \tt
+\def <#1>{\<#1> &{\arabfalse \transtrue \<#1>}}
+\begin{tabular}{||c|c|c||c|c|c||c|c|c||c|c|c||}
+\hline
+a &<a> &d &<d> &.d &<.d> &m &<m> \\
+b &<b> &,d &<,d> &.t &<.t> &n &<n> \\
+p &<p> &\_d &<_d> &.z &<.z> &w &<w> \\
+t &<t> &r &<r> &` &<`> &,h &<,h> \\
+,t &<,t> &,r &<,r> &.g &<.g> &y &<y> \\
+\_t &<_t> &z &<z> &f &<f> &h &<h> \\
+j &<j> &\^{}z &<^z> &q &<q> &E &<E> \\
+\^{}c &<^c> &s &<s> &k &<k> &' &<|'> \\
+.h &<.h> &\^{}s &<^s> &g &<g> &T &<T> \\
+\_h &<_h> &.s &<.s> &l &<l> &.y &<B.yB> \\
+\hline
+a &<B|BaB>&i &<B|BiB>&u &<B|BuB>&.o &<B.o> \\
+A &<BA> &I &<BIB> &U &<BU> &.O &<B.O> \\
+.a &<B|B.aB>&.u &<B|B.uB>&o &<Bo> &e &<BeB> \\
+.A &<B.A> &.U &<B|B.UB>&O &<BO> &E &<BEB> \\
+\hline
+\end{tabular}
+\rm
+\caption{The Kashmiri Alphabet}
+\label{codes}
+\end{center}
+\end{table}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\bigskip
+
+There is a new experimental Arab\TeX\ language module {\tt kashmiri.sty}
+for processing Kashmiri texts in the extended Perso-Arabic script.
+This mode works only with Arab\TeX\ version 3.08g or later versions,
+and requires the font ``xnash14''.
+
+To activate Kashmiri mode,
+load the module by \verb+\input{kashmiri.sty}+
+(or else \verb+\usepackage{kashmiri}+ with \LaTeX2e),
+and select the language by \verb+\setkashmiri+.
+Kashmiri input texts are encoded in a modification of the
+standard \ArabTeX\ encoding.
+
+The input codes and the default transcription are given
+in Table~\ref {codes} on page~\pageref {codes}.
+The transcription follows the ALA-LC romanization conventions.
+
+Comments on the encoding and the transcription are welcome.
+Kashmiri mode might later
+become part of the \ArabTeX\ system proper;
+in that case explicit loading of the module will no more be necessary.
+
+\iffalse
+%\bigskip
+%Notes:
+\begin{enumerate}
+\itemsep 0pt
+\item
+This is a preliminary version solely
+intended for inspection, experiments, evaluation, and suggestions.
+The final version may differ in details, depending on feedback
+by the users.
+
+\item
+Use hyphens to resolve ambiguities with aspired consonants.
+
+\item
+If the new font is not available,
+the ``wide letter kaf'' is missing.
+We temporarily substitute an ordinary letter kaf with four dots,
+which does not exist, but should be conspicuous enough.
+%Once the font will have been extended, the substitute should disappear.
+
+\item
+Tanween works as expected: \verb+miN+ <miN> , \verb+'|iN+ <'|iN> .
+
+\item
+The user may want to break some ligatures by inserting a vertical bar,
+to get the correct writing, or just for a better appearance of the script.
+
+\end{enumerate}
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\bigskip
+
+{Klaus Lagally\\
+Institut f\"ur Informatik\\
+Breitwiesenstra\ss e 20--22\\
+D-70565 Stuttgart\\
+GERMANY\\
+\tt mailto:lagallyk@acm.org}
+%\date{August 06, 1997}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\end{document}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/doc/txt/lppl.txt b/language/arabic/arabtex/doc/txt/lppl.txt
new file mode 100644
index 0000000000..66db1e0a90
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/lppl.txt
@@ -0,0 +1,318 @@
+
+The LaTeX Project Public License
+=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+
+LPPL Version 1.2 1999-09-03
+
+Copyright 1999 LaTeX3 Project
+ Everyone is allowed to distribute verbatim copies of this
+ license document, but modification of it is not allowed.
+
+
+PREAMBLE
+========
+
+The LaTeX Project Public License (LPPL) is the license under which the
+base LaTeX distribution is distributed.
+
+You may use this license for any program that you have written and wish
+to distribute. This license may be particularly suitable if your
+program is TeX-related (such as a LaTeX package), but you may use it
+even if your program is unrelated to TeX. The section `WHETHER AND HOW
+TO DISTRIBUTE PROGRAMS UNDER THIS LICENSE', below, gives instructions,
+examples, and recommendations for authors who are considering
+distributing their programs under this license.
+
+In this license document, `The Program' refers to any program
+distributed under this license.
+
+This license gives conditions under which The Program may be distributed
+and conditions under which modified versions of The Program may be
+distributed. Individual files of The Program may bear supplementary
+and/or superseding conditions on modification of themselves and on the
+distribution of modified versions of themselves, but *no* file of The
+Program may bear supplementary or superseding conditions on the
+distribution of an unmodified copy of the file. A distributor wishing
+to distribute a complete, unmodified copy of The Program therefore
+needs to check the conditions only in this license and nowhere else.
+
+Activities other than distribution and/or modification of The Program
+are not covered by this license; they are outside its scope. In
+particular, the act of running The Program is not restricted.
+
+We, the LaTeX3 Project, believe that the conditions below give you
+the freedom to make and distribute modified versions of The Program
+that conform with whatever technical specifications you wish while
+maintaining the availability, integrity, and reliability of
+The Program. If you do not see how to achieve your goal while
+meeting these conditions, then read the document `cfgguide.tex'
+in the base LaTeX distribution for suggestions.
+
+
+CONDITIONS ON DISTRIBUTION AND MODIFICATION
+===========================================
+
+You may distribute a complete, unmodified copy of The Program.
+Distribution of only part of The Program is not allowed.
+
+You may not modify in any way a file of The Program that bears a legal
+notice forbidding modification of that file.
+
+You may distribute a modified file of The Program if, and only if, the
+following eight conditions are met:
+
+ 1. You must meet any additional conditions borne by the file on the
+ distribution of a modified version of the file as described below
+ in the subsection `Additional Conditions on Individual Files of
+ The Program'.
+
+ 2. If the file is a LaTeX software file, then you must meet any
+ applicable additional conditions on the distribution of a modified
+ version of the file that are described below in the subsection
+ `Additional Conditions on LaTeX Software Files'.
+
+ 3. You must not distribute the modified file with the filename of the
+ original file.
+
+ 4. In the modified file, you must acknowledge the authorship and
+ name of the original file, and the name (if any) of the program
+ which contains it.
+
+ 5. You must change any identification string in the file to indicate
+ clearly that the modified file is not part of The Program.
+
+ 6. You must change any addresses in the modified file for the
+ reporting of errors in the file or in The Program generally to
+ ensure that reports for files no longer maintained by the original
+ maintainers will be directed to the maintainers of the modified
+ files.
+
+ 7. You must distribute the modified file under a license that forbids
+ distribution both of the modified file and of any files derived
+ from the modified file with the filename of the original file.
+
+ 8. You must do either (A) or (B):
+
+ (A) distribute a copy of The Program (that is, a complete,
+ unmodified copy of The Program) together with the modified
+ file; if your distribution of the modified file is made by
+ offering access to copy the modified file from a designated
+ place, then offering equivalent access to copy The Program
+ from the same place meets this condition, even though third
+ parties are not compelled to copy The Program along with the
+ modified file;
+
+ (B) provide to those who receive the modified file information
+ that is sufficient for them to obtain a copy of The Program;
+ for example, you may provide a Uniform Resource Locator (URL)
+ for a site that you expect will provide them with a copy of
+ The Program free of charge (either the version from which
+ your modification is derived, or perhaps a later version).
+
+Note that in the above, `distribution' of a file means making the
+file available to others by any means. This includes, for instance,
+installing the file on any machine in such a way that the file is
+accessible by users other than yourself. `Modification' of a file
+means any procedure that produces a derivative file under any
+applicable law -- that is, a file containing the original file or
+a significant portion of it, either verbatim or with modifications
+and/or translated into another language.
+
+Changing the name of a file (other than as necessitated by the file
+conventions of the target file systems) is considered to be a
+modification of the file.
+
+The distribution conditions in this license do not have to be
+applied to files that have been modified in accordance with the
+above conditions. Note, however, that Condition 7. does apply to
+any such modified file.
+
+The conditions above are not intended to prohibit, and hence do not
+apply to, the updating, by any method, of a file so that it becomes
+identical to the latest version of that file of The Program.
+
+
+
+A Recommendation on Modification Without Distribution
+-----------------------------------------------------
+
+It is wise never to modify a file of The Program, even for your own
+personal use, without also meeting the above eight conditions for
+distributing the modified file. While you might intend that such
+modified files will never be distributed, often this will happen by
+accident -- you may forget that you have modified the file; or it may
+not occur to you when allowing others to access the modified file
+that you are thus distributing it and violating the conditions of
+this license. It is usually in your best interest to keep your copy
+of The Program identical with the public one. Many programs provide
+ways to control the behavior of that program without altering its
+licensed files.
+
+
+Additional Conditions on Individual Files of The Program
+--------------------------------------------------------
+
+An individual file of The Program may bear additional conditions that
+supplement and/or supersede the conditions in this license if, and only
+if, such additional conditions exclusively concern modification of the
+file or distribution of a modified version of the file. The conditions
+on individual files of The Program therefore may differ only with
+respect to the kind and extent of modification of those files that
+is allowed, and with respect to the distribution of modified versions
+of those files.
+
+
+Additional Conditions on LaTeX Software Files
+---------------------------------------------
+
+If a file of The Program is intended to be used with LaTeX (that is,
+if it is a LaTeX software file), then the following additional
+conditions, which supplement and/or supersede the conditions
+above, apply to the file according to its filename extension:
+
+ - You may not modify any file with filename extension `.ins' since
+ these are installation files containing the legal notices that are
+ placed in the files they generate.
+
+ - You may distribute modified versions of files with filename
+ extension `.fd' (LaTeX font definition files) under the standard
+ conditions of the LPPL as described above. You may also distribute
+ such modified LaTeX font definition files with their original names
+ provided that:
+ (1) the only changes to the original files either enable use of
+ available fonts or prevent attempts to access unavailable fonts;
+ (2) you also distribute the original, unmodified files (TeX input
+ paths can be used to control which set of LaTeX font definition
+ files is actually used by TeX).
+
+ - You may distribute modified versions of files with filename
+ extension `.cfg' (configuration files) with their original names.
+ The Program may (and usually will) specify the range of commands
+ that are allowed in a particular configuration file.
+
+Because of portability and exchangeability issues in LaTeX software,
+The LaTeX3 Project deprecates the distribution of modified versions of
+components of LaTeX or of generally available contributed code for them,
+but such distribution can meet the conditions of this license.
+
+
+NO WARRANTY
+===========
+
+There is no warranty for The Program. Except when otherwise stated in
+writing, The Copyright Holder provides The Program `as is', without
+warranty of any kind, either expressed or implied, including, but not
+limited to, the implied warranties of merchantability and fitness for
+a particular purpose. The entire risk as to the quality and performance
+of The Program is with you. Should The Program prove defective, you
+assume the cost of all necessary servicing, repair, or correction.
+
+In no event unless agreed to in writing will The Copyright Holder, or
+any author named in the files of The Program, or any other party who may
+distribute and/or modify The Program as permitted above, be liable to
+you for damages, including any general, special, incidental or
+consequential damages arising out of any use of The Program or out of
+inability to use The Program (including, but not limited to, loss of
+data, data being rendered inaccurate, or losses sustained by anyone as
+a result of any failure of The Program to operate with any other
+programs), even if The Copyright Holder or said author or said other
+party has been advised of the possibility of such damages.
+
+
+WHETHER AND HOW TO DISTRIBUTE PROGRAMS UNDER THIS LICENSE
+=========================================================
+
+This section contains important instructions, examples, and
+recommendations for authors who are considering distributing their
+programs under this license. These authors are addressed as `you' in
+this section.
+
+
+Choosing This License or Another License
+----------------------------------------
+
+If for any part of your program you want or need to use *distribution*
+conditions that differ from those in this license, then do not refer to
+this license anywhere in your program but instead distribute your
+program under a different license. You may use the text of this license
+as a model for your own license, but your license should not refer to
+the LPPL or otherwise give the impression that your program is
+distributed under the LPPL.
+
+The document `modguide.tex' in the base LaTeX distribution explains
+the motivation behind the conditions of this license. It explains,
+for example, why distributing LaTeX under the GNU General Public
+License (GPL) was considered inappropriate. Even if your program is
+unrelated to LaTeX, the discussion in `modguide.tex' may still be
+relevant, and authors intending to distribute their programs under any
+license are encouraged to read it.
+
+
+How to Use This License
+-----------------------
+
+To use this license, place in each of the files of your program both
+an explicit copyright notice including your name and the year and also
+a statement that the distribution and/or modification of the file is
+constrained by the conditions in this license.
+
+Here is an example of such a notice and statement:
+
+ %% pig.dtx
+ %% Copyright 2001 M. Y. Name
+ %
+ % 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.
+ %
+ % This program consists of the files pig.dtx and pig.ins
+
+Given such a notice and statement in a file, the conditions given in
+this license document would apply, with `The Program' referring to the
+two files `pig.dtx' and `pig.ins', and `The Copyright Holder' referring
+to the person `M. Y. Name'.
+
+
+Important Recommendations
+-------------------------
+
+ Defining What Constitutes The Program
+
+ The LPPL requires that distributions of The Program contain all the
+ files of The Program. It is therefore important that you provide a
+ way for the licensee to determine which files constitute The Program.
+ This could, for example, be achieved by explicitly listing all the
+ files of The Program near the copyright notice of each file or by
+ using a line like
+
+ % This program consists of all files listed in manifest.txt.
+
+ in that place. In the absence of an unequivocal list it might be
+ impossible for the licensee to determine what is considered by you
+ to comprise The Program.
+
+ Noting Exceptional Files
+
+ If The Program contains any files bearing additional conditions on
+ modification, or on distribution of modified versions, of those
+ files (other than those listed in `Additional Conditions on LaTeX
+ Software Files'), then it is recommended that The Program contain a
+ prominent file that defines the exceptional conditions, and either
+ lists the exceptional files or defines one or more categories of
+ exceptional files.
+
+ Files containing the text of a license (such as this file) are
+ often examples of files bearing more restrictive conditions on
+ modification. LaTeX configuration files (with filename extension
+ `.cfg') are examples of files bearing less restrictive conditions
+ on the distribution of a modified version of the file. The
+ additional conditions on LaTeX software given above are examples
+ of declaring a category of files bearing exceptional additional
+ conditions.
+
+
+
diff --git a/language/arabic/arabtex/doc/txt/malay.tex b/language/arabic/arabtex/doc/txt/malay.tex
new file mode 100644
index 0000000000..bec04dbad1
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/malay.tex
@@ -0,0 +1,61 @@
+\documentclass[12pt]{article}
+\usepackage{arabtex}
+
+\parindent 0pt
+\parskip 2mm
+
+\advance \textwidth 10mm
+\advance \textheight 10mm
+\thispagestyle{empty}
+
+\makeatletter
+\def \({\a@verb}
+\makeatother
+
+\begin{document}
+\title{Old Malay in Arab\TeX}
+\author
+{Klaus Lagally\\
+Institut f\"ur Informatik\\
+Breitwiesenstra\ss e 20--22\\
+D-70565 Stuttgart\\
+GERMANY\\
+\tt mailto:lagallyk@acm.org
+}
+\date{August 06, 1997}
+\maketitle
+
+\setmalay
+%\vocalize
+
+\vspace*{-05mm}
+There is a new Arab\TeX\ language mode, \verb+\setmalay+,
+for processing Old Malay texts in the extended Arabic writing.
+
+This mode works only with Arab\TeX\ version 3.06 or later.
+
+Old Malay input texts are encoded in a modification of the
+standard \ArabTeX\ encoding, see below.
+
+This language mode is strictly experimental
+and expected to contain many errors.
+Please report your experience and suggestions
+for changes and improvements to the author.
+
+Additional encodings (note the variants):
+
+\begin{center}
+\Large
+\begin{tabular}{|cc|c|}
+\hline
+\verb+p+ & &<p> \\
+\verb+g+ & &<g> \\
+\verb+v+ & &<v> \\
+\verb+ng+ &\verb+~g+ &<ng>\\
+\verb+ny+ &\verb+~n+ &<ny>\\
+\verb+c+ &\verb+^c+ &<c> \\
+\hline
+\end{tabular}
+\end{center}
+
+\end{document}
diff --git a/language/arabic/arabtex/doc/txt/miktex.mai b/language/arabic/arabtex/doc/txt/miktex.mai
new file mode 100644
index 0000000000..0f1be054e5
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/miktex.mai
@@ -0,0 +1,93 @@
+From - Fri Oct 25 14:03:48 2002
+X-Mozilla-Status: 0001
+X-Mozilla-Status2: 00000000
+Return-Path: <pbb@aero-optics.com>
+Received: from ifi.informatik.uni-stuttgart.de (ifi [129.69.211.1])
+ by informatik.uni-stuttgart.de (8.9.3/8.9.3) with ESMTP id VAA11776
+ for <lagally@linde.informatik.uni-stuttgart.de>; Thu, 24 Oct 2002 21:48:24 +0200
+Received: from alias.acm.org (alias.acm.org [199.222.69.90]) by ifi.informatik.uni-stuttgart.de (8.9.3/2.2) with ESMTP id VAA19114 for <lagally@informatik.uni-stuttgart.de>; Thu, 24 Oct 2002 21:48:22 +0200 (MET DST)
+Received: from mr3.ash.ops.us.uu.net ([198.5.241.88])
+ by alias.acm.org (ACM Email Forwarding Service) with ESMTP id COB73880
+ for <lagallyk@acm.org>; Thu, 24 Oct 2002 15:49:48 -0400
+Received: from aero-optics.com by mr3.ash.ops.us.uu.net with ESMTP
+ (peer crosschecked as: AeroOptics-GW.CUSTOMER.DSL.ALTER.NET [206.114.228.171])
+ id QQnlzr17811
+ for <lagallyk@acm.org>; Thu, 24 Oct 2002 19:48:19 GMT
+Message-ID: <3DB84F29.3ED9EB87@aero-optics.com>
+Date: Thu, 24 Oct 2002 12:51:05 -0700
+From: "Peter B.C. Barton" <pbb@aero-optics.com>
+X-Sender: "Peter B.C. Barton" <mail247815@mail247815.smtpserver.pop.net> (Unverified)
+X-Mailer: Mozilla 4.61 [en]C-gatewaynet (WinNT; I)
+X-Accept-Language: en
+MIME-Version: 1.0
+To: lagallyk@acm.org
+Subject: Re: ArabTeX on the PC
+References: <3DB80D10.31734B8@aero-optics.com> <3DB844A2.9040900@informatik.uni-stuttgart.de>
+Content-Type: text/plain; charset=us-ascii
+Content-Transfer-Encoding: 7bit
+
+Professor Lagally,
+
+Your instructions and help are greatly appreciated. You asked to be notified
+if your instructions work - YES they do! For future reference (for other lost
+souls) the MiKTeX database is refreshed by running config.bat found in the
+C:\texmf\miktex\config directory.
+
+Peter Barton
+
+
+
+
+
+Klaus Lagally wrote:
+
+> Peter B.C. Barton wrote:
+> > Professor Lagally,
+> >
+> > I am not a "TeXpert" and have a question regarding ArabTeX compatibility
+> > on the PC. The ArabTeX homepage specifically mentions PCTeX and
+> > emTeX. I was hoping to employ ArabTeX using MiKTeX. I understand
+> > that ArabTeX will run on any standard implementation of TeX/LaTeX but I
+> > am not able to determine if MiKTeX is standard or non-standard. I
+> > would appreciate any words of advice.
+> >
+> > regards,
+> >
+> > Peter Barton
+>
+> MiKTeX is standard, and works well with ArabTeX. As far as I know MiKTeX
+> uses the standard TeX Directory Structure; to install ArabTeX do the
+> following (according to folklore I cannot check):
+>
+> - unpack ARABTEX.ZIP into some temporary directory, keeping the
+> subdirectory structure intact.
+>
+> - locate your LOCAL TeXMF tree (probably C:\localtexmf\) and therein create:
+>
+> -- a subdirectory \tex\latex\arabtex\ for all files within TEXINPUT
+> -- a subdirectory \fonts\tfm\arabtex\ for all files within TFM
+> -- a subdirectory \fonts\source\arabtex\ for all files within MFINPUT
+> -- a subdirectory \fonts\type1\arabtex\ for all files within PSFONTS
+>
+> - move the files to the appropriate places. The file PSFONTS\arabtex.map
+> is used by DVIPS and should possibly go somewhere else, according to
+> your local needs.
+>
+> - call "texhash" or "texconfig" (or whatever the command is) to refresh
+> your TeX file name database.
+>
+> - move the documentation and whatever else is left over to some
+> convenient place.
+>
+> This is all I know about MiKTeX. Since I do not run Windows I cannot
+> check everything; please tell me if it works.
+>
+> Good luck!
+>
+> KL
+> --
+> Prof. Dr. Klaus Lagally | mailto:lagally@informatik.uni-stuttgart.de
+> Institut fuer Informatik | Tel. +49-711-7816392 | Zeige mir deine Uhr,
+> Breitwiesenstrasse 20-22 | FAX +49-711-7816370 | und ich sage dir,
+> 70565 Stuttgart, GERMANY | | wie spaet es ist.
+>
diff --git a/language/arabic/arabtex/doc/txt/readme.305 b/language/arabic/arabtex/doc/txt/readme.305
new file mode 100644
index 0000000000..79edc535ef
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/readme.305
@@ -0,0 +1,155 @@
+README.305 15.03.1997
+--------------------------------------------------------------------------
+ ArabTeX Version 3.05
+ ====================
+--------------------------------------------------------------------------
+ Additional features not described in the User Manual
+
+| For changes after version 3.02 see change bars in the margin
+--------------------------------------------------------------------------
+
+ 1. Bidirectional linebreaking
+ -----------------------------
+ Within a Roman paragraph, Arabic insertions may be included
+ by the construct \<Arabic text> ( <Arabic text> initially does
+ the same but may be redefined by the user for other purposes).
+ This construct, though efficient, has the inherent limitation
+ that the contents must fit on the current line, or else the
+ user has to break the text by \| or \break at some reasonable
+ place. Likewise, within an Arabic paragraph Roman insertions
+ may be included by <Roman text>, with the same limitations.
+
+ In many cases, as e.g. in the User Manual, insertions are very
+ short by nature, so the limitations pose no problem. For other
+ applications where the included quotations are much longer than
+ part of a line, some additional commands are provided. These are
+| much less efficient and also have a high demand on storage, so
+| they should only be used when necessary.
+
+ - \RL {Arabic text} allows an insertion of arbitrary length; the
+ lines will be broken automatically. Due to some limitations that
+ are inherent in TeX's algorithm, the line containing the start of
+ the insertion may come out underfull, and also its baseline may be
+ broken. Whenever this happens (only in main vertical mode, never
+ within footnotes, parboxes, or minipages), use of the command
+ \goodpar {paragraphs} may help (see below.)
+
+ - \LR {Roman text} does the same for long Roman insertions in an
+ Arabic paragraph. Here there is no problem with the baseline.
+
+ - \goodpar {Roman paragraphs} will fix the problems with \RL for
+ insertions within the included paragraphs, but might lead to main
+ memory overflow; so use it with care, or use Big TeX.
+
+ - \mbox {\RL {Arabic text}} is equivalent to \<Arabic text>: no
+ line-breaking, as usual.
+
+ - \RL in Arabic mode, and \LR in Roman mode, do no harm but are
+ redundant.
+
+ - the user may, at her/his own risk, include \LR portions within
+ \RL portions, and vice versa. This may lead to some interesting
+ effects (for details, see: Donald E. Knuth and Pierre MacKay,
+ Mixing right-to-left texts with left-to-right texts, TUGboat,
+ Volume 8(1987), No. 1, p. 14 - 25)
+
+--------------------------------------------------------------------------
+
+ 2. Processing Hebrew with ArabTeX
+ ---------------------------------
+ An experimental extension that (partially) supports Hebrew may
+ be installed by the LaTeX option "hebtex", or \input hebtex.sty.
+| It provides an additional language mode \sethebrew, and several
+| common encodings of texts in Hebrew, that may be switched by
+| the \setcode command. One of the encodings is compatible with
+| Dov Grobgeld's editor HED, so files prepared for HebrewTeX are
+|| supposed to be compatible, including most HebrewTeX commands
+|| (the Hebrew date quite probably does NOT work correctly).
+|| Hebrew "newcode" encoding (ISO 8859-8) probably works too, but
+ has not yet been tested extensively. In addition, the standard
+ ArabTeX transliteration encoding is also available.
+
+|| For more information, see the text file "hebrew.305". Please
+|| observe that the encoding of vowels written "plene" has been
+|| changed (due to user suggestions!)
+
+--------------------------------------------------------------------------
+
+ 3. Support for Arabic Windows
+ -----------------------------
+ Isam G. Ishaq programmed, and donated, a new reading module for
+| the Arabic encoding CP 1256 supported by Arabic Windows. It is
+ installed as a LaTeX option "arabwin" and may be activated by
+| \setcode {arabwin} or \setcode {cp1256}.
+ Some documentation is contained in the file "arwindoc.tex"; try
+ to process it with ArabTeX, or just read the ASCII text.
+
+ As we had little opportunity to test it, this module is supplied
+ as is, without any warranty (as usual), nor support.
+
+--------------------------------------------------------------------------
+
+ 4. Support for EDMAC
+ --------------------
+ In the transition from EDMAC 3.00 to EDMAC 3.15, some internal
+|| interfaces have changed. ArabTeX 3.05 will adjust itself to the
+ version used automatically.
+
+ The EDMAC commands \pstart, \pend, and \autopar can now also be
+ used within an Arabic paragraph.
+
+--------------------------------------------------------------------------
+
+| 5. Module Reporting
+| -------------------
+| A complete list of the modules loaded in a particular run will
+| be put into the log file (before the run statistics), if LaTeX
+| is used. This is believed to be useful when tracing down errors.
+| This list is also available to the user, even with Plain TeX,
+| as the contents of the new control sequence \arabtexconfig.
+| This feature may disappear again.
+
+--------------------------------------------------------------------------
+
+| 6. Running ArabTeX with LaTeX2e
+| -------------------------------
+| Up to now we experienced no problems; the only changes we found
+| necessary are loading ArabTeX and its suboptions not as class
+| options but by using the command \usepackage.
+
+--------------------------------------------------------------------------
+|| 7. Arabic document classes
+|| --------------------------
+|| The experimental LaTeX2e classes "arabart", "arabbook", "arabrep"
+|| extend the standard classes "article", "book", and "report" in
+|| two respects:
+||
+|| - The overall document layout has been "arabized": page numbers
+|| are in Indic numerals, and columns run from right to left.
+||
+|| - Within Arabic environments bracketed by \begin{arabtext} and
+|| \end{arabtext} most LaTeX commands are allowed, including all
+|| sectioning commands, \tabular, \tabbing, even \tableofcontents,
+|| and use an "Arabic looking" format. All arguments that denote
+|| text to be typeset are interpreted according to the currently
+|| activated Arabic encoding. Other arguments keep their standard
+|| meaning, including the preamble of \tabular, whose columns are
+|| processed from left to right (visual formatting).
+||
+|| - Outside of Arabic environments the LaTeX commands revert to the
+|| standard meaning.
+||
+|| The new classes are still in "alpha" status; reports are welcome.
+
+--------------------------------------------------------------------------
+ Prof. Klaus Lagally
+ Institut fuer Informatik
+ Universitaet Stuttgart
+ Breitwiesenstrasse 20-22
+ D-70565 Stuttgart
+ GERMANY
+
+ lagally@informatik.uni-stuttgart.de
+--------------------------------------------------------------------------
+| Copyright (c) 1990 - 1997, Klaus Lagally
+--------------------------------------------------------------------------
diff --git a/language/arabic/arabtex/doc/txt/readme.txt b/language/arabic/arabtex/doc/txt/readme.txt
new file mode 100644
index 0000000000..eef60b15d9
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/readme.txt
@@ -0,0 +1,92 @@
+README 23.10.2003
+--------------------------------------------------------------------------
+ ArabTeX Version 3
+ =================
+--------------------------------------------------------------------------
+ Last changes: Version 3.11d, 23.10.2003
+--------------------------------------------------------------------------
+ The set of files, of which THIS file is supposed to be part of,
+ contains a package extending the capabilities of TeX/LaTeX to
+ generate the arabic writing from an ASCII transliteration for
+ texts in several languages using the arabic script. Several other
+ common encodings are also supported.
+
+ The package is available in packed form as "arabtex.zip" and
+ "arabtex.tgz". Depending on the server there may be also the
+ unpacked files; check for the latest version of "apatch.sty"!
+
+ The following ASCII files give more detailed information:
+
+ arabtex.doc : a short introduction (rather out of date)
+ arabtex.faq : answers to some Frequently Asked Questions
+ (updated as necessary)
+ changes.txt : release history, new features, and known bugs
+ (updated as necessary)
+ changes2.txt : older release history up to version 3.00
+ install.txt : list of available files, and installation notes
+ apatch.sty : last minute corrections; put this file onto the
+ TEXINPUT path; it will patch automatically.
+ (updated as necessary)
+
+ There are also various additional documentation files.
+ A subdirectory "REPORT", if still present, is OBSOLETE.
+
+ There was a prototype, ArabTeX Version 1, which is now OBSOLETE.
+ Version 2 was the first complete release accompanied by a manual,
+ but is no more being maintained.
+
+ Version 3 is an upward compatible extension of Version 2 with
+ many new features, e.g. the possibility to read input files in the
+ ASMO 449, ISO 8859-6, and UTF-8 Codes, and many new commands for
+ better formatting of Arabic text, or catering for historic writing
+ styles. Versions from 3.05 onward contain a package to process
+ Hebrew, and provide long right-to-left insertions. For details,
+ consult the manual and the ASCII file "readme.305".
+
+ ArabTeX is copyrighted by the author. If you use the system for
+ scientific work please give appropriate credit to the software
+ and the author (e.g. in the colophon of a monograph.) We also
+ appreciate a complimentary copy of any scientific work produced
+ with ArabTeX.
+
+ ArabTeX may be redistributed and/or modified under the terms
+ of the LaTeX Project Public License distributed from CTAN
+ archives in the directory "macros/latex/base/lppl.txt"; either
+ version 1 of the License, or (at your option) any later version.
+
+ ArabTeX is an experimental system and supposed to change without
+ prior notice. Whoever will use it does so at her/his/its own risk.
+ We cannot take any responsibility on correct function, suitability
+ for whatever purpose, or correct documentation.
+
+ If you have any complaints or suggestions, please forward them to
+ the author. We shall consider any reasonable suggestion, but we
+ will use our own judgment on any changes, and our resources are
+ severely limited.
+
+ If problems turn up while running ArabTeX, please check first at
+ "ftp.informatik.uni-stuttgart.de" whether there is a new version,
+ or whether there are any new corrections in "apatch.sty". If the
+ problem goes away with the new version, please inform the server
+ you got ArabTeX from; otherwise send a bug report to the author.
+
+ The reference site "ftp.informatik.uni-stuttgart.de" always holds
+ the current version. We know that the CTAN servers "ftp.tex.ac.uk",
+ "ctan.tug.org", and "ftp.dante.de" mirror this site and update on
+ a regular schedule.
+
+ An empty E-Mail message to "arabtex@informatik.uni-stuttgart.de"
+ will produce a current status report.
+
+--------------------------------------------------------------------------
+ Prof. Klaus Lagally
+ Institut fuer Informatik
+ Universitaet Stuttgart
+ Breitwiesenstrasse 20-22
+ D-70565 Stuttgart
+ GERMANY
+
+ lagally@informatik.uni-stuttgart.de
+--------------------------------------------------------------------------
+ Copyright (c) 1990 - 2002, Klaus Lagally
+--------------------------------------------------------------------------
diff --git a/language/arabic/arabtex/doc/txt/sindhi.tex b/language/arabic/arabtex/doc/txt/sindhi.tex
new file mode 100644
index 0000000000..6df007c56c
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/sindhi.tex
@@ -0,0 +1,156 @@
+
+\documentclass[12pt]{article}
+\usepackage{arabtex}
+\usepackage{atrans}
+\advance \topsep -10mm
+\advance \textwidth 10mm
+\advance \textheight 10mm
+
+\begin{document}
+
+\title{Sindhi in Arab\TeX}
+\author
+{Klaus Lagally\\
+Institut f\"ur Informatik\\
+Breitwiesenstra\ss e 20--22\\
+D-70565 Stuttgart\\
+GERMANY\\
+\tt mailto:lagallyk@acm.org}
+\date{August 06, 1997}
+
+\maketitle
+
+\setsindhi
+
+There is a new Arab\TeX\ language mode, \verb+\setsindhi+,
+for processing Sindhi texts in the extended Arabic writing.
+
+This mode works only with Arab\TeX\ version 3.06 or later
+and requires an updated version of the font ``nash14''.
+These conditions are checked, if \LaTeX2$\varepsilon$ is used.
+For Plain \TeX\ there are no checks.
+
+To activate the Sindhi mode, select the language by \verb+\setsindhi+.
+Sindhi input texts are encoded in a modification of the
+standard \ArabTeX\ encoding.
+The alphabet is given in Table~\ref {codes}.
+
+For the use of the encoding, see Table~\ref {examples}.
+It contains all Sindhi letters,
+together with their input encoding and a typical example of use.
+For every line the external notation is also given.
+
+%\bigskip
+%Notes:
+\begin{enumerate}
+\itemsep 0pt
+\item
+This is a preliminary version solely
+intended for inspection, experiments, evaluation, and suggestions.
+The final version may differ in details, depending on feedback
+by the users.
+
+\item
+Use hyphens to resolve ambiguities with aspired consonants.
+
+\item
+If the new font is not available,
+the ``wide letter kaf'' is missing.
+We temporarily substitute an ordinary letter kaf with four dots,
+which does not exist, but should be conspicuous enough.
+%Once the font will have been extended, the substitute should disappear.
+
+\item
+Tanween works as expected: \verb+miN+ <miN> , \verb+'|iN+ <'|iN> .
+
+\item
+The user may want to break some ligatures by inserting a vertical bar,
+to get the correct writing, or just for a better appearance of the script.
+
+\end{enumerate}
+
+\begin{table}[tbp]
+\begin{center}
+\large
+\Large
+\tt
+\def <#1>{\<#1> &{\arabfalse \transtrue \<#1>}}
+\begin{tabular}{||c|c|c||c|c|c||c|c|c||c|c|c||}
+\hline
+a &<a> &\~{}n &<~n> &z &<z> &kh &<kh> \\
+b &<b> &\^{}c &<^c> &s &<s> &g &<g> \\
+:b &<:b> &\^{}ch &<^ch> &\^{}s &<^s> &:g &<:g> \\
+bh &<bh> &.h &<.h> &.s &<.s> &gh &<gh> \\
+t &<t> &\_h &<_h> &.d &<.d> &:n &<:n> \\
+th &<th> &d &<d> &.t &<.t> &l &<l> \\
+,t &<,t> &dh &<dh> &.z &<.z> &m &<m> \\
+,th &<,th> &:d &<:d> &` &<`> &n &<n> \\
+\_s &<_s> &,d &<,d> &.g &<.g> &,n &<,n> \\
+p &<p> &,dh &<,dh> &f &<f> &w &<w> \\
+j &<j> &\_d &<_d> &ph &<ph> &,h &<,h> \\
+%:j &<:j> &r &<r> &q &<q> &'| &<'|> \\
+:j &<:j> &r &<r> &q &<q> &h &<h> \\
+jh &<jh> &,r &<,r> &k &<k> &y &<y> \\
+\hline
+a &<B|BaB>&e &<B|BeB>&i &<B|BiB>&o &<B|BoB>\\
+u &<B|BuB>&A &<BA> &E &<BE> &I &<BI> \\
+O &<BO> &U &<BU> &ae &<Bae> &ao &<Bao> \\
+i &<i> &\_A &<B_A> &'A &<'A> &'a &<'a> \\
+'i &<'i> &'y &<'y> &'w &<'w> &'| &<'|> \\
+\hline
+\end{tabular}
+\rm
+\caption{The Sindhi Alphabet}
+\label{codes}
+\end{center}
+\end{table}
+
+\begin{table}[htbp]
+\large
+\begin{arabtext}
+\showtrue
+1: \hfill a <a> anbu \hfill b <b> badaka
+\hfill :b <:b> :bilI \hfill bh <bh> bhOli,rO
+
+2: \hfill t <t> ti:di \hfill th <th> thIlihI
+\hfill ,t <,t> ,tOplO \hfill ,th <,th> ,thUn,thi
+
+3: \hfill _s <\_s> _samara \hfill p <p> pakhO
+\hfill j <j> jahAzu \hfill :j <:j> :jibha
+
+4: \hfill jh <jh> jihrkI \hfill ~n <\~{}n> :ja~na
+\hfill ^c <\^{}c> ^can,du \hfill ^ch <\^{}ch> ^cha,tI
+
+5: \hfill .h <.h> .huqO \hfill _h <\_h> _ha:tu
+\hfill d <d> daru \hfill dh <dh> dhuka.ra
+
+6: \hfill :d <:d> :dOlu \hfill ,d <,d> ,dAkha
+\hfill ,dh <,dh> ,dha:gI \hfill _d <\_d> _da_hIrO
+
+7: \hfill r <r> rIla \hfill ,r <,r> bagha,ru
+\hfill z <z> zAla \hfill s <s> sijju
+
+8: \hfill ^s <\^{}s> ^sInhun \hfill .s <.s> .sUfu
+\hfill .d <.d> .da`Ifu \hfill .t <.t> .tO.tO
+
+9: \hfill .z <.z> .zAlimu \hfill ` <`> `aynaka
+\hfill .g <.g> .gAlI^cO \hfill f <f> fawjI
+
+10: \hfill ph <ph> phUhArO \hfill q <q> qalamu
+\hfill k <k> kutO \hfill kh <kh> kha,ta
+
+11: \hfill g <g> ga:dahu \hfill :g <:g> :gayrO
+\hfill gh <gh> ghO,rO \hfill :n <:n> si:na
+
+12: \hfill l <l> la.ga,ru \hfill m <m> ma^chI
+\hfill n <n> nAngu \hfill ,n <,n> wa,nu
+
+13: \hfill w <w> wA:jO \hfill h <h> hAthI
+\hfill '| <\tt '|> '| \hfill y <y> yakO
+\end{arabtext}
+\caption {Examples for the use of the Sindhi Alphabet}
+\label{examples}
+\end{table}
+
+
+\end{document}
diff --git a/language/arabic/arabtex/doc/txt/tetex.txt b/language/arabic/arabtex/doc/txt/tetex.txt
new file mode 100644
index 0000000000..c9e18a7658
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/tetex.txt
@@ -0,0 +1,9995 @@
+The Linux ArabTeX-Howto
+
+Markus F. Rothbauer, mrothbau@ag.or.at
+v1.0, 24 October 1999
+
+This document is intended to explain how to install the
+Unix-standard-distribution of ArabTeX on a linux-machine with teTeX
+installed. It describes only the way how to install ArabTeX, that all
+users can use it.
+
+
+
+
+1. Introduction
+
+There are some difficulties installing ArabTeX together with
+teTeX. The main problem is, that ArabTeX uses a file structure, which
+allows ArabTeX to work together with emTeX under DOS very pretty (as
+far as I was told) - but it will not work together very pretty with a
+standard teTeX installation using the TDS
+(TeX-Directory-Standard).
+
+This document provides you all the necessary informations and explains
+the steps to get it working.
+
+You will need root-privileges on your machine to follow the procedures
+given to you. If you do not have root-privileges, please consult your
+system administrator - he will be able to install ArabTeX for you!
+
+
+
+1.1. Disclaimer
+
+The information in this document is, to the best of my knowledge,
+correct, and should work. However, there may be typos, there may be
+mysterious transmission errors, language errors, and there may be
+strange incompatibilities within your own system that prevent the
+techniques described herein from working properly.
+
+So no liability for the contents of this document can be accepted.
+Use the concepts at your own risk. You have been warned.
+
+
+
+1.2. Related documents
+
+There are a lot of related documents. Please read all the
+documentation of ArabTeX very carefully - there is a lot of
+information about the mechanisms of ArabTeX. And read the
+documentation of teTeX. You will find a lot of important information
+about configuring teTeX and how teTeX works.
+
+
+
+1.4. Versions
+
+The procedures given in this document have been tested with teTeX
+(and telatex) version 1.0.6-3, ArabTeX 3.09 and SuSE Linux 6.2
+
+
+
+2. The mechanism of teTeX for searching additional styles etc.
+
+As stated in the teTeX manual, teTeX uses the kpathsea library, which
+provides efficient access by names to files stored hierarchically. But
+it will look in certain directories for specific types of files. The
+directories have to be stored in the "main texmf tree" (texmf ... "TeX
+and friends") in a proper way:
+
+TeX macros ... tex/<format>/<package>/
+font files ... fonts/<type>/<supplier>/<typeface>/
+METAFONT files ... metafont/<package>/
+documentation ... doc/<package>/
+etc. (For more details see the teTeX and the TDS-documentation).
+
+To speed up searching in this tree, a file name database is used. A
+file-name database exists in the root of each texmf tree and has the name
+ls-R. You can use texconfig or texhash to rebuild this database after
+installing ArabTeX.
+
+
+
+
+3. Installation
+
+
+
+3.1. First steps: Extracting ArabTeX
+
+ArabTeX usually comes as zipped tar-archive. For the next steps I
+assume, that you login to your computer as a "normal" user (not as
+root) and that you are in your home-directory (/home/<user>/). A
+little remark to the notation for the following steps: The intended
+line shows commands that you have to execute from the shell.
+
+Create a temporary directory (skip this step if you already have one!)
+
+ mkdir temp
+
+Change to this directory:
+
+ cd temp
+
+Store the zipped tar-archive of ArabTeX to the temp-directory.
+(e.g. cp <sourcedir>/arabtex_tar.Z ~/temp/ )
+Now, unpack (untar) this archive:
+
+ tar -xvzf arabtex_tar.Z arabtex/
+
+
+
+3.2. Building a file-structure conforming to teTeX
+
+Create a directory for the style-files of arabtex (the necessary
+parent directories will be created because of parameter -p):
+
+ mkdir -p arabcorrect/texmf/tex/latex/arabtex
+
+Move all files of arabtex from texinput to this directory:
+
+ mv arabtex/texinput/* arabcorrect/texmf/tex/latex/arabtex/
+
+Create a directory to contain the fonts:
+
+ mkdir -p arabcorrect/texmf/fonts/pk/arabtex/hcaption
+ mkdir arabcorrect/texmf/fonts/pk/arabtex/hclassic
+ mkdir arabcorrect/texmf/fonts/pk/arabtex/nash
+ mkdir arabcorrect/texmf/fonts/pk/arabtex/xnsh
+ mkdir arabcorrect/texmf/fonts/pk/arabtex/yarborn
+ mkdir -p arabcorrect/texmf/fonts/source/arabtex
+ mkdir -p arabcorrect/texmf/fonts/tfm/arabtex
+ mkdir -p arabcorrect/texmf/fonts/type1/arabtex
+
+Move the font-files to these directories:
+
+ mv arabtex/laser.pk/hcaption* arabcorrect/texmf/fonts/pk/arabtex/hcaption/
+ mv arabtex/laser.pk/hclassic* arabcorrect/texmf/fonts/pk/arabtex/hclassic/
+ mv arabtex/laser.pk/nash14* arabcorrect/texmf/fonts/pk/arabtex/nash/
+ mv arabtex/laser.pk/xnsh14* arabcorrect/texmf/fonts/pk/arabtex/xnsh/
+ mv arabtex/laser.pk/yarborn* arabcorrect/texmf/fonts/pk/arabtex/yarborn/
+ mv arabtex/mfinput/* arabcorrect/texmf/fonts/source/arabtex/
+ mv arabtex/tfm/* arabcorrect/texmf/fonts/tfm/arabtex/
+ mv arabtex/psfonts/* arabcorrect/texmf/fonts/type1/arabtex/
+
+Create a directory for the documentation:
+
+ mkdir -p arabcorrect/texmf/doc/arabtex
+
+Move the doc-subdirectory to the documentation-subdirectory:
+
+ mv arabtex/doc arabcorrect/texmf/doc/arabtex/
+
+Move the report-subdirectory to the documentation-subdirectory:
+
+ mv arabtex/report arabcorrect/texmf/doc/arabtex/
+
+Move the examples-subdirector to the documentation-subdirectory:
+
+ mv arabtex/examples arabcorrect/texmf/doc/arabtex/
+
+Move the patches-subdirectory to the documentation-subdirectory (so
+you can choose later, if you want to install the patches or not):
+
+ mv arabtex/patches arabcorrect/texmf/doc/arabtex/
+
+Delete the empty directories in arabtex (e.g. texinput; note: ignore
+the error-messages "rmdir: arabtex/announce.txt: Not a directory"
+etc.)
+
+ rmdir arabtex/*
+
+And now - move the rest of ArabTeXs documentation to the
+doc-directory:
+
+ mv arabtex/* arabcorrect/texmf/doc/arabtex/
+
+Remove the arabtex-directory:
+
+ rmdir arabtex
+
+Now we did the the second step - creating a teTeX-conform directory
+structure.
+
+
+
+3.3. Changing owner and group of ArabTeX:
+
+Now we have to change the owner and group of arabtex. To do this, we
+first have to get administration privilegs - change to user root and
+enter the appropriate password when prompted:
+
+ su root
+
+Remember: From now on you have all the privilegs of root - be very
+carefully with your commands. If you enter them in a wrong way, data
+loss can be the consequence. You have been warned.
+Change the owner and the group of arabtex:
+
+ chown -R root arabcorrect
+ chgrp -R root arabcorrect
+
+
+
+3.4. Copying arabtex to your texmf-directory:
+
+Now we have to look, where all this TeX-stuff is stored on your
+computer:
+
+ kpsewhich -expand-var='$TEXMF'
+
+You will get some directories, where you can store arabtex to. I
+suggest to use /usr/share/texmf/ (This is the 'normal' texmf-directory
+for teTeX; I will refer to this directory as $TEXMF from now on).
+
+So copy all arabtex-files to this directory:
+
+ cp -r arabcorrect/texmf/* $TEXMF
+
+(remember: Substitute $TEXMF with your appropriate texmf-directory; if
+it is /usr/share/texmf/ the command is: "cp -r arabcorrect/texmf/*
+/usr/share/texmf/" )
+
+
+
+3.5. Rebuilding teTeXs hash-database
+
+This is very simple: Just start the "texconfig"-program from the
+teTeX-package:
+
+ texconfig
+
+When the menu comes up on the screen, choose the point "REHASH rebuild
+ls-R database". When you are back in the menu, choose "EXIT".
+
+Now you should change back the group and owner of arabtex:
+
+ chgrp -R users arabcorrect
+ chown -R <username> arabcorrect
+
+And exit from root-privileges:
+
+ exit
+
+
+
+3.6. Creating an archive of the new structured arabtex:
+
+Store the corrected arabtex-package in a new archive - so you do not
+have to restructure it next time and you can start at point 3.3 of
+this procedure:
+
+ tar -czvf arabcorr.tgz arabcorrect/*
+
+(You can restore this archive with tar -xzvf arabcorr.tgz)
+
+
+
+3.7. Removing the arabcorrect-directory:
+
+Simply enter:
+
+ rm -r arabcorrect/
+
+
+
+3.8. Test your arabtex-installation
+
+This can be done by compiling the documentation of arabtex (now in
+$TEXMF/doc/arabtex/report/): First copy this documentation to a
+directory in your home-directory, then start latex with arabdoc.tex.
+
+That's all!
+
+
+
+
+4. A little shell-script for step 3.2
+
+You can load this document into an editor and extract the part between
+the two remarks (% -------- ...) to a file, e.g. corr_arabtex in YOUR
+temp-direectory (~/temp). You have to set the executeable flag for
+this file:
+
+ chmod u+x corr_arabtex
+
+and then you can execute it with
+
+ ./corr_arabtex.
+
+
+% ------------ START of restructuring script
+#!/bin/bash
+echo "Restructuring ArabTeX \n"
+mkdir -p arabcorrect/texmf/tex/latex/arabtex
+mv arabtex/texinput/* arabcorrect/texmf/tex/latex/arabtex/
+mkdir -p arabcorrect/texmf/fonts/pk/arabtex/hcaption
+mkdir arabcorrect/texmf/fonts/pk/arabtex/hclassic
+mkdir arabcorrect/texmf/fonts/pk/arabtex/nash
+mkdir arabcorrect/texmf/fonts/pk/arabtex/xnsh
+mkdir arabcorrect/texmf/fonts/pk/arabtex/yarborn
+mkdir -p arabcorrect/texmf/fonts/source/arabtex
+mkdir -p arabcorrect/texmf/fonts/tfm/arabtex
+mkdir -p arabcorrect/texmf/fonts/type1/arabtex
+mv arabtex/laser.pk/hcaption* arabcorrect/texmf/fonts/pk/arabtex/hcaption/
+mv arabtex/laser.pk/hclassic* arabcorrect/texmf/fonts/pk/arabtex/hclassic/
+mv arabtex/laser.pk/nash14* arabcorrect/texmf/fonts/pk/arabtex/nash/
+mv arabtex/laser.pk/xnsh14* arabcorrect/texmf/fonts/pk/arabtex/xnsh/
+mv arabtex/laser.pk/yarborn* arabcorrect/texmf/fonts/pk/arabtex/yarborn/
+mv arabtex/mfinput/* arabcorrect/texmf/fonts/source/arabtex/
+mv arabtex/tfm/* arabcorrect/texmf/fonts/tfm/arabtex/
+mv arabtex/psfonts/* arabcorrect/texmf/fonts/type1/arabtex/
+mkdir -p arabcorrect/texmf/doc/arabtex
+mv arabtex/doc arabcorrect/texmf/doc/arabtex/
+mv arabtex/report arabcorrect/texmf/doc/arabtex/
+mv arabtex/examples arabcorrect/texmf/doc/arabtex/
+mv arabtex/patches arabcorrect/texmf/doc/arabtex/
+rmdir arabtex/*
+echo "corr_arabtex: Ignore above error messages!\n"
+mv arabtex/* arabcorrect/texmf/doc/arabtex/
+rmdir arabtex
+echo "Done. \n"
+% ------------ END of restructuring script
+
+
+
+
+6. Comments
+
+I hope, that this documentation helps you to install ArabTeX on your
+Linux-machine. Send any comments to this document to:
+mrothbau@ag.or.at
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/language/arabic/arabtex/doc/txt/uighur.tex b/language/arabic/arabtex/doc/txt/uighur.tex
new file mode 100644
index 0000000000..dbd31d46fb
--- /dev/null
+++ b/language/arabic/arabtex/doc/txt/uighur.tex
@@ -0,0 +1,121 @@
+%\documentclass[12pt,a4paper]{article}
+\documentclass[12pt]{article}
+\usepackage{arabtex}
+
+\parindent 0pt
+\parskip 2mm
+
+\advance \textwidth 20mm
+\advance \textheight 20mm
+%\pagestyle{empty}
+
+\makeatletter
+\def \({\a@verb}
+\makeatother
+
+\begin{document}
+\title{Uighuric in Arab\TeX}
+\author
+{Klaus Lagally\\
+Institut f\"ur Informatik\\
+Breitwiesenstra\ss e 20--22\\
+D-70565 Stuttgart\\
+GERMANY\\
+%\verb+mailto:lagallyk@acm.org+
+\tt mailto:lagallyk@acm.org
+}
+\date{August 06, 1997}
+\maketitle
+
+\setuighur
+\vocalize
+
+There is a new Arab\TeX\ language mode, \verb+\setuighur+,
+for processing Uighuric texts in the extended Arabic writing.
+
+This mode works only with Arab\TeX\ version 3.06 or later.
+
+Uighuric input texts are encoded in a modification of the
+standard \ArabTeX\ encoding, see
+column~5 of the Table.
+Please observe that in Uighuric all characters are coded verbatim.
+
+This language mode is strictly experimental
+and expected to contain errors.
+Please report your experience and suggestions
+for changes and improvements to the author.
+% at \verb+mailto:lagallyk@acm.org+
+
+\newpage
+\parskip 0pt
+
+\begin{center}
+Arab\TeX\ encoding of Uighuric
+\end{center}
+
+\parbox[t]{75mm}{%
+\null
+\begin{tabular}{|r|cccc@{ = }c@{ (}c@{)
+ \vrule width0pt height13pt depth10pt}l|}
+\hline
+ & 1 & 2 & 3 & 4 & 5 & 6 & 7 \\
+\hline
+01& & & <Ba> & <a> &\(a> & 01 & a \\
+02& & & <B:a> & <:a> &\(:a> & 02 & \"a \\
+03& & & <Bd> & <d> &\(d> & 09 & de \\
+04& & & <Br> & <r> &\(r> & 10 & re \\
+05& & & <Bz> & <z> &\(z> & 11 & ze \\
+06& & & <B^z> & <^z> &\(^z> & 12 & \v ze \\
+07& & & <Bo> & <o> &\(o> & 25 & o \\
+08& & & <B:o> & <:o> &\(:o> & 27 & \"o \\
+09& & & <Bu> & <u> &\(u> & 26 & u \\
+10& & & <B:u> & <:u> &\(:u> & 28 & \"u \\
+11& & & <Bw> & <w> &\(w> & 29 & we \\
+12&<bB> &<BbB> & <Bb> & <b> &\(b> & 03 & be \\
+13&<pB> &<BpB> & <Bp> & <p> &\(p> & 04 & pe \\
+14&<tB> &<BtB> & <Bt> & <t> &\(t> & 05 & te \\
+15&<nB> &<BnB> & <Bn> & <n> &\(n> & 23 & ne \\
+16&<jB> &<BjB> & <Bj> & <j> &\(j> & 06 & je \\
+17&<^cB>&<B^cB> & <B^c> & <^c> &\(^c> & 07 & \v ce \\
+\hline
+\end{tabular}}\hfil
+\parbox[t]{75mm}{%
+\null
+\begin{tabular}{|r|cccc@{ = }c@{ (}c@{)
+ \vrule width0pt height13pt depth10pt}l|}
+\hline
+ & 1 & 2 & 3 & 4 & 5 & 6 & 7 \\
+\hline
+18&<xB> &<BxB> & <Bx> & <x> &\(x> & 08 & xe \\
+19&<iB> &<BiB> & <Bi> & <i> &\(i> & 31 & i \\
+20&<eB> &<BeB> & <Be> & <e> &\(e> & 30 & e \\
+21&<yB> &<ByB> & <By> & <y> &\(y> & 32 & y \\
+22&<sB> &<BsB> & <Bs> & <s> &\(s> & 13 & se \\
+23&<^sB>&<B^sB> & <B^s> & <^s> &\(^s> & 14 & \v se \\
+24&<^gB>&<B^gB> & <B^g> & <^g> &\(^g> & 15 & \v ge \\
+25&<fB> &<BfB> & <Bf> & <f> &\(f> & 16 & fe \\
+26&<qB> &<BqB> & <Bq> & <q> &\(q> & 17 & qe \\
+27&<kB> &<BkB> & <Bk> & <k> &\(k> & 18 & ke \\
+28&<~nB>&<B~nB> & <B~n> & <~n> &\(~n> & 20 & $\eta$e \\
+29&<gB> &<BgB> & <Bg> & <g> &\(g> & 19 & ge \\
+30&<lB> &<BlB> & <Bl> & <l> &\(l> & 21 & le \\
+31&<mB> &<BmB> & <Bm> & <m> &\(m> & 22 & me \\
+32&<hB> &<BhB> & <Bh> & <h> &\(h> & 24 & he \\
+33&<'B> &<B'B> & & &\('> & & \\
+34& & & <Bl"A>& <l"A> &\(la> & & \\
+\hline
+\end{tabular}}
+
+\begin{enumerate}
+\itemsep 0pt
+\item initial shape
+\item medial shape
+\item final shape
+\item isolated shape
+\item external encoding
+\item sorting position
+\item name
+\end{enumerate}
+
+%\vfill \today
+\end{document}
diff --git a/language/arabic/arabtex/examples/guha.dvi b/language/arabic/arabtex/examples/guha.dvi
new file mode 100644
index 0000000000..b6e0fb9ce4
--- /dev/null
+++ b/language/arabic/arabtex/examples/guha.dvi
Binary files differ
diff --git a/language/arabic/arabtex/examples/guha.ps b/language/arabic/arabtex/examples/guha.ps
new file mode 100644
index 0000000000..fa91e06a9c
--- /dev/null
+++ b/language/arabic/arabtex/examples/guha.ps
@@ -0,0 +1,1044 @@
+%!PS-Adobe-2.0
+%%Creator: dvips 5.76 Copyright 1997 Radical Eye Software (www.radicaleye.com)
+%%Title: guha.dvi
+%%CreationDate: Tue Dec 1 13:46:34 1998
+%%Pages: 1
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 612 792
+%%DocumentFonts: cmti12 cmmib10 cmr12
+%%EndComments
+%DVIPSCommandLine: dvips32.exe guha
+%DVIPSParameters: dpi=300, compressed
+%DVIPSSource: TeX output 1998.12.01:1345
+%%BeginProcSet: texc.pro
+%!
+/TeXDict 300 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N
+/X{S N}B /TR{translate}N /isls false N /vsize 11 72 mul N /hsize 8.5 72
+mul N /landplus90{false}def /@rigin{isls{[0 landplus90{1 -1}{-1 1}
+ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale
+isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div
+hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul
+TR[matrix currentmatrix{dup dup round sub abs 0.00001 lt{round}if}
+forall round exch round exch]setmatrix}N /@landscape{/isls true N}B
+/@manualfeed{statusdict /manualfeed true put}B /@copies{/#copies X}B
+/FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{
+/nn 8 dict N nn begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N
+string /base X array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N
+end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{
+/sf 1 N /fntrx FMat N df-tail}B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]
+N df-tail}B /E{pop nn dup definefont setfont}B /ch-width{ch-data dup
+length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{
+128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub
+get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data
+dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N
+/rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup
+/base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx
+0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff
+setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff
+.1 sub]/id ch-image N /rw ch-width 7 add 8 idiv string N /rc 0 N /gp 0 N
+/cp 0 N{rc 0 ne{rc 1 sub /rc X rw}{G}ifelse}imagemask restore}B /G{{id
+gp get /gp gp 1 add N dup 18 mod S 18 idiv pl S get exec}loop}B /adv{cp
+add /cp X}B /chg{rw cp id gp 4 index getinterval putinterval dup gp add
+/gp X adv}B /nd{/cp 0 N rw exit}B /lsh{rw cp 2 copy get dup 0 eq{pop 1}{
+dup 255 eq{pop 254}{dup dup add 255 and S 1 and or}ifelse}ifelse put 1
+adv}B /rsh{rw cp 2 copy get dup 0 eq{pop 128}{dup 255 eq{pop 127}{dup 2
+idiv S 128 and or}ifelse}ifelse put 1 adv}B /clr{rw cp 2 index string
+putinterval adv}B /set{rw cp fillstr 0 4 index getinterval putinterval
+adv}B /fillstr 18 string 0 1 17{2 copy 255 put pop}for N /pl[{adv 1 chg}
+{adv 1 chg nd}{1 add chg}{1 add chg nd}{adv lsh}{adv lsh nd}{adv rsh}{
+adv rsh nd}{1 add adv}{/rc X nd}{1 add set}{1 add clr}{adv 2 chg}{adv 2
+chg nd}{pop nd}]dup{bind pop}forall N /D{/cc X dup type /stringtype ne{]
+}if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup
+length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{
+cc 1 add D}B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin
+0 0 moveto /V matrix currentmatrix dup 1 get dup mul exch 0 get dup mul
+add .99 lt{/QV}{/RV}ifelse load def pop pop}N /eop{SI restore userdict
+/eop-hook known{eop-hook}if showpage}N /@start{userdict /start-hook
+known{start-hook}if pop /VResolution X /Resolution X 1000 div /DVImag X
+/IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for
+65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}N /RMat[1 0 0 -1 0
+0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V
+{}B /RV statusdict begin /product where{pop false[(Display)(NeXT)
+(LaserWriter 16/600)]{dup length product length le{dup length product
+exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}
+ifelse end{{gsave TR -.1 .1 TR 1 1 scale rulex ruley false RMat{BDot}
+imagemask grestore}}{{gsave TR -.1 .1 TR rulex ruley scale 1 1 false
+RMat{BDot}imagemask grestore}}ifelse B /QV{gsave newpath transform round
+exch round exch itransform moveto rulex 0 rlineto 0 ruley neg rlineto
+rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta 0 N /tail{dup
+/delta X 0 rmoveto}B /M{S p delta add tail}B /b{S p tail}B /c{-4 M}B /d{
+-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{3 M}B /k{4 M}B
+/w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w}B /q{p 1 w}
+B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p a}B
+/bos{/SS save N}B /eos{SS restore}B end
+
+%%EndProcSet
+%%BeginProcSet: texps.pro
+%!
+TeXDict begin /rf{findfont dup length 1 add dict begin{1 index /FID ne 2
+index /UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
+exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]/Metrics
+exch def dict begin Encoding{exch dup type /integertype ne{pop pop 1 sub
+dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get div def}
+ifelse}forall Metrics /Metrics currentdict end def[2 index currentdict
+end definefont 3 -1 roll makefont /setfont cvx]cvx def}def /ObliqueSlant
+{dup sin S cos div neg}B /SlantFont{4 index mul add}def /ExtendFont{3 -1
+roll mul exch}def /ReEncodeFont{/Encoding exch def}def end
+
+%%EndProcSet
+%%BeginFont: cmr12
+%!PS-AdobeFont-1.1: cmr12 1.0-prerelease
+%%VMusage: 38759 38848
+12 dict begin
+/FontInfo 11 dict dup begin
+/UnderlineThickness 50.0 def
+/Weight(Medium) def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/Notice( Paradissa Fonts Collection. Release I.\012 Copyright \(c\) 1993, Basil K. Malyshev. All Rights Reserved.\012 The digitally encoded machine readable outline data for producing\012 the Typefaces of Computer Modern fonts were designed by Donald E. Knuth.) def
+/underlinePosition -100 def
+/underlineThickness 50 def
+/FullName(cmr12) def
+/version(1.0-prerelease) def
+/UnderlinePosition -125.0 def
+/FamilyName(cmr12) def
+end readonly def
+/UniqueID 4100016 def
+/PaintType 0 def
+/FontBBox{-36 -250 989 750} def
+/FontMatrix[0.001 0 0 0.001 0 0] def
+/FontName/cmr12 def
+/FontType 1 def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 44 /comma put
+dup 49 /one put
+dup 56 /eight put
+dup 57 /nine put
+dup 68 /D put
+dup 98 /b put
+dup 99 /c put
+dup 101 /e put
+dup 109 /m put
+dup 114 /r put
+readonly def
+currentdict end
+currentfile eexec
+90b1d4632c20f6f8d4e2feb3d7c2fb2d69ec9fb9685e8e3084dee6941cb0dd5a
+634c99b1d3e0b7558cab812b809e9913ebf383af06f306a3c7d5f8fa8b4294a2
+ae89e81e59ce734f75084dde2066f8f1cb64887f6595777b3697820cc0e4d85b
+dfabc82a6f8a1271f309e0e3011a9bc52ca8d346d6f70edca9969c39d5f6616b
+62e5f7300ebe61852c9081e1b703262c55101d1c9fbb853f2b2f46b781df9b8d
+024144a6ff516cee0cad4cd07a8d9d7ec7ceea2b02c810946d775ee363e71495
+34664ce8d8e12bcd03d25f642a52cf22caa4a4fa052874040a3fd20087c3dca0
+920ce0fe71cd40307b967f00c7477ec53f5d59e7f8eb907d4c6ad743e5fc2791
+c776ba930cf52f2b97ca9a5daf89363f58ce300f62000277ec91f473aa457876
+5d9fa5f825c97d086efdcb15fc3367084e617871b8feffa994d11e4cbb174692
+b552fafb6032097a1beeb5c921f676a8481c8fef3836763aca20f660e75a1f11
+b5d269138a2f57ae6c9afbd3e44359231d63bc2542661972442af5864a49d7fd
+0fe98810201715d25533dc24cc67aa6d8647b0febfd55c3e7902641a5552f8c3
+2c582483cd1c7c49330063c7cbf60eeb3d24deafd38bd8d724dba3cccf3bb403
+b009ce0ff432e78d8d9899d9f8742e103bbd299d8cb2f143063755e3d0fec3ef
+8fc2796ac928221cce427e16cbbbdf67097042eec97238f6937ade9a9e3064b0
+8c7ab6cb8c3acfaaab7479c4bc00a394aa87ec2385edd57aa90d17c3d55edeba
+88eddf9f4d06afdb21bc9b83e7b3087c14c9ccc01c0cb87035541a67af4cfda8
+722d53f80250bd739afdf14756d47bc6aa6be34835e770d0597ca97abf88464c
+3afe405dc7a40949c880051ecf802c005f9a7dfb2d7eea34426278dd9b84a551
+bae24a1760a73efb4c78ceefca6085b244d1e311563f9d3abb0e95901898be1b
+cc7e291d5e3add66a7ca86d2f4075a8aa19164b876bf4d5383bed3f1696481f0
+a35e912882741817d929de0543eb01a8a1dee68ef0e0e9bc3d487ecb1b8b0457
+acdaf85bd3cb59b099f50023d1547fb3a9fcd61c2a99fc0bb9b375dd6d977433
+ef7595789aa3efe0d1bc3e5a09dd7979522c4f472118f4f8c12bac8331530d69
+aed0367b6563381d651b39b8ab4a47c45399ec89747ebe7125fa1defb762bf49
+13746d534e8d8063a16ad8d3265ff190eaf03517d524626d844ffd336211a0ee
+113168240f85d2ae33e4efcecbba59986c66a1c490d2a030bceee927ca03793e
+944561c3a9c45bed97b777b140d658c9b073bc4c30479883e9a9023f980f86b3
+786740a51d85feb45bd1b33e19623972730816cbfa45830d943bb20dd146d6db
+3bec3d7c63ab783d8c5beb24fe0db06f1f71cdf7fefd8efb271e388a8dd10aa4
+a9c7448522d236c4aa7675bbae75056be902764b8282ecd989732ce024118515
+f283801b4609a106321ba807c4daf7d2656d3e8231cb1ae5b5bb2bf36940417b
+308795aee21a171102ce9346eb4d8d1a6f2afde910496653158ffa1aae7c9593
+2b89207038fa5a52c4ecaf588a11d575828e60f3699aaabc68c86757c8f47a72
+f8ae9fea95528d5f4e1d013f7aa8e589cec4889ee17057aecebfb39358f21a8a
+d453a32314ba94a8cf62acf32736353d4bf022ce2c2b768c7e0a6e7f33ffa69d
+ae963f26e742b4cbd4e3a125061acded269cb2ac128c5860b9c4fd70cd64b3be
+b7b560dcc7b8d261e60bac6f6cda49a51104d868b9debf2c2d417f4d52ab6c05
+ae398e6a3182fa871ce481823a1851c0ded1fe8626d65d0792aa188dbb551d4d
+e615ace919f94d2ed87dd33d14daf3a4eb711988d20c922a1f59c27a8199e379
+eed77fb973f2ebedbb9d2d20abd7c8046850daa65292e7aff4032c72546d10ee
+a7b9e0b652ecb5859919db91796062a9776b464af15735a0ee1a5a96056cb874
+07d5a2d8530a7c4f8b63d2a75c5a76bb4edc98ca08910d7418bdbf30bdc1dd5a
+c230377509b1cfdfdcf856ec7d445dfaed494f752f25ea79355069ef37b678a1
+476ad033ecfd689a3b41b5e6aebb15dc4882b2932dcd9067c5cb69b089df5a56
+e81228978a67fd57f50e046f14a6bbf1f0d2d6d369129616e26e38b2f76e083a
+cd5e2fcc1e76792570bee9e7cc4f3097a2ec4de84d9da7a73a17e360587b37a7
+c0af664c93a6b0a238b46053e33a82202719d41b22ab562697120849d656b2e6
+e88907dc281ddfde4dc719732a292ecaffa131a65f05fcbb9cd4da01c8d49b38
+15ba57b96a254374fab0369df0ea666b454e42d856fa341a51635e5e6ff70dff
+7d30ea12ca9b7df4b2fc7b5e5ef4622c589f20fa734ffb1f85754817adca0a39
+21c9a43ff9bc96931553d31911fe25dfa76a3a2130600a9846d59df231671a37
+cb3bf050a5beee286a2aebbd7b63b1d1f93483386ff3718b7164517f799b25b5
+9b1e86bb4cd279716a60c1d556a0fc3c3f0393448f042920279843e58b339ecc
+e9a3096677afe654d0e3fdb751305075e9f4b24a2f3cc2c1201feb4bcf8f7089
+dec2741f9ebc7ab3cb5f6e270bcd7299dbf336e480e62864979000be89603a0d
+738a71bab9cede5d72eefc8c2f4a003c62b4bd651f0f09bfd90291d2afc4c8dc
+24608073e85271dfd95a993c0bb44a70805f8e4fe091566bbfbdaacd6e2bd7a1
+9dcd0dce164033968f57c2f5b81d5365e8e778c289c4059a32b9fefb57cdb0de
+d4fe1a8da2ae42a3463fbfd52a9db958b5a4efcabc5ca9b28b32472498717340
+70d7b551356e5e6dafc6b0129287f8554cda79a739ffd8d50a25a42f1eeb313d
+8b0b13029ca24106dbdef88595d8503a052136d513a05b839ced7376b3bd2d2b
+dccaae856d1249da9a1af1f25dc44a5dcb179b33036f72b14535978b5178a7fa
+d1354b5600ad14dd74d41675eddf0222a9f17acd359d24a4f889fc6ecc422fcb
+cff4a8d8a1f2583b5fbc234edd89483b69e595a56f94dc44ceed0989ac113cb6
+e33ff37268fd6351027611f6bd47b672d68c81f3becb006754e08162e9a00889
+7a486de7aa317d53505a805a5da3e361182a9575fd8be0211a71c2965f32dddf
+dac6d3b874b4324be18444c9a0e70dbc3f0e9d408aebee78164e4b6e0bc986e6
+34680af9161d39a64ba7a3a8ddd44ae3d94bdf94d62d0907efd4b5c3ea889b25
+00f4a33c20d6e7e927e11cb84f0c060b0f7e052fc1df50c1d7d535f5a0175534
+d105ab809d866f0f8aa99e52e87e8278b9821a1c4629f66dab1e15e7ba620634
+cc531cdc48be59eb49f41c7bfddfd2b28733f8a5f93de54381bd48fb5a124e29
+1dc297694ae37dae616e794aeccd61ba75f646c6b12f280c4419645d8c0dd1bb
+325b6967a19a762635e773ce7d0947ed502c712c8e5c6983fd70283041489b34
+7675bafaa1c1718408fe88011cc2b0196e5e139e6c6b9c0acc16b152ddf01a43
+54aaad5d6893f6433e86e616a2f563d3fc1b99af94faa8284986ff4375b0c3b0
+19191589fed767579898a43c819c455a3ced3e6e17b3459fde16aa429105ac5d
+13443d8801acdcf2b939530d3b62fcd369f0c3b47199b14648257886add0a1cd
+64a522d10f9c2e98a1c50360951bfebb48e1d9459729bc8479afbcc12df7be44
+701d2061a824536d53f59717ff0e84fca4d98db2b14dcb7b12ff0a08535c3772
+26090d34a2b23b6ae7544a8f14c7d8594d57c3f984d6a68694eb21d528092654
+17dc8b22f2f71fa721326a594e68c76f2e0875d475cc85e584741c09d66b91e2
+e249f2f116d6738787ff20dedba5abadc5df8b74a342521c0da2925b4e40131b
+cae9905cf97ea917d17d0847ef14d00c9e0a3cbe2ba9201b4731210937fad283
+f0e22024ff649c82196f9c65a01411d15e6bde2411e83ef805625262af2b12bb
+eb3c3f813372879f7f44a06ed7f07ba7b7f54a051805fea51f760536c1abe5f8
+3d99fae350090521e740fb4dd4e8d8b26a11e3f19a96894f039c79d08f02b281
+c28cc2b6e50114ab2c081c964666b181d0a12b83523bc254f1440823b781de78
+bd4352d8a20523b3b802ecc13ee2e5d84a0e9111b603bf47020810ff3a5f9742
+a6b1dcaced175a5095c7eee29e45ad5b26b219071dc63e1b510a3be45d2c9863
+9b99aa2dec9f16c627e6b095508a656efee603616b20d066f8e2bf6b5ecdc9f3
+e0bc849f5a7f96494029ae108a6d4f4022e7c451b988ec728391033843a0f9b4
+b9e3a8de44fb6cb84cbba597920f752ae834166e67834eaf458b305fbf0a9c47
+c33367c7d2e9deaa69b942f199705987557a44738213fd7d73610aeac05a2ee2
+87b9f1fec7446ce54b45d896d94f8aab63f28777eff901d339f4dfd29bdd241a
+1809e24188ce5760f09db96b18a9f79988f468744583718b8b127f9a511038d8
+bb44803a0a7f252fcb11cffe2bb70019b8aaadbb9e5106cfe0e23a73e1f89e5c
+33e60c95a2ecc4d060848c510b6387cd9baa38a560a6883a7520459fdca13569
+635ee2ede26c
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+
+%%EndFont
+%%BeginFont: cmmib10
+%!PS-AdobeFont-1.1: cmmib10 1.0-prerelease
+%%VMusage: 45110 45532
+12 dict begin
+/FontInfo 11 dict dup begin
+/UnderlineThickness 49.95 def
+/Weight(Medium) def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/Notice( Paradissa Fonts Collection. Release I.\012 Copyright \(c\) 1993, Basil K. Malyshev. All Rights Reserved.\012 The digitally encoded machine readable outline data for producing\012 the Typefaces of Computer Modern fonts were designed by Donald E. Knuth.) def
+/underlinePosition -100 def
+/underlineThickness 50 def
+/FullName(cmmib10) def
+/version(1.0-prerelease) def
+/UnderlinePosition -125.0 def
+/FamilyName(cmmib10) def
+end readonly def
+/UniqueID 4100069 def
+/PaintType 0 def
+/FontBBox{-17 -250 1218 749} def
+/FontMatrix[0.001 0 0 0.001 0 0] def
+/FontName/cmmib10 def
+/FontType 1 def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 44 /arrowhookleft put
+dup 45 /arrowhookright put
+readonly def
+currentdict end
+currentfile eexec
+90b1d4632c20f6f8d4e2feb3d7c2fb2d69ec9fb9685e8e3084dee6941cb0dd5a
+634c99b1d3e0b7558cab812b809e9913ebf383af06f306a3c7d5f8fa8b4294a2
+ae89e81e59ce734f75084dde2066f8f1cb64887f6595777b3697820cc0e4d85b
+dfabc82a6f8a1271f309e0e3011a9bc52bf61e9a2744d523d00323b2cc5c8566
+4b44211e2d2750bba46203fda40c19da54d71ed1b01181b8a821dedc73ef00e7
+7ec03491a0696a9165e40711bcf270b942a54742c59b0dfd76314b1c2327d393
+8678e331e4e056b84fd841fc87f8a58c19e653ee419dd98e4730728642f8595e
+cae6caa75e0506f0bdab6ae8a68c4c0fe539b83f6ec191f45b3d0ca74a897cc2
+cd5c1da955c84e768e1c1de92cafaed90d622c1dacbf9ce95e9dd172e169453e
+8b286bca2f29c017d1a1c6f5c0e977fc48f15dbaa00421d24600c669219af386
+17674c28fe3279793305398722552923252d2bc5a0b67125b84db382e819e186
+363dba81eca175feabdf8783feb3ece6bcd7c1c1e0555b844c0e79d909a7a4cd
+e840c753e8560bd9d51ced4a1d7e65e72e32afd26cc3ff4fce02f1b9b84372f2
+c218f49263251efbf2007cc6558608e838bdd42bd57c74019f680090ffb6c74a
+414bc284b4312b089ef5bd1c3e229e3bc70b6e1698f8bf8b0dc0f1318e790704
+c3d533d77f5fde830a5888a53315185a06988d2e24eee6522f97e2ed0b72f852
+1d8f549f4bf800474ad2b22947d626dee4f5b5e610e4b3ddaa7087b6ddf8d17c
+349e44854a2f357b6cc9513eb0baacef4909af1a23e93de6135ef41646f22ab2
+bb3bfb2652d3f45f9e956e943f705e5b2dbd7ceabba536566b1ad497d5f9c4ef
+feecfc5b0a082c2d31a3b993304470574470667486e0654b79a6e7c2337ca503
+d7c3dbd286360d7d12a2c4daa6ab1270b9e20b737e781906e8d8a28edcd1df37
+96ed0c52aeecd8bd7ba6277580dda4803abbecf235569e9e3183bce4637c3495
+0a8a82d2c6b129fe15c5642d37458bd35b453cddc07aff11d0df40cd30a2a5d9
+393b3a7c6032634c99d68e5b5b9caa36341f2489d548f857a74b5ecb0e846a33
+50bb16809cb24408bdb96ed9589d27aa28a58dc48df0f35402895cde4cee840e
+bd6897ab0d2eab41dd699e88dd4fa2e099a3c4c99369055a3a00cf308e13152f
+ce
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+
+%%EndFont
+%%BeginFont: cmti12
+%!PS-AdobeFont-1.1: cmti12 1.0-prerelease
+%%VMusage: 47516 47606
+12 dict begin
+/FontInfo 11 dict dup begin
+/UnderlineThickness 50.0 def
+/Weight(Medium) def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/Notice( Paradissa Fonts Collection. Release I.\012 Copyright \(c\) 1993, Basil K. Malyshev. All Rights Reserved.\012 The digitally encoded machine readable outline data for producing\012 the Typefaces of Computer Modern fonts were designed by Donald E. Knuth.) def
+/underlinePosition -100 def
+/underlineThickness 50 def
+/FullName(cmti12) def
+/version(1.0-prerelease) def
+/UnderlinePosition -125.0 def
+/FamilyName(cmti12) def
+end readonly def
+/UniqueID 4100041 def
+/PaintType 0 def
+/FontBBox{-36 -250 1104 750} def
+/FontMatrix[0.001 0 0 0.001 0 0] def
+/FontName/cmti12 def
+/FontType 1 def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 16 /dotlessi put
+dup 20 /caron put
+dup 21 /breve put
+dup 22 /macron put
+dup 39 /quoteright put
+dup 44 /comma put
+dup 45 /hyphen put
+dup 46 /period put
+dup 58 /colon put
+dup 95 /dotaccent put
+dup 97 /a put
+dup 98 /b put
+dup 100 /d put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 119 /w put
+dup 121 /y put
+dup 122 /z put
+readonly def
+currentdict end
+currentfile eexec
+90b1d4632c20f6f8d4e2feb3d7c2fb2d69ec9fb9685e8e3084dee6941cb0dd5a
+634c99b1d3e0b7558cab812b809e9913ebf383af06f306a3c7d5f8fa8b4294a2
+ae89e81e59ce734f75084dde2066f8f1cb64887f6595777b3697820cc0e4d85b
+dfabc82a6f8a1271f309e0e3011a9bc5290269b762294a14a8bfe78e181e66d2
+fb03556f5bcfe3389df778e07fa6fcd734377a83f9266572e3b1739be890e67e
+4db9d648cb1e20e1924191c87e774cca41219948fe0aed68f6d1c75cd93efe25
+eef7ab5a4f73cea6c8b2f8a0a83059c103885ad36545a1d6565755bf0771d84d
+b6c54d2072f4e9fc77143f6140e2baff6b374243451ddce023ca8d037da67443
+5c970c812cc10028a379918f53fb87b0996cab5a2196b3f3222cdbf716072930
+2793ad9ece17422f07a2e54f422659846eff044f207abf58ad41fcfa88d4e08c
+a6d3575e290e9f230eec57287e1ad6437b67dfbb7efbdad5629d163eb88ec443
+52acefcc1b9b1509b69916399b829cdc4d8c1f4c6ea3049566d68e90cd5c739f
+cc77545106dd4968202630eb2de419dffbd2aad79c7bf4d8c7ed65e8357106b2
+87bd7b718232ea843cf01fd491c9a2f4e895af25f837a577e40ce34d279168e6
+6c398ea5eb28736a94c04ed6ca3c38ceaf5c057d5db327516a74a68874f50306
+7442f45de61d0697e808bf696625d924d6128505aadaea49f4d2672f9609119f
+d6c3651d5adec480fc76eb2f85957d050f3d89a692ad2600ff095b0d51b287d8
+4d1eb719539fcde38c2ad6ef1e916cc3cd9f8a9ff821308ab1e6b35605f7f361
+16345817591bbc68717918284cbf6aa2317e38b6d3b470a7b1ce6c615203b831
+6ac330885df302bf766d91db157f42d131223f4b7c3111f5751218e0e29c32e6
+12f5f8e675a90d1d0267d49876e90213080dab5a3f02114f80e2aa12a89a800a
+8bafc8241bab94dbbd01cbf0deca1c997c95bb8bae4676c4a19fc98cebbd4c77
+e44f2e37c01af302d76b418a852e6fbf0f8e11ec7ddf3177c691f0f14e738e12
+cd417bc8a5920d987f29968eca075069db06540584ac046ae58cdc20cf69a7c5
+b596d3e5352c450043f2e4453fceedabb7879f3a9b3ad2d4665576bae8e676eb
+42149585c8d5d9fd30bd600a6654d4e725a4e5ec75936da61f005e0a678f4f9a
+2441ff00ad1af8e3644830157b827c82cafa6a9a0339e20943c5d8b6c22e637a
+7439dde6d78c229e4e1edc8db4891bf143105eddccdb3b698bfdcf0596f6dd83
+6715abdba160baaf39f4e68e8b12d7b24a3bf853bd2d9f6bc4a1d05ad692559c
+8948e7f574522467f2f20248ebbdf88e28ad656f888f937dfe07fbf0ae83d955
+6218424568e5270bdc04398a1051944c05846955868b141a20b96267c8df10c8
+cde9afcfaef4fda2e01b34843afb60a866b222c09dbbcd03def345e9ac179f79
+2bcd98aff34d1f40c13c7306a1a8508d0e8470288d252bc7650c381727cf4ea1
+c11322029bcff550ae4d7af2cd8490e81693cf3cb639b12bd7562e40dd897e63
+a393c83f7faae5d0d4e3cedc20f96390d5373a94402f9862fca06739c3ac219c
+0099b7cf8b581f52236b99174cb0ac72fb6b96f87873892a0242215c5da31e36
+e019998fba81667097281350a338071544b314c615019c0bb044ac8af31b5eaa
+849ab5c3734ff2fc41bccd95f649c6dfe2838218c15bfd84e8c39d1677b4949a
+2944254858b5262bc99690e934de731bb6385d16dfb2f81aca463478cd572488
+cc067f56d7840a241ad238686fbfe44718cd96242abce7e1db832516feaf46c8
+121d285306cf03792ae2e397200edf7150881f8d2b8f260953d1393d9b1d49b3
+1370e287eb10a587ce16f551bc2ba48bc2c2ae8cce93c661ed07d54a9b79c38a
+1bc516d2b094de6e889bcfa8d2e98170cce82a35d38357b42b5f1e3072e66a77
+9bd6e82ece95ebb514e08d679e966f32a728f241d4f9dbc90bfccfcb0f3e8d35
+9a0d82372a5b5359f4fefa861cc00f6cbcdaa3d9347772ecb27b8bbe74c0ce3f
+af6782d4100e9d659843d3b43c93969413aebe31960f3038f8ff2ad5dd9681d4
+51ec1ae91cf1e32ed447cc7b97445c8eafb5c9a873c7a32daa2db82b106f0fed
+73d69f3bc7b1dff1cf7575d58fee6f3c2ebc010ecd4d5c02c9b9ddfb87a0c5a0
+35ab7501da5c4dc522bcbf35417cdb48d83239f319d476453726d982042f803c
+38457f9142aa46845f800037e3898fec43970eba19625a5c360d9b636309edc8
+15253fc716d25f1b99d533e6ad917e37dcb8e40533ea98dbf740d1011a6b6350
+9072ebdeb7cba81d9348f478c09ef9435303754a5da1b2ba7913a73cb9164df0
+5df77f4c437025dd71c1fc7230e138b47a4f74ee9cdba3aeff5fa69166bbf538
+d735e5c958ebd7664f7f571b92e6830d804885e7c01e7126980d04c85db3dc51
+de6684497a52f9b14b169886442bad2564af8ca8ab851a7a9ac208602b9018df
+2f8caa5b89115d0a2aba966794d54152b479b10232ecf7f0388c3e5070243c72
+de90c637b7a10c7f1aec59d487aece1e20d4498f39c87b11d69741f1a2c98e3a
+2fa6f92fd35746eecd9f7eb81813c724d46b68311a949334271256dd6fe864a7
+d09c083abca2a006e399e504087f979ec02249f5ae6567bc6384064f5227e16c
+316458fafd023294e06733947b4dfb78bb1cce13340c1109259f9e15c5fce773
+90d8423a0e6c5e3faeb98cdeeace0db581e857d316ad0bd0723b96d50b047df3
+37bbcf694e0be7243ba71a7241227c6003cce7ef31f39eaa7cf23381388a1196
+814ee75bd22d73c1646ee2dd75c051d7c9e4c7ebbfd402316df8b5d3a74392e4
+e2ade10d9a207ace256cac51f2039404f194b28e39d7b848158f8f84ff60aed9
+88bf6333829942b03e9175b35833af92e1c68ba5382b8423e62fdb2417444315
+124d258aa3b737e1811a4cc74aa2055ff1fae26f79651d83c04800f6fb4e37f1
+ad6c90afdbf6b42683b4c1b590be0a9ebbcd31b196e950481f15b35a88572f8d
+6e4cae607bc61ded82a89a332c22819ea80d149d95c791bf7ddf0f42e6d35e7e
+296f7e716787cc2cb22016dfce9e764f50a817b2fed5531cff5fc8bb044f35e1
+270f96be2e5d9db54049cbe59893e64c5e22703c08932d7caa6e20e408328f38
+72b9174cc186b7068aedda6adecc592db0130ae83f9be00e020cac63f26c0adc
+05807ee064348be20b1a81d32c9a197ca404d71579224c7505cb0079b646abb1
+5b4d69a80e476fecc1888584b8f9d5e853f0f8dda3553f636771cb2f380b750d
+2bcd794ec120427e75b84d3165b2a28b95fea3f6a8b7166a9394fbe1ebb9d9de
+f494714fff29edef5c7183a9ca34113496843bc663175a1c608badbd1eeb6d9e
+a91b2d6958528649eda39630512e2e2fa290f91dae8643bfee6002b822f29ecf
+127d1bc50f6004d8b4f8dbd2ee0129f825c2890b39ea430a4991aa611de25341
+794386e7469be7c421199af44c41d48b58bf3c5d026abe612088e21473253007
+2df32a5bea725e421f0d58ac94754a5e1759e7f20f33e434d2bf7dbbb7888ec3
+b2f7c0cea938ce1dcadf56df7e896e4ce3848ebddd45c6e20c2e7f37c6f649c9
+96f211a8840cdcb8dcbc713603c62f7bcf33dfdd550b09c6399f3e505963b0bd
+dbf37c8ac7777e8b48897e0a3f1e19519760ee29d52d87d9b631db6521248184
+bba1bd5984a054a5e82be5e0d5f32fd439c3b9d2cb0436dedb1b770faedd4ed3
+84360e79a2eec2160299c371c08e0e849d76f2ed7dab8a7e9728f6c7d1f53df1
+e96c0a65bef7ca096afd17dad6a17bfd9f046491d3b53da5c9b98b95edbd8487
+08304966c47f153b0bb9e92a22534883a786024961cc555cc40e7ca89bc9ca84
+f1d540e49636891a44079e62cf33dc66f044743093cc3ef29d6dde3f17ad9ab1
+8672d367bd3de66fd7f0dbb3e756d75bfc5cf3576a631c177c6d7eee3293af52
+e3008fdfdd787daf160f1645ac0260e9e0b10a34d3e270f17d1bc03da482a994
+d57935efd06375742d86effa6cd4ac4ae226e12f368a7877c3068822c112e160
+b47416063d12f8171c2b06c0af6edbcad82c0556b8b0221967a9219c0985e473
+4f44851c0c95caefb61a999cef293367295f951e72a0fccb3255446a94eba2bb
+0e66e7e69085c083b905774183437ed18e43cfc451df8e21538aa46cacbf330e
+01a76fcff3abe65a2103c78beb1e6c2dfc7f9034353db0a2fa592d38502c8b6a
+a8aeb56d789b3558103a3f749e4f22c04c5e426f2ba2577e49adc64d88a854cb
+81e724928daad7cb26114e543a069aef4c290349e9eba4a7be477a3d52fbda7d
+e28ab6fa5a6005f75396d81048b0ecb60d18115aa2d54df15699560058e498f9
+2d3094a7194206e0eee43ade6daf0619abf7482d36d9a0a20799743bef60200f
+f48fd7cb4f868384dbdcb7c1e6b82a73e1597ac602d66fbca913c10351f30cad
+cf043801ca98ea8e2ff691cdcc6c1faa53021a768682c4e4b2907f1b08fe673d
+c97442e1c5ddee2ab54a325f8f1adb7a926cff96cd11914b49c82b0f462c567f
+fa23f4578f925462134c3684b0c194a016b05d17eb5135f126c367ae83584118
+8a2e927f7f03b0972c88b3256e480ed9b4e3bbfef58226d2085c1e35d57b4395
+3aceb7ac509e5c7e46e2eb35d36f2cc368e6955f64def1aa0c9d0455a5744512
+42cad85a420c2d078d569b4667d4f6bfdfbb600f6a4519327616e3da82f70a20
+d6fdb5a5150f5685ed2222c58c3702594c452bd4ddb45e2fad4370dca80e4d51
+f539cd379df2fba93ee0d5f011ef989fcc4823d6914e64ac97f8894cdd9ac3d4
+c4c82bdc7a5290cde9dc051fa56409f258efabeee271c9eb1d86a16c9cef8e30
+31b85b032e0fc3af7dbb9c02315e4a9d32afc8b169a1faa84e4730f9a5c9ac14
+cff53924a20d01301d4ff8f98a823d758d22fcdded3d961647b2f50bcfd3839e
+6bf5d53279eea1c4a9fef1764f2c74a56104134da4a06d50213d9a8017658340
+78d0119160ef44ffcb4b88bb50ee22e440afe1a9d2e4b2e1e4041c0c4c2cf8f5
+70c1b286750d8722099f2065fb4abeb93d8d43ce0fe2d088c79a1c5a15c7e47d
+12ee59116e74dc8fb361c9cad0c51cdad73775f3d4dd92568beceabe728918cd
+a28de642acbd13292f7a2b6e5e4d0d9df61577994aa882f765749fbd7fbad99c
+a8b741f8c59a4eb28478e5265eb10a4edaa172f11c90d6154056fc5f533b569d
+fbb98c25f73cef97a6345f4d7dcf50483e71976b04a60df76966ae74579c4234
+5bab9804f24ef9e8f8bd0bb752958809aece8e98cb06c8e72cecff9cd0a0d0e4
+0ab7267059508228950ed546a1c5d24bb3b14eba6de83afd6b3a7349e19f0b45
+6a9e5326551011f8dd9ce1140534966f4d15947555b7a40bb5d421c74320a107
+2d9074c028e2ce1db896e9132b7f2d0a20de9190b4a71f4895081c9de4fc48d9
+7b62fd54b690722d95d4d8733033026bfa68c6e9a3b3a8fd37c08395977639c2
+fd7a20f235a9d4f444acd663a580869839d9fc64690c86841c44ad3c1c6596c3
+d61ef3941c0abebd8a7c74f668c0404fa2422a84f1d2903f7aed6da131bb2ffa
+a579e56507f766fe5a3532d928a5e0ea1b17fe0b9a9aea1487c4921f8a8c1c05
+73306fa83292a345d4c31edb4a174b8fa10ace981d69e231f6b14b58e4ce086b
+727c24d7bab11df76cd749e41c77aa1ebde852f4e142b3bb97baa7979ac066b5
+d336f6d485a2c23f0406fd66b3cf82a860d071558f0901a9fcceec8023c63b2c
+e2c4200c8974558e492526c01232eb0ae568c1c7de2015eebc3997547a5b21fc
+f5b617b0061f9bba851b7e739f4f590fbeb3d943fbc7332c2a73f448e370ecbd
+fec4ba4859a2832038a1e4e9210e0c42f93d9ad226807aeb63913b66837126cf
+34bb08b5330992389e402e8119038173806846b39befd58d119756bf63797c96
+2421e74304ca306bd58e9932fd0657910db2772336057ec8794c7ff537777cea
+80194f54113f016caae2f4f5a9f213adc6cfc623aaf2fc74ada1af783dd654b3
+b6aa9d85695247c995b1d4d9c17c1dd46bfafc8cb3079cb5af7ddaadb20dc4da
+31099b056b59598d9a00b15f743d35b8e14374dd1afe24c52482b9a5fafdb294
+9667117cdea4233326c36f1f0ce65d2e9c40c69e65cd056d38da151bdf5bc287
+e3da1721cda0f6a909d51d993d9cc3fbc27cb13d0aad1e375a4822b00305e461
+a6e310eb49aceeddd7ab5ecebc5f9dcdfa1a0a7722316d34753ebf33300d96c9
+76c841c30dd950e83fe24f4608677731e09b36984c74b8056e284ef9df90eaa4
+d3bc4d73b11cfef54421e3324451d042c9ac04a38f4305119799cbdd8b7bc0ae
+21f37efef4cadf59434859e17c1f70ae62e602230705702e653c0e0237b98e44
+db650d3935501e0ab1d9fcdfaacec2a240673a86e8ca35d7c818464ceb84984b
+3aa351c7331793c94482b72890760245ae1e0eb673dfa581d356fec19e42c933
+f5e26f42f9f4fbb2c6ee16257fcc1e9c126b32fab5c417345438f147fe73436b
+a8caf5a3d38c95b3a1f41bd8426acc8789e00f9a4bf7cfc2fc5e35e9ac3307a4
+e58c2f6bbdbdd20308716c0efc43a70af5fe390680a4ada3d48359411abc0771
+133dfd7ad2b7f470696638efc1946be5275e4aba06cf57d52be1a0017bceff4c
+ae4659148566da6ffe23b9c877c87b482847ba9015686dbff6cb84efd4ca80af
+686d6dbeb50c8dff850b2a44e473911ff6e3879069f022a4c7bf9f02b9c2680a
+215997410426615b968fa32b2b97fd42f598ece614626252c94502ec08c4336f
+5d720092e6b65721a25b44e3481c654ef6d375716c05e2ed02ef6f5a841dab7a
+d5890b550b3793ed39fde665932f2d4bab94f1a1fed0d02e28e05a4accf04881
+26f103d92a89d9ad48431bfbb0c444c989920d20519d06a6c4df61e5e27e5cd0
+6e90dc1c877b1ef6339bfb9dfeff55384af39306189b95e302a722385e90d88c
+e9db247e7f8b8d221fa03e9f88973068a618bb9b66fab124e27c25153032b28c
+7582c32a871deeca45f17e7a1b8e1b9271a6339b89496edfdfba7199af4a8cd5
+f1aeca1a50a48bcee8d76222ffc428135c9bed34cf501e7b35c8704a01b63ba5
+fea49c9f95fe8a706ff192afdceb0ee32a1f088a9ebeaf7d7cd096ba4d4468ba
+ab9d10af1f68931ae29d8aa56acabb8f15d16efd1b3a9f24f993aac72c239da2
+acbd2cf14405d970edb465947a16640c9834701790e4dbacb794ed3241d7b067
+996e451407dc9a0b16f17d151fe3fb5100378189ebf831e90fe75624ef39778e
+5ee6085f070fe294849ffdb68810caf03da69e9dab0f8938fe2333b8b7c54094
+3a574ac3c2382c21d5ef981b5863f323a6721115988b3736aed1c9b8871c01b7
+ca0f94c6fe96be57e180501d77257c92f440b6f15c469e089922ed038f369f35
+d94ed5edbdd84870aec5328083f7c5664b3e4d60942ba2dfbe61e8d9b7bd101c
+7a3de9ff4346bb7aace2d72f9029493ef6e79b06ab6611cac49243ac7e736368
+5b0674947d74a2910f1e66618fc74bdfc22697540e9e5f7eb2c5ab1542216a12
+fed5ece970829982947e231f6182a9ef66b5f51967cac03413462db70d738c81
+dd3e28ad5e4adc466fba140aaeb6ee2d31936246bd2a9a0f25dc21b9c317e222
+cf6cb1b26c46a865b9a5d5ae6a4a56d635e8726b5468aca8888c2a11897af3ea
+5cb976630459197670afd34f532f2c296086cd5c0de8fc5be704c7369afeebff
+d7f09fe91484770c0c6457b5081c8236ca1bbc20e859cddd3167f1cc9740a78d
+0aa8724a14acf820662dcdf7fd9b58d773e3f51d8b74b05f5a7faf16263b96cb
+7d01f532fafcf0f91038b946846cf6ee5ef2de240439b80d2ef872cccee813e1
+d99368cd14486479416ec144de2f32464f123300d09eda58453ee49a08b2e103
+47db13e9678e5ac3432c7861ebea2084d8b4568650667c66d0853d149dae06f8
+6a12cc0c94116a60b3837314b659a93b57ec52251f5a74d929b37abd2ee1c0d5
+4f6c988ba2a9820473a744caf79a320e20354658e869ca9aa035007f54dca13e
+9c8c6148b13f29a7a66c9c2303e0388eaea41bd92142cc168800d2abebc3113c
+d4559b2aeddb24af64d383a60b2549fc22e950378f84087de6ae274f545ed737
+0747700787b952542a7449590b7b9c484ec3d8e097fa4762ba0774d0bf44e92d
+60817660534718f733a2695347ce10b9cc37aca0402dec1079cf3e63b6156eaf
+308ef724f95c149bef5ad1b4bf76bccd7574baf017c86ba1ec12465533f26017
+16b13cc30f90124905bb425f3346c00e93126b366a00fa3548e669bed06404d6
+3bea6d89e750f7b4754f2af622de2730fe0214f5e7c1522b5fb9922f31a7e4d3
+7bfa35753037fd3b48b02ea326144d469efd5d46e29f5fd30587e54668e1fbda
+b0e5da9c953be0c45ee02cb5dd89f7c1eee1ca874a450d9c9f2c8eefa7bd58ee
+86b2edea126c2bc87f50cb9332c55269c874a6bb18e7cff9e9c3c65f0eef91c6
+8c779d91839faeb782ccc2d571d144217e8864109e8735498b46f27620a73d10
+90591476305d0353bc9f1418642e399b39b77fbce81057990d89e6dde65f28c7
+788650e79399a7d33ae6f643199ed7297171102f5ee835949fd9c3f4b2068d0e
+9256e80130cbdd1cff7729528c77907ce502fb3f2fc9340657034050c41f58f8
+d40d34a91d000d243346e35f02f4bad1c6a91ce9bd2b7bdc7145507c4031bde9
+f26697d6f61fc2d0e3ae5c5f8a72bed7c9f4f17e7ab45979816cfddff9dcf58e
+02aa14a8a58b5abbe7b010f813a77f72d4026308d2fcc95684885e36054fad31
+5cf1734902dd5c987e67b51166105749949129602aa0d5e065a645ce99f3a530
+fb9792dcbc3bc94eb15e005bb8b953ac90dab2819ad8804b441dcc82430ba58c
+c6d2a9b53709264fe1eb2ca98aee5964a0f4a46018964c7d6c80613825906b60
+e3abac854fc2916fc30d8f98456d99a34d55408d15b27556ffe1c6f78b69962e
+3699688342024ec413958046f7043a4126aea01570060f72fc80232e44069f21
+d2254040d6f68efea6a81d45f1635f872dc5001b181c9cb506080412b5286d3f
+9bd5e81c582d3dbd815a102a8f7fc2dd47e8c2637067fd7094744cd9d6ef052f
+2abad10eb57e948db9853b0a9d7cbdf77ee982c74b79d08a1665c5bbfed508dd
+3d088aeca5985aed382afa5c833d47801999073feb2ec2079b01be3537b871cf
+2f1c7936d540abfe08d6bb94f81dcae5e94ac58a5ff0a2337f73713f71dfddd8
+34884902da9f5d9422abe3eafa1e3ba39aff57b57452f315bd4d96c5c262dc09
+1621090844039e45e62ca40714caf2086e6eea494243d1fbd9153f5e4920fd8f
+b37fa2e020a0cb1833c59039cd87f832c21a2ba0970945325c0c092ed9d974de
+f334a44cdb77ca9c23805a331cd895014718a35c24f9587ced2e5fc990c28dd1
+a1efcc72ca6a8037134fdec961d0a63857be4f65076daf769c6f52e7c8f96ece
+e0cb3eb3001120228c1e1a21ea46e80fd13c73c5b3e188c2a392249bfa3a2c2f
+8d4e608bbb3218d9c527bab656e341952a47002056146b85f804cb0522ca5407
+aa69625e4efc3b8882a6f23d64dd1b630991999e5b26e920bba38d43a4980fab
+bc0c755cb403f724323dd106abed53a21bbca6a8c82e202a515fd134f166c9d7
+e027bad4e6d72bc9be48e73e502ac64436122509c302bfb712ed991211ee0f9e
+bbb95aeaffb8e0f0805ed3dfd4076cb19e1108a81658e8d194b89ae3bfe41a52
+8f175a2484414b57eeaed988f4e2ed54e48b5ecd5256b85857e2f1ad71cda4a6
+1c8fde9f0847abac111de5421449e4ab0762d1ee3df27bfe29e6e1447e80fec1
+dc7fa9f3dc7a5d8e67e952c72fe39fdce79a8df876e87266ec9be9902995b0eb
+611825634cd8b728decba041d63b68357f84a7efde543057990d1dae9343aadb
+8b16eb60e9178465767c67b4d63e050b64f8ac71e64588298a336f3fb7c62761
+9a76e78614f932d94e1887a86716a1f738888ed1281d60dc8f26e8deea5c3408
+395812d5ea203a6d5f08ad6bf2a33d560382f95039b1d1b4da749d4c1425dcc8
+722de1489f0761f0f28288fb02ffe646ed5fdde587c0159c032ba0a5f6ad5c10
+ae8e5c1619a9023151d67f6c83f2310e999c1e19c6aeb657833949007b3a10c1
+69667729080033abc5fab5552a0f8feec109ce8f39f5a37f3bba527eade618fd
+1256225d62ac3c14c204153dc73cad820e7442e25992c79a90493c8844e3271e
+bfe271dee771405d9aa83c61d8b8f8d4cc7ed4d26e168848cd662086fad926a5
+4c2404c9ebec01371568f09edaf751f2c78cb0230bd330ee8d04a8998b2b4b65
+4afb92c6046ea6d194034b53b653bfc22c32f20d7e35c227bae69e45af4c1e95
+0402b4b877fe2b097de42a1d4bcfec45745345995a0b13ee3c9d9811c2c520cc
+152b2d957ba99617cdd9ede68e462b37fd58a206782747dd3593ddf488a1aaa8
+d6dc4b9e5c19f894c4cf13b28219da2500a1c202d0542f761b1ef03d6615d606
+68f8c95058011eecd5a1d71894243f4cc47105854c7f26a41277ad24aca7c9ca
+65fd78e1146011cbd074fd834facfeb1b3dda92672a5a30ca961bb04945497db
+59ecf905bbd45a18f3517980466567fb46f8cc219b21fe99b7fadaff92ce0397
+eeb923da8df33cc0ec86f84874cdabf030acacf530f21f39bdaa8c2c99a91c4f
+52a040de06d407e9f1931fa71c872dd430a5bd4becaacbe5d7def0ea1fd1db02
+1fac9ccb4f01332ed7fde57a432f1186163d21c4759f783e05285af5f46e05ce
+9644ac6709d4241ec64ba9d44a1bc437220c27aab0c4dda2147ce5b062b3cbd2
+e8f185b9daefb31eccc8f131d90d8d1530f8b250cb0eec762dcd24ac045bb55d
+306f9c78ce029ced629e312b18429802badf1b61baef6a6d1ae7d232f1c6c7fb
+17d0c735f6b5dece447cf1822a7204c1a565e54fc75f01c34c0f211ad60d8b7b
+037a321f1aaf5b8137cde4ae3fd3e25d48fd828b940e16c77f8b462ac0dcf670
+292a26a45c2e87e13c5127ea8d3fe77b388795c0ebab2fe61815439059390986
+14eac91566b4bee00d6b97ab00eb41c2de3ecb16335b1cd9ce079cb86f791759
+76701dcda5eec778428b79c521112d7765acaab8251630318b71d34195a3c2d3
+696f999ef584f88a321dbe2556f82090f9e9be835a43c6ec66f3a6b8aaa85367
+bd4a9f49edffbe1c7b8724ab4fc7dbd134f3fb19cf28a7b331d49a31f7df6d95
+34d4cfac421de2ac3d5426c1c3cd1edf864834a7f68e096e23d797fa2052edd7
+6c12aa0273ecf8578e292e7b18ee72e0903897bc2d60cb81b698da1427ed39c4
+b4ac6b07650e34ad055226e60a7c00fff9146539c476a0b398d5402043d73824
+18945d6cd3344a398b953979cc46ec6d47488a7721c9ab46db06a02e5b01b194
+3d095160cd6f0187258098ee1c378620821b68ccee6eed02a8ea644e38256771
+31f3c4fb2a8d92b5a0c918184bfc745a9ffa7674d535a52625ff49ee5b084a7f
+ba846b86b09e09abb64ce126c165b24650f736a76ef1deaced87dd7ab8c663fd
+e845b17c15eaa177478cd65a6ef357ed997efff956f38ab61db4cf5fc4c8036c
+4b0f95c254f41d2a1364e36b845579e168743eff80d16b21a7162f7da91b7ba4
+7b4731238afc1808c1543e5fa11cbc511c3b528d02a5bc9a57adf675d65d8469
+fcf7fbf8c4ebdabcce93010b0150bad77de0f090530b6c5ebea8bd66a38cc1fe
+bcf8721ca9b201059f3627c2ec4490314c1a
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+
+%%EndFont
+TeXDict begin 40258431 52099146 1000 300 300
+(/arabtex.308/examples/guha.dvi) @start /Fa 141[19 4[41
+7[22 1[22 27 29[37 10[24 24 6[24 4[14 44[{}10 49.8132
+/cmr12 rf
+%DVIPSBitmapFont: Fb nash14 17.28 73
+/Fb 73 251 df<1230127E127CA212FC12180706818505>9 D<EA30C0EA7FF8EA7DF0A2
+12FFEA18600D067F850F>I<1340EA01E01207EA1F80EA7E0012F812600B0780860B>I<EA
+01C0EA03F0EA07F81338137813F0120313E0A21207EA0F40EA3E0012785A12400D0F808E
+0B>I<120E123F127E12F05AA213C0EAFFE0EA7FC0EA1F00127C12F012600B0D808C0B>I<
+1270127C127FEAFFE0EAE3FF00E0138038401F001107808611>I<1304130EEA038E1243
+EAE39EEAE7FCEAFFF8EA7E60EA18000F0980880F>I<EA30C0EA7FF8EA7DF0A212FFEA18
+600D067F850F>I<1206EA0FC01380A2121FEA0300C7FCEA30C0EA7FF8EA7DF0A212FFEA
+18600D0D7F8C0F>I<1340EA01E01207EA1F80EA7E0012F8EAE0C0EA01E0EA07C0EA1F00
+127E12F812600B0D808C0B>19 D<13E0EA01F813FCA21200EA60F8EAF878EA7CFCEA1DFE
+EA1FCEEA3F84EA7F00127E127812300F0F808E0F>I<1320A21370A713781338A41330A2
+1370EA7FE0A3EAFFC013000D1681950F>29 D<5A5AA35A121F127FA27F12F712E312037F
+A26C7E7F13FC3800FF80A2EB7F007F130F111681950F>I<FC000101808001>38
+D<FC00010180800F>I<12021206120CA2121C1218123012201260A312E012F012F812FE
+127E127C123C120C071380920C>44 D<1230127CA312FC12380606818505>46
+D<1260127C12FCA212F812381200A81260127CA212FC12F8123806147D930C>58
+D<12201260A2127012F0A212F8A212FC12F8A312F01270A812781238A8121CA71218A312
+1006297DA809>64 D<12201260A312E0A41260A21270AB12301238A7123CA37E121F13E0
+120F13C0120712010B277EA60C>I<1580A2EC01C0A215E012301270007814F0127C12FE
+6C14E01380EA7FC0D83FE013C0EA1FF0EA0FF81207EA02FCEA007E133FEC8180EB1FC1EB
+0FE11307EB03F1EB01F9EB00FDECFF008080EC1F80140F15C0143F14FF903803FB80EB07
+FFA215005B14FC1C297EA820>I<154015C01220123000781301127C12FE7E138001C07F
+EA7FE0123FEA1FF0EA0FF8EA07FCEA027CEA007E133F131F90380F8160ECC170EB07C2EB
+03E214E6EB01FCA2903800F878A2EB01F049487E90380FC03E90391F803FC090387F001F
+D801FC14804848130FD80FE01303484890C7FC48C9FC123E127812601240222A80A321>
+I<13F0EA03F8487E487E121FEA3E3F38781FC0EA700F00601380EAC007EA8003120B818A
+10>I<EA0F80EA1FE0EA3FF0EA7FF813F01260EAC060EA80200D08818710>I<5A13801203
+13C01207EA03E0A2120113F01200A213701360A313C0120F127F1380130012FE12F00C16
+81950F>71 D<1220A21260174017E012E04C7E6C4B7EEE07FE6C92380EFFC0007CED3E7F
+007F9238FC3F8001F0903807F81F6CB6EAF0036C4BC7FC6C158000014AC8FCD8003F13F0
+3212808D31>73 D<134013C0A2487E487EEA0FFC387EFF80A2387C7F00487EEAE00F110B
+818A0F>I<13201360A2137013F01370A21360A3EA01C0127FA21380EAFF0012FC0C1081
+8F0F>I<14041406140EA3140F1407A31403A614021406A2140C141C1478EB01F8EB0FF0
+3801FFE0B512C0000F1300EA003C181B838916>80 D<140315C0A2EC0780A214031500A4
+14021406A25C141C5C14F8EB03F0EB1FE048B45AB55A000F90C7FCEA003C1A17838516>
+I<1302A21307A25B7F80A2130380A380A3EB02F0130638400CF838603C7C38F0F87E00FF
+EB3FC013F09038E01F80387FC00F381F00031A197C981D>89 D<13FE3807FFC04813F848
+13FE48EBFFC0D83E0313F83A70007FFF800060131F12404848B51200130F0001B512C000
+7F01FCC7FC14C001FCC8FCEAFFC000FCC9FC2111819021>103 D<EB7FF00003B512C015
+FF5AA201805BEA0403C6481380D91FF0C7FCEB3FC0017EC8FC13F8485AEA03C05B48C9FC
+12065A12081218121012301220A21260A412E0A47EA27E1278127C127E7E7FEA1FE0EA0F
+F8EA07FE2603FFC0137C6C90B512F06C6C1480011FEBFC00010713E0D9007FC7FC263180
+9121>I<EBFFC04813FC48EBFFE0EDFF80A2EA0200C7001F1300147F903801FFF890380F
+FE7C90383FF87E3A03FFC03FC0007F010013FC01FC131F01F0EB0FF8D8FF80130300F8C8
+FC2611819024>106 D<13FE3801FFC04813F814FEECFFC0D8020313F8C7387FFF80141F
+A249B51200130F48B512C0007F01FCC7FC14C001FCC8FCEAFFC000FCC9FC2111819021>
+I<EA03F013FF14E04813FEECFFE0D8003FEBFF8001031400EB003F49B5FC011F5B48B512
+C0007F01FCC7FC14C001FCC8FCEAFFC000FCC9FC2110818F05>109
+D<1504EC010C0108130EEB18030110131E903830071F91380F9F809039F83FFFE0007FB6
+12FC14FB9138F3F3F839FFBFE1E190390F800038260D818C24>130
+D<1680152049EB21C0A2491361EDE18090380701F190391F87FF00007FB6FC81ECFE7E39
+FFF3FC3CD9C1F0C7FC220D818C20>I<EA0820A2EA1870A2EA38F8EA3CFE387FFFC0A214
+80EAFF9FEACF03120B818A10>I<EF0FC0EF3FF0EFFFF84C13FC160793380FE078923980
+1F803893383E0078913A01C07C03F0EEF01F913A03C1E1FFE0DBE3DF13C092B612FC8018
+F800207FEEC00F03E0C8FC1260A300E05CA35D7E14016C49C9FC007C5B007E131E383FC0
+7EEBFFFC6C5B6C5B000313C0C66CCAFC3624809035>145 D<ED07E0ED1FF8ED7FFC4B7E
+1403913807F03C9039200FC01C9039601F003CD9E03E13F8EC78073A01F0F07FF03A03F8
+EFFFE0007FB71280EA7E7F1700487E39F80FF0032911819027>I<ED07E0ED1FF8ED7FFC
+EDFFFE1403913807F03C9039200FC01C9039601F003CD9E03E13F8EC78073A01F0F07FF0
+3A03F8EFFFE0007FB61280D87E7FEBFE0015F0486C90C7FC38F80FF02711819027>I<13
+4013C07FA212017F1200A27F5BA35B13601370A7EC01F8EC07FE9038300FFFD9383F1380
+5CECFE0F903939F80700EB3FE0EC801FEC00FEEB3E0F90383DFFFC007FB612E0A216C0B7
+FCEBFC00232681A521>162 D<7F7F1201A27FA37FA45B1200A67F1370A2EC01F8EC07FE
+EC1FFF4A13800178B5FC903939FC0F0090383BF00790383FC00FEC803E90383E01FE9038
+3C1FFC90387BFFF8007FB512E0158002FCC7FCB512C001F8C8FC212681A520>I<EB0FF0
+EB7FFE80495AA214BEEB3FFC6D5AEB7FFF007FB512F0A29038FE3FE038FFF80FEB00011C
+0E818D1A>170 D<EB07C0EB1FF0497E497E017EC7FC13F813E05B7FA27F6D13E0EB7E0F
+90387FFFC07F15803903FFFE00007F13E091C7FC13F8EAFFC000FCC8FC1B1681951A>I<
+17F0EE01FC4CB4FCA39338061F80170FEE0F07002016FFA2701300006016FBEE01F3EE00
+02A200E016065F173C17F86C15036CED1FF000FE4AB45A267FC001B55A90B7C7FC6C15FC
+6C15E0000702FCC8FCC649C9FC311C809A31>I<5BEB0FE0131FEB3FF0A2137FEB6070EB
+C060A300011340EBE0C013F1EBFF807E007F13FFA214FEB5FC13011814819316>174
+D<13F0EA01FC48B4FCA25A38061F80EA070FEA0FFFA33807FB00EA01F3EA00031306131E
+EA01FC127F5B5BEAFFC000FCC7FC1115819410>I<16801503150FED7F004A5AEC07FEEC
+1FF8EC7FE0903801FF80D907FCC7FCEB1FF0EB7FC049C8FCEA01FCEA03F013C05B0006C9
+FC1207487E7F7F6C7E6C7EEA01FE1200137F7F7F7F1306A21304130C131C1378EA03F8EA
+7FF05B5B48C9FC12F8212A81A91A>187 D<154015C0A31401A3140081A41480EB01C013
+03EB0780EB0F00130EA290380FC070381007F0383001F838200038EB10F8EA603F14F090
+380F007800F0C7FC15F86CEB03FC6CEB0FBE007F90387FBFC090B5121F6C01FE13806CEB
+F80F0007EBE003000190C8FC222580A321>189 D<14021406A2140FA31580A215C01580
+A3150080A8EC0380A61208A20018EB01C0121012301220A21260A312E01580A36C1400A2
+00785B007C1306007E131E383FC07CEBFFFC6C5B6C5B000313C0C690C7FC1A3480A51A>
+200 D<154015C0A31401A56E7EAB81A681A38181EDFFC0A21680002014EF15E3EDE00012
+60A300E05CA35D7E14016C49C7FC007C5B007E131E383FC07EEBFFFC6C5B6C5B000313C0
+C66CC8FC223780A321>I<7F1201A31203A37F1201A97FA21200A77FA37F7F387FFF8013
+BFEB3F00487EEAFE07112481A30F>I<12021203A2EA0780A313C0A21203A31380AB1201
+A213C0A51380A3EA0700127FA2127E5A12F00A2681A50C>I<1307EB0FC0EB1FE014F013
+3F1331EB60F8EB707813F83801FE383807FF30007F13F0EB3FE0EA7E1FEAFC0738F001C0
+1510818F13>211 D<EB0180EB03C014E0130714F0130D130CEB1E78133E13FF000713B8
+387FEFF013CF138738FE03E0EAF8001510818F0F>I<12037F7FEA07F07FEA03FE6C7E38
+007F8013FF000713005A5A13F848C7FC123812201260A312E0A67E1270A512781238A412
+3CA2121C1218A31210112B77840F>I<1580140115C0140315E01401A2EC00F0A2002014
+70157812601538A312E0A215307EA26C1420007C1460007E14E0393F8003C0EBE01F6CB5
+12806C14006C5B000113F838003FC01D1E80921D>224 D<15101538153CED3F80157F16
+0012208115381260A3153012E0A215207E15606C5C007C1301007E495A383F800FD9E07F
+C7FC381FFFFE6C5B6C5B000113E038003F80211C808720>I<1306133EEA01FE1207EA3F
+FF481380EBCFF0EA7E0700F013E0EA8003C7FC140B848A0F>229
+D<EB0F80EB3FC0137F3801FFE05AEA07F1EA0FC0381F00F0003E13F8007813FF0070137F
+0060137E48133E48130E180E818D16>I<EB0FC0EB7FF03801FFF84813FC120F381FE07C
+383F8038387E00181278006013005A5A160C818B0F>I<1203EA07C0EA0FE013F0EA1FF8
+1219EA10FCEA207C133C133EEA601EA2130EEAE00CA212F0EAF838EAFFF8127F13F0EA3F
+E0EA0FC00F1680950F>I<1340136013E01201120F121F123FA2EA3CF0EA7070A2EAFFF0
+A27F127FEA1FFCEA003EEB3FC0A2EB1F80130F13031216819510>I<1318133CA2137CA2
+13D8139812015B13F0EA07E0387FFFC0A21480B5FCA238077E007F139F138FEA038E13C6
+13FCA212015B6C5A121B818F10>I<130C131F8014E0497E6D7E497E497E80A201C11380
+9038C0CFC0EBE0C73901F383E013FF6C13810003EBF9C0007F13FFA201E7138048C6FC00
+F8EB1F001B1681951A>I<13101330A21370EA01F0387FE04014C0EBE180EAFF61EAFE43
+00001300134213C613C413CC13C8A2EA01D8A213F8A312005B1370A21320121B818910>
+238 D<EB0780EB0FE014F014F8131FEB18FCEB3C7CEB3E3EEB3F9EEB1FFE14FF7F7F1301
+EB0003A514021406A2140C141C143814F8EB03F0EB1FE03801FFC0B51280000F1300EA00
+3C18207F8E1A>240 D<EB03C0EB07F080A2497EEB0C7CEB1C3EEB1E1EEB1F1F14CF9038
+0FFFF8A26D13F07FEB007FEC0380A415005CA2140E141E5C14FCEB03F8EB1FF048B45AB5
+5A000F90C7FCEA001E1D207F8E1D>I<EC71C0EC7DF0A214FFECFBE0EC186091C8FCA9EC
+01E0EC03F881811407EC063E81EC0E0F140F158715E70020903807FFC0A26E138000607F
+EC003FED0C00150800E014185D6C14705D6C13036CEB0FC0397F807F8090B5C7FC6C5B6C
+13F8000713E0C690C8FC222D809E21>245 D<167CED01FE1507ED0FFC151FED3F0CED7C
+08ED70005D5D4A5A92C7FCA200105B5AEC07C015FF006015E016F0809138007FE0150100
+E0EC006016C015016CEC0780150F6CEC3F00007C14FE007FEB07FC9038C03FF06CB55A6C
+14806C49C7FC000313F838007FC02724819424>248 D<1530153C153F0020EC7FC016F0
+ED1FF80060EC07FCED01FE1500163C00E0151C160C161816786C15F06C14036CEC1FE000
+7FECFFC0D9E00713806CB5EAFE006C14F8000714E0000191C7FC38003FF0271880841A>
+250 D E
+%EndDVIPSBitmapFont
+/Fc 210[16 16 44[{}2 49.8132 /cmmib10 rf /Fd 133[20 24
+1[32 1[26 16 20 21 22 2[27 40 12 22 1[15 25 22 15 1[25
+1[22 25 1[15 36[15 11[15 17 15 4[15 16[25 25 25 3[15
+16[{}29 49.8132 /cmti12 rf
+%DVIPSBitmapFont: Fe nash14bf 17.28 26
+/Fe 26 242 df<EA1C1CEA3E3EEA7F7FB51280A2387F7F00EA3E3EEA1C1C110881860F>
+10 D<13F01203120FEA3FE0EAFF80EAFE0012F812600C0880860C>I<EA03C0EA07F013F8
+A5EA03F0A21207120FEA3F80EAFF0012FC5A12600D10808E0C>I<133C1203EA67BC12F7
+13FCA2EAFFF813F0EA7F00123E0E0A80880E>15 D<EA1C1CEA3E3EEA7F7FB51280A2387F
+7F00EA3E3EEA1C1C110881860F>I<EA01C0487E487E487EA26C5A6C5A6C5AEA1C1CEA3E
+3EEA7F7FB51280A2387F7F00EA3E3EEA1C1C1110818E0F>I<134013E0120112031207A2
+121F123F487E12FF12F312E3EA03F8A26C7E7FEBFF806C13E0A2137FEB3FC0EB1F80EB07
+00131782960F>30 D<1218123E127F138012FFEA7F00123E121C12080909828605>46
+D<121CA2123C127E12FEA27EA45AA25A127EA8127F7EA71380121FA61300121EA2121C12
+08092980A809>64 D<1208121C123C127CA212FCA4127EAC7EA81380A3EA1FC013E013F8
+120FA2EA07F0EA03E0EA00C00D287FA70C>I<13101330137813F8487E48B4FC001F13E0
+5A127E38FC7FC038F83F8038E00F00130C828B0F>74 D<EC0180EC03E01407140FEC1FC0
+EC0F801407A31500A3140EA2141E5C147C495A130FEB7FF0B55A6C5B00035BD8001FC7FC
+1B18838616>81 D<80497E1303A21307497EA36D7EA36D7EA380A2801208381C07FFD83C
+1F1380397FFE7FF013FC38FFF83F9038F01FE0397FE00FC0393F8003801C1A7D991D>89
+D<EB3FC0EBFFF84813FF4814C04814F84814FFD81F0314F0381C007F48130F48013F13E0
+D8E003B512C0D8C07F1480000FB5EAF0004849C7FC4813E04890C8FC13F090C9FC241283
+9121>103 D<EB7F80EBFFF04813FE6E7E4814F04814FED80207EBFFE0C7FC141F027F13
+C00107B5128090B61200001F14E04801FCC7FC4813C04848C8FC13E048C9FC2312829121
+>107 D<13FC3801FFC04813FC48EBFFC015FCEDFFE0EA003F010314C0D9007F13800107
+B5120090B55A001F14C04801FCC7FC4813C0D8FFFCC8FC13E048C9FC2311829005>109
+D<EA0218EA0738EA0F7C121FEA1EFCEA3FFF4813F0A3B512E0EBBFC038CF0F80140C828B
+10>132 D<1330137813F812017FA37FA35BA21200A57FA2137E153EEDFF80020313C002
+0F13E0D97F1F13F05C90393FFE0FE09138F807C0ECE00F9138807F80913807FF0090383E
+FFFE001FB612F85A5AB712F016E049C613C0252682A521>162 D<EB07FF011F13C05B49
+138090B5FC4814005C39001FFFC0001FB512FC5A5AB5EA7FF89038FC1FF09038E007E01E
+0E828D1A>170 D<1560157015F014011403A481A91401A281A781A381168016E0A30003
+15C016800006ECFB004814F8121C123CA2007C5CA212FC6C5CA26C5C6C6C485A6D48C7FC
+383FF83FEBFFFE6C5B6C5B6C5B00015B6C6CC8FC233880A421>201
+D<138013C01201EA03E01207120FEA07F0A313F813F0A213E0A2EA03F0ABEA01F8A513F0
+13E0EA03C0121FEA3F80EA7F0012FE5A12F00D2782A60C>203 D<147014F8EB01FC1303
+14FE1307130F14FF5BA25B48B5FC001F13FE383FE7FCEA7FC738FF83F838FE01F038F800
+E0181282910F>212 D<1480EB07C0133FEA01FF000713E04813F04813FEEA3FE7EA7F07
+38F803FC380001F8EB0070170C868B0F>229 D<5AEA03C013E0EA07F0EA0FF8121F13FC
+123F123D13FE127CA2137E12FC137CEAFE78EAFFF0A2EA7FE013C0EA3F80EA0F000F1680
+960F>232 D<EB01E0EB03F8497E497E131F80133EEB7F7FECFF80A27FA27F7F1303EB00
+07A31500A3140EA2141E5C147C495A130FEB7FF0B55A6C5B00035BD8001FC7FC19217F8F
+1A>240 D<EB01E0EB03F8497E497E131F80133E90387F7F8014FF15C06D13FCA27F6D13
+F8010313F0010013E0EC07C0A21580A3EC0F00A25C143E147E495A130FEB7FF8B55A6C5B
+00035B38001F801E217F8F1D>I E
+%EndDVIPSBitmapFont
+/Ff 136[47 1[38 2[30 3[39 4[22 4[36 2[36 74[36 22[{}8
+71.731 /cmti12 rf
+%DVIPSBitmapFont: Fg nash14bf 24.8832 8
+/Fg 8 242 df<1207EA0F80EA1FC0EA3FE0EA7FF013F8EAFFF0127FEA3FE0EA1FC0EA0F
+80EA07000D0C828909>9 D<130C133E13FF5A1207EA1FFEEA7FF8EAFFE013C01300127C
+1230100C808A10>11 D<133EEB7F80EBFFC014E05AA414C07E1480137FEBFF001203485A
+EA1FFCEA7FF0485A138090C7FC127C12301316809410>I<120212075AEA1F80A2123FEA
+7FC012FF13E0127FA213F0A413E013C0A6123F13E0A8121F13F0A8120F13F8A81207A413
+F013E0A213C01380130012020D3C80BB0D>64 D<1420147014F81301130314FC1307130F
+1307A3130314F814F0A2EB0FE03803FFC0481380481300485A123F5B485AEAFFE06CC7FC
+1619849815>75 D<163016F0ED01F81507150F151F16FC150FA31507A31503A3150116F8
+A416F0A2150316E01507ED0FC0151FED7F80EC01FF02071300EC3FFEEB01FF013F5BB65A
+5D00075CD8003F5B01015BD9000EC7FC2628858E20>80 D<1306EB0F80497E80EB3FF849
+7E497E806D1380011F13C06D13E013036D13F07FEC7FF8143F141FA2140FA2EC07F015E0
+A2EC0FC00007B512801500485B485B5A485BB55A14C06C90C7FC1D217FA01D>88
+D<EC03E0EC07F84A7E814A7E4A7F4A7F91B5FC4980A249487FECFF7F4B7EA2EEFFF06D15
+F817F06D15E0806E14C0020F14806E14009138007FFEED01F8A25EA44B5AA215075E150F
+4B5A153F03FFC7FC1403EC0FFEEC3FFCEB01FF013F5BB65A5D00075CD8003F5B010190C8
+FCEB000C2D30819628>241 D E
+%EndDVIPSBitmapFont
+end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 300dpi
+TeXDict begin
+%%PaperSize: Letter
+
+%%EndSetup
+%%Page: 1 1
+1 0 bop 761 308 a Fg(\014)744 331 y(P)6 b(X)788 352 y(\013)816
+331 y(@)840 300 y(\013)824 331 y(\361)866 280 y(\013)870
+298 y(\011)863 331 y(K)31 b Ff(naw\026)-36 b(adiru)486
+399 y Fe(\014)485 412 y(\020)485 440 y(\350)504 425 y(\013)495
+440 y(Q)q(\345)530 402 y(\013)529 423 y(\021)533 440
+y(\204)556 419 y(\013)549 440 y(\252)o(\313)t(@)628 411
+y(\014)626 440 y(\350)645 413 y(\014)637 429 y(Q)659
+440 y(\036)659 452 y(\012)674 440 y(\324)675 455 y(\013)702
+402 y(\013)688 429 y(g)728 419 y(\013)718 440 y(\360)24
+b(A)780 411 y(\013)780 440 y(m)802 399 y(\014)786 429
+y(k)805 466 y(.)840 440 y Fd(\024)-24 b(guh)891 450 y(.)914
+440 y(\026)f(a)18 b(wa-h)1033 450 y(.)1056 440 y(am)-5
+b(\026)-20 b(\020ruhu)17 b('l-)s Fc(,)m Fd(a)n(\024)-22
+b(saratu)237 513 y(i)n(\024)g(star\026)d(a)17 b(\024)-24
+b(guh)428 523 y(.)452 513 y(\026)f(a)22 b Fc(,)m Fd(a)n(\024)-22
+b(sarata)19 b(h)691 523 y(.)714 513 y(am)-5 b(\026)-20
+b(\020rin.)19 b(farih)969 523 y(.)991 513 y(a)h(bih\026)-25
+b(a)20 b(wa-s\026)-25 b(aqah\026)g(a)23 b Fc(-)m Fd(am\026)-25
+b(amahu,)20 b(t)1624 546 y(\026)1652 513 y(umma)164 573
+y(rakiba)e(w\026)-25 b(ah)371 583 y(.)394 573 y(idan)17
+b(minh\026)-25 b(a.)18 b(wa-f)-5 b(\026)-20 b(\020)168
+657 y Fb(\372)179 689 y(\012)199 629 y(\011)193 657 y(\257)196
+692 y(\013)223 636 y(\013)214 657 y(\360)273 646 y(.)286
+657 y(A)301 642 y(\013)298 657 y(\356)326 635 y(\011)314
+657 y(D)q(\323)335 672 y(\013)389 657 y(@)409 625 y(\023)402
+657 y(Y)n(g)443 672 y(\013)467 657 y(@)482 636 y(\013)472
+657 y(\360)553 639 y(\013)535 657 y(I)556 672 y(.)583
+657 y(\273)587 672 y(\013)620 642 y(\013)608 657 y(P)667
+631 y(\013)666 642 y(\017)669 657 y(\325)o(\347)699 613
+y(\014)698 635 y(\021)698 657 y(')746 646 y(,)768 628
+y(\014)768 657 y(\351)789 628 y(\013)785 657 y(\323)t(A)824
+628 y(\013)820 657 y(\323)841 597 y(\013)841 613 y(\015)843
+657 y(@)37 b(A)904 628 y(\013)901 657 y(\352)920 616
+y(\013)919 629 y(\020)917 657 y(\257)5 b(A)968 639 y(\013)950
+657 y(\203)986 636 y(\013)977 657 y(\360)37 b(A)1055
+642 y(\013)1052 657 y(\356E)1074 669 y(.)1071 680 y(\013)1134
+628 y(\013)1123 657 y(h)t(Q)1169 686 y(\013)1186 616
+y(\013)1189 629 y(\011)1183 657 y(\257)1234 646 y(.)8
+b(Q)1256 680 y(\023)1270 657 y(\036)1270 669 y(\012)1284
+657 y(\324)1285 672 y(\013)1312 619 y(\013)1298 646 y(g)1375
+616 y(\013)1373 629 y(\020)1373 657 y(\350)1392 642 y(\013)1384
+657 y(Q\345)1418 619 y(\013)1417 640 y(\021)1421 657
+y(\204)1445 628 y(\013)1438 657 y(\253)37 b(A)1513 628
+y(\013)1513 657 y(m)1535 616 y(\014)1519 646 y(k)1538
+683 y(.)1590 657 y(\370)1638 630 y(\013)1630 646 y(Q)1654
+616 y(\013)1652 629 y(\020)1652 657 y(\036)1684 640 y(\021)1667
+657 y(\203)r(@)1700 669 y(\013)164 738 y Fd('t)177 749
+y(.)195 738 y(-t)210 749 y(.)229 738 y(ar)-5 b(\026)-20
+b(\020qi)31 b Fc(,)m Fd(adda)d(h)501 749 y(.)524 738
+y(am)-5 b(\026)-20 b(\020rahu)28 b(wa-huwa)h(r\026)-25
+b(akibun,)29 b(fa-wa)o(\024)-24 b(gadah\026)f(a)29 b(tis)s
+Fc(,)m Fd(atan.)g(t)1624 772 y(\026)1652 738 y(umma)164
+799 y(nazala)18 b(wa-)s Fc(,)m Fd(addah\026)-25 b(a)17
+b(fa-ra)s Fc(-)m Fd(\026)-25 b(ah\026)g(a)20 b Fc(,)m
+Fd(a)n(\024)-22 b(saratun)16 b(fa-q\026)-25 b(ala:)241
+865 y Fb(:)275 832 y(\013)259 876 y(\310)s(A)306 838
+y(\013)304 850 y(\020)300 876 y(\256)325 835 y(\013)328
+848 y(\011)322 876 y(\257)368 835 y(\024)368 848 y(\020)368
+876 y(\350)387 860 y(\013)379 876 y(Q\345)413 838 y(\013)412
+859 y(\021)416 876 y(\204)439 846 y(\013)432 876 y(\253)25
+b(A)502 846 y(\013)495 876 y(\353)518 832 y(\016)523
+876 y(@)537 860 y(\013)528 876 y(Q)553 835 y(\013)556
+848 y(\011)551 876 y(\257)h(A)612 846 y(\013)605 876
+y(\353)642 833 y(\013)640 843 y(\017)633 876 y(Y)668
+846 y(\013)661 876 y(\253)700 855 y(\013)690 876 y(\360)757
+832 y(\013)741 876 y(\310)778 849 y(\013)781 862 y(\011)770
+876 y(Q)794 841 y(\013)797 853 y(\011)793 876 y(K)830
+850 y(\013)829 860 y(\017)832 876 y(\325)o(\347)862 832
+y(\014)861 853 y(\021)861 876 y(')896 865 y(.)915 835
+y(\023)914 848 y(\020)912 876 y(\351)936 855 y(\013)929
+876 y(\252\202)991 848 y(\020)991 876 y(\035)992 891
+y(\013)1031 876 y(A)1050 846 y(\013)1043 876 y(\353)1079
+843 y(\013)1071 876 y(Y)1113 849 y(\013)1099 876 y(g)1116
+888 y(.)1148 855 y(\013)1137 876 y(\361)1168 835 y(\013)1170
+848 y(\011)1165 876 y(\257)1203 865 y(,)1239 858 y(\024)1222
+876 y(I)1243 891 y(.)1270 876 y(\273)1274 891 y(\013)1302
+876 y(@)1319 860 y(\013)1307 876 y(P)1359 855 y(\013)1348
+876 y(\361)1383 846 y(\014)1376 876 y(\353)1408 855 y(\013)1398
+876 y(\360)1454 846 y(\014)1452 876 y(\350)1471 849 y(\013)1463
+865 y(Q)1485 876 y(\036)1485 888 y(\012)1499 876 y(\324)1501
+891 y(\013)1528 838 y(\013)1514 865 y(g)1581 833 y(\013)1580
+843 y(\017)1573 876 y(Y)1608 846 y(\013)1601 876 y(\253)e(\365)1663
+902 y(\013)1685 876 y(K)1685 888 y(\012)1703 876 y(Q)1712
+905 y(\013)1740 822 y(\013)1738 832 y(\017)1726 876 y(\242)q(\313)t(@)
+240 957 y Fc(-)m Fd(am)n(\024)-22 b(s)-5 b(\026)-20 b(\020)16
+b(wa-)s Fc(-)m Fd(aksibu)j(h)611 967 y(.)634 957 y(im\026)-25
+b(aran,)20 b Fc(-)m Fd(afd)877 967 y(.)899 957 y(alu)e(min)j
+Fc(-)m Fd(an)f Fc(-)m Fd(arkaba)e(wa-)s Fc(-)m Fd(ah)1445
+997 y(\025)1480 957 y(sara)e(h)1590 967 y(.)1612 957
+y(im\026)-25 b(aran.)643 1030 y Fb(.)656 1041 y(@)673
+1026 y(\023)661 1041 y(P)t(A)700 1012 y(\013)699 1041
+y(\324)713 1030 y(g)727 1050 y(\013)774 1026 y(\013)765
+1041 y(Q)q(\345)800 1023 y(\013)803 1041 y(\204)839 1013
+y(\011)819 1041 y(k)855 981 y(\013)855 997 y(\015)856
+1041 y(@)871 1020 y(\013)861 1041 y(\360)930 1023 y(\013)912
+1041 y(I)933 1056 y(.)964 997 y(\013)960 1041 y(\273)-8
+b(P)1002 981 y(\013)1002 997 y(\015)1004 1041 y(@)1050
+1019 y(\011)1039 1041 y(\340)1069 981 y(\013)1069 997
+y(\015)1070 1041 y(@)1117 1030 y(\011)1104 1041 y(\341\323)1140
+1056 y(\013)1198 997 y(\014)1181 1041 y(\311)1232 1000
+y(\013)1235 1013 y(\011)1215 1041 y(\222)1260 1013 y(\011)1254
+1041 y(\257)1273 981 y(\013)1273 997 y(\015)1275 1041
+y(@)1305 1030 y(,)1324 1041 y(@)1341 1026 y(\023)1329
+1041 y(P)t(A)1368 1012 y(\013)1367 1041 y(\324)1380 1030
+y(g)1394 1050 y(\013)1458 1023 y(\014)1440 1041 y(I)1461
+1056 y(.)1488 1041 y(\202)1503 1056 y(\013)1524 1041
+y(\273)1556 981 y(\013)1556 997 y(\015)1557 1041 y(@)1572
+1020 y(\013)1562 1041 y(\360)25 b(\372)1624 1073 y(\012)1638
+1041 y(\346)1656 1024 y(\021)1660 1041 y(\204)1657 1076
+y(\013)1678 1041 y(\323)1699 981 y(\013)1699 997 y(\015)1701
+1041 y(@)640 1152 y Fe(\014)623 1196 y(\311)q(J)661 1208
+y(.)685 1142 y(\013)684 1152 y(\017)671 1196 y(\242)q(\313)t(@)736
+1175 y(\013)726 1196 y(\360)784 1164 y(\014)775 1196
+y(Y)803 1152 y(\013)803 1196 y(\313)822 1175 y(\013)811
+1196 y(\361)o(\313)853 1152 y(\013)855 1196 y(@)20 b
+Fd(al-waladu)f(wa-'t)1189 1206 y(.)1208 1196 y(-t)1223
+1206 y(.)1242 1196 y(ablu)237 1269 y(t)235 1279 y(.)253
+1269 y(alaba)24 b(waladun)g(min)i Fc(-)m Fd(ab)-5 b(\026)-20
+b(\020hi)25 b Fc(-)m Fd(an)f(ya)n(\024)-22 b(stariya)20
+b(lahu)k(t)1244 1279 y(.)1263 1269 y(ablan)g(s)1397 1279
+y(.)1418 1269 y(a)t(_)-19 b(g)-5 b(\026)-20 b(\020ran.)22
+b(fa-rafad)1735 1279 y(.)1758 1269 y(a)164 1329 y('l-w\026)-25
+b(alidu,)19 b(wa-q\026)-25 b(ala)19 b(lahu:)f(y\026)-25
+b(a)17 b(bunayya,)g(law-i)168 1413 y Fb(\361)179 1445
+y(\013)196 1369 y(\013)196 1413 y(\313)229 1401 y(,)260
+1387 y(\013)259 1397 y(\017)247 1413 y(\372)259 1445
+y(\012)281 1377 y(\013)284 1390 y(\011)273 1413 y(\346)297
+1389 y(\014)295 1413 y(K)299 1425 y(.)335 1413 y(A)348
+1389 y(\013)347 1413 y(K)347 1425 y(\012)382 1401 y(:)404
+1383 y(\014)404 1413 y(\351)421 1369 y(\013)421 1413
+y(\313)473 1369 y(\013)457 1413 y(\310)s(A)501 1372 y(\013)499
+1385 y(\020)498 1413 y(\257)528 1392 y(\013)518 1413
+y(\360)565 1401 y(,)592 1380 y(\014)583 1413 y(Y\313)612
+1428 y(\013)626 1413 y(@)643 1392 y(\013)631 1413 y(\361\313)t(@)741
+1372 y(\013)744 1385 y(\011)708 1413 y(\221)765 1372
+y(\013)767 1385 y(\011)762 1413 y(\257)791 1397 y(\013)782
+1413 y(Q)808 1372 y(\013)811 1385 y(\011)805 1413 y(\257)843
+1401 y(.)856 1413 y(@)870 1386 y(\023)861 1401 y(Q)884
+1413 y(\036)884 1425 y(\012)908 1393 y(\011)898 1413
+y(\252)905 1428 y(\013)943 1383 y(\013)923 1413 y(\223)26
+b(C)1008 1369 y(\023)1022 1413 y(J)1026 1425 y(.)1049
+1369 y(\013)1036 1413 y(\243)1096 1383 y(\014)1096 1413
+y(\351)1113 1369 y(\013)1113 1413 y(\313)1162 1397 y(\013)1149
+1413 y(\370)1161 1439 y(\012)1190 1401 y(Q)1198 1430
+y(\013)1214 1372 y(\013)1212 1385 y(\020)1212 1413 y(\036)1241
+1396 y(\021)1226 1413 y(\202)1265 1383 y(\013)1263 1413
+y(\035)1263 1425 y(\012)1314 1390 y(\011)1302 1413 y(\340)1333
+1352 y(\013)1333 1369 y(\015)1334 1413 y(@)j(\351)1371
+1428 y(\013)1388 1413 y(J)1388 1425 y(\012)1403 1413
+y(K)1407 1425 y(.)1404 1435 y(\013)1419 1352 y(\013)1419
+1369 y(\015)1420 1413 y(@)1467 1401 y(\011)1454 1413
+y(\341)o(\323)1489 1428 y(\013)1537 1380 y(\024)1530
+1413 y(Y)1558 1369 y(\013)1558 1413 y(\313)1576 1392
+y(\013)1566 1413 y(\360)1635 1394 y(\013)1617 1413 y(I)1638
+1428 y(.)1666 1369 y(\013)1665 1413 y(\312)1691 1369
+y(\013)1679 1413 y(\243)164 1489 y Fd(')n(\024)-22 b(staraytu)16
+b(laka)i(t)469 1499 y(.)487 1489 y(ablan)h(fa-sawfa)e(tuza)s
+Fc(,)m Fd(i)o(\024)-24 b(gun\026)f(a)19 b(bi-s)1099 1499
+y(.)1119 1489 y(awtihi.)996 1550 y Fb(.)1013 1561 y(\351)1013
+1576 y(\013)1030 1539 y(\020)1030 1561 y(K)1031 1576
+y(\013)1047 1561 y(\361)1093 1532 y(\013)1076 1561 y(\222\035)1119
+1573 y(.)1116 1584 y(\013)1155 1561 y(A)1168 1526 y(\013)1171
+1539 y(\011)1167 1561 y(J)1193 1532 y(\014)1181 1561
+y(j)1196 1573 y(.)1217 1561 y(&\253)1225 1590 y(\013)1255
+1534 y(\013)1258 1547 y(\011)1246 1561 y(Q)1270 1526
+y(\014)1269 1539 y(\020)1269 1561 y(K)1342 1520 y(\013)1344
+1533 y(\011)1309 1561 y(\254)-5 b(\361)1397 1543 y(\013)1382
+1561 y(\202)1421 1520 y(\013)1424 1533 y(\011)1418 1561
+y(\257)27 b(C)1481 1517 y(\023)1495 1561 y(J)1499 1573
+y(.)1522 1517 y(\013)1509 1561 y(\243)1583 1517 y(\013)1566
+1561 y(\275)1600 1517 y(\013)1600 1561 y(\313)1656 1532
+y(\014)1654 1544 y(\020)1637 1561 y(I)o(K)1685 1573 y(\012)1712
+1534 y(\013)1703 1550 y(Q)1727 1520 y(\013)1726 1533
+y(\020)1726 1561 y(\036)1757 1544 y(\021)1740 1561 y(\203)r(@)237
+1634 y Fd(q\026)-25 b(ala)17 b('l-waladu:)g(l\026)-25
+b(a)16 b(ta)t(_)-19 b(gd)677 1644 y(.)700 1634 y(ab)17
+b(y\026)-25 b(a)18 b Fc(-)m Fd(ab)-5 b(\026)-20 b(\020.)16
+b(l\026)-25 b(a)19 b Fc(-)m Fd(ut)1030 1644 y(.)1048
+1634 y(abbilu)e(bihi,)i Fc(-)m Fd(ill\026)-25 b(a)17
+b(wa-)s Fc(-)m Fd(anta)f(n\026)-25 b(a)s Fc(-)m Fd(imun.)629
+1713 y Fb(.)639 1709 y(\024)642 1724 y(\325)o(\347)672
+1700 y(\015)671 1724 y(')672 1756 y(\013)688 1724 y(A)701
+1689 y(\013)704 1702 y(\011)700 1724 y(K)757 1695 y(\013)756
+1707 y(\020)739 1724 y(I)791 1702 y(\011)787 1724 y(K)803
+1664 y(\013)803 1681 y(\015)805 1724 y(@)820 1703 y(\013)810
+1724 y(\360)25 b(B)878 1670 y(\013)877 1681 y(\017)895
+1724 y(@)894 1743 y(\015)894 1753 y(\013)926 1713 y(,)948
+1724 y(\351)948 1739 y(\013)965 1724 y(K)969 1736 y(.)966
+1747 y(\013)1021 1681 y(\014)1004 1724 y(\311)1038 1690
+y(\017)1040 1700 y(\013)1038 1724 y(J)1043 1736 y(.)1065
+1681 y(\013)1052 1724 y(\243)1086 1664 y(\014)1086 1681
+y(\015)1087 1724 y(@)g(B)1139 1681 y(\013)1174 1713 y(.)1187
+1724 y(\372)1198 1756 y(\012)1212 1724 y(G)1217 1756
+y(.)1214 1767 y(\013)1229 1664 y(\013)1229 1681 y(\015)1230
+1724 y(@)g(A)1277 1700 y(\013)1276 1724 y(K)1276 1736
+y(\012)1315 1724 y(I)1336 1739 y(.)1380 1683 y(\013)1383
+1696 y(\011)1363 1724 y(\222)1413 1705 y(\011)1403 1724
+y(\252)1430 1689 y(\013)1428 1702 y(\020)1428 1724 y(K)g(B)1486
+1681 y(\013)1521 1713 y(:)1548 1692 y(\014)1539 1724
+y(Y)1568 1681 y(\013)1568 1724 y(\313)1587 1703 y(\013)1575
+1724 y(\361\313)t(@)1668 1681 y(\013)1652 1724 y(\310)s(A)1696
+1683 y(\013)1694 1696 y(\020)1693 1724 y(\257)237 2473
+y Fa(Decem)o(b)q(er)15 b(1,)h(1998)p eop
+%%Trailer
+end
+userdict /end-hook known{end-hook}if
+%%EOF
diff --git a/language/arabic/arabtex/examples/guha.tex b/language/arabic/arabtex/examples/guha.tex
new file mode 100644
index 0000000000..710e4c2387
--- /dev/null
+++ b/language/arabic/arabtex/examples/guha.tex
@@ -0,0 +1,59 @@
+\documentstyle[12pt,arabtex,atrans,nashbf]{article}
+\sloppy
+%\parskip = 5mm
+\frenchspacing
+\pagestyle{empty}
+\begin{document}
+
+\setarab \transtrue
+\setnashbf \Large
+% Anekdoten
+\centerline {<nawAdiru>}
+
+% Juha und die 10 Esel
+
+\normalsize
+\transtrue
+\centerline {<^gu.hA wa-.hamIruhu al-`a^saraTu>}
+
+\setnash
+\begin{arabtext}
+i^starY ^gu.hA `a^saraTa .hamIriN.
+fari.ha bihA wa-sAqahA 'amAmahu,
+_tumma rakiba wA.hidaN minhA.
+wa-fI al-.t.tarIqi `adda .hamIrahu wa-huwa rAkibuN,
+fa-wa^gadahA tis`aTaN.
+_tumma nazala wa-`addahA fa-ra'AhA `a^saraTuN fa-qAla:
+
+'am^sI wa-'aksibu .himAraN,
+'af.dalu min 'an 'arkaba wa-'a_hsara .himAraN.
+\end{arabtext}
+
+\bigskip
+
+% das Kind und die Trommel
+
+\setnashbf
+\centerline {<al-waladu wa-al-.t.tablu>}
+
+\setnash
+\begin{arabtext}
+
+.talaba waladuN min 'abIhi 'an ya^stariya lahu .tablaN .sa.gIraN.
+fa-rafa.da al-wAlidu, wa-qAla lahu: yA bunayya,
+law-i i^staraytu laka .tablaN fa-sawfa tuza`i|^gunA bi-.sawtihi.
+
+qAla al-waladu: lA ta.g.dab yA 'abI.
+lA 'u.tabbilu bihi, 'illA wa-'anta nA'imuN.
+\end{arabtext}
+
+\rm
+\vfill \today
+\end{document}
+
+
+
+
+
+
+
diff --git a/language/arabic/arabtex/examples/ligtable.tex b/language/arabic/arabtex/examples/ligtable.tex
new file mode 100644
index 0000000000..35105d845c
--- /dev/null
+++ b/language/arabic/arabtex/examples/ligtable.tex
@@ -0,0 +1,172 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Tabelle aller Zeichenverbindungen
+% Stand 27.01.1992
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\documentstyle[arabtex]{article}
+\pagestyle{myheadings}
+\thispagestyle{empty}
+\parskip=5mm
+\parindent=0mm
+\setarab
+
+\begin{document}
+{\huge \bf Arab\TeX\ Ligatures \hfil \today }
+\markright{Arab\TeX\ Ligatures \hfil \today }
+
+\novocalize
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newdimen \fw \newcount \nf
+
+\def \tableformat #1*{% Tabellenformat berechnen
+% columns
+\fw \hsize \advance \fw -3pt \relax
+\nf 1
+\ctfd #1,\end
+\divide \fw \nf }
+
+\def \ctfd #1,#2\end{% Felder zaehlen
+\advance \nf 1
+\ifx #2\relax \relax \let \next \relax
+\else \def \next {\ctfd #2\end }%
+\fi \next }
+
+\def \enter #1\end {% Element eintragen
+\hbox to \fw {\hss <#1>\hss }%
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \tableline #1*#2*#3*#4*{% eine Zeile eintragen
+% beg row columns end
+%\hrule
+%\leavevmode
+%\hrule
+\hbox {%
+\ifx #2A\enter -a#4\end \else
+\enter -#2#4\end
+\fi
+\vrule
+\addtoline #1*#2*#3,*#4*%
+}
+%\hrule
+\typeout{#2 * #3}% Statusmeldung
+}
+
+\def \addtoline #1*#2*#3,#4*#5*{% Tabellenelemente eintragen
+% beg row column columns end
+\ifx #2A\enter #1#3#2#5\end
+\else \enter #1#3a#2#5\end
+\fi
+\ifx #4\relax \relax \let \next \relax
+\else \def \next {\addtoline #1*#2*#4*#5*}%
+\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newif \ifcon
+
+\def \testcon #1#2*{% pruefe ob verbindbar
+\contrue
+\ifx #1A\confalse \else
+\ifx #1E\confalse \else
+\ifx #1d\confalse \else
+\ifx #1r\confalse \else
+\ifx #1z\confalse \else
+\ifx #1w\confalse \else
+\ifx #1_\ifx #2d\confalse \fi \else
+\ifx #1^\ifx #2z\confalse \fi \else
+\ifx #2\relax \relax \else
+\testcon #2*%
+\fi\fi\fi\fi\fi\fi\fi\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \addlines #1*#2*#3*#4*{% Zeilenblock aufbauen
+% beg rows columns end
+\addrow #1*#2,*#3*#4*}
+
+\def \addrow #1*#2,#3*#4*#5*{% Zeilen eintragen
+% beg row rows columns end
+\ifx #5\relax \relax \contrue
+ \tableline #1*#2*#4*#5*% eine Zeile
+\else \testcon #2*%
+ \ifcon
+ \tableline #1*#2*#4*#5*% eine Zeile
+ \fi
+\fi
+\ifx #3\relax \relax \let \next \relax
+\else \def \next {\addrow #1*#3*#4*#5*}% weiter
+% \ifcon \\
+% \fi
+\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \ligtab #1*#2*#3*#4*{% Tabelle ausgeben
+% beg rows columns end
+{\offinterlineskip \tableformat #3*% Format aufbauen
+\leavevmode
+\tableline #1*-*#3**% Kopfzeile eintragen
+\hrule
+%\tracingmacros = 1 %
+\addlines #1*#2*#3*#4*% Tabellenrumpf eintragen
+\tracingmacros = 0 %
+}}
+
+\def \ligtable #1#2{% alle Tabellen
+% rows columns
+\expandafter \ligtabi #2*#1*}
+
+\def \ligtabi #1*#2*{% erstes Argument explizit
+% columns rows
+\expandafter \ligtabii #2*#1*}
+
+\def \ligtabii #1*#2*{% beide Argumente explizit
+% rows columns
+
+%Anfangsform -- Endform
+initial form to final form
+
+\ligtab *#1*#2**%
+
+%Mittelform -- Endform
+medial form to final form
+
+\ligtab -*#1*#2**%
+
+\newpage
+%Anfangsform -- Mittelform
+initial form to medial form
+
+\ligtab *#1*#2*-*%
+
+\newpage
+%Mittelform -- Mittelform
+medial form to medial form
+
+\ligtab -*#1*#2*-*%
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \crow {A,p,_t,^c,_h,_d,^z,^s,.d,.z,.g,q,k,l,m,n,h,w,y,E,%
+lA,p^c,m^c,h^c,hm,py,pm,hE}
+
+\def \ccol {p,_t,^c,^s,.d,.z,.g,q,k,l,m,h}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\huge
+\Huge
+\Large
+
+\ligtable \crow \ccol
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\tracingmacros=0
+\end{document}
+
diff --git a/language/arabic/arabtex/examples/malay.dvi b/language/arabic/arabtex/examples/malay.dvi
new file mode 100644
index 0000000000..05d59bfb4f
--- /dev/null
+++ b/language/arabic/arabtex/examples/malay.dvi
Binary files differ
diff --git a/language/arabic/arabtex/examples/malay.ps b/language/arabic/arabtex/examples/malay.ps
new file mode 100644
index 0000000000..485c66277c
--- /dev/null
+++ b/language/arabic/arabtex/examples/malay.ps
@@ -0,0 +1,387 @@
+%!PS-Adobe-2.0
+%%Creator: dvips 5.58 Copyright 1986, 1994 Radical Eye Software
+%%Title: malay.dvi
+%%CreationDate: Tue Feb 03 19:12:09 1998
+%%Pages: 1
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 596 842
+%%EndComments
+%DVIPSCommandLine: F:\EMTEX\BIN\dvips32.exe malay -pj:F:\TMP\dv2.mfj
+%DVIPSParameters: dpi=300, compressed, comments removed
+%DVIPSSource: TeX output 1998.02.03:1911
+%%BeginProcSet: texc.pro
+/TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N
+/X{S N}B /TR{translate}N /isls false N /vsize 11 72 mul N /hsize 8.5 72
+mul N /landplus90{false}def /@rigin{isls{[0 landplus90{1 -1}{-1 1}
+ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale
+isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div
+hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul
+TR[matrix currentmatrix{dup dup round sub abs 0.00001 lt{round}if}
+forall round exch round exch]setmatrix}N /@landscape{/isls true N}B
+/@manualfeed{statusdict /manualfeed true put}B /@copies{/#copies X}B
+/FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{
+/nn 8 dict N nn begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N
+string /base X array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N
+end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{
+/sf 1 N /fntrx FMat N df-tail}B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]
+N df-tail}B /E{pop nn dup definefont setfont}B /ch-width{ch-data dup
+length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{
+128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub
+get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data
+dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N
+/rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup
+/base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx
+0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff
+setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff
+.1 sub]/id ch-image N /rw ch-width 7 add 8 idiv string N /rc 0 N /gp 0 N
+/cp 0 N{rc 0 ne{rc 1 sub /rc X rw}{G}ifelse}imagemask restore}B /G{{id
+gp get /gp gp 1 add N dup 18 mod S 18 idiv pl S get exec}loop}B /adv{cp
+add /cp X}B /chg{rw cp id gp 4 index getinterval putinterval dup gp add
+/gp X adv}B /nd{/cp 0 N rw exit}B /lsh{rw cp 2 copy get dup 0 eq{pop 1}{
+dup 255 eq{pop 254}{dup dup add 255 and S 1 and or}ifelse}ifelse put 1
+adv}B /rsh{rw cp 2 copy get dup 0 eq{pop 128}{dup 255 eq{pop 127}{dup 2
+idiv S 128 and or}ifelse}ifelse put 1 adv}B /clr{rw cp 2 index string
+putinterval adv}B /set{rw cp fillstr 0 4 index getinterval putinterval
+adv}B /fillstr 18 string 0 1 17{2 copy 255 put pop}for N /pl[{adv 1 chg}
+{adv 1 chg nd}{1 add chg}{1 add chg nd}{adv lsh}{adv lsh nd}{adv rsh}{
+adv rsh nd}{1 add adv}{/rc X nd}{1 add set}{1 add clr}{adv 2 chg}{adv 2
+chg nd}{pop nd}]dup{bind pop}forall N /D{/cc X dup type /stringtype ne{]
+}if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup
+length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{
+cc 1 add D}B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin
+0 0 moveto /V matrix currentmatrix dup 1 get dup mul exch 0 get dup mul
+add .99 lt{/QV}{/RV}ifelse load def pop pop}N /eop{SI restore showpage
+userdict /eop-hook known{eop-hook}if}N /@start{userdict /start-hook
+known{start-hook}if pop /VResolution X /Resolution X 1000 div /DVImag X
+/IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for
+65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}N /RMat[1 0 0 -1 0
+0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V
+{}B /RV statusdict begin /product where{pop product dup length 7 ge{0 7
+getinterval dup(Display)eq exch 0 4 getinterval(NeXT)eq or}{pop false}
+ifelse}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale rulex ruley false
+RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR rulex ruley scale 1 1
+false RMat{BDot}imagemask grestore}}ifelse B /QV{gsave newpath transform
+round exch round exch itransform moveto rulex 0 rlineto 0 ruley neg
+rlineto rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta 0 N /tail
+{dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{S p tail}B /c{-4 M}
+B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{3 M}B /k{
+4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w}B /q{
+p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p
+a}B /bos{/SS save N}B /eos{SS restore}B end
+%%EndProcSet
+TeXDict begin 39158280 55380996 1000 300 300 (/ARABTEX.306/malay.dvi)
+@start /Fa 8 247 df<1220123C123FEA7F80A2EAFF00A2127E121E1202090A808809>
+9 D<5A13E013F8487EA2485AA26C5A12001310EA2008EA3C0F003F13C0387F9FE0A238FF
+3FC0A2387E1F80EA1E07EA020013147F9215>17 D<903807FFFC017FEBFFFE90B712FCA3
+485EA2EBF801D900075CC7001F01FCC7FC4A1380DAFFF8C8FC4913C04990C9FCEB07FCEB
+0FF0EB1FC0495A49CAFC137C5B485A5B485A5B48CBFCA2120E120CECF03C489038FE3F80
+A2D81001137F123002FC90C8FCA23970003C0F91CAFCA2EC078000F014F0A2140FA26C5C
+A214016C90CAFCA2127EA2127F7F6C7E7F6C7EEA0FFC7F6C6C7E6C13E06C13FC6CD9FFC0
+14FE013F90B612FC6D16E00107EDFE00010115F06D6C1480020701F8C7FC9138003FC037
+45809830>120 D<EB01FCEB07FF011F13C0497F497FD9FFE0C9FC49CAFC13F85B485AA3
+7F16C06DEB03806D130F6CB4133FDAC07FC8FC6DB5FC5D7F6D13F86D13E0010313806D90
+C9FCEB03FC495AEB0FE0495A495A013ECAFC5B5B485A5B485A5B48CBFCA2120E120CA25A
+A212101230A31270A412F0A47EA37EA2127EA2127F7F6C7E7F6C7EEA0FFC7F6C6C7E6C13
+E06C13FC6CD9FFC014FE013F90B612FC6D16E00107EDFE00010115F06D6C1480020701F8
+C7FC9138003FC0375180A42C>168 D<1B70F201F0F207E01A1FF2FFC01903190F073F13
+809638FFFC00060313F0060F13C04E90C7FCF07FFC943801FFE04D13804D48C8FCEF0FF8
+EF1FE0604DC9FC173E177817705F5FA21601A31603A383A4707EA483001015001230A283
+0070167CA2177E12F8173E7E6C163C6C161CEA7FC001F015F86CB46C133F91B65A7E7E6C
+5E00015ED8003F4ACAFC010714E04C3F80BB42>184 D<168016C016E0150116F0A2ED03
+F8A2ED01FCA2150016FE167E1218163E12100030153F161FA21270A2160FA212F0160E7E
+A2160C7EA26C1518007F15386D14786D14F0D83FF0130301FCEB1FE0391FFF80FF6C90B5
+12C06C15806C15006C5C6C6C13F8011F13E0010390C7FC282C809B28>224
+D<EC07E0EC0FF84A7E81815C16801470EC783FED1FC0ECFC0F02FE13E0ECFFC715FF80A2
+6E13F0801407140191C7FCA616E0A2150116C01503A2ED0780150FED1F00157EEC01FEEC
+07FCEC1FF849B45A013F5BB65A6C5C000149C7FC380003F8242D819424>240
+D<1840187018FE84601701A260EF003C1804EF080294380E038094381FC7F0F0E7F8F0C7
+F0EF3FCFA2F08FE0EF0781943800802095C8FCA519FC4EB4FC4E13C01AF0A2601AF8F00F
+0FF103FC1981F01FC3000818FF121884001019BC0030711338F003FE0070EF00F8F10030
+A31A601AE0190100F0F003C0190FF11F806C187F953801FF006CEF0FFE6CEF7FFC6C6C92
+380FFFF801E00203B55A6CB4010FB612C091B8C7FC6C17FC6C17E06C94C8FC000316F0C6
+6C4AC9FC010F49CAFC464280BF46>246 D E /Fb 8 127 df<133013FCEA03FF000F13C0
+003F13F0387FCFF838FF03FCEAFE0138F8007C00701338160A79AB25>94
+D<EB1FFCEB7FFF48B512804814C03807F00FEA0FC0391F800780393F000300003E90C7FC
+5AA212FC5AA77E127CA26CEB01C0003FEB03E0EA1F80380FC0073907F03FC06CB512806C
+14006C6C5AEB1FF01B1F7B9E25>99 D<90383FC0FE9038FFF3FF4890B512805AD807F013
+8F3A0FC03F0700391F801F80EB000F4880003E1307A5003F130F6C5CEB801F6C6C48C7FC
+EBF0FEEBFFFC485B001E5BEB3FC090C9FCA2121F7EEBFFFE6CEBFFC04814F04880393F00
+03FC007CEB007E0078141E00F8141F4880A46C5C0078141E007E147E6C6C485A391FF00F
+F86CB55A000314C0C691C7FCEB1FF821307E9E25>103 D<387FC0FE38FFE3FF01EF7F6C
+B57E0003EB87E0EBFE039038F801F0A213F0A213E0B13A7FFF0FFF80B5009F13C0A26C01
+0F1380221F7F9E25>110 D<387FC1FE39FFE7FF8001EF7F6CB57E0003EB07F09038FC01
+F89038F8007C497FA2497FA21680150FA7151F16007F153E6D137E5D6D485A9038FF07F0
+ECFFE001EF5B01E790C7FCEBE1FC01E0C8FCACEA7FFFB57EA26C90C8FC212F7F9E25>
+112 D<397FF00FFE39FFF81FFFA2397FF00FFE390F8001F0000714E0A2EBC003000314C0
+A2EBE00700011480A2EBF00F00001400A26D5AEB781EA2EB7C3EEB3C3CA2EB3E7CEB1E78
+A2EB1FF86D5AA36D5A6D5A201F7E9E25>118 D<397FF00FFE39FFF81FFFA2397FF00FFE
+39078001F015E013C01203EC03C013E01201EC0780EA00F0A29038F80F001378A2EB7C1E
+133CA26D5AA3EB0F38147813075CA213035CA35CA213075CA2130F91C7FC123CEA7E1E13
+3E5BEA7FF8123FEA1FE0EA0F80202F7E9E25>121 D<3803E006380FF00F381FF83F383F
+FE7E387E7FFC38FC1FF838F00FF0386007C018087AAB25>126 D
+E /Fc 8 122 df<126012F0A27E1278127C123C123E121EA2121F7E7F12077F1203A27F
+12017F12007F1378A2137C133C133E131E131F7FA21480130714C0130314E01301A2EB00
+C013277DA21A>92 D<EA1FF0EA3FFC487EEA780FEA300738000380A2137FEA07FF121FEA
+3F83EA7803127012E0A3EA7007EA780F383FFFFCEA1FFDEA07F016157D941A>97
+D<EA01F8EA07FF481380381E07C0EA3C01387800E01270481370A2B512F0A300E0C7FC12
+70A2007813707E381F01F0380FFFE0000313803800FE0014157D941A>101
+D<EA7FE012FF127F1200B3A6387FFFC0B512E06C13C0131E7D9D1A>108
+D<387CE0E038FFFBF8EA7FFF381F1F1CEA1E1EA2EA1C1CAC387F1F1F39FFBFBF80397F1F
+1F00191580941A>I<3807FB80EA1FFF127FEA7807EAE003A30078C7FCEA7FC0EA1FFCEA
+07FE38003F801307386001C012E0A2EAF00338FC0780B51200EAEFFEEAE3F812157C941A
+>115 D<487E1203A6387FFFE0B5FCA238038000AA1470A43801C1E013FF6C1380EB3F00
+141C7F9B1A>I<387F83FC38FFC7FE387F83FC380E00E0A27EEB01C0A2EA0381EB838013
+C31201EBC700EA00E7A213E61366136E133CA31338A35BA2EA30F0EA78E01271EA7FC06C
+5A001EC7FC17207F941A>121 D E /Fd 40 122 df<EB1FC0EB7020EBC0103801803800
+031378EA0700143091C7FCA7B512F8380700781438B2397FE1FF80192380A21B>12
+D<132013401380EA01005A12061204120CA25AA25AA312701260A312E0AE1260A3127012
+30A37EA27EA2120412067E7EEA0080134013200B327CA413>40 D<7E12407E7E12187E12
+041206A27EA2EA0180A313C01200A313E0AE13C0A312011380A3EA0300A21206A2120412
+0C5A12105A5A5A0B327DA413>I<127012F812FCA212741204A41208A21210A212201240
+060F7C840E>44 D<127012F8A3127005057C840E>46 D<EA01F0EA071CEA0C06487E0038
+1380A2387001C0A400F013E0AE007013C0A3EA780300381380A2381C0700EA0C06EA071C
+EA01F013227EA018>48 D<13801203120F12F31203B3A9EA07C0EAFFFE0F217CA018>I<
+EA03F8EA0C1EEA100F38200780004013C0127813031307123800001380A214005B130C13
+38EA03F0EA001C130FEB0780A2EB03C0A214E01220127012F8A200F013C01240EB078012
+2038100F00EA0C1CEA03F013227EA018>51 D<137EEA01C138030080380601C0EA0C0312
+1C381801800038C7FCA212781270A2EAF0F8EAF30CEAF4067F00F81380EB01C012F014E0
+A51270A3003813C0A238180380001C1300EA0C06EA070CEA01F013227EA018>54
+D<127012F8A312701200AB127012F8A3127005157C940E>58 D<497EA3497EA3EB05E0A2
+EB09F01308A2EB1078A3497EA3497EA2EBC01F497EA248B51280EB0007A20002EB03C0A3
+48EB01E0A348EB00F0121C003EEB01F839FF800FFF20237EA225>65
+D<B612C0380F80070007130114001540A215601520A314201500A3146014E013FF138014
+601420A315081400A21510A31530A2157015E0000F1303B6FC1D227EA121>69
+D<D8FFC0EB03FF000F15F0000715E0D805E01305A2D804F01309A301781311A36D1321A3
+6D1341A26D1381A39038078101A3EB03C2A2EB01E4A3EB00F8A31470120E001FEC03F03A
+FFE0203FFF28227EA12D>77 D<EB0FE0EB783CEBE00E3903C0078039078003C0390F0001
+E0000E1300001E14F0481478A2007C147CA20078143CA200F8143EA90078143C007C147C
+A2003C1478003E14F8001E14F06CEB01E0A239078003C03903C007803900E00E00EB783C
+EB0FE01F247DA226>79 D<B512F0380F803C0007130FEC078015C0140315E0A615C01407
+1580EC0F00143CEBFFF00180C7FCAE487EEAFFFC1B227EA121>I<007FB512F839780780
+780060141800401408A300C0140C00801404A400001400B3A3497E3801FFFE1E227EA123
+>84 D<397FF803FF390FE001F83907C000E06C6C5B00015CEBF001D800F890C7FCEB7802
+EB7C04133EEB1E08EB1F10EB0FB0EB07A014C06D7E130180497EEB0278EB047CEB0C3EEB
+081EEB101F496C7E140701407F496C7E1401D801007F486D7E5AD81F807F3AFFC003FFC0
+22227FA125>88 D<EA1FE0EA3038EA780C130EEA30071200A313FFEA07C7EA1E07123C12
+78127000F01308A3130FEA7817383C2390380FC1E015157E9418>97
+D<120E12FE121E120EAB131FEB61C0EB8060380F0030000E1338143C141C141EA7141C14
+3C1438000F1370380C8060EB41C038083F0017237FA21B>I<EA01FEEA0703380C078012
+1C383803000078C7FC127012F0A712700078134012386C1380380C0100EA0706EA01F812
+157E9416>I<14E0130F13011300ABEA01F8EA0704EA0C02EA1C01EA38001278127012F0
+A7127012781238EA1801EA0C0238070CF03801F0FE17237EA21B>I<EA01FCEA0707380C
+0380381C01C01238007813E0EA700012F0B5FC00F0C7FCA512700078132012386C13406C
+138038070300EA00FC13157F9416>I<133E13E33801C780EA0387130748C7FCA9EAFFF8
+0007C7FCB27FEA7FF0112380A20F>I<14703803F198380E1E18EA1C0E38380700A20078
+1380A400381300A2EA1C0EEA1E1CEA33F00020C7FCA212301238EA3FFE381FFFC06C13E0
+383000F0481330481318A400601330A2003813E0380E03803803FE0015217F9518>I<12
+0E12FE121E120EABEB1F80EB60C0EB80E0380F0070A2120EAF38FFE7FF18237FA21B>I<
+121C123EA3121CC7FCA8120E127E121E120EB1EAFFC00A227FA10E>I<120E12FE121E12
+0EABEB03FCEB01F014C01480EB02005B5B5B133813F8EA0F1CEA0E1E130E7F1480EB03C0
+130114E0EB00F014F838FFE3FE17237FA21A>107 D<120E12FE121E120EB3ADEAFFE00B
+237FA20E>I<390E1FC07F3AFE60E183803A1E807201C03A0F003C00E0A2000E1338AF3A
+FFE3FF8FFE27157F942A>I<380E1F8038FE60C0381E80E0380F0070A2120EAF38FFE7FF
+18157F941B>I<EA01FCEA0707380C0180381800C0003813E0481370A200F01378A70070
+1370007813F0003813E0381C01C0380E038038070700EA01FC15157F9418>I<EA0E1F38
+FE61C0380E8060380F0070000E1338143CA2141EA7143CA21438000F1370380E80E0EB41
+C0EB3F0090C7FCA9EAFFE0171F7F941B>I<EA0E3CEAFE46EA1E8FEA0F0F13061300120E
+AD120FEAFFF010157F9413>114 D<EA0F88EA3078EA601812C01308A212E0EAF000127F
+EA3FE0EA0FF0EA01F8EA003CEA801C130CA212C01308EAE018EAD030EA8FC00E157E9413
+>I<1202A41206A3120E121E123EEAFFFCEA0E00AB1304A6EA07081203EA01F00E1F7F9E
+13>I<000E137038FE07F0EA1E00000E1370AD14F0A238060170380382783800FC7F1815
+7F941B>I<38FF80FE381E00781430000E1320A26C1340A2EB80C000031380A23801C100
+A2EA00E2A31374A21338A3131017157F941A>I<39FF8FF87F393E01E03C001CEBC01814
+E0000E1410EB0260147000071420EB04301438D803841340EB8818141CD801C81380EBD0
+0C140E3900F00F00497EA2EB6006EB400220157F9423>I<38FF83FE381F00F0000E13C0
+6C1380EB8100EA0383EA01C2EA00E41378A21338133C134E138FEA0187EB0380380201C0
+000413E0EA0C00383E01F038FF03FE17157F941A>I<38FF80FE381E00781430000E1320
+A26C1340A2EB80C000031380A23801C100A2EA00E2A31374A21338A31310A25BA35B12F0
+5B12F10043C7FC123C171F7F941A>I E /Fe 14 122 df<1238127C12FEA3127C123807
+0774861F>46 D<1238127C12FEA3127C12381200AC1238127C12FEA3127C1238071A7499
+1F>58 D<EB1F80EB7FE03801FFF83803F07C3807C03C48487E1300381E03EF383C0FFF5B
+38381E3F39783C1F80EB780FA238F0700713F0A7017013003878780FA2EB3C1E38381E3C
+383C1FFC6D5A381E03E06CC8FC90388007803807C00F3903F03F003801FFFE38007FF8EB
+1FC019257DA41F>64 D<EA07FCEA1FFF4813C0383E03E06D7EEA1C00C71278A4EB3FF8EA
+01FF1207381FE078EA3E005A12785AA4007813F8EA7E036CB512E0000F133F3803FC0F1B
+1A7D991F>97 D<EB7FE03801FFF8000713FC380FC07CEA1F00003E1338003C13005AA212
+7012F0A612701278A26C133C123E6C137C380FC0F83807FFF0000113E038007F80161A7C
+991F>99 D<90387C0F803901FF3FC00007EBFFE0380F83F1D81F0113C0391E00F0004813
+78A66C5BEA1F01380F83E048B45A001D90C7FCEA1C7C003CC8FCA37E381FFFE06C13F814
+FE487F393C003F8048130FEC07C0481303A40078EB0780A2003EEB1F00381F807E6CB45A
+000313F038007F801B287E991F>103 D<137013F8A3137090C7FCA7EA7FF812FF127FEA
+0078B3A2B512F8A315267BA51F>105 D<EA7F8012FF127F1207A8903887FFC015E015C0
+9038807E005CEB81F8EB83F0EB87E0EB8FC0EB9F8001BFC7FC13FF808013F3EBE3E0EBC1
+F0138080147C143C80141F397FF87FE039FFFCFFF0397FF87FE01C257FA41F>107
+D<EAFFF8A3EA0078B3ADB512FCA316257CA41F>I<38FE3C0F9038FE3F80B5EA7FC0381F
+CFF3903887E1E0EB07C1A2001E1381B039FFC7F1FCEBCFF3EBC7F11E1A80991F>I<13FC
+EA03FF481380381F87E0EA1E01383C00F0007C13F800781378A248133CA76C137C007813
+78A2007C13F8003C13F0381E01E0EA1F873807FF806C1300EA00FC161A7C991F>111
+D<387FE07E39FFE1FF80D87FE313C03801EF87EBFF079038FC038049C7FCA25BA35BAC38
+7FFFE0B5FC7E1A1A7E991F>114 D<137013F0A6387FFFFEB5FCA2D800F0C7FCADEC0780
+A5EC0F00EB7C1FEB3FFE6D5AEB07F019217FA01F>116 D<397FF0FFE0486C13F06C4813
+E0390F800F000007131EA2EA03C05CA2EA01E0147C1478EA00F0A25C1378A2EB38E01339
+133DEB1DC0A2131F130F5CA391C7FCA25B131EA2EA383EEA7C3C137C5BEA7FF06C5AEA0F
+801C277F991F>121 D E /Ff 41 128 df<EB3F80EBE1E03801C070380380780007133C
+130048133EA5143C1478147014E0EB03C038FF1E00EB0380380F01C0EB00E01470147814
+3CA2143EA2141E141FA8141E130CEB1E3CA2EB1C3838FF0870EB07C0182A7EA91D>25
+D<127812FCA212FEA2127A1202A41204A31208A212101220124007127B8510>44
+D<EAFFFEA30F037F8E14>I<137E3801C380380700E0000E1370001E1378001C1338003C
+133CA20038131C0078131EA400F8131FAF0078131EA4007C133E003C133CA2001C133800
+1E1378000E13706C13E03801C38038007E0018297EA71D>48 D<132013E01201120F12FF
+12F11201B3AD487EB512C0A212287BA71D>I<EA01FCEA07FF380C0FC0381803E0382001
+F01260384000F8A200F813FC7E147CA3007813FCC7FC14F8A2EB01F0A2EB03E014C0EB07
+801400130E5B5B13305B5B485A3803000412024813085A5A481318383FFFF84813F0B5FC
+A216287DA71D>I<00181330001E13E0EA1FFF14C014005BEA11F00010C7FCA813FCEA13
+07381401C0001813E0EA1000C712F01478A3147CA3127012F8A314781280004013F814F0
+1260383001E0381803C0380E0F803807FE00EA01F816297DA71D>53
+D<EB0FC0EB3FF0EBF018EA01C03803803C3807007C5A000E1338001E13005AA35AA3EAF8
+3FEBC1C038F900E000FA1370143800FC133C141EA25A141FA41278A46C131EA2001C133C
+121E000E13786C13703803C1E03801FFC038007E0018297EA71D>I<12201238003FB5FC
+A214FE5A3860000400401308A21410481320A2C712401480A2EB01001302A25BA2130C5B
+A31338A213781370A213F0A51201A76C5A182A7DA81D>I<137E3801FF80380781C0380F
+00E0001E1370481338A248133CA200F8131EA4141FA41278143FA27E001C135F7E6C139F
+3803831FEA00FCEB001EA3143E143CA21438001C1378003E137014E0383C01C038180380
+381C0F00EA0FFEEA03F818297EA71D>57 D<14101438A3147CA314BEA3EB011FA3903802
+0F80A201047F1407A201087F1403A2496C7EA3496C7EA390387FFFFCA29038C0007E4913
+3EA248C7123F81A20002EC0F80A21206ED07C0001FEC0FE0D8FFE0EBFFFEA2272A7EA92C
+>65 D<B6FC15C0390FC003F00007EB00F881157E153E153FA6153E157E157C5D4A5AEC07
+E090B512809038C001F06E7E153E153F811680150F16C0A6ED1F80A2ED3F00A215FE000F
+EB01F8B65A158022297DA829>I<B67E15F03907E001FC0003EB003E81ED0F80ED07C0ED
+03E0ED01F0A2ED00F8A216FC167CA3167EAA167CA216FC16F8A2ED01F0A2ED03E016C0ED
+0780ED1F00153E0007EB01FCB612F0158027297EA82D>68 D<B7FCA23907E0003F000314
+07ED03801501A21500A416405CA21600A25CA2140F90B5FCA2EBE00F1403A2801620A391
+C7FC1640A416C0A215011503ED07800007143FB7FCA223297EA828>I<02FF13100107EB
+E03090381FC07890393E000C7001F8EB06F048481303484813014848130048481470A248
+C812305A123E1610127EA2007C150012FCA892B5FC127C007EEC03F01501123EA2123F7E
+6C7EA26C7E6C7E6C6C13026C7E013EEB0C7090391FC03830903907FFE0100100EB800028
+2B7DA92E>71 D<EAFFFEA2EA0FE0EA07C0B3B1EA0FE0EAFFFEA20F297DA815>73
+D<B538800FFEA23A07F00003F06C48EB01C0160015025D5D5D5D5D5D4AC7FC14025C5C14
+18143C147E14BEEBE11F01E27FEBE40F9038E807C001F07FEBE0036E7E811400157C157E
+153E81A2ED0F8016C0150716E0486C14F8B538803FFFA228297EA82E>75
+D<B512C0A2D807F0C7FC6C5AB3A41501A41502A41506A2150E151E157C0007EB01FCB6FC
+A220297EA825>I<D8FFE0913807FF80A20007EEF000D802F0EC0BE0A201781413A36D14
+23A36D1443A26D1483A3903907800103A3903803C002A2903801E004A3903800F008A2EC
+7810A3EC3C20A3EC1E40A2EC0F80A30007EB0700D80F804A7ED8FFF891B5128014023129
+7EA836>I<D8FFE0EB3FFE7FD803F8EB03E00002EC01C0017CEB0080137E133E7FA26D7E
+8013076D7E8013016D7E80147C80143F80EC0F8015C01407EC03E015F01401EC00F8A215
+7C157E153E151FA2150F1507A200071403486C1301EAFFF8150027297EA82C>I<B512FC
+ECFFC03907E007F00003EB00F8157C81153F811680A61600153EA215784A5AEC07C0D9FF
+FEC7FCEBE007EC03C06E7E6E7E811578157CA4157EA41601157F153F486CEB1F02B53880
+0F82ED0784C8EA01F8282A7EA82B>82 D<EBFE013803FF83380F81E3381E003748131F00
+387F00787F127000F07FA3807EA26C90C7FC127E127FEA3FE0EA1FFE380FFFE06C13F86C
+7FC66C7EEB07FFEB007FEC1F80140FEC07C0A26C1303A47E1580A26C13076C14006C130E
+00EE5B38C3C07838C1FFF038803FC01A2B7DA921>I<D8FFFE903801FF80A2D80FE09038
+007C00000715306C6C142000015D7F00005D6D1301017E91C7FC013E1302133F6D5BEC80
+0C90380FC00801075B14E001035BECF060903801F84001005B14FC027DC8FC147F143EAE
+147E90380FFFF0A229297FA82C>89 D<EA03FCEA0C0738100380383C01C0003E7F6D7E12
+1C1208C7FCA3137FEA03E0EA0F80EA1E005A127C0078144012F8A31301127C393C027880
+381E0C7F3907F01E001A1A7E991D>97 D<13FC38038780380701C0000E13E0EA1C00003C
+13F0A2481378A212F8A2B512F800F8C7FCA51278A26C1308A26C1310000E13206C134038
+01C18038007E00151A7E991A>101 D<131FEB70C0EBE1E0EA01C31203EB81C038078080
+1400A9EAFFFEA2EA0780B3A37FEA7FFCA2132A7FA912>I<140F3901FC30803807074338
+0E03C3001EEBC100486C7EA2007C7FA5003C5BA26C485A000E5BD81707C7FCEA11FC0030
+C8FCA47E381FFF806C13F06C7F3818007C48131E0070130E00607F12E0A40070130EA26C
+5B6C5B380781E0C6B4C7FC19287E9A1D>I<121E123FA4121EC7FCA9120FB4FCA2121F7E
+B3A2EAFFF0A20C297EA811>105 D<120FB4FCA2121F7EACECFFC0A2EC7E0014305C1440
+5C0103C7FC1304130C131E133E135F138FEB0780801303806D7E1300801478147C147E39
+FFF1FFE0A21B2A7EA91F>107 D<120FB4FCA2121F7EB3B2EAFFF0A20C2A7EA911>I<3A0F
+07F007F03AFF183818389039201C201C3A1F400E400E000F010F130F01801380A2010013
+00B13BFFF0FFF0FFF0A22C1A7E9931>I<380F07F038FF1838EB201C381F400E000F130F
+1380A21300B139FFF0FFF0A21C1A7E9921>I<137E3803C3C0380700E0000E1370481338
+003C133CA248131EA200F8131FA80078131EA26C133CA2001C13386C13706C13E03803C3
+C038007E00181A7E991D>I<380F0F8038FF11C0EB23E0EA1F43EA0F83EB81C0EB800090
+C7FCB07FEAFFFCA2131A7E9917>114 D<3807F080EA1C0DEA3003EA600112E01300A27E
+6C1300127EEA7FE0EA3FFC6C7EEA07FF38003F801307388003C0A2130112C0A200E01380
+130300F01300EACC0EEA83F8121A7E9917>I<7FA41201A31203A21207120F381FFF80B5
+FC38078000AD1440A73803C08012013800E100133E12257FA417>I<000F130FB413FFA2
+001F131F6C7FB05CA26C132F3903804F803901C08FF038007F0F1C1A7E9921>I<3AFFF3
+FF83FEA23A1F803C00F8D80F001460EB801C0007011E1340A2D9C02E13C00003012F1380
+A23A01E04701001581A23900F0838215C2A290387901C415E4137B90383E00E815F8A201
+1C1370A20118133001081320271A7F992A>119 D<39FFF01FF0A2390F8007800007EB03
+001402A26C6C5AA2EBE00C00011308A26C6C5AA2EBF830EB7820A26D5AA2EB3EC0EB1E80
+A26DC7FCA31306A21304A2130C1308A2EA701012F85BA2485AEA6180001FC8FC1C267F99
+1F>121 D<B612F01C0180901D>123 D<EA700EEAF81FEAFC3FA2EAF81FEA700E10067AA8
+1D>127 D E /Fg 14 122 df<1518153CA3157EA315FFA39138019F80A39138030FC0A2
+02077FEC0607A2020E7FEC0C03A202187F1501A24A6C7EA34A137EA34A7FA20101814A13
+1FA201038191C7120FA249B67EA20106C71207496E7EA3496E7EA201388101301400A201
+70810160157EA249157F8312016D16801203D80FF0ED7FC0D8FFFE0207B5FCA2383C7EBB
+3C>65 D<B812F0A2D803FCC7123F6C4814071601EE00F81778A21738A21718A4171C170C
+A21503A21700A45DA25D153F90B6FCA29038F8003F150F81A281A41703A292C7FCA21706
+A5170EA2170C171CA2173CA2177CEE01FCEE07F8486C143FB8FCA2303B7CBA36>69
+D<D8FFF893381FFF806D5E0003F0E00000016001BE166FA3019F16CFA3D98F80EC018FA2
+D987C0EC030FA3D983E01406A3D981F0140CA3D980F81418A2027C1430A36E1460A36E14
+C0A391390F800180A2913907C00300A3913803E006A36E6C5AA36E6C5AA2ED7C30A36F5A
+A36F5AA3486C6D5A487E486C6DC7487EB50307B51280A2413B7CBA49>77
+D<EC03FF91381E01E09138F0003CD903C0130F49486D7E49C76C7E013EEC01F0496E7E49
+157C484881A24848810007178049150F000F17C0491507001F17E0A248C9EA03F0A34817
+F8007E1601A300FE17FCAB007E17F8007F1603A46C17F06D1507001F17E0A26D150F000F
+17C0000717806D151F000317006C6C153E6D157E0000167C017C5D6D4A5A010FEC03C06D
+6C495AD903E0011FC7FCD900F8137C91381E01E0DA03FFC8FC363D7CBB3E>79
+D<007FB812C0A2903AC003FC003F277E0001F8130F007C160300781601127017001260A2
+00E017E0A2481760A7C71600B3B3EC07FE0107B512FEA2333B7DBA39>84
+D<267FFFE0903807FFF8A20003018001011380C690C8EAFE00491578017F15706D6C1460
+5F6D6C13016D6C5C4CC7FC6D6C5B6D6C13065E6D6C131C6D6C13185E027F137091383F80
+605EEC1FC191380FE18003E3C8FCEC07F7EC03FE5D14016E7EA2157F4B7EA2913801DFC0
+9138038FE0150F91380607F091380E03F8140C4A6C7E91383800FE14304A137F02E06D7E
+5C49486D7E01036E7E91C7FC01066E7E010E6E7E130C496E7E01386E7E0130157E017015
+7F01F0ED3F80D803F8ED7FC0D80FFCEDFFE0B5020313FFA2383B7EBA3C>88
+D<EB3F803801C0F03803003C00047F000C7F486D7E001C80003E1303003F80A3121EC7FC
+A3143FEB0FF3EB7E03EA01F8EA03E0EA0FC0EA1F80EA3F00123E127E16605AA31407A200
+7C130B127E003E903811F0C06C13603A07C1807F803A00FE003E0023257CA427>97
+D<EA03E012FFA212071203B3EC3FC0ECE0789038E3001C01E6130F01E8EB078001F8EB03
+C049EB01E04914F0150016F8A216FC167CA2167EA9167CA216FC16F8A2ED01F016E06D13
+0301D814C001C8EB07800184EB0E0001835B903881C0F09038003F80273C7EBB2C>I<ED
+0F80EC03FFA2EC001F150FB3EB03F8EB1E07903870018F9038E0004FD803C0132F484813
+1F120F90C7120F5A123EA2127E127CA212FCA9127CA2127E123EA2121E121F6C141F6C6C
+133F6C6C136F6C6C13CF3A0070018FC090393C0E0FFEEB07F0273C7DBB2C>100
+D<1207EA0F80EA1FC0A3EA0F80EA0700C7FCADEA07C012FFA2120F1207B3ACEA0FE0EAFF
+FEA20F397DB815>105 D<EA07C012FFA2120F1207B3B3B1EA0FE0EAFFFEA20F3C7DBB15>
+108 D<3903E01FE000FFEB607CEC801E3907E3000FD803E41480A201E8130716C013F0A2
+5BB3A6486CEB0FE0B50081B5FCA228257EA42C>110 D<3803E03E00FF13C39038E10780
+3907E20FC0EA03E413E8EC0780EC030001F0C7FCA35BB3A5487EB512C0A21A257EA41E>
+114 D<D8FFFEEB0FFFA2D807F0EB07F86C48EB03E0ED01C06C7E16807F0000EC0300A201
+7C1306A2137E013E5BA2013F131C6D1318A26D6C5AA2ECC07001071360A26D6C5AA214F1
+01015BA2D900FBC7FCA214FF147EA2143CA31418A25CA35CA214E05C1218383C0180127E
+49C8FCA2EA7C06EA300CEA1C38EA07E028367FA42A>121 D E end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 300dpi
+TeXDict begin
+%%PaperSize: a4
+
+%%EndSetup
+%%Page: 1 1
+1 0 bop 627 475 a Fg(Old)27 b(Mala)n(y)g(in)f(ArabT)1328
+494 y(E)1374 475 y(X)853 647 y Ff(Klaus)19 b(Lagally)742
+722 y(Institut)e(f)r(\177)-31 b(ur)19 b(Informatik)724
+796 y(Breit)n(wiesenstra\031e)f(20{22)797 871 y(D-70565)i(Stuttgart)873
+946 y(GERMANY)677 1020 y Fe(mailto:lagally)o(k@ac)o(m.or)o(g)823
+1160 y Ff(August)f(06,)h(1997)162 1290 y Fd(There)g(is)g(a)h(new)f
+(ArabT)643 1300 y(E)671 1290 y(X)g(language)h(mo)q(de,)f
+Fc(\\setmalay)p Fd(,)e(for)i(pro)q(cessing)i(Old)e(Mala)o(y)162
+1350 y(texts)c(in)g(the)g(extended)f(Arabic)g(writing.)162
+1434 y(This)h(mo)q(de)g(w)o(orks)g(only)g(with)g(ArabT)895
+1444 y(E)922 1434 y(X)g(v)o(ersion)g(3.06)h(or)f(later.)162
+1517 y(Old)k(Mala)o(y)h(input)f(texts)h(are)g(enco)q(ded)g(in)f(a)h(mo)
+q(di\014cation)f(of)h(the)g(standard)h(ArabT)1835 1528
+y(E)1862 1517 y(X)162 1578 y(enco)q(ding,)16 b(see)g(b)q(elo)o(w.)162
+1661 y(This)f(language)h(mo)q(de)e(is)h(strictly)e(exp)q(erimen)o(tal)f
+(and)k(exp)q(ected)e(to)h(con)o(tain)g(man)o(y)e(errors.)162
+1722 y(Please)19 b(rep)q(ort)h(y)o(our)g(exp)q(erience)e(and)i
+(suggestions)h(for)f(c)o(hanges)g(and)g(impro)o(v)o(em)o(en)o(ts)d(to)
+162 1782 y(the)f(author.)162 1866 y(Additional)f(enco)q(dings)i(\(note)
+g(the)f(v)m(arian)o(ts\):)p 845 1939 372 2 v 844 2053
+2 114 v 888 2004 a Fb(p)p 1091 2053 V 197 w Fa(\366)p
+1215 2053 V 844 2179 2 127 v 888 2130 a Fb(g)p 1091 2179
+V 1153 2069 a Fa(\011)1124 2130 y(\270)p 1215 2179 V
+844 2293 2 114 v 888 2244 a Fb(v)p 1091 2293 V 1153 2215
+a Fa(\011)1138 2244 y(\360)p 1215 2293 V 844 2415 2 122
+v 870 2366 a Fb(ng)49 b(~g)p 1091 2415 V 1146 2321 a
+Fa(\021)1134 2366 y(\250)p 1215 2415 V 844 2529 2 114
+v 870 2480 a Fb(ny)g(~n)p 1091 2529 V 1146 2447 a Fa(\021)1136
+2480 y(\340)p 1215 2529 V 844 2642 V 888 2594 a Fb(c)68
+b(^c)p 1091 2642 V 65 w Fa(x)p 1215 2642 V 845 2644 372
+2 v 1018 2744 a Fd(1)p eop
+%%Trailer
+end
+userdict /end-hook known{end-hook}if
+%%EOF
diff --git a/language/arabic/arabtex/examples/omar.tex b/language/arabic/arabtex/examples/omar.tex
new file mode 100644
index 0000000000..1929cb2955
--- /dev/null
+++ b/language/arabic/arabtex/examples/omar.tex
@@ -0,0 +1,37 @@
+\documentstyle[12pt,arabtex]{article}
+\parindent=0pt \textheight=25cm \pagestyle{empty}
+\begin{document}
+\null \vskip -2cm
+\setfarsi \novocalize \Large
+%
+\begin{arabtext}
+gUyand kasAn behe^st bA .hUr _hO^s ast \\
+man mIgUyam keh 'Ab-i angUr _hO^s ast \\
+In naqd begIr wa-dast az 'An nesiyeh bedAr \\
+k-'AwAz-i dohol ^sanIdan az dUr _hO^s ast. \\
+<\hskip 4cm> *** \\
+%
+dUrI keh dar 'Amadan wa-raftane mAst \\
+U-rA neh nehAyat neh bedAyat peydAst \\
+kas mI nazand damI darAyn ma`n-I rAst \\
+kAyn 'Amadan az ko^gA wa-raftan ze ko^gAst! \\
+<\hskip 4cm> *** \\
+%
+asrAr-i azal rA neh tO dAnI wa-neh man \\
+wa-yan .harf-i mo`ammA neh tO dAn-I wa-neh man \\
+hast az pase pardeh goftogU-i man wa-tO \\
+^cUn pardeh bar uftad, neh tO mAn-I wa-neh man. \\
+<\hskip 4cm> *** \\
+%
+yek ^cand beh kUdak-I beh ostAd ^sodIm \\
+yek ^cand ze ostAd-I _hOd ^sAd ^sodIm \\
+pAyAn-i so_han ^senow keh mA-rA ^ceh rasId \\
+^cUn 'Ab bar'AmadIm wa-^cUn bAd ^sodIm. \\
+<\hskip 4cm> *** \\
+%
+`umar-i _hayyAm
+%
+\end{arabtext}
+%
+\testoutput
+\end{document}
diff --git a/language/arabic/arabtex/examples/sindhi.dvi b/language/arabic/arabtex/examples/sindhi.dvi
new file mode 100644
index 0000000000..ec556bb8c1
--- /dev/null
+++ b/language/arabic/arabtex/examples/sindhi.dvi
Binary files differ
diff --git a/language/arabic/arabtex/examples/sindhi.ps b/language/arabic/arabtex/examples/sindhi.ps
new file mode 100644
index 0000000000..d54cc5f534
--- /dev/null
+++ b/language/arabic/arabtex/examples/sindhi.ps
@@ -0,0 +1,1313 @@
+%!PS-Adobe-2.0
+%%Creator: dvips 5.58 Copyright 1986, 1994 Radical Eye Software
+%%Title: sindhi.dvi
+%%CreationDate: Tue Feb 03 19:04:24 1998
+%%Pages: 3
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 596 842
+%%EndComments
+%DVIPSCommandLine: F:\EMTEX\BIN\dvips32.exe sindhi -pj:F:\TMP\dv2.mfj
+%DVIPSParameters: dpi=300, compressed, comments removed
+%DVIPSSource: TeX output 1997.09.30:1404
+%%BeginProcSet: texc.pro
+/TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N
+/X{S N}B /TR{translate}N /isls false N /vsize 11 72 mul N /hsize 8.5 72
+mul N /landplus90{false}def /@rigin{isls{[0 landplus90{1 -1}{-1 1}
+ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale
+isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div
+hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul
+TR[matrix currentmatrix{dup dup round sub abs 0.00001 lt{round}if}
+forall round exch round exch]setmatrix}N /@landscape{/isls true N}B
+/@manualfeed{statusdict /manualfeed true put}B /@copies{/#copies X}B
+/FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{
+/nn 8 dict N nn begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N
+string /base X array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N
+end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{
+/sf 1 N /fntrx FMat N df-tail}B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]
+N df-tail}B /E{pop nn dup definefont setfont}B /ch-width{ch-data dup
+length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{
+128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub
+get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data
+dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N
+/rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup
+/base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx
+0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff
+setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff
+.1 sub]/id ch-image N /rw ch-width 7 add 8 idiv string N /rc 0 N /gp 0 N
+/cp 0 N{rc 0 ne{rc 1 sub /rc X rw}{G}ifelse}imagemask restore}B /G{{id
+gp get /gp gp 1 add N dup 18 mod S 18 idiv pl S get exec}loop}B /adv{cp
+add /cp X}B /chg{rw cp id gp 4 index getinterval putinterval dup gp add
+/gp X adv}B /nd{/cp 0 N rw exit}B /lsh{rw cp 2 copy get dup 0 eq{pop 1}{
+dup 255 eq{pop 254}{dup dup add 255 and S 1 and or}ifelse}ifelse put 1
+adv}B /rsh{rw cp 2 copy get dup 0 eq{pop 128}{dup 255 eq{pop 127}{dup 2
+idiv S 128 and or}ifelse}ifelse put 1 adv}B /clr{rw cp 2 index string
+putinterval adv}B /set{rw cp fillstr 0 4 index getinterval putinterval
+adv}B /fillstr 18 string 0 1 17{2 copy 255 put pop}for N /pl[{adv 1 chg}
+{adv 1 chg nd}{1 add chg}{1 add chg nd}{adv lsh}{adv lsh nd}{adv rsh}{
+adv rsh nd}{1 add adv}{/rc X nd}{1 add set}{1 add clr}{adv 2 chg}{adv 2
+chg nd}{pop nd}]dup{bind pop}forall N /D{/cc X dup type /stringtype ne{]
+}if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup
+length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{
+cc 1 add D}B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin
+0 0 moveto /V matrix currentmatrix dup 1 get dup mul exch 0 get dup mul
+add .99 lt{/QV}{/RV}ifelse load def pop pop}N /eop{SI restore showpage
+userdict /eop-hook known{eop-hook}if}N /@start{userdict /start-hook
+known{start-hook}if pop /VResolution X /Resolution X 1000 div /DVImag X
+/IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for
+65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}N /RMat[1 0 0 -1 0
+0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V
+{}B /RV statusdict begin /product where{pop product dup length 7 ge{0 7
+getinterval dup(Display)eq exch 0 4 getinterval(NeXT)eq or}{pop false}
+ifelse}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale rulex ruley false
+RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR rulex ruley scale 1 1
+false RMat{BDot}imagemask grestore}}ifelse B /QV{gsave newpath transform
+round exch round exch itransform moveto rulex 0 rlineto 0 ruley neg
+rlineto rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta 0 N /tail
+{dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{S p tail}B /c{-4 M}
+B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{3 M}B /k{
+4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w}B /q{
+p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p
+a}B /bos{/SS save N}B /eos{SS restore}B end
+%%EndProcSet
+TeXDict begin 39158280 55380996 1000 300 300 (/ARABTEX.306/sindhi.dvi)
+@start /Fa 106 251 df<387FFFC0A3B51280A31206818510>5
+D<1238A813F0EA3BF8EA3FFC139CEA3E1CEA7DFCEAFFF813F0EA7F000E1180900D>8
+D<1220123C127F127EA212FE123C12040808818606>I<EA2020EA3C3CEA7F7FEA7E7EA2
+EAFEFEEA3C3CEA04041008808610>I<133813F8EA03F0EA0FE0EA3F80EAFE0012F81260
+0D0880870D>I<137813FCEA01FE13CEA213DE13FC120013F8A21203EA07D0EA1F80EA3E
+0012FC12F012600F1180900D>I<EB0380A2EA01C3EA41C700E11300EAE3FF5BB45A6CC7
+FC123E110A808911>15 D<EA2020EA3C3CEA7F7FEA7E7EA2EAFEFEEA3C3CEA0404100880
+8610>I<1202EA03C0EA07F013E0A2120FEA03C0EA00401300EA2020EA3C3CEA7F7FEA7E
+7EA2EAFEFEEA3C3CEA04041011808F10>I<EA2020EA3C3CEA7F7FEA7E7EA2EAFEFEEA3C
+3CEA0404EA0200EA03C0EA07F013E0A2120FEA03C0EA00401010808610>I<153E157FA2
+4B7EA25CEC038791380707C0EC0F03023E7F02FE13F8D907FCEBFFC090387FF8013807FF
+F0007F496C13800280137F49C7120FD8FFF891C7FC138000F0CAFC2A14819328>25
+D<1308A21318131C133CA57FA57FA25B1480133FEBE7C0007F13FEA213C300FF13FC1381
+38FE007C171A819915>28 D<7FA21201A21203120F127FA3487E12FB12E31203A27F1201
+7FA27FEA00FEEBFFC0A2137FEB3F80131F1307121A819910>30 D<1230123E127F127E12
+FEA2121C0807818606>46 D<1208120C121E121F1380EA3FC013E013F0EA7FE0A3EAFFC0
+127F123FEA1F80120F1207EA03007E0C13758C21>48 D<122012701278A212FCA2127EA2
+7EA27E1380120F13C01207A2EA03E0A3120113F0A21200A41378A61338A41330A21320A2
+0D28749621>I<0060131000701330A200F8132014607E14C0EAFF03EA7FFF14807E6C13
+006C5A13F8EA07C0A36C7EA21201A27F1200A41378A61338A41330A21320A21428779621
+>I<0020EB8020D87001136014C00078144039F803E0C014FFD8FE0F1380B6FC6C140013
+FC003F133E49C7FCEA1FE090C8FCA27EA37F1207A41203A27FA51201A65BA290C8FCA21B
+287B9621>I<131813301370EA01F0EA03E01207EA0FC0EA1F80EA1E005A12385A127C12
+FEEAFF8013E0EA7FFC123F120F1203EA00F8A21201EA03F0EA07C0EA0F80EA1F00121E5A
+12385A1278127FEAFFF813FFA2EA7FFE121F1201EA000C1028779621>I<132013701378
+13FC487E487E481380EB3FC0380E1FE0EB0FF0EA1C07381803F8383001FC1300002013FE
+0060137E143EA200E0131E7E140C7EA26C13186C1338387F81F8EBFFF07E6C13E06C13C0
+000313803800FE001720799021>I<38200180EA3C07EA7FFFA3B5FC123FEA0FF3EA0003
+14C0A6EB01E0A514F01300A214F8A21478147CA3143EA2143F141EA2140CA2140418257B
+9321>I<002014040070140C00781418007C143800FE147815F0007F1301393F8003C001
+C01380001F1307D80FE013000007130E3803F00C5CEA01F85C00001320EBFC60EB7C40A2
+6D5AA2131E131FA26DC7FCA57FA31306A21304A21E257E9321>I<5BA25BA25BA380A480
+130FA280130BA2EB19F01311EB31F81320EB60FC147E13C000017F018013800003131FD8
+070013C048EB0FE0001EEB07F04814F8EC03FC4813010070EB00F8006014784814304814
+101E257E9321>I<EA01F8EA07FE487E487FA2487FEA3C1FEA3007486C7EA2130112F0A3
+EAF8007EEAFF03EA7FFFA27E6C7FEA0FFEEA01F8C7FC80A21478147CA2147E143E143F80
+1580EC0FC015801407150080A21A287D9621>I<1270127C127E12FE12FCA2123C1200AA
+1270127EA212FE12FCA2121C07187D970D>I<122012601270A212F012F8A2127CA3127E
+127CA21278A61238A4123CA5121CA4121EA6120EA7120CA21208A207317CB00B>64
+D<1220A21260A212E0A27EA61270A61278A51238A6123CA67EA2121FA21380EA0FC013F8
+A21207EA03F01201EA00700D2F7FAE0D>I<13C0A2EA01E0A213F01203EA01F8A2120013
+FC137CA2133CA2131C1318A2133013F0120FEA7FE0A213C0EAFF80EAFE0012F00E1A8199
+10>71 D<170217071880A20020EE0FC0A2006016071703A212E06CEE0180A27EEF03006C
+5E6C161FD87F80157E01E0EC01FED83FFEEC3FFC6CB75A6C5E6C16C000015E6C6C02FCC7
+FC010314C03219809337>I<1220A21260186018E000E0836C16014D7E6C4C7E4DB4FC6C
+041E13C06CEE7E7FD87F80913801FC3F01E0913907F81F80D83FFE91383FF00F6CB7EAE0
+036C4CC7FC6C93C8FC000115FC6C6C14F0010714803A15808F39>I<1360A313F0120148
+7EEA0FFE387FFFC0A2EA7E7F38FC3F80EAF81FEAE007120D818C10>I<1318A2131C133C
+A5131C1318A21330EA01F0127F13E0A2EAFFC01380EAFC000E13819210>I<15201560A2
+15F0A415F81578A31538A61530A21570156015E0EC01C01403EC0F80143F903801FF00EB
+1FFE3803FFFCB55A000F13E038003FC01D20828B1C>80 D<15101518153EA3157CA2153C
+1538A51570A215F015E01401EC03C01407EC1F80147F903801FF00EB1FFE3803FFFCB55A
+000F13E038003FC01F1C82871C>I<1302EB03C0EB07F05CA2130FEB03C0EB004091C7FC
+A815201560A215F0A415F81578A31538A61530A21570156015E0EC01C01403EC0F80143F
+903801FF00EB1FFE3803FFFCB55A000F13E038003FC01D30829B1C>I<136013F013FC7F
+487E148038007FC0EB3FE0EB0FF01307EB03F813011300A21478A21430A21460EB01E0EA
+3FFF14C05A14801400EAFFFC151A7F9917>88 D<144014C080A21301A280A21300A28014
+78A2147CA3147EA2147F14DF9038019F80EA600390380F8FC039703F0FF0B5EA07FE13FE
+EBFC039038F801FC387FE000D81F80133C1F1E7D9D21>I<EA07C0EA1FF0EA3FF81380EA
+7E00127812701278127C127F13FC123F13F8127FA213F0EAFF80EAFC0012C00E137F9210
+>I<90381FFFF048B612FE5EA25A5E3807C03FC7B448C7FC4913C0D907FEC8FCEB0FF0EB
+1FC0495A017EC9FC5B13F0485A485A5B48CAFC12065AA25A1210A2123000201320143C00
+60137F147EA200E013FE143C140491C9FC7EA37EA2127CA2127E7E7F6C7E13F06C7EEA07
+FE3803FFC06C01FC14FC6C6CB612F06D1580010FECFC00010314E0D9007F90C7FCEC07F8
+2E3A809428>96 D<EBFF8014F814FF4814C015F04814FEC7EBFFE0021F13FF020313FE14
+00140F027F13FC0107B5FC48B61200007F14E04AC7FC14E0B5C8FC13F048C9FCCAFCAA14
+0315C015F014075DA21403EC00402826819328>99 D<EA01F8EBFF8014F04813FEECFFC0
+15F8D8001FEBFF80010114FEEB001F02035B140F023F5B91B5FC010301FCC7FC491380D9
+1FFCC8FCEB3FE0EB7F8001FEC9FCEA01F8485A13C0485A90CAFC120E120CEA1808131F00
+3013C000205B133F006090C9FC130F130300E0CAFCA37EA37EA27E127E127F7FEA3FE07F
+EA1FFC6CB47E6C01F814FC6C90B612F0C61680013FECFC00010F14E0010191C7FC903800
+0FF82E397A930D>I<EB7F803801FFF8000713FF4814C04814F04814FE0100EBFFE0007C
+011F13FF0070010313FE0060130048130F48017F13FC0107B5FC0001B61200007F14E04A
+C7FC14E0B5C8FC13F048C9FC2814819328>103 D<90381FFFF048B612FE5EA25A5E3807
+C03FC7B448C7FC4913C0D907FEC8FCEB0FF0EB1FC0495A017EC9FC5B13F0485A485A5B48
+CAFC12065AA25A1210A212301220A21260A312E0A47EA37EA2127CA2127E7E7F6C7E13F0
+6C7EEA07FE3803FFC06C01FC14FC6C6CB612F06D1580010FECFC00010314E0D9007F90C7
+FCEC07F82E3A809428>I<EBFF8014F814FF4814C015F04814FEC7EBFFE0021F13FF0203
+13FE1400140F027F13FC0107B5FC48B61200007F14E04AC7FC14E0B5C8FC13F048C9FC28
+14819328>107 D<EA01F8EBFF8014F04813FEECFFC015F8D8001FEBFF80010114FEEB00
+1F02035B140F023F5B91B5FC010301FCC7FC491380D91FFCC8FCEB3FE0EB7F8001FEC9FC
+EA01F8485A13C0485A90CAFC120E120C5AA25A1220A21260A312E0A37EA37EA27E127E12
+7F7FEA3FE07FEA1FFC6CB47E6C01F814FC6C90B612F0C61680013FECFC00010F14E00101
+91C7FC9038000FF82E397A930D>I<EA01F8EBFF8014F04813FEECFFC015F8D8001FEBFF
+80010114FEEB001F020313FC140F91B512F8130F48B5EAFE00007F14C002FCC7FC14E048
+48C8FC13F048C9FC2714819306>I<1318131EEB1F80133F91C9FC5B131F130290CAFCA9
+90381FFFF048B612FE5EA25A5E3807C03FC7B448C7FC4913C0D907FEC8FCEB0FF0EB1FC0
+495A017EC9FC5B13F0485A485A5B48CAFC12065AA25A1210A212301220A21260A312E0A4
+7EA37EA2127CA2127E7E7F6C7E13F06C7EEA07FE3803FFC06C01FC14FC6C6CB612F06D15
+80010FECFC00010314E0D9007F90C7FCEC07F82E4B80A528>112
+D<1410141EEC3F8092C7FCA25C141E140291C8FCAAEBFF8014F814FF4814C015F04814FE
+C7EBFFE0021F13FF020313FE1400140F027F13FC0107B5FC48B61200007F14E04AC7FC14
+E0B5C8FC13F048C9FC282681A528>115 D<90381FFFF048B612FE5EA25A5E3807C03FC7
+B448C7FC4913C0D907FEC8FCEB0FF0EB1FC0495A017EC9FC5B13F0485A485A5B48CAFC12
+065AA25A38100202903803C3C0393007F7F00020EBE7E0A238600FEF903803C3C0903800
+404000E06DC8FC143C147F147E7E14FE143C6C130491C9FC127CA2127E7E7F6C7E13F06C
+7EEA07FE3803FFC06C01FC14FC6C6CB612F06D1580010FECFC00010314E0D9007F90C7FC
+EC07F82E3A809428>120 D<EB1FE0EBFFFEECFFE015FC48ECFFC016FF2603C03F5BC712
+03140002075B141F91B512F00103EBFBFC011FEBC1FE3B01FFFE01FFC0007FD9F00013FE
+02C0137F49C7123FD8FFF8EC0FFC01C0140300FCC9127CCBFCAAEC040491380787809138
+0FEFE0EDCFC0EC1FDFA29138078780EC00800340C7FC157815FE5D1401A2EC007815082F
+2F81942D>122 D<EBFF8014F814FF4814C015F04814FEC7EBFFE0021F13FF020313FE14
+00140F027F13FC0107B5FC48B61200007F14E04AC7FC14E0B5C8FC13F048C9FCCAFCAAEC
+3030EC3C3CEC3F3F4A5AEC7E7EA2EC3E3EEC04040203C7FC15C015F014075DA21403EC00
+40282E819328>I<1802EF03071620EE6002EF060F04E0130EEF0F069338F01FFE0301EB
+FFFC93B5FCA2EFF7F80010EEE1F06FEBC0000030037EC7FC00201570A21260A312E01660
+A27EA216406C15C06C5D1501007E1403007F4AC8FCD83FC0131F6D137E391FFC03FE6CB5
+5A6C5C6C5CC614C0013F90C9FCEB07F83828808E37>128 D<1602ED03071420EC400291
+38C0060F160E0101EB0F060103EB1FFE90390FE0FFFC007FB6FCA2EDF7F8D8FFFDEBE1F0
+01F8EBC000D9E07EC7FC280F818E26>131 D<EA0408EA0C1CA3EA1C3C1338123EEA7FF8
+13F0A212FFEAEFE0EAC7C00E0D818C0D>133 D<1704EF0F8018C0A2171F188017071701
+94C7FCEF4040EFF8F8EFFCFCA2EE01FDEFF9F89338007878EF181894C7FCA81802EF0307
+1620EE6002EF060F04E0130EEF0F069338F01FFE0301EBFFFC93B5FCA2EFF7F80010EEE1
+F06FEBC0000030037EC7FC00201570A21260A312E01660A27EA216406C15C06C5D150100
+7E1403007F4AC8FCD83FC0131F6D137E391FFC03FE6CB55A6C5C6C5CC614C0013F90C9FC
+EB07F8384180A737>136 D<1504ED0F8016C0A2151F16801507150192C7FCED4040EDF8
+F8EDFCFCA2EC01FDEDF9F89138007878ED181892C7FCA81602ED03071420EC40029138C0
+060F160E0101EB0F060103EB1FFE90390FE0FFFC007FB6FCA2EDF7F8D8FFFDEBE1F001F8
+EBC000D9E07EC7FC282881A726>139 D<F003F0F01FFCF07FFE95B5FC050314805F9438
+0FF83F030290391FC00F000306EB3F00057E133F030F9038F801FE933801F01F933983E1
+FFFC04E7B55A93B612E0198006FCC7FC001017E06F49C8FC0030ED7F80002092CAFCA212
+60A312E01506A27E15047E150C6C5C007E1438007F5C393FC001F09038F00FE06CB5FC6C
+5C6C5C6C91CBFCC613FCEB1FE0412B809341>144 D<EE0FC0EE3FF0EEFFF8030313FC4B
+13FE151FED3FE0010890387F803C0118EBFE00DA01F813FC903A3C03F007F8913807C03F
+903A7E0F83FFF0D9FF9FB512E0007F90B6128001DFECFE00019F14F0D8FF8F1480010701
+F8C7FC26FE01FEC8FC2F14819330>147 D<1708170FEF1FC060A2173F050FC8FC170194
+C9FCA3F003F0F01FFCF07FFE95B5FC050314805F94380FF83F030290391FC00F000306EB
+3F00057E133F030F9038F801FE933801F01F933983E1FFFC04E7B55A93B612E0198006FC
+C7FC001017E06F49C8FC0030ED7F80002092CAFCA21260A312E01506A27E15047E150C6C
+5C007E1438007F5C393FC001F09038F00FE06CB5FC6C5C6C5C6C91CBFCC613FCEB1FE041
+36809E41>152 D<1530153C153F5D157EA2153E150492C8FCA3EE0FC0EE3FF0EEFFF803
+0313FC4B13FE151FED3FE0010890387F803C0118EBFE00DA01F813FC903A3C03F007F891
+3807C03F903A7E0F83FFF0D9FF9FB512E0007F90B6128001DFECFE00019F14F0D8FF8F14
+80010701F8C7FC26FE01FEC8FC2F1F819E30>155 D<EB01F0EB07F8130F131F5C133FEB
+3C300130CAFC5BA2137013F07F13FE90B812E018F86D16FC6D16FE7F010716FF90CA127F
+181F180FA21806A3181CB912FC123F6C17F81207000117F0D8003F16C0382283A137>I<
+EB01F0EB07F8130F131F5C133FEB3C300130CBFC5BA2137013F07F13FE90B812E018F86D
+826D827F01078290CA7E181F84A21806A3181CBA12E0123F7E000718C01201EA003F3B22
+83A137>I<EB07C0EB1FE0133F137F5C13FF13F001C0CBFC485AA27F12037F13F890B87E
+18E06C836C837F011F8290C91201EF007C183CA21818A31870007FB91280A3BA1200A339
+2281A137>I<EB07C0EB1FE0133F137F5C13FF13F001C0CAFC485AA27F12037F13F890B8
+128018E06C17F06C17F87F011F16FC90C91201EF007C183CA21818A31870007FB812F0A2
+18E0B9FC18C01800362281A137>I<8080A2497EA380A380A45CA25C130080A514701478
+A3EE1F80EEFFE0DA380313F0DA3C0713F8031F13FC5DED7FC19238FE0078EC3FF891391F
+F001F89238C00FF0ED80FF030F13E04AB512C0B81200003F15FC6C15E0000792C7FCC614
+F0D91FFCC8FC2E2E81AD2D>I<8080A2497EA380A380A45CA25C130080A514701478A3EE
+1F80EEFFE0DA380313F0DA3C0713F8031F13FC5DED7FC19238FE0078EC3FF891391FF001
+F89238C00FF0ED80FF030F13E04AB512C0B812FE123F7E000716FCC614F790391FFC000F
+2F2E81AD2D>I<1360A213F0A37FA37FA45BA313701378A51338133CA3ED0FC0ED7FF090
+391C01FFF8D91E0313FC020F13FE5CEC3FE091387F003C14FC6D4813FC9138E007F8ECC0
+7F913887FFF049B512E0007FB61280EDFE0015F0B6128002F8C7FC49C8FC272D81AC26>
+163 D<8080A2497EA380A380A45CA2ECE00C0100130F02F013C0151F5E153F150FDA7001
+C7FC0278C8FCA3EE1F80EEFFE0DA380313F0DA3C0713F8031F13FC5DED7FC19238FE0078
+EC3FF891391FF001F89238C00FF0ED80FF030F13E04AB512C0B81200003F15FC6C15E000
+0792C7FCC614F0D91FFCC8FC2E2E81AD2D>I<1360A213F0A37FA37FA45BA21406903870
+0780017813E0140F5DA214079038380080013C90C7FCA3ED0FC0ED7FF090391C01FFF8D9
+1E0313FC020F13FE5CEC3FE091387F003C14FC6D4813FC9138E007F8ECC07F913887FFF0
+49B512E0007FB61280EDFE0015F0B6128002F8C7FC49C8FC272D81AC26>167
+D<EB07E0EB3FF8EB7FFE90B5FC91C9FCEA01F813E05BA27FA26D13186D13786D13F83900
+FF03F014FF6D5B5D6D5B6D48C8FCEB07F8EB0FE0495A49C9FC137E13F8485A5B485A485A
+90CAFC120E120C121C1218121012301220A21260A312E0A47EA37EA2127CA2127E7E7F6C
+7E13F06C7EEA07FE3803FFC06C01FC14FC6C90B612F0013F1580010FECFC00010314E0D9
+007F90C7FCEC07F82E44809E26>I<EB01FE90380FFFC0013F13F0A3495B14F3EB6FFF01
+075B6D5B013F13F8007FB61280A214EFB500831300EBFC000180131F211181901F>170
+D<EB01F8EB07FF4913804913C090383FC000013EC7FC133C1370A21378A2137C137E9038
+3F800FECE0FF90381FFFFEA26D13FC5B48B512E0007FEBFE0014F01480D8FFFCC7FC13C0
+00FCC8FC201A81991F>I<EF03E0EF07F8EF0FFEA2845F94381C7F80181FEF3E0F0010EE
+3FFFA21230EF1FFB4893380FF300EF03E3EF00031802180600E0170E60183C18F86C1603
+EF0FF06CEE7FE06C923803FFC0B4037F5BD87FF090267FFFFEC7FC90B712F86C16E06C93
+C8FC000715F8000192C9FCD8003F13803922809F39>I<147F495A4913805BA25B140713
+0CEB18031500A2EB3C021406EB3E0EEB3F3C14FC131F007FB512FCA3B612F8EBFE7FEBE0
+0F1E1781961C>174 D<131FEB3FC0EB7FE014F014F813FFEBC3FC13E00001137C13F0EB
+FFFCA214D87EEB7F98EB1F30EB0070EB01F0EB0FE013FF007F13C014801400EAFFFC13F0
+48C7FC161A819915>I<1906191E19FC1803180FF03FF8F0FFF0050313C0050F1300EF3F
+F8EF7FE0933801FF804C48C7FCEE07F8EE0FE017804CC8FC161C5E16305EA316E0A382A5
+821678A21220167C163C1260A2163E00E0151E7EA26C151C6C150CB4153CD87FF0EB03F8
+90B6FC7E6C5D00075D00011580D8003F01F8C9FC3F3580B137>184
+D<1607161E167EED01FEED07FC151FED7FF8913801FFC0020790C7FCEC1FFCEC7FF09038
+01FFC0010790C8FCEB0FFCEB3FF0EB7FC049C9FCEA01FC13F05BEA0380A27F487E7F7F6C
+7E6CB4FC6C7F6D7EEB3FF06D7E6D7E6D7E6D7E816D13E0EC9FF0EC8FF890380307FC496C
+B4FCD91E017FD97E0013E0D803FCEB7FFC007F91381FFFC0497F497FD8FFC00101138090
+C8127F00F8150F2A3281B128>186 D<1607161E167EED01FEED07FC151FED7FF8913801
+FFC002071300EC1FFCEC7FF0903801FFC0010790C7FCEB0FFCEB3FF0EB7FC049C8FCEA01
+FC13F05BEA0380A27F487E7F7F6C7E6CB4FC6C7F137F6D7E131F130F13071303A26D5AA3
+49C8FC5B131E137EEA03FC127F5B5BEAFFC090C9FC12F8283281B11F>I<193019F81803
+F00FE0F03F80F0FE00943803F80694380FE01E94383F80FCEFFE03933803F80F933907E0
+3FF8943880FFF0DC060313C0DC000F1300EF3FF8EF7FE0933801FF804C48C7FCEE07F8EE
+0FE017804CC8FC161C5E16305EA316E0A382A5821678A21220167C163C1260A2163E00E0
+151E7EA26C151C6C150CB4153CD87FF0EB03F890B6FC7E6C5D00075D00011580D8003F01
+F8C9FC3F3B80B737>192 D<193019F81803F00FE0F03F80F0FE00943803F80694380FE0
+1E94383F80FCEFFE03933803F80F933907E03FF8943880FFF0DC060313C0DC000F1300EF
+3FF8EF7FE0933801FF804C48C7FCEE07F8EE0FE017804CC8FC161C5E16305EA316E0A382
+A5821678A21220167C163C1260A2163E00E0151E7E161F6C16E06C93B5FCB45DD87FF001
+03B6FC90B85A6C15FB6CEDF07F00074BC8FC00011580D8003F01F8C9FC3F3B80B737>I<
+16101678ED01F8ED07F0ED1FC0037FC7FC913801FC07913807F01E91381FC07E91387F01
+FE903901FC07FC903807F01F90391FC07FF890397F01FFC02601FC0790C7FC3903F01FFC
+3901C07FF0390001FFC0010790C8FCEB0FFCEB3FF0EB7FC049C9FCEA01FC13F05BEA0380
+A27F487E7F7F6C7E6CB4FC6C7F6D7EEB3FF06D7E6D7E6D7E6D7E816D13E0EC9FF0EC8FF8
+90380307FC496CB4FCD91E017FD97E0013E0D803FCEB7FFC007F91381FFFC0497F497FD8
+FFC00101138090C8127F00F8150F2A3881B728>I<16101678ED01F8ED07F0ED1FC0ED7F
+00913801FC07913807F01E91381FC07E91387F01FE903901FC07FC903807F01F90391FC0
+7FF890397F01FFC02601FC0713003903F01FFC3901C07FF0390001FFC0010790C7FCEB0F
+FCEB3FF0EB7FC049C8FCEA01FC13F05BEA0380A27F487E7F7F6C7E6CB4FC6C7F137F6D7E
+131F130F13071303A26D5AA349C8FC5B131E137EEA03FC127F5B5BEAFFC090C9FC12F828
+3881B71F>I<1640ED01E01507ED3FC0EDFF00EC03FC91381FE00691387F803E903901FE
+00FC90380FF00790393FC01FF89038FF00FF2607F80313F0261FE00F13803A7F807FFE00
+39FC01FFF0D8700713C026001FFEC7FCEB7FF83801FFE0000790C8FCEA0FFCEA1FF0EA3F
+C090C9FC123C1270A212F87EB4FC7F6C7EEA3FF06C7E6C7E6C7E12011200137F7F7F7FA2
+7F1306A35B133CEA01FC5BA2485A5B1380273887B717>199 D<152015601570A215F015
+F8A3157CA61578A51538A4153CA6151CA40004141E120CA25AA20010140E12301220A212
+60A312E0A27E150CA27E15086C1418007E1430007F1470393FC001F09038F00FE06CB5FC
+6C14C06C14806C1400C613FCEB1FE01F3F80AD1F>I<1502A21507A25DA781A582AA6F7E
+A582A282A28216FEEEFF80A30010EDBF00169F0030158700201580A21260A312E093C7FC
+A27E15027E15066C5C007E141C007F5CD83FC013F89038F807F06CB5FC6C5C6C5C6C5CC6
+49C8FCEB1FF0294280AA28>I<5AA2487EA21207A71203A57FA61201A47FA57FA27FA27F
+13FF387F7FC0A2133F38FE1F80130FEAFC03122B81AA10>I<EA0180A2EA03C0A313E0A3
+13F0A21201A213E0A91200A513F0A61370A31360A213E0EA07C0127F1380A2EAFF005A12
+F00C2D81AC0D>I<1302A21307A25BA76D7EAC1303A580A4130780130DEB1DF0EB39FC90
+3879FF8013F1EA01E00003EB7F0048487E381F800F48C8FC127E127C127812E05A5A1932
+81B117>206 D<EB07C0497E497E497EA2497EEBF0FEEBE07E0001137F0003EB3F803907
+F01FE0D87FF813FCEBFE0F90B5FC00FC14F838F87FFE39F03FFC3839000FF800EB03E01E
+1381901C>210 D<14E0EB01F014F8130314FCA2EB067C143E130FEB1F1EEB3F9E137F38
+01FFDE3807EFEC387FE7FC13C7EB83F8EAFF01EAFC0000F013701714819310>212
+D<EC0780EC0FE0EC1FF015F8143FA2EC30F0146FEB03FF011F13E090B5FC1203000F14C0
+003FEBE000D87FF8C7FC13C0007EC8FC12F812E012801D1481931C>215
+D<EC07FF91B512E0010F14F848B612FE007F15FFA29138F003FEB5C7123E01E0140E00FC
+C81204280A81891F>220 D<EB1FC0EB7FF03801FFFC4813FE4813FF5AEBC0FE381F003E
+001C130E4813040030130012201260A312E07EA27EA27EA2127CA21238A21218181B859A
+15>223 D<15101538A2153C157C157EA2153E153F8112108100301580122015071260A3
+00E01403A36C1500A36C140215066C140E007E5C007F143CD83FC013F8EBF8076CB55A6C
+5C6C5C6C5CC649C7FCEB1FF02125809621>I<ED018016E016F0ED03FEA3001015FCA200
+3015DC0020EC01C0A21260A312E01680A27E16005D6C140215066C140E007E5C007F147C
+D83FC05BEBF8076CB55A6C5C6C5C6C91C7FCC65BEB1FF02721808826>I<14F8EB03FCEB
+0FFE133F497E90B5FC3803FE1F3907F80F80EA0FE0391F8007C0D83F0013F0007E14FC00
+781303127048EB01F84813004814381E1181901C>230 D<5BEB0380EB07C0130FA2131F
+A2EB3B801331EB23001367135F13FE1203387FFFFEA338FFDFFC13FF12F93801CFE013E7
+13E3A213E113F1EBF0C0EA00F813FF1480137FA2EB3F00131E1722819315>234
+D<1302EB078014E080EB0FFC806D7E4913804913C015E04913F015F8EB787F9038703DFC
+EC38FE9038F8187E9038FC387F9038FFF03F151FEB7FFC48B5128F007F14FEA215FC38FF
+F87FEBC00F00FCC712F8201B819A1F>I<137C13FF14F0487F80487FEB07FF1383000714
+809038C3BFC0EBEF1F9038FF0FE0EBFE073803FFC34813FB007FEBFFC0A213DFD8FF0313
+8038FC007F00F0EB0F001B15819410>I<147814FE497E158015C05BEC0FE01487EB0783
+ECC3F014F114FFA26D13F87F7F141FEC0038A61570A215F015E01401EC03C01407EC1F80
+147F903801FF00EB1FFE3803FFFCB55A000F13E038003FC01D267F911F>240
+D<143C147F4A7E81A2497F14876E7EEB03C114E1ECF8F814FE91B512E07F7F6E13C0141F
+14039138001C00A55DA21578157015F04A5A1403EC0FC0143F49B45A011F90C7FC3803FF
+FEB55A000F13F038001FC02326819121>I<8317F0EE01FC5FA21603EE00F0171094C8FC
+A5EF03E0EF07F8EF0FFEA2845F94381C7F80181FEF3E0F0010EE3FFFA21230EF1FFB4893
+380FF300EF03E3EF00031802180600E0170E60183C18F86C1603EF0FF06CEE7FE06C9238
+03FFC0B4037F5BD87FF090267FFFFEC7FC90B712F86C16E06C93C8FC000715F8000192C9
+FCD8003F1380392F80AC39>I<1720177C177E17FEA25F173C170C94C8FCA5187E4DB4FC
+00105E4D1380485EA20060EE1F0FEF1C071718943830030012E0A26CEE7806180E6C173E
+6CEE7DFCB4167FD87FC04A485A01F80103B5FC6CB912F87E7E000304E313F0C6EDFC0001
+0F01FCC7121F3D2680A53C>I<EC040491380F8F80EDEFE0EDCFC0EC1FDFED9F80EC0787
+EC018191C8FCA7ED07C0ED0FF0ED1FF816FC16FE153FED30FFED383FED781F157C0010EC
+7FFF123016F70020143F0060EC1FE6ED07C6ED0006160412E0160C1608161816386C1570
+16F06CEC01E06C14076CEC1FC0D87F80EBFF80D9F00713006CB55A6C5C6C14F06C14C000
+0191C7FC38003FF0283380A828>I<17F8EE03FC160F163FEE7FF816FF923801FE18EEF8
+10923803E00016804BC7FC15065D1508A2151812100030143CED3FC0002015FE0060EDFF
+8017C081150700E01400EE07801601EE03005E6C5D163E6C157E4B5A6CEC07F86CEC1FF0
+D87F80EBFFE0D9F00713806CB6C7FC6C14FC6C14F0000314C0C691C8FCEB1FF02E2B7F98
+2D>248 D<4B7E16F016FC00104AB4FC17C0003016E0030013F00020ED3FF80060ED0FFC
+16031601EE007C00E01638A317706CED01F0EE03E06C150F6CED3FC0B4913801FF80D87F
+C0010F130001FCEBFFFC6CB65A6C15E06C1580000302FCC7FCC614E0D90FFEC8FC2E1D80
+851F>250 D E /Fb 2 46 df<EA01E01207121FEA3E00127812705AA512701278123EEA
+1FE0120712010B117CA014>44 D<12F012FCB4FCEA0F80EA03C01201EA00E0A5EA01C012
+03EA0F80EAFF0012FC12F00B117CA014>I E /Fc 33 128 df<EA01E0EA0630EA083812
+18EA103C123012601378A212C013F01200EA01E0A3EA03C0A3EA0780A21381EA0F03A212
+0EEA1E06A21304130CEA0E18EA0630EA03C0101F7A9E16>16 D<14F8EB018CEB020EEB04
+0F130C1318A21330A2EB601EA21300A2143CA41478A414F0A4EB01E0A4EB03C0A4EB0780
+A4EB0F00A2EA380EEA781CEAF8185BEA7060EA3F80182D839E17>I<131C133C137C13F8
+EA01F0EA03C0EA0780EA0F00120E5A5A12605A0E0D68B124>19 D<38C00180EAE0073870
+0E00EA383CEA1C70EA0FE0EA07806CC7FC11086CAC24>I<6C1320A31440A21480130100
+C01300EA4002EA600CEA3038EA1FF0EA0FC0130D6CB124>I<B512FEA2170270A824>I<12
+3C127E12FEA212FCA212700707788616>46 D<121C123E127E12FEA2127C123807076EB0
+16>95 D<EB07C0EB18639038703780EBE0173801C01FD80380130000077FEA0F00A24813
+1E121E123EA2485BA4485BA31510ECF0305AA2D870011320903803E060EA7802D8380413
+C03918086080380C30313907C01E001C1F789E24>97 D<1378EA0FF8121F12005BA4485A
+A4485AA4485AA3EB8F80380F1860EB6070EBC0381380381F003CA2121EA248133EA3143C
+48137CA44813F8A3EB01F0A214E0EB03C01270EB07801400EA300E6C5AEA0C70EA07C017
+3278B120>I<EB03F0EB1C0CEB3806EBF0033801E0073803C00F3807801FA2380F001E48
+1300121E123EA25AA45AA5140400781306140C1418003813306C1360EB01C038060700EA
+03F8181F789E20>I<157CEC07FC140FEC007C1578A415F0A4EC01E0A4EC03C0A3EB07C3
+9038186780EB7037EBE0173801C01FD80380130000077FEA0F00A248131E121E123EA248
+5BA4485BA31510ECF0305AA2D870011320903803E060EA7802D8380413C0391808608038
+0C30313907C01E001E3278B124>I<EB07C0EB3830EBF0183801C00CEA03801207EA0F00
+121E1418123E48133014E0EB078038FFFC0000F8C7FCA35AA51408140C14180070133014
+606C13C038180380380C0E00EA03F0161F779E20>I<15FCEC0186EC0307EC070FEC0F1F
+140EEC1E0E1500A2141C143CA45CA590381FFFE0A2903800F000A3495AA5495AA6495AA5
+49C7FCA45B131EA45BA45BA313701270EAF8E0A2485AEAE1800063C8FC123E204081B116
+>I<143EECC31890380381BCEB0700010E13FC4913F8013C13785BA201F813F05B1201A2
+3903E001E0A43907C003C0A4EC07801380A20003130FEC1F0013C00001132F0000134FEB
+619EEB3E1E1300A25CA45CA200385B00785B38F801C0495AD8700EC7FCEA1FF81E2D7D9E
+20>I<131F48B4FC5AEA001F131EA45BA45BA45BA3147E3801E3839038E603809038EC01
+C013F8D803F013E013E0A201C013C0000713031380A3390F000780A3EC0F00121EA2141E
+1502481406143CA2150C48133815181510152048EB18400060EB0F801F327BB124>I<13
+07EB0F80A21400130690C7FCACEA01E0EA0630EA08381218EA103C123012605BA212C05B
+1200485AA3485AA3485AA21381485AA2120EEA1E06A21304130CEA0E18EA0630EA03C011
+307AAF16>I<130F48B4FC5AEA001F131EA45BA45BA45BA3EC03E03901E00430EC1878EC
+20F814403903C080F015E001C1C7FC13C2485A1388139013E0120F137C130FEB0380381E
+01C080A21520003C1460A315400078EBC0C0A2ECC180010013004813620060133C1D327B
+B120>107 D<133CEA07FCA2EA007C1378A413F0A4EA01E0A4EA03C0A4EA0780A4EA0F00
+A4121EA45AA45AA31320EAF060A4EAE0C0A213801261EA7300121E0E3279B112>I<3B07
+C00FC007E03B0C60706038303B1870C07060383B10798038C01C3A307B003980017E9038
+3F001ED8607C133EA20178013C131CD8C0F8017C133C4913781200A24848495BA35F4848
+485AA24C5A182027078003C01460EE03C0A218C0270F0007801380EF818018001783001E
+90390F000184000C0106EB00F8331F7A9E39>I<3907801F803908C060E03918E1807039
+30F3003813F6EA60FC49133CA249133800C114785B1201A248485BA34A5AEA0780A24A5A
+1680D80F0013C1EC0781A21600001E5C15021506150448EB03180018EB01F0211F7A9E27
+>I<EB03F0EB0E1CEB3806EB70073901E00380EA03C0018013C01207EA0F005A121E123E
+A2481307A448EB0F80A215005C141EA200785B5C147000385B6C485A380C0380D8060EC7
+FCEA01F81A1F789E24>I<90383E01F0903863030C9038C38C0E903883D807000113F002
+E01380EA030314C0A22606078013C0A21200168090380F000FA4011EEB1F00A3153E5B15
+3C5DA2017C5B017E5B4A5A90387A0380D9F10EC7FCEBF0F891C8FCA2485AA4485AA4485A
+7FEA7FFC12FF222D7F9E24>I<903807C0C09038186180EB7033EBE0173801C01FD80380
+130000077FEA0F00A248131E121E123EA2485BA4485BA45C5AA2EA7001495A1278EA3805
+EA1809380C33C0EA07C3EA0003A2495AA449C7FCA4131E131F3807FFF0A21A2D789E20>
+I<3907C03F80390C60E0E03818718039107B01F0EA307E017C13E0006014C00178C7FCA2
+485AA21200A2485AA4485AA4485AA448C8FCA4121E120C1C1F7A9E1E>I<EB0FE0EB3038
+EBE00C380180061203EB000E48131EA2140C14007F13E013FE3803FF806C13C06C13E0EB
+0FF01301EB00F81478A20070137012F8A24813604813E04813C03840018038600300EA18
+1CEA07F0171F7A9E1D>I<130C131E5BA45BA45BA3387FFFE0B512C03801E000A3485AA4
+485AA448C7FCA4121EA35B485AA213021306EA3804130C5BEA1810EA1C60EA0780132C79
+AB17>I<D801E01338D806381378EA0C18EA181C1210D8303C13F0122012605B00C0EB01
+E0A2EA00F0A2EC03C0EA01E0A33903C00780A315819038800F031207A215020003EB1E06
+A29038C02E0C0001EB46083900E1831890383E01E0201F7A9E26>I<D801E09038380380
+D8063890387807C0EA0C18EA181C1210D8303CEBF0031220006015015B00C0D901E01380
+A2EA00F0A2913903C00300EA01E0A33A03C0078006A35E150013804A5BA25E6D5A000190
+383380602600E0235B903970C1C18090261F807EC7FC2A1F7A9E2F>119
+D<D801E01338D806381378EA0C18EA181C1210D8303C13F0122012605B00C0EB01E0A2EA
+00F0A2EC03C0EA01E0A33903C00780A49038800F001207A30003131EA2EBC03E0001135E
+3800E1BCEB3E3C1300A25CA21470003C13F0007C5B495A3878038012600106C7FC6C5AEA
+1838EA07C01D2D7A9E22>121 D<010F133090383F806090387FC0C0EBFFE03901E0F180
+9038801F0038030006A2C75A5C5C5C5C495A49C7FC13065B5B5B5B49138038018001EA03
+0000061303481400381BC00F381C381E38301FFC00605B6D5A38C003C01C1F7C9E1D>I<
+EBE0023803F00438063008381838303830186038400F800080130017076FAF24>126
+D<381C01C0383E03E0EA7E07EAFE0FA2387C07C03838038013076DB024>I
+E /Fd 51 256 df<003FB512801500A25A5CA2B5FC1907828615>5
+D<003FB512801500A25A5CA2B5FC1907828615>I<003FB512801500A25A5CA2B5FC1907
+828615>I<1218123CA8137C13FEEA3FFF148013C7138FEA3E7F387FFF00485A13F8EA7F
+C01114809310>I<1220123C123FEA7F80A2EAFF00A2127E121E1202090A808809>I<EA20
+08EA3C0F003F13C0387F9FE0A238FF3FC0A2387E1F80EA1E07EA0200130A7F8815>I<13
+06131F137FEA01FEEA0FFCEA3FF0EA7FC0EAFF0012F81260100A808910>I<133FEB7F80
+EBFFC0A213F3A213FFEB7F80A2EB3F00133E137F485AEA03F6EA0FE0EA3FC048C7FC12FE
+12F812601214809310>I<EA03E0EA0FF0121FEA3FE0EA7E0012F85AA2130EEAF83FEA7F
+FFEA3FFEEA1FF8EA3FE0EA7F80EAFE0012F812601012809110>I<1218123E123FEA7FC0
+13F8EA7BFF00F913FE38F07FFF130F386001FE180A808918>I<EA2008EA3C0F003F13C0
+387F9FE0A238FF3FC0A2387E1F80EA1E07EA0200130A7F8815>16
+D<5A13E013F8487EA2485AA26C5A12001310EA2008EA3C0F003F13C0387F9FE0A238FF3F
+C0A2387E1F80EA1E07EA020013147F9215>I<EA2008EA3C0F003F13C0387F9FE0A238FF
+3FC0A2387E1F80EA1E07EA02006C130013E013F8487EA2485AA26C5A1200131013147F88
+15>I<1220123CEA7F80A3EAFF00A2127E120E1202090A808809>46
+D<122012601270A212F8A312FCA312FEA512FCA31278A7127CA3123CA6123EA3121EA612
+1FA3120FA7120EA3120CA3083B7BBA0D>64 D<1230A31270A312F0A37EA21278AA127CA2
+123CAB123EA2121EA4121FA41380120F13C013E013F0EA07FF13FE1203A2EA01FC120013
+3C10387DB711>I<6019C0F003E0A2001018F01807003018F8A218011270180019F000F0
+18707E19607E19E06CEF01C0007F17076D161F01E0EE7F80D83FFCED03FFD9FFF091B512
+006C90B75A6C5F6C5F000117E06C6C1680010F03FCC7FC010015803D1E809742>72
+D<1680A2ED01C0A2150316E01507A21503A2ED01F0A41500A716E01501A2150316C01507
+ED0F80151FED7F00EC01FE1407EC3FFC903803FFF8017F5BB65A6C1480000191C7FC3800
+03FC2427858E20>80 D<143CEC3F80A2147FA292C7FCA2140F91C8FCA91680A2ED01C0A2
+150316E01507A21503A2ED01F0A41500A716E01501A2150316C01507ED0F80151FED7F00
+EC01FE1407EC3FFC903803FFF8017F5BB65A6C1480000191C7FC380003FC2438859F20>
+82 D<13201338133C137F8080497E80EB3FF86D7EEB07FE13036D7E7FEC7F80143F141F
+A2140F150080A21406140E147E383FFFFCA2485BA25CB55A91C7FC19207D9F1D>88
+D<EA03F0EA0FFC48B4FC5A13F01380003EC7FC1278A2127C127EEA7FC0EBFF807EA26C13
+005A485AA213F8EAFF8000FCC7FC12C011177E9615>90 D<903807FFFC017FEBFFFE90B7
+12FCA3485EA2EBF801D900075CC7001F01FCC7FC4A1380DAFFF8C8FC4913C04990C9FCEB
+07FCEB0FF0EB1FC0495A49CAFC137C5B485A5B485A5B48CBFCA2120E120CA25AA2121000
+30EB078015F0A20070130FA25DA200F0130191CAFCA37EA37EA2127EA2127F7F6C7E7F6C
+7EEA0FFC7F6C6C7E6C13E06C13FC6CD9FFC014FE013F90B612FC6D16E00107EDFE000101
+15F06D6C1480020701F8C7FC9138003FC03745809830>96 D<EB1FFC49B47E15F015FC49
+13FF16E016F8D9601F13FFD9000114F06E6C13FF150F1503033F13FE4AB5FC141F0103B6
+12FC90B71200003F15E003FCC7FC15C04801FCC8FC14C001FCC9FCEAFF80CBFCAC151EED
+1FC0824B5AA25EA21507302C829730>99 D<903807FFFC017FEBFFFE90B712FCA3485EA2
+EBF801D900075CC7001F01FCC7FC4A1380DAFFF8C8FC4913C04990C9FCEB07FCEB0FF0EB
+1FC0495A49CAFC137C5B485A5B485A5B48CBFCA2120E120CA25AA212101230A31270A412
+F0A47EA37EA2127EA2127F7F6C7E7F6C7EEA0FFC7F6C6C7E6C13E06C13FC6CD9FFC014FE
+013F90B612FC6D16E00107EDFE00010115F06D6C1480020701F8C7FC9138003FC0374580
+9830>104 D<EB078014F0A2130FA2495A130FEB01C090CBFCAC903807FFFC017FEBFFFE
+90B712FCA3485EA2EBF801D900075CC7001F01FCC7FC4A1380DAFFF8C8FC4913C04990C9
+FCEB07FCEB0FF0EB1FC0495A49CAFC137C5B485A5B485A5B48CBFCA2120E120CA25AA212
+101230A31270A412F0A47EA37EA2127EA2127F7F6C7E7F6C7EEA0FFC7F6C6C7E6C13E06C
+13FC6CD9FFC014FE013F90B612FC6D16E00107EDFE00010115F06D6C1480020701F8C7FC
+9138003FC0375980AC30>112 D<903807FFFC017FEBFFFE90B712FCA3485EA2EBF801D9
+00075CC7001F01FCC7FC4A1380DAFFF8C8FC4913C04990C9FCEB07FCEB0FF0EB1FC0495A
+49CAFC137C5B485A5B485A5B48CBFCA2120E120CECF03C489038FE3F80A2D81001137F12
+3002FC90C8FCA23970003C0F91CAFCA2EC078000F014F0A2140FA26C5CA214016C90CAFC
+A2127EA2127F7F6C7E7F6C7EEA0FFC7F6C6C7E6C13E06C13FC6CD9FFC014FE013F90B612
+FC6D16E00107EDFE00010115F06D6C1480020701F8C7FC9138003FC03745809830>120
+D<1AE019C0F180F09438C00181A2160195380383E09438E007C10403EB0FE195383FFFC0
+DC07E1B5FC94B61280A218FB7001F113000018EFE07E700180C7FC00106F48C8FC003016
+F0A31270A25FA212F0A25F7EA25F6C15017E007E4BC9FC007F5D6D5C6C6C141E6D147ED8
+1FF8495A01FEEB07F8390FFFC03F6C90B55A6C5D6C5D6C6C5C011F49CAFC010713F80100
+13C04430809142>128 D<F0078019F0A2180FA261A2180195C8FCA2F0F03C9538FE3F80
+A20501137FA206FC1300A29438003C0F95C8FCAB1AE019C0F180F09438C00181A2160195
+380383E09438E007C10403EB0FE195383FFFC0DC07E1B5FC94B61280A218FB7001F11300
+0018EFE07E700180C7FC00106F48C8FC003016F0A31270A25FA212F0A25F7EA25F6C1501
+7E007E4BC9FC007F5D6D5C6C6C141E6D147ED81FF8495A01FEEB07F8390FFFC03F6C90B5
+5A6C5D6C5D6C6C5C011F49CAFC010713F8010013C0444D80AE42>136
+D<1A7F963803FFC0070F13E0073F13F04F13F84EB512FC604EEB07F895380FF801041890
+381FE000DE3F8013F095387F0007043C01FC133F943A01F801FFE093397E03F00F93267F
+07E1B512C005CFB6128094B6EAFE007015F81AC04FC7FC001818E07049C8FC001017C000
+30031ECAFCA31270A2161CA212F0A216187EA26C151016306C1570007F5D6D130101E0EB
+07C06C6C133F9039FF01FF806C90B5FC6C92CBFC6C5C6C5CC614F0013F13C0D907FECCFC
+4E3380974E>144 D<18041807F00FE08561181FA2611803F0004096C8FCA41A7F963803
+FFC0070F13E0073F13F04F13F84EB512FC604EEB07F895380FF801041890381FE000DE3F
+8013F095387F0007043C01FC133F943A01F801FFE093397E03F00F93267F07E1B512C005
+CFB6128094B6EAFE007015F81AC04FC7FC001818E07049C8FC001017C00030031ECAFCA3
+1270A2161CA212F0A216187EA26C151016306C1570007F5D6D130101E0EB07C06C6C133F
+9039FF01FF806C90B5FC6C92CBFC6C5C6C5CC614F0013F13C0D907FECCFC4E4180A54E>
+152 D<147E49B47E5B4990CBFCA25B5C140E011CCCFC1318A21338A2133C137C137E137F
+14C091B812F86D17FE856D18806D18C07F010018E091CA123F190F1907F103C0A219011A
+801903190FBB12007E001F607E000360C66C5F010F17E0432983A842>156
+D<14081418141C143CA2143E147EA280A381A492C9FCA280141EA3141FA480A481A2EF7F
+800207903801FFE0040713F0041F13F8047F13FC93B512FE15C103C7EB83FC9238CFFC00
+912603DFF0137CDBFFC0137893380003F84B131F4BEBFFF0EDF0074A48B512E092B612C0
+B91200003F16FC6C16E0000793C7FC000115F06C6C91C8FC010713C0373782B634>160
+D<14081418141C143CA2143E147EA280A381A492C9FCA280021E1338167F83021F49C7FC
+A25EA26E131E93C8FCA381A2EF7F800207903801FFE0040713F0041F13F8047F13FC93B5
+12FE15C103C7EB83FC9238CFFC00912603DFF0137CDBFFC0137893380003F84B131F4BEB
+FFF0EDF0074A48B512E092B612C0B91200003F16FC6C16E0000793C7FC000115F06C6C91
+C8FC010713C0373782B634>164 D<EB01FCEB07FF011F13C0497F497FD9FFE0C9FC49CA
+FC13F85B485AA37F16C06DEB03806D130F6CB4133FDAC07FC8FC6DB5FC5D7F6D13F86D13
+E0010313806D90C9FCEB03FC495AEB0FE0495A495A013ECAFC5B5B485A5B485A5B48CBFC
+A2120E120CA25AA212101230A31270A412F0A47EA37EA2127EA2127F7F6C7E7F6C7EEA0F
+FC7F6C6C7E6C13E06C13FC6CD9FFC014FE013F90B612FC6D16E00107EDFE00010115F06D
+6C1480020701F8C7FC9138003FC0375180A42C>168 D<19FC4EB4FC4E13C01AF0A2601A
+F8F00F0FF103FC1981F01FC3000818FF121884001019BC0030711338F003FE0070EF00F8
+F10030A31A601AE0190100F0F003C0190FF11F806C187F953801FF006CEF0FFE6CEF7FFC
+6C6C92380FFFF801E00203B55A6CB4010FB612C091B8C7FC6C17FC6C17E06C94C8FC0003
+16F0C66C4AC9FC010F49CAFC462980A646>172 D<1B70F201F0F207E01A1FF2FFC01903
+190F073F13809638FFFC00060313F0060F13C04E90C7FCF07FFC943801FFE04D13804D48
+C8FCEF0FF8EF1FE0604DC9FC173E177817705F5FA21601A31603A383A4707EA483001015
+001230A2830070167CA2177E12F8173E7E6C163C6C161CEA7FC001F015F86CB46C133F91
+B65A7E7E6C5E00015ED8003F4ACAFC010714E04C3F80BB42>184
+D<F207801A1F1A7F963801FF00F107FCF11FF0F17FC0953901FF0070953907FC01F09539
+1FF007E095387FC01F943A01FF00FFC0943807FC0394380FF00FDEC03F1380953900FFFC
+00DD040313F0DD000F13C04E90C7FCF07FFC943801FFE04D13804D48C8FCEF0FF8EF1FE0
+604DC9FC173E177817705F5FA21601A31603A383A4707EA483001015001230A283007016
+7CA2177E12F8173E7E6C163C6C161CEA7FC001F015F86CB46C133F91B65A7E7E6C5E0001
+5ED8003F4ACAFC010714E04C4680C242>192 D<173017F81603EE0FF0EE3FE0EEFF8092
+3803FE0092380FF80392383FE00F9238FF803F913903FE01FE91380FF80791383FE01F91
+39FF807FFC903A03FE01FFF890260FF80713E090263FE01F1380903A7F807FFE009039FE
+01FFF8D9780713C0D9201F90C7FC9038007FFC903801FFF04913C0010F90C8FCEB1FFCEB
+3FF0EB7FC091C9FC13FC5B13E012017F7F487E7F6C7E14C06C7F6D7E6D7E6D7E130F6D7E
+13011300147E143E143C141CA21418A214385C14F01303EB1FE0EA01FF003F5B5C91C9FC
+485A13F813E000FECAFC304382C224>195 D<150215061507A25D1680A216C0A316E0A5
+16C0A3ED0780A716C0A31503A616E0A31501A2120312021206A24815F0A2121C00181400
+A25AA31270A412F016E07EA216C07EA2007EEC0180007F14036D13076C6CEB1F0001F013
+7F391FFE03FE90B5FC6C5C6C5C6C5CC65C013F1380D907FCC7FC244B80B624>200
+D<EC0780EC0FC015E0141F15F0A2143FEC33F81471A2ECF8FC1301903803FC7C1307EB1F
+FE90387F7F3CD803FF13B8D83FFE13F8EBFC3F01F813F0387FF01FEBC00F90380007E000
+FC13011E18829715>212 D<168016C016E0150116F0A2ED03F8A2ED01FCA2150016FE16
+7E1218163E12100030153F161FA21270A2160FA212F0160E7EA2160C7EA26C1518007F15
+386D14786D14F0D83FF0130301FCEB1FE0391FFF80FF6C90B512C06C15806C15006C5C6C
+6C13F8011F13E0010390C7FC282C809B28>224 D<136013F0EA01FC487E7F48138014C0
+120EEB3FE0EA0C1F38180FF01307EA300314F8130112701300A2147800F013707EA26C13
+606C13E0EAFF83EBFFC07E14807E6C13006C5AEA01F81520809F15>232
+D<14C014F0EB01FC80804913C0816D7F497F497F497F8116804914C0EB1E1F9039180FBF
+E090393C079FF0EC038F90397E0707F890387F1F0302FE13FC1501013F13009138FFE0F8
+48B5EAFE78003FECFFF816F0A2387FFE3FD9F80713E0EBC00000FEC7EA0FC02620829F24
+>235 D<EB0FC0EB1FF090383FF9C0017F7FECFDF014FF90B57E01F07F9038C07FFE3801
+E039813803F0709039F9F07F809038FFE03FED1FC06C13F0ECFE0F48EBFFE7003FECFF80
+A21600EA7FE1EBC03F90380007FE00F813002219829815>I<EC07E0EC0FF84A7E81815C
+16801470EC783FED1FC0ECFC0F02FE13E0ECFFC715FF80A26E13F0801407140191C7FCA6
+16E0A2150116C01503A2ED0780150FED1F00157EEC01FEEC07FCEC1FF849B45A013F5BB6
+5A6C5C000149C7FC380003F8242D819424>240 D<EC07E0EC0FF84A7E81815C821470EC
+783F6F7EECFC0F14FE9138FF87E015F76EB512E017C08080020714801401EC003F923800
+F000A55EA215015E1503A24B5A150F4BC7FC157EEC01FEEC07FCEC1FF849B45A013F5BB6
+5A6C5C000149C8FC380003F82B2D819428>I<1840187018FE84601701A260EF003C1804
+95C8FCA519FC4EB4FC4E13C01AF0A2601AF8F00F0FF103FC1981F01FC3000818FF121884
+001019BC0030711338F003FE0070EF00F8F10030A31A601AE0190100F0F003C0190FF11F
+806C187F953801FF006CEF0FFE6CEF7FFC6C6C92380FFFF801E00203B55A6CB4010FB612
+C091B8C7FC6C17FC6C17E06C94C8FC000316F0C66C4AC9FC010F49CAFC463880B546>I<
+ED701C9238FE3F8003FF13C0913901FE7F80A203FC1300A29138003C0F92C8FCAA163FEE
+7FC0EEFFF017FCA25D17FEED03C3EEC0FFEEE07F923807F0FF000892B5FC121881001016
+EF00306E13CE6F138E0070ED3E0E1600170CA31708171812F01730177017F06CED01E016
+036CED0FC06CED1F806C157FD87FC0903801FF0001F0EB0FFED83FFEEBFFFC90B65A6C5D
+6C15C06C92C7FC000114FC6C6C13F0010F90C8FC303D80B030>244
+D<18FCEF03FE170F173FEF7FFC17FF4C13F8933803FE18EE07F8EFE000EE0F8094C7FC16
+1E161C5E1630A25EA21208001815E082001015FF00304A13F817FF007017C018E081163F
+040713C0EE001F170300F0EE0180170317076CEE0F00173F6C167EEE01FE6CED07FC6C4B
+5A6C6CEC3FF001E049B45AD83FF8010F138001FF90B5C7FC6C90B512FC6C5D6C15E06C15
+80C64AC8FC013F13F0010713803734819D34>248 D<EE03FEEE3FFC16FF5D00084A13F8
+1218A2923807FC004815800306C7FC150F007015E0ED1FFEEEFFC017F017F88100F01403
+9238007FF016076C150017E016036CED07C06C151F6C157FD87FC0903803FF8001F0011F
+13003A3FFE01FFFE90B612F86C5D6C15C06C92C7FC000114FC6C6C13E0010F90C8FC2F24
+81862C>I<14F0EB07E0131F137F495A12035A4848C9FCEA1FF813C048CAFC123E003FB8
+FC5A17FEA2B8FC17FC7E30137D8615>255 D E /Fe 37 127 df<1207EA0F80EA1FC0A2
+EA0FE012071201A5120313C012071380120FEA1F00127E5A5A12700B1574AB25>39
+D<120FEA1F80EA3FC013E0A3121F120F1201120313C012071380121FEA7F0012FE5A1270
+0B12748725>44 D<123C127E12FFA4127E123C0808728725>46 D<123C127E12FFA4127E
+123C1200AF123C127E12FFA4127E123C081F729E25>58 D<EB07E0A2497EA3EB0E70EB1E
+78A4EB3E7CA3EB3C3CA2EB7C3EA4497EA53901F00F80A448B512C0A43907E007E0EBC003
+A4390F8001F0A3397FF00FFE39FFF81FFFA2397FF00FFE202C7EAB25>65
+D<007FB512FCB612FEA27E3907C0003EA5151C1500A5141C143EA3EBFFFEA4EBC03EA314
+1C91C7FCA5150E151FA7007FB6FCB7FCA26C14FE202C7EAB25>69
+D<007FB5FCB61280A26C1400D8003EC7FCB3B2007FB5FCB61280A26C1400192C7AAB25>
+73 D<3801FFF8000F13FF4814804814C0EB801F397E0007E0A2007C1303A348EB01F0B3
+A56C1303007C14E0A3007E1307007F130F393FC03FC090B5FC6C14806C1400000113F81C
+2C7CAB25>79 D<3A7FFC03FFE0486C4813F0A26C486C13E03A07C0003E00B3AB6D137E00
+03147CA26C6C5BEBF8016C6C485A90387F0FE06DB45A6D5B6D90C7FCEB03FC242C80AB25
+>85 D<133013FCEA03FF000F13C0003F13F0387FCFF838FF03FCEAFE0138F8007C007013
+38160A79AB25>94 D<EA01C0EA03E01207EA0FC0EA1F00123E123C127C127812F85AA512
+FC7E127FA2123E121C0B1573B025>96 D<3803FF80000F13E04813F8487FEB01FEEB007F
+001E131F000C1480C7120FA3EB01FF133F48B5FC120748138F381FE00FEA3F80EA7E005A
+5AA46C131F007E133F383F81FF6CB512FE6CEBF7FF6C13E30001EB01FE201F7C9E25>I<
+EA7FC0487EA2127F1203A9EBE1FE9038E7FF8001EF7F90B57EEC07F09038FC01F89038F8
+007C497FA2497FA21680150FA7151F16007F153E6D137E5D6D485A9038FF07F0ECFFE001
+EF5B01E790C7FC3801C1FC212C7FAB25>I<EB1FFCEB7FFF48B512804814C03807F00FEA
+0FC0391F800780393F000300003E90C7FC5AA212FC5AA77E127CA26CEB01C0003FEB03E0
+EA1F80380FC0073907F03FC06CB512806C14006C6C5AEB1FF01B1F7B9E25>I<EC7FC04A
+7EA2147F1403A9EB1FC3EB7FF33801FFFB4813FF3807F07F380FC01F381F800F383F0007
+123E481303A212FC5AA77E007C1307A27E140F6C131FEA0FC03807F07F6CB6FC6C01FB13
+806C13F3D93FC11300212C7EAB25>I<EB1FE0EBFFF84813FE487F3907F07F80380FC00F
+391F0007C04814E0003E13035A15F000FC13015AB6FCA315E000F8C8FCA27E127C127E00
+3E14E0003FEB01F0EA1F80380FC0073907F81FE06CB512C06C148039007FFE00EB1FF81C
+1F7C9E25>I<EC3FC0ECFFE0010313F04913F8EB0FE1148190381F80F091C7FCA6007FB5
+12C0B612E0A26C14C0D8001FC7FCB3A5001FB5FC481480A26C14001D2C7EAB25>I<9038
+3FC0FE9038FFF3FF4890B512805AD807F0138F3A0FC03F0700391F801F80EB000F488000
+3E1307A5003F130F6C5CEB801F6C6C48C7FCEBF0FEEBFFFC485B001E5BEB3FC090C9FCA2
+121F7EEBFFFE6CEBFFC04814F04880393F0003FC007CEB007E0078141E00F8141F4880A4
+6C5C0078141E007E147E6C6C485A391FF00FF86CB55A000314C0C691C7FCEB1FF821307E
+9E25>I<EA7FC0487EA2127F1203A914FEEBE3FF01EF7F90B57EEC87E0EBFE039038F801
+F0A213F0A213E0B13A7FFF0FFF80B5009F13C0A26C010F1380222C7FAB25>I<130C131E
+133FA2131E130C90C8FCA8EA3FFE487EA27EEA001FB3A5007FB51280B612C0A26C14801A
+2D7AAC25>I<1430147814FCA2147814301400A83801FFF84813FCA27EC7127CB3B014F8
+1230EA780100FC13F0EB07E0B512C06C13806C1300EA0FFC163D7DAC25>I<EA7F80487E
+A2127F1203A9EC3FFF4A1380A26E1300EC03E04A5A4A5A4AC7FC143E14FCEBC1F8EBC3F0
+EBC7E013CFEBDFF013FE497EEBF87C497EEBE01EEBC01F6E7E6E7E1403816E7E6E7E3A7F
+FE07FF80B54813C0A26C486C1380222C7FAB25>I<EA7FFEB5FCA27EEA001FB3B2007FB5
+12C0B612E0A26C14C01B2C7BAB25>I<397E1F80FC39FF3FC1FE90387FE3FF267FFFF713
+80390FF0FF8749EB07C09038C07E03EB807CA3EB0078B13A7FE1FF0FF8D8FFF3EB9FFCA2
+D87FE1EB0FF8261F819E25>I<387FC0FE38FFE3FF01EF7F6CB57E0003EB87E0EBFE0390
+38F801F0A213F0A213E0B13A7FFF0FFF80B5009F13C0A26C010F1380221F7F9E25>I<EB
+3FC0EBFFF0000313FC487F380FE07F391F801F80EB000F003EEB07C0A248EB03E0A248EB
+01F0A86C1303007C14E0A26CEB07C0003F130F391F801F80EBC03F390FE07F003807FFFE
+6C5BC613F0EB3FC01C1F7C9E25>I<387FC1FE39FFE7FF8001EF7F6CB57E0003EB07F090
+38FC01F89038F8007C497FA2497FA21680150FA7151F16007F153E6D137E5D6D485A9038
+FF07F0ECFFE001EF5B01E790C7FCEBE1FC01E0C8FCACEA7FFFB57EA26C90C8FC212F7F9E
+25>I<90381FC0E09038FFF1F04813FD4813FF3807F07F380FC01F381F000F481307003E
+13035AA200FC13015AA77E007C1303A2007E1307123E6C130F380FC01FEBF07F3807FFFD
+000113F96C13F1EB3FC1EB0001AC91383FFF804A13C0A26E1380222F7D9E25>I<397FF0
+07F839FFF83FFCEC7FFE007F90B5FC3900F9FC3FEBFBE09038FFC01EEC800C91C7FC5BA2
+5BA35BAD387FFFFCB57EA26C5B201F7E9E25>I<3801FFC6000713FF121F5A48C6FC007C
+133F00F07FA3140E00FC90C7FCEA7F80EA3FFC381FFFE06C13F800037F38001FFEEB00FF
+EC1F800070EB07C000F81303A27EA26C13076CEB0F809038C07F00EBFFFE5C00F35B3860
+7FC01A1F7B9E25>I<137013F8A8007FB512C0B612E0A26C14C0D800F8C7FCAF157015F8
+A5EBFC0190387E07F090383FFFE06D13C06D1380903803FE001D287EA725>I<397FC03F
+E0486C487EA2007F133F00031301B31403A2EBF0073801F81F90B612806C15C0EB7FFDD9
+1FF01380221F7F9E25>I<3A7FF807FF80486C4813C0A26C486C1380000FC7EA3C00A66C
+6C5BA2EB81E0EB83F0A33903C7F8F01438A3EBCF3CA200015CEBCE1CEBEE1DA2EBFE1F6C
+486C5AA39038780780221F7F9E25>119 D<397FF00FFE39FFF81FFFA2397FF00FFE3907
+8001F015E013C01203EC03C013E01201EC0780EA00F0A29038F80F001378A2EB7C1E133C
+A26D5AA3EB0F38147813075CA213035CA35CA213075CA2130F91C7FC123CEA7E1E133E5B
+EA7FF8123FEA1FE0EA0F80202F7E9E25>121 D<003FB512F84814FCA3397C0001F8EC03
+F0EC07E0EC0FC00038EB1F80C7EA3F00147E5C495A495A495A495A495A49C7FC137E5B48
+5A485A4848131C4848133E485A48C7FC127EB612FEA36C14FC1F1F7E9E25>I<127012F8
+B3B3B21270053870B125>124 D<3803E006380FF00F381FF83F383FFE7E387E7FFC38FC
+1FF838F00FF0386007C018087AAB25>126 D E /Ff 3 213 df<1340EA01E01207EA1F80
+EA7E0012F8EAE0C0EA01E0EA07C0EA1F00127E12F812600B0D808C0B>19
+D<EA0780EA1FC0EA3FE0EA3E00127812701278127CEA7F9813F0123FA2EA7FE013C0EA7C
+0012E00D107F8F0F>90 D<EB0180EB03C014E0130714F0130D130CEB1E78133E13FF0007
+13B8387FEFF013CF138738FE03E0EAF8001510818F0F>212 D E
+/Fg 1 35 df<133F3801FFC0380381E0380400404813005AA31360EA0B98EA0FF80010C7
+FC5A5AA35A6C1380124038600100EA300EEA1FFCEA07E013177F9517>34
+D E /Fh 1 66 df<13101338A3135CA3138EA3EA0107A238020380A33807FFC0EA0401A2
+380800E0A2001813F0123838FE03FE17177F961A>65 D E /Fi 12
+125 df<1218123C123E121E120EA5121CA2123812F812F01260070F779D1A>39
+D<38FE03FE12FFA2381D8070A213C0121CA213E0A213601370A213301338A21318131CA2
+130C130EA21306A213071303A238FF81F0A21380171E7F9D1A>78
+D<126012F0A27E1278127C123C123E121EA2121F7E7F12077F1203A27F12017F12007F13
+78A2137C133C133E131E131F7FA21480130714C0130314E01301A2EB00C013277DA21A>
+92 D<EB0FC0131F130F1301A6EA01F1EA07FDEA0FFFEA1E0FEA3C07EA7803EA700112E0
+A7EA7003A2EA3807EA3E0F381FFFF83807FDFC3801F1F8161E7E9D1A>100
+D<EA01F8EA07FF481380381E07C0EA3C01387800E01270481370A2B512F0A300E0C7FC12
+70A2007813707E381F01F0380FFFE0000313803800FE0014157D941A>I<127E12FE127E
+120EA6133EEBFF80000F13C013C1EB80E01300120EAC387FC3FC38FFE7FE387FC3FC171E
+7F9D1A>104 D<13C0487EA26C5A90C7FCA6EA7FE0A31200AF387FFF80B512C06C138012
+1F7C9E1A>I<387CE0E038FFFBF8EA7FFF381F1F1CEA1E1EA2EA1C1CAC387F1F1F39FFBF
+BF80397F1F1F00191580941A>109 D<EA7E3E38FEFF80007F13C0EA0FC1EB80E0130012
+0EAC387FC3FC38FFE7FE387FC3FC17157F941A>I<3807FB80EA1FFF127FEA7807EAE003
+A30078C7FCEA7FC0EA1FFCEA07FE38003F801307386001C012E0A2EAF00338FC0780B512
+00EAEFFEEAE3F812157C941A>115 D<487E1203A6387FFFE0B5FCA238038000AA1470A4
+3801C1E013FF6C1380EB3F00141C7F9B1A>I<126012F0B3B31260042775A21A>124
+D E /Fj 51 122 df<90381FC1F090387037189038C03E3C3801807C0003137839070038
+00A9B612C03907003800B2143C397FE1FFC01E2380A21C>11 D<EB1FC0EB7020EBC01038
+01803800031378EA0700143091C7FCA7B512F8380700781438B2397FE1FF80192380A21B
+>I<EA7038EAF87CEAFC7EA2EA743AEA0402A4EA0804A2EA1008A2EA2010EA40200F0F7E
+A218>34 D<127012F812FCA212741204A41208A21210A212201240060F7C840E>44
+D<EAFFF8A20D02808B10>I<127012F8A3127005057C840E>I<EA01F0EA071CEA0C06487E
+00381380A2387001C0A400F013E0AE007013C0A3EA780300381380A2381C0700EA0C06EA
+071CEA01F013227EA018>48 D<13801203120F12F31203B3A9EA07C0EAFFFE0F217CA018
+>I<EA03F0EA0C1CEA100700201380384003C0A2008013E012F0EAF801A3EA2003120014
+C0A2EB07801400130E5B13185B5B5B485A90C7FC000213205A5A00181360481340383FFF
+C05AB5FC13217EA018>I<EA03F8EA0C1EEA100F38200780004013C01278130313071238
+00001380A214005B130C1338EA03F0EA001C130FEB0780A2EB03C0A214E01220127012F8
+A200F013C01240EB0780122038100F00EA0C1CEA03F013227EA018>I<1303A25BA25B13
+17A21327136713471387120113071202120612041208A212101220A2124012C0B512F838
+000700A7EB0F80EB7FF015217FA018>I<00101380381E0700EA1FFF5B13F8EA17E00010
+C7FCA6EA11F8EA120CEA1C07381803801210380001C0A214E0A4127012F0A200E013C012
+80EA4003148038200700EA1006EA0C1CEA03F013227EA018>I<137EEA01C13803008038
+0601C0EA0C03121C381801800038C7FCA212781270A2EAF0F8EAF30CEAF4067F00F81380
+EB01C012F014E0A51270A3003813C0A238180380001C1300EA0C06EA070CEA01F013227E
+A018>I<127012F8A312701200AB127012F8A3127005157C940E>58
+D<497EA3497EA3EB05E0A2EB09F01308A2EB1078A3497EA3497EA2EBC01F497EA248B512
+80EB0007A20002EB03C0A348EB01E0A348EB00F0121C003EEB01F839FF800FFF20237EA2
+25>65 D<B612C0380F80070007130114001540A215601520A314201500A3146014E013FF
+138014601420A315081400A21510A31530A2157015E0000F1303B6FC1D227EA121>69
+D<B612C0380F80070007130114001540A215601520A314201500A3146014E013FF138014
+601420A491C7FCA9487EEAFFFE1B227EA120>I<EAFFFCEA0FC0EA0780B3ACEA0FC0EAFF
+FC0E227EA112>73 D<EAFFFCEA1F806CC7FCB3A21401A41403A214021406A2141E48137E
+B512FE18227DA11E>76 D<B512F0380F803C0007130FEC078015C0140315E0A615C01407
+1580EC0F00143CEBFFF00180C7FCAE487EEAFFFC1B227EA121>80
+D<3803F020380C0C60EA1802383001E0EA70000060136012E0A21420A36C1300A2127812
+7FEA3FF0EA1FFE6C7E0003138038003FC0EB07E01301EB00F0A214707EA46C1360A26C13
+C07E38C8018038C60700EA81FC14247DA21B>83 D<007FB512F839780780780060141800
+401408A300C0140C00801404A400001400B3A3497E3801FFFE1E227EA123>I<39FFFC07
+FF390FC000F86C4813701520B3A5000314407FA2000114806C7E9038600100EB3006EB1C
+08EB03F020237EA125>I<3BFFF03FFC03FE3B1F8007E000F86C486C48137017206E7ED8
+07801540A24A7E2603C0021480A39039E004780100011600A2EC083CD800F01402A2EC10
+1E01785CA2EC200F013C5CA20260138890391E400790A216D090391F8003F0010F5CA2EC
+00016D5CA20106130001025C2F237FA132>87 D<397FF803FF390FE001F83907C000E06C
+6C5B00015CEBF001D800F890C7FCEB7802EB7C04133EEB1E08EB1F10EB0FB0EB07A014C0
+6D7E130180497EEB0278EB047CEB0C3EEB081EEB101F496C7E140701407F496C7E1401D8
+01007F486D7E5AD81F807F3AFFC003FFC022227FA125>I<EA0804EA1008EA2010A2EA40
+20A2EA8040A4EAB85CEAFC7EA2EA7C3EEA381C0F0F7AA218>92 D<EA1FE0EA3038EA780C
+130EEA30071200A313FFEA07C7EA1E07123C1278127000F01308A3130FEA7817383C2390
+380FC1E015157E9418>97 D<120E12FE121E120EAB131FEB61C0EB8060380F0030000E13
+38143C141C141EA7141C143C1438000F1370380C8060EB41C038083F0017237FA21B>I<
+EA01FEEA0703380C0780121C383803000078C7FC127012F0A712700078134012386C1380
+380C0100EA0706EA01F812157E9416>I<14E0130F13011300ABEA01F8EA0704EA0C02EA
+1C01EA38001278127012F0A7127012781238EA1801EA0C0238070CF03801F0FE17237EA2
+1B>I<EA01FCEA0707380C0380381C01C01238007813E0EA700012F0B5FC00F0C7FCA512
+700078132012386C13406C138038070300EA00FC13157F9416>I<133E13E33801C780EA
+0387130748C7FCA9EAFFF80007C7FCB27FEA7FF0112380A20F>I<14703803F198380E1E
+18EA1C0E38380700A200781380A400381300A2EA1C0EEA1E1CEA33F00020C7FCA2123012
+38EA3FFE381FFFC06C13E0383000F0481330481318A400601330A2003813E0380E038038
+03FE0015217F9518>I<120E12FE121E120EABEB1F80EB60C0EB80E0380F0070A2120EAF
+38FFE7FF18237FA21B>I<121C123EA3121CC7FCA8120E127E121E120EB1EAFFC00A227F
+A10E>I<13E0EA01F0A3EA00E01300A81370EA07F012001370B3A51260EAF0E013C0EA61
+80EA3F000C2C83A10F>I<120E12FE121E120EABEB03FCEB01F014C01480EB02005B5B5B
+133813F8EA0F1CEA0E1E130E7F1480EB03C0130114E0EB00F014F838FFE3FE17237FA21A
+>I<120E12FE121E120EB3ADEAFFE00B237FA20E>I<390E1FC07F3AFE60E183803A1E8072
+01C03A0F003C00E0A2000E1338AF3AFFE3FF8FFE27157F942A>I<380E1F8038FE60C038
+1E80E0380F0070A2120EAF38FFE7FF18157F941B>I<EA01FCEA0707380C0180381800C0
+003813E0481370A200F01378A700701370007813F0003813E0381C01C0380E0380380707
+00EA01FC15157F9418>I<EA0E1F38FE61C0380E8060380F0070000E1338143CA2141EA7
+143CA21438000F1370380E80E0EB41C0EB3F0090C7FCA9EAFFE0171F7F941B>I<3801F8
+2038070460EA0E02EA1C01003813E0EA7800A25AA71278A2EA3801121CEA0C02EA070CEA
+01F0C7FCA9EB0FFE171F7E941A>I<EA0E3CEAFE46EA1E8FEA0F0F13061300120EAD120F
+EAFFF010157F9413>I<EA0F88EA3078EA601812C01308A212E0EAF000127FEA3FE0EA0F
+F0EA01F8EA003CEA801C130CA212C01308EAE018EAD030EA8FC00E157E9413>I<1202A4
+1206A3120E121E123EEAFFFCEA0E00AB1304A6EA07081203EA01F00E1F7F9E13>I<000E
+137038FE07F0EA1E00000E1370AD14F0A238060170380382783800FC7F18157F941B>I<
+38FF80FE381E00781430000E1320A26C1340A2EB80C000031380A23801C100A2EA00E2A3
+1374A21338A3131017157F941A>I<39FF8FF87F393E01E03C001CEBC01814E0000E1410
+EB0260147000071420EB04301438D803841340EB8818141CD801C81380EBD00C140E3900
+F00F00497EA2EB6006EB400220157F9423>I<38FF83FE381F00F0000E13C06C1380EB81
+00EA0383EA01C2EA00E41378A21338133C134E138FEA0187EB0380380201C0000413E0EA
+0C00383E01F038FF03FE17157F941A>I<38FF80FE381E00781430000E1320A26C1340A2
+EB80C000031380A23801C100A2EA00E2A31374A21338A31310A25BA35B12F05B12F10043
+C7FC123C171F7F941A>I E /Fk 47 127 df<121C123E123F1380121F1203A4EA0700A2
+5A121E5A12F85A1260091175A41F>39 D<121C123F5A1380A2123F121F1203EA0700A212
+0E121E12FC5A1260090F75861F>44 D<1238127C12FEA3127C1238070774861F>46
+D<137E3801FF804813C03807C3E0380F00F04813F8001E137848133CA248131EA3007013
+0E00F0130FAB0078131EA3007C133E003C133CA26C1378001F13F8380F81F03807C3E038
+03FFC06C138038007E0018257DA41F>48 D<1370A213F0A2120112031207127F12FE12F8
+1200B3A6387FFFE0B512F06C13E014257AA41F>I<13FE3803FFC0000F13F0381F01F838
+3E007C48133C0078131E5A140F7EA21270C7FCA2141EA3143C147814F8EB01F0EB03E0EB
+07C0EB0F80EB1F00133E5B5B485AEA03C0485A380F000F121E5A007FB5FCB6FC7E18257D
+A41F>I<48B4FC000713C0001F13F0383F01F8383C007C007C133C141EA21238C7FCA214
+3CA2147814F8EB03F03801FFC0A214F0380001F8EB007C143C141EA2140FA2127012F8A2
+141E5A0078133C007C137C383F01F8381FFFF0000713C03800FE0018257DA41F>I<EB03
+F0A21307130EA2131C133C13381378137013F0EA01E013C01203EA0780A2EA0F00121EA2
+5AA25A5AB612C0A3C7EAF000A890381FFF804913C06D13801A257EA41F>I<381FFFFC5A
+A2003CC7FCAB13FF003F13C014F0EB00F8003C137C0018133CC7121EA2140FA3122012F8
+A2140E48131E0078133E143C6C13F8383F03F0380FFFE06C13803800FE0018257DA41F>
+I<EB0FE0EB3FF8EBFFFC3803F03C3807C01EEB803EEA0F00001E131C14005A12381278A3
+EAF07F38F1FFC000F713E038FF81F838FE007C48133C48131EA2140FA31278A46C131EA2
+6C133C6C1378EB81F03807FFE0000113C038007F0018257DA41F>I<12F0B6FCA338F000
+3E143C1478C712F0EB01E0A2EB03C0A2EB078014005B130E131EA25BA213381378A35BA5
+485AA86C5A18267DA51F>I<13FF000713E04813F0381F81F8383E007C48133E0078131E
+48130FA46C131F0078131E6C133C001F13F8380FE7F03803FFC06C1380000713E0381F00
+F8003E137C003C133C48131E00F8131F48130FA50078131EA26C133C003E137C381F81F8
+380FFFF0000313C0C6130018257DA41F>I<137E3803FF804813E0380F81F0381E00F848
+137848133CA248131EA4141FA31278A26C133F003E137F381F81FF3807FFEF6C138F3800
+FE0FEB001EA3141C143CA200381378007C13F01301387803E0383C0FC0383FFF80381FFE
+00EA03F818257DA41F>I<1238127C12FEA3127C12381200AC1238127C12FEA3127C1238
+071A74991F>I<EB1F80EB7FE03801FFF83803F07C3807C03C48487E1300381E03EF383C
+0FFF5B38381E3F39783C1F80EB780FA238F0700713F0A7017013003878780FA2EB3C1E38
+381E3C383C1FFC6D5A381E03E06CC8FC90388007803807C00F3903F03F003801FFFE3800
+7FF8EB1FC019257DA41F>64 D<131E133FA3EB7380A5EBF3C0A313E100017FA43803C0F0
+A538078078EBFFF8A3380F807CEB003CA4001E7FA339FFC0FFC0A31A257EA41F>I<B512
+F0A33800F000B3ADB512F0A314257BA41F>73 D<3803FFC0001F13F84813FC1300007C13
+3E0078131EA348130FB3A30078131EA3007C133E003F13FC13FF6C13F8000313C018257D
+A41F>79 D<397FE01FF839FFF03FFC397FE01FF8390F0003C0B3A73907800780A33903C0
+0F003801E01EEBF03E38007FF86D5AEB0FC01E2580A41F>85 D<13C0EA03F0487EEA1FFE
+387F3F8038FC0FC0EAF8073860018012087AA41F>94 D<387FFFFEB6FCA26C13FE18047D
+7D1F>I<1203EA0780120FEA1E005A5A1270A25AA412FC7E127E123E121C091175A81F>I<
+EA07FCEA1FFF4813C0383E03E06D7EEA1C00C71278A4EB3FF8EA01FF1207381FE078EA3E
+005A12785AA4007813F8EA7E036CB512E0000F133F3803FC0F1B1A7D991F>I<EA7F8012
+FF127F1207A8EB83E0EB9FFCEBBFFEEBFC1F9038F007809038E003C013C090388001E0A2
+EC00F0A8EC01E013C0EC03C0EBE0079038F00F809038F81F00EBBFFEEB9FF8380387E01C
+2580A41F>I<EB7FE03801FFF8000713FC380FC07CEA1F00003E1338003C13005AA21270
+12F0A612701278A26C133C123E6C137C380FC0F83807FFF0000113E038007F80161A7C99
+1F>I<EB01FE13031301EB001EA8137E3801FF9E000713DE380F81FEEA1F00003E137E00
+3C133E48131EA25AA81278143E7E147E6C13FEEA0F833907FFDFE06CEB1FF0D8007C13E0
+1C257EA41F>I<EB01FCEB07FF011F1380EB3F0F133C903878070091C7FCA5387FFFFEB5
+FCA2D80078C7FCB3A2383FFFF0487F6C5B19257FA41F>102 D<90387C0F803901FF3FC0
+0007EBFFE0380F83F1D81F0113C0391E00F000481378A66C5BEA1F01380F83E048B45A00
+1D90C7FCEA1C7C003CC8FCA37E381FFFE06C13F814FE487F393C003F8048130FEC07C048
+1303A40078EB0780A2003EEB1F00381F807E6CB45A000313F038007F801B287E991F>I<
+EA7F8012FF127F1207A8EB83F0EB8FFCEBBFFEEBFC1FEBF00F9038E0078013C0A21380AF
+397FF87FF839FFFCFFFC397FF87FF81E2580A41F>I<137013F8A3137090C7FCA7EA7FF8
+12FF127FEA0078B3A2B512F8A315267BA51F>I<EB0380EB07C0A3EB038090C7FCA73807
+FFC0A3EA0003B3AB38200780127038F80F005BEA7FFE13F8EA1FE012337DA51F>I<EA7F
+8012FF127F1207A8903887FFC015E015C09038807E005CEB81F8EB83F0EB87E0EB8FC0EB
+9F8001BFC7FC13FF808013F3EBE3E0EBC1F0138080147C143C80141F397FF87FE039FFFC
+FFF0397FF87FE01C257FA41F>I<EAFFF8A3EA0078B3ADB512FCA316257CA41F>I<38FE3C
+0F9038FE3F80B5EA7FC0381FCFF3903887E1E0EB07C1A2001E1381B039FFC7F1FCEBCFF3
+EBC7F11E1A80991F>I<387F83F038FF8FFC387FBFFE3807FC1FEBF00F9038E0078013C0
+A21380AF397FF87FF839FFFCFFFC397FF87FF81E1A80991F>I<13FCEA03FF481380381F
+87E0EA1E01383C00F0007C13F800781378A248133CA76C137C00781378A2007C13F8003C
+13F0381E01E0EA1F873807FF806C1300EA00FC161A7C991F>I<387F83E038FF9FFC387F
+BFFE3807FC1F9038F007809038E003C013C090388001E0A2EC00F0A8EC01E013C0EC03C0
+EBE0079038F00F809038F81F00EBBFFEEB9FF8EB87E00180C7FCAAEA7FF8487E6C5A1C27
+80991F>I<EB3F0F3801FFCF4813EF380FC0FF48C67E001E7F487F5A80127012F0A61270
+12785C7E003E5B6C5B380FC1FF3807FFEF0001138F38007E0F1300AA903801FFF8A31D27
+7E991F>I<387FE07E39FFE1FF80D87FE313C03801EF87EBFF079038FC038049C7FCA25B
+A35BAC387FFFE0B5FC7E1A1A7E991F>I<3803FC70380FFFF0123FEA7C03EA7001EAE000
+A37E007C1300EA3FE06CB4FC000713C0C613F0EB03F8EB00780070133C00F0131CA27EA2
+6C1338B413F013FF00E713C038E1FE00161A7C991F>I<137013F0A6387FFFFEB5FCA2D8
+00F0C7FCADEC0780A5EC0F00EB7C1FEB3FFE6D5AEB07F019217FA01F>I<397F807F8000
+FF13FF007F137F00071307B1140F141F3803C07F6CB512F86CEBE7FC90383F87F81E1A80
+991F>I<39FFE07FF0EBF0FFEBE07F391E000780A56CEB0F00A2130FA2EB1F8FA238071B
+8EEB9B9EA2EBBBDEA213B1000313DCA2EBF1FC13E0A2000113781C1A7F991F>119
+D<397FF0FFE0486C13F06C4813E0390F800F000007131EA2EA03C05CA2EA01E0147C1478
+EA00F0A25C1378A2EB38E01339133DEB1DC0A2131F130F5CA391C7FCA25B131EA2EA383E
+EA7C3C137C5BEA7FF06C5AEA0F801C277F991F>121 D<003FB512805AA23978001F0014
+3E5C5CC6485A495A495A5C49C7FC131E5B5B5B1201485A485A390F800780EA1F00123E5A
+B6FCA3191A7E991F>I<126012F0B3B3A91260042F73A91F>124 D<38038060380FE0F0EA
+1FE1383CF3C038F87F8000F01300EA601C14077BA41F>126 D E
+/Fl 54 128 df<EB3F80EBE1E03801C070380380780007133C130048133EA5143C147814
+7014E0EB03C038FF1E00EB0380380F01C0EB00E014701478143CA2143EA2141E141FA814
+1E130CEB1E3CA2EB1C3838FF0870EB07C0182A7EA91D>25 D<127812FCA212FEA2127A12
+02A41204A31208A212101220124007127B8510>44 D<EAFFFEA30F037F8E14>I<127812
+FCA4127806067B8510>I<137E3801C380380700E0000E1370001E1378001C1338003C13
+3CA20038131C0078131EA400F8131FAF0078131EA4007C133E003C133CA2001C1338001E
+1378000E13706C13E03801C38038007E0018297EA71D>48 D<132013E01201120F12FF12
+F11201B3AD487EB512C0A212287BA71D>I<EA01FCEA07FF380C0FC0381803E0382001F0
+1260384000F8A200F813FC7E147CA3007813FCC7FC14F8A2EB01F0A2EB03E014C0EB0780
+1400130E5B5B13305B5B485A3803000412024813085A5A481318383FFFF84813F0B5FCA2
+16287DA71D>I<00181330001E13E0EA1FFF14C014005BEA11F00010C7FCA813FCEA1307
+381401C0001813E0EA1000C712F01478A3147CA3127012F8A314781280004013F814F012
+60383001E0381803C0380E0F803807FE00EA01F816297DA71D>53
+D<EB0FC0EB3FF0EBF018EA01C03803803C3807007C5A000E1338001E13005AA35AA3EAF8
+3FEBC1C038F900E000FA1370143800FC133C141EA25A141FA41278A46C131EA2001C133C
+121E000E13786C13703803C1E03801FFC038007E0018297EA71D>I<12201238003FB5FC
+A214FE5A3860000400401308A21410481320A2C712401480A2EB01001302A25BA2130C5B
+A31338A213781370A213F0A51201A76C5A182A7DA81D>I<137E3801FF80380781C0380F
+00E0001E1370481338A248133CA200F8131EA4141FA41278143FA27E001C135F7E6C139F
+3803831FEA00FCEB001EA3143E143CA21438001C1378003E137014E0383C01C038180380
+381C0F00EA0FFEEA03F818297EA71D>57 D<127812FCA412781200AE127812FCA4127806
+1A7B9910>I<14101438A3147CA314BEA3EB011FA39038020F80A201047F1407A201087F
+1403A2496C7EA3496C7EA390387FFFFCA29038C0007E49133EA248C7123F81A20002EC0F
+80A21206ED07C0001FEC0FE0D8FFE0EBFFFEA2272A7EA92C>65 D<B6FC15C0390FC003F0
+0007EB00F881157E153E153FA6153E157E157C5D4A5AEC07E090B512809038C001F06E7E
+153E153F811680150F16C0A6ED1F80A2ED3F00A215FE000FEB01F8B65A158022297DA829
+>I<B67E15F03907E001FC0003EB003E81ED0F80ED07C0ED03E0ED01F0A2ED00F8A216FC
+167CA3167EAA167CA216FC16F8A2ED01F0A2ED03E016C0ED0780ED1F00153E0007EB01FC
+B612F0158027297EA82D>68 D<B7FCA23907E0003F00031407ED03801501A21500A41640
+5CA21600A25CA2140F90B5FCA2EBE00F1403A2801620A391C7FC1640A416C0A215011503
+ED07800007143FB7FCA223297EA828>I<02FF13100107EBE03090381FC07890393E000C
+7001F8EB06F048481303484813014848130048481470A248C812305A123E1610127EA200
+7C150012FCA892B5FC127C007EEC03F01501123EA2123F7E6C7EA26C7E6C7E6C6C13026C
+7E013EEB0C7090391FC03830903907FFE0100100EB8000282B7DA92E>71
+D<EAFFFEA2EA0FE0EA07C0B3B1EA0FE0EAFFFEA20F297DA815>73
+D<B538800FFEA23A07F00003F06C48EB01C0160015025D5D5D5D5D5D4AC7FC14025C5C14
+18143C147E14BEEBE11F01E27FEBE40F9038E807C001F07FEBE0036E7E811400157C157E
+153E81A2ED0F8016C0150716E0486C14F8B538803FFFA228297EA82E>75
+D<B512C0A2D807F0C7FC6C5AB3A41501A41502A41506A2150E151E157C0007EB01FCB6FC
+A220297EA825>I<D8FFE0913807FF80A20007EEF000D802F0EC0BE0A201781413A36D14
+23A36D1443A26D1483A3903907800103A3903803C002A2903801E004A3903800F008A2EC
+7810A3EC3C20A3EC1E40A2EC0F80A30007EB0700D80F804A7ED8FFF891B5128014023129
+7EA836>I<D8FFE0EB3FFE7FD803F8EB03E00002EC01C0017CEB0080137E133E7FA26D7E
+8013076D7E8013016D7E80147C80143F80EC0F8015C01407EC03E015F01401EC00F8A215
+7C157E153E151FA2150F1507A200071403486C1301EAFFF8150027297EA82C>I<B512FC
+ECFFC03907E007F00003EB00F8157C81153F811680A61600153EA215784A5AEC07C0D9FF
+FEC7FCEBE007EC03C06E7E6E7E811578157CA4157EA41601157F153F486CEB1F02B53880
+0F82ED0784C8EA01F8282A7EA82B>82 D<EBFE013803FF83380F81E3381E003748131F00
+387F00787F127000F07FA3807EA26C90C7FC127E127FEA3FE0EA1FFE380FFFE06C13F86C
+7FC66C7EEB07FFEB007FEC1F80140FEC07C0A26C1303A47E1580A26C13076C14006C130E
+00EE5B38C3C07838C1FFF038803FC01A2B7DA921>I<D8FFFE903801FF80A2D80FE09038
+007C00000715306C6C142000015D7F00005D6D1301017E91C7FC013E1302133F6D5BEC80
+0C90380FC00801075B14E001035BECF060903801F84001005B14FC027DC8FC147F143EAE
+147E90380FFFF0A229297FA82C>89 D<1203EA0780EA0CC0EA1860EA3030EA6018EAC00C
+EA80040E0879A81D>94 D<1204120812101220A21240A31280A412BC12FEA2127EA2123C
+07127CA910>96 D<EA03FCEA0C0738100380383C01C0003E7F6D7E121C1208C7FCA3137F
+EA03E0EA0F80EA1E005A127C0078144012F8A31301127C393C027880381E0C7F3907F01E
+001A1A7E991D>I<120FB4FCA2121F7EACEB07E0EB1838EB600EEB8007158090380003C0
+A2EC01E0A215F0A715E0A2140315C01580EB8007000EEB0F00EB401C380C303838080FC0
+1C2A7EA921>I<137F3801C0E038070010000E1378001E13F85A1470007C132000781300
+12F8A81278127C003C1308A26C1310000E13206C13603801C18038007E00151A7E991A>
+I<140F14FFA2141F80AC133F3801C0CF3803802F380F001F121E001C7F123C127C1278A2
+12F8A71278A27EA26C5B000E132F6CEB4F803901C18FF038007E0F1C2A7EA921>I<13FC
+38038780380701C0000E13E0EA1C00003C13F0A2481378A212F8A2B512F800F8C7FCA512
+78A26C1308A26C1310000E13206C13403801C18038007E00151A7E991A>I<131FEB70C0
+EBE1E0EA01C31203EB81C0380780801400A9EAFFFEA2EA0780B3A37FEA7FFCA2132A7FA9
+12>I<140F3901FC308038070743380E03C3001EEBC100486C7EA2007C7FA5003C5BA26C
+485A000E5BD81707C7FCEA11FC0030C8FCA47E381FFF806C13F06C7F3818007C48131E00
+70130E00607F12E0A40070130EA26C5B6C5B380781E0C6B4C7FC19287E9A1D>I<120FB4
+FCA2121F7EACEB07F0EB1838EB201C497E140F1380A21300B139FFF0FFF0A21C2A7EA921
+>I<121E123FA4121EC7FCA9120FB4FCA2121F7EB3A2EAFFF0A20C297EA811>I<137813FC
+A413781300A9133CEA07FCA2EA007C133CB3AAEA703812F8137012F0EA60C0EA1F800E35
+82A812>I<120FB4FCA2121F7EACECFFC0A2EC7E0014305C14405C0103C7FC1304130C13
+1E133E135F138FEB0780801303806D7E1300801478147C147E39FFF1FFE0A21B2A7EA91F
+>I<120FB4FCA2121F7EB3B2EAFFF0A20C2A7EA911>I<3A0F07F007F03AFF183818389039
+201C201C3A1F400E400E000F010F130F01801380A201001300B13BFFF0FFF0FFF0A22C1A
+7E9931>I<380F07F038FF1838EB201C381F400E000F130F1380A21300B139FFF0FFF0A2
+1C1A7E9921>I<137E3803C3C0380700E0000E1370481338003C133CA248131EA200F813
+1FA80078131EA26C133CA2001C13386C13706C13E03803C3C038007E00181A7E991D>I<
+380F07E038FF1838EB601E380F800FEC0780010013C0140315E0A2EC01F0A715E01403A2
+15C0EC07801380EC0F00EB401CEB3078EB0FC090C8FCAAEAFFF0A21C267E9921>I<EB3F
+013801E08338038043380F0027001E1317141F487F127CA2127812F8A7127CA2123C003E
+5B121E6C132F3807804F3801C18F38007E0F1300AAECFFF0A21C267E991F>I<380F0F80
+38FF11C0EB23E0EA1F43EA0F83EB81C0EB800090C7FCB07FEAFFFCA2131A7E9917>I<38
+07F080EA1C0DEA3003EA600112E01300A27E6C1300127EEA7FE0EA3FFC6C7EEA07FF3800
+3F801307388003C0A2130112C0A200E01380130300F01300EACC0EEA83F8121A7E9917>
+I<7FA41201A31203A21207120F381FFF80B5FC38078000AD1440A73803C08012013800E1
+00133E12257FA417>I<000F130FB413FFA2001F131F6C7FB05CA26C132F3903804F8039
+01C08FF038007F0F1C1A7E9921>I<3AFFF3FF83FEA23A1F803C00F8D80F001460EB801C
+0007011E1340A2D9C02E13C00003012F1380A23A01E04701001581A23900F0838215C2A2
+90387901C415E4137B90383E00E815F8A2011C1370A20118133001081320271A7F992A>
+119 D<39FFF01FF0A2390F8007800007EB03001402A26C6C5AA2EBE00C00011308A26C6C
+5AA2EBF830EB7820A26D5AA2EB3EC0EB1E80A26DC7FCA31306A21304A2130C1308A2EA70
+1012F85BA2485AEA6180001FC8FC1C267F991F>121 D<387FFFF8387800F0EA60010040
+13E0EB03C0EAC00700801380EB0F005BEA001E5B137C13785B1201EBE008EA03C0120713
+80380F0018481310121E481330007C1370387801F0B5FC151A7E991A>I<B612F01C0180
+901D>I<000F1340381FC0803833F300EA40FEEA803C12057BA71D>126
+D<EA700EEAF81FEAFC3FA2EAF81FEA700E10067AA81D>I E /Fm
+12 115 df<1518153CA3157EA315FFA39138019F80A39138030FC0A202077FEC0607A202
+0E7FEC0C03A202187F1501A24A6C7EA34A137EA34A7FA20101814A131FA201038191C712
+0FA249B67EA20106C71207496E7EA3496E7EA201388101301400A20170810160157EA249
+157F8312016D16801203D80FF0ED7FC0D8FFFE0207B5FCA2383C7EBB3C>65
+D<B812F0A2D803FCC7123F6C4814071601EE00F81778A21738A21718A4171C170CA21503
+A21700A45DA25D153F90B6FCA29038F8003F150F81A281A41703A292C7FCA21706A5170E
+A2170C171CA2173CA2177CEE01FCEE07F8486C143FB8FCA2303B7CBA36>69
+D<D90FF0138090387FFE013901F00F813903C001C348C712E3000E143748143F003C141F
+0038140F127800701407A200F01403A415017EA27E007C91C7FC127E7E13C0EA1FF06CB4
+FC6C13F06C13FE6CEBFFC06C14F0011F7F010313FE9038003FFF14039138007F80ED1FC0
+150FED07E01503A2ED01F012C0A21500A37EA216E07E15016C15C0A26CEC03806C140700
+F71500D8E1C0131ED8E0F05BD8C07E13F090380FFFE0D8800190C7FC243D7CBB2C>83
+D<007FB812C0A2903AC003FC003F277E0001F8130F007C160300781601127017001260A2
+00E017E0A2481760A7C71600B3B3EC07FE0107B512FEA2333B7DBA39>I<267FFFE09038
+07FFF8A20003018001011380C690C8EAFE00491578017F15706D6C14605F6D6C13016D6C
+5C4CC7FC6D6C5B6D6C13065E6D6C131C6D6C13185E027F137091383F80605EEC1FC19138
+0FE18003E3C8FCEC07F7EC03FE5D14016E7EA2157F4B7EA2913801DFC09138038FE0150F
+91380607F091380E03F8140C4A6C7E91383800FE14304A137F02E06D7E5C49486D7E0103
+6E7E91C7FC01066E7E010E6E7E130C496E7E01386E7E0130157E0170157F01F0ED3F80D8
+03F8ED7FC0D80FFCEDFFE0B5020313FFA2383B7EBA3C>88 D<EB3F803801C0F03803003C
+00047F000C7F486D7E001C80003E1303003F80A3121EC7FCA3143FEB0FF3EB7E03EA01F8
+EA03E0EA0FC0EA1F80EA3F00123E127E16605AA31407A2007C130B127E003E903811F0C0
+6C13603A07C1807F803A00FE003E0023257CA427>97 D<EA03E012FFA212071203B3EC3F
+C0ECE0789038E3001C01E6130F01E8EB078001F8EB03C049EB01E04914F0150016F8A216
+FC167CA2167EA9167CA216FC16F8A2ED01F016E06D130301D814C001C8EB07800184EB0E
+0001835B903881C0F09038003F80273C7EBB2C>I<ED0F80EC03FFA2EC001F150FB3EB03
+F8EB1E07903870018F9038E0004FD803C0132F4848131F120F90C7120F5A123EA2127E12
+7CA212FCA9127CA2127E123EA2121E121F6C141F6C6C133F6C6C136F6C6C13CF3A007001
+8FC090393C0E0FFEEB07F0273C7DBB2C>100 D<EA03E012FFA212071203B3EC1FE0EC60
+7CEC801E9038E3000F01E41480A201E8130716C013F0A25BB3A6486CEB0FE0B50081B5FC
+A2283C7EBB2C>104 D<1207EA0F80EA1FC0A3EA0F80EA0700C7FCADEA07C012FFA2120F
+1207B3ACEA0FE0EAFFFEA20F397DB815>I<3903E01FE000FFEB607CEC801E3907E3000F
+D803E41480A201E8130716C013F0A25BB3A6486CEB0FE0B50081B5FCA228257EA42C>
+110 D<3803E03E00FF13C39038E107803907E20FC0EA03E413E8EC0780EC030001F0C7FC
+A35BB3A5487EB512C0A21A257EA41E>114 D E end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 300dpi
+TeXDict begin
+%%PaperSize: a4
+
+%%EndSetup
+%%Page: 1 1
+1 0 bop 701 411 a Fm(Sindhi)27 b(in)g(ArabT)1255 430
+y(E)1300 411 y(X)853 559 y Fl(Klaus)19 b(Lagally)742
+634 y(Institut)e(f)r(\177)-31 b(ur)19 b(Informatik)724
+708 y(Breit)n(wiesenstra\031e)f(20{22)797 783 y(D-70565)i(Stuttgart)873
+858 y(GERMANY)677 933 y Fk(mailto:lagally)o(k@ac)o(m.or)o(g)823
+1049 y Fl(August)f(06,)h(1997)235 1118 y Fj(There)g(is)g(a)g(new)g
+(ArabT)715 1129 y(E)742 1118 y(X)g(language)h(mo)q(de,)f
+Fi(\\setsindh)o(i)p Fj(,)d(for)k(pro)q(cessing)f(Sindhi)162
+1178 y(texts)c(in)g(the)g(extended)f(Arabic)g(writing.)235
+1238 y(This)23 b(mo)q(de)f(w)o(orks)h(only)g(with)f(ArabT)1001
+1249 y(E)1029 1238 y(X)g(v)o(ersion)g(3.06)i(or)f(later)f(and)i
+(requires)d(an)162 1299 y(up)q(dated)c(v)o(ersion)e(of)i(the)e(fon)o(t)
+h(\\nash14".)24 b(These)16 b(conditions)g(are)g(c)o(hec)o(k)o(ed,)e(if)
+h(L)1692 1287 y Fh(A)1712 1299 y Fj(T)1739 1309 y(E)1766
+1299 y(X2)p Fg(")h Fj(is)162 1359 y(used.)21 b(F)l(or)c(Plain)f(T)535
+1370 y(E)562 1359 y(X)g(there)f(are)i(no)f(c)o(hec)o(ks.)235
+1419 y(T)l(o)f(activ)m(ate)f(the)h(Sindhi)f(mo)q(de,)g(select)f(the)h
+(language)i(b)o(y)e Fi(\\setsindhi)o Fj(.)k(Sindhi)c(input)162
+1479 y(texts)24 b(are)g(enco)q(ded)g(in)g(a)h(mo)q(di\014cation)e(of)i
+(the)f(standard)h(ArabT)1479 1490 y(E)1507 1479 y(X)e(enco)q(ding.)46
+b(The)162 1539 y(alphab)q(et)17 b(is)f(giv)o(en)f(in)h(T)l(able)g(1.)
+235 1600 y(F)l(or)f(the)f(use)g(of)h(the)f(enco)q(ding,)g(see)g(T)l
+(able)h(2.)20 b(It)14 b(con)o(tains)h(all)f(Sindhi)f(letters,)h
+(together)162 1660 y(with)f(their)g(input)h(enco)q(ding)g(and)g(a)g(t)o
+(ypical)e(example)g(of)i(use.)20 b(F)l(or)14 b(ev)o(ery)e(line)g(the)i
+(external)162 1720 y(notation)j(is)f(also)h(giv)o(en.)222
+1834 y(1.)24 b(This)f(is)g(a)g(preliminary)e(v)o(ersion)h(solely)h(in)o
+(tended)f(for)h(insp)q(ection,)h(exp)q(erimen)o(ts,)284
+1894 y(ev)m(aluation,)16 b(and)g(suggestions.)22 b(The)16
+b(\014nal)h(v)o(ersion)e(ma)o(y)f(di\013er)i(in)g(details,)f(dep)q
+(end-)284 1954 y(ing)h(on)h(feedbac)o(k)e(b)o(y)h(the)g(users.)222
+2035 y(2.)24 b(Use)16 b(h)o(yphens)g(to)g(resolv)o(e)f(am)o(biguities)f
+(with)i(aspired)h(consonan)o(ts.)222 2116 y(3.)24 b(If)19
+b(the)g(new)g(fon)o(t)g(is)g(not)h(a)o(v)m(ailable,)f(the)g(\\wide)g
+(letter)g(k)m(af)s(")h(is)f(missing.)29 b(W)l(e)19 b(tem-)284
+2177 y(p)q(orarily)12 b(substitute)g(an)g(ordinary)g(letter)f(k)m(af)h
+(with)g(four)g(dots,)h(whic)o(h)e(do)q(es)i(not)f(exist,)284
+2237 y(but)k(should)h(b)q(e)f(conspicuous)h(enough.)222
+2318 y(4.)24 b(T)l(an)o(w)o(een)16 b(w)o(orks)g(as)h(exp)q(ected:)j
+Fi(miN)f Ff(\324)1004 2337 y(\023)1033 2318 y Fj(,)d
+Fi('|iN)j Ff(Z)1187 2337 y(\023)1216 2318 y Fj(.)222
+2411 y(5.)24 b(The)c(user)f(ma)o(y)g(w)o(an)o(t)g(to)h(break)g(some)f
+(ligatures)g(b)o(y)h(inserting)f(a)h(v)o(ertical)e(bar,)j(to)284
+2471 y(get)16 b(the)g(correct)g(writing,)f(or)i(just)f(for)h(a)f(b)q
+(etter)g(app)q(earance)i(of)e(the)g(script.)1018 2744
+y(1)p eop
+%%Page: 2 2
+2 1 bop 236 348 1589 2 v 235 473 2 126 v 244 473 V 306
+424 a Fe(a)p 404 473 V 461 361 a Fd(\013)463 424 y(@)p
+528 473 V 94 w Fc(a)p 646 473 V 655 473 V 93 w Fe(~n)p
+815 473 V 868 439 a Fd(\012)854 424 y(h)p 935 473 V 77
+w Fc(~)-38 b(n)p 1056 473 V 1065 473 V 93 w Fe(z)p 1188
+473 V 96 w Fd(R)p 1321 473 V 94 w Fc(z)p 1442 473 V 1451
+473 V 79 w Fe(kh)p 1574 473 V 55 w Fd(\270)p 1694 473
+V 51 w Fc(kh)p 1816 473 V 1825 473 V 235 587 2 114 v
+244 587 V 306 538 a Fe(b)p 404 587 V 94 w Fd(H)465 560
+y(.)p 528 587 V 572 538 a Fc(b)p 646 587 V 655 587 V
+95 w Fe(^c)p 815 587 V 81 w Fd(x)p 935 587 V 77 w Fc(\024)k(c)p
+1056 587 V 1065 587 V 96 w Fe(s)p 1188 587 V 79 w Fd(\200)p
+1321 587 V 77 w Fc(s)p 1442 587 V 1451 587 V 98 w Fe(g)p
+1574 587 V 73 w Fd(\300)p 1694 587 V 69 w Fc(g)p 1816
+587 V 1825 587 V 235 701 V 244 701 V 288 652 a Fe(:b)p
+404 701 V 75 w Fd(H)465 672 y(\011)465 683 y(.)p 528
+701 V 572 652 a Fc(b)561 707 y(\177)p 646 701 V 655 701
+V 680 652 a Fe(^ch)p 815 701 V 868 661 a Fd(\020)868
+671 y(\012)854 652 y(h)p 935 701 V 59 w Fc(\024)g(ch)p
+1056 701 V 1065 701 V 60 w Fe(^s)p 1188 701 V 60 w Fd(\210)p
+1321 701 V 73 w Fc(\024)i(s)p 1442 701 V 1451 701 V 79
+w Fe(:g)p 1574 701 V 55 w Fd(\300)1634 668 y(\011)1634
+678 y(.)p 1694 701 V 1740 652 a Fc(g)1729 721 y(\177)p
+1816 701 V 1825 701 V 235 827 2 127 v 244 827 V 288 778
+a Fe(bh)p 404 827 V 75 w Fd(H)459 799 y(\020)459 809
+y(\012)p 528 827 V 554 778 a Fc(bh)p 646 827 V 655 827
+V 77 w Fe(.h)p 815 827 V 81 w Fd(h)p 935 827 V 77 w Fc(h)982
+793 y(.)p 1056 827 V 1065 827 V 1091 778 a Fe(.s)p 1188
+827 V 54 w Fd(\220)p 1321 827 V 71 w Fc(s)1368 793 y(.)p
+1442 827 V 1451 827 V 1476 778 a Fe(gh)p 1574 827 V 62
+w Fd(\354)1633 762 y(\303)p 1694 827 V 1722 778 a Fc(gh)p
+1816 827 V 1825 827 V 235 953 V 244 953 V 306 904 a Fe(t)p
+404 953 V 459 880 a Fd(\020)437 904 y(H)p 528 953 V 73
+w Fc(t)p 646 953 V 655 953 V 708 904 23 2 v 131 w Fe(h)p
+815 953 2 127 v 87 w Fd(p)p 935 953 V 77 w Fc(h)970 962
+y(\025)p 1056 953 V 1065 953 V 1091 904 a Fe(.d)p 1188
+953 V 54 w Fd(\230)p 1321 953 V 67 w Fc(d)1368 919 y(.)p
+1442 953 V 1451 953 V 1476 904 a Fe(:n)p 1574 953 V 1627
+843 a Fd(\020)1605 904 y(\300)p 1694 953 V 65 w Fc(n)1729
+960 y(\177)p 1816 953 V 1825 953 V 235 1067 2 114 v 244
+1067 V 288 1018 a Fe(th)p 404 1067 V 459 984 a Fd(\020)459
+994 y(\020)437 1018 y(H)p 528 1067 V 55 w Fc(th)p 646
+1067 V 655 1067 V 100 w Fe(d)p 815 1067 V 110 w Fd(X)p
+935 1067 V 86 w Fc(d)p 1056 1067 V 1065 1067 V 76 w Fe(.t)p
+1188 1067 V 67 w Fd(\240)p 1321 1067 V 87 w Fc(t)1368
+1033 y(.)p 1442 1067 V 1451 1067 V 1495 1018 a Fe(l)p
+1574 1067 V 87 w Fd(\310)p 1694 1067 V 92 w Fc(l)p 1816
+1067 V 1825 1067 V 235 1181 V 244 1181 V 288 1132 a Fe(,t)p
+404 1181 V 459 1098 a Fd(\022)437 1132 y(H)p 528 1181
+V 573 1119 a Fc(\023)576 1132 y(t)p 646 1181 V 655 1181
+V 100 w Fe(dh)p 815 1181 V 868 1091 a Fd(\020)864 1132
+y(X)p 935 1181 V 68 w Fc(dh)p 1056 1181 V 1065 1181 V
+58 w Fe(.z)p 1188 1181 V 67 w Fd(\244)p 1321 1181 V 84
+w Fc(z)1368 1147 y(.)p 1442 1181 V 1451 1181 V 1495 1132
+a Fe(m)p 1574 1181 V 95 w Fd(\324)p 1694 1181 V 79 w
+Fc(m)p 1816 1181 V 1825 1181 V 235 1295 V 244 1295 V
+269 1246 a Fe(,th)p 404 1295 V 465 1212 a Fd(\011)465
+1221 y(\011)437 1246 y(H)p 528 1295 V 555 1233 a Fc(\023)558
+1246 y(th)p 646 1295 V 655 1295 V 82 w Fe(:d)p 815 1295
+V 868 1196 a Fd(\022)864 1246 y(X)p 935 1295 V 86 w Fc(d)970
+1301 y(\177)p 1056 1295 V 1065 1295 V 1109 1246 a Fe(`)p
+1188 1295 V 90 w Fd(\250)p 1321 1295 V 98 w Fb(,)p 1442
+1295 V 1451 1295 V 97 w Fe(n)p 1574 1295 V 1634 1213
+a Fd(\011)1617 1246 y(\340)p 1694 1295 V 79 w Fc(n)p
+1816 1295 V 1825 1295 V 235 1412 2 118 v 244 1412 V 297
+1363 23 2 v 319 1363 a Fe(s)p 404 1412 2 118 v 459 1339
+a Fd(\021)437 1363 y(H)p 528 1412 V 73 w Fc(t)559 1412
+y(\026)p 646 1412 V 655 1412 V 699 1363 a Fe(,d)p 815
+1412 V 91 w Fd(X)874 1381 y(.)p 935 1412 V 983 1344 a
+Fc(\023)979 1363 y(d)p 1056 1412 V 1065 1412 V 76 w Fe(.g)p
+1188 1412 V 1254 1319 a Fd(\011)1236 1363 y(\250)p 1321
+1412 V 92 w Fc(_)-27 b(g)p 1442 1412 V 1451 1412 V 77
+w Fe(,n)p 1574 1412 V 1629 1329 a Fd(\010)1617 1363 y(\340)p
+1694 1412 V 81 w Fc(\023)-38 b(n)p 1816 1412 V 1825 1412
+V 235 1530 V 244 1530 V 306 1481 a Fe(p)p 404 1530 V
+94 w Fd(H)459 1502 y(\022)p 528 1530 V 570 1481 a Fc(p)p
+646 1530 V 655 1530 V 74 w Fe(,dh)p 815 1530 V 73 w Fd(X)868
+1498 y(\012)p 935 1530 V 965 1462 a Fc(\023)961 1481
+y(dh)p 1056 1530 V 1065 1530 V 76 w Fe(f)p 1188 1530
+V 77 w Fd(\362)p 1321 1530 V 79 w Fc(f)p 1442 1530 V
+1451 1530 V 101 w Fe(w)p 1574 1530 V 82 w Fd(\360)p 1694
+1530 V 82 w Fc(w)p 1816 1530 V 1825 1530 V 235 1645 2
+116 v 244 1645 V 306 1596 a Fe(j)p 404 1645 V 102 w Fd(`)p
+528 1645 V 77 w Fc(\024)k(g)p 646 1645 V 655 1645 V 708
+1596 23 2 v 126 w Fe(d)p 815 1645 2 116 v 874 1556 a
+Fd(\011)864 1596 y(X)p 935 1645 V 86 w Fc(d)967 1645
+y(\026)p 1056 1645 V 1065 1645 V 1091 1596 a Fe(ph)p
+1188 1645 V 1248 1546 a Fd(\020)1248 1556 y(\020)1223
+1596 y(\254)p 1321 1645 V 53 w Fc(ph)p 1442 1645 V 1451
+1645 V 58 w Fe(,h)p 1574 1645 V 80 w Fd(\350)p 1694 1645
+V 87 w Fc(h)p 1816 1645 V 1825 1645 V 235 1759 2 114
+v 244 1759 V 288 1710 a Fe(:j)p 404 1759 V 465 1722 a
+Fd(\011)465 1732 y(.)445 1710 y(h)p 528 1759 V 77 w Fc(\177)k(\021)p
+646 1759 V 655 1759 V 118 w Fe(r)p 815 1759 V 108 w Fd(P)p
+935 1759 V 88 w Fc(r)p 1056 1759 V 1065 1759 V 97 w Fe(q)p
+1188 1759 V 88 w Fd(\364)p 1321 1759 V 84 w Fc(q)p 1442
+1759 V 1451 1759 V 97 w Fe(h)p 1574 1759 V 87 w Fd(\353)p
+1694 1759 V 83 w Fc(h)p 1816 1759 V 1825 1759 V 235 1873
+V 244 1873 V 288 1824 a Fe(jh)p 404 1873 V 73 w Fd(\354)456
+1808 y(c)p 528 1873 V 552 1824 a Fc(\024)c(gh)p 646 1873
+V 655 1873 V 77 w Fe(,r)p 815 1873 V 868 1794 a Fd(\020)868
+1804 y(\020)862 1824 y(P)p 935 1873 V 85 w Fc(\023)h(r)p
+1056 1873 V 1065 1873 V 97 w Fe(k)p 1188 1873 V 79 w
+Fd(\234)p 1321 1873 V 75 w Fc(k)p 1442 1873 V 1451 1873
+V 97 w Fe(y)p 1574 1873 V 79 w Fd(\370)1627 1862 y(\012)p
+1694 1873 V 1739 1824 a Fc(y)p 1816 1873 V 1825 1873
+V 236 1875 1589 2 v 235 1988 2 114 v 244 1988 V 306 1940
+a Fe(a)p 404 1988 V 96 w Fd(\005)462 1917 y(\013)460
+1940 y(\006)o(\007)p 528 1988 V 69 w Fc(a)p 646 1988
+V 655 1988 V 111 w Fe(e)p 815 1988 V 94 w Fd(\005\006)871
+1961 y(\013)888 1940 y(\007)p 935 1988 V 71 w Fc(e)p
+1056 1988 V 1065 1988 V 97 w Fe(i)p 1188 1988 V 81 w
+Fd(\005\006)1250 1961 y(\013)1268 1940 y(\007)p 1321
+1988 V 83 w Fc(i)p 1442 1988 V 1451 1988 V 101 w Fe(o)p
+1574 1988 V 75 w Fd(\005)1630 1917 y(\014)1628 1940 y(\006)o(\007)p
+1694 1988 V 69 w Fc(o)p 1816 1988 V 1825 1988 V 235 2107
+2 119 v 244 2107 V 306 2054 a Fe(u)p 404 2107 V 96 w
+Fd(\005)462 2031 y(\014)460 2054 y(\006)o(\007)p 528
+2107 V 68 w Fc(u)p 646 2107 V 655 2107 V 110 w Fe(A)p
+815 2107 V 106 w Fd(A)879 2031 y(\013)877 2054 y(\007)p
+935 2107 V 81 w Fc(\026)d(a)p 1056 2107 V 1065 2107 V
+94 w Fe(E)p 1188 2107 V 92 w Fd(\377\007)p 1321 2107
+V 84 w Fc(\026)i(e)p 1442 2107 V 1451 2107 V 97 w Fe(I)p
+1574 2107 V 73 w Fd(\371)1617 2099 y(\012)1650 2054 y(\007)1652
+2075 y(\013)p 1694 2107 V 1738 2054 a Fc(\026)-29 b(\020)p
+1816 2107 V 1825 2107 V 235 2221 2 114 v 244 2221 V 306
+2173 a Fe(O)p 404 2221 V 96 w Fd(\361\007)p 528 2221
+V 70 w Fc(\026)-36 b(o)p 646 2221 V 655 2221 V 111 w
+Fe(U)p 815 2221 V 89 w Fd(\361)885 2150 y(\014)883 2173
+y(\007)p 935 2221 V 75 w Fc(\026)f(u)p 1056 2221 V 1065
+2221 V 75 w Fe(ae)p 1188 2221 V 73 w Fd(\377)1261 2150
+y(\013)1259 2173 y(\007)p 1321 2221 V 68 w Fc(ae)p 1442
+2221 V 1451 2221 V 60 w Fe(ao)p 1574 2221 V 52 w Fd(\361)1644
+2150 y(\013)1642 2173 y(\007)p 1694 2221 V 57 w Fc(ao)p
+1816 2221 V 1825 2221 V 235 2355 2 135 v 244 2355 V 306
+2307 a Fe(i)p 404 2355 V 120 w Fd(@)461 2324 y(\013)p
+528 2355 V 577 2307 a Fc(i)p 646 2355 V 655 2355 V 708
+2307 23 2 v 131 w Fe(A)p 815 2355 2 135 v 79 w Fd(\371)892
+2284 y(\013)890 2307 y(\007)p 935 2355 V 68 w Fc(\026)h(a)p
+1056 2355 V 1065 2355 V 76 w Fe('A)p 1188 2355 V 1246
+2244 a Fd(\016)1252 2307 y(@)p 1321 2355 V 95 w Fb(-)-7
+b Fc(\026)-36 b(a)p 1442 2355 V 1451 2355 V 67 w Fe('a)p
+1574 2355 V 1629 2244 a Fd(\015)1631 2307 y(@)p 1694
+2355 V 89 w Fb(-)-7 b Fc(a)p 1816 2355 V 1825 2355 V
+235 2469 2 114 v 244 2469 V 288 2421 a Fe('i)p 404 2469
+V 101 w Fd(@)461 2447 y(\015)p 528 2469 V 573 2421 a
+Fb(-)g Fc(i)p 646 2469 V 655 2469 V 91 w Fe('y)p 815
+2469 V 870 2398 a Fd(\015)852 2421 y(\370)p 935 2469
+V 71 w Fb(-)g Fc(y)p 1056 2469 V 1065 2469 V 69 w Fe('w)p
+1188 2469 V 1250 2390 a Fd(\015)1240 2421 y(\360)p 1321
+2469 V 79 w Fb(-)g Fc(w)p 1442 2469 V 1451 2469 V 61
+w Fe('|)p 1574 2469 V 77 w Fd(Z)p 1694 2469 V 103 w Fb(-)p
+1816 2469 V 1825 2469 V 236 2471 1589 2 v 709 2551 a
+Fj(T)l(able)16 b(1:)21 b(The)c(Sindhi)e(Alphab)q(et)1018
+2744 y(2)p eop
+%%Page: 3 3
+3 2 bop 162 315 a Fk(1:)25 b(a)h(anbu)f(b)g(badaka)g(:b)g(:bilI)g(bh)g
+(bhOli,rO)166 389 y Fa(\360)206 364 y(\020)206 372 y(\020)201
+389 y(Q)o(\313)228 407 y(\013)246 389 y(\361K)279 403
+y(\020)279 411 y(\012)323 389 y Fl(bh)k Fa(H)436 406
+y(\020)436 415 y(\012)649 389 y(\372)656 428 y(\012)680
+389 y(\316)685 431 y(\013)703 382 y(K)708 396 y(\011)708
+405 y(.)705 419 y(\013)746 389 y Fl(:b)h Fa(H)849 406
+y(\011)849 415 y(.)1077 354 y(\013)1056 389 y(\234)1125
+350 y(\013)1115 389 y(Y)1151 361 y(\013)1149 389 y(K)1154
+404 y(.)1192 389 y Fl(b)f Fa(H)1278 407 y(.)1508 367
+y(\014)1486 389 y(I)1511 407 y(.)1548 362 y(\011)1543
+389 y(K)1563 337 y(\013)1564 389 y(@)c Fl(a)1658 337
+y Fa(\013)1660 389 y(@)1843 376 y(:)5 b(1)162 475 y Fk(2:)25
+b(t)h(ti:di)e(th)i(thIlihI)e(,t)h(,tOplO)g(,th)g(,thUn,thi)192
+533 y Fa(\011)192 541 y(\011)166 562 y(I)188 583 y(\013)229
+534 y(\011)224 562 y(K)l(\361)271 511 y(\014)274 526
+y(\011)274 534 y(\011)269 562 y(K)j Fl(,th)438 533 y
+Fa(\011)438 541 y(\011)415 562 y(H)150 b(\361\312K)669
+576 y(\022)692 562 y(\361)725 527 y(\022)725 562 y(K)27
+b Fl(,t)856 534 y Fa(\022)837 562 y(H)159 b(\372)1058
+600 y(\012)1081 562 y(\346\352)1112 593 y(\013)1129 562
+y(\312)1130 579 y(\013)1146 562 y(J)1146 576 y(\012)1163
+526 y(\020)1163 534 y(\020)1163 562 y(K)1164 579 y(\013)1205
+562 y Fl(th)1309 533 y Fa(\020)1309 541 y(\020)1291 562
+y(H)1513 517 y(\022)1504 562 y(Y)1514 579 y(\013)1538
+534 y(\020)1538 562 y(K)1540 579 y(\013)1581 562 y Fl(t)1652
+541 y Fa(\020)1634 562 y(H)1843 548 y(:)5 b(2)162 647
+y Fk(3:)25 b(_s)h(_samara)e(p)h(pakhO)g(j)h(jahAzu)e(:j)h(:jibha)188
+716 y Fa(\013)166 738 y(I)187 755 y(\020)187 764 y(\012)224
+738 y(k)241 752 y(\011)241 760 y(.)237 775 y(\013)290
+738 y Fl(:j)372 748 y Fa(\011)372 756 y(.)355 738 y(h)593
+703 y(\014)586 738 y(R)t(A)634 703 y(\013)631 738 y(\352)665
+703 y(\013)652 738 y(c)h Fl(j)k Fa(`)192 b(\361\272)1073
+709 y(\013)1071 738 y(K)1071 753 y(\022)1116 738 y Fl(p)29
+b Fa(H)1197 756 y(\022)1430 720 y(\013)1424 738 y(Q)1459
+703 y(\013)1451 738 y(\334)1485 676 y(\013)1483 701 y(\021)1481
+735 y(\337)p 1531 738 18 2 v 1548 738 a Fl(s)1620 718
+y Fa(\021)1602 738 y(H)1843 725 y(:)5 b(3)162 820 y Fk(4:)25
+b(jh)h(jihrkI)e(~n)h(:ja~na)g(^c)g(^can,du)f(^ch)h(^cha,tI)166
+894 y Fa(\372)173 932 y(\012)202 860 y(\022)197 894 y(\346)203
+926 y(\013)237 859 y(\013)224 894 y(k)236 908 y(\020)236
+916 y(\012)290 894 y Fl(^c)n(h)418 902 y Fa(\020)418
+910 y(\012)407 894 y(h)602 855 y(\014)592 894 y(Y)606
+909 y(.)631 867 y(\011)626 894 y(J)657 859 y(\013)643
+894 y({)i Fl(^c)j Fa(x)981 859 y(\013)979 906 y(\012)981
+894 y(l)1008 845 y(\013)994 881 y(k)1011 894 y(\011)1011
+903 y(.)1061 894 y Fl(~n)1164 907 y Fa(\012)1153 894
+y(h)145 b(\372)1345 932 y(\012)1369 894 y(\346\237)1416
+912 y(\013)1450 894 y(Q\352c)1513 926 y(\013)1564 894
+y Fl(jh)30 b Fa(\354)1661 881 y(c)142 b(:)5 b(4)162 980
+y Fk(5:)25 b(.h)h(.huqO)e(_h)i(_ha:tu)e(d)i(daru)e(dh)i(dhuka.ra)173
+1028 y Fa(\013)171 1043 y(\020)171 1052 y(\020)166 1069
+y(Q)214 1033 y(\013)193 1069 y(\237)253 1019 y(\014)251
+1035 y(\020)248 1069 y(X)g Fl(dh)396 1035 y Fa(\020)392
+1069 y(X)618 1050 y(\014)611 1069 y(P)648 1033 y(\013)643
+1069 y(X)g Fl(d)k Fa(X)989 1016 y(\014)974 1069 y(\241)1032
+1016 y(\013)1018 1069 y(s)p 1088 1069 V 48 w Fl(h)g Fa(p)196
+b(\361)1443 1038 y(\020)1438 1069 y(\256)1479 1033 y(\014)1466
+1069 y(k)26 b Fl(.h)k Fa(h)1843 1055 y(:)5 b(5)162 1150
+y Fk(6:)25 b(:d)h(:dOlu)e(,d)i(,dAkha)e(,dh)h(,dha:gI)f(_d)i(_da_hIrO)
+158 1238 y Fa(\360)193 1225 y(Q)220 1238 y(\036)220 1253
+y(\012)253 1208 y(\011)236 1238 y(g)250 1256 y(\013)287
+1189 y(\013)290 1205 y(\011)281 1238 y(X)p 334 1238 V
+48 w Fl(d)423 1205 y Fa(\011)415 1238 y(X)174 b(\372)619
+1277 y(\012)643 1238 y(\346\307)679 1252 y(\011)679 1260
+y(.)676 1275 y(\013)699 1203 y(\013)694 1238 y(X)697
+1253 y(\012)743 1238 y Fl(,dh)30 b Fa(X)858 1253 y(\012)1073
+1186 y(\013)1052 1238 y(\270)t(@)1131 1203 y(\013)1126
+1238 y(X)1135 1253 y(.)1175 1238 y Fl(,d)g Fa(X)1262
+1253 y(.)1460 1186 y(\014)1451 1238 y(\310)t(\360)1525
+1197 y(\022)1521 1238 y(X)d Fl(:d)1653 1197 y Fa(\022)1650
+1238 y(X)1843 1225 y(:)5 b(6)162 1324 y Fk(7:)25 b(r)h(rIla)f(,r)g
+(bagha,ru)f(z)i(zAla)e(s)i(sijju)166 1360 y Fa(\014)165
+1373 y(\017)166 1408 y(d)180 1395 y(\031)220 1391 y(\205)220
+1409 y(\013)260 1408 y Fl(s)k Fa(\200)596 1356 y(\013)588
+1408 y(\310)s(@)644 1373 y(\013)637 1408 y(R)25 b Fl(z)30
+b Fa(R)1000 1368 y(\014)998 1383 y(\020)998 1391 y(\020)993
+1408 y(Q)1024 1373 y(\013)1020 1408 y(\352\302)1083 1380
+y(\013)1081 1408 y(K)1086 1423 y(.)1124 1408 y Fl(,r)1198
+1383 y Fa(\020)1198 1391 y(\020)1193 1408 y(P)1454 1356
+y(\013)1441 1408 y(\311K)1481 1423 y(\012)1503 1408 y(P)1509
+1443 y(\013)1556 1408 y Fl(r)21 b Fa(P)1843 1395 y(:)5
+b(7)162 1490 y Fk(8:)25 b(^s)h(^sInhun)e(.s)h(.sUfu)g(.d)g(.da`Ifu)f
+(.t)i(.tO.tO)158 1564 y Fa(\361\243)l(\361\243)f Fl(.t)31
+b Fa(\240)583 1512 y(\014)559 1564 y(\363)q(J)620 1579
+y(\012)637 1564 y(\252)646 1582 y(\013)685 1529 y(\013)668
+1564 y(\233)25 b Fl(.d)30 b Fa(\230)1031 1512 y(\014)1009
+1564 y(\362)l(\361)1113 1529 y(\014)1095 1564 y(\223)c
+Fl(.s)31 b Fa(\220)1443 1551 y(\011)1428 1564 y(\341)1469
+1529 y(\014)1465 1564 y(\352)1491 1537 y(\011)1485 1564
+y(J)q(\034)1504 1579 y(\012)1523 1564 y(\213)1535 1582
+y(\013)1586 1564 y Fl(^s)f Fa(\210)1843 1551 y(:)5 b(8)162
+1646 y Fk(9:)25 b(.z)h(.zAlimu)e(`)h(`aynaka)f(.g)i(.gAlI^cO)e(f)h
+(fawjI)166 1727 y Fa(\372)173 1765 y(\012)197 1727 y(\346c)239
+1758 y(\013)269 1727 y(\361)305 1678 y(\013)309 1693
+y(\011)302 1727 y(\257)h Fl(f)k Fa(\362)154 b(\361zJ)686
+1741 y(\012)703 1727 y(\313)703 1745 y(\013)721 1727
+y(A)742 1678 y(\013)746 1693 y(\011)734 1727 y(\253)26
+b Fl(.g)881 1690 y Fa(\011)866 1727 y(\250)1077 1691
+y(\013)1057 1727 y(\235)1113 1684 y(\013)1116 1700 y(\011)1111
+1727 y(J)q(J)1128 1741 y(\012)1154 1691 y(\013)1145 1727
+y(\253)f Fl(`)31 b Fa(\250)1440 1708 y(\014)1439 1727
+y(\005)q(\322\313)1484 1745 y(\013)1501 1727 y(A)1526
+1674 y(\013)1514 1727 y(\247)25 b Fl(.z)31 b Fa(\244)1843
+1713 y(:)5 b(9)162 1812 y Fk(10:)25 b(ph)g(phUhArO)f(q)i(qalamu)e(k)i
+(kutO)f(kh)g(kha,ta)188 1864 y Fa(\013)187 1878 y(\022)166
+1906 y(I)232 1853 y(\013)224 1906 y(\273)c Fl(kh)29 b
+Fa(\270)144 b(\361)601 1879 y(\020)601 1906 y(J)639 1870
+y(\014)619 1906 y(\237)21 b Fl(k)30 b Fa(\234)965 1887
+y(\014)963 1906 y(\005)q(\322)1010 1853 y(\013)1008 1906
+y(\312)1028 1857 y(\013)1026 1872 y(\020)1024 1906 y(\257)c
+Fl(q)k Fa(\364)145 b(\360)t(P)t(A)1405 1870 y(\013)1397
+1906 y(\353)-5 b(\361)1459 1848 y(\014)1458 1864 y(\020)1458
+1872 y(\020)1456 1906 y(\257)26 b Fl(ph)1618 1864 y Fa(\020)1618
+1872 y(\020)1598 1906 y(\254)1805 1892 y(:)5 b(1)g(0)162
+1987 y Fk(11:)25 b(g)h(ga:dahu)e(:g)h(:gayrO)f(gh)i(ghO,rO)e(:n)i
+(si:na)187 2016 y Fa(\013)185 2031 y(\020)166 2082 y(\301)o(\203)232
+2099 y(\013)284 2082 y Fl(:n)381 2031 y Fa(\020)362 2082
+y(\300)141 b(\360)598 2057 y(\020)598 2065 y(\020)593
+2082 y(P)s(\361\352\303)21 b Fl(gh)30 b Fa(\354)838 2068
+y(\303)1015 2082 y(\360)1050 2068 y(Q)1077 2082 y(\036)1077
+2096 y(\012)1102 2029 y(\013)1094 2082 y(\303)1105 2095
+y(\011)1105 2104 y(.)1146 2082 y Fl(:g)g Fa(\300)1245
+2095 y(\011)1245 2104 y(.)1434 2046 y(\014)1425 2082
+y(\353)1470 2023 y(\013)1468 2037 y(\022)1460 2082 y(Y)1502
+2029 y(\013)1494 2082 y(\303)21 b Fl(g)30 b Fa(\300)1805
+2068 y(:)5 b(1)g(1)162 2163 y Fk(12:)25 b(l)h(la.ga,ru)d(m)j(ma^chI)e
+(n)i(nAngu)f(,n)g(wa,nu)176 2202 y Fa(\014)176 2223 y(\010)166
+2252 y(\340)213 2226 y(\013)204 2252 y(\360)h Fl(,n)350
+2223 y Fa(\010)340 2252 y(\340)599 2199 y(\014)579 2252
+y(\301)638 2224 y(\011)633 2252 y(K)5 b(A)669 2209 y(\013)672
+2224 y(\011)667 2252 y(K)27 b Fl(n)787 2224 y Fa(\011)773
+2252 y(\340)206 b(\372)1019 2290 y(\012)1042 2252 y(\346m)1065
+2282 y(\020)1065 2290 y(\012)1067 2308 y(\013)1084 2202
+y(\013)1077 2238 y(\327)1129 2252 y Fl(m)30 b Fa(\324)1437
+2211 y(\014)1435 2226 y(\020)1435 2235 y(\020)1430 2252
+y(Q)1466 2213 y(\013)1469 2228 y(\011)1457 2252 y(\252)1488
+2199 y(\013)1488 2252 y(\313)c Fl(l)j Fa(\310)1805 2238
+y(:)5 b(1)g(2)162 2356 y Fk(13:)25 b(w)h(wA:jO)e(h)i(hAthI)e('|)i('|)f
+(y)h(yakO)166 2430 y Fa(\361\236)256 2402 y(\013)254
+2430 y(K)254 2445 y(\012)297 2430 y Fl(y)k Fa(\370)372
+2462 y(\012)599 2430 y(Z)d Fk('|)j Fa(Z)198 b(\372)954
+2468 y(\012)978 2388 y(\020)978 2396 y(\020)978 2430
+y(G)980 2472 y(\013)999 2430 y(A)1020 2395 y(\013)1012
+2430 y(\353)26 b Fl(h)k Fa(\353)196 b(\361k)1410 2444
+y(\011)1410 2452 y(.)1438 2430 y(@)1462 2405 y(\013)1453
+2430 y(\360)25 b Fl(w)30 b Fa(\360)1805 2417 y(:)5 b(1)g(3)457
+2555 y Fj(T)l(able)16 b(2:)21 b(Examples)15 b(for)i(the)f(use)g(of)h
+(the)f(Sindhi)f(Alphab)q(et)1018 2744 y(3)p eop
+%%Trailer
+end
+userdict /end-hook known{end-hook}if
+%%EOF
diff --git a/language/arabic/arabtex/examples/uighur.dvi b/language/arabic/arabtex/examples/uighur.dvi
new file mode 100644
index 0000000000..e8717a9732
--- /dev/null
+++ b/language/arabic/arabtex/examples/uighur.dvi
Binary files differ
diff --git a/language/arabic/arabtex/examples/uighur.ps b/language/arabic/arabtex/examples/uighur.ps
new file mode 100644
index 0000000000..99851c8929
--- /dev/null
+++ b/language/arabic/arabtex/examples/uighur.ps
@@ -0,0 +1,679 @@
+%!PS-Adobe-2.0
+%%Creator: dvips 5.58 Copyright 1986, 1994 Radical Eye Software
+%%Title: uighur.dvi
+%%CreationDate: Tue Feb 03 19:04:34 1998
+%%Pages: 2
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 596 842
+%%EndComments
+%DVIPSCommandLine: F:\EMTEX\BIN\dvips32.exe uighur -pj:F:\TMP\dv2.mfj
+%DVIPSParameters: dpi=300, compressed, comments removed
+%DVIPSSource: TeX output 1997.09.30:1415
+%%BeginProcSet: texc.pro
+/TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N
+/X{S N}B /TR{translate}N /isls false N /vsize 11 72 mul N /hsize 8.5 72
+mul N /landplus90{false}def /@rigin{isls{[0 landplus90{1 -1}{-1 1}
+ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale
+isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div
+hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul
+TR[matrix currentmatrix{dup dup round sub abs 0.00001 lt{round}if}
+forall round exch round exch]setmatrix}N /@landscape{/isls true N}B
+/@manualfeed{statusdict /manualfeed true put}B /@copies{/#copies X}B
+/FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{
+/nn 8 dict N nn begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N
+string /base X array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N
+end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{
+/sf 1 N /fntrx FMat N df-tail}B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]
+N df-tail}B /E{pop nn dup definefont setfont}B /ch-width{ch-data dup
+length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{
+128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub
+get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data
+dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N
+/rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup
+/base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx
+0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff
+setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff
+.1 sub]/id ch-image N /rw ch-width 7 add 8 idiv string N /rc 0 N /gp 0 N
+/cp 0 N{rc 0 ne{rc 1 sub /rc X rw}{G}ifelse}imagemask restore}B /G{{id
+gp get /gp gp 1 add N dup 18 mod S 18 idiv pl S get exec}loop}B /adv{cp
+add /cp X}B /chg{rw cp id gp 4 index getinterval putinterval dup gp add
+/gp X adv}B /nd{/cp 0 N rw exit}B /lsh{rw cp 2 copy get dup 0 eq{pop 1}{
+dup 255 eq{pop 254}{dup dup add 255 and S 1 and or}ifelse}ifelse put 1
+adv}B /rsh{rw cp 2 copy get dup 0 eq{pop 128}{dup 255 eq{pop 127}{dup 2
+idiv S 128 and or}ifelse}ifelse put 1 adv}B /clr{rw cp 2 index string
+putinterval adv}B /set{rw cp fillstr 0 4 index getinterval putinterval
+adv}B /fillstr 18 string 0 1 17{2 copy 255 put pop}for N /pl[{adv 1 chg}
+{adv 1 chg nd}{1 add chg}{1 add chg nd}{adv lsh}{adv lsh nd}{adv rsh}{
+adv rsh nd}{1 add adv}{/rc X nd}{1 add set}{1 add clr}{adv 2 chg}{adv 2
+chg nd}{pop nd}]dup{bind pop}forall N /D{/cc X dup type /stringtype ne{]
+}if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup
+length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{
+cc 1 add D}B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin
+0 0 moveto /V matrix currentmatrix dup 1 get dup mul exch 0 get dup mul
+add .99 lt{/QV}{/RV}ifelse load def pop pop}N /eop{SI restore showpage
+userdict /eop-hook known{eop-hook}if}N /@start{userdict /start-hook
+known{start-hook}if pop /VResolution X /Resolution X 1000 div /DVImag X
+/IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for
+65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}N /RMat[1 0 0 -1 0
+0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V
+{}B /RV statusdict begin /product where{pop product dup length 7 ge{0 7
+getinterval dup(Display)eq exch 0 4 getinterval(NeXT)eq or}{pop false}
+ifelse}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale rulex ruley false
+RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR rulex ruley scale 1 1
+false RMat{BDot}imagemask grestore}}ifelse B /QV{gsave newpath transform
+round exch round exch itransform moveto rulex 0 rlineto 0 ruley neg
+rlineto rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta 0 N /tail
+{dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{S p tail}B /c{-4 M}
+B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{3 M}B /k{
+4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w}B /q{
+p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p
+a}B /bos{/SS save N}B /eos{SS restore}B end
+%%EndProcSet
+TeXDict begin 39158280 55380996 1000 300 300 (/ARABTEX.306/uighur.dvi)
+@start /Fa 1 18 df<383C07C038461860384720303887403813801300A2000E1370A4
+4813E0A4383801C0A43870038012301200A2EB0700A4130EA4130C15207E9418>17
+D E /Fb 84 250 df<387FFF80A21400B5FCA2110581840F>5 D<387FFF80A21400B5FC
+A2110581840F>7 D<1230127E127CA212FC12180706818505>9 D<EA30C0EA7FF8EA7DF0
+A212FFEA18600D067F850F>I<EA01C0EA03F0EA07F81338137813F0120313E0A21207EA
+0F40EA3E0012785A12400D0F808E0B>12 D<120E123F127E12F05AA213C0EAFFE0EA7FC0
+EA1F00127C12F012600B0D808C0B>I<EA30C0EA7FF8EA7DF0A212FFEA18600D067F850F>
+16 D<1206EA0FC01380A2121FEA0300C7FCEA30C0EA7FF8EA7DF0A212FFEA18600D0D7F
+8C0F>I<EA30C0EA7FF8EA7DF0A212FFEA1860C7FC1206EA0FC01380A2121FEA03000D0D
+7F850F>I<124012E0A612F01270A61220040F808E05>23 D<EA4040EAE0E012F1EA7FC0
+EA3F80EA0E000B0680850B>I<1230127CA312FC12380606818505>46
+D<12201260A2127012F0A212F8A212FC12F8A312F01270A812781238A8121CA71218A312
+1006297DA809>64 D<12201260A312E0A41260A21270AB12301238A7123CA37E121F13E0
+120F13C0120712010B277EA60C>I<1580A2EC01C0A215E012301270007814F0127C12FE
+6C14E01380EA7FC0D83FE013C0EA1FF0EA0FF81207EA02FCEA007E133FEC8180EB1FC1EB
+0FE11307EB03F1EB01F9EB00FDECFF008080EC1F80140F15C0143F14FF903803FB80EB07
+FFA215005B14FC1C297EA820>I<154015C01220123000781301127C12FE7E138001C07F
+EA7FE0123FEA1FF0EA0FF8EA07FCEA027CEA007E133F131F90380F8160ECC170EB07C2EB
+03E214E6EB01FCA2903800F878A2EB01F049487E90380FC03E90391F803FC090387F001F
+D801FC14804848130FD80FE01303484890C7FC48C9FC123E127812601240222A80A321>
+I<1602160317800020150717C012601603A200E0ED0180A27E17006C5D007C150F007F15
+3E01F0EB03FE6CB65A6C5D6C15E000011580D8003F01F8C7FC2A1580902E>72
+D<1220A21260174017E012E04C7E6C4B7EEE07FE6C92380EFFC0007CED3E7F007F9238FC
+3F8001F0903807F81F6CB6EAF0036C4BC7FC6C158000014AC8FCD8003F13F03212808D31
+>I<134013C0A2487E487EEA0FFC387EFF80A2387C7F00487EEAE00F110B818A0F>I<1320
+1360A2137013F01370A21360A3EA01C0127FA21380EAFF0012FC0C10818F0F>I<140414
+06140EA3140F1407A31403A614021406A2140C141C1478EB01F8EB0FF03801FFE0B512C0
+000F1300EA003C181B838916>80 D<140315C0A2EC0780A214031500A414021406A25C14
+1C5C14F8EB03F0EB1FE048B45AB55A000F90C7FCEA003C1A17838516>I<130EEB0F8013
+1FA21400130790C7FCA714041406140EA3140F1407A31403A614021406A2140C141C1478
+EB01F8EB0FF03801FFE0B512C0000F1300EA003C1828839616>I<130EEB0F80131FA291
+C7FC130790C8FCA5140315C0A2EC0780A214031500A414021406A25C141C5C14F8EB03F0
+EB1FE048B45AB55A000F90C7FCEA003C1A22839016>I<130EEB0F80131FA21400130790
+C7FCEB71C0EB7DF013FFA2EBFBE0133890C7FCA414041406140EA3140F1407A31403A614
+021406A2140C141C1478EB01F8EB0FF03801FFE0B512C0000F1300EA003C182C839A16>
+I<130EEB0F80131FA291C7FC130790C8FCEB71C0EB7DF013FFA2EBFBE0133890C8FCA514
+0315C0A2EC0780A214031500A414021406A25C141C5C14F8EB03F0EB1FE048B45AB55A00
+0F90C7FCEA003C1A29839716>I<5A13C0EA03F07F7F6C7E6C7EEB3F80131FEB0FC01307
+1303A2EB0180A3EB0700EA7FFFA25B485A13F012167F9513>88 D<1302A21307A25B7F80
+A2130380A380A3EB02F0130638400CF838603C7C38F0F87E00FFEB3FC013F09038E01F80
+387FC00F381F00031A197C981D>I<EB7FF00003B512C015FF5AA201805BEA0403C64813
+80D91FF0C7FCEB3FC0017EC8FC13F8485AEA03C05B48C9FC12065A120812181210123012
+20497E386003F05CA2130738E000C091C8FCA37EA27E1278127C127E7E7FEA1FE0EA0FF8
+EA07FE2603FFC0137C6C90B512F06C6C1480011FEBFC00010713E0D9007FC7FC26318091
+21>96 D<48B47E4813F848EBFFC015FFA2EA0401C75B13034913F090381FF0F890383FC0
+FC90397E007F8001F814F84848133FD803C0EB1FF049130748C71201000E91C7FC120C5A
+A212104813E014F8130112605CEB007000E090C8FCA47EA27EA2127C127E7E13C0EA1FF0
+EA0FFC6CB46C137C6C90B512F0C61580013FEBFC00010713E0D9007FC7FC2630809024>
+I<EBFFC04813FC48EBFFE0EDFF80A2EA0200C7001F1300147F903801FFF890380FFE7C90
+383FF87E3A03FFC03FC0007F010013FC01FC131F01F0EB0FF8D8FF80130300F8C8FCCAFC
+A81470147C14FCA25C1438261F819024>I<13FE3801FFC04813F814FEECFFC0D8020313
+F8C7387FFF80141FA249B51200130F48B512C0007F01FCC7FC14C001FCC8FCEAFFC000FC
+C9FCCAFCA81418143F143E147E147C140C211F819021>I<1360137C13FC5BA2133890C9
+FCA7EB7FF00003B512C015FF5AA201805BEA0403C6481380D91FF0C7FCEB3FC0017EC8FC
+13F8485AEA03C05B48C9FC12065A12081218121012301220A21260A412E0A47EA27E1278
+127C127E7E7FEA1FE0EA0FF8EA07FE2603FFC0137C6C90B512F06C6C1480011FEBFC0001
+0713E0D9007FC7FC263E809E21>112 D<14E014F81301A25CEB007091C8FCA848B47E48
+13F848EBFFC015FFA2EA0401C75B13034913F090381FF0F890383FC0FC90397E007F8001
+F814F84848133FD803C0EB1FF049130748C71201000E91C7FC120C5AA212105AA31260A3
+12E0A47EA27EA2127C127E7E13C0EA1FF0EA0FFC6CB46C137C6C90B512F0C61580013FEB
+FC00010713E0D9007FC7FC263E809E24>I<1470147C14FCA25C143891C8FCA8EBFFC048
+13FC48EBFFE0EDFF80A2EA0200C7001F1300147F903801FFF890380FFE7C90383FF87E3A
+03FFC03FC0007F010013FC01FC131F01F0EB0FF8D8FF80130300F8C8FC261F819E24>I<
+14C0EB01F85CA21303EB006091C8FCA813FE3801FFC04813F814FEECFFC0D8020313F8C7
+387FFF80141FA249B51200130F48B512C0007F01FCC7FC14C001FCC8FCEAFFC000FCC9FC
+211F819E21>I<EB7FF00003B512C015FF5AA201805BEA0403C6481380D91FF0C7FCEB3F
+C0017EC8FC13F8485AEA03C05B48C9FC12065A12081218121038300C3038201FFE147C12
+60EB3FFCEB061890C9FC38E00180EB03F05CA2EAF007EB00C06C90C8FC1278127C127E7E
+7FEA1FE0EA0FF8EA07FE2603FFC0137C6C90B512F06C6C1480011FEBFC00010713E0D900
+7FC7FC2631809121>120 D<48B47E4813F848EBFFC015FFA2EA0401C75B13034913F090
+381FF0F890383FC0FC90397E007F8001F814F84848133FD803C0EB1FF049130748C71201
+000E91C7FC120C5AEB071C001013DF4848B4FCA214BE3860038E90C9FC14E000E013F813
+01A25C38F0007091C8FC7EA2127C127E7E13C0EA1FF0EA0FFC6CB46C137C6C90B512F0C6
+1580013FEBFC00010713E0D9007FC7FC2630809024>I<EBFFC04813FC48EBFFE0EDFF80
+A2EA0200C7001F1300147F903801FFF890380FFE7C90383FF87E3A03FFC03FC0007F0100
+13FC01FC131F01F0EB0FF8D8FF80130300F8C8FCCAFCA8EC6180EC7DF014FFECFBE0A214
+3891C8FC140CEC0F80141F92C7FCA214072626819024>I<13FE3801FFC04813F814FEEC
+FFC0D8020313F8C7387FFF80141FA249B51200130F48B512C0007F01FCC7FC14C001FCC8
+FCEAFFC000FCC9FCCAFCA814C3903801FFE0ECF7C0EB03FFECEF80EB006191C8FC141814
+3F143E147E147C140C2126819021>I<170416010308130EA2ED1C03EE070CEE0F8C9238
+3C3FF8ED3FFF16FBEEF3F0002091381FE1E092380F8000030EC7FC1260A300E0140CA315
+087E1518151000781430007C1470007E5C383F80039038E01FC06CB55A6C91C8FC6C5B00
+0113F838003FC02F22808C2E>128 D<1720EE086003401370EDC01817F00201EB38F8EE
+7CFC03C1B5FC4AB612E016DF93389F9FC000206DEB0F0F913900FC000103E090C7FC1260
+A300E05CA35D7E14016C49C9FC007C5B007E131E383FC07EEBFFFC6C5B6C5B000313C0C6
+6CCAFC3320808C32>I<1504EC010C0108130EEB18030110131E903830071F91380F9F80
+9039F83FFFE0007FB612FC14FB9138F3F3F839FFBFE1E190390F800038260D818C24>I<
+1680152049EB21C0A2491361EDE18090380701F190391F87FF00007FB6FC81ECFE7E39FF
+F3FC3CD9C1F0C7FC220D818C20>I<160717C0A2160F1780160193C7FCEE38E0EE3EF8A2
+167FEE7DF0EE0C3093C7FCA7170416010308130EA2ED1C03EE070CEE0F8C92383C3FF8ED
+3FFF16FBEEF3F0002091381FE1E092380F8000030EC7FC1260A300E0140CA315087E1518
+151000781430007C1470007E5C383F80039038E01FC06CB55A6C91C8FC6C5B000113F838
+003FC02F3680A02E>136 D<1630163E167E167CA2161C93C8FCED0186EEF7C0ED03FFEE
+EF80A2ED00E393C8FCA71720EE086003401370EDC01817F00201EB38F8EE7CFC03C1B5FC
+4AB612E016DF93389F9FC000206DEB0F0F913900FC000103E090C7FC1260A300E05CA35D
+7E14016C49C9FC007C5B007E131E383FC07EEBFFFC6C5B6C5B000313C0C66CCAFC333480
+A032>I<1406EC07C0140F5DA2140391C8FCEC30C0EC3EF8147FEC7DF0A2EC1C7091C8FC
+A71504EC010C0108130EEB18030110131E903830071F91380F9F809039F83FFFE0007FB6
+12FC14FB9138F3F3F839FFBFE1E190390F800038262181A024>I<15E015F8A214015DEC
+003092C7FCEC071C15DFA24AB4FC15BEEC018691C8FCA71680152049EB21C0A2491361ED
+E18090380701F190391F87FF00007FB6FC81ECFE7E39FFF3FC3CD9C1F0C7FC222181A020
+>I<131FEB7FC0EBFFF03801FC1001F0C8FC13C0485A90C9FC7FA2EBC003EBE00FEBF83F
+3801FFFEA26C13F8EB7FE0EB1F8049C8FC137C5BEA01E0485A5B48C9FC120E120C5AA212
+105AA31260A312E0A47EA27E1278127C127E7E7FEA1FE0EA0FF8EA07FE2603FFC0137C6C
+90B512F06C6C1480011FEBFC00010713E0D9007FC7FC2639809920>168
+D<EB03FC90381FFF8081495BA214E7D90FFFC7FC7F4913C0013F13FC5B9038FF0FF83801
+F8033903E00078D8078090C7FC90C9FC120E120C5AA212105AA31260A312E0A47EA27E12
+7C127E6C7E7FEA1FF86CB46C137C6C90B512F0000115806C6CEBFC00010F13E0010090C7
+FC262D808D1D>I<EB0FF0EB7FFE80495AA214BEEB3FFC6D5AEB7FFF007FB512F0A29038
+FE3FE038FFF80FEB00011C0E818D1A>I<EB07C0EB1FF0497E497E017EC7FC13F813E05B
+7FA27F6D13E0EB7E0F90387FFFC07F15803903FFFE00007F13E091C7FC13F8EAFFC000FC
+C8FC1B1681951A>I<5BEB0FE0131FEB3FF0A2137FEB6070EBC060A300011340EBE0C013
+F1EBFF807E007F13FFA214FEB5FC13011814819316>174 D<13F0EA01FC48B4FCA25A38
+061F80EA070FEA0FFFA33807FB00EA01F3EA00031306131EEA01FC127F5B5BEAFFC000FC
+C7FC1115819410>I<16801503150FED7F004A5AEC07FEEC1FF8EC7FE0903801FF80D907
+FCC7FCEB1FF0EB7FC049C8FCEA01FCEA03F013C05B0006C9FC1207487E7F7F6C7E6C7EEA
+01FE6C7E6D7EEB3FE06D7E6D7E6D7E80EB047F90380C3F8090381C1FE09038780FF83903
+F807FE3A7FF003FFE049C6FC49EB7FC048C7121F00F81403232A81A921>186
+D<16801503150FED7F004A5AEC07FEEC1FF8EC7FE0903801FF80D907FCC7FCEB1FF0EB7F
+C049C8FCEA01FCEA03F013C05B0006C9FC1207487E7F7F6C7E6C7EEA01FE1200137F7F7F
+7F1306A21304130C131C1378EA03F8EA7FF05B5B48C9FC12F8212A81A91A>I<5CA2EC03
+80A215C0A315E0A2140115C0A4010213E0EB0F00131E5B5B1370A2017F13F090383FC070
+EB0FE013001383EA01FF14C038007C0090C71260121012300020EB01C0007FB5FC1580A2
+B612006C13FC1C2680A51D>I<154015C0A31401A3140081A41480EB01C01303EB0780EB
+0F00130EA290380FC070381007F0383001F838200038EB10F8EA603F14F090380F007800
+F0C7FC15F86CEB03FC6CEB0FBE007F90387FBFC090B5121F6C01FE13806CEBF80F0007EB
+E003000190C8FC222580A321>I<1840EF01E01707EF1F80EF7E00933801F818933807E0
+7893381F81F0EE7E07923901F83FE0923803E0FFDB018313009238000FFCEE1FF0EE7FC0
+4CC7FCED01FCED03F016C04BC8FC15061504150CA3151CA5151E150EA312200060140FA2
+8100E081A27E6C6EC8FC6C5CD87FC0133E90B512FE7E6C5C00075CC61480353180AE2E>
+192 D<1840EF01E01707EF1F80EF7E00933801F818933807E07893381F81F0EE7E079239
+01F83FE0923803E0FFDB018313009238000FFCEE1FF0EE7FC04CC7FCED01FCED03F016C0
+4BC8FC15061504150CA3151CA5151E150EA312200060140FA28100E081A26C816CEC03F0
+6C913807FFFED87FC0133F90B75A6C5C6CECFC1F00074AC8FCC61480353180AE2E>I<15
+04151E157EEC01F8EC07E091381F8080EC7E03903801F80F903907E07F0090381F81FF90
+387E07FE3901F81FF83903E07FE0390781FF80260207FCC7FC38001FF0EB7FC049C8FCEA
+01FCEA03F013C05B0006C9FC1207487E7F7F6C7E6C7EEA01FE6C7E6D7EEB3FE06D7E6D7E
+6D7E80EB047F90380C3F8090381C1FE09038780FF83903F807FE3A7FF003FFE049C6FC49
+EB7FC048C7121F00F81403232F81AE21>I<1504151E157EEC01F8EC07E091381F8080EC
+7E03903801F80F903907E07F0090381F81FF90387E07FE3901F81FF83903E07FE0390781
+FF80260207FCC7FC38001FF0EB7FC049C8FCEA01FCEA03F013C05B0006C9FC1207487E7F
+7F6C7E6C7EEA01FE1200137F7F7F7F1306A21304130C131C1378EA03F8EA7FF05B5B48C9
+FC12F8212F81AE1A>I<14021406A2140FA31580A215C01580A3150080A8EC0380A61208
+A20018EB01C0121012301220A21260A312E01580A36C1400A200785B007C1306007E131E
+383FC07CEBFFFC6C5B6C5B000313C0C690C7FC1A3480A51A>200
+D<154015C0A31401A56E7EAB81A681A38181EDFFC0A21680002014EF15E3EDE0001260A3
+00E05CA35D7E14016C49C7FC007C5B007E131E383FC07EEBFFFC6C5B6C5B000313C0C66C
+C8FC223780A321>I<7F1201A31203A37F1201A97FA21200A77FA37F7F387FFF8013BFEB
+3F00487EEAFE07112481A30F>I<12021203A2EA0780A313C0A21203A31380AB1201A213
+C0A51380A3EA0700127FA2127E5A12F00A2681A50C>I<131E133FEB7F8013FF4813C0EA
+03C7EB83E0380701F0380F81F8387FC0FF13F0387BFFFE12F300E113CEC61380EB3F0018
+10818D16>210 D<1307EB0FC0EB1FE014F0133F1331EB60F8EB707813F83801FE383807
+FF30007F13F0EB3FE0EA7E1FEAFC0738F001C01510818F13>I<EB0180EB03C014E01307
+14F0130D130CEB1E78133E13FF000713B8387FEFF013CF138738FE03E0EAF8001510818F
+0F>I<1580140115C0140315E01401A2EC00F0A200201470157812601538A312E0A21530
+7EA26C1420007C1460007E14E0393F8003C0EBE01F6CB512806C14006C5B000113F83800
+3FC01D1E80921D>224 D<15101538153CED3F80157F160012208115381260A3153012E0
+A215207E15606C5C007C1301007E495A383F800FD9E07FC7FC381FFFFE6C5B6C5B000113
+E038003F80211C808720>I<1203EA07C0EA0FE013F0EA1FF81219EA10FCEA207C133C13
+3EEA601EA2130EEAE00CA212F0EAF838EAFFF8127F13F0EA3FE0EA0FC00F1680950F>
+232 D<1340136013E01201120F121F123FA2EA3CF0EA7070A2EAFFF0A27F127FEA1FFCEA
+003EEB3FC0A2EB1F80130F13031216819510>I<1318133CA2137CA213D8139812015B13
+F0EA07E0387FFFC0A21480B5FCA238077E007F139F138FEA038E13C613FCA212015B6C5A
+121B818F10>I<130C131F8014E0497E6D7E497E497E80A201C113809038C0CFC0EBE0C7
+3901F383E013FF6C13810003EBF9C0007F13FFA201E7138048C6FC00F8EB1F001B168195
+1A>I<13F03801FCC0000313E0EBFFF0A238061FF8130C0007137CEA0FB8EBF83E3807FC
+1E380FFF9E007F13FCA2133F38FC07F8EAF000171181900F>I<EB0780EB0FE014F014F8
+131FEB18FCEB3C7CEB3E3EEB3F9EEB1FFE14FF7F7F1301EB0003A514021406A2140C141C
+143814F8EB03F0EB1FE03801FFC0B51280000F1300EA003C18207F8E1A>240
+D<EB03C0EB07F080A2497EEB0C7CEB1C3EEB1E1EEB1F1F14CF90380FFFF8A26D13F07FEB
+007FEC0380A415005CA2140E141E5C14FCEB03F8EB1FF048B45AB55A000F90C7FCEA001E
+1D207F8E1D>I<1630163E167E167CA2161C93C8FCA417F0EE01FC4CB4FCA39338061F80
+170FEE0F07002016FFA2701300006016FBEE01F3EE0002A200E016065F173C17F86C1503
+6CED1FF000FE4AB45A267FC001B55A90B7C7FC6C15FC6C15E0000702FCC8FCC649C9FC31
+2680A431>I<1618163F163E167E167C160C93C8FCA4177CEE01FE002015031607830060
+ED0F0F160CEE080700E0ED1806A216386CED3C0C6C163C6CED3FF8127F01E090381FFFF0
+6CB812E07E000717C0000115C1D8003F9038E0003F331F809E32>I<EC71C0EC7DF0A214
+FFECFBE0EC186091C8FCA715F0EC01FC4AB4FCA25C9138061F80EC070FEC0FFF1220A200
+60903807FB00EC01F3EC00031502A200E014061504150C151C6C5C15F86C495A6CEB07E0
+397F807FC090B55A6C91C7FC6C13FC000713F0C61380212A80A121>I<EC71C0EC7DF0A2
+14FFECFBE0EC186091C8FCA9EC01E0EC03F881811407EC063E81EC0E0F140F158715E700
+20903807FFC0A26E138000607FEC003FED0C00150800E014185D6C14705D6C13036CEB0F
+C0397F807F8090B5C7FC6C5B6C13F8000713E0C690C8FC222D809E21>I<167CED01FE15
+07ED0FFC151FED3F0CED7C08ED70005D5D4A5A92C7FCA200105B5AEC07C015FF006015E0
+16F0809138007FE0150100E0EC006016C015016CEC0780150F6CEC3F00007C14FE007FEB
+07FC9038C03FF06CB55A6C14806C49C7FC000313F838007FC02724819424>248
+D<157FEC03FFEC07FE0020130FA215800060EB1800141CEC1F80EC3FF000E014FCEC1FFE
+1407EC00FC6C141C15186C14786CEB01F8007FEB0FF09038C07FE06CB512C06C14006C13
+FC000313F038007F8020197F8420>I E /Fc 30 127 df<1218123C123E121E120EA512
+1CA2123812F812F01260070F779D1A>39 D<1230127812FCA2127812301200A912301278
+12FCA212781230061576941A>58 D<126012F0A27E1278127C123C123E121EA2121F7E7F
+12077F1203A27F12017F12007F1378A2137C133C133E131E131F7FA21480130714C01303
+14E01301A2EB00C013277DA21A>92 D<EA0180EA07C0EA1FF0EA3EF8EAF83EEAF01EEA40
+040F077B9D1A>94 D<EA1FF0EA3FFC487EEA780FEA300738000380A2137FEA07FF121FEA
+3F83EA7803127012E0A3EA7007EA780F383FFFFCEA1FFDEA07F016157D941A>97
+D<127E12FE127E120EA6133EEBFF80000F13E0EBC1F0EB8070EB0038120E141CA7000F13
+381478EB80F0EBC1E0EBFFC0000E138038063E00161E7F9D1A>I<EBFF80000313C0000F
+13E0EA1F01383C00C04813001270A25AA51270A2007813707E381F01F0380FFFE0000313
+C03800FE0014157D941A>I<EB0FC0131F130F1301A6EA01F1EA07FDEA0FFFEA1E0FEA3C
+07EA7803EA700112E0A7EA7003A2EA3807EA3E0F381FFFF83807FDFC3801F1F8161E7E9D
+1A>I<EA01F8EA07FF481380381E07C0EA3C01387800E01270481370A2B512F0A300E0C7
+FC1270A2007813707E381F01F0380FFFE0000313803800FE0014157D941A>I<EB07E0EB
+1FF0EB3FF8EB7878EBF030EBE000A4387FFFF0B5FCA23800E000AF383FFF804813C06C13
+80151E7F9D1A>I<3801F87C3807FFFE5A381E078C381C0380383801C0A5381C0380EA1E
+07381FFF005BEA39F80038C7FCA27E381FFF8014E04813F83878007C0070131C48130EA4
+0070131C0078133C003E13F8381FFFF0000713C00001130017217F941A>I<127E12FE12
+7E120EA6133EEBFF80000F13C013C1EB80E01300120EAC387FC3FC38FFE7FE387FC3FC17
+1E7F9D1A>I<13C0487EA26C5A90C7FCA6EA7FE0A31200AF387FFF80B512C06C1380121F
+7C9E1A>I<130C131EA2130C1300A6EA07FE120F1207EA000EB3A5131C1260EAF038EAFF
+F8EA7FF0EA1FC00F2A7E9E1A>I<12FEA3120EA6EB0FFC131F130FEB03C0EB0780EB0F00
+131E5B5B13FC120F13DE138F380E07801303EB01C014E0EB00F038FFE3FEA3171E7F9D1A
+>I<EA7FE012FF127F1200B3A6387FFFC0B512E06C13C0131E7D9D1A>I<387CE0E038FFFB
+F8EA7FFF381F1F1CEA1E1EA2EA1C1CAC387F1F1F39FFBFBF80397F1F1F00191580941A>
+I<EA7E3E38FEFF80007F13C0EA0FC1EB80E01300120EAC387FC3FC38FFE7FE387FC3FC17
+157F941A>I<EA01F0EA07FCEA1FFF383E0F80EA3C07387803C0EA700138E000E0A6EAF0
+01007013C0EA7803383C0780EA3E0F381FFF00EA07FCEA01F013157D941A>I<EA7E3E38
+FEFF80007F13E0380FC1F0EB8070EB0038120E141CA7000F13381478EB80F0EBC1E0EBFF
+C0000E1380EB3E0090C7FCA8EA7FC0487E6C5A16207F941A>I<3801F8E0EA07FEEA0FFF
+EA1E07EA3C03EA78011270EAE000A613011270EA7803123CEA1E0FEA0FFFEA07FCEA01F0
+C7FCA8EB0FFEA317207E941A>I<387F81F838FF8FFC387F9FFE3803FE1EEBF80CEBE000
+A25B5BAAEA7FFFB5FC7E17157F941A>I<3807FB80EA1FFF127FEA7807EAE003A30078C7
+FCEA7FC0EA1FFCEA07FE38003F801307386001C012E0A2EAF00338FC0780B51200EAEFFE
+EAE3F812157C941A>I<487E1203A6387FFFE0B5FCA238038000AA1470A43801C1E013FF
+6C1380EB3F00141C7F9B1A>I<387E07E0EAFE0FEA7E07EA0E00AD1301EA0F033807FFFC
+6C13FE3800FCFC17157F941A>I<38FF83FEA338380038A26C1370A31338137CA2380C6C
+60380EEEE0A413C6000613C0EA07C71383A217157F941A>119 D<387FC7F8EBCFFCEBC7
+F8380703C038038380EBC700EA01EFEA00FE137C13781338137C13EE120113C738038380
+000713C0EA0F01387FC7FC00FF13FE007F13FC17157F941A>I<387F83FC38FFC7FE387F
+83FC380E00E0A27EEB01C0A2EA0381EB838013C31201EBC700EA00E7A213E61366136E13
+3CA31338A35BA2EA30F0EA78E01271EA7FC06C5A001EC7FC17207F941A>I<387FFFF8B5
+FCA238E000F0EB01E0EB03C038000780EB0F00131E137C5B485AEA03C0485A380F003812
+1E5A5AB512F8A315157E941A>I<EA0703381F8780EA3FCF38F9FE00EAF0FCEA60701106
+7C9D1A>126 D E /Fd 50 128 df<EB1FC0EB7020EBC0103801803800031378EA070014
+3091C7FCA7B512F8380700781438B2397FE1FF80192380A21B>12
+D<EAC060EA60C0EA3B80EA1F00120E12040B067A9E18>20 D<132013401380EA01005A12
+061204120CA25AA25AA312701260A312E0AE1260A312701230A37EA27EA2120412067E7E
+EA0080134013200B327CA413>40 D<7E12407E7E12187E12041206A27EA2EA0180A313C0
+1200A313E0AE13C0A312011380A3EA0300A21206A21204120C5A12105A5A5A0B327DA413
+>I<127012F812FCA212741204A41208A21210A212201240060F7C840E>44
+D<127012F8A3127005057C840E>46 D<EA01F0EA071CEA0C06487E00381380A2387001C0
+A400F013E0AE007013C0A3EA780300381380A2381C0700EA0C06EA071CEA01F013227EA0
+18>48 D<13801203120F12F31203B3A9EA07C0EAFFFE0F217CA018>I<EA03F0EA0C1CEA
+100700201380384003C0A2008013E012F0EAF801A3EA2003120014C0A2EB07801400130E
+5B13185B5B5B485A90C7FC000213205A5A00181360481340383FFFC05AB5FC13217EA018
+>I<EA03F8EA0C1EEA100F38200780004013C0127813031307123800001380A214005B13
+0C1338EA03F0EA001C130FEB0780A2EB03C0A214E01220127012F8A200F013C01240EB07
+80122038100F00EA0C1CEA03F013227EA018>I<1303A25BA25B1317A213271367134713
+87120113071202120612041208A212101220A2124012C0B512F838000700A7EB0F80EB7F
+F015217FA018>I<00101380381E0700EA1FFF5B13F8EA17E00010C7FCA6EA11F8EA120C
+EA1C07381803801210380001C0A214E0A4127012F0A200E013C01280EA40031480382007
+00EA1006EA0C1CEA03F013227EA018>I<137EEA01C138030080380601C0EA0C03121C38
+1801800038C7FCA212781270A2EAF0F8EAF30CEAF4067F00F81380EB01C012F014E0A512
+70A3003813C0A238180380001C1300EA0C06EA070CEA01F013227EA018>I<1240126038
+7FFFE014C0A23840008038C0010012801302A2485A5BA25B5BA21360134013C0A21201A2
+5B1203A41207A76CC7FC13237DA118>I<EA01F8EA060EEA0803381001801220386000C0
+A31270A238780180003E1300EA3F02EA1FC4EA0FF812036C7EEA067EEA083F38100F8038
+3007C0EA6003EB00E05A1460A40060134014C06C138038180300EA0E0EEA03F013227EA0
+18>I<EA01F0EA060C487EEA1807383803801270A238F001C0A314E0A5127013031238EA
+1805120CEA0619EA03E1380001C0A3EB0380A21230387807001306EA700CEA20186C5AEA
+0FC013227EA018>I<B612FEA2C9FCA8B612FEA21F0C7D9126>61
+D<497EA3497EA3EB05E0A2EB09F01308A2EB1078A3497EA3497EA2EBC01F497EA248B512
+80EB0007A20002EB03C0A348EB01E0A348EB00F0121C003EEB01F839FF800FFF20237EA2
+25>65 D<B612C0380F80070007130114001540A215601520A314201500A3146014E013FF
+138014601420A315081400A21510A31530A2157015E0000F1303B6FC1D227EA121>69
+D<B512F0380F803C0007130FEC078015C0140315E0A615C014071580EC0F00143CEBFFF0
+0180C7FCAE487EEAFFFC1B227EA121>80 D<007FB512F839780780780060141800401408
+A300C0140C00801404A400001400B3A3497E3801FFFE1E227EA123>84
+D<39FFFC07FF390FC000F86C4813701520B3A5000314407FA2000114806C7E9038600100
+EB3006EB1C08EB03F020237EA125>I<397FF803FF390FE001F83907C000E06C6C5B0001
+5CEBF001D800F890C7FCEB7802EB7C04133EEB1E08EB1F10EB0FB0EB07A014C06D7E1301
+80497EEB0278EB047CEB0C3EEB081EEB101F496C7E140701407F496C7E1401D801007F48
+6D7E5AD81F807F3AFFC003FFC022227FA125>88 D<EA1FE0EA3038EA780C130EEA300712
+00A313FFEA07C7EA1E07123C1278127000F01308A3130FEA7817383C2390380FC1E01515
+7E9418>97 D<120E12FE121E120EAB131FEB61C0EB8060380F0030000E1338143C141C14
+1EA7141C143C1438000F1370380C8060EB41C038083F0017237FA21B>I<EA01FEEA0703
+380C0780121C383803000078C7FC127012F0A712700078134012386C1380380C0100EA07
+06EA01F812157E9416>I<14E0130F13011300ABEA01F8EA0704EA0C02EA1C01EA380012
+78127012F0A7127012781238EA1801EA0C0238070CF03801F0FE17237EA21B>I<EA01FC
+EA0707380C0380381C01C01238007813E0EA700012F0B5FC00F0C7FCA512700078132012
+386C13406C138038070300EA00FC13157F9416>I<133E13E33801C780EA0387130748C7
+FCA9EAFFF80007C7FCB27FEA7FF0112380A20F>I<14703803F198380E1E18EA1C0E3838
+0700A200781380A400381300A2EA1C0EEA1E1CEA33F00020C7FCA212301238EA3FFE381F
+FFC06C13E0383000F0481330481318A400601330A2003813E0380E03803803FE0015217F
+9518>I<120E12FE121E120EABEB1F80EB60C0EB80E0380F0070A2120EAF38FFE7FF1823
+7FA21B>I<121C123EA3121CC7FCA8120E127E121E120EB1EAFFC00A227FA10E>I<13E0EA
+01F0A3EA00E01300A81370EA07F012001370B3A51260EAF0E013C0EA6180EA3F000C2C83
+A10F>I<120E12FE121E120EABEB03FCEB01F014C01480EB02005B5B5B133813F8EA0F1C
+EA0E1E130E7F1480EB03C0130114E0EB00F014F838FFE3FE17237FA21A>I<120E12FE12
+1E120EB3ADEAFFE00B237FA20E>I<390E1FC07F3AFE60E183803A1E807201C03A0F003C
+00E0A2000E1338AF3AFFE3FF8FFE27157F942A>I<380E1F8038FE60C0381E80E0380F00
+70A2120EAF38FFE7FF18157F941B>I<EA01FCEA0707380C0180381800C0003813E04813
+70A200F01378A700701370007813F0003813E0381C01C0380E038038070700EA01FC1515
+7F9418>I<EA0E1F38FE61C0380E8060380F0070000E1338143CA2141EA7143CA2143800
+0F1370380E80E0EB41C0EB3F0090C7FCA9EAFFE0171F7F941B>I<3801F82038070460EA
+0E02EA1C01003813E0EA7800A25AA71278A2EA3801121CEA0C02EA070CEA01F0C7FCA9EB
+0FFE171F7E941A>I<EA0E3CEAFE46EA1E8FEA0F0F13061300120EAD120FEAFFF010157F
+9413>I<EA0F88EA3078EA601812C01308A212E0EAF000127FEA3FE0EA0FF0EA01F8EA00
+3CEA801C130CA212C01308EAE018EAD030EA8FC00E157E9413>I<1202A41206A3120E12
+1E123EEAFFFCEA0E00AB1304A6EA07081203EA01F00E1F7F9E13>I<000E137038FE07F0
+EA1E00000E1370AD14F0A238060170380382783800FC7F18157F941B>I<38FF80FE381E
+00781430000E1320A26C1340A2EB80C000031380A23801C100A2EA00E2A31374A21338A3
+131017157F941A>I<39FF8FF87F393E01E03C001CEBC01814E0000E1410EB0260147000
+071420EB04301438D803841340EB8818141CD801C81380EBD00C140E3900F00F00497EA2
+EB6006EB400220157F9423>I<38FF83FE381F00F0000E13C06C1380EB8100EA0383EA01
+C2EA00E41378A21338133C134E138FEA0187EB0380380201C0000413E0EA0C00383E01F0
+38FF03FE17157F941A>I<38FF80FE381E00781430000E1320A26C1340A2EB80C0000313
+80A23801C100A2EA00E2A31374A21338A31310A25BA35B12F05B12F10043C7FC123C171F
+7F941A>I<383FFFC038380380EA300700201300EA600EEA401C133C1338C65A5B12015B
+38038040EA07005A000E13C04813805AEA7801EA7007B5FC12157F9416>I<EA6030EAF0
+78EAF8F8EAF078EA60300D057BA118>127 D E /Fe 14 122 df<1238127C12FEA3127C
+1238070774861F>46 D<1238127C12FEA3127C12381200AC1238127C12FEA3127C123807
+1A74991F>58 D<EB1F80EB7FE03801FFF83803F07C3807C03C48487E1300381E03EF383C
+0FFF5B38381E3F39783C1F80EB780FA238F0700713F0A7017013003878780FA2EB3C1E38
+381E3C383C1FFC6D5A381E03E06CC8FC90388007803807C00F3903F03F003801FFFE3800
+7FF8EB1FC019257DA41F>64 D<EA07FCEA1FFF4813C0383E03E06D7EEA1C00C71278A4EB
+3FF8EA01FF1207381FE078EA3E005A12785AA4007813F8EA7E036CB512E0000F133F3803
+FC0F1B1A7D991F>97 D<EB7FE03801FFF8000713FC380FC07CEA1F00003E1338003C1300
+5AA2127012F0A612701278A26C133C123E6C137C380FC0F83807FFF0000113E038007F80
+161A7C991F>99 D<90387C0F803901FF3FC00007EBFFE0380F83F1D81F0113C0391E00F0
+00481378A66C5BEA1F01380F83E048B45A001D90C7FCEA1C7C003CC8FCA37E381FFFE06C
+13F814FE487F393C003F8048130FEC07C0481303A40078EB0780A2003EEB1F00381F807E
+6CB45A000313F038007F801B287E991F>103 D<137013F8A3137090C7FCA7EA7FF812FF
+127FEA0078B3A2B512F8A315267BA51F>105 D<EA7F8012FF127F1207A8903887FFC015
+E015C09038807E005CEB81F8EB83F0EB87E0EB8FC0EB9F8001BFC7FC13FF808013F3EBE3
+E0EBC1F0138080147C143C80141F397FF87FE039FFFCFFF0397FF87FE01C257FA41F>
+107 D<EAFFF8A3EA0078B3ADB512FCA316257CA41F>I<38FE3C0F9038FE3F80B5EA7FC0
+381FCFF3903887E1E0EB07C1A2001E1381B039FFC7F1FCEBCFF3EBC7F11E1A80991F>I<
+13FCEA03FF481380381F87E0EA1E01383C00F0007C13F800781378A248133CA76C137C00
+781378A2007C13F8003C13F0381E01E0EA1F873807FF806C1300EA00FC161A7C991F>
+111 D<387FE07E39FFE1FF80D87FE313C03801EF87EBFF079038FC038049C7FCA25BA35B
+AC387FFFE0B5FC7E1A1A7E991F>114 D<137013F0A6387FFFFEB5FCA2D800F0C7FCADEC
+0780A5EC0F00EB7C1FEB3FFE6D5AEB07F019217FA01F>116 D<397FF0FFE0486C13F06C
+4813E0390F800F000007131EA2EA03C05CA2EA01E0147C1478EA00F0A25C1378A2EB38E0
+1339133DEB1DC0A2131F130F5CA391C7FCA25B131EA2EA383EEA7C3C137C5BEA7FF06C5A
+EA0F801C277F991F>121 D E /Ff 41 128 df<EB3F80EBE1E03801C070380380780007
+133C130048133EA5143C1478147014E0EB03C038FF1E00EB0380380F01C0EB00E0147014
+78143CA2143EA2141E141FA8141E130CEB1E3CA2EB1C3838FF0870EB07C0182A7EA91D>
+25 D<127812FCA212FEA2127A1202A41204A31208A212101220124007127B8510>44
+D<EAFFFEA30F037F8E14>I<137E3801C380380700E0000E1370001E1378001C1338003C
+133CA20038131C0078131EA400F8131FAF0078131EA4007C133E003C133CA2001C133800
+1E1378000E13706C13E03801C38038007E0018297EA71D>48 D<132013E01201120F12FF
+12F11201B3AD487EB512C0A212287BA71D>I<EA01FCEA07FF380C0FC0381803E0382001
+F01260384000F8A200F813FC7E147CA3007813FCC7FC14F8A2EB01F0A2EB03E014C0EB07
+801400130E5B5B13305B5B485A3803000412024813085A5A481318383FFFF84813F0B5FC
+A216287DA71D>I<00181330001E13E0EA1FFF14C014005BEA11F00010C7FCA813FCEA13
+07381401C0001813E0EA1000C712F01478A3147CA3127012F8A314781280004013F814F0
+1260383001E0381803C0380E0F803807FE00EA01F816297DA71D>53
+D<EB0FC0EB3FF0EBF018EA01C03803803C3807007C5A000E1338001E13005AA35AA3EAF8
+3FEBC1C038F900E000FA1370143800FC133C141EA25A141FA41278A46C131EA2001C133C
+121E000E13786C13703803C1E03801FFC038007E0018297EA71D>I<12201238003FB5FC
+A214FE5A3860000400401308A21410481320A2C712401480A2EB01001302A25BA2130C5B
+A31338A213781370A213F0A51201A76C5A182A7DA81D>I<137E3801FF80380781C0380F
+00E0001E1370481338A248133CA200F8131EA4141FA41278143FA27E001C135F7E6C139F
+3803831FEA00FCEB001EA3143E143CA21438001C1378003E137014E0383C01C038180380
+381C0F00EA0FFEEA03F818297EA71D>57 D<14101438A3147CA314BEA3EB011FA3903802
+0F80A201047F1407A201087F1403A2496C7EA3496C7EA390387FFFFCA29038C0007E4913
+3EA248C7123F81A20002EC0F80A21206ED07C0001FEC0FE0D8FFE0EBFFFEA2272A7EA92C
+>65 D<B6FC15C0390FC003F00007EB00F881157E153E153FA6153E157E157C5D4A5AEC07
+E090B512809038C001F06E7E153E153F811680150F16C0A6ED1F80A2ED3F00A215FE000F
+EB01F8B65A158022297DA829>I<B67E15F03907E001FC0003EB003E81ED0F80ED07C0ED
+03E0ED01F0A2ED00F8A216FC167CA3167EAA167CA216FC16F8A2ED01F0A2ED03E016C0ED
+0780ED1F00153E0007EB01FCB612F0158027297EA82D>68 D<B7FCA23907E0003F000314
+07ED03801501A21500A416405CA21600A25CA2140F90B5FCA2EBE00F1403A2801620A391
+C7FC1640A416C0A215011503ED07800007143FB7FCA223297EA828>I<02FF13100107EB
+E03090381FC07890393E000C7001F8EB06F048481303484813014848130048481470A248
+C812305A123E1610127EA2007C150012FCA892B5FC127C007EEC03F01501123EA2123F7E
+6C7EA26C7E6C7E6C6C13026C7E013EEB0C7090391FC03830903907FFE0100100EB800028
+2B7DA92E>71 D<EAFFFEA2EA0FE0EA07C0B3B1EA0FE0EAFFFEA20F297DA815>73
+D<B538800FFEA23A07F00003F06C48EB01C0160015025D5D5D5D5D5D4AC7FC14025C5C14
+18143C147E14BEEBE11F01E27FEBE40F9038E807C001F07FEBE0036E7E811400157C157E
+153E81A2ED0F8016C0150716E0486C14F8B538803FFFA228297EA82E>75
+D<B512C0A2D807F0C7FC6C5AB3A41501A41502A41506A2150E151E157C0007EB01FCB6FC
+A220297EA825>I<D8FFE0913807FF80A20007EEF000D802F0EC0BE0A201781413A36D14
+23A36D1443A26D1483A3903907800103A3903803C002A2903801E004A3903800F008A2EC
+7810A3EC3C20A3EC1E40A2EC0F80A30007EB0700D80F804A7ED8FFF891B5128014023129
+7EA836>I<D8FFE0EB3FFE7FD803F8EB03E00002EC01C0017CEB0080137E133E7FA26D7E
+8013076D7E8013016D7E80147C80143F80EC0F8015C01407EC03E015F01401EC00F8A215
+7C157E153E151FA2150F1507A200071403486C1301EAFFF8150027297EA82C>I<B512FC
+ECFFC03907E007F00003EB00F8157C81153F811680A61600153EA215784A5AEC07C0D9FF
+FEC7FCEBE007EC03C06E7E6E7E811578157CA4157EA41601157F153F486CEB1F02B53880
+0F82ED0784C8EA01F8282A7EA82B>82 D<EBFE013803FF83380F81E3381E003748131F00
+387F00787F127000F07FA3807EA26C90C7FC127E127FEA3FE0EA1FFE380FFFE06C13F86C
+7FC66C7EEB07FFEB007FEC1F80140FEC07C0A26C1303A47E1580A26C13076C14006C130E
+00EE5B38C3C07838C1FFF038803FC01A2B7DA921>I<D8FFFE903801FF80A2D80FE09038
+007C00000715306C6C142000015D7F00005D6D1301017E91C7FC013E1302133F6D5BEC80
+0C90380FC00801075B14E001035BECF060903801F84001005B14FC027DC8FC147F143EAE
+147E90380FFFF0A229297FA82C>89 D<EA03FCEA0C0738100380383C01C0003E7F6D7E12
+1C1208C7FCA3137FEA03E0EA0F80EA1E005A127C0078144012F8A31301127C393C027880
+381E0C7F3907F01E001A1A7E991D>97 D<13FC38038780380701C0000E13E0EA1C00003C
+13F0A2481378A212F8A2B512F800F8C7FCA51278A26C1308A26C1310000E13206C134038
+01C18038007E00151A7E991A>101 D<131FEB70C0EBE1E0EA01C31203EB81C038078080
+1400A9EAFFFEA2EA0780B3A37FEA7FFCA2132A7FA912>I<140F3901FC30803807074338
+0E03C3001EEBC100486C7EA2007C7FA5003C5BA26C485A000E5BD81707C7FCEA11FC0030
+C8FCA47E381FFF806C13F06C7F3818007C48131E0070130E00607F12E0A40070130EA26C
+5B6C5B380781E0C6B4C7FC19287E9A1D>I<121E123FA4121EC7FCA9120FB4FCA2121F7E
+B3A2EAFFF0A20C297EA811>105 D<120FB4FCA2121F7EACECFFC0A2EC7E0014305C1440
+5C0103C7FC1304130C131E133E135F138FEB0780801303806D7E1300801478147C147E39
+FFF1FFE0A21B2A7EA91F>107 D<120FB4FCA2121F7EB3B2EAFFF0A20C2A7EA911>I<3A0F
+07F007F03AFF183818389039201C201C3A1F400E400E000F010F130F01801380A2010013
+00B13BFFF0FFF0FFF0A22C1A7E9931>I<380F07F038FF1838EB201C381F400E000F130F
+1380A21300B139FFF0FFF0A21C1A7E9921>I<137E3803C3C0380700E0000E1370481338
+003C133CA248131EA200F8131FA80078131EA26C133CA2001C13386C13706C13E03803C3
+C038007E00181A7E991D>I<380F0F8038FF11C0EB23E0EA1F43EA0F83EB81C0EB800090
+C7FCB07FEAFFFCA2131A7E9917>114 D<3807F080EA1C0DEA3003EA600112E01300A27E
+6C1300127EEA7FE0EA3FFC6C7EEA07FF38003F801307388003C0A2130112C0A200E01380
+130300F01300EACC0EEA83F8121A7E9917>I<7FA41201A31203A21207120F381FFF80B5
+FC38078000AD1440A73803C08012013800E100133E12257FA417>I<000F130FB413FFA2
+001F131F6C7FB05CA26C132F3903804F803901C08FF038007F0F1C1A7E9921>I<3AFFF3
+FF83FEA23A1F803C00F8D80F001460EB801C0007011E1340A2D9C02E13C00003012F1380
+A23A01E04701001581A23900F0838215C2A290387901C415E4137B90383E00E815F8A201
+1C1370A20118133001081320271A7F992A>119 D<39FFF01FF0A2390F8007800007EB03
+001402A26C6C5AA2EBE00C00011308A26C6C5AA2EBF830EB7820A26D5AA2EB3EC0EB1E80
+A26DC7FCA31306A21304A2130C1308A2EA701012F85BA2485AEA6180001FC8FC1C267F99
+1F>121 D<B612F01C0180901D>123 D<EA700EEAF81FEAFC3FA2EAF81FEA700E10067AA8
+1D>127 D E /Fg 14 118 df<1518153CA3157EA315FFA39138019F80A39138030FC0A2
+02077FEC0607A2020E7FEC0C03A202187F1501A24A6C7EA34A137EA34A7FA20101814A13
+1FA201038191C7120FA249B67EA20106C71207496E7EA3496E7EA201388101301400A201
+70810160157EA249157F8312016D16801203D80FF0ED7FC0D8FFFE0207B5FCA2383C7EBB
+3C>65 D<B812F0A2D803FCC7123F6C4814071601EE00F81778A21738A21718A4171C170C
+A21503A21700A45DA25D153F90B6FCA29038F8003F150F81A281A41703A292C7FCA21706
+A5170EA2170C171CA2173CA2177CEE01FCEE07F8486C143FB8FCA2303B7CBA36>69
+D<007FB812C0A2903AC003FC003F277E0001F8130F007C160300781601127017001260A2
+00E017E0A2481760A7C71600B3B3EC07FE0107B512FEA2333B7DBA39>84
+D<B500F090380FFFF0A2D803FCC813006C48157E173C1718B3B3A300005E7FA2137C5F7F
+5F6D4A5A7F6D6C49C7FC6D6C13066D6C131CD900F85B91383E01E091380FFFC0DA01FEC8
+FC343C7CBA3C>I<267FFFE0903807FFF8A20003018001011380C690C8EAFE0049157801
+7F15706D6C14605F6D6C13016D6C5C4CC7FC6D6C5B6D6C13065E6D6C131C6D6C13185E02
+7F137091383F80605EEC1FC191380FE18003E3C8FCEC07F7EC03FE5D14016E7EA2157F4B
+7EA2913801DFC09138038FE0150F91380607F091380E03F8140C4A6C7E91383800FE1430
+4A137F02E06D7E5C49486D7E01036E7E91C7FC01066E7E010E6E7E130C496E7E01386E7E
+0130157E0170157F01F0ED3F80D803F8ED7FC0D80FFCEDFFE0B5020313FFA2383B7EBA3C
+>88 D<EB3F803801C0F03803003C00047F000C7F486D7E001C80003E1303003F80A3121E
+C7FCA3143FEB0FF3EB7E03EA01F8EA03E0EA0FC0EA1F80EA3F00123E127E16605AA31407
+A2007C130B127E003E903811F0C06C13603A07C1807F803A00FE003E0023257CA427>97
+D<EA03E012FFA212071203B3EC3FC0ECE0789038E3001C01E6130F01E8EB078001F8EB03
+C049EB01E04914F0150016F8A216FC167CA2167EA9167CA216FC16F8A2ED01F016E06D13
+0301D814C001C8EB07800184EB0E0001835B903881C0F09038003F80273C7EBB2C>I<EB
+07F8EB3C0E9038F001803901E000C0484813604848133048C712704814F81401123EA200
+7EEB00F0007C1400A212FCA9127CA2127E123E150C7E15186C7E000714306C6C13606C6C
+13C03900F0018090383C0E00EB07F81E257DA423>I<ED07C090390FE018609039383820
+709039F01E40F03901E00F802603C00713600007ECC00048486C7EA3001F80A6000F5CA3
+6C6C485A00035C6C6C48C7FC3802F01EEB383838060FE00004C9FCA2120CA2120EA27E7F
+6CB5FC15F06C14FC6C8039078000FF000EC7EA1F8048EC07C048140312780070EC01E012
+F0A50078EC03C000381580003C14076CEC0F000007141CD803C0137839007803C0D90FFE
+C7FC24387EA527>103 D<EA03E012FFA212071203B3EC1FE0EC607CEC801E9038E3000F
+01E41480A201E8130716C013F0A25BB3A6486CEB0FE0B50081B5FCA2283C7EBB2C>I<12
+07EA0F80EA1FC0A3EA0F80EA0700C7FCADEA07C012FFA2120F1207B3ACEA0FE0EAFFFEA2
+0F397DB815>I<3903E01FE000FFEB607CEC801E3907E3000FD803E41480A201E8130716
+C013F0A25BB3A6486CEB0FE0B50081B5FCA228257EA42C>110 D<3803E03E00FF13C390
+38E107803907E20FC0EA03E413E8EC0780EC030001F0C7FCA35BB3A5487EB512C0A21A25
+7EA41E>114 D<D803E0EB07C000FFEB01FFA20007EB000F00031407B3A5150FA3000114
+17A26C6C132715470178EB87E090391E0307FFEB03FC28257EA42C>117
+D E end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 300dpi
+TeXDict begin
+%%PaperSize: a4
+
+%%EndSetup
+%%Page: 1 1
+1 0 bop 723 475 a Fg(Uigh)n(uric)27 b(in)g(ArabT)1351
+494 y(E)1396 475 y(X)913 647 y Ff(Klaus)18 b(Lagally)801
+722 y(Institut)f(f)r(\177)-31 b(ur)19 b(Informatik)783
+796 y(Breit)n(wiesenstra\031e)g(20{22)856 871 y(D-70565)h(Stuttgart)932
+946 y(GERMANY)736 1020 y Fe(mailto:lagally)o(k@ac)o(m.or)o(g)882
+1160 y Ff(August)f(06,)h(1997)162 1371 y Fd(There)c(is)h(a)g(new)g
+(ArabT)629 1382 y(E)656 1371 y(X)g(language)g(mo)q(de,)f
+Fc(\\setuighur)o Fd(,)e(for)j(pro)q(cessing)h(Uigh)o(uric)d(texts)h(in)
+162 1431 y(the)g(extended)f(Arabic)h(writing.)162 1515
+y(This)g(mo)q(de)g(w)o(orks)g(only)g(with)g(ArabT)895
+1526 y(E)922 1515 y(X)g(v)o(ersion)g(3.06)h(or)f(later.)162
+1599 y(Uigh)o(uric)f(input)h(texts)g(are)g(enco)q(ded)g(in)g(a)h(mo)q
+(di\014cation)e(of)i(the)f(standard)h(ArabT)1735 1610
+y(E)1762 1599 y(X)f(enco)q(ding,)162 1659 y(see)21 b(column)f(5)i(of)g
+(the)f(T)l(able.)37 b(Please)21 b(observ)o(e)g(that)h(in)f(Uigh)o(uric)
+f(all)h(c)o(haracters)g(are)h(co)q(ded)162 1719 y(v)o(erbatim.)162
+1803 y(This)g(language)i(mo)q(de)e(is)g(strictly)f(exp)q(erimen)o(tal)f
+(and)j(exp)q(ected)e(to)i(con)o(tain)f(errors.)40 b(Please)162
+1863 y(rep)q(ort)17 b(y)o(our)f(exp)q(erience)e(and)j(suggestions)g
+(for)g(c)o(hanges)f(and)h(impro)o(v)o(em)o(en)o(ts)c(to)k(the)f
+(author.)1077 2862 y(1)p eop
+%%Page: 2 2
+2 1 bop 762 274 a Fd(ArabT)896 285 y(E)923 274 y(X)16
+b(enco)q(ding)g(of)h(Uigh)o(uric)p 162 389 846 2 v 161
+484 2 96 v 260 484 V 299 443 a(1)86 b(2)93 b(3)83 b(4)29
+b(=)37 b(5)i(\()12 b(6)g(\))17 b(7)p 1006 484 V 162 486
+846 2 v 161 581 2 96 v 187 540 a(01)p 260 581 V 292 w
+Fb(A\007)89 b(@)34 b Fd(=)29 b Fc(a)45 b Fd(\(01\))17
+b(a)p 1006 581 V 161 677 V 187 635 a(02)p 260 677 V 291
+w Fb(\351\007)85 b(\350)29 b Fd(=)16 b Fc(:a)32 b Fd(\(02\))17
+b(\177)-24 b(a)p 1006 677 V 161 772 V 187 731 a(03)p
+260 772 V 284 w Fb(Y\007)74 b(X)30 b Fd(=)f Fc(d)45 b
+Fd(\(09\))17 b(de)p 1006 772 V 161 868 V 187 826 a(04)p
+260 868 V 283 w Fb(Q\007)77 b(P)32 b Fd(=)d Fc(r)45 b
+Fd(\(10\))17 b(re)p 1006 868 V 161 963 V 187 922 a(05)p
+260 963 V 286 w Fb(S\007)74 b(R)32 b Fd(=)d Fc(z)45 b
+Fd(\(11\))17 b(ze)p 1006 963 V 161 1059 V 187 1017 a(06)p
+260 1059 V 286 w Fb(U\007)74 b(T)32 b Fd(=)16 b Fc(^z)32
+b Fd(\(12\))15 b(\024)-23 b(ze)p 1006 1059 V 161 1154
+V 187 1113 a(07)p 260 1154 V 284 w Fb(\361\007)68 b(\360)29
+b Fd(=)g Fc(o)45 b Fd(\(25\))17 b(o)p 1006 1154 V 161
+1250 V 187 1208 a(08)p 260 1250 V 527 1187 a Fb(\030)519
+1208 y(\361)o(\007)641 1187 y(\030)634 1208 y(\360)26
+b Fd(=)16 b Fc(:o)32 b Fd(\(27\))17 b(\177)-24 b(o)p
+1006 1250 V 161 1345 V 187 1304 a(09)p 260 1345 V 527
+1283 a Fb(\014)519 1304 y(\361)o(\007)641 1283 y(\014)634
+1304 y(\360)26 b Fd(=)j Fc(u)45 b Fd(\(26\))17 b(u)p
+1006 1345 V 161 1441 V 187 1399 a(10)p 260 1441 V 530
+1378 a Fb(\027)519 1399 y(\361)o(\007)644 1378 y(\027)634
+1399 y(\360)26 b Fd(=)16 b Fc(:u)32 b Fd(\(28\))18 b(\177)-26
+b(u)p 1006 1441 V 161 1536 V 187 1495 a(11)p 260 1536
+V 526 1475 a Fb(\021)519 1495 y(\361)o(\007)640 1475
+y(\021)634 1495 y(\360)26 b Fd(=)j Fc(w)45 b Fd(\(29\))17
+b(w)o(e)p 1006 1536 V 161 1632 V 187 1590 a(12)p 260
+1632 V 64 w Fb(\005K)318 1602 y(.)402 1590 y(\005J)421
+1602 y(.)430 1590 y(\007)64 b(I)530 1605 y(.)557 1590
+y(\007)52 b(H)644 1605 y(.)686 1590 y Fd(=)29 b Fc(b)45
+b Fd(\(03\))17 b(b)q(e)p 1006 1632 V 161 1727 V 187 1686
+a(13)p 260 1727 V 64 w Fb(\005K)314 1698 y(\022)402 1686
+y(\005J)417 1698 y(\022)430 1686 y(\007)64 b(I)526 1700
+y(\022)557 1686 y(\007)52 b(H)640 1700 y(\022)686 1686
+y Fd(=)29 b Fc(p)45 b Fd(\(04\))17 b(p)q(e)p 1006 1727
+V 161 1823 V 187 1781 a(14)p 260 1823 V 64 w Fb(\005)314
+1759 y(\020)314 1781 y(K)73 b(\005)417 1759 y(\020)417
+1781 y(J)n(\007)526 1764 y(\020)509 1781 y(I)o(\007)640
+1764 y(\020)624 1781 y(H)16 b Fd(=)29 b Fc(t)45 b Fd(\(05\))17
+b(te)p 1006 1823 V 161 1918 V 187 1877 a(15)p 260 1918
+V 64 w Fb(\005)318 1854 y(\011)314 1877 y(K)73 b(\005)421
+1854 y(\011)417 1877 y(J)n(\007)530 1865 y(\011)517 1877
+y(\341)o(\007)644 1854 y(\011)633 1877 y(\340)24 b Fd(=)29
+b Fc(n)45 b Fd(\(23\))17 b(ne)p 1006 1918 V 161 2014
+V 187 1972 a(16)p 260 2014 V 54 w Fb(\005c)53 b(\005b\007)58
+b(a\007)65 b(`)23 b Fd(=)29 b Fc(j)45 b Fd(\(06\))17
+b(je)p 1006 2014 V 161 2109 V 187 2068 a(17)p 260 2109
+V 54 w Fb(\005{)53 b(\005z\007)58 b(y\007)65 b(x)23 b
+Fd(=)16 b Fc(^c)32 b Fd(\(07\))15 b(\024)-23 b(ce)p 1006
+2109 V 162 2111 846 2 v 1089 389 858 2 v 1088 484 2 96
+v 1187 484 V 1227 443 a(1)85 b(2)95 b(3)86 b(4)30 b(=)38
+b(5)g(\()12 b(6)h(\))j(7)p 1946 484 V 1089 486 858 2
+v 1088 581 2 96 v 1114 540 a(18)p 1187 581 V 55 w Fb(\005s)53
+b(\005r\007)59 b(q\007)68 b(p)24 b Fd(=)29 b Fc(x)45
+b Fd(\(08\))17 b(xe)p 1946 581 V 1088 677 V 1114 635
+a(19)p 1187 677 V 64 w Fb(\005K)73 b(\005J\007)f(\371\007)67
+b(\370)23 b Fd(=)29 b Fc(i)45 b Fd(\(31\))17 b(i)p 1946
+677 V 1088 772 V 1114 731 a(20)p 1187 772 V 64 w Fb(\005K)1245
+742 y(\011)1245 749 y(.)1329 731 y(\005J)1348 742 y(\011)1348
+749 y(.)1357 731 y(\007)74 b(\371)1459 762 y(\011)1459
+769 y(.)1477 731 y(\007)68 b(\370)1576 756 y(\011)1576
+763 y(.)1619 731 y Fd(=)29 b Fc(e)45 b Fd(\(30\))17 b(e)p
+1946 772 V 1088 868 V 1114 826 a(21)p 1187 868 V 64 w
+Fb(\005K)1241 838 y(\012)1329 826 y(\005J)1344 838 y(\012)1357
+826 y(\007)74 b(\371)1455 858 y(\012)1477 826 y(\007)68
+b(\370)1572 853 y(\012)1619 826 y Fd(=)29 b Fc(y)45 b
+Fd(\(32\))17 b(y)p 1946 868 V 1088 963 V 1114 922 a(22)p
+1187 963 V 56 w Fb(\005\203)53 b(\005\202\007)f(\201\007)j(\200)17
+b Fd(=)29 b Fc(s)45 b Fd(\(13\))17 b(se)p 1946 963 V
+1088 1059 V 1114 1017 a(23)p 1187 1059 V 56 w Fb(\005\213)53
+b(\005\212\007)f(\211\007)j(\210)17 b Fd(=)f Fc(^s)32
+b Fd(\(14\))14 b(\024)-22 b(se)p 1946 1059 V 1088 1154
+V 1114 1113 a(24)p 1187 1154 V 59 w Fb(\005)1246 1085
+y(\011)1236 1113 y(\253)62 b(\005)1349 1093 y(\011)1339
+1113 y(\252)n(\007)1459 1093 y(\011)1448 1113 y(\251)o(\007)1576
+1082 y(\011)1563 1113 y(\250)24 b Fd(=)16 b Fc(^g)32
+b Fd(\(15\))17 b(\024)-24 b(ge)p 1946 1154 V 1088 1250
+V 1114 1208 a(25)p 1187 1250 V 63 w Fb(\005)1246 1180
+y(\011)1240 1208 y(\257)69 b(\005)1348 1183 y(\011)1340
+1208 y(\256\007)59 b(\363\007)54 b(\362)15 b Fd(=)29
+b Fc(f)45 b Fd(\(16\))17 b(fe)p 1946 1250 V 1088 1345
+V 1114 1304 a(26)p 1187 1345 V 63 w Fb(\005)1241 1276
+y(\020)1240 1304 y(\257)69 b(\005)1344 1278 y(\020)1340
+1304 y(\256\007)f(\365\007)h(\364)24 b Fd(=)29 b Fc(q)45
+b Fd(\(17\))17 b(qe)p 1946 1345 V 1088 1441 V 1114 1399
+a(27)p 1187 1441 V 61 w Fb(\005\273)55 b(\005\272\007)63
+b(\275\007)72 b(\274)25 b Fd(=)k Fc(k)45 b Fd(\(18\))17
+b(k)o(e)p 1946 1441 V 1088 1544 2 104 v 1114 1503 a(28)p
+1187 1544 V 61 w Fb(\005)1244 1461 y(\021)1238 1503 y(\273)55
+b(\005)1344 1461 y(\021)1334 1503 y(\272\007)1455 1461
+y(\021)1445 1503 y(\275)q(\007)1572 1461 y(\021)1565
+1503 y(\274)25 b Fd(=)16 b Fc(~n)32 b Fd(\(20\))17 b
+Fa(\021)r Fd(e)p 1946 1544 V 1088 1640 2 96 v 1114 1598
+a(29)p 1187 1640 V 61 w Fb(\005\303)55 b(\005\302\007)i(\301\007)f
+(\300)17 b Fd(=)29 b Fc(g)45 b Fd(\(19\))17 b(ge)p 1946
+1640 V 1088 1735 V 1114 1694 a(30)p 1187 1735 V 66 w
+Fb(\005\313)74 b(\005\312\007)d(\311\007)i(\310)27 b
+Fd(=)i Fc(l)45 b Fd(\(21\))17 b(le)p 1946 1735 V 1088
+1831 V 1114 1789 a(31)p 1187 1831 V 62 w Fb(\005\323)67
+b(\005\322\007)f(\005\322\007)77 b(\324)32 b Fd(=)d Fc(m)45
+b Fd(\(22\))17 b(me)p 1946 1831 V 1088 1926 V 1114 1885
+a(32)p 1187 1926 V 59 w Fb(\005\353)66 b(\005\352\007)81
+b(\354)1470 1873 y(\007)1566 1885 y(\353)27 b Fd(=)i
+Fc(h)45 b Fd(\(24\))17 b(he)p 1946 1926 V 1088 2022 V
+1114 1980 a(33)p 1187 2022 V 64 w Fb(\005)1242 1956 y(\015)1241
+1980 y(K)73 b(\005)1345 1956 y(\015)1344 1980 y(J)n(\007)247
+b Fd(=)29 b Fc(')45 b Fd(\()k(\))p 1946 2022 V 1088 2117
+V 1114 2076 a(34)p 1187 2117 V 283 w Fb(C)-33 b(C)q(\007)69
+b(B)-32 b(B)24 b Fd(=)16 b Fc(la)32 b Fd(\()49 b(\))p
+1946 2117 V 1089 2119 858 2 v 222 2207 a(1.)24 b(initial)15
+b(shap)q(e)222 2287 y(2.)24 b(medial)14 b(shap)q(e)222
+2367 y(3.)24 b(\014nal)16 b(shap)q(e)222 2447 y(4.)24
+b(isolated)16 b(shap)q(e)222 2528 y(5.)24 b(external)15
+b(enco)q(ding)222 2608 y(6.)24 b(sorting)17 b(p)q(osition)222
+2688 y(7.)24 b(name)1077 2862 y(2)p eop
+%%Trailer
+end
+userdict /end-hook known{end-hook}if
+%%EOF
diff --git a/language/arabic/arabtex/hebtex.tex b/language/arabic/arabtex/hebtex.tex
new file mode 120000
index 0000000000..4e2466cd1c
--- /dev/null
+++ b/language/arabic/arabtex/hebtex.tex
@@ -0,0 +1 @@
+texinput/hebtex.tex \ No newline at end of file
diff --git a/language/arabic/arabtex/hepatch.sty b/language/arabic/arabtex/hepatch.sty
new file mode 120000
index 0000000000..6f958eea84
--- /dev/null
+++ b/language/arabic/arabtex/hepatch.sty
@@ -0,0 +1 @@
+texinput/hepatch.sty \ No newline at end of file
diff --git a/language/arabic/arabtex/install.txt b/language/arabic/arabtex/install.txt
new file mode 100644
index 0000000000..97d86c519f
--- /dev/null
+++ b/language/arabic/arabtex/install.txt
@@ -0,0 +1,176 @@
+INSTALL 17.09.2001
+--------------------------------------------------------------------------
+ ArabTeX Version 3.10
+ ====================
+--------------------------------------------------------------------------
+ The ArabTeX package is distributed as one of the following
+ binary files:
+
+ arabtex.zip for PC users:
+ The ArabTeX package in compressed ZIP format.
+ Unpack with (PK)UNZIP as a directory tree.
+
+ arabtex.tar.Z for UNIX users:
+ The ArabTeX package in compressed tar format.
+ Unpack as a directory tree.
+
+ In addition, there may be ASCII files "apatch.sty", "hepatch.sty"
+ with last minute corrections. These are not difference files;
+ just put them on the TEXINPUT path.
+
+ Depending on the server there may also be the unpacked files.
+
+ The binary package, if complete, should contain at least:
+
+ Main directory: (ASCII files and subdirectories)
+ ---------------
+ announce.txt describing the current version
+ arabtex.htm general information in HTML format
+ arabtex.gif the ArabTeX logo
+ changes.txt release history and known bugs
+ install.txt THIS file
+ readme.txt general information
+ lppl.txt license information
+
+ doc subdirectory containing documentation
+ texinput subdirectory containing the TeX macros
+ mfinput subdirectory containing the METAFONT sources
+ tfm subdirectory containing the TFM font files
+ laser.pk subdirectory containing 300 dpi pixel files
+ psfonts subdirectory containing T1 Postscript fonts
+ examples subdirectory containing some examples
+
+ Subdirectory "texinput": (ASCII files)
+ ----------------------
+ manifest.txt list of contents
+ .
+ arabtex.sty LaTeX 2e package, LaTeX 2.09 style option: driver
+ arabtex.tex loader and patches for use with Plain TeX
+ hebtex.tex Hebrew mode: loader for use with Plain TeX
+ .
+ about 40 ASCII files containing the ArabTeX macros
+ .
+ miscellaneous utility files (usually not required)
+
+ Subdirectory "report": (ASCII files) (deleted)
+ ---------------------
+ The old user manual that used to be here has been superseded by
+ a new PDF version "doc/arabdoc.pdf"
+
+ Subdirectory "mfinput": (ASCII files)
+ ---------------------
+ nash14.mf METAFONT driver file for font nash14
+ nash14bf.mf METAFONT driver file for font nash14bf
+
+ nash.mf the following files will be loaded automatically:
+ nashbase.mf
+ nashchar.mf
+ nashdia.mf
+ nashdig.mf
+ nashlig.mf
+ nashspec.mf
+ arabsymb.mf
+
+ hclassic.mf Hebrew font by Joel Hoffman
+ hcaption.mf Hebrew font by Joel Hoffman
+ hcbase_p.mf
+
+ xnsh14.mf driver file for font xnsh14
+ xnsh14bf.mf driver file for font xnsh14bf
+ several additional files will be loaded on demand
+
+ Subdirectory "tfm": (Binary files)
+ -------------------
+ hclassic.tfm TeX font metrics
+ hcaption.tfm
+ nash14.tfm TeX font metrics
+ nash14bf.tfm
+ xnsh14.tfm
+ xnsh14bf.tfm
+ yarborn.tfm
+
+ Subdirectory "laser.pk": (Binary files)
+ -------------------
+ nash14.300pk bitmaps in PK format at 300 dpi
+ nash14.329pk \magstephalf
+ nash14.360pk \magstep 1
+ nash14.432pk \magstep 2
+ nash14.518pk \magstep 3
+ nash14.622pk \magstep 4
+ nash14.746pk \magstep 5
+ nash14bf.300k etc.: the same for the font nash14bf
+ analogous files for the other fonts provided
+
+ The font files are customized for a HP Laserjet with 300 dpi
+ resolution. If that does not suit your needs, recompile the
+ sources with METAFONT.
+
+ NOTE: On systems using the 8+3 file naming convention you may
+ have to move the bitmap files to several directories and to
+ rename them according to local conventions.
+
+ Subdirectory "psfonts": (Binary files)
+ ---------------------
+ arabtex.map font description for DVIPS
+ xnsh14.pfb T1 font
+ xnsh14bf.pfb T1 font
+
+ Subdirectory "doc": documentation
+ ---------------------
+ arabdoc.pdf user manual (incomplete, in progress)
+
+ Subdirectory "html": HTML and GIF files
+ ---------------------
+ arabtex.htm documentation in HTML format
+ refer.htm references
+ changes.htm current status
+ chg310.htm
+ some auxiliary files
+
+ Subdirectory "txt": ASCII documentation
+ ---------------------
+ hebrew.305 details on the Hebrew extension
+ readme.305 additional details
+ arabtex.doc a short introduction (rather old)
+ arabtex.faq answers to some Frequently Asked Questions
+ arwindos.tex notes on Windows CP 1256 encoding support
+ malay.tex
+ sindhi.tex notes on various extensions
+ uighur.tex
+ changes2.txt older release history
+
+ Subdirectory "patches": (ASCII) sub-versions
+ ---------------------
+ apatch.sty current sub-version
+ hepatch.sty
+ apatch03.10-
+ hepatch3.10-
+ . former sub-versions as applicable
+
+ Subdirectory "examples": (ASCII and binary files)
+ ---------------------
+ guha.tex a small LaTeX demo
+ guha.dvi the demo output in DVI format
+ guha.ps the demo output in PostScript format
+ omar.tex a small demo for Farsi
+ ligtable.tex a LaTeX demo showing many ligatures
+ .
+ some more example files in PS or DVI format
+
+ NOTE: Depending on the structure of your TeX installation you may
+ have to move the subdirectories to other places and/or to issue
+ some command to refresh the TeX system. This is strongly dependent
+ on the local configuration; possibly ask some local TeX guru.
+
+--------------------------------------------------------------------------
+ Prof. Klaus Lagally
+ Institut fuer Informatik
+ Universitaet Stuttgart
+ Breitwiesenstrasse 20-22
+ D-70565 Stuttgart
+ GERMANY
+
+ lagally@informatik.uni-stuttgart.de
+--------------------------------------------------------------------------
+ Copyright (c) 1990 - 2001, Klaus Lagally
+--------------------------------------------------------------------------
diff --git a/language/arabic/arabtex/laser.pk/hcaption.300pk b/language/arabic/arabtex/laser.pk/hcaption.300pk
new file mode 100644
index 0000000000..41bd2cd591
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hcaption.300pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/hcaption.329pk b/language/arabic/arabtex/laser.pk/hcaption.329pk
new file mode 100644
index 0000000000..e71b446a01
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hcaption.329pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/hcaption.360pk b/language/arabic/arabtex/laser.pk/hcaption.360pk
new file mode 100644
index 0000000000..8dc3fb41f2
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hcaption.360pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/hcaption.432pk b/language/arabic/arabtex/laser.pk/hcaption.432pk
new file mode 100644
index 0000000000..d1d71f908f
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hcaption.432pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/hcaption.518pk b/language/arabic/arabtex/laser.pk/hcaption.518pk
new file mode 100644
index 0000000000..2bf1ef5703
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hcaption.518pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/hcaption.622pk b/language/arabic/arabtex/laser.pk/hcaption.622pk
new file mode 100644
index 0000000000..0f976d9fb6
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hcaption.622pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/hcaption.746pk b/language/arabic/arabtex/laser.pk/hcaption.746pk
new file mode 100644
index 0000000000..702d415d1c
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hcaption.746pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/hclassic.300pk b/language/arabic/arabtex/laser.pk/hclassic.300pk
new file mode 100644
index 0000000000..03047c8c6b
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hclassic.300pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/hclassic.329pk b/language/arabic/arabtex/laser.pk/hclassic.329pk
new file mode 100644
index 0000000000..a831d3a0b8
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hclassic.329pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/hclassic.360pk b/language/arabic/arabtex/laser.pk/hclassic.360pk
new file mode 100644
index 0000000000..4d68706d92
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hclassic.360pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/hclassic.432pk b/language/arabic/arabtex/laser.pk/hclassic.432pk
new file mode 100644
index 0000000000..1840e908ce
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hclassic.432pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/hclassic.518pk b/language/arabic/arabtex/laser.pk/hclassic.518pk
new file mode 100644
index 0000000000..caa7fa17d0
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hclassic.518pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/hclassic.622pk b/language/arabic/arabtex/laser.pk/hclassic.622pk
new file mode 100644
index 0000000000..50c6a5daac
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hclassic.622pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/hclassic.746pk b/language/arabic/arabtex/laser.pk/hclassic.746pk
new file mode 100644
index 0000000000..9a934b6c27
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/hclassic.746pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14.300pk b/language/arabic/arabtex/laser.pk/nash14.300pk
new file mode 100644
index 0000000000..b919659305
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14.300pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14.329pk b/language/arabic/arabtex/laser.pk/nash14.329pk
new file mode 100644
index 0000000000..b02e22a6b6
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14.329pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14.360pk b/language/arabic/arabtex/laser.pk/nash14.360pk
new file mode 100644
index 0000000000..ff8ca43736
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14.360pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14.432pk b/language/arabic/arabtex/laser.pk/nash14.432pk
new file mode 100644
index 0000000000..e11b918e96
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14.432pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14.518pk b/language/arabic/arabtex/laser.pk/nash14.518pk
new file mode 100644
index 0000000000..5e915c07d4
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14.518pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14.622pk b/language/arabic/arabtex/laser.pk/nash14.622pk
new file mode 100644
index 0000000000..45ef525e2d
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14.622pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14.746pk b/language/arabic/arabtex/laser.pk/nash14.746pk
new file mode 100644
index 0000000000..5e48997fec
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14.746pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14bf.300pk b/language/arabic/arabtex/laser.pk/nash14bf.300pk
new file mode 100644
index 0000000000..32c1b23104
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14bf.300pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14bf.329pk b/language/arabic/arabtex/laser.pk/nash14bf.329pk
new file mode 100644
index 0000000000..9ee046a2cf
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14bf.329pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14bf.360pk b/language/arabic/arabtex/laser.pk/nash14bf.360pk
new file mode 100644
index 0000000000..20a2d3a7df
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14bf.360pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14bf.432pk b/language/arabic/arabtex/laser.pk/nash14bf.432pk
new file mode 100644
index 0000000000..704ab4899a
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14bf.432pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14bf.518pk b/language/arabic/arabtex/laser.pk/nash14bf.518pk
new file mode 100644
index 0000000000..b584c8f1e7
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14bf.518pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14bf.622pk b/language/arabic/arabtex/laser.pk/nash14bf.622pk
new file mode 100644
index 0000000000..f7282717b4
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14bf.622pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/nash14bf.746pk b/language/arabic/arabtex/laser.pk/nash14bf.746pk
new file mode 100644
index 0000000000..44b1382470
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/nash14bf.746pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14.300pk b/language/arabic/arabtex/laser.pk/xnsh14.300pk
new file mode 100644
index 0000000000..9ba112e62f
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14.300pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14.329pk b/language/arabic/arabtex/laser.pk/xnsh14.329pk
new file mode 100644
index 0000000000..ebeace1b61
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14.329pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14.360pk b/language/arabic/arabtex/laser.pk/xnsh14.360pk
new file mode 100644
index 0000000000..bae344354f
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14.360pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14.432pk b/language/arabic/arabtex/laser.pk/xnsh14.432pk
new file mode 100644
index 0000000000..a0b8cb4205
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14.432pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14.518pk b/language/arabic/arabtex/laser.pk/xnsh14.518pk
new file mode 100644
index 0000000000..df210c80c2
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14.518pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14.622pk b/language/arabic/arabtex/laser.pk/xnsh14.622pk
new file mode 100644
index 0000000000..ed6d7b2197
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14.622pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14.746pk b/language/arabic/arabtex/laser.pk/xnsh14.746pk
new file mode 100644
index 0000000000..84e99b14ff
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14.746pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14bf.300pk b/language/arabic/arabtex/laser.pk/xnsh14bf.300pk
new file mode 100644
index 0000000000..dc116ff316
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14bf.300pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14bf.329pk b/language/arabic/arabtex/laser.pk/xnsh14bf.329pk
new file mode 100644
index 0000000000..f05609fcd0
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14bf.329pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14bf.360pk b/language/arabic/arabtex/laser.pk/xnsh14bf.360pk
new file mode 100644
index 0000000000..4eb95f076d
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14bf.360pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14bf.432pk b/language/arabic/arabtex/laser.pk/xnsh14bf.432pk
new file mode 100644
index 0000000000..3d3d62215d
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14bf.432pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14bf.518pk b/language/arabic/arabtex/laser.pk/xnsh14bf.518pk
new file mode 100644
index 0000000000..68901cbb56
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14bf.518pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14bf.622pk b/language/arabic/arabtex/laser.pk/xnsh14bf.622pk
new file mode 100644
index 0000000000..7913dc19c7
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14bf.622pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/xnsh14bf.746pk b/language/arabic/arabtex/laser.pk/xnsh14bf.746pk
new file mode 100644
index 0000000000..47e11c58d8
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/xnsh14bf.746pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/yarborn.300pk b/language/arabic/arabtex/laser.pk/yarborn.300pk
new file mode 100644
index 0000000000..ac18d36f83
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/yarborn.300pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/yarborn.329pk b/language/arabic/arabtex/laser.pk/yarborn.329pk
new file mode 100644
index 0000000000..8da20e44e1
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/yarborn.329pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/yarborn.360pk b/language/arabic/arabtex/laser.pk/yarborn.360pk
new file mode 100644
index 0000000000..a470b48f9e
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/yarborn.360pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/yarborn.432pk b/language/arabic/arabtex/laser.pk/yarborn.432pk
new file mode 100644
index 0000000000..12b7acc923
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/yarborn.432pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/yarborn.518pk b/language/arabic/arabtex/laser.pk/yarborn.518pk
new file mode 100644
index 0000000000..eebdeb7d52
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/yarborn.518pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/yarborn.622pk b/language/arabic/arabtex/laser.pk/yarborn.622pk
new file mode 100644
index 0000000000..8b46392c77
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/yarborn.622pk
Binary files differ
diff --git a/language/arabic/arabtex/laser.pk/yarborn.746pk b/language/arabic/arabtex/laser.pk/yarborn.746pk
new file mode 100644
index 0000000000..9fee466788
--- /dev/null
+++ b/language/arabic/arabtex/laser.pk/yarborn.746pk
Binary files differ
diff --git a/language/arabic/arabtex/lppl.txt b/language/arabic/arabtex/lppl.txt
new file mode 100644
index 0000000000..5b05fe8689
--- /dev/null
+++ b/language/arabic/arabtex/lppl.txt
@@ -0,0 +1,318 @@
+
+The LaTeX Project Public License
+=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+
+LPPL Version 1.2 1999-09-03
+
+Copyright 1999 LaTeX3 Project
+ Everyone is allowed to distribute verbatim copies of this
+ license document, but modification of it is not allowed.
+
+
+PREAMBLE
+========
+
+The LaTeX Project Public License (LPPL) is the license under which the
+base LaTeX distribution is distributed.
+
+You may use this license for any program that you have written and wish
+to distribute. This license may be particularly suitable if your
+program is TeX-related (such as a LaTeX package), but you may use it
+even if your program is unrelated to TeX. The section `WHETHER AND HOW
+TO DISTRIBUTE PROGRAMS UNDER THIS LICENSE', below, gives instructions,
+examples, and recommendations for authors who are considering
+distributing their programs under this license.
+
+In this license document, `The Program' refers to any program
+distributed under this license.
+
+This license gives conditions under which The Program may be distributed
+and conditions under which modified versions of The Program may be
+distributed. Individual files of The Program may bear supplementary
+and/or superseding conditions on modification of themselves and on the
+distribution of modified versions of themselves, but *no* file of The
+Program may bear supplementary or superseding conditions on the
+distribution of an unmodified copy of the file. A distributor wishing
+to distribute a complete, unmodified copy of The Program therefore
+needs to check the conditions only in this license and nowhere else.
+
+Activities other than distribution and/or modification of The Program
+are not covered by this license; they are outside its scope. In
+particular, the act of running The Program is not restricted.
+
+We, the LaTeX3 Project, believe that the conditions below give you
+the freedom to make and distribute modified versions of The Program
+that conform with whatever technical specifications you wish while
+maintaining the availability, integrity, and reliability of
+The Program. If you do not see how to achieve your goal while
+meeting these conditions, then read the document `cfgguide.tex'
+in the base LaTeX distribution for suggestions.
+
+
+CONDITIONS ON DISTRIBUTION AND MODIFICATION
+===========================================
+
+You may distribute a complete, unmodified copy of The Program.
+Distribution of only part of The Program is not allowed.
+
+You may not modify in any way a file of The Program that bears a legal
+notice forbidding modification of that file.
+
+You may distribute a modified file of The Program if, and only if, the
+following eight conditions are met:
+
+ 1. You must meet any additional conditions borne by the file on the
+ distribution of a modified version of the file as described below
+ in the subsection `Additional Conditions on Individual Files of
+ The Program'.
+
+ 2. If the file is a LaTeX software file, then you must meet any
+ applicable additional conditions on the distribution of a modified
+ version of the file that are described below in the subsection
+ `Additional Conditions on LaTeX Software Files'.
+
+ 3. You must not distribute the modified file with the filename of the
+ original file.
+
+ 4. In the modified file, you must acknowledge the authorship and
+ name of the original file, and the name (if any) of the program
+ which contains it.
+
+ 5. You must change any identification string in the file to indicate
+ clearly that the modified file is not part of The Program.
+
+ 6. You must change any addresses in the modified file for the
+ reporting of errors in the file or in The Program generally to
+ ensure that reports for files no longer maintained by the original
+ maintainers will be directed to the maintainers of the modified
+ files.
+
+ 7. You must distribute the modified file under a license that forbids
+ distribution both of the modified file and of any files derived
+ from the modified file with the filename of the original file.
+
+ 8. You must do either (A) or (B):
+
+ (A) distribute a copy of The Program (that is, a complete,
+ unmodified copy of The Program) together with the modified
+ file; if your distribution of the modified file is made by
+ offering access to copy the modified file from a designated
+ place, then offering equivalent access to copy The Program
+ from the same place meets this condition, even though third
+ parties are not compelled to copy The Program along with the
+ modified file;
+
+ (B) provide to those who receive the modified file information
+ that is sufficient for them to obtain a copy of The Program;
+ for example, you may provide a Uniform Resource Locator (URL)
+ for a site that you expect will provide them with a copy of
+ The Program free of charge (either the version from which
+ your modification is derived, or perhaps a later version).
+
+Note that in the above, `distribution' of a file means making the
+file available to others by any means. This includes, for instance,
+installing the file on any machine in such a way that the file is
+accessible by users other than yourself. `Modification' of a file
+means any procedure that produces a derivative file under any
+applicable law -- that is, a file containing the original file or
+a significant portion of it, either verbatim or with modifications
+and/or translated into another language.
+
+Changing the name of a file (other than as necessitated by the file
+conventions of the target file systems) is considered to be a
+modification of the file.
+
+The distribution conditions in this license do not have to be
+applied to files that have been modified in accordance with the
+above conditions. Note, however, that Condition 7. does apply to
+any such modified file.
+
+The conditions above are not intended to prohibit, and hence do not
+apply to, the updating, by any method, of a file so that it becomes
+identical to the latest version of that file of The Program.
+
+
+
+A Recommendation on Modification Without Distribution
+-----------------------------------------------------
+
+It is wise never to modify a file of The Program, even for your own
+personal use, without also meeting the above eight conditions for
+distributing the modified file. While you might intend that such
+modified files will never be distributed, often this will happen by
+accident -- you may forget that you have modified the file; or it may
+not occur to you when allowing others to access the modified file
+that you are thus distributing it and violating the conditions of
+this license. It is usually in your best interest to keep your copy
+of The Program identical with the public one. Many programs provide
+ways to control the behavior of that program without altering its
+licensed files.
+
+
+Additional Conditions on Individual Files of The Program
+--------------------------------------------------------
+
+An individual file of The Program may bear additional conditions that
+supplement and/or supersede the conditions in this license if, and only
+if, such additional conditions exclusively concern modification of the
+file or distribution of a modified version of the file. The conditions
+on individual files of The Program therefore may differ only with
+respect to the kind and extent of modification of those files that
+is allowed, and with respect to the distribution of modified versions
+of those files.
+
+
+Additional Conditions on LaTeX Software Files
+---------------------------------------------
+
+If a file of The Program is intended to be used with LaTeX (that is,
+if it is a LaTeX software file), then the following additional
+conditions, which supplement and/or supersede the conditions
+above, apply to the file according to its filename extension:
+
+ - You may not modify any file with filename extension `.ins' since
+ these are installation files containing the legal notices that are
+ placed in the files they generate.
+
+ - You may distribute modified versions of files with filename
+ extension `.fd' (LaTeX font definition files) under the standard
+ conditions of the LPPL as described above. You may also distribute
+ such modified LaTeX font definition files with their original names
+ provided that:
+ (1) the only changes to the original files either enable use of
+ available fonts or prevent attempts to access unavailable fonts;
+ (2) you also distribute the original, unmodified files (TeX input
+ paths can be used to control which set of LaTeX font definition
+ files is actually used by TeX).
+
+ - You may distribute modified versions of files with filename
+ extension `.cfg' (configuration files) with their original names.
+ The Program may (and usually will) specify the range of commands
+ that are allowed in a particular configuration file.
+
+Because of portability and exchangeability issues in LaTeX software,
+The LaTeX3 Project deprecates the distribution of modified versions of
+components of LaTeX or of generally available contributed code for them,
+but such distribution can meet the conditions of this license.
+
+
+NO WARRANTY
+===========
+
+There is no warranty for The Program. Except when otherwise stated in
+writing, The Copyright Holder provides The Program `as is', without
+warranty of any kind, either expressed or implied, including, but not
+limited to, the implied warranties of merchantability and fitness for
+a particular purpose. The entire risk as to the quality and performance
+of The Program is with you. Should The Program prove defective, you
+assume the cost of all necessary servicing, repair, or correction.
+
+In no event unless agreed to in writing will The Copyright Holder, or
+any author named in the files of The Program, or any other party who may
+distribute and/or modify The Program as permitted above, be liable to
+you for damages, including any general, special, incidental or
+consequential damages arising out of any use of The Program or out of
+inability to use The Program (including, but not limited to, loss of
+data, data being rendered inaccurate, or losses sustained by anyone as
+a result of any failure of The Program to operate with any other
+programs), even if The Copyright Holder or said author or said other
+party has been advised of the possibility of such damages.
+
+
+WHETHER AND HOW TO DISTRIBUTE PROGRAMS UNDER THIS LICENSE
+=========================================================
+
+This section contains important instructions, examples, and
+recommendations for authors who are considering distributing their
+programs under this license. These authors are addressed as `you' in
+this section.
+
+
+Choosing This License or Another License
+----------------------------------------
+
+If for any part of your program you want or need to use *distribution*
+conditions that differ from those in this license, then do not refer to
+this license anywhere in your program but instead distribute your
+program under a different license. You may use the text of this license
+as a model for your own license, but your license should not refer to
+the LPPL or otherwise give the impression that your program is
+distributed under the LPPL.
+
+The document `modguide.tex' in the base LaTeX distribution explains
+the motivation behind the conditions of this license. It explains,
+for example, why distributing LaTeX under the GNU General Public
+License (GPL) was considered inappropriate. Even if your program is
+unrelated to LaTeX, the discussion in `modguide.tex' may still be
+relevant, and authors intending to distribute their programs under any
+license are encouraged to read it.
+
+
+How to Use This License
+-----------------------
+
+To use this license, place in each of the files of your program both
+an explicit copyright notice including your name and the year and also
+a statement that the distribution and/or modification of the file is
+constrained by the conditions in this license.
+
+Here is an example of such a notice and statement:
+
+ %% pig.dtx
+ %% Copyright 2001 M. Y. Name
+ %
+ % 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.
+ %
+ % This program consists of the files pig.dtx and pig.ins
+
+Given such a notice and statement in a file, the conditions given in
+this license document would apply, with `The Program' referring to the
+two files `pig.dtx' and `pig.ins', and `The Copyright Holder' referring
+to the person `M. Y. Name'.
+
+
+Important Recommendations
+-------------------------
+
+ Defining What Constitutes The Program
+
+ The LPPL requires that distributions of The Program contain all the
+ files of The Program. It is therefore important that you provide a
+ way for the licensee to determine which files constitute The Program.
+ This could, for example, be achieved by explicitly listing all the
+ files of The Program near the copyright notice of each file or by
+ using a line like
+
+ % This program consists of all files listed in manifest.txt.
+
+ in that place. In the absence of an unequivocal list it might be
+ impossible for the licensee to determine what is considered by you
+ to comprise The Program.
+
+ Noting Exceptional Files
+
+ If The Program contains any files bearing additional conditions on
+ modification, or on distribution of modified versions, of those
+ files (other than those listed in `Additional Conditions on LaTeX
+ Software Files'), then it is recommended that The Program contain a
+ prominent file that defines the exceptional conditions, and either
+ lists the exceptional files or defines one or more categories of
+ exceptional files.
+
+ Files containing the text of a license (such as this file) are
+ often examples of files bearing more restrictive conditions on
+ modification. LaTeX configuration files (with filename extension
+ `.cfg') are examples of files bearing less restrictive conditions
+ on the distribution of a modified version of the file. The
+ additional conditions on LaTeX software given above are examples
+ of declaring a category of files bearing exceptional additional
+ conditions.
+
+
+
diff --git a/language/arabic/arabtex/mfinput/arabsymb.mf b/language/arabic/arabtex/mfinput/arabsymb.mf
new file mode 100644
index 0000000000..9ce55b36a5
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/arabsymb.mf
@@ -0,0 +1,177 @@
+%%%%%%%%%%%%%%%%%%%% arabsymb.mf %%%%%%%%%%%%%%%%%%%%
+% 18.10.1998 22:33:10
+% code assignments for arabic font in ArabTeX
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+% 21.05.97
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+nashcode := oct "1"; % file has been read
+
+%%%%%%%%%%%%%%%%%% connection forms %%%%%%%%%%%%%%%%%%
+
+f_iso := oct "0"; % isolated
+f_end := oct "1"; % final
+f_mid := oct "2"; % medial
+f_beg := oct "3"; % initial
+
+%%%%%%%%%%%%%%%%%% diacritical marks %%%%%%%%%%%%%%%%%
+
+ttah_dia := oct "010"; % for urdu
+one_dot_up := oct "011"; %
+two_dots_down := oct "012"; %
+fatha := oct "013"; %
+kasra := oct "013"; %
+damma := oct "014"; %
+hamza := oct "015"; %
+madda := oct "016"; %
+shadda := oct "017"; %
+two_dots_up := oct "020"; %
+three_dots_up := oct "021"; %
+three_dots_down := oct "022"; %
+fathatan := oct "023"; %
+kasratan := oct "023"; %
+dammatan := oct "024"; %
+sukun := oct "025"; %
+wasla := oct "026"; %
+quran_alif := oct "027"; %
+bow_dia := oct "030"; % for kurdish
+e_dia := oct "040"; % for pashto
+zwarakay := oct "040"; % for pashto
+one_dot_down := oct "056"; % period
+h_dia := oct "146"; % for urdu
+ammad := oct "146"; % for pashto
+
+%%%%%%%%%%%%%%%%%% letters %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+hamza_iso := oct "132"; % 132 040 040
+
+alif := oct "100"; % 100,101
+alif_iso := alif; % 100
+alif_end := oct "101"; %
+bah_s := oct "110"; % 110-113
+gim := oct "140"; % 140-143
+hhah := oct "150"; % 150-153
+khah := oct "160"; % 160-163
+tsah := oct "170"; % 170-173
+dal := oct "130"; % 130,131
+rah := oct "120"; % 120,121
+zay := oct "122"; % 122,123
+zhah := oct "124"; % 124,125
+sin := oct "200"; % 200-203
+shin := oct "210"; % 210-213
+sad := oct "220"; % 220-223
+dad := oct "230"; % 230-233
+kaf_w := oct "234"; % 234-237 wide kaf
+ttah := oct "240"; % 240-243
+zzah := oct "244"; % 244-247
+ain := oct "250"; % 250-253
+fah_s := oct "254"; % 254-257 fah family
+fah := oct "362"; % 362,363
+qaf := oct "364"; % 364,365
+vah := oct "366"; % 366,367
+kaf_s := oct "270"; % 270-273 kaf family
+kaf := oct "274"; % 274,275
+gaf_s := oct "300"; % 300-303 gaf family
+gaf := oct "304"; % 304,305
+lam := oct "310"; % 310-313
+mim := oct "320"; % 320-323
+nun := oct "340"; % 340,341
+hah := oct "350"; % 350-354
+waw := oct "360"; % 360,361
+yah := oct "370"; % 370,371
+
+bah := bah_s; %
+
+%%%%%%%%%%%%%%%%%% special characters %%%%%%%%%%%%%%%%%%%
+
+block := oct "000"; % 000-003
+tatwil := oct "004"; % 004-007
+
+rquotes := oct "042"; % 042
+period := oct "056"; % 056
+lquotes := oct "134"; % 134
+
+space_spec := oct "044"; % 046,047 carrier for dots
+no_break := oct "046"; % 046 no space but breaks ligatures
+break := oct "047"; % 047 small space, breaks connection
+
+%%%%%%%%%%%%%%%%%% ligatures %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+bah_spec_gim := oct "027"; % 031 medial bah before gim
+bah_beg_gim := oct "030"; % 032 initial (!) bah before gim
+g_to_mb := oct "031"; % 033 medial bah to gim
+bah_high := oct "032"; % 034,035 before sin, sad
+bah_spec := oct "034"; % 036,037 bah before final rah, nun
+lam_spec_low := oct "072"; % 074 medial lam for 'allah'
+alif_spec_mim := oct "075"; % 076 final alif after mim
+lam_alif := oct "102"; % 102,103
+lam_alif_iso := lam_alif; % 102
+lam_alif_end := oct "103"; %
+bah_end_hah := oct "102"; % 104,105 bah before final hah
+bah_spec_yah := oct "104"; % 106,107 bah before gim, with tie;
+% also bah before yah
+gim_spec := oct "143"; % 144,145 from above
+gim_close := oct "144"; % 146,147 closed gim
+hhah_spec := oct "153"; % 154,155 from above
+khah_spec := oct "163"; % 164,165 from above
+rah_k := oct "166"; % 166,167 kurdish rah
+tsah_spec := oct "173"; % 174,175 from above
+sin_spec := oct "202"; % 204,205 short form
+shin_spec := oct "204"; % 206,207 short form
+sad_spec := oct "222"; % 224,225 short form
+dad_spec := oct "224"; % 226,227 short form
+kaf_spec := oct "274"; % 276,277 short form
+gaf_spec := oct "304"; % 306,307 short form
+lam_on_gim := oct "312"; % 314 initial (!) lam before gim
+lam_long := oct "312"; % 315 initial lam before yah
+lam_spec_yah := oct "314"; % 316 before final yah ?
+lam_spec_mim := oct "314"; % 317 initial lam before medial mim
+mim_spec_high := oct "322"; % 324 from above
+mim_spec := oct "324"; % 325-327 final; medial after lam;
+% also before gim
+mim_spec_mim := oct "325"; % 330 initial mim before mim
+mim_lam_gim := oct "327"; % 331 medial mim between lam and gim
+lam_spec_hah := oct "330"; % 333 initial lam before medial hah
+mim_spec_long := oct "332"; % 334 medial mim after lam, vocalized
+mm_to_b := oct "333"; % 335 bah to medial mim
+bah_mid_mim := oct "334"; % 336,337 bah before medial mim
+mim_spec_alif := oct "342"; % 344 medial mim before alif
+er_to_s := oct "343"; % 345 sin to final rah
+bah_end_mim := oct "344"; % 346 medial bah before final mim
+bah_beg_mim := oct "345"; % 347 initial (!) bah before final mim
+hah_urd := oct "353"; % 353,354 two-eyed hah,
+% see hah and hah_spec_lam
+hah_spec_lam := oct "352"; % 354 medial hah after initial lam
+hah_spec := oct "354"; % 355-357 final short hah;
+% also medial hah after sin
+yah_spec := oct "371"; % 372 ligature for final yah
+
+%%%%%%%%%%%%%%%%%% ties %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+g_to_s := bah_spec_gim; % = sin to gim
+em_to_s := bah_end_mim; % = sin to final mim
+mh_to_s := bah_end_hah; % = sin to medial hah or final mim
+g_to_bb := bah_beg_gim; % = initial bah to gim
+em_to_bb := bah_beg_mim; % = initial bah to final mim
+
+%%%%%%%%%%%%%%%%%% others %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+bah_p := oct "114"; % 114-117 bah family with loop
+rah_p := oct "126"; % 126,127 rah with loop
+dal_p := oct "136"; % 136,137 dal with loop
+rah_s := oct "156"; % 156,157 rah with two dots
+sin_p := oct "214"; % 214,215 sin with two dots
+kaf_p_s := oct "260"; % 260-263 kaf family with loop
+kaf_p := oct "264"; % 264,265 kaf with loop and mark
+kaf_p_spec := oct "264"; % 266,267 short form of kaf with loop
+nun_p := oct "342"; % 342,343 nun with loop
+yah_h := oct "373"; % 373,374 yah with hook
+yah_h_spec := oct "374"; % 375 ligature for final yah with hook
+yah_p := oct "376"; % 376,377 long yah
+
+%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+endinput;
diff --git a/language/arabic/arabtex/mfinput/hcaption.mf b/language/arabic/arabtex/mfinput/hcaption.mf
new file mode 100644
index 0000000000..4ddaccfd0b
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/hcaption.mf
@@ -0,0 +1,199 @@
+%(c) 1990,91 by Joel M. Hoffman
+
+%hcaption. Modernized Fancy Classical Hebrew font. Version 0.9.
+%calls the file base.
+%last update: 5/15/91 by JMH
+% modified for use with ArabTeX: 5/25/96 Klaus Lagally
+% renamed "hcbase_pc" to "hcbase": 1999/04/10 KL
+
+%This calls the file ``hcbase_pc'' to create a slanted, elongated Hebrew font
+%for use in captions. See that file for more information.
+
+%Use of this material in a commercial venture of any sort requires
+%permission from me. Otherwise, you are free to use this for any
+%legal, non-destructive purpose. If you find this font useful, a
+%contribution to charity will be most appreciated.
+%
+%Send comments or complaints to:
+%
+%BITNET: hoffman@nyuacf.BITNET <-- this will change soon
+%CompuServe: 72700,402 -or- 72700.402@compuserve.com
+%SNAIL: Joel M. Hoffman
+% 19 Hillcrest Lane
+% Rye, NY 10580
+% U.S.A.
+
+if unknown mode:
+mode:=localfont; fi
+mode_setup;
+currenttransform:= currenttransform slanted 1/5;
+
+
+
+%I used large units, and then later scaled the font down to size. -JMH
+%u#:=1/100in#; %ten units to a square.
+u#:=1/384.16in#; %but account for magnification.(1/384.16)
+%u#:=1/295.16in#; %but account for magnification and hp vs. epson
+
+let_height#:=42u#; %height of a standard letter.
+asc_height#:=40u#; %ascender height (for lamed).
+desc_height#:=30u#; %descender height(depth?).
+
+let_width#:=31u#; %width of a standard letter. (31u#)
+
+serif_height#:=5u#; %height of a standard serif.(2.5u#)
+serif_width#:=2.5u#; %width of a standard serif. (2.5u#)
+chupchiklength#:=6u#;
+
+vowel_width#:=14u#; %width of vowels under the letters.
+vowel_height#:=12u#; %How tall the vowels are.
+vowel_depth#:=8u#; %the space between the baseline and the vowels.
+
+let_fit#:=3u#; %space to left and right of letter (.5u#)
+vowel_fit#:=1.4u#; %space to the left and right of vowel(1.4u#);
+
+thick#:=10u#; %thickness of thick lines. (7.5u#)
+thin#:=3u#; %thickness of thin lines. (2u#)
+hairline#:=.5u#; %VERY thin lines (.3u#)
+vowel_stroke#:=4u#; %pen to use
+dot#:=4u#; %diameter of dots (dagesh, vowels, etc)
+squaredot#:=10u#;
+
+overshoot#:=4u#; %overshoot for bet, taf.
+
+tightness:=.68; %tightness for right_curve; (.78)
+
+baseline_tilt:=45; %degrees for the tilt in baseline lines.
+
+head_tilt#:=.7u#; %tilt for the head on the zion, etc.
+
+sss:=.7; %Shrink the serif's width by this amount on a shin.
+ %(s)hrink (s)hin's (s)erif
+
+define_pixels(let_height,asc_height,desc_height,let_width,head_tilt);
+define_pixels(vowel_height,vowel_width,vowel_depth,vowel_height);
+define_pixels(squaredot);
+define_whole_pixels(let_fit,vowel_fit);
+define_pixels(serif_height,serif_width,chupchiklength);
+define_pixels(overshoot);
+define_whole_blacker_pixels(thick,thin,dot,hairline,vowel_stroke);
+
+def serifpen = pickup pencircle xscaled thin yscaled thick; enddef;
+%def serifpen = pickup pencircle xscaled hairline yscaled thick; enddef;
+def vowelpen = pickup pensquare scaled vowel_stroke; enddef;
+
+
+%this is from the METAFONT book:
+shrink_fit:=1+hround(2let_fit#*hppp)-2let_fit;
+
+def normal_adjust_fit(expr left_adjustment,right_adjustment) =
+ l:=-hround(left_adjustment*hppp)-let_fit;
+ interim xoffset:=-l;
+ charwd:=charwd+2let_fit#+left_adjustment+right_adjustment;
+ r:=l+hround(charwd*hppp)-shrink_fit;
+ w:=r-hround(right_adjustment*hppp)-let_fit;
+ enddef;
+let af=normal_adjust_fit;
+def negate_af = af(-let_fit#,-let_fit#); enddef;
+def vowel_af = af(-let_fit#+vowel_fit#,-let_fit#+vowel_fit#); enddef;
+extra_endchar := extra_endchar&"r:=r+shrink_fit;w:=r-l;";
+
+
+
+
+def top_serif (suffix i,j) = %draw a serif at point z.i, using z.j
+ serifpen;
+ x.j = x.i-serif_width; y.j = y.i + serif_height;
+ draw (x.i+serif_width,y.i) ... z.i .. z.j;
+enddef;
+
+def bottom_serif (suffix i,j) = %draw an inverse serif at point z.i, with z.j
+ serifpen;
+ x.j = x.i+serif_width;y.j=y.i-serif_height;
+ draw (x.i-serif_width,y.i) ... z.i .. z.j;
+enddef;
+
+def roundoff_bottom (suffix i) = %round off point z.i, assuming thin lines.
+ fill fullcircle scaled thin shifted z.i;
+enddef;
+
+def right_curve(suffix i,j,k,l) = %call general_right_curve
+general_right_curve(tightness,tightness,thick,thick,thin,thin,i,j,k,l);
+enddef;
+
+def left_curve(suffix i,j,k,l) = %call general_left_curve
+general_left_curve(tightness,tightness,thick,thick,thin,thin,i,j,k,l);
+enddef;
+
+
+def general_right_curve (expr ta,tb,sa,sb,sc,sd) (suffix i,j,k,l) =
+ y.j=y.i;x.j=ta*(x.l-x.i)+x.i;
+ x.k=x.l;y.k=tb*(y.i-y.l)+y.l;
+ penpos i (sa,90);
+ penpos j (sb,90);
+ penpos k (sc,0);
+ penpos l (sd,0);
+ penstroke z.l.e{up} ... {up}z.k.e ... z.j.e{left} ...{left} z.i.e;
+enddef;
+
+def general_left_curve (expr ta,tb,sa,sb,sc,sd) (suffix i,j,k,l) =
+ y.j=y.i;x.j=ta*(x.l-x.i)+x.i;
+ x.k=x.l;y.k=tb*(y.i-y.l)+y.l;
+ penpos i (sa,-90);
+ penpos j (sb,-90);
+ penpos k (sc,0);
+ penpos l (sd,0);
+ penstroke z.i.e{right}...{right}z.j.e...z.k.e{up}...{up}z.l.e;
+enddef;
+
+
+
+def any_curve (expr adjust,thick,thin) (suffix i,j,k,l,m) =
+ %draw from i to m via k, using j and l, using specified values for
+ % withds.
+ z.j=(tightness/adjust)[z.i,z.k];
+ z.l=(tightness/adjust)[z.m,z.k];
+ penpos i (thick,angle(z.k-z.i)+90);
+ penpos j (thick,angle(z.k-z.i)+90);
+ penpos l (thin,angle(z.m-z.k)+90);
+ penpos m (thin,angle(z.m-z.k)+90);
+ penstroke z.i.e{z.k-z.i}
+ ... {z.k-z.i}z.j.e
+ ... z.l.e{z.m-z.k}
+ ... {z.m-z.k}z.m.e;
+enddef;
+
+def baseline (expr a,b) = %draw a baseline
+ pickup penrazor scaled thick rotated baseline_tilt;
+ draw a --- b;
+enddef;
+baselinewidth:= thick*sind(baseline_tilt);%but should be thick/sind....
+
+def thickpen = pickup pencircle scaled thick; enddef;
+def thinpen = pickup pencircle scaled thin; enddef;
+def hairlinepen = pickup pencircle scaled hairline; enddef;
+def baselinepen = pickup penrazor scaled thick rotated baseline_tilt; enddef;
+def dotpen = pickup pencircle scaled dot; enddef;
+def squarepen = pickup penrazor scaled squaredot rotated 45; enddef;
+
+def dotat (expr z) = %put at dot at z
+fill fullcircle scaled dot shifted z;
+enddef;
+
+def chupchik(suffix i,j)(expr ang) = %draw a chupchik from z at angle ang
+thinpen;
+z.i=z.j+dir(ang)*chupchiklength;
+draw z.i--z.j;
+enddef;
+
+def mycutoff(expr a,b) = %cutoff with culling
+cullit;
+cutoff(a,b);
+cullit;
+enddef;
+
+%input hcbase_pc; % KL 25.05.96
+input hcbase; % 1999/04/10 KL
+
+end; % KL 03.11.96
+
diff --git a/language/arabic/arabtex/mfinput/hcbase.mf b/language/arabic/arabtex/mfinput/hcbase.mf
new file mode 100644
index 0000000000..1ff4cae671
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/hcbase.mf
@@ -0,0 +1,1020 @@
+%(c) 1990,91 by Joel M. Hoffman
+
+%base for hclassic and hcaption. Version 0.9.
+%The files hclassic.mf and hcaption.mf call this file.
+%updated 5/15/91 by JMH
+
+%This is my first MF attempt, so a lot of this may seem silly. If so,
+%please let me know. Some letters still contain bugs: _ayin_, _shin_,
+%and perhaps a few others. Also, the _mem_ looks terrible. As of yet,
+%there are no numbers, and very litle punctuation --- only a period, comma,
+%exclamation mark and a hyphen.
+%
+%In addition to the 26 normal and final letters, I have included a
+%aleph-lamed ligature (seldom used), and a non-descending _ayin_ for use
+%with vowels. There is also a full-complement of vowels, and a general
+%purpose dot (for use in _shin_ vs. _sin_, among others). The files
+%dots.tex and vowels.tex contain macros for using the vowels.
+%
+%Use of this material in a commercial venture of any sort requires
+%permission from me. Otherwise, you are free to use this for any
+%legal, non-destructive purpose. If you find this font useful, a
+%contribution to charity will be most appreciated.
+%
+%Because of the bugs and the lack of punctuation, I have numbered this
+%version 0.9. If you fix the bugs or have time to add the necessary
+%punctuation, please let me know!
+%
+%Send comments or complaints to:
+%
+%BITNET: hoffman@nyuacf.BITNET <-- this will change soon
+%CompuServe: 72700,402 -or- 72700.402@compuserve.com
+% new : joel@wam.umd.edu (Joel M. Hoffman)
+
+%SNAIL: Joel M. Hoffman
+% 19 Hillcrest Lane
+% Rye, NY 10580
+% U.S.A.
+
+
+beginchar("-",.7let_width#,let_height#,0); "hyphen";
+
+af(0,0);
+baselinepen;
+top lft z1=(0,h);
+top rt z2 =(w,h);
+draw z1---z2;
+labels(1,2);
+showit;
+endchar;
+
+
+beginchar(",",2dot#,2dot#,dot#); "Comma";
+
+af(0,0)
+dotpen;
+top rt z1 = (w,h);
+bot lft z2 = (0,-d);
+draw z1 --- z2;
+labels(1,2);
+showit;
+endchar;
+
+
+beginchar(":",1.4squaredot#,let_height#,0); "Colon";
+
+af(0,0);
+squarepen;
+top rt z1 = (w/2,1.4squaredot);
+bot lft z2 = (w/2,0);
+draw z1---z2;
+top rt z3 = (w/2,h);
+bot lft z4 = (w/2,h-1.4squaredot);
+draw z3---z4;
+labels(1,2,3,4);
+showit;
+endchar;
+
+
+beginchar("!",1.4squaredot#,let_height#,0); "Exclamation mark";
+
+af(0,0);
+squarepen;
+top rt z1 = (w/2,1.4squaredot);
+bot lft z2 = (w/2,0);
+draw z1---z2;
+z3=(w/2,3/5h);
+z4=(w/2,h+1.4squaredot);
+draw z3---z4;
+labels(1,2,3,4);
+showit;
+endchar;
+
+
+beginchar(".",1.4squaredot#,1.4squaredot#,0); "Period";
+
+af(0,0);
+squarepen;
+top rt z1 = (w/2,h);
+bot lft z2 = (w/2,0);
+draw z1---z2;
+labels (1,2);
+showit;
+endchar;
+
+
+beginchar(142,let_width#,let_height#,0); "The letter Mem";
+
+af(0,0);
+x1=.7w;y1r=h;
+penpos1(thick,90);
+x2r=w;y2=h/2;
+penpos2(thin,0);
+z3=(.8w,baselinewidth/2);
+penpos3(baselinewidth,-90); %up to here is the right part
+x4=.7w;y4l=y1l;
+penpos4(thin,90);
+%penstroke z3e...{up}z2e{up}...z1e...z4e;
+thinpen;
+%z5=(.3w,.8(y1-thin));
+z5=(2serif_width,.9(y1-thin));
+lft z6=(0,0);
+penpos5(thin,135);penpos6(thin,180);
+penstroke z3e...{up}z2e{up}...z1e...z5;%...{down}z6;
+draw z4r{left}... z5 ... {down}z6;
+z7=(.25w,baselinewidth/2);
+fudge:=.05w;
+baseline(z7,z3+(fudge,0));
+%and now for the upper-left bit
+pickup pencircle xscaled thin yscaled thick;
+z8=(serif_width,h-thick/2);
+bot rt z9=(x5+thin,y5-thin);
+%draw z8--z9;
+top_serif(8,10);
+bottom_serif(8,11);
+labels(1,2,3,4,5,6,7,8,9,10,11);
+showit;
+endchar;
+
+
+
+beginchar(124,.85let_width#,let_height#+asc_height#,0);
+"The ligature aleph-lamed";
+
+af(0,0);
+%adopted from the aleph:
+pickup pencircle xscaled thin yscaled thick;
+lft z1=(0,let_height-thick/2);
+z0=(thin/2,h-3serif_height);%this has to match a thin line later
+z2=(0,y1-serif_height/3);
+bot z3 = (w,serif_height/3);
+bot z4 = (w,0);
+pickup pencircle xscaled thin yscaled (thick/cosd(angle(z3-z2)));
+%draw z0{down}... z2{z3-z2}...{z3-z2}z3...z4;
+draw z1 ... z2{z3-z2}...{z3-z2}z3...z4;
+z7=(4/5w,y1);
+z8=(4/5w,y7-serif_height/3);
+z8-z9=whatever*(z2-z3);
+x9=w;
+z10=(x9,y9-serif_height);
+hairlinepen;
+z6-z5=whatever*(z3-z2) rotated 90;
+z6= 3/4[z8,z9];
+z5=whatever[z3,z2];
+draw z5---z6;
+pickup pencircle xscaled thin yscaled (thick/cosd(angle(z3-z2)));
+draw z7...z8{z9-z8}...{z9-z8}z9...z10;
+%and now the lamed-like serif, from the letter lamed
+thinpen;
+z11=(thin/2,h);
+z12=(1.5serif_width,h-serif_height);
+draw z11...z12...z0{down}...z2;
+labels(1,2,3,4,5,6,7,8,9,10,11,12);
+showit;
+endchar;
+
+
+
+beginchar(123,let_width#,let_height#,0);
+"The letter Ayin (for use with vowels)";
+%n.b.: use this ayin when a vowel appears under it.
+
+af(0,0);
+z1=(0,-d+thick/2);
+z3=(.66w,thick/2);
+z5=(x3+((w-thin/2)-x3)/1.8,h/1.8);
+any_curve(1.3,thick,thin,1,2,3,4,5);
+fill fullcircle scaled thick shifted z1;
+pickup pencircle scaled (thick*2); %cheat in the next step.
+mycutoff((0,y1r-sind(angle(z3-z1))*thick/2),90+baseline_tilt);
+z6=(w-w/3.5,h-thick/2);
+alittle:=.05h;
+z8=(w,y6-alittle);
+z10=z5;
+any_curve(2,thin,thick,10,9,8,7,6);
+top_serif(6,11);
+thinpen;
+z12=whatever[z1,z3];
+(y14-y12)=(x12-x14)*(y5-y3)/(x5-x3); %i.e.,(y14-y12)/(x14-x12)=-(y5-y3)/(x5-x3)
+y14=2/3h;x14=.14w;
+z16=(2serif_width,h-thick/2-head_tilt);
+any_curve(1,thin,thin,16,15,14,13,12);
+pickup pencircle xscaled thin yscaled thick;
+z17=(serif_width,y16+head_tilt);
+z18=(x16+serif_width,y16-head_tilt);
+draw z17--z18;
+top_serif(17,19);
+bottom_serif(18,20);
+labels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20);% Wow! 20.
+showit;
+endchar;
+
+
+
+beginchar(136,let_width#,let_height#,0); "The letter Tet";
+
+af(0,0);
+%first, make somthing like a zion
+nw:=w/3.5;
+thinpen;
+z1=(nw/2,0);
+z2=(nw/2,h-thick/2-head_tilt);
+%draw z1---z2; that would be a zion
+pickup pencircle xscaled thin yscaled thick;
+lft z3 = (0,y2+head_tilt);
+rt z4 = (nw,y2-head_tilt);
+draw z3 -- z4;
+top_serif(3,5);
+bottom_serif(4,6);
+%now we've got a zion
+thinpen;
+z7=(thin/2,.66h);
+z8=(thin/2,thick/2);
+draw z8---z7---z2;
+z9=(0,y8);
+z12=(w-thin/2,h/2);
+general_left_curve(.9tightness,tightness/2,thick,thick,thin,thin,9,10,11,12);
+z13=z12;
+z14=(.78w,h-thick/2);
+z15=(.38w,.45h); %z15=(.35w,.5h); <--- old values
+penpos13(thin,0);
+penpos14(thick,90);%thick
+penpos15(thin,angle(z15-z14)-90);
+z16r=.2[z15r,z14r];
+z16l=.2[z15l,z14l];
+z16=.5[z16l,z16r];
+%z16=.5[z15,z14];
+%penpos16(thin/2,angle(z15-z14)-90);
+penstroke z13e{up}...{left}z14e...{z15-z16}z16e{z15-z15}---z15e;
+%penstroke z13e{up}...{left}z14e{z15-z15}---z15e;
+fill fullcircle scaled thin shifted z15;
+labels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16);
+showit;
+endchar;
+
+
+
+
+
+beginchar(8,vowel_stroke#,0,vowel_depth#+vowel_height#); "The mark Meteg";
+
+vowel_af;
+vowelpen;
+top z1 = (w/2,-vowel_depth);
+bot z2 = (w/2,-vowel_depth-vowel_height);
+draw z1--z2;
+labels(1,2);
+showit;
+endchar;
+
+beginchar(9,vowel_width#,0,vowel_depth#+vowel_height#); "The vowel tzere";
+
+vowel_af;
+dotpen;
+top lft z1 = (0,-vowel_depth);
+top rt z2 = (w,-vowel_depth);
+dotat(z1);
+dotat(z2);
+labels(1,2);
+showit;
+endchar;
+
+beginchar(0,0,0,0); "General purpose dot";
+
+negate_af;
+dotpen;
+z1=(0,0);
+dotat(z1);
+labels(1);
+showit;
+endchar;
+
+
+
+beginchar(7,dot#,0,vowel_depth#+vowel_height#); "The vowel Shva";
+
+vowel_af;
+dotpen;
+top z1 = (w/2,-vowel_depth);
+bot z2 = (w/2,-d);
+dotat(z1);
+dotat(z2);
+labels(1,2);
+showit;
+endchar;
+
+
+
+beginchar(6,vowel_width#,0,vowel_depth#+(1.5*vowel_height#));
+"The vowel Kamatz Katan";
+
+vowel_af;
+vowelpen;
+top lft z1 = (0,-vowel_depth);
+top rt z2 = (w,-vowel_depth);
+draw z1---z2;
+z3=(w/2,-vowel_depth-(1.5*vowel_height)+dot/2);
+fill fullcircle scaled dot shifted z3;
+hairlinepen;
+draw z3---.5[z1,z2];
+labels(1,2,3);
+showit;
+endchar;
+
+beginchar(5,vowel_width#,0,vowel_depth#+dot#); "The vowel chiriq";
+
+vowel_af;
+dotpen;
+bot z1 = (w/2,-d);
+dotat(z1);
+labels(1);
+showit;
+endchar;
+
+
+beginchar(4,vowel_width#,0,vowel_depth#+1.5vowel_height#); "The vowel Qibutz";
+
+vowel_af;
+dotpen;
+top lft z1 = (0,-vowel_depth);
+bot rt z2 = (w,-d);
+z3=.5[z1,z2];
+dotat(z1);
+dotat(z2);
+dotat(z3);
+labels(1,2,3);
+showit;
+endchar;
+
+
+beginchar(3,vowel_width#,0,vowel_depth#+vowel_height#); "The vowel Segol";
+
+vowel_af;
+dotpen;
+top lft z1 = (0,-vowel_depth);
+top rt z2 = (w,-vowel_depth);
+bot z3 = (w/2,-vowel_depth-vowel_height);
+dotat(z1);
+dotat(z2);
+dotat(z3);
+labels(1,2,3);
+showit;
+endchar;
+
+
+beginchar(2,vowel_width#,0,vowel_depth#+vowel_height#); "The vowel Kamatz";
+
+vowel_af;
+vowelpen;
+top lft z1 = (0,-vowel_depth);
+top rt z2 = (w,-vowel_depth);
+draw z1---z2;
+z3=(w/2,-vowel_depth-vowel_height+dot/2);
+fill fullcircle scaled dot shifted z3;
+hairlinepen;
+draw z3---.5[z1,z2];
+labels(1,2,3);
+showit;
+endchar;
+
+beginchar(1,vowel_width#,0,vowel_depth#+vowel_stroke#); "The vowel Patach";
+
+vowel_af;
+vowelpen;
+bot lft z1 = (0,-d);
+bot rt z2 = (w,-d);
+draw z1---z2;
+labels(1,2);
+showit;
+endchar;
+
+
+
+
+beginchar(149,let_width#,let_height#,desc_height#); "The final letter Tzadi";
+
+af(0,0);
+%first, make a final nun:
+nw:=w/3.5;
+z1=(serif_width,h-thick/2);
+z3=(nw,h-thick/2);
+z5=(nw/1.5,.8h);
+any_curve(2,thin,thick,5,4,3,2,1);
+fudge:=.05nw;
+z6=(nw-fudge,y3);
+z8=z5;
+z10=(nw/2,.6h);
+any_curve(1.2,thin,thin,10,9,8,7,6);
+thinpen;
+z11=(nw/2,-desc_height);
+draw z10---z11;
+top_serif(1,0);
+z12=whatever[z10,z11];
+y12=.3h;
+z14=(x13-serif_width,y13+head_tilt);
+z15=(x13+serif_width,y13-head_tilt);
+x15=w-serif_width;
+y14=h-thick/2;
+thinpen;
+draw z12---z13;
+pickup pencircle xscaled thin yscaled thick;
+draw z14---z15;
+bottom_serif(15,16);
+top_serif(14,17);
+labels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17);
+showit;
+endchar;
+
+
+beginchar(147,let_width#,let_height#,desc_height#); "The final letter Feh";
+
+af(0,0);
+z1=(serif_width,h-thick/2);
+z4=(w-thin/2,-d);
+top_serif(1,0);
+%this is from the letter pe
+right_curve(1,2,3,4);
+z6=z1;
+z8=(0,h/2);
+z10=(w/2-thick/2,h/2);
+any_curve(1.5,thin,thick,6,7,8,9,10);
+fill fullcircle scaled thick shifted z10;
+x12=0;
+y11=h/2;
+chupchik(11,12,70);
+labels(0,1,2,3,4,6,7,8,9,10,11,12);
+showit;
+endchar;
+
+
+
+
+
+beginchar(146,let_width#,let_height#,.3let_height#); "The letter Ayin";
+%n.b.: This is a descending ayin, for use when there's no vowel
+%under it!
+
+af(0,0);
+z1=(0,-d);
+z3=(.66w,thick/2);
+z5=(x3+((w-thin/2)-x3)/1.8,h/1.8);
+any_curve(1.3,thick,thin,1,2,3,4,5);
+fill fullcircle scaled thick shifted z1;
+pickup pencircle scaled (thick*1.5); %cheat in the next step.
+mycutoff((0,y1r-sind(angle(z3-z1))*thick/2),180);
+z6=(w-w/3.5,h-thick/2);
+alittle:=.05h;
+z8=(w,y6-alittle);
+z10=z5;
+any_curve(2,thin,thick,10,9,8,7,6);
+top_serif(6,11);
+thinpen;
+z12=whatever[z1,z3];
+(y14-y12)=(x12-x14)*(y5-y3)/(x5-x3); %i.e.,(y14-y12)/(x14-x12)=-(y5-y3)/(x5-x3)
+y14=2/3h;x14=.14w;
+z16=(2serif_width,h-thick/2-head_tilt);
+any_curve(1,thin,thin,16,15,14,13,12);
+pickup pencircle xscaled thin yscaled thick;
+z17=(serif_width,y16+head_tilt);
+z18=(x16+serif_width,y16-head_tilt);
+draw z17--z18;
+top_serif(17,19);
+bottom_serif(18,20);
+labels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20);% Wow! 20.
+showit;
+endchar;
+
+
+
+
+beginchar(153,1.1let_width#,let_height#,0); "The letter Shin";
+
+af(0,0);
+z1=(.1w,baselinewidth/2);
+z3=(.7w,baselinewidth/2);
+z5=(x3+((w-thin/2)-x3)/1.8,h/1.8);
+any_curve(1,thick,thin,1,2,3,4,5);
+z6=(w-2*sss*serif_width,h-thick/2);
+alittle:=.05h;
+z8=(w,y6-alittle);
+z10=z5;
+any_curve(2,thin,thick,10,9,8,7,6);
+top_serif(6,11);
+thinpen;
+z12=(x1,0);
+z14=(thin/2,2/3h);
+z16=(2*sss*serif_width,h-thick/2-head_tilt);
+any_curve(1,thin,thin,16,15,14,13,12);
+pickup pencircle xscaled thin yscaled thick;
+z17=(sss*serif_width,y16+head_tilt);
+z18=(x16+sss*serif_width,y16-head_tilt);
+draw z17--z18;
+top_serif(17,19);
+bottom_serif(18,20);
+z21=((x16+x6)/2,y16);
+(y21-y22)=(y5-y3)/(x5-x3)*(x21-x22);
+z22=whatever[z1,z3];
+hairlinepen;
+draw z21---z22;
+z23=(x21-sss*serif_width,y21+head_tilt);
+z24=(x21+sss*serif_width,y21-head_tilt);
+pickup pencircle xscaled thin yscaled thick;
+draw z23--z24;
+top_serif(23,25);
+bottom_serif(24,26);
+labels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26);
+showit;
+endchar;
+
+
+beginchar(151,let_width#,let_height#,desc_height#); "The letter Koof";
+
+af(0,0);
+z1=(serif_width,h-thick/2);
+z2=(tightness*w,h-thick/2);
+z3=(w-thin/2,tightness*y2);
+z4=(w-thin/2,h/3);
+z6=(.33w,0);
+penpos1(thick,90);
+penpos2(thick,90);
+penpos3(thin,0);
+penpos6(thin,angle(z4-z6)-90);
+z5=tightness[z6,z4];
+penpos5(thin,angle(z4-z6)-90);
+penstroke z6e{z4-z6}...{z4-z6}z5e...z3e{up}...z2e{left}...{left}z1e;
+top_serif(1,0);
+thinpen;
+z7=(serif_width,(3/5)*h);
+z8=(serif_width,-d);
+draw z7---z8;
+fill fullcircle scaled thin shifted z6;
+labels(0,1,2,3,4,5,6,7,8);
+showit;
+endchar;
+
+
+
+
+beginchar(145,let_width#,let_height#,0); "The letter Samech";
+
+af(0,0);
+z1=(serif_width,h-thick/2);
+penpos1(thick,90);
+z2=(tightness*w,y1);
+penpos2(thick,90);
+z3=(w-thin/2,h/2);
+penpos3(thin,0);
+z4=(.55w,thick/2);
+penpos4(thick,-90);
+penstroke z4e{right}...{up}z3e{up}...z2e{left}...{left}z1e;
+top_serif(1,0);
+z5=(x4,thick/2);
+z7=(thin/2,thick/2);
+z9=(thin/2,.8y1);
+any_curve(1,thin,thick,9,8,7,6,5);
+thinpen;
+draw z9---z1;
+labels(0,1,2,3,4,5,6,7,8,9);
+showit;
+endchar;
+
+
+
+beginchar(141,let_width#,let_height#,0); "The final letter Mem";
+
+af(0,0);
+z1=(serif_width,h-thick/2);
+z4=(w-thin/2,0);
+right_curve(1,2,3,4);
+top_serif(1,0);
+z5=(w-thin/2,thick/2);
+z7=(thin/2,thick/2); % This is for a rounded lower-left
+z9=(thin/2,.8y1); % corner. A right angle is better (?)
+%any_curve(1,thin,thick,9,8,7,6,5); % <--
+pickup penrazor scaled thick rotated 90;
+draw z5---(0,thick/2);
+pickup penrazor scaled thin rotated 0;
+draw z7---z9;
+thinpen;
+draw z9---z1;
+labels(0,1,2,3,4,5,6,7,8,9,10);
+showit;
+endchar;
+
+
+
+
+beginchar(143,let_width#/3.5,let_height#,desc_height#); "The final letter Nun";
+
+af(0,0);
+z1=(serif_width,h-thick/2);
+z3=(w,h-thick/2);
+z5=(w/1.5,.8h); % this isn't quite a yud.
+any_curve(2,thin,thick,5,4,3,2,1); %now we've got a yud. (almost)
+fudge:=.05w;
+z6=(w-fudge,y3);
+z8=z5;
+z10=(w/2,.6h);
+any_curve(1.2,thin,thin,10,9,8,7,6);
+thinpen;
+z11=(w/2,-desc_height);
+draw z10---z11;
+top_serif(1,0);
+labels(0,1,2,3,4,5,6,7,8,9,10);
+showit;
+endchar;
+
+
+
+beginchar(144,let_width#/2.2,let_height#,0); "The letter Nun";
+
+af(0,0);
+z1=(.2w+serif_width,h-thick/2);
+z4=(w-thin/2,h/2);
+general_right_curve(tightness/2.2,tightness,thick,thick,thin,thin,1,2,3,4);
+top_serif(1,0);
+z5=(w/2,baselinewidth/2);
+z8=z4;
+general_left_curve(tightness/2.2,tightness,
+ baselinewidth,baselinewidth,thin,thin,5,6,7,8);
+baseline((0,baselinewidth/2),(.75w,baselinewidth/2));
+labels(0,1,2,3,4,5,6,7,8);
+showit;
+endchar;
+
+
+
+
+beginchar(154,.9let_width#+overshoot#,let_height#,0); "The letter Taf";
+
+af(0,0);
+z1=(overshoot,h-thick/2);
+z4=(w-thin/2,0);
+right_curve(1,2,3,4);
+roundoff_bottom(4);
+top_serif(1,0);
+%thinpen;
+%z5=(2.5*overshoot,h-baselinewidth/2);
+%z6=(2*overshoot,baselinewidth/2);
+%draw z5{dir -110}...{dir -80}z6;
+%baseline((x6-1.5overshoot,y6),(x6+overshoot,y6));
+z11=(2.5*overshoot,h-thick/2); %this is taken from the Aleph, q.v.
+z15=(x11,thick/2);
+x13l=0;
+x13r=thin;
+y13l=y13r=.6h;
+z13=.5[z13l,z13r];
+penpos11(thin,angle(z13-z11)+90);
+penpos15(thick,angle(z15-z13)+90);
+z14=.3[z13,z15];
+penstroke z11e{z13-z11}...z13e...{z15-z13}z15e;
+fill fullcircle scaled thick shifted z15;
+z16=(0,baselinewidth/2);
+baseline(z16,(x15,baselinewidth/2));
+labels(0,1,2,3,4,5,6,11,12,13,14,15,16);
+showit;
+endchar;
+
+beginchar(140,.9let_width#,let_height#+asc_height#,0); "The letter Lamed";
+
+af(0,0);
+z1=(w/2,let_height-thick/2);
+z4=(w-thin/2,0); %we'll erase some of this later
+right_curve(1,2,3,4);
+z5=(x4,let_height/2);
+thinpen;
+erase draw z4--z5;
+showit;
+z6=(w/3,0);
+z8=z5;
+z10=(x4,.75let_height);
+any_curve(1,thin,thin,6,7,8,9,10);
+%and now for the ascender.
+z11=(thin/2,h);
+z12=(2serif_width,h-serif_height); %the lamed has it's own serif, though.
+z13=(thin/2,h-3serif_height);
+z14=(thin/2,y1+asc_height/2);
+draw z11...z12...z13{down}...{down}z14;
+showit;
+z15=(x14,y1+.75asc_height);
+z17=(thin/2,y1);
+z19=(4/5w,y1);
+any_curve(1,thick,thin,19,18,17,16,15);
+labels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19);
+fill fullcircle scaled ((thick+thin)/2) shifted z6;
+showit;
+endchar;
+
+
+
+beginchar(138,let_width#,let_height#,desc_height#); "The final letter Chaf";
+
+af(0,0);
+thickpen;
+top z1 = (serif_width,let_height);
+top rt z2 = (let_width,let_height);
+draw z1---z2;
+mycutoff(z1,180);
+top_serif(1,0);
+thinpen;
+rt z3=(w-overshoot,h-thick/2);
+rt z4=(w-overshoot,-d);
+draw z3--z4;
+labels(0,1,2,3,4);
+showit;
+endchar;
+
+
+beginchar(135,let_width#,let_height#,0); "The letter Chet";
+
+af(0,0);
+thickpen;
+top z1 = (serif_width,let_height);
+top rt z2 = (w,h);
+draw z1 --- z2;
+mycutoff(z1,180);
+top_serif(1,0);
+thinpen;
+rt z3 = (w-overshoot,h-thick/2);
+rt z4 = (w-overshoot,0);
+draw z3--z4;
+z5=(serif_width,h-thick/2);
+z6=(serif_width,0);
+draw z5--z6;
+labels(1,2,3,4,5,6);
+showit;
+endchar;
+
+beginchar (137,let_width#/3.5,let_height#,0); "The letter Yud";
+
+af(0,0);
+z1=(serif_width,h-thick/2);
+z3=(w,h-thick/2);
+z5=(w/2,h/2);
+any_curve(2.2,thin,thick,5,4,3,2,1);
+top_serif(1,0);
+labels(0,1,2,3,4,5);
+showit;
+endchar;
+
+
+beginchar (134,let_width#/3.5,let_height#,0); "The letter Zion";
+
+af(0,0);
+thinpen;
+z1=(w/2,0);
+z2=(w/2,h-thick/2-head_tilt);
+draw z1--z2;
+pickup pencircle xscaled thin yscaled thick;
+lft z3 = (0,y2+head_tilt);
+rt z4 = (w,y2-head_tilt);
+draw z3 -- z4;
+top_serif(3,5);
+bottom_serif(4,6);
+labels(1,2,3,4,5,6);
+showit;
+endchar;
+
+
+beginchar(130,let_width#/2.2,let_height#,0); "The letter Gimel";
+
+af(serif_width#,0);
+z1=(serif_width,h-thick/2);
+z4=((.85w)-thin/2,baselinewidth);
+top_serif(1,0);
+right_curve(1,2,3,4);
+thinpen;
+bot rt z5 = (w,0);
+draw z5--z4;
+baselinepen;
+z6=(-serif_width/2,baselinewidth/2);
+top rt z7 = z4;
+baseline(z6,z7);
+labels(0,1,2,3,4,5,6,7);
+showit;
+endchar;
+
+
+beginchar(148,let_width#,let_height#,0); "The letter Pe";
+
+af(0,0);
+z1=(serif_width,h-thick/2);
+penpos1(thick,90);
+z2=(tightness*w,y1);
+penpos2(thick,90);
+z3=(w-thin/2,h/2);
+penpos3(thin,0);
+z4=(tightness*w,baselinewidth/2);
+penpos4(baselinewidth,-90);
+z5=(serif_width,baselinewidth/2);
+penpos5(baselinewidth,-90);
+penstroke z5e{right}...{right}z4e...{up}z3e{up}...z2e{left}...{left}z1e;
+top_serif(1,0);
+baseline((0,baselinewidth/2),(w/2,baselinewidth/2));
+showit;
+%so far, we've got a kaf.
+z6=z1;
+z8=(0,h/2);
+z10=(w/2-thick/2,h/2);
+any_curve(1.5,thin,thick,6,7,8,9,10);
+fill fullcircle scaled thick shifted z10;
+%and now for the chupchik:
+x12=0;
+y11=h/2;
+chupchik(11,12,70);
+labels(0,1,2,3,4,5,6,7,8,9,10,11);
+showit;
+endchar;
+
+
+
+beginchar(139,let_width#,let_height#,0); "The letter Kaf";
+
+af(0,0);
+z1=(serif_width,h-thick/2);
+penpos1(thick,90);
+z2=(tightness*w,y1);
+penpos2(thick,90);
+z3=(w-thin/2,h/2);
+penpos3(thin,0);
+z4=(tightness*w,baselinewidth/2);
+penpos4(baselinewidth,-90);
+z5=(serif_width,baselinewidth/2);
+penpos5(baselinewidth,-90);
+penstroke z5e{right}...{right}z4e...{up}z3e{up}...z2e{left}...{left}z1e;
+top_serif(1,0);
+baseline((0,baselinewidth/2),(w/2,baselinewidth/2));
+labels(0,1,2,3,4,5);
+showit;
+endchar;
+
+
+
+
+
+
+
+
+beginchar(128,let_width#,let_height#,0); "The letter Aleph";
+
+af(0,0);
+pickup pencircle xscaled thin yscaled thick; % this pen is only approx. right
+lft z1 = (0,h-thick/2);
+z2 = (0,y1-serif_height/3);
+bot z3 = (w,serif_height/3);
+bot z4 = (w,0);
+pickup pencircle xscaled thin yscaled (thick/cosd(angle(z3-z2)));
+draw z1 ... z2{z3-z2}...{z3-z2}z3...z4;%corrected z3-z3
+z7 = (4/5w,y1); %now we make the upper right squiggle.
+z8 = (4/5w,y7-serif_height/3);
+z8-z9 = whatever*(z2-z3); % || to the big fat line
+x9 = w;
+%z9 = (w,4/5h+serif_height);
+z10 = (x9,y9-serif_height/3);
+hairlinepen; %and z6 the upper right part.
+z6-z5=whatever*(z3-z2) rotated 90;%the line is perp. to the fat line.
+z6 = 3/4[z8,z9]; %And put z6 somewhere on that squiggle.
+z5 = whatever[z3,z2]; %z5 is somewhere on the big fat line.
+draw z5---z6;
+pickup pencircle xscaled thin yscaled (thick/cosd(angle(z3-z2)));
+draw z7 ... z8{z9-z8}...{z9-z8}z9...z10;
+pickup pencircle xscaled thin yscaled thick rotated angle(z3-z2);
+z11 = .2[z2,z3]; %we're in the home stretch.
+z15 = (x11,thick/2);
+x13l = 0; %Try to figure out a third point for the curve
+x13r = thin; %A thin line.
+y13l=y13r=.55h; %touching the left edge
+z13=.5[z13l,z13r]; %Just like the macro for penpos.
+penpos11 (thin,angle(z13-z11)+90);
+penpos15 (thick,angle(z15-z13)+90);
+z14=.3[z13,z15];
+penstroke z11e{z13-z11}...z13e...{z15-z13}z15e;
+fill fullcircle scaled thick shifted z15;
+showit;
+z16=(0,baselinewidth/2);
+baseline(z16,(x15,baselinewidth/2));
+labels(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16);
+showit;
+endchar;
+
+beginchar(150,let_width#,let_height#,0); "The letter Tzadi";
+
+af(0,thick#/2);
+z1=(0,baselinewidth/2);
+z2=(w/2,baselinewidth/2);
+z4=(w,baselinewidth/2);
+z6=(w/3,h/1.8);
+any_curve(1,baselinewidth,thin,2,3,4,5,6);
+baseline(z1,(w/(1.5),baselinewidth/2));
+hairlinepen;
+z7=whatever[z6,z4];
+x7=w/2;
+z8=(w-overshoot*2,h-thick/2);
+draw z7--z8;
+thickpen;
+%it looks better sticking out a bit, but we have to set adjust_fit (af) above
+z9=(w,h-thick/2); %z9=(w-thick/2,h-thick/2); <--- old version
+draw z8--z9;
+mycutoff((x8-cosd(angle(z8-z7))*hairline,y8),angle(z8-z7)+90);
+z10=(serif_width,let_height-thick/2);
+showit;
+x13=x6+thin/2; %can't reuse z6 becuase z6l and z6r are already (mis)set.
+y13=y6-thin/2;
+right_curve(10,11,12,13);
+showit;
+top_serif(10,14);
+labels(1,2,3,4,5,6,7,8,9,10,11,12,13,14);
+showit;
+endchar;
+
+
+
+
+beginchar(133,let_width#/3,let_height#,0); "The letter Vav";
+
+af(0,0);
+z1=(serif_width,h-thick/2);
+z4=(w-thin/2,0);
+general_right_curve(tightness/2,tightness,thick,thick,thin,thin,1,2,3,4);
+roundoff_bottom(4);
+top_serif(1,0);
+labels(0,1,2,3,4);
+showit;
+endchar;
+
+
+
+beginchar(131,let_width#,let_height#,0); "The letter Daled";
+
+af(0,0);
+thickpen;
+top z1 = (serif_width,h);
+top rt z2 = (w,h);
+draw z1 --- z2; %Draw the top line
+mycutoff(z1,180); %mycutoff left part so we can make serif.
+top_serif(1,0);
+thinpen;
+rt z3 = (w-overshoot,h-thick/2);
+rt z4 = (w-overshoot,0);
+draw z3--z4;
+labels(0,1,2,3,4);
+showit;
+endchar;
+
+
+beginchar(132,let_width#,let_height#,0); "The letter Heh";
+
+af(0,0);
+thickpen;
+top z1 = (serif_width,h);
+top rt z2 = (w,h);
+draw z1 --- z2; %Draw the top line
+mycutoff(z1,180); %cutoff left part so we can make serif.
+top_serif(1,0);
+thinpen;
+rt z3 = (w-overshoot,h-thick/2);
+rt z4 = (w-overshoot,0);
+draw z3--z4; %Up to here we have a daled
+z5=(serif_width,.55h);
+z6=(serif_width,0);
+draw z5--z6; %Now we've drawn the stem.
+labels(1,2,3,4,5,6);
+showit;
+endchar;
+
+
+beginchar(129,let_width#,let_height#,0); "The letter Bet";
+
+af(0,0);
+z1=(serif_width,let_height-thick/2);
+z4=(let_width-thin/2-overshoot,baselinewidth/2);
+right_curve(1,2,3,4);
+roundoff_bottom(4);
+top_serif(1,0);
+baseline((0,baselinewidth/2),(let_width,baselinewidth/2));
+labels(1,2,3,4);
+showit;
+endchar;
+
+
+
+
+beginchar(152,let_width#,let_height#,0); "The letter Resh";
+
+af(0,0);
+z1=(serif_width,h-thick/2);
+z4=(w-thin/2,0);
+right_curve(1,2,3,4);
+roundoff_bottom(4);
+top_serif(1,0);
+labels(0,1,2,3,4);
+showit;
+endchar;
+
+
+
+font_normal_space 30u#;
+font_normal_stretch 10u#;
+font_normal_shrink 20u#;
+
+end; % KL 25.05.9
diff --git a/language/arabic/arabtex/mfinput/hclassic.mf b/language/arabic/arabtex/mfinput/hclassic.mf
new file mode 100644
index 0000000000..4d54e8dd0e
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/hclassic.mf
@@ -0,0 +1,208 @@
+%(c) 1990,91 by Joel M. Hoffman
+
+%hclassic. Modernized Classical Hebrew font. Version 0.9.
+%calls the file base.
+%last update: 5/15/91 by JMH
+% modified for use with ArabTeX: 5/25/96 Klaus Lagally
+% renamed "hcbase_pc" to "hcbase": 1999/04/10 KL
+
+%This calls the file ``hcbase_pc'' to create a general purpose classical
+%Hebrew font. See that file for more information.
+
+%Use of this material in a commercial venture of any sort requires
+%permission from me. Otherwise, you are free to use this for any
+%legal, non-destructive purpose. If you find this font useful, a
+%contribution to charity will be most appreciated.
+%
+%Send comments or complaints to:
+%
+%BITNET: hoffman@nyuacf.BITNET <-- this will change soon
+%CompuServe: 72700,402 -or- 72700.402@compuserve.com
+%SNAIL: Joel M. Hoffman
+% 19 Hillcrest Lane
+% Rye, NY 10580
+% U.S.A.
+
+
+mode_def testing=
+ pixels_per_inch:=300*4;
+ blacker:=.1;
+ o_correction:=1;
+ fillin:=.01;
+ proofing:=2;
+ fontmaking:=0;
+ tracingtitles:=1;
+ enddef;
+if unknown mode:
+mode:=localfont; fi
+mode_setup;
+
+if mode=testing: screenstrokes; fi
+
+
+%I used large units, and then later scaled the font down to size. -JMH
+%u#:=1/100in#; %ten units to a square.
+u#:=1/384.16in#; %but account for magnification.(1/384.16)
+%u#:=1/295.16in#;%but account for magnification and hp vs. epson
+
+let_height#:=35u#; %height of a standard letter.
+asc_height#:=25u#; %ascender height (for lamed).
+desc_height#:=16u#; %descender height(depth?).
+
+let_width#:=31u#; %width of a standard letter. (31u#)
+
+serif_height#:=3u#; %height of a standard serif.(2.5u#)
+serif_width#:=2.5u#; %width of a standard serif. (2.5u#)
+chupchiklength#:=6u#;
+
+vowel_width#:=14u#; %width of vowels under the letters.
+vowel_height#:=12u#; %How tall the vowels are.
+vowel_depth#:=8u#; %the space between the baseline and the vowels.
+
+let_fit#:=3u#; %space to left and right of letter (.5u#)
+vowel_fit#:=1.4u#; %space to the left and right of vowel(1.4u#);
+
+thick#:=8.5u#; %thickness of thick lines. (7.5u#)
+thin#:=3u#; %thickness of thin lines. (2u#)
+hairline#:=1u#; %VERY thin lines (.3u#)
+vowel_stroke#:=4u#; %pen to use
+dot#:=4u#; %diameter of dots (dagesh, vowels, etc)
+squaredot#:=10u#;
+
+overshoot#:=3u#; %overshoot for bet, taf.
+
+tightness:=.74; %tightness for right_curve; (.78)
+
+baseline_tilt:=60; %degrees for the tilt in baseline lines.
+
+head_tilt#:=.7u#; %tilt for the head on the zion, etc.
+
+sss:=.7; %Shrink the serif's width by this amount on a shin.
+ %(s)hrink (s)hin's (s)erif
+
+define_pixels(let_height,asc_height,desc_height,let_width,head_tilt);
+define_pixels(vowel_height,vowel_width,vowel_depth,vowel_height);
+define_pixels(squaredot);
+define_whole_pixels(let_fit,vowel_fit);
+define_pixels(serif_height,serif_width,chupchiklength);
+define_pixels(overshoot);
+define_whole_blacker_pixels(thick,thin,dot,hairline,vowel_stroke);
+
+def serifpen = pickup pencircle xscaled thin yscaled thick; enddef;
+%def serifpen = pickup pencircle xscaled hairline yscaled thick; enddef;
+def vowelpen = pickup pensquare scaled vowel_stroke; enddef;
+
+
+%this is from the METAFONT book:
+shrink_fit:=1+hround(2let_fit#*hppp)-2let_fit;
+
+def normal_adjust_fit(expr left_adjustment,right_adjustment) =
+ l:=-hround(left_adjustment*hppp)-let_fit;
+ interim xoffset:=-l;
+ charwd:=charwd+2let_fit#+left_adjustment+right_adjustment;
+ r:=l+hround(charwd*hppp)-shrink_fit;
+ w:=r-hround(right_adjustment*hppp)-let_fit;
+ enddef;
+let af=normal_adjust_fit;
+def negate_af = af(-let_fit#,-let_fit#); enddef;
+def vowel_af = af(-let_fit#+vowel_fit#,-let_fit#+vowel_fit#); enddef;
+extra_endchar := extra_endchar&"r:=r+shrink_fit;w:=r-l;";
+
+
+
+
+def top_serif (suffix i,j) = %draw a serif at point z.i, using z.j
+ serifpen;
+ x.j = x.i-serif_width; y.j = y.i + serif_height;
+ draw (x.i+serif_width,y.i) ... z.i .. z.j;
+enddef;
+
+def bottom_serif (suffix i,j) = %draw an inverse serif at point z.i, with z.j
+ serifpen;
+ x.j = x.i+serif_width;y.j=y.i-serif_height;
+ draw (x.i-serif_width,y.i) ... z.i .. z.j;
+enddef;
+
+def roundoff_bottom (suffix i) = %round off point z.i, assuming thin lines.
+ fill fullcircle scaled thin shifted z.i;
+enddef;
+
+def right_curve(suffix i,j,k,l) = %call general_right_curve
+general_right_curve(tightness,tightness,thick,thick,thin,thin,i,j,k,l);
+enddef;
+
+def left_curve(suffix i,j,k,l) = %call general_left_curve
+general_left_curve(tightness,tightness,thick,thick,thin,thin,i,j,k,l);
+enddef;
+
+
+def general_right_curve (expr ta,tb,sa,sb,sc,sd) (suffix i,j,k,l) =
+ y.j=y.i;x.j=ta*(x.l-x.i)+x.i;
+ x.k=x.l;y.k=tb*(y.i-y.l)+y.l;
+ penpos i (sa,90);
+ penpos j (sb,90);
+ penpos k (sc,0);
+ penpos l (sd,0);
+ penstroke z.l.e{up} ... {up}z.k.e ... z.j.e{left} ...{left} z.i.e;
+enddef;
+
+def general_left_curve (expr ta,tb,sa,sb,sc,sd) (suffix i,j,k,l) =
+ y.j=y.i;x.j=ta*(x.l-x.i)+x.i;
+ x.k=x.l;y.k=tb*(y.i-y.l)+y.l;
+ penpos i (sa,-90);
+ penpos j (sb,-90);
+ penpos k (sc,0);
+ penpos l (sd,0);
+ penstroke z.i.e{right}...{right}z.j.e...z.k.e{up}...{up}z.l.e;
+enddef;
+
+
+
+def any_curve (expr adjust,thick,thin) (suffix i,j,k,l,m) =
+ %draw from i to m via k, using j and l, using specified values for
+ % withds.
+ z.j=(tightness/adjust)[z.i,z.k];
+ z.l=(tightness/adjust)[z.m,z.k];
+ penpos i (thick,angle(z.k-z.i)+90);
+ penpos j (thick,angle(z.k-z.i)+90);
+ penpos l (thin,angle(z.m-z.k)+90);
+ penpos m (thin,angle(z.m-z.k)+90);
+ penstroke z.i.e{z.k-z.i}
+ ... {z.k-z.i}z.j.e
+ ... z.l.e{z.m-z.k}
+ ... {z.m-z.k}z.m.e;
+enddef;
+
+def baseline (expr a,b) = %draw a baseline
+ pickup penrazor scaled thick rotated baseline_tilt;
+ draw a --- b;
+enddef;
+baselinewidth:= sind(baseline_tilt)*thick;
+
+def thickpen = pickup pencircle scaled thick; enddef;
+def thinpen = pickup pencircle scaled thin; enddef;
+def hairlinepen = pickup pencircle scaled hairline; enddef;
+def baselinepen = pickup penrazor scaled thick rotated baseline_tilt; enddef;
+def dotpen = pickup pencircle scaled dot; enddef;
+def squarepen = pickup penrazor scaled squaredot rotated 45; enddef;
+
+def dotat (expr z) = %put at dot at z
+fill fullcircle scaled dot shifted z;
+enddef;
+
+def chupchik(suffix i,j)(expr ang) = %draw a chupchik from z at angle ang
+thinpen;
+z.i=z.j+dir(ang)*chupchiklength;
+draw z.i--z.j;
+enddef;
+
+def mycutoff(expr a,b) = %cutoff with culling
+cullit;
+cutoff(a,b);
+cullit;
+enddef;
+
+%input hcbase_pc; % KL 25.05.96
+input hcbase; % 1999/04/10 KL
+
+end; % KL 03.11.96
diff --git a/language/arabic/arabtex/mfinput/nash.mf b/language/arabic/arabtex/mfinput/nash.mf
new file mode 100644
index 0000000000..72af764a6f
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/nash.mf
@@ -0,0 +1,38 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% nash.mf %%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ArabTeX NASKH Font
+% collect all characters
+% 27.01.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% abort if cm base is loaded
+if unknown nashbase: endinput fi;
+
+mode_setup;
+
+% font parameters
+em# := 25.4dx#;
+ex# := 8dy#;
+font_slant 0;
+font_normal_space .3em#;
+font_normal_stretch .5em#;
+font_normal_shrink .1em#;
+font_x_height ex#;
+font_quad em#;
+font_extra_space 0;
+font_coding_scheme "ArabTeX Naskh";
+
+font_setup;
+
+input nashchar;
+
+input nashlig;
+
+input nashdia;
+
+input nashdig;
+
+input nashspec;
diff --git a/language/arabic/arabtex/mfinput/nash14.mf b/language/arabic/arabtex/mfinput/nash14.mf
new file mode 100644
index 0000000000..1ce0496e71
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/nash14.mf
@@ -0,0 +1,52 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% nash14.mf %%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Naskh font at 14.4 pt
+% 27.01.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown nashbase: input nashbase fi
+
+font_identifier "NASKH";
+
+font_size 14.4pt#;
+
+fs# := 14.4pt#;
+
+% grid units
+fs# = 25.4dx#;
+fs# = 25.4dy#;
+
+% diacritics distance
+dia_d := 2;
+
+% normal pen
+px# := 1.8dy#; py# := 0.3dx#;
+
+pen_angle := 70;
+
+diag_angle = pen_angle - angle(px#,py#);
+
+% dot pen
+dp# := 2dy#; ap := 50;
+
+% dot distances
+dpx := 1.5; dpy := 3;
+dpx := 1.2; dpy := 2.5;
+
+% small pen for diacritics
+spx# = dx#;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+input nash
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+end.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/mfinput/nash14bf.mf b/language/arabic/arabtex/mfinput/nash14bf.mf
new file mode 100644
index 0000000000..2e951299e5
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/nash14bf.mf
@@ -0,0 +1,51 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% nash14bf.mf %%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Nash font at 14 pt, bold
+% 08.04.92
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown nashbase: input nashbase fi
+
+font_identifier "NASHBF";
+
+font_size 14.4pt#;
+
+fs# := 14.4pt#;
+
+% grid units
+fs# = 25.4dx#;
+fs# = 25.4dy#;
+
+% diacritics distance
+dia_d := 2;
+
+% normal pen
+px# := 2.4dy#; py# := 0.6dx#;
+
+pen_angle := 50;
+
+diag_angle = pen_angle - angle(px#,py#);
+
+% dot pen
+dp# := 2.2dy#; ap := 50;
+
+% dot distances
+dpx := 1.5; dpy := 3;
+
+% small pen for diacritics
+spx# := 1.5dx#;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+input nash
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+end.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/mfinput/nashbase.mf b/language/arabic/arabtex/mfinput/nashbase.mf
new file mode 100644
index 0000000000..9126ec6e9c
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/nashbase.mf
@@ -0,0 +1,541 @@
+%%%%%%%%%%%%%%%%%%%%%% nashbase.mf %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% base file for NASH
+% 21.05.97
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown cmbase: else:
+errhelp "you are using 'cmbase'; rerun with base=&plain";
+errmessage "this font needs the 'plain' METAFONT base; run aborted";
+endinput
+fi;
+
+if unknown nashcode: input arabsymb fi;
+
+nashbase := 1;
+
+def font_setup =
+ define_pixels(dx, dy, dp, em, ex);
+ define_blacker_pixels(px, py, spx);
+ pa := pen_angle; pl := px++py; da := pa - angle(px,py);
+ pickup pensquare xscaled px yscaled py rotated pa;
+% pickup pencircle xscaled px yscaled py rotated pa;
+ nash_pen := savepen;
+ pickup pencircle scaled spx;
+ dia_pen := savepen;
+enddef;
+
+def makegrid(text r) =
+ for x=0 step dx until w+.5dx:
+ for y=0 step dy until h+.5dy:
+ fill unitsquare shifted (x,y);
+ endfor;
+ for y=dy step dy until d+.5dy:
+ fill unitsquare shifted (x,-y);
+ endfor;
+ endfor
+% for y=0,h,-d: r((0,y), (w,y)); endfor
+% for x=0,w: r((x,-d), (x,h)); endfor
+ maketicks(r);
+enddef;
+
+%%%%%%%%%%%%%% char-macros %%%%%%%%%%%%%%%%%
+
+def arabchar(expr code, form, uw, uh, ud) =
+ beginchar(if string code: code else: (code + form) fi,
+ uw*dx#, uh*dy#, (ud + dia_d)*dy#);
+ pickup nash_pen;
+ if .5w <> good.x .5w: change_width; fi
+ x.l = x.ll = 0; x.r = x.rr = w; x.m = 0.5w;
+ bot y.l = bot y.r = y.m = bot y.ll - .5ex = 0; y.rr = y.ll;
+enddef;
+
+def diachar(expr code, uw, uh) =
+ beginchar(code, uw*dx#, (uh+0.5)*dy#, 0.5*dy#);
+% beginchar(code, uw*dx#, uh*dy#, 0);
+ pickup dia_pen;
+ if .5w <> good.x .5w: change_width; fi
+ lft x.l = 0; rt x.r = w;
+ y.l = 0.5dy; y.r = h - dy;
+% bot y.l = 0; top y.r = h;
+enddef;
+
+def numchar(expr code) =
+ beginchar(code, 10*dx#, 10*dy#, 5*dy#);
+ pickup nash_pen;
+ if .5w <> good.x .5w: change_width; fi
+ lft x.l = 0; rt x.r = w;
+ bot y.l = -d; top y.r = h;
+% bot y.l = 0; top y.r = h;
+enddef;
+
+extra_endchar :=
+extra_endchar & "penlabels(l,m,r,ll,rr,range 1 thru 20);";
+
+%%%%%%%%%%%%%% dot-macros %%%%%%%%%%%%%%%%%
+
+def put_dot (suffix $) =
+ z.$1 - z.$2 = (0, px - py) rotated pa;
+ z.$ = .5[z.$1, z.$2];
+ draw z.$1--z.$2;
+ labels($1,$2);
+enddef;
+
+def one_dot (expr n) =
+ x.dd := x.m; y.dd := y.m + round(n*dy);
+ put_dot(dd);
+enddef;
+
+def two_dots (expr n) =
+ x.dr - x.m = x.m - x.dl = round(dpx*dx);
+ y.dl = y.dr = y.m + round(n*dy);
+ put_dot(dl); put_dot(dr);
+enddef;
+
+def three_dots (expr n) =
+ two_dots(n); one_dot(n+dpy);
+enddef;
+
+def three_dots_low (expr n) =
+ two_dots(n); one_dot(n-dpy);
+enddef;
+
+%%%%%%%%%%%%%% stroke-macros %%%%%%%%%%%%%%%%%
+
+def bow (expr u, v, w) =
+ draw u..controls v and v..w;
+enddef;
+
+def l_att (suffix $) =
+ x.$l = x.$ - dx; y.$l = y.l;
+ bow(z.$, z.$l, z.l);
+enddef;
+
+def r_att (suffix $) =
+ x.$r = x.$ + dx; y.$r = y.r;
+ bow(z.$, z.$r, z.r);
+enddef;
+
+def r_att (suffix $) =
+ x.$r = x.$ + dx; y.$r = y.r;
+% bow(z.$, z.$r, z.r);
+draw z.${z.$r-z.$}..z.r{right};
+enddef;
+
+def serif (suffix $) =
+ z.$ = 0.2[z.$2,z.$1];
+% z.$2 - z.$1 = 3dy * (-4dx,11dy); % 110
+ y.$2 - y.$1 = 3dy;
+ z.$2 - z.$1 = whatever * (-4dx,11dy);
+ draw z.$1--z.$2;
+enddef;
+
+def s_bow (suffix $) =
+ x.$1 - .5dx = x.$;
+ x.$2 - 4dx = lft x.$3 = lft x.$4 + 1.5dx - pl = x.l;
+ y.$1 - dy = y.$3 = y.$4 - 2dy = y.$2 + 2dy = - 2dy;
+ draw z.$..z.$1{down}..z.$3{up}..z.$4;
+enddef;
+
+def p_loop (suffix $) =
+pickup dia_pen;
+x.$1 = x.$2 = x.$; y.$1 + spx + dy = y.$2; top y.$2 = y.$;
+draw z.$1..z.$2..cycle;
+pickup nash_pen;
+enddef;
+
+def r_con (suffix $) =
+ charic := (y.$-y.r)/vppp;
+enddef;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%% bah-macros %%%%%%%%%%%%%%%%%
+
+def bah_bow =
+x1 = x4 + dx = x2 + 13.8dx; x2 = x3 = x.l + 0.6dx;
+%x1 = x4 = x2 + 13.8dx; x2 = x3 = x.l + 0.6dx;
+y4 - 5dy = y1 - 3dy = y2 - 2dy = y.m = y3 - 4dy;
+x5 = x.m; y5 = y.m - 0.5dy;
+enddef;
+
+def bah_end =
+bah_bow; draw z1..z5{left}..z2..z3; r_att(1);
+enddef;
+
+def bah_iso =
+bah_bow; draw z4..z1..z5{left}..z2..z3;
+enddef;
+
+def bah_mid =
+x6 = x.m; y6 = good.y (y.r + 2dy);
+l_att(6); r_att(6);
+enddef;
+
+def bah_beg =
+x.m := x.m + 0.5dx;
+x1 - dx = x2 = x.m; y1 = y.l; y2 = y.m + 4dy;
+bow(z2, z1, z.l);
+enddef;
+
+%%%%%%%%%%%%%% hhah-macros %%%%%%%%%%%%%%%%%
+
+def hhah_iso_bar =
+x1 - 2dx = x2 - 11dx = x.l; y1 - 4dy = y2 - 4dy = y.r;
+x3 = x2 - 2dx; y3 = y2; draw z1{(8dx,3dy)}..z2{right};
+enddef;
+
+def hhah_mid_bar =
+x1 - 2dx = x2 - 11dx = x.l; y1 - 4dy = y2 - 3dy = y.r;
+x3 = x2 - 2dx; y3 = y2; draw z1{(8dx,3dy)}..z2{right};
+enddef;
+
+def hhah_beg_bar =
+x1 - 2dx = x2 - 11dx = x.l; y1 - 4dy = y2 - 2dy = y.r;
+x3 = x2 - 2dx; y3 = y2; draw z1{(8dx,3dy)}..z2{right};
+enddef;
+
+def hhah_bow =
+lft x4 = x1 - 2dx = x5 - 8dx; rt x6 - 6dx = x5;
+y5 = y6 - dy = -10dy; y4 = 0.6[y2,y5];
+penpos4(pl,da); penpos5(pl,90); penpos6(0.3dy,90);
+draw z2{left}..z4{down};
+fill z4r{down}..z5r{right}..z6r--z6l--z5l{left}..z4l{up}--cycle;
+enddef;
+
+def hhah_iso =
+hhah_iso_bar; hhah_bow;
+enddef;
+
+def hhah_end =
+hhah_mid_bar; hhah_bow;
+draw z3{down}..z.r{right};
+enddef;
+
+def hhah_mid =
+hhah_mid_bar; draw z2{left}..z.l{left};
+draw z3{down}..z.r{right};
+enddef;
+
+def hhah_beg =
+hhah_beg_bar; draw z2{left}..z.l{left};
+enddef;
+
+%%%%%%%%%%%%%% dal-macros %%%%%%%%%%%%%%%%%
+
+def dal_iso =
+x1 = x2 + 2dx = x3 - 3dx = x.r - 4dx; x.m := x1;
+y1 - 6dy = y2 = y3 - dy = y.r;
+draw z1{(7dx,-4dy)}..z3..z2{left};
+enddef;
+
+def dal_end =
+x1 + dx = x3 - dx = x4 + 4dx = x.r - 3dx; lft x2 = x.r - 9dx;
+y1 = 8dy; y2 - dy = y3 = y4 = y.l; z5 = .3[z1,z3];
+draw z1--z5{z3-z1}..z.r{right};
+draw z5{z3 - z1}..z4{left}..z2;
+enddef;
+
+%%%%%%%%%%%%%% rah-macros %%%%%%%%%%%%%%%%%
+
+def rah_bow =
+x5 + dx = x2 + dx = x4 + 9dx = x3 - px + 6dx = x.r;
+y5 + 3dy = y2 - 0.5dy = y4 + 6dy = y3 + 6dy = y.r;
+penpos2(pl,da); penpos3(pl,90);
+penpos4(0.3dy,90); penpos5(0.4[py,px],0);
+enddef;
+
+def rah_iso =
+rah_bow;
+y1 - 2dy = y.r; x1 + 0.5dx = x2;
+penpos1(pl,da);
+fill z1l..z2l..z5l..z3r..z4r{left}--z4l--z3l..z5r..z2r..z1r--cycle;
+enddef;
+
+def rah_end =
+rah_bow;
+y1 - .5dy = y.r; x1 = x2; % = x.r - dx;
+fill z2l..z5l..z3r..z4r{left}--z4l--z3l..z5r..z2r--cycle;
+draw z1..z.r{right};
+enddef;
+
+%%%%%%%%%%%%%% sin-macros %%%%%%%%%%%%%%%%%
+
+def s_wave =
+z2 - z1 = z5 - z4 = 2(z3 - z2);
+x3 - x1 = 6(x3 - x5) = 6dx; x.m := x2;
+y4 = y5 - 0.5dy = y2 - 2.5dy = y.r;
+draw z3..z5..z2; draw z2..z4{left};
+enddef;
+
+def mid_wave =
+x3 = x.r - 3dx; s_wave;
+draw z4{left}..z1;
+enddef;
+
+def beg_wave =
+rt x3 = x.r; s_wave;
+draw z4{left}..z1;
+enddef;
+
+def sin_iso =
+beg_wave; s_bow(1);
+enddef;
+
+def sin_end =
+mid_wave;
+draw z3{down}..z.r{right}; s_bow(1); enddef;
+
+def sin_mid =
+mid_wave; draw z3{down}..z.r{right}; l_att(1);
+enddef;
+
+def sin_beg =
+beg_wave; l_att(1);
+enddef;
+
+%%%%%%%%%%%%%% sad-macros %%%%%%%%%%%%%%%%%
+
+def sad_bow =
+x2 - dx = x3 - 9dx; x2 + 3dx = x.m; x4 = x2 - 2dx;
+y2 = y3 - 3dy = y4 - 2dy = y.r;
+x8 = x2 + 3.5dx; y8 = y2 + 0.5dy;
+draw z2{(5dx,6dy)}..z3{(4dx,-7dy)}..tension 2..z2{left};
+enddef;
+
+def sad_iso =
+x.m := x.m + 4dx;
+sad_bow; draw z2{left}..z4; s_bow(4);
+enddef;
+
+def sad_beg =
+x.m := x.m + dx;
+sad_bow; draw z2{left}..z4; l_att(4);
+enddef;
+
+%%%%%%%%%%%%%% ttah-macros %%%%%%%%%%%%%%%%%
+
+def ttah_stroke =
+x5 = x7 - dx = x2; y5 = 12dy; y7 = y2 + dy;
+draw z5{down}..z7{down};
+serif(5);
+enddef;
+
+def ttah_tail =
+x2 - x6 = 5dx; y6 = top y2;
+penpos2(pl,da);
+fill z6--z2r--z2l{left}..z6..cycle;
+enddef;
+
+def ttah_iso =
+x.m := x.m + dx;
+sad_bow; ttah_stroke; ttah_tail;
+x.m := x.m + dx;
+enddef;
+
+def ttah_beg =
+sad_bow; ttah_stroke;
+x.m := x.m + dx;
+enddef;
+
+%%%%%%%%%%%%%% ain-macros %%%%%%%%%%%%%%%%%
+
+def ain_head =
+x.m := x.m - 2dx;
+lda := 0.5pa + angle(dx,dy);
+penpos7(pl,pa); penpos3(0.3dy,90);
+penpos2(px,lda); penpos8(px,lda);
+x7 + 2dx = x3 + dx = x2 + 6dx; x8 = x2 + 0.3dx;
+y7 = y2 - 3dy = y3 - 4dy; y8 = y2; z7 = 0.25[z1, z.l];
+fill z7l{z.l-z1}..z2l{up}--z2r--z8r{down}..z7r{z1-z.l}--cycle;
+fill z2r{(7dx,10dy)}..z3r--z3l..z8l{(-7dx,-10dy)}--z2l--cycle;
+enddef;
+
+def ain_bow =
+lft x4 = x.l = x5 - 8dx; rt x6 = x5 + 6dx;
+y5 = y6 - dy = -10dy; y4 = 0.6[y1,y5];
+penpos4(pl,da); penpos5(pl,90); penpos6(0.3dy,90);
+draw z1{z.l - z1}..z4{down};
+fill z4r{down}..z5r{right}..z6r--z6l--z5l{left}..z4l{up}--cycle;
+enddef;
+
+def ain_top =
+x2 = x1 = x.r - 3.5dx; y2 - 2dy = y1 = 2dy;
+%x2 = x1 = x.m + 0.5dx; y2 - 2dy = y1 = 2dy;
+x7 - x2 = x2 - x3 = 2dx; y7 = y3 = y2 - 0.5dy;
+x8 = x3 - dx; y8 = y3;
+draw z.r{left}..z1..z3; draw z8..z2..z7;
+enddef;
+
+def ain_iso =
+x1 = x.r - 3dx; y1 = 5dy;
+ain_head; ain_bow;
+enddef;
+
+def ain_end =
+ain_top; draw z7..z1{z.l - z1}; ain_bow;
+enddef;
+
+def ain_mid =
+ain_top; draw z7..z1..z.l{left};
+enddef;
+
+def ain_beg =
+rt x1 = x.r; y1 = 3dy;
+ain_head; draw z1..z7..z.l{left};
+enddef;
+
+%%%%%%%%%%%%%% fah-macros %%%%%%%%%%%%%%%%%
+
+def fah_iso =
+x.m := x.m + 4dx;
+x1 = x2 - 2dx = x3 + dx = x4 - 2.5dx; rt x4 = x.r;
+y1 = y4 = 6dy; y2 = y3 = 8dy;
+lft x5 = x.l; lft x6 = lft x5 - 1.5dx + pl; x7 = 6dx;
+y5 = 3dy; y6 = y5 + 3dy; bot y7 = -0.5dy;
+draw z2..z1..z3..z4{down}..z7..z5{up}..z6;
+enddef;
+
+def fah_end =
+x.m := x.m + 4dx;
+x1 = x2 + dx = x.r - 2dx; lft x3 = lft x4 + 1.5dx - pl = x5 - 5dx = x.l;
+y5 = dy; y1 = 6.5dy; y2 = 2dy; y3 = 4dy; y4 = 6dy;
+x2a + 3dx = x2b = x1; y2a = y2b = y.r + 2dy;
+draw z.r{left}..z2a..z1;
+draw z1..z2b..tension 1.5..z5..z3{up}..z4;
+enddef;
+
+def fah_mid =
+x1 = x2 + dx = x.r - 2dx; y1 - 5dy = y2 - 0.5dy = y.r;
+x2a + 3dx = x2b = x1; y2a = y2b = y.r + 2dy;
+draw z.r{left}..z2a..z1; draw z1..z2b..z.l{left};
+enddef;
+
+def fah_beg =
+x1 = x2 - 2dx = x3 + dx = x4 - 2.5dx; rt x4 = x.r;
+y1 = y4 = 4dy; y2 = y3 = 6dy;
+draw z2..z1..z3..z4{down}..z.l{left};
+enddef;
+
+%%%%%%%%%%%%%% kaf-macros %%%%%%%%%%%%%%%%%
+
+def kaf_mark (suffix $) =
+x.$6 + dx = x.$7 + 2dx = x.$8 = x.$9 + 3dx = x.$;
+y.$6 - 3dy = y.$7 - dy = y.$8 = y.$9 + dy = y.$;
+pickup dia_pen;
+draw z.$6{(-6dx,-5dy)}..z.$7..z.$8..z.$9{left};
+pickup nash_pen;
+labels($6,$7,$9);
+enddef;
+
+def kaf_beg =
+x1 - 11dx = x2 = x4 - 10dx = x.l;
+%x1 = x.r - dx; x2 = x.l; x4 = x.r - 2dx;
+%y4 = y.r; y1 = 14dy; y2 = 9dy; z3 = .4[z2, z4];
+y4 = y.l = y1 - 13dy = y2 - 8dy; z3 = .4[z2, z4];
+bow (z1, z2, z3);
+draw z3{z3 - z2}..z.l{left};
+enddef;
+
+%%%%%%%%%%%%%% gaf-macros %%%%%%%%%%%%%%%%%
+
+def gaf_iso =
+x1 - 15dx = x2 - 6dx = x4 - 8dx = x6 - dx = x.l;
+y1 - 13dy = y2 - 9dy = y4 = y6 - dy = y.l;
+z3 = .7[z2, z4]; z5 = .5[z4, z.l];
+bow(z1, z2, z3); bow(z3, z4, z5); bow(z5, z.l, z6);
+enddef;
+
+def gaf_iso =
+x1 - 2dx = x2 + 7dx = x4 +5dx = x.r;
+y1 - 13dy = y2 - 9dy = y4 = y.r;
+z3 = .7[z2, z4]; bow(z1, z2, z3);
+x6 = x7 = x.l + 0.6dx; y6 = y7 - 2dy = y.l + dx;
+x5 = .5[x6, x4]; y5 = y.m; z13 = .5[z4, z3];
+draw z7 .. z6 .. z5{right} .. z13{z3-z13}--z3;
+enddef;
+
+def gaf_serif =
+x10 = x1; y10 = y1 + 2.5dy; x11 = x2 + 2dx; y11 = y2 + 3dy;
+pickup dia_pen;
+z12 = 0.1[z10,z11]; draw z12--z11;
+pickup nash_pen;
+enddef;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+def serpent =
+x1 = x3 = x.r - 3dx;
+x2 = x4 = x5 - dx = x.l + 4dx;
+y1 = y2 = y4 - 4dy = y5 - 8dy = y.l; y3 = y4;
+draw z5 .. z4{right} .. z3{right} .. z1{left} .. z2;
+enddef;
+
+%%%%%%%%%%%%%% nun-macros %%%%%%%%%%%%%%%%%
+
+def nun_iso =
+x1 + 2dx = rt x2 = x.r; x3 = x.m; lft x4 = lft x5 + 1.5dx - pl = x.l;
+y1 - 8dy = y2 - 3dy = y4 - 3dy = y5 - 5dy = y3 + dy = y.r - 3dy;
+draw z1..z2{down}..z3..z4{up}..z5;
+enddef;
+
+def nun_end =
+x1 = x.r - 2dx; y1 = y.r + dy;
+x2 - .5dx = x1; lft x3 = lft x4 + 1.5dx - pl = x.l;
+y2 - dy = y3 = y4 - 2dy = y.r - 3dy;
+x5 = x.m; y5 = y3 - 4dy;
+draw z1..z2{down}..z5..z3{up}..z4; r_att(1);
+enddef;
+
+%%%%%%%%%%%%%% waw-macros %%%%%%%%%%%%%%%%%
+
+def waw_bow =
+rah_bow;
+x1 + 2.5dx = x2; y1 - 3dy = y2;
+x6 = x1; y6 = y2;
+fill z2l..z5l..z3r..z4r{left}--z4l--z3l..z5r..z2r--cycle;
+enddef;
+
+%%%%%%%%%%%%%% hah-macros %%%%%%%%%%%%%%%%%
+
+def hah_iso =
+x1 = x.m - .5dx; rt x2 = x.r; lft x3 = x.l;
+y1 = 7dy; y2 = y3 = 3dy;
+%y1 = 6dy; y2 = y3 = 3dy;
+%y1 = 6dy; y2 = y3 = 2dy;
+draw z1..z2{down}..z3{up}..z1;
+enddef;
+
+def hah_end =
+x1 = x2 - dx = x4 + 2.5dx = x.m;
+y1 = 7dy; y2 = y.r; y4 = 4dy;
+z3 = .15[z1, z2]; z5 = .6[z1, z2];
+draw z1--z5{z5-z1}..z.r{right};
+draw z3{(-7dx,-4dy)}..z4{down}..z5{(7dx,4dy)};
+enddef;
+
+%%%%%%%%%%%%%% yah-macros %%%%%%%%%%%%%%%%%
+
+def yah_iso =
+x6 = x1 + 5dx = x2 + dx = x.r = x3 + 6dx;
+lft x4 = lft x5 + 1.5dx - pl = x.r - 13dx;
+%x6 = x1 + 5dx = x2 + dx = x.r = x3 + 6dx; lft x4 = x5 - dx = x.r - 13dx;
+y6 - 7dy = y1 - 3dy = y5 - 3dy = y2 - dy = y4 = y3 + 3dy = y.r - 2dy;
+draw z6{up}..tension 1.5..z1{down}..tension 1.5
+..z2{down}..tension 1.5..z3..z4{up}..z5;
+enddef;
+
+def yah_end =
+x1 + 4dx = rt x2 = x.r = x3 + 5dx;
+lft x4 = lft x5 + 1.5dx - pl = x.r - 11dx;
+y1 + 2dy = y2 + 4dy = y4 + 4dy = y3 + 7dy = y5 + dy = y.r;
+draw z.r{left}..z1{down}..tension 1.5
+..z2{down}..tension 1.5..z3..z4{up}..z5;
+enddef;
+
+%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/mfinput/nashchar.mf b/language/arabic/arabtex/mfinput/nashchar.mf
new file mode 100644
index 0000000000..94e653bcf0
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/nashchar.mf
@@ -0,0 +1,762 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% nashchar.mf %%%%%%%%%%%%%%%%%%%%%%%%%%%
+% NASH Font
+% normal characters
+% 21.05.97
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown nashbase: input nashbase fi;
+
+%%%%%%%%%%%%%% alif %%%%%%%%%%%%%%%%%
+
+arabchar(alif, f_iso, 3, 15, -1);
+rt x6 = x.r; bot y6=0;
+x7 = x6 - dx; y7 = 13dy;
+draw z6{up}..z7{up};
+serif(7);
+endchar;
+
+arabchar(alif, f_end, 4, 15, 0);
+x6 + 2dx = x7 + 3dx = x.r;
+y6 = y.r; y7 = 13dy;
+z8 = 0.7[z7,z6]; draw z7---z8..z.r{right};
+endchar;
+
+%%%%%%%%%%%%%% bah family %%%%%%%%%%%%%%%%%
+
+arabchar(bah_s, f_iso, 16, 6, 1);
+bah_iso;
+endchar;
+
+arabchar(bah_s, f_end, 17, 6, 1);
+bah_end;
+endchar;
+
+arabchar(bah_s, f_mid, 5, 8, 0);
+x1 = x.m; y1 = y.l + 2dy;
+draw z.l{right}..z1; draw z1..z.r{right};
+endchar;
+
+arabchar(bah_s, f_beg, 5, 8, 0);
+x2 = x1 = x.l + 3dx; y1 - 4dy = y2 - dy = y.l;
+draw z1{(4dx,-11dy)}..z2..z.l{left};
+endchar;
+
+%%%%%%%%%%%%%% bah family with loop %%%%%%%%%%%%%%%%%
+
+arabchar(bah_p, f_iso, 16, 6, 3);
+bah_iso;
+x6 = x5; top y6 = y5; p_loop(6);
+endchar;
+
+arabchar(bah_p, f_end, 17, 6, 3);
+bah_end;
+x6 = x5; top y6 = y5; p_loop(6);
+endchar;
+
+arabchar(bah_p, f_mid, 6, 8, 2);
+x1 = x2 + dx = x.r - 2dx; y1 - 2dy = y2 = y.l;
+draw z.l{right}..z1{up}; draw z1..z.r{right};
+p_loop(2);
+endchar;
+
+arabchar(bah_p, f_beg, 5, 8, 2);
+x2 = x1 = x.l + 3dx; y1 - 4dy = y2 - dy = y.l;
+draw z1{(4dx,-11dy)}..z2..z.l{left};
+p_loop(2);
+endchar;
+
+%%%%%%%%%%%%%% gim %%%%%%%%%%%%%%%%%
+
+arabchar(gim, f_iso, 12, 10, 10);
+hhah_iso; one_dot(-3);
+endchar;
+
+arabchar(gim, f_end, 13, 10, 10);
+hhah_end; one_dot(-3);
+endchar;
+
+arabchar(gim, f_mid, 13, 10, 4);
+hhah_mid; one_dot(-4);
+endchar;
+
+arabchar(gim, f_beg, 12, 10, 4);
+hhah_beg; x.m := x.m + dx; one_dot(-4);
+endchar;
+
+%%%%%%%%%%%%%% hhah %%%%%%%%%%%%%%%%%
+
+arabchar(hhah, f_iso, 12, 10, 10);
+hhah_iso;
+endchar;
+
+arabchar(hhah, f_end, 13, 10, 10);
+hhah_end;
+endchar;
+
+arabchar(hhah, f_mid, 13, 10, 0);
+hhah_mid;
+endchar;
+
+arabchar(hhah, f_beg, 12, 10, 0);
+hhah_beg;
+endchar;
+
+%%%%%%%%%%%%%% khah %%%%%%%%%%%%%%%%%
+
+arabchar(khah, f_iso, 12, 15, 10);
+hhah_iso; x.m := x.m - 2dx; one_dot(10);
+endchar;
+
+arabchar(khah, f_end, 13, 15, 10);
+hhah_end; one_dot(10);
+endchar;
+
+arabchar(khah, f_mid, 13, 15, 0);
+hhah_mid; one_dot(10);
+endchar;
+
+arabchar(khah, f_beg, 12, 15, 0);
+hhah_beg; one_dot(10);
+endchar;
+
+%%%%%%%%%%%%%% tsah %%%%%%%%%%%%%%%%%
+
+arabchar(tsah, f_iso, 12, 10, 10);
+hhah_iso; three_dots_low(-2);
+endchar;
+
+arabchar(tsah, f_end, 13, 10, 10);
+hhah_end; three_dots_low(-2);
+endchar;
+
+arabchar(tsah, f_mid, 13, 10, 7);
+hhah_mid; x.m := x.m + dx; three_dots_low(-4);
+endchar;
+
+arabchar(tsah, f_beg, 12, 10, 7);
+hhah_beg; x.m := x.m + dx; three_dots_low(-4);
+endchar;
+
+%%%%%%%%%%%%%% dal, dhal %%%%%%%%%%%%%%%%%
+
+arabchar(dal, f_iso, 7, 10, 0);
+dal_iso;
+endchar;
+
+arabchar(dal, f_end, 10, 11, 0);
+dal_end;
+endchar;
+
+%%%%%%%%%%%%%% dal with loop %%%%%%%%%%%%%%%%%
+
+arabchar(dal_p, f_iso, 7, 10, 0);
+dal_iso; p_loop(3);
+endchar;
+
+arabchar(dal_p, f_end, 10, 11, 1);
+dal_end;
+x6 = x4 + 2dx; y6 = y4; p_loop(6);
+endchar;
+
+%%%%%%%%%%%%%% rah %%%%%%%%%%%%%%%%%
+
+arabchar(rah, f_iso, 8, 5, 5);
+rah_iso;
+endchar;
+
+arabchar(rah, f_end, 8, 5, 5);
+rah_end;
+endchar;
+
+%%%%%%%%%%%%%% rah with loop %%%%%%%%%%%%%%%%%
+
+arabchar(rah_p, f_iso, 8, 5, 8);
+rah_iso; p_loop(3l);
+endchar;
+
+arabchar(rah_p, f_end, 8, 5, 8);
+rah_end; p_loop(3l);
+endchar;
+
+%%%%%%%%%%%%%% rah with two dots %%%%%%%%%%%%%%%%%
+
+arabchar(rah_s, f_end, 8, 5, 6);
+rah_end;
+x6 = x.r; y6 = y3l; x7 = x3l; y7 = y5 + dy;
+put_dot(6); put_dot(7);
+endchar;
+
+arabchar(rah_s, f_iso, 8, 5, 6);
+rah_iso;
+x6 = x.r; y6 = y3l; x7 = x3l; y7 = y5 + dy;
+put_dot(6); put_dot(7);
+endchar;
+
+%%%%%%%%%%%%%% kurdish rah %%%%%%%%%%%%%%%%%
+
+arabchar(rah_k, f_iso, 8, 5, 10);
+rah_iso;
+x6 + dx = x7 + 3dx = x.r;
+y6 + 3dy = y7 + 8dy = y.r;
+draw z6{(dx,-2dy)}..z7;
+endchar;
+
+arabchar(rah_k, f_end, 8, 5, 10);
+rah_end;
+x6 + dx = x7 + 3dx = x.r;
+y6 + 3dy = y7 + 8dy = y.r;
+draw z6{(dx,-2dy)}..z7;
+endchar;
+
+%%%%%%%%%%%%%% zay %%%%%%%%%%%%%%%%%
+
+arabchar(zay, f_iso, 8, 10, 5);
+rah_iso; one_dot(7);
+endchar;
+
+arabchar(zay, f_end, 8, 10, 5);
+rah_end; one_dot(5);
+endchar;
+
+%%%%%%%%%%%%%% zhah %%%%%%%%%%%%%%%%%
+
+arabchar(zhah, f_iso, 8, 12, 5);
+rah_iso; three_dots(6);
+endchar;
+
+arabchar(zhah, f_end, 8, 12, 5);
+rah_end; three_dots(5);
+endchar;
+
+%%%%%%%%%%%%%% sin %%%%%%%%%%%%%%%%%
+
+arabchar(sin, f_iso, 16, 6, 5);
+sin_iso;
+endchar;
+
+arabchar(sin, f_end, 18, 6, 5);
+sin_end;
+endchar;
+
+arabchar(sin, f_mid, 13, 6, 0);
+sin_mid;
+endchar;
+
+arabchar(sin, f_beg, 11, 6, 0);
+sin_beg;
+endchar;
+
+%%%%%%%%%%%%%% sin with two dots %%%%%%%%%%%%%%%%%
+
+arabchar(sin_p, f_iso, 16, 15, 5);
+sin_iso; one_dot(8);
+x6 = x.m; y6 + 4dy = y.r; put_dot(6);
+endchar;
+
+arabchar(sin_p, f_end, 18, 15, 5);
+sin_end; one_dot(8);
+x6 = x.m; y6 + 4dy = y.r; put_dot(6);
+endchar;
+
+%%%%%%%%%%%%%% shin %%%%%%%%%%%%%%%%%
+
+arabchar(shin, f_iso, 16, 15, 5);
+sin_iso; three_dots(8);
+endchar;
+
+arabchar(shin, f_end, 18, 15, 5);
+sin_end; three_dots(8);
+endchar;
+
+arabchar(shin, f_mid, 13, 15, 0);
+sin_mid; three_dots(8);
+endchar;
+
+arabchar(shin, f_beg, 11, 15, 0);
+sin_beg; three_dots(8);
+endchar;
+
+%%%%%%%%%%%%%% sad %%%%%%%%%%%%%%%%%
+
+arabchar(sad, f_iso, 19, 10, 5);
+sad_iso;
+endchar;
+
+arabchar(sad, f_end, 19, 10, 5);
+sad_iso; draw z.r{left}..z8;
+endchar;
+
+arabchar(sad, f_mid, 14, 10, 0);
+sad_beg; draw z.r{left}..z8;
+endchar;
+
+arabchar(sad, f_beg, 14, 10, 0);
+sad_beg;
+endchar;
+
+%%%%%%%%%%%%%% dad %%%%%%%%%%%%%%%%%
+
+arabchar(dad, f_iso, 19, 10, 5);
+sad_iso; one_dot(8);
+endchar;
+
+arabchar(dad, f_end, 19, 10, 5);
+sad_iso; draw z.r{left}..z8;
+one_dot(8);
+endchar;
+
+arabchar(dad, f_mid, 14, 10, 0);
+sad_beg; draw z.r{left}..z8;
+one_dot(8);
+endchar;
+
+arabchar(dad, f_beg, 14, 10, 0);
+sad_beg; one_dot(8);
+endchar;
+
+%%%%%%%%%%%%%% ttah %%%%%%%%%%%%%%%%%
+
+arabchar(ttah, f_iso, 13, 15, 0);
+ttah_iso;
+endchar;
+
+arabchar(ttah, f_end, 13, 15, 0);
+ttah_iso; draw z.r{left}..z8;
+endchar;
+
+arabchar(ttah, f_mid, 12, 15, 0);
+ttah_beg; draw z.r{left}..z8; draw z2--z.l;
+endchar;
+
+arabchar(ttah, f_beg, 11, 15, 0);
+ttah_beg; draw z2--z.l;
+endchar;
+
+%%%%%%%%%%%%%% zzah %%%%%%%%%%%%%%%%%
+
+arabchar(zzah, f_iso, 13, 15, 0);
+ttah_iso; one_dot(8);
+endchar;
+
+arabchar(zzah, f_end, 13, 15, 0);
+ttah_iso; draw z.r{left}..z8;
+one_dot(8);
+endchar;
+
+arabchar(zzah, f_mid, 12, 15, 0);
+ttah_beg; draw z.r{left}..z8; draw z2--z.l;
+one_dot(8);
+endchar;
+
+arabchar(zzah, f_beg, 11, 15, 0);
+ttah_beg; draw z2--z.l;
+one_dot(8);
+endchar;
+
+%%%%%%%%%%%%%% ain, ghain %%%%%%%%%%%%%%%%%
+
+arabchar(ain, f_iso, 11, 11, 10);
+ain_iso;
+endchar;
+
+arabchar(ain, f_end, 10, 7, 10);
+ain_end;
+endchar;
+
+arabchar(ain, f_mid, 9, 7, 0);
+ain_mid;
+endchar;
+
+arabchar(ain, f_beg, 9, 10, 5);
+ain_beg;
+endchar;
+
+%%%%%%%%%%%%%% fah family %%%%%%%%%%%%%%%%%
+
+arabchar(fah_s, f_iso, 17, 10, 0);
+fah_iso;
+endchar;
+
+arabchar(fah_s, f_end, 18, 10, 0);
+fah_end;
+endchar;
+
+arabchar(fah_s, f_mid, 8, 9, 2);
+fah_mid;
+endchar;
+
+arabchar(fah_s, f_beg, 6, 10, 5);
+fah_beg;
+endchar;
+
+%%%%%%%%%%%%%% fah %%%%%%%%%%%%%%%%%
+
+arabchar(fah, f_iso, 17, 15, 0);
+fah_iso; one_dot(12);
+endchar;
+
+arabchar(fah, f_end, 18, 15, 0);
+fah_end; one_dot(10);
+endchar;
+
+%%%%%%%%%%%%%% qaf %%%%%%%%%%%%%%%%%
+
+arabchar(qaf, f_iso, 12, 15, 2);
+x.m := x.m + 2dx;
+x1 = x2 - 2dx = x3 + dx = x4 - 2.5dx; rt x4 = x.r;
+y1 = y4 = 4dy; y2 = y3 = 6dy;
+lft x5 = x.l; lft x6 = lft x5 - 1.5dx + pl; x7 = 5dx;
+y5 = dy; y6 = y5 + 3dy; y7 = -2dy;
+draw z2..z1..z3..z4{down}..z7..z5{up}..z6;
+two_dots(11);
+endchar;
+
+arabchar(qaf, f_end, 12, 15, 4);
+x.m := x.m + 2dx;
+x1 + 3dx = x2 + dx = x.r;
+lft x3 = lft x4 + 1.5dx - pl = x5 - 5dx = x.l;
+y1 - 4dy = y2 = y.r = y3 + 2dy = y4 = y5 + 5dy;
+draw z.r{left}..z2..z1{right}..z2..z5..z3{up}..z4;
+two_dots(10);
+endchar;
+
+%%%%%%%%%%%%%% vah %%%%%%%%%%%%%%%%%
+
+arabchar(vah, f_iso, 17, 15, 0);
+fah_iso; three_dots(12);
+endchar;
+
+arabchar(vah, f_end, 18, 15, 2);
+fah_end; three_dots(10);
+endchar;
+
+%%%%%%%%%%%%%% kaf family %%%%%%%%%%%%%%%%%
+
+%arabchar(kaf_s, f_iso, 13, 15, 0);
+arabchar(kaf_s, f_iso, 16, 15, 0);
+gaf_iso;
+endchar;
+
+%arabchar(kaf_s, f_end, 13, 15, 0);
+arabchar(kaf_s, f_end, 16, 15, 0);
+gaf_iso; bow(z3, z4, z.r);
+endchar;
+
+arabchar(kaf_s, f_mid, 12, 15, 0);
+kaf_beg; draw z3{z.r-z3}..z.r{right};
+endchar;
+
+arabchar(kaf_s, f_beg, 9, 15, 0);
+kaf_beg;
+endchar;
+
+%%%%%%%%%%%%%% kaf %%%%%%%%%%%%%%%%%
+
+arabchar(kaf, f_iso, 10, 15, 0);
+x1 = x.r - 2dx; x2 = x.m; x3 = x.l + dx;
+y1 = 12dy; y2 = y.r; y3 = y.l + dy;
+x4 = x.l + 6dx; y4 = y.l + 4dy;
+bow(z1, z.r, z2); bow(z2, z.l, z3);
+serif(1); kaf_mark(4);
+endchar;
+
+arabchar(kaf, f_end, 12, 15, 0);
+x1 + dx = x2 = x.r - 2dx;
+x4 = x.m; lft x5 = x6 - dx = x.l;
+z3 = .7[z1, z2];
+y1 = 12dy; y2 = y.r; y4 = y.r; y5 = y6 - 2dy = y.l + 2dy;
+x7 = x.l + 7dx; y7 = y.l + 4dy;
+draw z1--z3{z2 - z1}..z4..z5..z6;
+draw z3{z2 - z3}..z.r{right};
+kaf_mark(7);
+endchar;
+
+%%%%%%%%%%%%%% kaf family with loop %%%%%%%%%%%%%%%%%
+
+%arabchar(kaf_p_s, f_iso, 13, 15, 0);
+arabchar(kaf_p_s, f_iso, 16, 15, 0);
+gaf_iso;
+z8 = .4[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+endchar;
+
+%arabchar(kaf_p_s, f_end, 13, 15, 0);
+arabchar(kaf_p_s, f_end, 16, 15, 0);
+gaf_iso; bow(z3, z4, z.r);
+z8 = .4[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+endchar;
+
+arabchar(kaf_p_s, f_mid, 12, 15, 0);
+kaf_beg; draw z3{z.r-z3}..z.r{right};
+z8 = .4[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+endchar;
+
+arabchar(kaf_p_s, f_beg, 9, 15, 0);
+kaf_beg;
+z8 = .4[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+endchar;
+
+%%%%%%%%%%%%%% kaf with loop %%%%%%%%%%%%%%%%%
+
+%arabchar(kaf_p, f_iso, 13, 15, 0);
+arabchar(kaf_p, f_iso, 16, 15, 0);
+gaf_iso;
+x8 = .6[x.l, x4]; y8 = y.l + 4dy; kaf_mark(8);
+%x8 = x.l + 5dx; y8 = y.l + 4dy; kaf_mark(8);
+z18 = .4[z1,z2]; x9 = x18; y9 = bot y18; p_loop(9);
+endchar;
+
+%arabchar(kaf_p, f_end, 13, 15, 0);
+arabchar(kaf_p, f_end, 16, 15, 0);
+gaf_iso; bow(z3, z4, z.r);
+x8 = .6[x.l, x4]; y8 = y.l + 4dy; kaf_mark(8);
+%x8 = x.l + 5dx; y8 = y.l + 4dy; kaf_mark(8);
+z18 = .4[z1,z2]; x9 = x18; y9 = bot y18; p_loop(9);
+endchar;
+
+%%%%%%%%%%%%%% wide kaf %%%%%%%%%%%%%%%%%
+
+arabchar(kaf_w, f_iso, 16, 10, 0);
+serpent;
+ttah_tail;
+endchar;
+
+arabchar(kaf_w, f_end, 16, 10, 0);
+serpent;
+draw z.r{left}..z1;
+ttah_tail;
+endchar;
+
+arabchar(kaf_w, f_mid, 16, 10, 0);
+serpent;
+draw z.r{left}..z1;
+draw z2{left}..z.l;
+endchar;
+
+arabchar(kaf_w, f_beg, 16, 10, 0);
+serpent;
+draw z2{left}..z.l;
+endchar;
+
+%%%%%%%%%%%%%% gaf family %%%%%%%%%%%%%%%%%
+
+%arabchar(gaf_s, f_iso, 13, 15, 0);
+arabchar(gaf_s, f_iso, 16, 15, 0);
+gaf_iso; gaf_serif;
+endchar;
+
+%arabchar(gaf_s, f_end, 13, 15, 0);
+arabchar(gaf_s, f_end, 16, 15, 0);
+gaf_iso; bow(z3, z4, z.r);
+gaf_serif;
+endchar;
+
+arabchar(gaf_s, f_mid, 12, 15, 0);
+kaf_beg; draw z3{z.r-z3}..z.r{right};
+gaf_serif;
+endchar;
+
+arabchar(gaf_s, f_beg, 9, 15, 0);
+kaf_beg; gaf_serif;
+endchar;
+
+%%%%%%%%%%%%%% gaf %%%%%%%%%%%%%%%%%
+
+%arabchar(gaf, f_iso, 13, 15, 0);
+arabchar(gaf, f_iso, 16, 15, 0);
+gaf_iso; gaf_serif;
+x8 = .6[x.l, x4]; y8 = y.l + 4dy; kaf_mark(8);
+%x8 = x.l + 5dx; y8 = y.l + 4dy; kaf_mark(8);
+endchar;
+
+%arabchar(gaf, f_end, 13, 15, 0);
+arabchar(gaf, f_end, 16, 15, 0);
+gaf_iso; bow(z3, z4, z.r);
+gaf_serif;
+x8 = .6[x.l, x4]; y8 = y.l + 4dy; kaf_mark(8);
+%x8 = x.l + 5dx; y8 = y.l + 4dy; kaf_mark(8);
+endchar;
+
+%%%%%%%%%%%%%% lam %%%%%%%%%%%%%%%%%
+
+arabchar(lam, f_iso, 9, 15, 3);
+rt x4 = w; lft x5 = 0; x1 = x4 - dx; x3 = x5 + dx;
+y1 = 12dy; y3 = 3dy; y4 = y5 = 0;
+draw z1{down}..z4{down}..z5{up}..z3; serif(1);
+endchar;
+
+arabchar(lam, f_end, 12, 15, 7);
+x1 + 3dx = x2 + 2dx = x.r; y1 - 11dy = y2 = y.r;
+z8 = 0.7[z1,z2]; draw z1---z8..z.r{right};
+s_bow(1);
+endchar;
+
+arabchar(lam, f_mid, 5, 15, 0);
+x1 + 3dx = x2 + 2dx = x.r; y1 - 11dy = y2 = y.r;
+z8 = 0.7[z1,z2]; draw z1---z8..z.r{right};
+bow (z1, z2, z.l);
+endchar;
+
+arabchar(lam, f_beg, 4, 15, 0);
+x1 = x2 - dx = x.l + 2dx;
+y1 = 12dy; y2 = y.l; z3 = 0.8[z1, z2];
+draw z1..z3{z2 - z3}..z.l{left}; serif(1);
+endchar;
+
+%%%%%%%%%%%%%% mim %%%%%%%%%%%%%%%%%
+
+arabchar(mim, f_iso, 7, 10, 5);
+%arabchar(mim, f_iso, 7, 10, 8);
+x2 + 6dx = x4 + 4dx = x5 + 3.5dx = x6 + 4.5dx = x1;
+y2 + dy = y4 + 11dy = y5 - 2.5dy = y6 - 1.5dy = y1;
+z2 = z.l; bow(z4,z2,z1); bow(z6,z5,z1);
+endchar;
+
+arabchar(mim, f_end, 10, 10, 1);
+x1 + 0.5dx = x2 - 2.5dx = x3 + 2dx = x5 - 2dx = x.m;
+y1 - 3dy = y2 - 0.5dy = y3 - 1.5dy = y5 - dy = y.l;
+x4 = x.l + 2dx; y4 = -8dy;
+draw z.r{left}..z5..z1..tension 1.5..z3;
+draw z3{down}..tension 1.2..z2;
+bow(z3, z.l, z4);
+endchar;
+
+arabchar(mim, f_mid, 8, 10, 1);
+x1 + 0.5dx = x2 - 2.5dx = x3 + 2dx = x5 - 2dx = x.m;
+y1 - 3dy = y2 - 0.5dy = y3 - 1.5dy = y5 - dy = y.l;
+draw z.r{left}..z5..z1..tension 1.5..z3
+& z3{down}..tension 1.2..z2; l_att(3);
+endchar;
+
+arabchar(mim, f_beg, 7, 10, 0);
+x1 = x2 - dx = x3 + 2dx = x.l + 5dx;
+y1 - 4dy = y2 = y3 - 2dy = y.l;
+draw z3..tension 2..z2..tension 1.5..z1..z3..z.l{left};
+endchar;
+
+%%%%%%%%%%%%%% nun %%%%%%%%%%%%%%%%%
+
+arabchar(nun, f_iso, 10, 8, 3);
+nun_iso;
+endchar;
+
+arabchar(nun, f_end, 11, 4, 6);
+nun_end;
+endchar;
+
+%%%%%%%%%%%%%% nun with loop %%%%%%%%%%%%%%%%%
+
+arabchar(nun_p, f_iso, 10, 8, 6);
+nun_iso;
+x6 = x3; top y6 = y3; p_loop(6);
+endchar;
+
+arabchar(nun_p, f_end, 11, 4, 9);
+nun_end;
+x6 = x5; top y6 = y5; p_loop(6);
+endchar;
+
+%%%%%%%%%%%%%% hah, tah marbuta %%%%%%%%%%%%%%%%%
+
+arabchar(hah, f_iso, 5, 10, 0);
+hah_iso;
+endchar;
+
+arabchar(hah, f_end, 6, 10, 0);
+hah_end;
+endchar;
+
+arabchar(hah, f_mid, 6, 10, 4);
+x1 + dx = x2 = x3 = x4 + 2dx = x.m + dx;
+y1 = y2 - 4dy = y3 + 4dy = y4 = y.r;
+draw z1{(7dx,-4dy)}..z3..z4{up}..z2;
+draw z2{(5dx,-6dy)}..z.l{left}; draw z.r--z1;
+endchar;
+
+arabchar(hah, f_beg, 9, 10, 0);
+x1 + 0.5dx = x2 = x3 + 1.5dx = x4 - 1.5dx = x.r - 5dx;
+x6 + dx = x5 - 3dx = x.r;
+y1 = 7dy; y2 = 2dy; y3 = y4 = 4dy; y6 = dy;
+draw z1{curl 0}..tension 1.5..z6..tension 2..z2..z3..z4..z2..z.l{left};
+endchar;
+
+%%%%%%%%%%%%%% waw %%%%%%%%%%%%%%%%%
+
+arabchar(waw, f_iso, 9, 7, 6);
+waw_bow;
+draw z2{(-7dx,-4dy)}..z6..z1{right}..z2{(4dx,-11dy)};
+endchar;
+
+arabchar(waw, f_end, 10, 7, 6);
+x.r := x.r - dx;
+waw_bow;
+x.r := x.r + dx;
+draw z.r{left}..z6..z1{right}..z2{(4dx,-11dy)};
+endchar;
+
+%%%%%%%%%%%%%% yah, alif_maqsura %%%%%%%%%%%%%%%%%
+
+arabchar(yah, f_iso, 13, 5, 5);
+yah_iso;
+endchar;
+
+arabchar(yah, f_end, 11, 5, 7);
+yah_end;
+endchar;
+
+%%%%%%%%%%%%%% long yah %%%%%%%%%%%%%%%%%
+
+arabchar(yah_p, f_iso, 15, 8, 3);
+x10 = x4 - dx = x5; x3 = x6 = x7 + 2dx = x4 - 8dx; x8 = x4 + 4dx = x.r;
+%x10 = x4 - dx = x5; x3 = x6 = x7 = x4 - 8dx; x8 = x4 + 5dx = x.r;
+y10 = y6 = y4 - 3dy = y5 - 5dy = y.r; y3 = y.rr; y7 = y8 = y.r - 3dy;
+z9 = 0.2[z10,z5]; z1 = 0.9[z6,z9]; z2 = 0.8[z3,z5];
+draw z8--z7{left}..z6..controls z1 and z2..z5..z4{(dx,-6dy)};
+endchar;
+
+arabchar(yah_p, f_end, 5, 8, 6);
+x8 - 7dx = x7 + 3dx = x.r; y7 = y8 = y.r - 3dy;
+draw z8--z7{left}..z.r{(4dx,dy)};
+endchar;
+
+%%%%%%%%%%%%%% yah with hook %%%%%%%%%%%%%%%%%
+
+arabchar(yah_h, f_iso, 15, 5, 5);
+yah_iso;
+x7 = x5 - 3dx; y7 = y5 - 5dy; draw z5--z7;
+endchar;
+
+arabchar(yah_h, f_end, 13, 5, 7);
+yah_end;
+x7 = x5 - 3dx; y7 = y5 - 5dy; draw z5--z7;
+endchar;
+
+%arabchar(yah_h_spec, f_end, 11, 5, 7); % final yah with hook
+%x.m := x.m + 2dx; x2 = x.r + 4dx;
+%x3 = x.m; lft x4 = x5 - dx = x.l + 2dx;
+%y2 - dy = y4 = y5 - 3dy = y3 + 3dy = -3dy;
+%draw z.r{(8dx,-3dy)}..tension 1.5
+%..z2{down}..tension 1.5..z3{left}..z4{up}..z5;
+%x7 = x5 - 3dx; y7 = y5 - 5dy; draw z5--z7;
+%endchar;
+
+%%%%%%%%%%%%%% hamza %%%%%%%%%%%%%%%%%
+
+arabchar(hamza_iso, f_iso, 5, 8, 0);
+x3 = x1 + 3.5dx = x2 + 3.5dx = x7; x8 = x2 + 0.2dx +0.3py;
+y3 - 3dy = y1 + dy = y2 - 2dy = y7 = y.r + dy; y8 = y2;
+lda := 0.5[pa,90]; x.m = 0.5[x1,x7];
+penpos7(px,pa); penpos3(0.3dy,90);
+penpos2(px,lda); penpos8(px,lda);
+fill z7l{z1-z7}..z2l{up}--z2r--z8r{down}..z7r{z7-z1}--cycle;
+fill z2r{(7dx,10dy)}..z3r--z3l..z8l{(-7dx,-10dy)}--z2l--cycle;
+draw z1..z7;
+endchar;
+
+endinput;
+
+%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/mfinput/nashdia.mf b/language/arabic/arabtex/mfinput/nashdia.mf
new file mode 100644
index 0000000000..e4616d7711
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/nashdia.mf
@@ -0,0 +1,119 @@
+%%%%%%%%%%%%%%%%%%%%%%% nashdia.mf %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% NASH Font
+% 14.03.92
+% 03.11.96
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown nashbase: input nashbase fi;
+
+%%%%%%%%%%%%%% diacritics %%%%%%%%%%%%%%%%%
+
+diachar(damma, 4, 5);
+z1 = z.l; x2 = 3dx; y2 = y.r; x3 = x.r; y3 = 2dy;
+draw z1{dir 30}..z2{left}..z3{dir -45};
+endchar;
+
+diachar(fatha, 4, 2.5);
+draw z.l--z.r;
+endchar;
+
+diachar(sukun, 4, 4);
+%draw (.5w, y.l)..(.5w, y.r)..cycle;
+%draw (.5w, y.r){dir -35}..(.5w, y.l){left}..{dir 35}(.5w, y.r);
+%draw (.5w, y.r){dir -45}..(.5w, y.l){left}..{dir 45}(.5w, y.r);
+draw (.5w, y.r){dir -45}..(.5w, y.l){left}..{dir 30}(.5w, y.r);
+endchar;
+
+diachar(dammatan, 5, 5);
+x4 = x.l; x5 = x1 = dx; y4 = y5 = 3dy; y1 = y.l;
+x2 - x.l = 3dx; y2 = y.r; x3 = x.r; y3 = 2dy;
+draw z1{dir 30}..z2{left}..z3{dir -45};
+draw z4..z5..z1{down};
+endchar;
+
+diachar(fathatan, 4, 4.5);
+x1 = x.r; x2 = x.l; y1 = y.r - 2dy; y2 = y.l + 2dy;
+draw z.l--z1; draw z2--z.r;
+endchar;
+
+diachar(hamza, 4, 5);
+x1 = x.r; x2 = x.l; x3 = x.r - dx;
+y1 = 2dy; y2 = 2.5dy; y3 = y.r - .5dy;
+draw z.l--z1;
+draw z3{left}..z2..z1{z1-z.l};
+endchar;
+
+diachar(shadda, 5, 3);
+z5 - z3 = z3 - z1 = z4 - z2 = whatever * (4dx, dy);
+z5 = z.r; x1 = x.l; y2 = y.l; x2 = .5[x1, x3];
+draw z1{down}..z2..z3{up}; draw z3{down}..z4..z5{up};
+endchar;
+
+diachar(quran_alif, 2, 5);
+x1 = x.l; x2 = .5[x.l, x.r];
+y1 = y.r; y2 = y.l;
+draw z1--z2;
+endchar;
+
+diachar(wasla, 6, 2);
+x1 - .4w = x2 - .7w = x4 - .7w = x5 = dx; x3 = x.r + dx;
+%x1 = .4w; x2 = x4 = .7w; x3 = x.r;
+y1 = y3 = h/2; y2 = y.l; y4 = y5 = y.r;
+draw z5..z1..z2..z3..z4..z1;
+endchar;
+
+diachar(madda, 6, 1.5);
+%x.r - x2 = x1 - x.l = .25(x.r - x.l);
+%y1 = y.r; y2 = y.l;
+%draw z.l..z1..z2..z.r;
+x.r - x2 = x1 - x.l = .1(x.r - x.l);
+y1 = y.r + dy; y3 = y2 = y.l; x3 = x.r;
+draw z.l--z1..z2..z3;
+endchar;
+
+diachar(ttah_dia, 4, 5);
+z1 = z.l; x2 = x4 = dx; y2 = dy; y4 = y.r; x3 = x.r; y3 = 2dy;
+draw z1{dir 45}..z2..z3..z1{left}; draw z2..z4;
+endchar;
+
+arabchar(one_dot_up, 0, 2, 4, -2);
+one_dot(1);
+endchar;
+
+arabchar(two_dots_up, 0, 5, 4, -2);
+two_dots(1);
+endchar;
+
+arabchar(three_dots_up, 0, 5, 7, -2);
+three_dots(1);
+endchar;
+
+arabchar(two_dots_down, 0, 5, 2, 0);
+two_dots(1);
+endchar;
+
+arabchar(three_dots_down, 0, 5, 2, 3);
+three_dots_low(1);
+endchar;
+
+diachar(bow_dia, 4, 2);
+draw (x.l,y.r)..(.5w, y.l)..z.r;
+endchar;
+
+diachar(e_dia, 4, 2.5);
+draw z.l--(x.r,y.l);
+endchar;
+
+diachar(h_dia, 4, 5);
+x1 = x2 = x3 = .5w;
+y1 = y.r; y2 = y.l; y3 = .2[y2,y1];
+draw z1{z.l-z1}..z2{right}..z3{left};
+endchar;
+
+%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/mfinput/nashdig.mf b/language/arabic/arabtex/mfinput/nashdig.mf
new file mode 100644
index 0000000000..5c2b195f6a
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/nashdig.mf
@@ -0,0 +1,74 @@
+%%%%%%%%%%%%%%%%%%%%% nashdig.mf %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% NASH Font
+% 07.04.92
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown nashbase: input nashbase fi;
+
+%%%%%%%%%%%%%% digits %%%%%%%%%%%%%%%%%
+
+numchar("0");
+x1 + .6pl = x4 - .6pl = 5dx;
+y1 - .6pl = y4 + .6pl = bot y.l + 6dy;
+penpos1(2px,pa); penpos4(2px,pa);
+fill z1l--z1r--z4r--z4l--cycle;
+endchar;
+
+numchar("1");
+x1 = 4dx; x2 = 7dx; y1 - 11dy = bot y2 = bot y.l;
+draw z1..z2{down};
+endchar;
+
+numchar("2");
+x1 = 3dx; x2 = 6dx; x3 = 8dx;
+y3 - 11dy = y1 - 11dy = bot y2 = bot y.l;
+%draw z3..z1{(-4dx,7dy)};
+draw z3{down}..z1; draw z1..z2{down};
+endchar;
+
+numchar("3");
+x1 = 2dx; x2 = 4dx; x3 = 9dx; x4 = 6dx;
+y4 = y3 = y1; y1 - 11dy = bot y2 = bot y.l;
+draw z3{down}..z4; draw z4{down}..z1; draw z1..z2{down};
+endchar;
+
+numchar("4");
+x1 = x2 - .5dx = x3 - dx = 6dx; x4 = x5 = 2dx;
+y1 - 11dy = y2 - 6dy = bot y3 = y4 - 8dy = y5 - 2dy = bot y.l;
+bow(z1, z4, z2); bow(z2, z5, z3);
+endchar;
+
+numchar("5");
+x1 = x2 - 3dx = x3 + 2dx = 5dx;
+y1 - 6dy = y2 = y3; y3 - 4dy = bot y.l - dy;
+draw z1{(dx,-dy)}..z2..z3..z1{(dx,dy)};
+endchar;
+
+numchar("6");
+x1 + 4dx = x2 = x3 - 2dx = 6dx;
+y1 -10dy = y2 - 10dy = bot y3 = bot y.l;
+draw z1{(7dx,-4dy)}..z2; draw z2{down}..z3;
+endchar;
+
+numchar("7");
+x1 + 4dx = x2 = x3 - 4dx = 5dx;
+y1 - 10dy = y3 - 10dy = bot y2 = bot y.l;
+draw z1..z2{down}; draw z3..z2{down};
+endchar;
+
+numchar("8");
+x1 + 4dx = x2 = x3 - 4dx = 5dx;
+y2 - 10dy = bot y1 = bot y3 = bot y.l;
+draw z1..z2{up}; draw z3..z2{up};
+endchar;
+
+numchar("9");
+x1 = x2 + 4dx = x3 + 2dx = x4 - 2dx = 6dx;
+y1 - 7dy = y2 - 7dy = y3 - 11dy = bot y4 = bot y.l;
+draw z1..z2..z3..z1{down}..z4;
+endchar;
+
diff --git a/language/arabic/arabtex/mfinput/nashlig.mf b/language/arabic/arabtex/mfinput/nashlig.mf
new file mode 100644
index 0000000000..60d6a8ba80
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/nashlig.mf
@@ -0,0 +1,508 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% nashlig.mf %%%%%%%%%%%%%%%%%%%%%%%%
+% NASH Font
+% ligatures
+% 22.10.92
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown nashbase: input nashbase fi;
+
+%%%%%%%%%%%%%% alif after mim %%%%%%%%%%%%%%%%%
+
+arabchar(alif_spec_mim, f_end, 3, 15, 0); % mim-alif
+x1 + dx = x2 + .5dx = x.r; y1 = 13dy; y2 = y.r + .5dy;
+bow(z1, z2, z.r); serif(1);
+endchar;
+
+%%%%%%%%%%%%%% bah_high %%%%%%%%%%%%%%%%%
+
+arabchar(bah_high, f_beg, 5, 10, 0);
+x.m := x.m + 0.5dx;
+x1 - dx = x2 = x.m; y1 = y.l; y2 = y.l + 6dy;
+bow(z2, z1, z.l);
+endchar;
+
+arabchar(bah_high, f_mid, 6, 10, 0);
+x5 - dx = x6 = x.m;
+y6 = good.y (y.l + 6dy); y5 = y.l;
+z4 = .5[z6, z5];
+l_att(4); bow(z6, z5, z.r);
+endchar;
+
+%%%%%%%%%%%%%% bah before nun %%%%%%%%%%%%%%%%%
+
+arabchar(bah_spec, f_beg, 5, 10, 0);
+x4 - 2dx = x.ll; y4 - 2dy = y.ll;
+draw z4{(dx,-2dy)}..z.ll{left};
+r_con(ll); % measure for raising final nun, rah
+endchar;
+
+arabchar(bah_spec, f_mid, 5, 10, 0);
+x6 = x.l + 2dx; y6 = good.y (y.ll + 2dy);
+draw z6..z.ll{left}; draw z6{down}..z.r{right};
+%r_con(ll);
+endchar;
+
+%%%%%%%%%%%%%% bah over yah maqsoura %%%%%%%%%%%%%%%%%
+
+arabchar(bah_spec_yah, f_beg, 5, 10, 7);
+x1 - 2dx = x2 - 3dx = x.l; y1 - 6dy = y2 - dy = y.l;
+draw z1{(4dx,-7dy)}..z2..z.l{(-6dx,-dy)};
+endchar;
+
+arabchar(bah_spec_yah, f_mid, 4, 8, 2);
+z1 = 0.5[z.ll, z.rr]; x2 = x.l; x4 = x.r;
+y2 = y4 = y.r + dy;
+draw z.ll..controls z1 and z2..z4;
+r_con(4);
+endchar;
+
+%%%%%%%%%%%%%% bah over middle mim %%%%%%%%%%%%%%%%%
+
+arabchar(bah_mid_mim, f_beg, 6, 10, 0);
+x1 = x.rr - dx; y1 = y.rr + dy;
+draw z.l{(-dx,dy)}..z1{(dx,-dy)};
+endchar;
+
+arabchar(bah_mid_mim, f_mid, 6, 10, 0);
+x1 = x.rr - 3dx; y1 = y.rr + 2dy;
+draw z.l{(-dx,dy)}..z1..z.rr{right};
+r_con(rr);
+endchar;
+
+%%%%%%%%%%%%%% bah over end mim %%%%%%%%%%%%%%%%%
+
+arabchar(bah_beg_mim, f_mid, 5, 8, 0);
+x1 = x.l + 7dx; y1 = y.r + dy;
+draw z.l{(dx,dy)}..z1{(dx,-6dy)};
+endchar;
+
+arabchar(bah_end_mim, f_mid, 8, 8, 4);
+x1 = x.r - 2dx; y1 = y.r + 2dy;
+draw z.l{(dx,dy)}..z1{(dx,-6dy)}..z.r{right};
+endchar;
+
+%%%%%%%%%%%%%% bah over gim %%%%%%%%%%%%%%%%%
+
+arabchar(bah_spec_gim, f_mid, 12, 8, 7);
+x5 = x4 = x.r - 4dx; y4 - 4dy = y5 = y.r;
+z3 = 0.2[z5,z4]; z1 = 0.9[z1,z3]; z2 = 0.8[z.ll,z4];
+z6 = 0.5[z4, z.rr]; x7 = x5; x8 = x.r; y7 = y8 = y.r + dy;
+draw z.l..controls z1 and z2..z4..controls z6 and z7..z8;
+r_con(8);
+endchar;
+
+arabchar(bah_beg_gim, f_mid, 8, 8, 6);
+x4 - dx = x5 = x.r; y4 - 3dy = y5 - 5dy = y.r;
+z3 = 0.2[z.r,z5]; z1 = 0.9[z.l,z3]; z2 = 0.8[z.ll,z5];
+draw z.l..controls z1 and z2..z5..z4{(dx,-6dy)};
+endchar;
+
+%%%%%%%%%%%%%% bah over hah %%%%%%%%%%%%%%%%%
+
+arabchar(bah_end_hah, f_mid, 6, 8, 5);
+x1 = x.r - 2dx; y1 = y.r + 2dy;
+draw z.l{(dx,dy)}..z1..z.r{right};
+endchar;
+
+arabchar(bah_end_hah, f_beg, 6, 8, 0);
+x1 + 2dx = x.r; y1 = y.r;
+draw z.l{(4dx,7dy)}..z1;
+endchar;
+
+%%%%%%%%%%%%%% hhah-spec-macros %%%%%%%%%%%%%%%%%
+
+def hhah_spec_bar =
+x1 = x2 - 9dx = x.rr;
+y1 = y.rr; y2 = 0.5[y.r, y.rr];
+draw z1{right}..z2{right};
+r_con(rr);
+enddef;
+
+def hhah_spec_beg =
+hhah_spec_bar; draw z2{left}..z.l{left};
+enddef;
+
+def hhah_spec_iso =
+hhah_spec_bar; hhah_bow;
+enddef;
+
+%%%%%%%%%%%%%% gim ligature %%%%%%%%%%%%%%%%%
+
+arabchar(gim_spec, f_end, 4, 10, 10);
+hhah_spec_iso;
+x.m := x.r + 2dx;
+one_dot(-3);
+endchar;
+
+arabchar(gim_spec, f_mid, 2, 10, 5);
+hhah_spec_beg;
+x.m := x.r + 4dx;
+one_dot(-4);
+endchar;
+
+%%%%%%%%%%%%%% hhah ligature %%%%%%%%%%%%%%%%%
+
+arabchar(hhah_spec, f_end, 4, 10, 10);
+hhah_spec_iso;
+endchar;
+
+arabchar(hhah_spec, f_mid, 2, 10, 5);
+hhah_spec_beg;
+endchar;
+
+%%%%%%%%%%%%%% khah ligature %%%%%%%%%%%%%%%%%
+
+arabchar(khah_spec, f_end, 4, 15, 10);
+hhah_spec_iso;
+x.m := x.r;
+one_dot(10);
+endchar;
+
+arabchar(khah_spec, f_mid, 2, 15, 5);
+hhah_spec_beg;
+x.m := x.r;
+one_dot(10);
+endchar;
+
+%%%%%%%%%%%%%% tsah ligature %%%%%%%%%%%%%%%%%
+
+arabchar(tsah_spec, f_end, 4, 10, 10);
+hhah_spec_iso;
+x.m := x.r + 3dx;
+three_dots_low(-3);
+endchar;
+
+arabchar(tsah_spec, f_mid, 2, 10, 8);
+hhah_spec_beg;
+x.m := x.r + 4dx;
+three_dots_low(-4);
+endchar;
+
+%%%%%%%%%%%%%% closed hhah %%%%%%%%%%%%%%%%%
+
+arabchar(gim_close, f_beg, 12, 9, 0); % closed hhah
+%arabchar(gim_close, f_beg, 12, 8, 0); % closed hhah
+x1 = x2 - 9dx = x.l + 2dx; y1 - 4dy = y2 - 2dy = y.r;
+x3 = x7 = x1 + 7dx; y3 - 2dy = y7 = y.r;
+x4 = x1 - 2dx; y4 = y.l + 2dy;
+draw z4..z1{(8dx,3dy)}..z2{right}; draw z2{left}..z.l{left};
+endchar;
+
+%arabchar(gim_close, f_mid, 13, 8, 1); % closed hhah
+%hhah_mid; draw z3{down}..z.r{right};
+%endchar;
+
+%%%%%%%%%%%%%% sin_spec-macros %%%%%%%%%%%%%%%%%
+
+def sin_spec_wave =
+z5 - z.l = z3 - z2;
+x3 - x2 = 2(x3 - x5) = 2dx; x.m := x2;
+y5 = y2 - 2dy = y.l;
+draw z3..z5..z2; draw z2{down}..z.l{left};
+enddef;
+
+def sin_spec_beg =
+sin_spec_wave;
+enddef;
+
+def sin_spec_mid =
+sin_spec_wave; r_att(3);
+enddef;
+
+def sin_spec_mid =
+sin_spec_wave; draw z3{down}..z.r{right};
+enddef;
+
+%%%%%%%%%%%%%% short sin %%%%%%%%%%%%%%%%%
+
+arabchar(sin_spec, f_mid, 6, 6, 0);
+sin_spec_mid;
+endchar;
+
+arabchar(sin_spec, f_beg, 4, 6, 0);
+sin_spec_beg;
+endchar;
+
+%%%%%%%%%%%%%% short shin %%%%%%%%%%%%%%%%%
+
+arabchar(shin_spec, f_mid, 6, 15, 0);
+sin_spec_mid; three_dots(8);
+endchar;
+
+arabchar(shin_spec, f_beg, 4, 15, 0);
+sin_spec_beg; three_dots(8);
+endchar;
+
+%%%%%%%%%%%%%% sad_spec-macros %%%%%%%%%%%%%%%%%
+
+def sad_spec_beg =
+x.m := x.m - dx;
+x1 = x2 - dx = x3 - 9dx = x.l;
+y1 + dy = y2 = y3 - 3dy = y.l;
+x8 = x2 + 3.5dx; y8 = y2 + 0.5dy;
+draw z1{(5dx,6dy)}..z3{(4dx,-7dy)}..tension 2..z.l{left};
+enddef;
+
+%%%%%%%%%%%%%% short sad %%%%%%%%%%%%%%%%%
+
+arabchar(sad_spec, f_mid, 10, 10, 0);
+sad_spec_beg; draw z.r{left}..z8;
+endchar;
+
+arabchar(sad_spec, f_beg, 10, 10, 0);
+sad_spec_beg;
+endchar;
+
+%%%%%%%%%%%%%% short dad %%%%%%%%%%%%%%%%%
+
+arabchar(dad_spec, f_mid, 10, 10, 0);
+sad_spec_beg; draw z.r{left}..z8;
+one_dot(8);
+endchar;
+
+arabchar(dad_spec, f_beg, 10, 10, 0);
+sad_spec_beg; one_dot(8);
+endchar;
+
+%%%%%%%%%%%%%% kaf_spec-macros %%%%%%%%%%%%%%%%%
+
+def kaf_spec_beg =
+x1 = x.l + 9dx; x2 = x.l - 3.5dx; x4 = x.l + 8dx;
+%x1 = x.r - dx; x2 = x.l - 3.5dx; x4 = x.r - 2dx;
+%y4 = y.r; y1 = 14dy; y2 = 9dy; z3 = .4[z2, z4];
+y4 = y.l = y1 - 13dy = y2 - 8dy; z3 = .4[z2, z4];
+bow (z1, z2, z3);
+draw z3{z3 - z2}..z.l{left};
+enddef;
+
+%%%%%%%%%%%%%% short kaf %%%%%%%%%%%%%%%%%
+
+arabchar(kaf_spec, f_mid, 10, 15, 0);
+kaf_spec_beg; draw z3{z.r-z3}..z.r{right};
+endchar;
+
+arabchar(kaf_spec, f_beg, 7, 15, 0);
+%arabchar(kaf_spec, f_beg, 10, 15, 0);
+kaf_spec_beg;
+endchar;
+
+%%%%%%%%%%%%%% short gaf %%%%%%%%%%%%%%%%%
+
+arabchar(gaf_spec, f_mid, 10, 16, 0);
+kaf_spec_beg; draw z3{z.r-z3}..z.r{right};
+gaf_serif;
+endchar;
+
+arabchar(gaf_spec, f_beg, 7, 16, 0);
+kaf_spec_beg;
+gaf_serif;
+endchar;
+
+%%%%%%%%%%%%%% short kaf with loop %%%%%%%%%%%%%%%%%
+
+arabchar(kaf_p_spec, f_mid, 10, 15, 0);
+kaf_spec_beg; draw z3{z.r-z3}..z.r{right};
+z8 = .3[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+endchar;
+
+arabchar(kaf_p_spec, f_beg, 7, 15, 0);
+kaf_spec_beg;
+z8 = .3[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+endchar;
+
+%%%%%%%%%%%%%% lam_alif %%%%%%%%%%%%%%%%%
+
+def lam_alif_serif(suffix $) =
+x.$sa = x.$sb - 2dx = x.$;
+y.$sa + dy = y.$sb + 3dy = y.$;
+draw z.$--z.$sa--z.$sb;
+enddef;
+
+arabchar(lam_alif_end, 0, 12, 15, 0);
+x1 + 3dx = x2 + 2dx = x.r;
+x3 + 8dx = x4 = x5 + 8dx = x6 + 2dx = x1;
+y1 = 12dy; y2 = y3 + 2dy = y.r; y4 = y6 + dy = 4dy; y5 = 11dy;
+z7 = 0.7[z1,z2]; draw z1---z7..z.r{right};
+bow(z1, z4, z3);
+draw z5{z4 - z5}..z6; lam_alif_serif(5);
+endchar;
+
+arabchar(lam_alif_iso, 0, 11, 15, 0);
+x1 + 2dx = x4 + 2dx = x3 + 6dx = x2 = x5 + 10dx = x.r;
+y1 = 13dy; y4 = 3dy; y3 = y2 = y.r; y5 = 12dy;
+bow(z1, z4, z3);
+bow(z5, z2, z3);
+serif(1); lam_alif_serif(5);
+endchar;
+
+%%%%%%%%%%%%%% lam in 'allah' %%%%%%%%%%%%%%%%%
+
+arabchar(lam_spec_low, f_mid, 5, 11, 0);
+x1 + .5dx = x2 - .5dx = x.m; y1 = 9dy; y2 = y.r;
+bow (z1, z2, z.r); bow (z1, z2, z.l);
+endchar;
+
+%%%%%%%%%%%%%% lam over yah %%%%%%%%%%%%%%%%%
+
+arabchar(lam_spec_yah, f_mid, 7, 15, 7);
+x4 = x.r; x1 = x2 - dx = x.r - 3dx;
+y1 - 11dy = y2 = y4 = y.r + 2dy;
+z3 = .2[z2, z1];
+bow (z1, z3, z.l); draw z1---z3..z4{right};
+r_con (4);
+endchar;
+
+arabchar(lam_on_gim, f_mid, 6, 10, 5);
+x1 = x2 - dx = x.l + 4dx;
+y1 = 9dy; y2 = y.l; z3 = 0.7[z1, z2];
+draw z1..z3{z2 - z3}..z.l{left}; serif(1);
+endchar;
+
+arabchar(lam_long, f_beg, 6, 15, 3);
+x1 = x2 - dx = x.l + 4dx;
+y1 = 12dy; y2 = y.l; z3 = 0.8[z1, z2];
+draw z1..z3{z2 - z3}..z.l{left}; serif(1);
+endchar;
+
+%%%%%%%%%%%%%% lam over mim and hah %%%%%%%%%%%%%%%%%
+
+arabchar(lam_spec_mim, f_beg, 3, 15, 0);
+x1 + dx = x2 + .5dx = x.l; y1 = 13dy; y2 = y.l + .5dy;
+bow(z1, z2, z.l); serif(1);
+endchar;
+
+arabchar(lam_spec_hah, f_beg, 3, 10, 0);
+x1 + dx = x2 + .5dx = x.l; y1 - 8dy = y2 - .5dy = y.l;
+bow(z1, z2, z.l); serif(1);
+endchar;
+
+%%%%%%%%%%%%%% mim ligatures %%%%%%%%%%%%%%%%%
+
+arabchar(mim_spec, f_end, 5, 5, 13); % final mim connected from above
+x2 + 6dx = x4 + 4dx = x5 + 3.5dx = x6 + 4.5dx = x1;
+y2 + dy = y4 + 11dy = y5 - 2.5dy = y6 - 1.5dy = y1;
+z5 = z.r; bow(z4,z2,z1); draw z5--z1;
+endchar;
+
+arabchar(mim_spec, f_mid, 4, 10, 0); % medial mim after lam
+x2 = x.r = x1 - 2dx; y1 = y.r = y2 - dy;
+draw z.l{right}..z2..z1;
+r_con(2);
+endchar;
+
+arabchar(mim_spec, f_beg, 8, 10, 5); % mim over gim
+x2 = x1 = x3 + 2dx = x.l + 7dx;
+y2 = y1 - 2dy = y3 - dy = y.l + 2dy;
+draw z3..z1..z2{left}..z.l;
+endchar;
+
+arabchar(mim_spec_mim, f_beg, 6, 10, 0); % mim over mim
+x2 = x1 = x3 + 2dx = x.l + 3dx;
+y2 = y1 - 2dy = y3 - dy = y.l + 5dy;
+draw z3..z1..z2{left}..z.l{(dx,-dy)};
+endchar;
+
+arabchar(mim_spec_high, f_mid, 5, 10, 0); % mim after gim etc
+x1 = x2 - dx = x3 + dx = x.rr;
+y1 = y.rr; y2 = y3 - 3dy = y.l;
+%x1 = x2 - dx = x3 + 2dx = x.rr;
+%y1 = y.rr; y2 = y3 - 2dy = y.l;
+draw z3..tension 2..z2..tension 2..z1..z3..z.l{left};
+%draw z3..tension 2..z2..tension 1.5..z1..z3..z.l{left};
+r_con(1);
+endchar;
+
+arabchar(mim_spec_long, f_mid, 9, 10, 0); % long mim after lam
+x2 = x.r = x1 - 2dx; y1 = y.r = y2 - dy;
+draw z.l{right}..z2..z1;
+r_con(2);
+endchar;
+
+arabchar(mim_spec_alif, f_mid, 8, 8, 3); % mim before alif
+x1 = x2 = x.l + 5dx; y1 + 3dy = y2 - 3dy = y.r;
+z3 = .5[z2, z.r];
+draw z.l{(4dx,-7dy)}..z1{(7dx,-4dy)};
+draw z1{(-7dx,4dy)}..z2{right}..z3{(dx,-6dy)}..z.r{right};
+endchar;
+
+arabchar(mim_lam_gim, f_mid, 6, 10, 2); % lam_mim over gim
+x1 - 2dx = x2 = x.r; y1 + dy = y2 = y.r + 2dy;
+draw z.l{(dx,dy)}..z2..z1;
+r_con(2);
+endchar;
+
+%%%%%%%%%%%%%% hah ligature %%%%%%%%%%%%%%%%%
+
+arabchar(hah_spec, f_end, 5, 8, 0);
+x1 + 2dx = x.r; y1 - 2dy = y.r;
+draw z.r{left}..z1..z.l{(-dx,-dy)};
+endchar;
+
+arabchar(hah_spec, f_mid, 6, 5, 6); % sharp medial hah
+x1 = x2 = x3 + 1.5dx = x.r - 2dx;
+y1 + 6dy = y2 - 2dy = y.r; y3 = y1 + 2dy;
+draw z1{up}..z.r{(dx,dy)};
+bow (z1, z3, z2); l_att(2);
+endchar;
+
+arabchar(hah_spec, f_beg, 5, 8, 2);
+x1 = x.r; x2 - 2dx = x.l;
+y1 = y2 = y.r + 2dy;
+draw z1..z2{up}; draw z2{down}..z.l{left};
+endchar;
+
+arabchar(hah_spec_lam, f_mid, 5, 15, 0); % hah after lam
+x2 = x3 + 1.5dx = x4 - 1.5dx = x.l + 3dx;
+x6 + dx = x5 - 3dx = x.l + 8dx;
+y2 = 2dy; y3 = y4 = 4dy; y6 = dy;
+draw z.rr{curl 0}..tension 1.5..z6..tension 2..z2..z3..z4..z2..z.l{left};
+r_con(rr);
+endchar;
+
+%%%%%%%%%%%%%% yah after sin %%%%%%%%%%%%%%%%%
+
+arabchar(yah_spec, f_end, 9, 5, 7); % final yah connected from above
+x.m := x.m + dx; x2 = x.r + 4dx;
+x3 = x.m; lft x4 = lft x5 + 1.5dx - pl = x.l;
+y2 - dy = y4 = y5 - 3dy = y3 + 3dy = -3dy;
+draw z.r{(8dx,-3dy)}..tension 1.5
+..z2{down}..tension 1.5..z3{left}..z4{up}..z5;
+endchar;
+
+arabchar(yah_h_spec, f_end, 11, 5, 7); % final yah with hook
+x.m := x.m + 2dx; x2 = x.r + 4dx;
+x3 = x.m; lft x4 = x5 - dx = x.r - 9dx;
+y2 - dy = y4 = y5 - 3dy = y3 + 3dy = -3dy;
+draw z.r{(8dx,-3dy)}..tension 1.5
+..z2{down}..tension 1.5..z3{left}..z4{up}..z5;
+x7 = x5 - 3dx; y7 = y5 - 5dy; draw z5--z7;
+endchar;
+
+%%%%%%%%%%%%%% ties %%%%%%%%%%%%%%%%%
+
+%arabchar(mm_to_b, f_mid, 6, 5, 6);
+%x1 = x.rr - 3dx; y1 = y.r + 2dy;
+%x2 = x.l; y.l - y2 = y.rr - y.r;
+%draw z2{(-dx,dy)}..z1..z.r{right};
+%r_con(rr);
+%endchar;
+
+arabchar(er_to_s, f_mid, 5, 5, 0);
+x1 + dx = x.l; x5 = x.r - 2dx;
+y1 - .5dy = y5 - 2dy = y.r;
+draw z1--z5; draw z5..z.r{right};
+endchar;
+
+arabchar(g_to_mb, f_mid, 8, 8, 6);
+z3 = 0.2[z.r,z.rr]; z1 = 0.9[z1,z3]; z2 = 0.8[z.ll,z.rr];
+draw z.l..controls z1 and z2..z.rr;
+endchar;
+
+%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%
+
+endinput;
+
diff --git a/language/arabic/arabtex/mfinput/nashspec.mf b/language/arabic/arabtex/mfinput/nashspec.mf
new file mode 100644
index 0000000000..e50b0f9a16
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/nashspec.mf
@@ -0,0 +1,206 @@
+%%%%%%%%%%%%%%%%%%%%%%% nashspec.mf %%%%%%%%%%%%%%%%%%%%%%%%%%%
+% NASH Font
+% special characters
+% 26.02.92
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown nashbase: input nashbase fi;
+
+%%%%%%%%%%%%%% very special characters %%%%%%%%%%%%%%%%%
+
+arabchar(space_spec, f_beg, 5, 8, 6);
+endchar;
+
+arabchar(space_spec, f_mid, 0, 8, 6);
+endchar;
+
+arabchar(tatwil, f_iso, 5, 5, 0);
+draw z.r--z.l;
+endchar;
+
+arabchar(tatwil, f_beg, 5, 5, 0);
+draw z.r--z.l;
+endchar;
+
+arabchar(tatwil, f_mid, 5, 5, 0);
+draw z.r--z.l;
+endchar;
+
+arabchar(tatwil, f_end, 5, 5, 0);
+draw z.r--z.l;
+endchar;
+
+arabchar(block, f_iso, 10, 10, 0); % block isoliert
+x1 = x2 = x.l + dx; x3 = x4 = x.r - dx;
+y1 = y4 = 10dy; y2 = y3 = 0;
+fill z1--z2--z3--z4--cycle;
+endchar;
+
+arabchar(block, f_beg, 10, 10, 0); % block initial
+x1 = x2 = x.l + dx; x3 = x4 = x.m;
+%x1 = x2 = x.l + dx; x3 = x4 = x.r - dx;
+y1 = y4 = 10dy; y2 = y3 = 0;
+fill z1--z2--z3--z4--cycle;
+endchar;
+
+arabchar(block, f_mid, 10, 10, 0); % block medial
+x1 = x2 = x.l + dx; x3 = x4 = x.r - dx;
+y1 = y4 = 5dy; y2 = y3 = 0;
+%y1 = y4 = 10dy; y2 = y3 = 0;
+fill z1--z2--z3--z4--cycle;
+endchar;
+
+arabchar(block, f_end, 10, 10, 0); % block final
+x1 = x2 = x.m; x3 = x4 = x.r - dx;
+%x1 = x2 = x.l + dx; x3 = x4 = x.r - dx;
+y1 = y4 = 10dy; y2 = y3 = 0;
+fill z1--z2--z3--z4--cycle;
+endchar;
+
+%arabchar(0, 0, 10, 15, 0); % block in position 0
+%x1 = x2 = x.l + dx; x3 = x4 = x.r - dx;
+%y1 = y4 = 10dy; y2 = y3 = 0;
+%fill z1--z2--z3--z4--cycle;
+%endchar;
+
+%%%%%%%%%%%%%% special characters %%%%%%%%%%%%%%%%%
+
+arabchar(".", 0, 2, 2, -1.5);
+x1 = x.m; y1 = dy;
+put_dot(1);
+endchar;
+
+arabchar(",", 0, 4, 10, 0);
+x1 = x2 = x.m; y1 = 6dy; y2 = dy;
+%x1 = x2 = x.m; y1 = 10dy; y2 = 5dy;
+draw z1{(-dx,-dy)}..z2{right};
+endchar;
+
+arabchar(";", 0, 4, 10, 0);
+x1 = x2 = x.m; y1 = 10dy; y2 = 5dy;
+draw z1{(-dx,-dy)}..z2{right};
+one_dot(1);
+endchar;
+
+arabchar(":", 0, 4, 10, 0);
+x1 = x2 = x.m; y1 = dy; y2 = 6dy;
+put_dot(1); put_dot(2);
+endchar;
+
+arabchar("!", 0, 4, 15, 0);
+x1 = x2 = x3 = x.m; y1 = dy; y2 = 6dy; y3 = 13dy;
+put_dot(1); draw z3--z2;
+endchar;
+
+arabchar("?", 0, 7, 15, 0);
+x1 - 2dx = x3 + 2dx = x2 = x4 = x.m;
+y1 = y3 = 10dy; y2 = 13dy; y4 = 4dy;
+draw z1..z2{left}..z3..z4{(-4dx,-11dy)};
+one_dot(1);
+endchar;
+
+arabchar("$", 0, 6, 10, 5);
+x1 = x2 = x.m; x3 = x5 = x.m + 2dx; x4 = x6 = x.m - 2dx;
+y1 = 8dy; y2 = -6dy; y3 = y4 = 3dy; y5 = y6 = -dy;
+draw z1--z2; draw z3..z4..z5..z6;
+endchar;
+
+arabchar("*", 0, 8, 10, 0);
+x1 = x2 = x.m; x3 = x5 = x.m + 3dx; x4 = x6 = x.m - 3dx;
+y1 = 7dy; y3 = y6 = 5dy; y4 = y5 = dy; y2 = -dy;
+draw z1--z2; draw z3--z4; draw z5--z6;
+endchar;
+
+arabchar("%", 0, 14, 10, 5);
+x1 = x5 = x6 = x.m + 4dx;
+x2 = x3 = x4 = x.m - 4dx;
+y1 = y3 = 8dy; y4 = 3dy; y5 = dy; y2 = y6 = -4dy;
+draw z3..z4..cycle; draw z5..z6..cycle;
+pickup dia_pen; draw z1--z2;
+endchar;
+
+arabchar("/", 0, 10, 10, 5);
+%arabchar("/", 0, 10, 15, 7);
+pickup dia_pen;
+x1 + 4dx = x2 - 4dx = x.m;
+y2 = 9dy; y1 = -6dy;
+%y2 = 14dy; y1 = -6dy;
+draw z1--z2;
+endchar;
+
+arabchar(rquotes, 0, 8, 10, 5); % ``
+x1 = x3 = x2 + 2dx = x.m - dx;
+x4 = x6 = x5 + 2dx = x.m + 3dx;
+y1 = y4 = 5dy; y2 = y5 = dy; y3 = y6 = -3dy;
+draw z1..z2..z3; draw z4..z5..z6;
+endchar;
+
+arabchar(lquotes, 0, 8, 10, 5); % ''
+x1 = x3 = x2 - 2dx = x.m + dx;
+x4 = x6 = x5 - 2dx = x.m - 3dx;
+y1 = y4 = 5dy; y2 = y5 = dy; y3 = y6 = -3dy;
+draw z1..z2..z3; draw z4..z5..z6;
+endchar;
+
+arabchar("=", 0, 16, 10, 0);
+x5 = x7 = x.m - 7dx; x6 = x8 = x.m + 7dx;
+y5 = y6 = 3dy; y7 = y8 = -dy;
+draw z5--z6; draw z7--z8;
+endchar;
+
+arabchar("+", 0, 10, 10, 0);
+x1 = x2 = x3 + 4dx = x4 - 4dx = x.m;
+y1 = 5dy; y2 = -3dy; y3 = y4 = dy;
+draw z1--z2; draw z3--z4;
+endchar;
+
+arabchar("-", 0, 8, 10, 0);
+x1 + 3dx = x2 - 3dx = x.m;
+y1 = y2 = dy;
+%y1 = y2 = 4dy;
+draw z1--z2;
+endchar;
+
+arabchar("#", 0, 16, 10, 5);
+x1 = x4 = x3 - 4dx = x2 + 4dx = x.m;
+x5 = x7 = x.m - 7dx; x6 = x8 = x.m + 7dx;
+y1 = y3 = 7dy; y2 = y4 = -7dy;
+y5 = y6 = 2dy; y7 = y8 = -2dy;
+draw z5--z6; draw z7--z8;
+pickup dia_pen;
+draw z1--z2; draw z3--z4;
+endchar;
+
+arabchar("(", 0, 8, 10, 5);
+x1 = x2 = x.m + 3dx; x3 = x.m - 3dx;
+top y1 = 10dy; bot y2 = -7dy; y3 = .5[y1,y2];
+%top y1 = 15dy; bot y2 = -7dy; y3 = 4dy;
+draw z1..z3..z2;
+endchar;
+
+arabchar(")", 0, 8, 10, 5);
+x1 = x2 = x.m - 3dx; x3 = x.m + 3dx;
+top y1 = 10dy; bot y2 = -7dy; y3 = .5[y1,y2];
+draw z1..z3..z2;
+endchar;
+
+arabchar("[", 0, 6, 10, 5);
+x1 = x2 = x.m + 2dx; x3 = x4 = x.m - 2dx;
+y1 = y3 = 9dy; y2 = y4 = -6dy;
+%y1 = y3 = 14dy; y2 = y4 = -6dy;
+draw z1--z3--z4--z2;
+endchar;
+
+arabchar("]", 0, 6, 10, 5);
+x1 = x2 = x.m + 2dx; x3 = x4 = x.m - 2dx;
+y1 = y3 = 9dy; y2 = y4 = -6dy;
+draw z3--z1--z2--z4;
+endchar;
+
+%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/mfinput/xarbsymb.dat b/language/arabic/arabtex/mfinput/xarbsymb.dat
new file mode 100644
index 0000000000..4e8f3e1bab
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/xarbsymb.dat
@@ -0,0 +1,209 @@
+% code assignments for arabic font in ArabTeX
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+% 15.07.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%\a@ident {xarbsymb.sty} {3.07 symbolic output encoding } {15.07.97}
+
+nashcode 1 file has been read
+
+%%%%%%%%%%%%%%%%%% connection forms %%%%%%%%%%%%%%%%%%
+
+f_iso 0 isolated
+f_end 1 final
+f_mid 2 medial
+f_beg 3 initial
+
+%%%%%%%%%%%%%%%%%% diacritical marks %%%%%%%%%%%%%%%%%
+
+ttah_dia 010 for urdu
+one_dot_up 011
+two_dots_down 012
+fatha 013
+kasra 013
+damma 014
+hamza 015
+madda 016
+shadda 017
+two_dots_up 020
+three_dots_up 021
+three_dots_down 022
+fathatan 023
+kasratan 023
+dammatan 024
+sukun 025
+wasla 026
+quran_alif 027
+bow_dia 030 for kurdish
+e_dia 040 for pashto
+zwarakay 040 for pashto
+one_dot_down 056 period
+hamz_s 143 for kashmiri 0674
+bars 144 for 06fd, 06fe
+roof 145 for 06c9
+h_dia 146 for urdu
+ammad 146 for pashto
+
+f_iv 122 farsi 4
+f_v 123 farsi 5
+f_vi 124 farsi 6
+
+%%%%%%%%%%%%%%%%%% letters %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+alif 100 100,101
+alif_iso alif 100
+alif_end 101 101
+
+lam_alif 102 102,103
+lam_alif_iso lam_alif 102
+lam_alif_end 103 103
+
+bah_s 110 110-113 bah without dots
+bah bah_s 110
+bah_p 114 114-117 bah with loop
+
+rah 120 120,121
+%% zay 122 122,123
+%% zhah 124 124,125
+rah_p 126 126,127 rah with loop
+
+hamza_iso 132 132
+hamzc hamza_iso 132
+
+dal 130 130,131
+dal_p 136 136,137 dal with loop
+
+gim_close 144 147 closed gim
+%% gim 140 140-143
+hhah 150 150-153
+rah_s 156 156,157 rah with two dots
+khah 160 160-163
+%% tsah 170 170-173
+rah_k 166 166,167 kurdish rah
+
+sin 200 200-203
+sin_spec 202 204,205 short form
+%% shin_spec 204 206,207 short form
+qaf_s 206 206,207 qaf without dots
+%% shin 210 210-213
+%% sin_p 214 214,215 sin with two dots
+
+sad 220 220-223
+sad_spec 222 224,225 short form
+%% dad_spec 224 226,227 short form
+%% dad 230 230-233
+
+gaf_p_spec 224 226,227 short form of gaf with loop
+gaf_p_s 230 230-233 gaf with loop
+kaf_w 234 234-237 wide kaf
+
+ttah 240 240-243
+
+%% zzah 244 244-247
+waw_r 244 244,245 waw with ring
+waw_b 246 246,247 waw with bar
+
+ain 250 250-253
+fah_s 254 254-257 fah family
+
+kaf_p_s 260 260-263 kaf with loop
+gaf_p kaf_p_s 260
+kaf_p 264 264,265 kaf with loop and mark
+kaf_p_spec 264 266,267 short form of kaf with loop
+kaf_s 270 270-273 kaf family
+kaf 274 274,275
+kaf_spec 274 276,277 short form
+gaf_s 300 300-303 gaf family
+gaf 304 304,305
+gaf_spec 304 306,307 short form
+
+lam 310 310-313
+mim 320 320-323
+mim_sind 335 335 Sindhi final mim 06fe
+
+nun 340 340,341
+nun_p 342 342,343 nun with loop
+
+hah 350 350-354
+hah_urd 353 353,354 two-eyed hah,
+ % see hah and hah_spec_lam
+hah_spec_lam 352 354 medial hah after initial lam
+hah_spec 354 355-357 final short hah;
+h_s hah_spec 354
+ % also medial hah after sin
+
+waw 360 360,361
+%% fah 362 362,363
+qaf 364 364,365
+%% vah 366 366,367
+
+yah 370 370,371
+yah_spec 371 372 ligature for final yah
+yah_h 373 373,374 yah with hook
+yah_h_spec 374 375 ligature for yah with hook
+yah_p 376 376,377 long yah
+yah_p_s 366 366,367 long yah with loop
+
+%%%%%%%%%%%%%%%%%% special characters %%%%%%%%%%%%%%%%%%%
+
+block 000 000-003
+tatwil 004 004-007
+
+rquotes 042 042
+period 056 056
+lquotes 134 134
+
+space_spec 044 046,047 carrier for dots
+smspc space_spec 044
+skip 045 047 small space, initial (!)
+no_break 046 046 no space, breaks ligatures
+break 047 047 small space, medial
+
+%%%%%%%%%%%%%%%%%% ligatures %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+bah_spec_gim 027 031 medial bah before gim
+bah_beg_gim 030 032 initial (!) bah before gim
+g_to_mb 031 033 medial bah to gim
+bah_high 032 034,035 before sin, sad
+bah_spec 034 036,037 bah before final rah, nun
+lam_spec_low 072 074 medial lam for 'allah'
+lam_l lam_spec_low 072
+alif_spec_mim 075 076 final alif after mim
+bah_end_hah 102 104,105 bah before final hah
+bah_spec_yah 104 106,107 bah before gim, with tie;
+ % also bah before yah
+%% gim_spec 143 144,145 from above
+hhah_spec 153 154,155 from above
+khah_spec 163 164,165 from above
+%% tsah_spec 173 174,175 from above
+lam_gim 311 314 lam on gim
+lam_on_gim 312 314 initial (!) lam before gim
+lam_long 312 315 initial lam before yah
+lam_spec_yah 314 316 before final yah ?
+lam_spec_mim 314 317 initial lam before medial mim
+mim_spec_high 322 324 from above
+mim_spec 324 325-327 final; medial after lam;
+ % also before gim
+mim_spec_mim 325 330 initial mim before mim
+mim_lam_gim 327 331 medial mim between lam and gim
+lam_spec_hah 330 333 initial lam before medial hah
+mim_spec_long 332 334 medial mim after lam, vocalized
+mm_to_b 333 335 bah to medial mim
+bah_mid_mim 334 336,337 bah before medial mim
+mim_spec_alif 342 344 medial mim before alif
+er_to_s 343 345 sin to final rah
+bah_end_mim 344 346 medial bah before final mim
+bah_beg_mim 345 347 initial (!) bah before final mim
+
+%%%%%%%%%%%%%%%%%% ties %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+g_to_s bah_spec_gim sin to gim
+em_to_s bah_end_mim sin to final mim
+mh_to_s bah_end_hah sin to medial hah or final mim
+g_to_bb bah_beg_gim initial bah to gim
+em_to_bb bah_beg_mim initial bah to final mim
+
+%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/mfinput/xarbsymb.mf b/language/arabic/arabtex/mfinput/xarbsymb.mf
new file mode 100644
index 0000000000..031b7097ce
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/xarbsymb.mf
@@ -0,0 +1,213 @@
+%%%%%%%%%%%%%%%%%%%% xarbsymb.mf %%%%%%%%%%%%%%%%%%%%
+% 15.7.1998 16:19:14
+% code assignments for arabic font in ArabTeX
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+% 15.07.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%\a@ident {xarbsymb.sty} {3.07 symbolic output encoding } {15.07.97}
+
+nashcode := oct "1"; % file has been read
+
+%%%%%%%%%%%%%%%%%% connection forms %%%%%%%%%%%%%%%%%%
+
+f_iso := oct "0"; % isolated
+f_end := oct "1"; % final
+f_mid := oct "2"; % medial
+f_beg := oct "3"; % initial
+
+%%%%%%%%%%%%%%%%%% diacritical marks %%%%%%%%%%%%%%%%%
+
+ttah_dia := oct "010"; % for urdu
+one_dot_up := oct "011"; %
+two_dots_down := oct "012"; %
+fatha := oct "013"; %
+kasra := oct "013"; %
+damma := oct "014"; %
+hamza := oct "015"; %
+madda := oct "016"; %
+shadda := oct "017"; %
+two_dots_up := oct "020"; %
+three_dots_up := oct "021"; %
+three_dots_down := oct "022"; %
+fathatan := oct "023"; %
+kasratan := oct "023"; %
+dammatan := oct "024"; %
+sukun := oct "025"; %
+wasla := oct "026"; %
+quran_alif := oct "027"; %
+bow_dia := oct "030"; % for kurdish
+e_dia := oct "040"; % for pashto
+zwarakay := oct "040"; % for pashto
+one_dot_down := oct "056"; % period
+hamz_s := oct "143"; % for kashmiri 0674
+bars := oct "144"; % for 06fd, 06fe
+roof := oct "145"; % for 06c9
+h_dia := oct "146"; % for urdu
+ammad := oct "146"; % for pashto
+
+f_iv := oct "122"; % farsi 4
+f_v := oct "123"; % farsi 5
+f_vi := oct "124"; % farsi 6
+
+%%%%%%%%%%%%%%%%%% letters %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+alif := oct "100"; % 100,101
+alif_iso := alif; % 100
+alif_end := oct "101"; % 101
+
+lam_alif := oct "102"; % 102,103
+lam_alif_iso := lam_alif; % 102
+lam_alif_end := oct "103"; % 103
+
+bah_s := oct "110"; % 110-113 bah without dots
+bah := bah_s; % 110
+bah_p := oct "114"; % 114-117 bah with loop
+
+rah := oct "120"; % 120,121
+%% zay 122 122,123
+%% zhah 124 124,125
+rah_p := oct "126"; % 126,127 rah with loop
+
+hamza_iso := oct "132"; % 132
+hamzc := hamza_iso; % 132
+
+dal := oct "130"; % 130,131
+dal_p := oct "136"; % 136,137 dal with loop
+
+gim_close := oct "144"; % 147 closed gim
+%% gim 140 140-143
+hhah := oct "150"; % 150-153
+rah_s := oct "156"; % 156,157 rah with two dots
+khah := oct "160"; % 160-163
+%% tsah 170 170-173
+rah_k := oct "166"; % 166,167 kurdish rah
+
+sin := oct "200"; % 200-203
+sin_spec := oct "202"; % 204,205 short form
+%% shin_spec 204 206,207 short form
+qaf_s := oct "206"; % 206,207 qaf without dots
+%% shin 210 210-213
+%% sin_p 214 214,215 sin with two dots
+
+sad := oct "220"; % 220-223
+sad_spec := oct "222"; % 224,225 short form
+%% dad_spec 224 226,227 short form
+%% dad 230 230-233
+
+gaf_p_spec := oct "224"; % 226,227 short form of gaf with loop
+gaf_p_s := oct "230"; % 230-233 gaf with loop
+kaf_w := oct "234"; % 234-237 wide kaf
+
+ttah := oct "240"; % 240-243
+
+%% zzah 244 244-247
+waw_r := oct "244"; % 244,245 waw with ring
+waw_b := oct "246"; % 246,247 waw with bar
+
+ain := oct "250"; % 250-253
+fah_s := oct "254"; % 254-257 fah family
+
+kaf_p_s := oct "260"; % 260-263 kaf with loop
+gaf_p := kaf_p_s; % 260
+kaf_p := oct "264"; % 264,265 kaf with loop and mark
+kaf_p_spec := oct "264"; % 266,267 short form of kaf with loop
+kaf_s := oct "270"; % 270-273 kaf family
+kaf := oct "274"; % 274,275
+kaf_spec := oct "274"; % 276,277 short form
+gaf_s := oct "300"; % 300-303 gaf family
+gaf := oct "304"; % 304,305
+gaf_spec := oct "304"; % 306,307 short form
+
+lam := oct "310"; % 310-313
+mim := oct "320"; % 320-323
+mim_sind := oct "335"; % 335 Sindhi final mim 06fe
+
+nun := oct "340"; % 340,341
+nun_p := oct "342"; % 342,343 nun with loop
+
+hah := oct "350"; % 350-354
+hah_urd := oct "353"; % 353,354 two-eyed hah,
+ % see hah and hah_spec_lam
+hah_spec_lam := oct "352"; % 354 medial hah after initial lam
+hah_spec := oct "354"; % 355-357 final short hah;
+h_s := hah_spec; % 354
+ % also medial hah after sin
+
+waw := oct "360"; % 360,361
+%% fah 362 362,363
+qaf := oct "364"; % 364,365
+%% vah 366 366,367
+
+yah := oct "370"; % 370,371
+yah_spec := oct "371"; % 372 ligature for final yah
+yah_h := oct "373"; % 373,374 yah with hook
+yah_h_spec := oct "374"; % 375 ligature for yah with hook
+yah_p := oct "376"; % 376,377 long yah
+yah_p_s := oct "366"; % 366,367 long yah with loop
+
+%%%%%%%%%%%%%%%%%% special characters %%%%%%%%%%%%%%%%%%%
+
+block := oct "000"; % 000-003
+tatwil := oct "004"; % 004-007
+
+rquotes := oct "042"; % 042
+period := oct "056"; % 056
+lquotes := oct "134"; % 134
+
+space_spec := oct "044"; % 046,047 carrier for dots
+smspc := space_spec; % 044
+skip := oct "045"; % 047 small space, initial (!)
+no_break := oct "046"; % 046 no space, breaks ligatures
+break := oct "047"; % 047 small space, medial
+
+%%%%%%%%%%%%%%%%%% ligatures %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+bah_spec_gim := oct "027"; % 031 medial bah before gim
+bah_beg_gim := oct "030"; % 032 initial (!) bah before gim
+g_to_mb := oct "031"; % 033 medial bah to gim
+bah_high := oct "032"; % 034,035 before sin, sad
+bah_spec := oct "034"; % 036,037 bah before final rah, nun
+lam_spec_low := oct "072"; % 074 medial lam for 'allah'
+lam_l := lam_spec_low; % 072
+alif_spec_mim := oct "075"; % 076 final alif after mim
+bah_end_hah := oct "102"; % 104,105 bah before final hah
+bah_spec_yah := oct "104"; % 106,107 bah before gim, with tie;
+ % also bah before yah
+%% gim_spec 143 144,145 from above
+hhah_spec := oct "153"; % 154,155 from above
+khah_spec := oct "163"; % 164,165 from above
+%% tsah_spec 173 174,175 from above
+lam_gim := oct "311"; % 314 lam on gim
+lam_on_gim := oct "312"; % 314 initial (!) lam before gim
+lam_long := oct "312"; % 315 initial lam before yah
+lam_spec_yah := oct "314"; % 316 before final yah ?
+lam_spec_mim := oct "314"; % 317 initial lam before medial mim
+mim_spec_high := oct "322"; % 324 from above
+mim_spec := oct "324"; % 325-327 final; medial after lam;
+ % also before gim
+mim_spec_mim := oct "325"; % 330 initial mim before mim
+mim_lam_gim := oct "327"; % 331 medial mim between lam and gim
+lam_spec_hah := oct "330"; % 333 initial lam before medial hah
+mim_spec_long := oct "332"; % 334 medial mim after lam, vocalized
+mm_to_b := oct "333"; % 335 bah to medial mim
+bah_mid_mim := oct "334"; % 336,337 bah before medial mim
+mim_spec_alif := oct "342"; % 344 medial mim before alif
+er_to_s := oct "343"; % 345 sin to final rah
+bah_end_mim := oct "344"; % 346 medial bah before final mim
+bah_beg_mim := oct "345"; % 347 initial (!) bah before final mim
+
+%%%%%%%%%%%%%%%%%% ties %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+g_to_s := bah_spec_gim; % sin to gim
+em_to_s := bah_end_mim; % sin to final mim
+mh_to_s := bah_end_hah; % sin to medial hah or final mim
+g_to_bb := bah_beg_gim; % initial bah to gim
+em_to_bb := bah_beg_mim; % initial bah to final mim
+
+%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+endinput;
diff --git a/language/arabic/arabtex/mfinput/xnsh.mf b/language/arabic/arabtex/mfinput/xnsh.mf
new file mode 100644
index 0000000000..825b931cad
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/xnsh.mf
@@ -0,0 +1,43 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% xnsh.mf %%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Extended ArabTeX NASKH Font
+% collect all characters
+% 31.03.98
+% 16.07.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+% 16.07.1998
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% abort if cm base is loaded
+if unknown xnshbase: endinput fi;
+
+mode_setup;
+
+% font parameters
+em# := fs#;
+ex# := 8dy#;
+font_slant 0;
+font_normal_space .3em#;
+font_normal_stretch .5em#;
+font_normal_shrink 0;
+font_x_height ex#;
+font_quad em#;
+font_extra_space 0;
+font_coding_scheme "ArabTeX Naskh extended";
+
+font_setup;
+
+input xnshchar;
+
+input xnshlig;
+
+input xnshdia;
+
+input xnshdig;
+
+input xnshspec;
+
+endinput;
+%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/mfinput/xnsh14.mf b/language/arabic/arabtex/mfinput/xnsh14.mf
new file mode 100644
index 0000000000..90cf63a6ed
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/xnsh14.mf
@@ -0,0 +1,52 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% xnsh14.mf %%%%%%%%%%%%%%%%%%%%%%%%%
+% Extended Naskh font at 14.4 pt
+% 31.03.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown xnshbase: input xnshbase fi
+
+font_identifier "XNASKH";
+
+font_size 14.4pt#;
+
+fs# := 14.4pt#;
+
+% grid units
+fs# = 25.4dx#;
+fs# = 25.4dy#;
+
+% diacritics distance
+dia_d := 2;
+
+% normal pen
+px# := 1.8dy#; py# := 0.3dx#;
+
+pen_angle := 70;
+
+diag_angle = pen_angle - angle(px#,py#);
+
+% dot pen
+dp# := 2dy#; ap := 50;
+
+% dot distances
+dpx := 1.5; dpy := 3;
+dpx := 1.2; dpy := 2.5;
+
+% small pen for diacritics
+spx# = dx#;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+input xnsh
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+end.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/mfinput/xnsh14bf.mf b/language/arabic/arabtex/mfinput/xnsh14bf.mf
new file mode 100644
index 0000000000..315620e3ca
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/xnsh14bf.mf
@@ -0,0 +1,51 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% xnsh14bf.mf %%%%%%%%%%%%%%%%%%%%%%%
+% Extended Nash font at 14 pt, bold
+% 31.03.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown xnshbase: input xnshbase fi
+
+font_identifier "XNASKHBF";
+
+font_size 14.4pt#;
+
+fs# := 14.4pt#;
+
+% grid units
+fs# = 25.4dx#;
+fs# = 25.4dy#;
+
+% diacritics distance
+dia_d := 2;
+
+% normal pen
+px# := 2.4dy#; py# := 0.6dx#;
+
+pen_angle := 50;
+
+diag_angle = pen_angle - angle(px#,py#);
+
+% dot pen
+dp# := 2.2dy#; ap := 50;
+
+% dot distances
+dpx := 1.5; dpy := 3;
+
+% small pen for diacritics
+spx# := 1.5dx#;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+input xnsh
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+end.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/mfinput/xnshbase.mf b/language/arabic/arabtex/mfinput/xnshbase.mf
new file mode 100644
index 0000000000..7e966b92f4
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/xnshbase.mf
@@ -0,0 +1,578 @@
+%%%%%%%%%%%%%%%%%%%%%% xnshbase.mf %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% base file for extended NASH
+% 13.07.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown cmbase: else:
+errhelp "you are using 'cmbase'; rerun with base=&plain";
+errmessage "this font needs the 'plain' METAFONT base; run aborted";
+endinput
+fi;
+
+if unknown nashcode: input xarbsymb fi;
+
+xnshbase := 1;
+
+def font_setup =
+ define_pixels(dx, dy, dp, em, ex);
+ define_blacker_pixels(px, py, spx);
+ pa := pen_angle; pl := px++py; da := pa - angle(px,py);
+ pickup pensquare xscaled px yscaled py rotated pa;
+% pickup pencircle xscaled px yscaled py rotated pa;
+ nash_pen := savepen;
+ pickup pencircle scaled spx;
+ dia_pen := savepen;
+enddef;
+
+def makegrid(text r) =
+ for x=0 step dx until w+.5dx:
+ for y=0 step dy until h+.5dy:
+ fill unitsquare shifted (x,y);
+ endfor;
+ for y=dy step dy until d+.5dy:
+ fill unitsquare shifted (x,-y);
+ endfor;
+ endfor
+% for y=0,h,-d: r((0,y), (w,y)); endfor
+% for x=0,w: r((x,-d), (x,h)); endfor
+ maketicks(r);
+enddef;
+
+%%%%%%%%%%%%%% char-macros %%%%%%%%%%%%%%%%%
+
+def arabchar(expr code, form, uw, uh, ud) =
+ beginchar(if string code: code else: (code + form) fi,
+ uw*dx#, uh*dy#, (ud + dia_d)*dy#);
+ pickup nash_pen;
+ if .5w <> good.x .5w: change_width; fi
+ x.l = x.ll = 0; x.r = x.rr = w; x.m = 0.5w;
+ bot y.l = bot y.r = y.m = bot y.ll - .5ex = 0; y.rr = y.ll;
+enddef;
+
+def diachar(expr code, uw, uh) =
+ beginchar(code, uw*dx#, (uh+0.5)*dy#, 0.5*dy#);
+% beginchar(code, uw*dx#, uh*dy#, 0);
+ pickup dia_pen;
+ if .5w <> good.x .5w: change_width; fi
+ lft x.l = 0; rt x.r = w;
+ y.l = 0.5dy; y.r = h - dy;
+% bot y.l = 0; top y.r = h;
+enddef;
+
+def numchar(expr code) =
+ beginchar(code, 10*dx#, 10*dy#, 5*dy#);
+ pickup nash_pen;
+ if .5w <> good.x .5w: change_width; fi
+ lft x.l = 0; rt x.r = w;
+ bot y.l = -d; top y.r = h;
+% bot y.l = 0; top y.r = h;
+enddef;
+
+extra_endchar :=
+extra_endchar & "penlabels(l,m,r,ll,rr,range 1 thru 20);";
+
+%%%%%%%%%%%%%% dot-macros %%%%%%%%%%%%%%%%%
+
+def put_dot (suffix $) =
+ z.$1 - z.$2 = (0, px - py) rotated pa;
+ z.$ = .5[z.$1, z.$2];
+ draw z.$1--z.$2;
+ labels($1,$2);
+enddef;
+
+def one_dot (expr n) =
+ x.dd := x.m; y.dd := y.m + round(n*dy);
+ put_dot(dd);
+enddef;
+
+def two_dots (expr n) =
+ x.dr - x.m = x.m - x.dl = round(dpx*dx);
+ y.dl = y.dr = y.m + round(n*dy);
+ put_dot(dl); put_dot(dr);
+enddef;
+
+def three_dots (expr n) =
+ two_dots(n); one_dot(n+dpy);
+enddef;
+
+def three_dots_low (expr n) =
+ two_dots(n); one_dot(n-dpy);
+enddef;
+
+%%%%%%%%%%%%%% stroke-macros %%%%%%%%%%%%%%%%%
+
+def bow (expr u, v, w) =
+ draw u..controls v and v..w;
+enddef;
+
+def l_att (suffix $) =
+ x.$l = x.$ - dx; y.$l = y.l;
+ bow(z.$, z.$l, z.l);
+enddef;
+
+def r_att (suffix $) =
+ x.$r = x.$ + dx; y.$r = y.r;
+ bow(z.$, z.$r, z.r);
+enddef;
+
+def r_att (suffix $) =
+ x.$r = x.$ + dx; y.$r = y.r;
+% bow(z.$, z.$r, z.r);
+draw z.${z.$r-z.$}..z.r{right};
+enddef;
+
+def serif (suffix $) =
+ z.$ = 0.2[z.$2,z.$1];
+% z.$2 - z.$1 = 3dy * (-4dx,11dy); % 110
+ y.$2 - y.$1 = 3dy;
+ z.$2 - z.$1 = whatever * (-4dx,11dy);
+ draw z.$1--z.$2;
+enddef;
+
+def s_bow (suffix $) =
+ x.$1 - .5dx = x.$;
+ x.$2 - 4dx = lft x.$3 = lft x.$4 + 1.5dx - pl = x.l;
+ y.$1 - dy = y.$3 = y.$4 - 2dy = y.$2 + 2dy = - 2dy;
+ draw z.$..z.$1{down}..z.$3{up}..z.$4;
+enddef;
+
+def p_loop (suffix $) =
+pickup dia_pen;
+x.$1 = x.$2 = x.$; y.$1 + spx + dy = y.$2; top y.$2 = y.$;
+draw z.$1..z.$2..cycle;
+pickup nash_pen;
+enddef;
+
+def r_con (suffix $) =
+ charic := (y.$-y.r)/vppp;
+enddef;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%% bah-macros %%%%%%%%%%%%%%%%%
+
+def bah_bow =
+x1 = x4 + dx = x2 + 13.8dx; x2 = x3 = x.l + 0.6dx;
+%x1 = x4 = x2 + 13.8dx; x2 = x3 = x.l + 0.6dx;
+y4 - 5dy = y1 - 3dy = y2 - 2dy = y.m = y3 - 4dy;
+x5 = x.m; y5 = y.m - 0.5dy;
+enddef;
+
+def bah_end =
+bah_bow; draw z1..z5{left}..z2..z3; r_att(1);
+enddef;
+
+def bah_iso =
+bah_bow; draw z4..z1..z5{left}..z2..z3;
+enddef;
+
+def bah_mid =
+x6 = x.m; y6 = good.y (y.r + 2dy);
+l_att(6); r_att(6);
+enddef;
+
+def bah_beg =
+x.m := x.m + 0.5dx;
+x1 - dx = x2 = x.m; y1 = y.l; y2 = y.m + 4dy;
+bow(z2, z1, z.l);
+enddef;
+
+%%%%%%%%%%%%%% hhah-macros %%%%%%%%%%%%%%%%%
+
+def hhah_iso_bar =
+x1 - 2dx = x2 - 11dx = x.l; y1 - 4dy = y2 - 4dy = y.r;
+x3 = x2 - 2dx; y3 = y2; draw z1{(8dx,3dy)}..z2{right};
+enddef;
+
+def hhah_mid_bar =
+x1 - 2dx = x2 - 11dx = x.l; y1 - 4dy = y2 - 3dy = y.r;
+x3 = x2 - 2dx; y3 = y2; draw z1{(8dx,3dy)}..z2{right};
+enddef;
+
+def hhah_beg_bar =
+x1 - 2dx = x2 - 11dx = x.l; y1 - 4dy = y2 - 2dy = y.r;
+x3 = x2 - 2dx; y3 = y2; draw z1{(8dx,3dy)}..z2{right};
+enddef;
+
+def hhah_bow =
+lft x4 = x1 - 2dx = x5 - 8dx; rt x6 - 6dx = x5;
+y5 = y6 - dy = -10dy; y4 = 0.6[y2,y5];
+penpos4(pl,da); penpos5(pl,90); penpos6(0.3dy,90);
+draw z2{left}..z4{down};
+fill z4r{down}..z5r{right}..z6r--z6l--z5l{left}..z4l{up}--cycle;
+enddef;
+
+def hhah_iso =
+hhah_iso_bar; hhah_bow;
+enddef;
+
+def hhah_end =
+hhah_mid_bar; hhah_bow;
+draw z3{down}..z.r{right};
+enddef;
+
+def hhah_mid =
+hhah_mid_bar; draw z2{left}..z.l{left};
+draw z3{down}..z.r{right};
+enddef;
+
+def hhah_beg =
+hhah_beg_bar; draw z2{left}..z.l{left};
+enddef;
+
+%%%%%%%%%%%%%% dal-macros %%%%%%%%%%%%%%%%%
+
+def dal_iso =
+x1 = x2 + 2dx = x3 - 3dx = x.r - 4dx; x.m := x1;
+y1 - 6dy = y2 = y3 - dy = y.r;
+draw z1{(7dx,-4dy)}..z3..z2{left};
+enddef;
+
+def dal_end =
+x1 + dx = x3 - dx = x4 + 4dx = x.r - 3dx; lft x2 = x.r - 9dx;
+y1 = 8dy; y2 - dy = y3 = y4 = y.l; z5 = .3[z1,z3];
+draw z1--z5{z3-z1}..z.r{right};
+draw z5{z3 - z1}..z4{left}..z2;
+enddef;
+
+%%%%%%%%%%%%%% rah-macros %%%%%%%%%%%%%%%%%
+
+def rah_bow =
+x5 + dx = x2 + dx = x4 + 9dx = x3 - px + 6dx = x.r;
+y5 + 3dy = y2 - 0.5dy = y4 + 6dy = y3 + 6dy = y.r;
+penpos2(pl,da); penpos3(pl,90);
+penpos4(0.3dy,90); penpos5(0.4[py,px],0);
+enddef;
+
+def rah_iso =
+rah_bow;
+y1 - 2dy = y.r; x1 + 0.5dx = x2;
+penpos1(pl,da);
+fill z1l..z2l..z5l..z3r..z4r{left}--z4l--z3l..z5r..z2r..z1r--cycle;
+enddef;
+
+def rah_end =
+rah_bow;
+y1 - .5dy = y.r; x1 = x2; % = x.r - dx;
+fill z2l..z5l..z3r..z4r{left}--z4l--z3l..z5r..z2r--cycle;
+draw z1..z.r{right};
+enddef;
+
+%%%%%%%%%%%%%% sin-macros %%%%%%%%%%%%%%%%%
+
+def s_wave =
+z2 - z1 = z5 - z4 = 2(z3 - z2);
+x3 - x1 = 6(x3 - x5) = 6dx; x.m := x2;
+y4 = y5 - 0.5dy = y2 - 2.5dy = y.r;
+draw z3..z5..z2; draw z2..z4{left};
+enddef;
+
+def mid_wave =
+x3 = x.r - 3dx; s_wave;
+draw z4{left}..z1;
+enddef;
+
+def beg_wave =
+rt x3 = x.r; s_wave;
+draw z4{left}..z1;
+enddef;
+
+def sin_iso =
+beg_wave; s_bow(1);
+enddef;
+
+def sin_end =
+mid_wave;
+draw z3{down}..z.r{right}; s_bow(1); enddef;
+
+def sin_mid =
+mid_wave; draw z3{down}..z.r{right}; l_att(1);
+enddef;
+
+def sin_beg =
+beg_wave; l_att(1);
+enddef;
+
+%%%%%%%%%%%%%% sad-macros %%%%%%%%%%%%%%%%%
+
+def sad_bow =
+x2 - dx = x3 - 9dx; x2 + 3dx = x.m; x4 = x2 - 2dx;
+y2 = y3 - 3dy = y4 - 2dy = y.r;
+x8 = x2 + 3.5dx; y8 = y2 + 0.5dy;
+draw z2{(5dx,6dy)}..z3{(4dx,-7dy)}..tension 2..z2{left};
+enddef;
+
+def sad_iso =
+x.m := x.m + 4dx;
+sad_bow; draw z2{left}..z4; s_bow(4);
+enddef;
+
+def sad_beg =
+x.m := x.m + dx;
+sad_bow; draw z2{left}..z4; l_att(4);
+enddef;
+
+%%%%%%%%%%%%%% ttah-macros %%%%%%%%%%%%%%%%%
+
+def ttah_stroke =
+x5 = x7 - dx = x2; y5 = 12dy; y7 = y2 + dy;
+draw z5{down}..z7{down};
+serif(5);
+enddef;
+
+def ttah_tail =
+x2 - x6 = 5dx; y6 = top y2;
+penpos2(pl,da);
+fill z6--z2r--z2l{left}..z6..cycle;
+enddef;
+
+def ttah_iso =
+x.m := x.m + dx;
+sad_bow; ttah_stroke; ttah_tail;
+x.m := x.m + dx;
+enddef;
+
+def ttah_beg =
+sad_bow; ttah_stroke;
+x.m := x.m + dx;
+enddef;
+
+%%%%%%%%%%%%%% ain-macros %%%%%%%%%%%%%%%%%
+
+def ain_head =
+x.m := x.m - 2dx;
+lda := 0.5pa + angle(dx,dy);
+penpos7(pl,pa); penpos3(0.3dy,90);
+penpos2(px,lda); penpos8(px,lda);
+x7 + 2dx = x3 + dx = x2 + 6dx; x8 = x2 + 0.3dx;
+y7 = y2 - 3dy = y3 - 4dy; y8 = y2; z7 = 0.25[z1, z.l];
+fill z7l{z.l-z1}..z2l{up}--z2r--z8r{down}..z7r{z1-z.l}--cycle;
+fill z2r{(7dx,10dy)}..z3r--z3l..z8l{(-7dx,-10dy)}--z2l--cycle;
+enddef;
+
+def ain_bow =
+lft x4 = x.l = x5 - 8dx; rt x6 = x5 + 6dx;
+y5 = y6 - dy = -10dy; y4 = 0.6[y1,y5];
+penpos4(pl,da); penpos5(pl,90); penpos6(0.3dy,90);
+draw z1{z.l - z1}..z4{down};
+fill z4r{down}..z5r{right}..z6r--z6l--z5l{left}..z4l{up}--cycle;
+enddef;
+
+def ain_top =
+x2 = x1 = x.r - 3.5dx; y2 - 2dy = y1 = 2dy;
+%x2 = x1 = x.m + 0.5dx; y2 - 2dy = y1 = 2dy;
+x7 - x2 = x2 - x3 = 2dx; y7 = y3 = y2 - 0.5dy;
+x8 = x3 - dx; y8 = y3;
+draw z.r{left}..z1..z3; draw z8..z2..z7;
+enddef;
+
+def ain_iso =
+x1 = x.r - 3dx; y1 = 5dy;
+ain_head; ain_bow;
+enddef;
+
+def ain_end =
+ain_top; draw z7..z1{z.l - z1}; ain_bow;
+enddef;
+
+def ain_mid =
+ain_top; draw z7..z1..z.l{left};
+enddef;
+
+def ain_beg =
+rt x1 = x.r; y1 = 3dy;
+ain_head; draw z1..z7..z.l{left};
+enddef;
+
+%%%%%%%%%%%%%% fah-macros %%%%%%%%%%%%%%%%%
+
+def fah_iso =
+x.m := x.m + 4dx;
+x1 = x2 - 2dx = x3 + dx = x4 - 2.5dx; rt x4 = x.r;
+y1 = y4 = 6dy; y2 = y3 = 8dy;
+lft x5 = x.l; lft x6 = lft x5 - 1.5dx + pl; x7 = 6dx;
+y5 = 3dy; y6 = y5 + 3dy; bot y7 = -0.5dy;
+draw z2..z1..z3..z4{down}..z7..z5{up}..z6;
+enddef;
+
+def fah_end =
+x.m := x.m + 4dx;
+x1 = x2 + dx = x.r - 2dx; lft x3 = lft x4 + 1.5dx - pl = x5 - 5dx = x.l;
+y5 = dy; y1 = 6.5dy; y2 = 2dy; y3 = 4dy; y4 = 6dy;
+x2a + 3dx = x2b = x1; y2a = y2b = y.r + 2dy;
+draw z.r{left}..z2a..z1;
+draw z1..z2b..tension 1.5..z5..z3{up}..z4;
+enddef;
+
+def fah_mid =
+x1 = x2 + dx = x.r - 2dx; y1 - 5dy = y2 - 0.5dy = y.r;
+x2a + 3dx = x2b = x1; y2a = y2b = y.r + 2dy;
+draw z.r{left}..z2a..z1; draw z1..z2b..z.l{left};
+enddef;
+
+def fah_beg =
+x1 = x2 - 2dx = x3 + dx = x4 - 2.5dx; rt x4 = x.r;
+y1 = y4 = 4dy; y2 = y3 = 6dy;
+draw z2..z1..z3..z4{down}..z.l{left};
+enddef;
+
+%%%%%%%%%%%%%% qaf-macros %%%%%%%%%%%%%%%%%
+
+def qaf_iso =
+x.m := x.m + 2dx;
+x1 = x2 - 2dx = x3 + dx = x4 - 2.5dx; rt x4 = x.r;
+y1 = y4 = 4dy; y2 = y3 = 6dy;
+lft x5 = x.l; lft x6 = lft x5 - 1.5dx + pl; x7 = 5dx;
+y5 = dy; y6 = y5 + 3dy; y7 = -2dy;
+draw z2..z1..z3..z4{down}..z7..z5{up}..z6;
+enddef;
+
+def qaf_end =
+x.m := x.m + 2dx;
+x1 + 3dx = x2 + dx = x.r;
+lft x3 = lft x4 + 1.5dx - pl = x5 - 5dx = x.l;
+y1 - 4dy = y2 = y.r = y3 + 2dy = y4 = y5 + 5dy;
+draw z.r{left}..z2..z1{right}..z2..z5..z3{up}..z4;
+enddef;
+
+%%%%%%%%%%%%%% kaf-macros %%%%%%%%%%%%%%%%%
+
+def kaf_mark (suffix $) =
+x.$6 + dx = x.$7 + 2dx = x.$8 = x.$9 + 3dx = x.$;
+y.$6 - 3dy = y.$7 - dy = y.$8 = y.$9 + dy = y.$;
+pickup dia_pen;
+draw z.$6{(-6dx,-5dy)}..z.$7..z.$8..z.$9{left};
+pickup nash_pen;
+labels($6,$7,$9);
+enddef;
+
+def kaf_beg =
+x1 - 11dx = x2 = x4 - 10dx = x.l;
+%x1 = x.r - dx; x2 = x.l; x4 = x.r - 2dx;
+%y4 = y.r; y1 = 14dy; y2 = 9dy; z3 = .4[z2, z4];
+y4 = y.l = y1 - 13dy = y2 - 8dy; z3 = .4[z2, z4];
+bow (z1, z2, z3);
+draw z3{z3 - z2}..z.l{left};
+enddef;
+
+%%%%%%%%%%%%%% gaf-macros %%%%%%%%%%%%%%%%%
+
+def gaf_iso =
+x1 - 15dx = x2 - 6dx = x4 - 8dx = x6 - dx = x.l;
+y1 - 13dy = y2 - 9dy = y4 = y6 - dy = y.l;
+z3 = .7[z2, z4]; z5 = .5[z4, z.l];
+bow(z1, z2, z3); bow(z3, z4, z5); bow(z5, z.l, z6);
+enddef;
+
+def gaf_iso =
+x1 - 2dx = x2 + 7dx = x4 +5dx = x.r;
+y1 - 13dy = y2 - 9dy = y4 = y.r;
+z3 = .7[z2, z4]; bow(z1, z2, z3);
+x6 = x7 = x.l + 0.6dx; y6 = y7 - 2dy = y.l + dx;
+x5 = .5[x6, x4]; y5 = y.m; z13 = .5[z4, z3];
+draw z7 .. z6 .. z5{right} .. z13{z3-z13}--z3;
+enddef;
+
+def gaf_serif =
+x10 = x1; y10 = y1 + 2.5dy; x11 = x2 + 2dx; y11 = y2 + 3dy;
+pickup dia_pen;
+z12 = 0.1[z10,z11]; draw z12--z11;
+pickup nash_pen;
+enddef;
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+def serpent =
+x1 = x3 = x.r - 3dx;
+x2 = x4 = x5 - dx = x.l + 4dx;
+y1 = y2 = y4 - 4dy = y5 - 8dy = y.l; y3 = y4;
+draw z5 .. z4{right} .. z3{right} .. z1{left} .. z2;
+enddef;
+
+%%%%%%%%%%%%%% nun-macros %%%%%%%%%%%%%%%%%
+
+def nun_iso =
+x1 + 2dx = rt x2 = x.r; x3 = x.m; lft x4 = lft x5 + 1.5dx - pl = x.l;
+y1 - 8dy = y2 - 3dy = y4 - 3dy = y5 - 5dy = y3 + dy = y.r - 3dy;
+draw z1..z2{down}..z3..z4{up}..z5;
+enddef;
+
+def nun_end =
+x1 = x.r - 2dx; y1 = y.r + dy;
+x2 - .5dx = x1; lft x3 = lft x4 + 1.5dx - pl = x.l;
+y2 - dy = y3 = y4 - 2dy = y.r - 3dy;
+x5 = x.m; y5 = y3 - 4dy;
+draw z1..z2{down}..z5..z3{up}..z4; r_att(1);
+enddef;
+
+%%%%%%%%%%%%%% waw-macros %%%%%%%%%%%%%%%%%
+
+def waw_bow =
+rah_bow;
+x1 + 2.5dx = x2; y1 - 3dy = y2;
+x6 = x1; y6 = y2;
+fill z2l..z5l..z3r..z4r{left}--z4l--z3l..z5r..z2r--cycle;
+enddef;
+
+def waw_bar =
+pickup dia_pen;
+x7 = .3[x4,x5]; y7 = y5; draw z7--z5;
+pickup nash_pen;
+enddef;
+
+%%%%%%%%%%%%%% hah-macros %%%%%%%%%%%%%%%%%
+
+def hah_iso =
+x1 = x.m - .5dx; rt x2 = x.r; lft x3 = x.l;
+y1 = 7dy; y2 = y3 = 3dy;
+%y1 = 6dy; y2 = y3 = 3dy;
+%y1 = 6dy; y2 = y3 = 2dy;
+draw z1..z2{down}..z3{up}..z1;
+enddef;
+
+def hah_end =
+x1 = x2 - dx = x4 + 2.5dx = x.m;
+y1 = 7dy; y2 = y.r; y4 = 4dy;
+z3 = .15[z1, z2]; z5 = .6[z1, z2];
+draw z1--z5{z5-z1}..z.r{right};
+draw z3{(-7dx,-4dy)}..z4{down}..z5{(7dx,4dy)};
+enddef;
+
+%%%%%%%%%%%%%% yah-macros %%%%%%%%%%%%%%%%%
+
+def yah_iso =
+x6 = x1 + 5dx = x2 + dx = x.r = x3 + 6dx;
+lft x4 = lft x5 + 1.5dx - pl = x.r - 13dx;
+%x6 = x1 + 5dx = x2 + dx = x.r = x3 + 6dx; lft x4 = x5 - dx = x.r - 13dx;
+y6 - 7dy = y1 - 3dy = y5 - 3dy = y2 - dy = y4 = y3 + 3dy = y.r - 2dy;
+draw z6{up}..tension 1.5..z1{down}..tension 1.5
+..z2{down}..tension 1.5..z3..z4{up}..z5;
+enddef;
+
+def yah_end =
+x1 + 4dx = rt x2 = x.r = x3 + 5dx;
+lft x4 = lft x5 + 1.5dx - pl = x.r - 11dx;
+y1 + 2dy = y2 + 4dy = y4 + 4dy = y3 + 7dy = y5 + dy = y.r;
+draw z.r{left}..z1{down}..tension 1.5
+..z2{down}..tension 1.5..z3..z4{up}..z5;
+enddef;
+
+def yah_p_iso =
+x10 = x4 - dx = x5; x3 = x6 = x7 + 2dx = x4 - 8dx; x8 = x4 + 4dx = x.r;
+y10 = y6 = y4 - 3dy = y5 - 5dy = y.r; y3 = y.rr; y7 = y8 = y.r - 3dy;
+z9 = 0.2[z10,z5]; z1 = 0.9[z6,z9]; z2 = 0.8[z3,z5];
+draw z8--z7{left}..z6..controls z1 and z2..z5..z4{(dx,-6dy)};
+enddef;
+
+def yah_p_end =
+x8 - 7dx = x7 + 3dx = x.r; y7 = y8 = y.r - 3dy;
+draw z8--z7{left}..z.r{(4dx,dy)};
+enddef;
+
+%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/mfinput/xnshchar.mf b/language/arabic/arabtex/mfinput/xnshchar.mf
new file mode 100644
index 0000000000..b5df351e5c
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/xnshchar.mf
@@ -0,0 +1,646 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% xnshchar.mf %%%%%%%%%%%%%%%%%%%%%%%
+% Extended NASH Font
+% normal characters
+% 15.07.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown xnshbase: input xnshbase fi;
+
+%%%%%%%%%%%%%% alif %%%%%%%%%%%%%%%%%
+
+arabchar(alif, f_iso, 3, 15, -1);
+rt x6 = x.r; bot y6=0;
+x7 = x6 - dx; y7 = 13dy;
+draw z6{up}..z7{up};
+serif(7);
+endchar;
+
+arabchar(alif, f_end, 4, 15, 0);
+x6 + 2dx = x7 + 3dx = x.r;
+y6 = y.r; y7 = 13dy;
+z8 = 0.7[z7,z6]; draw z7---z8..z.r{right};
+endchar;
+
+%%%%%%%%%%%%%% bah family %%%%%%%%%%%%%%%%%
+
+arabchar(bah_s, f_iso, 16, 6, 1);
+bah_iso;
+endchar;
+
+arabchar(bah_s, f_end, 17, 6, 1);
+bah_end;
+endchar;
+
+arabchar(bah_s, f_mid, 5, 8, 0);
+x1 = x.m; y1 = y.l + 2dy;
+draw z.l{right}..z1; draw z1..z.r{right};
+endchar;
+
+arabchar(bah_s, f_beg, 5, 8, 0);
+x2 = x1 = x.l + 3dx; y1 - 4dy = y2 - dy = y.l;
+draw z1{(4dx,-11dy)}..z2..z.l{left};
+endchar;
+
+%%%%%%%%%%%%%% bah family with loop %%%%%%%%%%%%%%%%%
+
+arabchar(bah_p, f_iso, 16, 6, 3);
+bah_iso;
+x6 = x5; top y6 = y5; p_loop(6);
+endchar;
+
+arabchar(bah_p, f_end, 17, 6, 3);
+bah_end;
+x6 = x5; top y6 = y5; p_loop(6);
+endchar;
+
+arabchar(bah_p, f_mid, 6, 8, 2);
+x1 = x2 + dx = x.r - 2dx; y1 - 2dy = y2 = y.l;
+draw z.l{right}..z1{up}; draw z1..z.r{right};
+p_loop(2);
+endchar;
+
+arabchar(bah_p, f_beg, 5, 8, 2);
+x2 = x1 = x.l + 3dx; y1 - 4dy = y2 - dy = y.l;
+draw z1{(4dx,-11dy)}..z2..z.l{left};
+p_loop(2);
+endchar;
+
+%%%%%%%%%%%%%% hhah %%%%%%%%%%%%%%%%%
+
+arabchar(hhah, f_iso, 12, 10, 10);
+hhah_iso;
+endchar;
+
+arabchar(hhah, f_end, 13, 10, 10);
+hhah_end;
+endchar;
+
+arabchar(hhah, f_mid, 13, 10, 0);
+hhah_mid;
+endchar;
+
+arabchar(hhah, f_beg, 12, 8, 0);
+hhah_beg;
+endchar;
+
+%%%%%%%%%%%%%% khah %%%%%%%%%%%%%%%%%
+
+arabchar(khah, f_iso, 12, 15, 10);
+hhah_iso; x.m := x.m - 2dx; one_dot(10);
+endchar;
+
+arabchar(khah, f_end, 13, 15, 10);
+hhah_end; one_dot(10);
+endchar;
+
+arabchar(khah, f_mid, 13, 15, 0);
+hhah_mid; one_dot(10);
+endchar;
+
+arabchar(khah, f_beg, 12, 15, 0);
+hhah_beg; one_dot(10);
+endchar;
+
+%%%%%%%%%%%%%% dal, dhal %%%%%%%%%%%%%%%%%
+
+arabchar(dal, f_iso, 7, 10, 0);
+dal_iso;
+endchar;
+
+arabchar(dal, f_end, 10, 11, 0);
+dal_end;
+endchar;
+
+%%%%%%%%%%%%%% dal with loop %%%%%%%%%%%%%%%%%
+
+arabchar(dal_p, f_iso, 7, 10, 0);
+dal_iso; p_loop(3);
+endchar;
+
+arabchar(dal_p, f_end, 10, 11, 1);
+dal_end;
+x6 = x4 + 2dx; y6 = y4; p_loop(6);
+endchar;
+
+%%%%%%%%%%%%%% rah %%%%%%%%%%%%%%%%%
+
+arabchar(rah, f_iso, 8, 5, 5);
+rah_iso;
+endchar;
+
+arabchar(rah, f_end, 8, 5, 5);
+rah_end;
+endchar;
+
+%%%%%%%%%%%%%% rah with loop %%%%%%%%%%%%%%%%%
+
+arabchar(rah_p, f_iso, 8, 5, 8);
+rah_iso; p_loop(3l);
+endchar;
+
+arabchar(rah_p, f_end, 8, 5, 8);
+rah_end; p_loop(3l);
+endchar;
+
+%%%%%%%%%%%%%% rah with two dots %%%%%%%%%%%%%%%%%
+
+arabchar(rah_s, f_end, 8, 5, 6);
+rah_end;
+x6 = x.r; y6 = y3l; x7 = x3l; y7 = y5 + dy;
+put_dot(6); put_dot(7);
+endchar;
+
+arabchar(rah_s, f_iso, 8, 5, 6);
+rah_iso;
+x6 = x.r; y6 = y3l; x7 = x3l; y7 = y5 + dy;
+put_dot(6); put_dot(7);
+endchar;
+
+%%%%%%%%%%%%%% kurdish rah %%%%%%%%%%%%%%%%%
+
+arabchar(rah_k, f_iso, 8, 5, 10);
+rah_iso;
+x6 + dx = x7 + 3dx = x.r;
+y6 + 3dy = y7 + 8dy = y.r;
+draw z6{(dx,-2dy)}..z7;
+endchar;
+
+arabchar(rah_k, f_end, 8, 5, 10);
+rah_end;
+x6 + dx = x7 + 3dx = x.r;
+y6 + 3dy = y7 + 8dy = y.r;
+draw z6{(dx,-2dy)}..z7;
+endchar;
+
+%%%%%%%%%%%%%% sin %%%%%%%%%%%%%%%%%
+
+arabchar(sin, f_iso, 16, 6, 0);
+sin_iso;
+endchar;
+
+arabchar(sin, f_end, 18, 6, 0);
+sin_end;
+endchar;
+
+arabchar(sin, f_mid, 13, 6, 0);
+sin_mid;
+endchar;
+
+arabchar(sin, f_beg, 11, 6, 0);
+sin_beg;
+endchar;
+
+%%%%%%%%%%%%%% sad %%%%%%%%%%%%%%%%%
+
+arabchar(sad, f_iso, 19, 8, 0);
+sad_iso;
+endchar;
+
+arabchar(sad, f_end, 19, 8, 0);
+sad_iso; draw z.r{left}..z8;
+endchar;
+
+arabchar(sad, f_mid, 14, 8, 0);
+sad_beg; draw z.r{left}..z8;
+endchar;
+
+arabchar(sad, f_beg, 14, 8, 0);
+sad_beg;
+endchar;
+
+%%%%%%%%%%%%%% ttah %%%%%%%%%%%%%%%%%
+
+arabchar(ttah, f_iso, 13, 8, 0);
+ttah_iso;
+endchar;
+
+arabchar(ttah, f_end, 13, 8, 0);
+ttah_iso; draw z.r{left}..z8;
+endchar;
+
+arabchar(ttah, f_mid, 12, 8, 0);
+ttah_beg; draw z.r{left}..z8; draw z2--z.l;
+endchar;
+
+arabchar(ttah, f_beg, 11, 8, 0);
+ttah_beg; draw z2--z.l;
+endchar;
+
+%%%%%%%%%%%%%% ain, ghain %%%%%%%%%%%%%%%%%
+
+arabchar(ain, f_iso, 11, 11, 10);
+ain_iso;
+endchar;
+
+arabchar(ain, f_end, 10, 7, 10);
+ain_end;
+endchar;
+
+arabchar(ain, f_mid, 9, 7, 0);
+ain_mid;
+endchar;
+
+arabchar(ain, f_beg, 9, 10, 0);
+ain_beg;
+endchar;
+
+%%%%%%%%%%%%%% fah family %%%%%%%%%%%%%%%%%
+
+arabchar(fah_s, f_iso, 17, 11, 0);
+fah_iso;
+endchar;
+
+arabchar(fah_s, f_end, 18, 10, 0);
+fah_end;
+endchar;
+
+arabchar(fah_s, f_mid, 8, 10, 0);
+fah_mid;
+endchar;
+
+arabchar(fah_s, f_beg, 6, 10, 0);
+fah_beg;
+endchar;
+
+%%%%%%%%%%%%%% qaf %%%%%%%%%%%%%%%%%
+
+arabchar(qaf_s, f_iso, 12, 10, 2);
+qaf_iso;
+endchar;
+
+arabchar(qaf_s, f_end, 12, 10, 2);
+qaf_end;
+endchar;
+
+arabchar(qaf, f_iso, 12, 15, 2);
+qaf_iso; two_dots(11);
+endchar;
+
+arabchar(qaf, f_end, 12, 15, 4);
+qaf_end; two_dots(10);
+endchar;
+
+%%%%%%%%%%%%%% kaf family %%%%%%%%%%%%%%%%%
+
+arabchar(kaf_s, f_iso, 16, 15, 0);
+gaf_iso;
+endchar;
+
+arabchar(kaf_s, f_end, 16, 15, 0);
+gaf_iso; bow(z3, z4, z.r);
+endchar;
+
+arabchar(kaf_s, f_mid, 12, 15, 0);
+kaf_beg; draw z3{z.r-z3}..z.r{right};
+endchar;
+
+arabchar(kaf_s, f_beg, 9, 15, 0);
+kaf_beg;
+endchar;
+
+%%%%%%%%%%%%%% kaf %%%%%%%%%%%%%%%%%
+
+arabchar(kaf, f_iso, 10, 15, 0);
+x1 = x.r - 2dx; x2 = x.m; x3 = x.l + dx;
+y1 = 12dy; y2 = y.r; y3 = y.l + dy;
+x4 = x.l + 6dx; y4 = y.l + 4dy;
+bow(z1, z.r, z2); bow(z2, z.l, z3);
+serif(1); kaf_mark(4);
+endchar;
+
+arabchar(kaf, f_end, 12, 15, 0);
+x1 + dx = x2 = x.r - 2dx;
+x4 = x.m; lft x5 = x6 - dx = x.l;
+z3 = .7[z1, z2];
+y1 = 12dy; y2 = y.r; y4 = y.r; y5 = y6 - 2dy = y.l + 2dy;
+x7 = x.l + 7dx; y7 = y.l + 4dy;
+draw z1--z3{z2 - z1}..z4..z5..z6;
+draw z3{z2 - z3}..z.r{right};
+kaf_mark(7);
+endchar;
+
+%%%%%%%%%%%%%% kaf family with loop %%%%%%%%%%%%%%%%%
+
+arabchar(kaf_p_s, f_iso, 16, 15, 0);
+gaf_iso;
+z8 = .4[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+endchar;
+
+arabchar(kaf_p_s, f_end, 16, 15, 0);
+gaf_iso; bow(z3, z4, z.r);
+z8 = .4[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+endchar;
+
+arabchar(kaf_p_s, f_mid, 12, 15, 0);
+kaf_beg; draw z3{z.r-z3}..z.r{right};
+z8 = .4[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+endchar;
+
+arabchar(kaf_p_s, f_beg, 9, 15, 0);
+kaf_beg;
+z8 = .4[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+endchar;
+
+%%%%%%%%%%%%%% kaf with loop %%%%%%%%%%%%%%%%%
+
+arabchar(kaf_p, f_iso, 16, 15, 0);
+gaf_iso;
+x8 = .6[x.l, x4]; y8 = y.l + 4dy; kaf_mark(8);
+z18 = .4[z1,z2]; x9 = x18; y9 = bot y18; p_loop(9);
+endchar;
+
+arabchar(kaf_p, f_end, 16, 15, 0);
+gaf_iso; bow(z3, z4, z.r);
+x8 = .6[x.l, x4]; y8 = y.l + 4dy; kaf_mark(8);
+z18 = .4[z1,z2]; x9 = x18; y9 = bot y18; p_loop(9);
+endchar;
+
+%%%%%%%%%%%%%% wide kaf %%%%%%%%%%%%%%%%%
+
+arabchar(kaf_w, f_iso, 16, 10, 0);
+serpent; ttah_tail;
+endchar;
+
+arabchar(kaf_w, f_end, 16, 10, 0);
+serpent; draw z.r{left}..z1; ttah_tail;
+endchar;
+
+arabchar(kaf_w, f_mid, 16, 10, 0);
+serpent; draw z.r{left}..z1; draw z2{left}..z.l;
+endchar;
+
+arabchar(kaf_w, f_beg, 16, 10, 0);
+serpent; draw z2{left}..z.l;
+endchar;
+
+%%%%%%%%%%%%%% gaf family %%%%%%%%%%%%%%%%%
+
+arabchar(gaf_s, f_iso, 16, 16, 0);
+gaf_iso; gaf_serif;
+endchar;
+
+arabchar(gaf_s, f_end, 16, 16, 0);
+gaf_iso; bow(z3, z4, z.r);
+gaf_serif;
+endchar;
+
+arabchar(gaf_s, f_mid, 12, 16, 0);
+kaf_beg; draw z3{z.r-z3}..z.r{right};
+gaf_serif;
+endchar;
+
+arabchar(gaf_s, f_beg, 9, 16, 0);
+kaf_beg; gaf_serif;
+endchar;
+
+%%%%%%%%%%%%%% gaf %%%%%%%%%%%%%%%%%
+
+arabchar(gaf, f_iso, 16, 16, 0);
+gaf_iso; gaf_serif;
+x8 = .6[x.l, x4]; y8 = y.l + 4dy; kaf_mark(8);
+endchar;
+
+arabchar(gaf, f_end, 16, 16, 0);
+gaf_iso; bow(z3, z4, z.r); gaf_serif;
+x8 = .6[x.l, x4]; y8 = y.l + 4dy; kaf_mark(8);
+endchar;
+
+%%%%%%%%%%%%%% gaf family with loop %%%%%%%%%%%%%%%%%
+
+arabchar(gaf_p_s, f_iso, 16, 18, 0);
+gaf_iso;
+z8 = .4[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+gaf_serif;
+endchar;
+
+arabchar(gaf_p_s, f_end, 16, 16, 0);
+gaf_iso; bow(z3, z4, z.r);
+z8 = .4[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+gaf_serif;
+endchar;
+
+arabchar(gaf_p_s, f_mid, 12, 16, 0);
+kaf_beg; draw z3{z.r-z3}..z.r{right};
+z8 = .4[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+gaf_serif;
+endchar;
+
+arabchar(gaf_p_s, f_beg, 9, 16, 0);
+kaf_beg;
+z8 = .4[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+gaf_serif;
+endchar;
+
+%%%%%%%%%%%%%% lam %%%%%%%%%%%%%%%%%
+
+arabchar(lam, f_iso, 9, 15, 4);
+rt x4 = w; lft x5 = 0; x1 = x4 - dx; x3 = x5 + dx;
+y1 = 12dy; y3 = 3dy; y4 = y5 = 0;
+draw z1{down}..z4{down}..z5{up}..z3; serif(1);
+endchar;
+
+arabchar(lam, f_end, 12, 15, 5);
+x1 + 3dx = x2 + 2dx = x.r; y1 - 11dy = y2 = y.r;
+z8 = 0.7[z1,z2]; draw z1---z8..z.r{right};
+s_bow(1);
+endchar;
+
+arabchar(lam, f_mid, 5, 15, 0);
+x1 + 3dx = x2 + 2dx = x.r; y1 - 11dy = y2 = y.r;
+z8 = 0.7[z1,z2]; draw z1---z8..z.r{right};
+bow (z1, z2, z.l);
+endchar;
+
+arabchar(lam, f_beg, 4, 15, 0);
+x1 = x2 - dx = x.l + 2dx;
+y1 = 12dy; y2 = y.l; z3 = 0.8[z1, z2];
+draw z1..z3{z2 - z3}..z.l{left}; serif(1);
+endchar;
+
+%%%%%%%%%%%%%% mim %%%%%%%%%%%%%%%%%
+
+arabchar(mim, f_iso, 7, 10, 5);
+x2 + 6dx = x4 + 4dx = x5 + 3.5dx = x6 + 4.5dx = x1;
+y2 + dy = y4 + 11dy = y5 - 2.5dy = y6 - 1.5dy = y1;
+z2 = z.l; bow(z4,z2,z1); bow(z6,z5,z1);
+endchar;
+
+arabchar(mim, f_end, 10, 10, 1);
+x1 + 0.5dx = x2 - 2.5dx = x3 + 2dx = x5 - 2dx = x.m;
+y1 - 3dy = y2 - 0.5dy = y3 - 1.5dy = y5 - dy = y.l;
+x4 = x.l + 2dx; y4 = -8dy;
+draw z.r{left}..z5..z1..tension 1.5..z3;
+draw z3{down}..tension 1.2..z2;
+bow(z3, z.l, z4);
+endchar;
+
+arabchar(mim, f_mid, 8, 10, 1);
+x1 + 0.5dx = x2 - 2.5dx = x3 + 2dx = x5 - 2dx = x.m;
+y1 - 3dy = y2 - 0.5dy = y3 - 1.5dy = y5 - dy = y.l;
+draw z.r{left}..z5..z1..tension 1.5..z3
+& z3{down}..tension 1.2..z2; l_att(3);
+endchar;
+
+arabchar(mim, f_beg, 7, 10, 0);
+x1 = x2 - dx = x3 + 2dx = x.l + 5dx;
+y1 - 4dy = y2 = y3 - 2dy = y.l;
+draw z3..tension 2..z2..tension 1.5..z1..z3..z.l{left};
+endchar;
+
+arabchar(mim_sind, f_iso, 7, 10, 0);
+x1 = x2 - dx = x3 + 2dx = x.l + 5dx;
+y1 - 4dy = y2 = y3 - 2dy = y.l;
+x4 = x.l; y4 = y.l - 2dy;
+draw z3..tension 2..z2..tension 1.5..z1..z3..z4{left};
+endchar;
+
+%%%%%%%%%%%%%% nun %%%%%%%%%%%%%%%%%
+
+arabchar(nun, f_iso, 10, 8, 4);
+nun_iso;
+endchar;
+
+arabchar(nun, f_end, 11, 4, 7);
+nun_end;
+endchar;
+
+%%%%%%%%%%%%%% nun with loop %%%%%%%%%%%%%%%%%
+
+arabchar(nun_p, f_iso, 10, 8, 6);
+nun_iso;
+x6 = x3; top y6 = y3; p_loop(6);
+endchar;
+
+arabchar(nun_p, f_end, 11, 4, 9);
+nun_end;
+x6 = x5; top y6 = y5; p_loop(6);
+endchar;
+
+%%%%%%%%%%%%%% hah, tah marbuta %%%%%%%%%%%%%%%%%
+
+arabchar(hah, f_iso, 5, 10, 0);
+hah_iso;
+endchar;
+
+arabchar(hah, f_end, 6, 10, 0);
+hah_end;
+endchar;
+
+arabchar(hah, f_mid, 6, 10, 4);
+x1 + dx = x2 = x3 = x4 + 2dx = x.m + dx;
+y1 = y2 - 4dy = y3 + 4dy = y4 = y.r;
+draw z1{(7dx,-4dy)}..z3..z4{up}..z2;
+draw z2{(5dx,-6dy)}..z.l{left}; draw z.r--z1;
+endchar;
+
+arabchar(hah, f_beg, 9, 10, 0);
+x1 + 0.5dx = x2 = x3 + 1.5dx = x4 - 1.5dx = x.r - 5dx;
+x6 + dx = x5 - 3dx = x.r;
+y1 = 7dy; y2 = 2dy; y3 = y4 = 4dy; y6 = dy;
+draw z1{curl 0}..tension 1.5..z6..tension 2..z2..z3..z4..z2..z.l{left};
+endchar;
+
+%%%%%%%%%%%%%% waw %%%%%%%%%%%%%%%%%
+
+arabchar(waw, f_iso, 9, 7, 6);
+waw_bow;
+draw z2{(-7dx,-4dy)}..z6..z1{right}..z2{(4dx,-11dy)};
+endchar;
+
+arabchar(waw, f_end, 10, 7, 6);
+x.r := x.r - dx; waw_bow; x.r := x.r + dx;
+draw z.r{left}..z6..z1{right}..z2{(4dx,-11dy)};
+endchar;
+
+%%%%%%%%%%%%%% waw with ring %%%%%%%%%%%%%%%%%
+
+arabchar(waw_r, f_iso, 9, 7, 6);
+waw_bow;
+draw z2{(-7dx,-4dy)}..z6..z1{right}..z2{(4dx,-11dy)};
+%x8 = x3; y8 = y5; p_loop(8);
+x8 = x3; y8 = y5 + dy; p_loop(8);
+endchar;
+
+arabchar(waw_r, f_end, 10, 7, 6);
+x.r := x.r - dx; waw_bow; x.r := x.r + dx;
+draw z.r{left}..z6..z1{right}..z2{(4dx,-11dy)};
+x8 = x3; y8 = y5 + .5dy; p_loop(8);
+endchar;
+
+%%%%%%%%%%%%%% waw with bar %%%%%%%%%%%%%%%%%
+
+arabchar(waw_b, f_iso, 9, 7, 6);
+waw_bow;
+draw z2{(-7dx,-4dy)}..z6..z1{right}..z2{(4dx,-11dy)};
+waw_bar;
+endchar;
+
+arabchar(waw_b, f_end, 10, 7, 6);
+x.r := x.r - dx; waw_bow; x.r := x.r + dx;
+draw z.r{left}..z6..z1{right}..z2{(4dx,-11dy)};
+waw_bar;
+endchar;
+
+%%%%%%%%%%%%%% yah, alif_maqsura %%%%%%%%%%%%%%%%%
+
+arabchar(yah, f_iso, 13, 5, 5);
+yah_iso;
+endchar;
+
+arabchar(yah, f_end, 11, 5, 7);
+yah_end;
+endchar;
+
+%%%%%%%%%%%%%% long yah %%%%%%%%%%%%%%%%%
+
+arabchar(yah_p, f_iso, 15, 8, 3);
+yah_p_iso;
+endchar;
+
+arabchar(yah_p, f_end, 5, 8, 3);
+yah_p_end;
+endchar;
+
+arabchar(yah_p_s, f_iso, 15, 8, 5);
+yah_p_iso;
+x11 = x.r - 7dx; top y11 = y8; p_loop(11);
+endchar;
+
+arabchar(yah_p_s, f_end, 5, 8, 5);
+yah_p_end;
+x11 = x.r - 2dx; top y11 = y8; p_loop(11);
+endchar;
+
+%%%%%%%%%%%%%% yah with hook %%%%%%%%%%%%%%%%%
+
+arabchar(yah_h, f_iso, 15, 5, 5);
+yah_iso;
+x7 = x5 - 3dx; y7 = y5 - 5dy; draw z5--z7;
+endchar;
+
+arabchar(yah_h, f_end, 13, 5, 7);
+yah_end;
+x7 = x5 - 3dx; y7 = y5 - 5dy; draw z5--z7;
+endchar;
+
+%%%%%%%%%%%%%% hamza %%%%%%%%%%%%%%%%%
+
+arabchar(hamza_iso, f_iso, 5, 8, 0);
+x3 = x1 + 3.5dx = x2 + 3.5dx = x7; x8 = x2 + 0.2dx +0.3py;
+y3 - 3dy = y1 + dy = y2 - 2dy = y7 = y.r + dy; y8 = y2;
+lda := 0.5[pa,90]; x.m = 0.5[x1,x7];
+penpos7(px,pa); penpos3(0.3dy,90);
+penpos2(px,lda); penpos8(px,lda);
+fill z7l{z1-z7}..z2l{up}--z2r--z8r{down}..z7r{z7-z1}--cycle;
+fill z2r{(7dx,10dy)}..z3r--z3l..z8l{(-7dx,-10dy)}--z2l--cycle;
+draw z1..z7;
+endchar;
+
+endinput;
+
+%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/mfinput/xnshdia.mf b/language/arabic/arabtex/mfinput/xnshdia.mf
new file mode 100644
index 0000000000..7aa0af856f
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/xnshdia.mf
@@ -0,0 +1,145 @@
+%%%%%%%%%%%%%%%%%%%%%%% xnshdia.mf %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Extended NASKH Font
+% 15.07.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown xnshbase: input xnshbase fi;
+
+%%%%%%%%%%%%%% diacritics %%%%%%%%%%%%%%%%%
+
+diachar(damma, 4, 5);
+z1 = z.l; x2 = 3dx; y2 = y.r; x3 = x.r; y3 = 2dy;
+draw z1{dir 30}..z2{left}..z3{dir -45};
+endchar;
+
+diachar(fatha, 4, 2.5);
+draw z.l--z.r;
+endchar;
+
+diachar(sukun, 4, 4);
+draw (.5w, y.r){dir -45}..(.5w, y.l){left}..{dir 30}(.5w, y.r);
+endchar;
+
+diachar(dammatan, 5, 5);
+x4 = x.l; x5 = x1 = dx; y4 = y5 = 3dy; y1 = y.l;
+x2 - x.l = 3dx; y2 = y.r; x3 = x.r; y3 = 2dy;
+draw z1{dir 30}..z2{left}..z3{dir -45};
+draw z4..z5..z1{down};
+endchar;
+
+diachar(fathatan, 4, 4.5);
+x1 = x.r; x2 = x.l; y1 = y.r - 2dy; y2 = y.l + 2dy;
+draw z.l--z1; draw z2--z.r;
+endchar;
+
+diachar(hamza, 4, 5);
+x1 = x.r; x2 = x.l; x3 = x.r - dx;
+y1 = 2dy; y2 = 2.5dy; y3 = y.r - .5dy;
+draw z.l--z1;
+draw z3{left}..z2..z1{z1-z.l};
+endchar;
+
+diachar(shadda, 5, 3);
+z5 - z3 = z3 - z1 = z4 - z2 = whatever * (4dx, dy);
+z5 = z.r; x1 = x.l; y2 = y.l; x2 = .5[x1, x3];
+draw z1{down}..z2..z3{up}; draw z3{down}..z4..z5{up};
+endchar;
+
+diachar(quran_alif, 2, 5);
+x1 = x.l; x2 = .5[x.l, x.r];
+y1 = y.r; y2 = y.l;
+draw z1--z2;
+endchar;
+
+diachar(wasla, 6, 2);
+x1 - .4w = x2 - .7w = x4 - .7w = x5 = dx; x3 = x.r + dx;
+%x1 = .4w; x2 = x4 = .7w; x3 = x.r;
+y1 = y3 = h/2; y2 = y.l; y4 = y5 = y.r;
+draw z5..z1..z2..z3..z4..z1;
+endchar;
+
+diachar(madda, 6, 1.5);
+x.r - x2 = x1 - x.l = .1(x.r - x.l);
+y1 = y.r + dy; y3 = y2 = y.l; x3 = x.r;
+draw z.l--z1..z2..z3;
+endchar;
+
+diachar(ttah_dia, 4, 6);
+z1 = z.l; x2 = x4 = dx; y2 = dy; y4 = y.l + 4dy; x3 = x.r; y3 = 2dy;
+draw z1{dir 45}..z2..z3..z1{left}; draw z2..z4;
+endchar;
+
+arabchar(one_dot_up, 0, 2, 4, -2);
+one_dot(1);
+endchar;
+
+arabchar(two_dots_up, 0, 5, 4, -2);
+two_dots(1);
+endchar;
+
+arabchar(three_dots_up, 0, 5, 7, -2);
+three_dots(1);
+endchar;
+
+arabchar(two_dots_down, 0, 5, 2, 0);
+two_dots(1);
+endchar;
+
+arabchar(three_dots_down, 0, 5, 2, 3);
+three_dots_low(1);
+endchar;
+
+diachar(bow_dia, 4, 2);
+draw (x.l,y.r)..(.5w, y.l)..z.r;
+endchar;
+
+diachar(e_dia, 4, 2.5);
+draw z.l--(x.r,y.l);
+endchar;
+
+diachar(h_dia, 4, 5);
+x1 = x2 = x3 = .5w;
+y1 = y.r; y2 = y.l; y3 = .2[y2,y1];
+draw z1{z.l-z1}..z2{right}..z3{left};
+endchar;
+
+if false:
+diachar(hamz_s, 6, 4);
+%x1 = x.r; y1 = dy;
+%x2 = x.r - 3dx; y2 = 1.5dy;
+%x3 = x.r - dx; y3 = y.r - .5dy;
+x1 = x2 + 3dx = x3 + dx = x.r;
+y1 + 2.5dy = y2 + 2dy = y3 + .5dy = y.r;
+draw z.l{dir 60}..z1{dir 60};
+draw z3{left}..z2..z1{dir 30};
+endchar;
+fi
+
+diachar(hamz_s, 4, 5);
+x1 = x2 + 3dx = x3 + dx = x.r;
+y1 + 2.5dy = y2 + 2dy = y3 + .5dy = y.r;
+x4 + dx = x.l; y4 + 2dy = y.l;
+draw z4{dir 60}..z1{dir 30};
+draw z3{left}..z2..z1{dir 30};
+endchar;
+
+diachar(bars, 3, 5);
+x1 = x.l; x2 = x.r;
+y1 = y.r; y2 = y.l;
+draw z1--z.l; draw z2--z.r;
+endchar;
+
+diachar(roof, 5, 3);
+x1 = .5[x.l,x.r]; x2 = x.r;
+y1 = y.r; y2 = y.l;
+draw z.l--z1--z2;
+endchar;
+
+endinput;
+%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/mfinput/xnshdig.mf b/language/arabic/arabtex/mfinput/xnshdig.mf
new file mode 100644
index 0000000000..53cad31237
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/xnshdig.mf
@@ -0,0 +1,100 @@
+%%%%%%%%%%%%%%%%%%%%% xnshdig.mf %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Extended NASKH Font
+% 22.07.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown xnshbase: input xnshbase fi;
+
+%%%%%%%%%%%%%% digits %%%%%%%%%%%%%%%%%
+
+numchar("0");
+x1 + .6pl = x4 - .6pl = 5dx;
+y1 - .6pl = y4 + .6pl = bot y.l + 6dy;
+penpos1(2px,pa); penpos4(2px,pa);
+fill z1l--z1r--z4r--z4l--cycle;
+endchar;
+
+numchar("1");
+x1 = 4dx; x2 = 7dx; y1 - 11dy = bot y2 = bot y.l;
+draw z1..z2{down};
+endchar;
+
+numchar("2");
+x1 = 3dx; x2 = 6dx; x3 = 8dx;
+y3 - 11dy = y1 - 11dy = bot y2 = bot y.l;
+%draw z3..z1{(-4dx,7dy)};
+draw z3{down}..z1; draw z1..z2{down};
+endchar;
+
+numchar("3");
+x1 = 2dx; x2 = 4dx; x3 = 9dx; x4 = 6dx;
+y4 = y3 = y1; y1 - 11dy = bot y2 = bot y.l;
+draw z3{down}..z4; draw z4{down}..z1; draw z1..z2{down};
+endchar;
+
+numchar("4");
+x1 = x2 - .5dx = x3 - dx = 6dx; x4 = x5 = 2dx;
+y1 - 11dy = y2 - 6dy = bot y3 = y4 - 8dy = y5 - 2dy = bot y.l;
+bow(z1, z4, z2); bow(z2, z5, z3);
+endchar;
+
+numchar("5");
+x1 = x2 - 3dx = x3 + 2dx = 5dx;
+y1 - 6dy = y2 = y3; y3 - 4dy = bot y.l - dy;
+draw z1{(dx,-dy)}..z2..z3..z1{(dx,dy)};
+endchar;
+
+numchar("6");
+x1 + 4dx = x2 = x3 - 2dx = 6dx;
+y1 -10dy = y2 - 10dy = bot y3 = bot y.l;
+draw z1{(7dx,-4dy)}..z2; draw z2{down}..z3;
+endchar;
+
+numchar("7");
+x1 + 4dx = x2 = x3 - 4dx = 5dx;
+y1 - 10dy = y3 - 10dy = bot y2 = bot y.l;
+draw z1..z2{down}; draw z3..z2{down};
+endchar;
+
+numchar("8");
+x1 + 4dx = x2 = x3 - 4dx = 5dx;
+y2 - 10dy = bot y1 = bot y3 = bot y.l;
+draw z1..z2{up}; draw z3..z2{up};
+endchar;
+
+numchar("9");
+x1 = x2 + 4dx = x3 + 2dx = x4 - 2dx = 6dx;
+y1 - 7dy = y2 - 7dy = y3 - 11dy = bot y4 = bot y.l;
+draw z1..z2..z3..z1{down}..z4;
+endchar;
+
+%numchar(oct "122");
+numchar(f_iv);
+x2 - 2dx = x3 - 6dx = x4 - 7dx = x5 - 2dx = x1 = 2dx;
+%y4 +2dy = y3 - dy = y5 = y1; y1 - 11dy = bot y2 = bot y.l;
+y4 +2dy = y3 - dy = y5 = y1; y1 - 9dy = bot y2 = bot y.l;
+draw z3..z5..z4; draw z4{(-dx,-dy)}..z1; draw z1..z2{down};
+endchar;
+
+numchar(f_v);
+x1 = x2 - 2dx = x3 + 3dx = 5dx;
+y1 - 6dy = y2 = y3; y3 - 4dy = bot y.l - dy;
+x4 = x1; y4 = y3;
+draw z1{(dx,-dy)}..z2..z4;
+draw z4..z3..z1{(dx,dy)};
+endchar;
+
+numchar(f_vi);
+x2 - 2dx = x3 - 6dx = x4 - 7dx = x5 - 2dx = x6 = x1 = 2dx;
+%y4 +2dy = y3 - dy = y5 = y6 + 8dy = y1; y1 - 11dy = bot y2 = bot y.l;
+y4 +2dy = y3 - dy = y5 = y6 + 8dy = y1; y1 - 9dy = bot y2 = bot y.l;
+draw z3..z5..z4; draw z4{(-dx,-dy)}..z6;
+endchar;
+
+endinput;
+%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/mfinput/xnshlig.mf b/language/arabic/arabtex/mfinput/xnshlig.mf
new file mode 100644
index 0000000000..229073966f
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/xnshlig.mf
@@ -0,0 +1,547 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% xnshlig.mf %%%%%%%%%%%%%%%%%%%%%%%%
+% Extended NASH Font
+% ligatures
+% 14.07.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown xnshbase: input xnshbase fi;
+
+%%%%%%%%%%%%%% alif after mim %%%%%%%%%%%%%%%%%
+
+arabchar(alif_spec_mim, f_end, 3, 15, 0); % mim-alif
+x1 + dx = x2 + .5dx = x.r; y1 = 13dy; y2 = y.r + .5dy;
+bow(z1, z2, z.r); serif(1);
+endchar;
+
+%%%%%%%%%%%%%% bah_high %%%%%%%%%%%%%%%%%
+
+arabchar(bah_high, f_beg, 5, 10, 0);
+x.m := x.m + 0.5dx;
+x1 - dx = x2 = x.m; y1 = y.l; y2 = y.l + 6dy;
+bow(z2, z1, z.l);
+endchar;
+
+arabchar(bah_high, f_mid, 6, 10, 0);
+x5 - dx = x6 = x.m;
+y6 = good.y (y.l + 6dy); y5 = y.l;
+z4 = .5[z6, z5];
+l_att(4); bow(z6, z5, z.r);
+endchar;
+
+%%%%%%%%%%%%%% bah before nun %%%%%%%%%%%%%%%%%
+
+arabchar(bah_spec, f_beg, 5, 10, 0);
+x4 - 2dx = x.ll; y4 - 2dy = y.ll;
+draw z4{(dx,-2dy)}..z.ll{left};
+r_con(ll); % measure for raising final nun, rah
+endchar;
+
+arabchar(bah_spec, f_mid, 5, 10, 0);
+x6 = x.l + 2dx; y6 = good.y (y.ll + 2dy);
+draw z6..z.ll{left}; draw z6{down}..z.r{right};
+%r_con(ll);
+endchar;
+
+%%%%%%%%%%%%%% bah over yah maqsoura %%%%%%%%%%%%%%%%%
+
+%arabchar(bah_spec_yah, f_beg, 5, 10, 7);
+arabchar(bah_spec_yah, f_beg, 5, 10, 2);
+x1 - 2dx = x2 - 3dx = x.l; y1 - 6dy = y2 - dy = y.l;
+draw z1{(4dx,-7dy)}..z2..z.l{(-6dx,-dy)};
+endchar;
+
+arabchar(bah_spec_yah, f_mid, 4, 8, 2);
+z1 = 0.5[z.ll, z.rr]; x2 = x.l; x4 = x.r;
+y2 = y4 = y.r + dy;
+draw z.ll..controls z1 and z2..z4;
+r_con(4);
+endchar;
+
+%%%%%%%%%%%%%% bah over middle mim %%%%%%%%%%%%%%%%%
+
+arabchar(bah_mid_mim, f_beg, 6, 10, 0);
+x1 = x.rr - dx; y1 = y.rr + dy;
+draw z.l{(-dx,dy)}..z1{(dx,-dy)};
+endchar;
+
+arabchar(bah_mid_mim, f_mid, 6, 10, 0);
+x1 = x.rr - 3dx; y1 = y.rr + 2dy;
+draw z.l{(-dx,dy)}..z1..z.rr{right};
+r_con(rr);
+endchar;
+
+%%%%%%%%%%%%%% bah over end mim %%%%%%%%%%%%%%%%%
+
+arabchar(bah_beg_mim, f_mid, 5, 8, 0);
+x1 = x.l + 7dx; y1 = y.r + dy;
+draw z.l{(dx,dy)}..z1{(dx,-6dy)};
+endchar;
+
+arabchar(bah_end_mim, f_mid, 8, 8, 4);
+x1 = x.r - 2dx; y1 = y.r + 2dy;
+draw z.l{(dx,dy)}..z1{(dx,-6dy)}..z.r{right};
+endchar;
+
+%%%%%%%%%%%%%% bah over gim %%%%%%%%%%%%%%%%%
+
+%arabchar(bah_spec_gim, f_mid, 12, 8, 7);
+arabchar(bah_spec_gim, f_mid, 12, 8, 0);
+x5 = x4 = x.r - 4dx; y4 - 4dy = y5 = y.r;
+z3 = 0.2[z5,z4]; z1 = 0.9[z1,z3]; z2 = 0.8[z.ll,z4];
+z6 = 0.5[z4, z.rr]; x7 = x5; x8 = x.r; y7 = y8 = y.r + dy;
+draw z.l..controls z1 and z2..z4..controls z6 and z7..z8;
+r_con(8);
+endchar;
+
+arabchar(bah_beg_gim, f_mid, 8, 8, 6);
+x4 - dx = x5 = x.r; y4 - 3dy = y5 - 5dy = y.r;
+z3 = 0.2[z.r,z5]; z1 = 0.9[z.l,z3]; z2 = 0.8[z.ll,z5];
+draw z.l..controls z1 and z2..z5..z4{(dx,-6dy)};
+endchar;
+
+%%%%%%%%%%%%%% bah over hah %%%%%%%%%%%%%%%%%
+
+arabchar(bah_end_hah, f_mid, 6, 8, 5);
+x1 = x.r - 2dx; y1 = y.r + 2dy;
+draw z.l{(dx,dy)}..z1..z.r{right};
+endchar;
+
+arabchar(bah_end_hah, f_beg, 6, 8, 0);
+x1 + 2dx = x.r; y1 = y.r;
+draw z.l{(4dx,7dy)}..z1;
+endchar;
+
+%%%%%%%%%%%%%% hhah-spec-macros %%%%%%%%%%%%%%%%%
+
+def hhah_spec_bar =
+x1 = x2 - 9dx = x.rr;
+y1 = y.rr; y2 = 0.5[y.r, y.rr];
+draw z1{right}..z2{right};
+r_con(rr);
+enddef;
+
+def hhah_spec_beg =
+hhah_spec_bar; draw z2{left}..z.l{left};
+enddef;
+
+def hhah_spec_iso =
+hhah_spec_bar; hhah_bow;
+enddef;
+
+if false:
+%%%%%%%%%%%%%% gim ligature %%%%%%%%%%%%%%%%%
+
+arabchar(gim_spec, f_end, 4, 10, 10);
+hhah_spec_iso;
+x.m := x.r + 2dx;
+one_dot(-3);
+endchar;
+
+arabchar(gim_spec, f_mid, 2, 10, 5);
+hhah_spec_beg;
+x.m := x.r + 4dx;
+one_dot(-4);
+endchar;
+fi
+
+%%%%%%%%%%%%%% hhah ligature %%%%%%%%%%%%%%%%%
+
+arabchar(hhah_spec, f_end, 4, 10, 10);
+hhah_spec_iso;
+endchar;
+
+%arabchar(hhah_spec, f_mid, 2, 10, 5);
+arabchar(hhah_spec, f_mid, 2, 10, 0);
+hhah_spec_beg;
+endchar;
+
+%%%%%%%%%%%%%% khah ligature %%%%%%%%%%%%%%%%%
+
+arabchar(khah_spec, f_end, 4, 15, 10);
+hhah_spec_iso;
+x.m := x.r;
+one_dot(10);
+endchar;
+
+%arabchar(khah_spec, f_mid, 2, 15, 5);
+arabchar(khah_spec, f_mid, 2, 15, 0);
+hhah_spec_beg;
+x.m := x.r;
+one_dot(10);
+endchar;
+
+if false:
+%%%%%%%%%%%%%% tsah ligature %%%%%%%%%%%%%%%%%
+
+arabchar(tsah_spec, f_end, 4, 10, 10);
+hhah_spec_iso;
+x.m := x.r + 3dx;
+three_dots_low(-3);
+endchar;
+
+arabchar(tsah_spec, f_mid, 2, 10, 8);
+hhah_spec_beg;
+x.m := x.r + 4dx;
+three_dots_low(-4);
+endchar;
+fi
+
+%%%%%%%%%%%%%% closed hhah %%%%%%%%%%%%%%%%%
+
+arabchar(gim_close, f_beg, 12, 9, 0); % closed hhah
+%arabchar(gim_close, f_beg, 12, 8, 0); % closed hhah
+x1 = x2 - 9dx = x.l + 2dx; y1 - 4dy = y2 - 2dy = y.r;
+x3 = x7 = x1 + 7dx; y3 - 2dy = y7 = y.r;
+x4 = x1 - 2dx; y4 = y.l + 2dy;
+draw z4..z1{(8dx,3dy)}..z2{right}; draw z2{left}..z.l{left};
+endchar;
+
+%arabchar(gim_close, f_mid, 13, 8, 1); % closed hhah
+%hhah_mid; draw z3{down}..z.r{right};
+%endchar;
+
+%%%%%%%%%%%%%% sin_spec-macros %%%%%%%%%%%%%%%%%
+
+def sin_spec_wave =
+z5 - z.l = z3 - z2;
+x3 - x2 = 2(x3 - x5) = 2dx; x.m := x2;
+y5 = y2 - 2dy = y.l;
+draw z3..z5..z2; draw z2{down}..z.l{left};
+enddef;
+
+def sin_spec_beg =
+sin_spec_wave;
+enddef;
+
+def sin_spec_mid =
+sin_spec_wave; r_att(3);
+enddef;
+
+def sin_spec_mid =
+sin_spec_wave; draw z3{down}..z.r{right};
+enddef;
+
+%%%%%%%%%%%%%% short sin %%%%%%%%%%%%%%%%%
+
+arabchar(sin_spec, f_mid, 6, 6, 0);
+sin_spec_mid;
+endchar;
+
+arabchar(sin_spec, f_beg, 4, 6, 0);
+sin_spec_beg;
+endchar;
+
+if false:
+%%%%%%%%%%%%%% short shin %%%%%%%%%%%%%%%%%
+
+arabchar(shin_spec, f_mid, 6, 15, 0);
+sin_spec_mid; three_dots(8);
+endchar;
+
+arabchar(shin_spec, f_beg, 4, 15, 0);
+sin_spec_beg; three_dots(8);
+endchar;
+fi
+
+%%%%%%%%%%%%%% sad_spec-macros %%%%%%%%%%%%%%%%%
+
+def sad_spec_beg =
+x.m := x.m - dx;
+x1 = x2 - dx = x3 - 9dx = x.l;
+y1 + dy = y2 = y3 - 3dy = y.l;
+x8 = x2 + 3.5dx; y8 = y2 + 0.5dy;
+draw z1{(5dx,6dy)}..z3{(4dx,-7dy)}..tension 2..z.l{left};
+enddef;
+
+%%%%%%%%%%%%%% short sad %%%%%%%%%%%%%%%%%
+
+%arabchar(sad_spec, f_mid, 10, 10, 0);
+arabchar(sad_spec, f_mid, 10, 8, 0);
+sad_spec_beg; draw z.r{left}..z8;
+endchar;
+
+%arabchar(sad_spec, f_beg, 10, 10, 0);
+arabchar(sad_spec, f_beg, 10, 8, 0);
+sad_spec_beg;
+endchar;
+
+if false:
+%%%%%%%%%%%%%% short dad %%%%%%%%%%%%%%%%%
+
+arabchar(dad_spec, f_mid, 10, 10, 0);
+sad_spec_beg; draw z.r{left}..z8;
+one_dot(8);
+endchar;
+
+arabchar(dad_spec, f_beg, 10, 10, 0);
+sad_spec_beg; one_dot(8);
+endchar;
+fi
+
+%%%%%%%%%%%%%% kaf_spec-macros %%%%%%%%%%%%%%%%%
+
+def kaf_spec_beg =
+x1 = x.l + 9dx; x2 = x.l - 3.5dx; x4 = x.l + 8dx;
+%x1 = x.r - dx; x2 = x.l - 3.5dx; x4 = x.r - 2dx;
+%y4 = y.r; y1 = 14dy; y2 = 9dy; z3 = .4[z2, z4];
+y4 = y.l = y1 - 13dy = y2 - 8dy; z3 = .4[z2, z4];
+bow (z1, z2, z3);
+draw z3{z3 - z2}..z.l{left};
+enddef;
+
+%%%%%%%%%%%%%% short kaf %%%%%%%%%%%%%%%%%
+
+arabchar(kaf_spec, f_mid, 10, 15, 0);
+kaf_spec_beg; draw z3{z.r-z3}..z.r{right};
+endchar;
+
+arabchar(kaf_spec, f_beg, 7, 15, 0);
+%arabchar(kaf_spec, f_beg, 10, 15, 0);
+kaf_spec_beg;
+endchar;
+
+%%%%%%%%%%%%%% short gaf %%%%%%%%%%%%%%%%%
+
+%arabchar(gaf_spec, f_mid, 10, 16, 0);
+arabchar(gaf_spec, f_mid, 10, 17, 0);
+kaf_spec_beg; draw z3{z.r-z3}..z.r{right};
+gaf_serif;
+endchar;
+
+%arabchar(gaf_spec, f_beg, 7, 16, 0);
+arabchar(gaf_spec, f_beg, 7, 17, 0);
+kaf_spec_beg;
+gaf_serif;
+endchar;
+
+%%%%%%%%%%%%%% short kaf with loop %%%%%%%%%%%%%%%%%
+
+arabchar(kaf_p_spec, f_mid, 10, 15, 0);
+kaf_spec_beg; draw z3{z.r-z3}..z.r{right};
+z8 = .3[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+endchar;
+
+arabchar(kaf_p_spec, f_beg, 7, 15, 0);
+kaf_spec_beg;
+z8 = .3[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+endchar;
+
+%%%%%%%%%%%%%% short gaf with loop %%%%%%%%%%%%%%%%%
+
+%arabchar(gaf_p_spec, f_mid, 10, 15, 0);
+arabchar(gaf_p_spec, f_mid, 10, 16, 0);
+kaf_spec_beg; draw z3{z.r-z3}..z.r{right};
+z8 = .3[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+gaf_serif;
+endchar;
+
+%arabchar(gaf_p_spec, f_beg, 7, 15, 0);
+arabchar(gaf_p_spec, f_beg, 7, 16, 0);
+kaf_spec_beg;
+z8 = .3[z1,z2]; x9 = x8; y9 = bot y8; p_loop(9);
+gaf_serif;
+endchar;
+
+%%%%%%%%%%%%%% lam_alif %%%%%%%%%%%%%%%%%
+
+def lam_alif_serif(suffix $) =
+x.$sa = x.$sb - 2dx = x.$;
+y.$sa + dy = y.$sb + 3dy = y.$;
+draw z.$--z.$sa--z.$sb;
+enddef;
+
+arabchar(lam_alif_end, 0, 12, 15, 0);
+x1 + 3dx = x2 + 2dx = x.r;
+x3 + 8dx = x4 = x5 + 8dx = x6 + 2dx = x1;
+y1 = 12dy; y2 = y3 + 2dy = y.r; y4 = y6 + dy = 4dy; y5 = 11dy;
+z7 = 0.7[z1,z2]; draw z1---z7..z.r{right};
+bow(z1, z4, z3);
+draw z5{z4 - z5}..z6; lam_alif_serif(5);
+endchar;
+
+arabchar(lam_alif_iso, 0, 11, 15, 0);
+x1 + 2dx = x4 + 2dx = x3 + 6dx = x2 = x5 + 10dx = x.r;
+y1 = 13dy; y4 = 3dy; y3 = y2 = y.r; y5 = 12dy;
+bow(z1, z4, z3);
+bow(z5, z2, z3);
+serif(1); lam_alif_serif(5);
+endchar;
+
+%%%%%%%%%%%%%% lam in 'allah' %%%%%%%%%%%%%%%%%
+
+arabchar(lam_spec_low, f_mid, 5, 11, 0);
+x1 + .5dx = x2 - .5dx = x.m; y1 = 9dy; y2 = y.r;
+bow (z1, z2, z.r); bow (z1, z2, z.l);
+endchar;
+
+%%%%%%%%%%%%%% lam over yah %%%%%%%%%%%%%%%%%
+
+%arabchar(lam_spec_yah, f_mid, 7, 15, 7);
+arabchar(lam_spec_yah, f_mid, 7, 15, 0);
+x4 = x.r; x1 = x2 - dx = x.r - 3dx;
+y1 - 11dy = y2 = y4 = y.r + 2dy;
+z3 = .2[z2, z1];
+bow (z1, z3, z.l); draw z1---z3..z4{right};
+r_con (4);
+endchar;
+
+%arabchar(lam_on_gim, f_mid, 6, 10, 5);
+arabchar(lam_on_gim, f_mid, 6, 12, 0);
+x1 = x2 - dx = x.l + 4dx;
+y1 = 9dy; y2 = y.l; z3 = 0.7[z1, z2];
+draw z1..z3{z2 - z3}..z.l{left}; serif(1);
+endchar;
+
+%arabchar(lam_long, f_beg, 6, 15, 3);
+arabchar(lam_long, f_beg, 6, 15, 0);
+x1 = x2 - dx = x.l + 4dx;
+y1 = 12dy; y2 = y.l; z3 = 0.8[z1, z2];
+draw z1..z3{z2 - z3}..z.l{left}; serif(1);
+endchar;
+
+%%%%%%%%%%%%%% lam over mim and hah %%%%%%%%%%%%%%%%%
+
+arabchar(lam_spec_mim, f_beg, 3, 15, 0);
+x1 + dx = x2 + .5dx = x.l; y1 = 13dy; y2 = y.l + .5dy;
+bow(z1, z2, z.l); serif(1);
+endchar;
+
+arabchar(lam_spec_hah, f_beg, 3, 10, 0);
+x1 + dx = x2 + .5dx = x.l; y1 - 8dy = y2 - .5dy = y.l;
+bow(z1, z2, z.l); serif(1);
+endchar;
+
+%%%%%%%%%%%%%% mim ligatures %%%%%%%%%%%%%%%%%
+
+%arabchar(mim_spec, f_end, 5, 5, 13); % final mim connected from above
+arabchar(mim_spec, f_end, 5, 5, 8); % final mim connected from above
+x2 + 6dx = x4 + 4dx = x5 + 3.5dx = x6 + 4.5dx = x1;
+y2 + dy = y4 + 11dy = y5 - 2.5dy = y6 - 1.5dy = y1;
+z5 = z.r; bow(z4,z2,z1); draw z5--z1;
+endchar;
+
+arabchar(mim_spec, f_mid, 4, 10, 0); % medial mim after lam
+%x2 = x.r = x1 - 2dx; y1 = y.r = y2 - dy;
+x2 = x.r - dx = x1 - 2dx; y1 = y.r = y2 - dy;
+draw z.l{right}..z2..z1;
+r_con(2);
+endchar;
+
+arabchar(mim_spec, f_beg, 8, 10, 5); % mim over gim
+x2 = x1 = x3 + 2dx = x.l + 7dx;
+y2 = y1 - 2dy = y3 - dy = y.l + 2dy;
+draw z3..z1..z2{left}..z.l;
+endchar;
+
+arabchar(mim_spec_mim, f_beg, 6, 10, 0); % mim over mim
+x2 = x1 = x3 + 2dx = x.l + 3dx;
+y2 = y1 - 2dy = y3 - dy = y.l + 5dy;
+draw z3..z1..z2{left}..z.l{(dx,-dy)};
+endchar;
+
+arabchar(mim_spec_high, f_mid, 5, 10, 0); % mim after gim etc
+x1 = x2 - dx = x3 + dx = x.rr;
+y1 = y.rr; y2 = y3 - 3dy = y.l;
+%x1 = x2 - dx = x3 + 2dx = x.rr;
+%y1 = y.rr; y2 = y3 - 2dy = y.l;
+draw z3..tension 2..z2..tension 2..z1..z3..z.l{left};
+%draw z3..tension 2..z2..tension 1.5..z1..z3..z.l{left};
+r_con(1);
+endchar;
+
+%arabchar(mim_spec_long, f_mid, 9, 10, 0); % long mim after lam
+arabchar(mim_spec_long, f_mid, 9, 5, 0); % long mim after lam
+%x2 = x.r = x1 - 2dx; y1 = y.r = y2 - dy;
+x2 = x.r - dx = x1 - 2dx; y1 = y.r = y2 - dy;
+draw z.l{right}..z2..z1;
+r_con(2);
+endchar;
+
+arabchar(mim_spec_alif, f_mid, 8, 8, 3); % mim before alif
+x1 = x2 = x.l + 5dx; y1 + 3dy = y2 - 3dy = y.r;
+z3 = .5[z2, z.r];
+draw z.l{(4dx,-7dy)}..z1{(7dx,-4dy)};
+draw z1{(-7dx,4dy)}..z2{right}..z3{(dx,-6dy)}..z.r{right};
+endchar;
+
+arabchar(mim_lam_gim, f_mid, 6, 10, 2); % lam_mim over gim
+x1 - 2dx = x2 = x.r; y1 + dy = y2 = y.r + 2dy;
+draw z.l{(dx,dy)}..z2..z1;
+r_con(2);
+endchar;
+
+%%%%%%%%%%%%%% hah ligature %%%%%%%%%%%%%%%%%
+
+arabchar(hah_spec, f_end, 5, 8, 0);
+x1 + 2dx = x.r; y1 - 2dy = y.r;
+draw z.r{left}..z1..z.l{(-dx,-dy)};
+endchar;
+
+%arabchar(hah_spec, f_mid, 6, 5, 6); % sharp medial hah
+arabchar(hah_spec, f_mid, 6, 8, 6); % sharp medial hah
+x1 = x2 = x3 + 1.5dx = x.r - 2dx;
+y1 + 6dy = y2 - 2dy = y.r; y3 = y1 + 2dy;
+draw z1{up}..z.r{(dx,dy)};
+bow (z1, z3, z2); l_att(2);
+endchar;
+
+arabchar(hah_spec, f_beg, 5, 8, 2);
+x1 = x.r; x2 - 2dx = x.l;
+y1 = y2 = y.r + 2dy;
+draw z1..z2{up}; draw z2{down}..z.l{left};
+endchar;
+
+arabchar(hah_spec_lam, f_mid, 5, 15, 0); % hah after lam
+x2 = x3 + 1.5dx = x4 - 1.5dx = x.l + 3dx;
+x6 + dx = x5 - 3dx = x.l + 8dx;
+y2 = 2dy; y3 = y4 = 4dy; y6 = dy;
+draw z.rr{curl 0}..tension 1.5..z6..tension 2..z2..z3..z4..z2..z.l{left};
+r_con(rr);
+endchar;
+
+%%%%%%%%%%%%%% yah after sin %%%%%%%%%%%%%%%%%
+
+arabchar(yah_spec, f_end, 9, 5, 7); % final yah connected from above
+x.m := x.m + dx; x2 = x.r + 4dx;
+x3 = x.m; lft x4 = lft x5 + 1.5dx - pl = x.l;
+y2 - dy = y4 = y5 - 3dy = y3 + 3dy = -3dy;
+draw z.r{(8dx,-3dy)}..tension 1.5
+..z2{down}..tension 1.5..z3{left}..z4{up}..z5;
+endchar;
+
+arabchar(yah_h_spec, f_end, 11, 5, 7); % final yah with hook
+x.m := x.m + 2dx; x2 = x.r + 4dx;
+x3 = x.m; lft x4 = x5 - dx = x.r - 9dx;
+y2 - dy = y4 = y5 - 3dy = y3 + 3dy = -3dy;
+draw z.r{(8dx,-3dy)}..tension 1.5
+..z2{down}..tension 1.5..z3{left}..z4{up}..z5;
+x7 = x5 - 3dx; y7 = y5 - 5dy; draw z5--z7;
+endchar;
+
+%%%%%%%%%%%%%% ties %%%%%%%%%%%%%%%%%
+
+%arabchar(mm_to_b, f_mid, 6, 5, 6);
+%x1 = x.rr - 3dx; y1 = y.r + 2dy;
+%x2 = x.l; y.l - y2 = y.rr - y.r;
+%draw z2{(-dx,dy)}..z1..z.r{right};
+%r_con(rr);
+%endchar;
+
+arabchar(er_to_s, f_mid, 5, 5, 0);
+x1 + dx = x.l; x5 = x.r - 2dx;
+y1 - .5dy = y5 - 2dy = y.r;
+draw z1--z5; draw z5..z.r{right};
+endchar;
+
+arabchar(g_to_mb, f_mid, 8, 8, 6);
+z3 = 0.2[z.r,z.rr]; z1 = 0.9[z1,z3]; z2 = 0.8[z.ll,z.rr];
+draw z.l..controls z1 and z2..z.rr;
+endchar;
+
+endinput;
+%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/mfinput/xnshspec.mf b/language/arabic/arabtex/mfinput/xnshspec.mf
new file mode 100644
index 0000000000..97095b08d3
--- /dev/null
+++ b/language/arabic/arabtex/mfinput/xnshspec.mf
@@ -0,0 +1,202 @@
+%%%%%%%%%%%%%%%%%%%%%%% xnshspec.mf %%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Extended NASH Font
+% special characters
+% 15.07.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+if unknown xnshbase: input xnshbase fi;
+
+%%%%%%%%%%%%%% very special characters %%%%%%%%%%%%%%%%%
+
+arabchar(space_spec, f_beg, 5, 8, 6);
+endchar;
+
+arabchar(space_spec, f_mid, 0, 8, 6);
+endchar;
+
+arabchar(tatwil, f_iso, 5, 5, 0);
+draw z.r--z.l;
+endchar;
+
+arabchar(tatwil, f_beg, 5, 5, 0);
+draw z.r--z.l;
+endchar;
+
+arabchar(tatwil, f_mid, 5, 5, 0);
+draw z.r--z.l;
+endchar;
+
+arabchar(tatwil, f_end, 5, 5, 0);
+draw z.r--z.l;
+endchar;
+
+arabchar(block, f_iso, 10, 12, 0); % block isoliert
+x1 = x2 = x.l + dx; x3 = x4 = x.r - dx;
+y1 = y4 = 10dy; y2 = y3 = 0;
+fill z1--z2--z3--z4--cycle;
+endchar;
+
+arabchar(block, f_beg, 10, 12, 0); % block initial
+x1 = x2 = x.l + dx; x3 = x4 = x.m;
+y1 = y4 = 10dy; y2 = y3 = 0;
+fill z1--z2--z3--z4--cycle;
+endchar;
+
+arabchar(block, f_mid, 10, 12, 0); % block medial
+x1 = x2 = x.l + dx; x3 = x4 = x.r - dx;
+y1 = y4 = 5dy; y2 = y3 = 0;
+fill z1--z2--z3--z4--cycle;
+endchar;
+
+arabchar(block, f_end, 10, 12, 0); % block final
+x1 = x2 = x.m; x3 = x4 = x.r - dx;
+%x1 = x2 = x.l + dx; x3 = x4 = x.r - dx;
+y1 = y4 = 10dy; y2 = y3 = 0;
+fill z1--z2--z3--z4--cycle;
+endchar;
+
+%%%%%%%%%%%%%% special characters %%%%%%%%%%%%%%%%%
+
+arabchar(".", 0, 2, 2, -1.5);
+x1 = x.m; y1 = dy;
+put_dot(1);
+endchar;
+
+arabchar(",", 0, 4, 10, 0);
+x1 = x2 = x.m; y1 = 6dy; y2 = dy;
+%x1 = x2 = x.m; y1 = 10dy; y2 = 5dy;
+draw z1{(-dx,-dy)}..z2{right};
+endchar;
+
+arabchar(";", 0, 4, 10, 0);
+x1 = x2 = x.m; y1 = 10dy; y2 = 5dy;
+draw z1{(-dx,-dy)}..z2{right};
+one_dot(1);
+endchar;
+
+arabchar(":", 0, 4, 10, 0);
+x1 = x2 = x.m; y1 = dy; y2 = 6dy;
+put_dot(1); put_dot(2);
+endchar;
+
+arabchar("!", 0, 4, 15, 0);
+x1 = x2 = x3 = x.m; y1 = dy; y2 = 4dy; y3 = 13dy;
+%x2a - x2 = x2 - x2b = .5dx; x3a - x3 = x3 - x3b = dx;
+x2a - x2 = x2 - x2b = .3px; x3a - x3 = x3 - x3b = .6px;
+y2a = y2b = y2; y3a = y3b = y3;
+put_dot(1);
+fill z2a--z3a--z3b--z2b--cycle;
+endchar;
+
+arabchar("?", 0, 7, 15, 0);
+x1 - 2dx = x3 + 2dx = x2 = x4 = x.m;
+y1 = y3 = 10dy; y2 = 13dy; y4 = 4dy;
+draw z1..z2{left}..z3..z4{(-4dx,-11dy)};
+one_dot(1);
+endchar;
+
+arabchar("$", 0, 6, 10, 5);
+%x1 = x2 = x.m; x3 = x5 = x.m + 2dx; x4 = x6 = x.m - 2dx;
+x1 = x2 = x.m; x3 = x5 = x.m + 3dx; x4 = x6 = x.m - 3dx;
+y1 = 8dy; y2 = -6dy; y3 = y4 = 3dy; y5 = y6 = -dy;
+draw z1--z2; draw z3..z4..z5..z6;
+endchar;
+
+arabchar("*", 0, 8, 10, 0);
+x1 = x2 = x.m; x3 = x5 = x.m + 3dx; x4 = x6 = x.m - 3dx;
+y1 = 7dy; y3 = y6 = 5dy; y4 = y5 = dy; y2 = -dy;
+draw z1--z2; draw z3--z4; draw z5--z6;
+endchar;
+
+arabchar("%", 0, 14, 10, 5);
+x1 = x5 = x6 = x.m + 4dx;
+x2 = x3 = x4 = x.m - 4dx;
+y1 = y3 = 8dy; y4 = 3dy; y5 = dy; y2 = y6 = -4dy;
+draw z3..z4..cycle; draw z5..z6..cycle;
+pickup dia_pen; draw z1--z2;
+endchar;
+
+arabchar("/", 0, 10, 10, 5);
+pickup dia_pen;
+x1 + 4dx = x2 - 4dx = x.m;
+y2 = 9dy; y1 = -6dy;
+draw z1--z2;
+endchar;
+
+arabchar(rquotes, 0, 8, 10, 5); % ``
+x1 = x3 = x2 + 2dx = x.m - dx;
+x4 = x6 = x5 + 2dx = x.m + 3dx;
+y1 = y4 = 5dy; y2 = y5 = dy; y3 = y6 = -3dy;
+draw z1..z2..z3; draw z4..z5..z6;
+endchar;
+
+arabchar(lquotes, 0, 8, 10, 5); % ''
+x1 = x3 = x2 - 2dx = x.m + dx;
+x4 = x6 = x5 - 2dx = x.m - 3dx;
+y1 = y4 = 5dy; y2 = y5 = dy; y3 = y6 = -3dy;
+draw z1..z2..z3; draw z4..z5..z6;
+endchar;
+
+arabchar("=", 0, 16, 10, 0);
+x5 = x7 = x.m - 7dx; x6 = x8 = x.m + 7dx;
+y5 = y6 = 3dy; y7 = y8 = -dy;
+draw z5--z6; draw z7--z8;
+endchar;
+
+arabchar("+", 0, 10, 10, 0);
+x1 = x2 = x3 + 4dx = x4 - 4dx = x.m;
+y1 = 5dy; y2 = -3dy; y3 = y4 = dy;
+draw z1--z2; draw z3--z4;
+endchar;
+
+arabchar("-", 0, 8, 10, 0);
+x1 + 3dx = x2 - 3dx = x.m;
+y1 = y2 = dy;
+%y1 = y2 = 4dy;
+draw z1--z2;
+endchar;
+
+arabchar("#", 0, 16, 10, 5);
+x1 = x4 = x3 - 4dx = x2 + 4dx = x.m;
+x5 = x7 = x.m - 7dx; x6 = x8 = x.m + 7dx;
+y1 = y3 = 7dy; y2 = y4 = -7dy;
+y5 = y6 = 2dy; y7 = y8 = -2dy;
+draw z5--z6; draw z7--z8;
+pickup dia_pen;
+draw z1--z2; draw z3--z4;
+endchar;
+
+arabchar("(", 0, 8, 10, 5);
+x1 = x2 = x.m + 3dx; x3 = x.m - 3dx;
+top y1 = 10dy; bot y2 = -7dy; y3 = .5[y1,y2];
+%top y1 = 15dy; bot y2 = -7dy; y3 = 4dy;
+draw z1..z3..z2;
+endchar;
+
+arabchar(")", 0, 8, 10, 5);
+x1 = x2 = x.m - 3dx; x3 = x.m + 3dx;
+top y1 = 10dy; bot y2 = -7dy; y3 = .5[y1,y2];
+draw z1..z3..z2;
+endchar;
+
+arabchar("[", 0, 6, 10, 5);
+x1 = x2 = x.m + 2dx; x3 = x4 = x.m - 2dx;
+y1 = y3 = 9dy; y2 = y4 = -6dy;
+%y1 = y3 = 14dy; y2 = y4 = -6dy;
+draw z1--z3--z4--z2;
+endchar;
+
+arabchar("]", 0, 6, 10, 5);
+x1 = x2 = x.m + 2dx; x3 = x4 = x.m - 2dx;
+y1 = y3 = 9dy; y2 = y4 = -6dy;
+draw z3--z1--z2--z4;
+endchar;
+
+endinput;
+%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/new1.gif b/language/arabic/arabtex/new1.gif
new file mode 100644
index 0000000000..9b24baff3c
--- /dev/null
+++ b/language/arabic/arabtex/new1.gif
Binary files differ
diff --git a/language/arabic/arabtex/new2.gif b/language/arabic/arabtex/new2.gif
new file mode 100644
index 0000000000..ffe0211447
--- /dev/null
+++ b/language/arabic/arabtex/new2.gif
Binary files differ
diff --git a/language/arabic/arabtex/psfonts/arabtex.map b/language/arabic/arabtex/psfonts/arabtex.map
new file mode 100644
index 0000000000..3a16ca8fcc
--- /dev/null
+++ b/language/arabic/arabtex/psfonts/arabtex.map
@@ -0,0 +1,6 @@
+xnsh14 xnsh14 <xnsh14.pfb
+xnsh14bf xnsh14bf <xnsh14bf.pfb
+hclassic TeX-hclassic <hclassic-4.pfb
+hcaption TeX-hcaption <hcaption-4.pfb
+
+
diff --git a/language/arabic/arabtex/psfonts/hcaption-4.pfb b/language/arabic/arabtex/psfonts/hcaption-4.pfb
new file mode 100644
index 0000000000..6bd533ce5a
--- /dev/null
+++ b/language/arabic/arabtex/psfonts/hcaption-4.pfb
Binary files differ
diff --git a/language/arabic/arabtex/psfonts/hclassic-4.pfb b/language/arabic/arabtex/psfonts/hclassic-4.pfb
new file mode 100644
index 0000000000..2e51cdf876
--- /dev/null
+++ b/language/arabic/arabtex/psfonts/hclassic-4.pfb
Binary files differ
diff --git a/language/arabic/arabtex/psfonts/xnsh14.pfb b/language/arabic/arabtex/psfonts/xnsh14.pfb
new file mode 100644
index 0000000000..40333ca074
--- /dev/null
+++ b/language/arabic/arabtex/psfonts/xnsh14.pfb
Binary files differ
diff --git a/language/arabic/arabtex/psfonts/xnsh14bf.pfb b/language/arabic/arabtex/psfonts/xnsh14bf.pfb
new file mode 100644
index 0000000000..9360fad060
--- /dev/null
+++ b/language/arabic/arabtex/psfonts/xnsh14bf.pfb
Binary files differ
diff --git a/language/arabic/arabtex/readme.txt b/language/arabic/arabtex/readme.txt
new file mode 100644
index 0000000000..eef60b15d9
--- /dev/null
+++ b/language/arabic/arabtex/readme.txt
@@ -0,0 +1,92 @@
+README 23.10.2003
+--------------------------------------------------------------------------
+ ArabTeX Version 3
+ =================
+--------------------------------------------------------------------------
+ Last changes: Version 3.11d, 23.10.2003
+--------------------------------------------------------------------------
+ The set of files, of which THIS file is supposed to be part of,
+ contains a package extending the capabilities of TeX/LaTeX to
+ generate the arabic writing from an ASCII transliteration for
+ texts in several languages using the arabic script. Several other
+ common encodings are also supported.
+
+ The package is available in packed form as "arabtex.zip" and
+ "arabtex.tgz". Depending on the server there may be also the
+ unpacked files; check for the latest version of "apatch.sty"!
+
+ The following ASCII files give more detailed information:
+
+ arabtex.doc : a short introduction (rather out of date)
+ arabtex.faq : answers to some Frequently Asked Questions
+ (updated as necessary)
+ changes.txt : release history, new features, and known bugs
+ (updated as necessary)
+ changes2.txt : older release history up to version 3.00
+ install.txt : list of available files, and installation notes
+ apatch.sty : last minute corrections; put this file onto the
+ TEXINPUT path; it will patch automatically.
+ (updated as necessary)
+
+ There are also various additional documentation files.
+ A subdirectory "REPORT", if still present, is OBSOLETE.
+
+ There was a prototype, ArabTeX Version 1, which is now OBSOLETE.
+ Version 2 was the first complete release accompanied by a manual,
+ but is no more being maintained.
+
+ Version 3 is an upward compatible extension of Version 2 with
+ many new features, e.g. the possibility to read input files in the
+ ASMO 449, ISO 8859-6, and UTF-8 Codes, and many new commands for
+ better formatting of Arabic text, or catering for historic writing
+ styles. Versions from 3.05 onward contain a package to process
+ Hebrew, and provide long right-to-left insertions. For details,
+ consult the manual and the ASCII file "readme.305".
+
+ ArabTeX is copyrighted by the author. If you use the system for
+ scientific work please give appropriate credit to the software
+ and the author (e.g. in the colophon of a monograph.) We also
+ appreciate a complimentary copy of any scientific work produced
+ with ArabTeX.
+
+ ArabTeX may be redistributed and/or modified under the terms
+ of the LaTeX Project Public License distributed from CTAN
+ archives in the directory "macros/latex/base/lppl.txt"; either
+ version 1 of the License, or (at your option) any later version.
+
+ ArabTeX is an experimental system and supposed to change without
+ prior notice. Whoever will use it does so at her/his/its own risk.
+ We cannot take any responsibility on correct function, suitability
+ for whatever purpose, or correct documentation.
+
+ If you have any complaints or suggestions, please forward them to
+ the author. We shall consider any reasonable suggestion, but we
+ will use our own judgment on any changes, and our resources are
+ severely limited.
+
+ If problems turn up while running ArabTeX, please check first at
+ "ftp.informatik.uni-stuttgart.de" whether there is a new version,
+ or whether there are any new corrections in "apatch.sty". If the
+ problem goes away with the new version, please inform the server
+ you got ArabTeX from; otherwise send a bug report to the author.
+
+ The reference site "ftp.informatik.uni-stuttgart.de" always holds
+ the current version. We know that the CTAN servers "ftp.tex.ac.uk",
+ "ctan.tug.org", and "ftp.dante.de" mirror this site and update on
+ a regular schedule.
+
+ An empty E-Mail message to "arabtex@informatik.uni-stuttgart.de"
+ will produce a current status report.
+
+--------------------------------------------------------------------------
+ Prof. Klaus Lagally
+ Institut fuer Informatik
+ Universitaet Stuttgart
+ Breitwiesenstrasse 20-22
+ D-70565 Stuttgart
+ GERMANY
+
+ lagally@informatik.uni-stuttgart.de
+--------------------------------------------------------------------------
+ Copyright (c) 1990 - 2002, Klaus Lagally
+--------------------------------------------------------------------------
diff --git a/language/arabic/arabtex/saw.sty b/language/arabic/arabtex/saw.sty
new file mode 100644
index 0000000000..5ca630d456
--- /dev/null
+++ b/language/arabic/arabtex/saw.sty
@@ -0,0 +1,43 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% saw.sty
+% macros for SAW and ALS
+% only available in one size
+% 22.06.2006
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {saw.sty}{1.00 SAW and ALS } {22.06.2006}
+
+\def \SAW {% for Roman mode
+% .salla all-ah `alayhi wa-sallam
+\setbox0 \hbox {\setarab \novocalize \tiny
+\vbox {\hbox {\<.sall_A \hskip-0.6em al-ll_ahu >}%
+\nointerlineskip \vskip -1.5ex
+\hbox {\<wa-salama >}%
+\nointerlineskip \vskip -2.2ex
+\hbox {\hskip .4em \<`alayBBhi >\,}}}%
+\dp0 0pt \leavevmode \lower .20\ht0 \box0 }
+
+\def \ALS {% for Roman mode
+% `alayhi al-ssalAm
+\setbox0 \hbox {\setarab \novocalize \tiny
+\vbox {\hbox {\,\<`alaByBhi >}%
+\nointerlineskip \vskip -1.0ex
+\hbox {\<al-ssalAm >\,}}}%
+\leavevmode \box0 }
+
+\def \a@c@SAW {% for Arabic paragraph mode
+\nospace \putwordb@x {\SAW \hskip -0.3em }\test@token }
+
+\def \a@c@ALS {% for Arabic paragraph mode
+\nospace \putwordb@x {\ALS \hskip -0.3em }\test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
diff --git a/language/arabic/arabtex/texinput/Uxnsh.fd b/language/arabic/arabtex/texinput/Uxnsh.fd
new file mode 100644
index 0000000000..3fba5ce6eb
--- /dev/null
+++ b/language/arabic/arabtex/texinput/Uxnsh.fd
@@ -0,0 +1,61 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Uxnsh.fd
+%
+% 31.08.93 1.0 created file when added support for NFSS2 (br)
+% 04.04.1997 ranges fixed (KL)
+% 17.09.1997 smaller sizes allowed
+% 14.04.1998 font xnsh14
+% 23.05.1999 name "uxnsh.fd"
+% 19.10.1999 new font shape U/xnsh/*/s
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Bernd Raichle and Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% This file contains the font description of font `xnsh'
+% fontencoding: U
+% fontfamily: xnsh
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% make sure, that it is used with NFSS2 only
+%
+\ifx\DeclareFontShape\undefined
+ \message{Something is wrong -- %
+ this file can only be used with NFSS2!!!}
+\expandafter\endinput\fi
+
+\ProvidesFile{uxnsh.fd}[ 1999/10/19 v3.10 ArabTeX Naskh extd. font definitions]
+
+\DeclareFontFamily{U}{xnsh}{}%
+
+\DeclareFontShape{U}{xnsh}{m}{n}{%
+ <-6> sfixed * [7.2] xnsh14
+ <6-10> s * [1.44] xnsh14
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * [1.44] xnsh14
+}{}
+
+\DeclareFontShape{U}{xnsh}{bx}{n}{%
+ <-6> sfixed * [7.2] xnsh14bf
+ <6-10> s * [1.44] xnsh14bf
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * [1.44] xnsh14bf
+}{}
+
+% small version:
+
+\DeclareFontShape{U}{xnsh}{m}{s}{%
+ <-6> sfixed * [6.0] xnsh14
+ <6-10> s * [1.20] xnsh14
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * [1.20] xnsh14
+ }{}
+
+\DeclareFontShape{U}{xnsh}{bx}{s}{%
+ <-6> sfixed * [6.0] xnsh14bf
+ <6-10> s * [1.20] xnsh14bf
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * [1.20] xnsh14bf
+}{}
+
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/abidir.sty b/language/arabic/arabtex/texinput/abidir.sty
new file mode 100644
index 0000000000..2b390e4609
--- /dev/null
+++ b/language/arabic/arabtex/texinput/abidir.sty
@@ -0,0 +1,240 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% abidir.sty
+% ArabTeX macros for bidirectional linebreaking
+% 22.08.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \a@RL \undefined \else \xpa \endinput \fi
+
+\a@ident {abidir.sty} {3.11 bidirectional linebreaking} {22.08.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% <LR insertion inside Rtext>
+%\def \test@insert #1>{\a@Linsert {#1}}
+
+% \LR{#1} = LR insertion inside Rtext
+\def \a@c@LR {\unarab@codes \a@Linsert }
+\let \a@c@L \a@c@LR % usage: \L {LR text}
+
+% \LR{#1} = LR insertion inside Ltext: trivial
+\let \LR \relax \let \L \relax
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% \RL{#1} = RL insertion inside Ltext
+\def \RL {\protect \a@RL }
+\let \R \RL % usage: \R {RL text}
+
+% \RL{#1} = RL insertion inside Rtext: trivial
+\def \a@c@RL #1{\test@token #1 } \let \a@c@R \a@c@RL
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \goodpar {% usage: \goodpar {Roman paragraphs}
+% put around one or more paragraphs if the linebreaking is bad
+% caution: may lead to storage overflow
+\dimen0 \prevdepth \setbox0 \vbox \bgroup \prevdepth \dimen0
+\def \par {\egroup \endgraf \goodpar x}% dummy character
+\aftergroup \g@@dpar \let \next=}
+
+\def \g@@dpar {\unvbox0 }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newdimen \a@Llength \newdimen \a@Lwidth \newdimen \a@Lindent
+\newdimen \a@Rlength \newdimen \a@Rheight
+\newbox \a@Rboxi \newbox \a@Rboxii \newbox \Rinsertb@x
+\newbox \a@Rdummyi \newbox \a@Rdummyii \newbox \Linsertb@x
+\newbox \a@spacebox \newif \ifR@split \newcount \a@lines
+
+\def \ins@skip {\hskip \z@ plus 0.1em }% before and after insertion
+
+\def \a@vglue {\z@ plus 2ex }% glue at top of the insertion \vbox
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@RL {% RTL insertion inside LRtext
+\ifaRL \else \aRLtrue
+ \let \a@RLpar \par % prepare for normal baselines
+ \edef \a@lslimit {\lineskiplimit \the\lineskiplimit}%
+ \def \par {\a@RLpar \let \par \a@RLpar \a@lslimit \aRLfalse }%
+\fi \lineskiplimit -.9\baselineskip % enforce uniform baselines
+\bgroup \arab@codes \set@arabfont \@waslafalse \@wasfalse \a@@Rinsert }
+
+\def \a@@Rinsert #1{% RL insertion inside Ltext
+\ifshow \a@@verb {#1}\fi % verbating listing
+\ifarab \a@Rinsert {#1} \fi % arabic writing
+\iftrans \set@transfont \trans@text #1 \end \/\fi
+\ifnum \tracingarab > \@ne \message {>}\fi
+\unskip \egroup }
+
+\def \a@Rinsert #1{% put a sequence of RL words into Ltext
+\leavevmode % go to hmode if not there already
+\ifinner \a@sequence {#1}% inside a \hbox: append
+\else \a@Rsplit {#1}% splice into the current paragraph
+\fi }
+
+\def \a@Rsplit #1{% splice RL words into the current paragraph
+\bgroup \def \next@command {\test@special}\transfalse \showfalse
+\ifspread \else \def \arab@space {\space }% no infinite stretch !!
+ \def \tat@skip {0.04ex plus 0.5ex }%
+\fi
+ \a@Rdimen {#1}% get the length of the first 2 RL words
+\ifdim \wd\a@Rboxii = \z@
+ \unhbox\a@Rboxi % done with the insertion
+\else \a@Ldimen % get the dimensions of the last line
+ \a@Rtobox {#1}% pack the insertion lines into a \vbox
+ \a@Runpack % unpack and splice into the current paragraph
+\fi \egroup }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@Rdimen #1{% get the dimensions of the first two words
+\setbox\a@Rboxii \hbox {}\setbox\a@Rdummyii \box\a@Rboxii
+\a@Rfirst #1 \to \a@wordi \a@Rrest
+\xpa \a@Rwordtobox \a@wordi \to \a@Rboxi \a@Rdummyi
+\ifx \space \a@Rrest \else
+\ifx \relax \a@Rrest \relax \else
+\xpa \a@Rfirst \a@Rrest \to \a@wordii \a@Rrest
+\xpa \a@Rwordtobox \a@wordii \to \a@Rboxii \a@Rdummyii
+\fi\fi }
+
+\def \a@Rwordtobox #1\to #2#3{% Rword to \box#2, Rdummy to \box#3
+\a@sequence {#1}\setbox#2 \lastbox
+\setbox#3\hbox to \wd#2{\hfill }\ht#3\ht#2\dp#3\z@}
+
+{\catcode `\^^a0 12
+\gdef \a@Rfirst #1 #2\to #3#4{% split off first word
+\ifx \relax #1\relax \a@Rfirsti #2\to #3#4\else
+\ifx \relax #2\relax \a@Rfirstii #1^^a0\to #3#4\else
+\def #3{#1}\def #4{#2}\fi\fi }
+
+\gdef \a@Rfirstii #1^^a0#2\to #3#4{% split off first word
+\ifx \relax #1\relax \a@Rfirstiii #2\to #3#4\else
+\def #3{#1}\def #4{#2 }\fi }
+}% catcode ^^a0
+
+\def \a@Rfirsti #1\to #2#3{% split off leading space
+\ifx \relax #1\relax \def #2{\relax }\def #3{\relax }%
+\else \a@Rfirst #1\to #2#3\fi }
+
+\def \a@Rfirstiii #1\to #2#3{% split off leading RL space
+\ifx \relax #1\relax \def #2{\relax }\def #3{\relax }%
+\else \a@Rfirstii #1\to #2#3\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@Ldimen {% get the dimensions of the preceding line
+\setbox\a@spacebox \hbox {\arab@space}\tolerance 10000
+\R@splitfalse \leavevmode
+\penalty 0
+\copy \a@Rdummyi \arab@space \copy \a@Rdummyii
+\parfillskip \z@ plus 1fill \relax \tr@ceoff
+$$\global \a@Llength \predisplaysize % dummy display
+\global \a@Lwidth \displaywidth \global \a@Lindent \displayindent
+\hbox to \a@Lwidth {}\postdisplaypenalty \@M
+$$ {\endgraf }% keep paragraph parameters
+\tr@ceon \a@lines \prevgraf \advance \a@lines -3
+\prevgraf \a@lines \prevdepth -\baselineskip
+\a@Ladjust % update \a@Llength and \a@Lindent
+\ifinner \a@killdisplay \else \a@skipback \fi }
+
+\def \a@Ladjust {% correct \a@Llength and \a@Lindent
+\ifdim \a@Llength = \maxdimen \a@Llength \a@Lwidth % flexible line
+\else \advance \a@Llength -2em \advance \a@Llength -\a@Lindent
+\fi
+\advance \a@Llength -\leftskip \advance \a@Llength -\wd\a@Rdummyii
+\ifdim \a@Llength = \z@ \R@splittrue \a@Llength \a@Lwidth
+ \advance \a@Llength -\leftskip \advance \a@Llength -\rightskip
+\else \advance \a@Llength -\wd\a@spacebox
+\fi \advance \a@Llength -\wd\a@Rdummyi
+\ifnum \prevgraf = 1
+ \ifdim \z@ > \hangindent \advance \a@Llength -\hangindent
+ \else \advance \a@Llength \hangindent
+ \fi
+\else \ifdim \a@Llength = \z@ \R@splittrue \a@Llength \a@Lwidth
+ \fi
+\fi }
+
+\def \a@killdisplay {% vbox: get back to the old position
+\unskip \unskip \unpenalty \setbox0 \lastbox % get rid of garbage
+\ifR@split \unskip \unskip \unpenalty \setbox0 \lastbox \fi
+\unskip \unskip \unpenalty \setbox0 \lastbox % last line
+\dimen0 \baselineskip \advance \dimen0 -\ht0
+\advance \dimen0 -\lastskip \prevdepth \dimen0
+\unskip \vskip -\parskip
+\noindent \unhbox0 % open and trim last line
+\unskip \unskip \unpenalty \setbox0 \lastbox
+\ifR@split \else \unskip \setbox0 \lastbox \fi }
+
+\def \a@skipback {% paragraph: get back to the old position
+\vskip -\belowdisplayskip \vskip -3\baselineskip
+\vskip -\abovedisplayskip \vskip -\parskip
+\ifR@split \ifdim \z@ > \lineskiplimit \vskip -\baselineskip \else
+\vskip -\ht\a@Rdummyii \vskip -\dp\a@Rboxi \vskip -\lineskip
+\fi\fi \noindent \arab@strut \nobreak \hskip \a@Llength }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@normpen #1{% prevent penalty 10000
+\ifnum #1= 10000 #1= 9999 \fi }
+
+\def \a@Rtobox #1{% pack the insertion into \Rinsertb@x
+\setbox \Rinsertb@x \vbox {\a@hsize \a@Lwidth
+\a@normpen \widowpenalty \a@normpen \clubpenalty
+\leftskip \z@ \rightskip \z@
+\parfillskip \z@ plus 1fil \relax \parskip \z@
+\let \a@@kern \a@kern \let \a@@mkern \a@mkern
+\def \a@kern {\nobreak \a@@kern}\def \a@mkern {\nobreak \a@@mkern}%
+\let \end \relax \spreadtrue \vskip \a@vglue \hbadness 10000
+\putlineb@x {\arab@strut \hskip \a@Llength }\a@spacefalse
+\test@token #1 \end \unskip \unskip \vskip \a@vglue
+\hbox {\box\lineb@x \hfill }}}
+
+\def \a@Runpack {\ins@skip % unpack all lines from the insertion
+\loop \a@Rgetline \unhbox \tempb@x \unskip \unskip \break
+\ifvbox \Rinsertb@x \repeat \unpenalty \ins@skip }
+
+\def \a@Rgetline {% unpack the next line globally to \box \tempb@x
+{\vbadness 10000 \splittopskip \a@vglue
+\dimen0 \baselineskip \advance \dimen0 1ex
+\setbox \tempb@x \vsplit \Rinsertb@x to \dimen0
+\setbox0 \vbox {\unvbox \tempb@x \setbox2 \lastbox \unhbox2
+\unskip \unskip \unpenalty \global \setbox \tempb@x \lastbox }}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@Linsert #1{% splice Ltext into RL paragraph
+\putwordb@x {\ins@skip }\a@spacefalse \a@@Linsert {#1}\a@Lunpack
+\putwordb@x {\ins@skip }\a@spacetrue \arab@codes
+\tracingmacros 0
+\test@token }
+
+\def \a@@Linsert #1{% splice Ltext into RL paragraph
+\dimen0 \wd \lineb@x \setbox \Linsertb@x \vbox
+{\hsize \a@hsize \hangindent -\dimen0 \hangafter -\@ne
+\tr@ceoff \rm \tr@ceon \rightskip \z@ plus .001fil
+\vskip \a@vglue \everypar {}\parskip \z@
+\dimen2 \fontdimen4\font \fontdimen4\font 0pt % prevent shrinking
+\noindent \null \hskip 0pt plus .001fil \relax #1
+\clubpenalty 0 \widowpenalty 0 \tolerance 10000
+\endgraf \fontdimen4\font \dimen2 }}
+
+\def \a@Lunpack {% unpack all lines from the insertion
+\loop \a@Lgetline \putwordb@x
+{\unhbox \tempb@x \unskip \unskip }\a@spacefalse
+\ifvbox \Linsertb@x \put@line \a@spacefalse \repeat }
+
+\def \a@Lgetline {% unpack the next line globally to \box \tempb@x
+{\vbadness 10000 \splittopskip \a@vglue \dimen0 \baselineskip
+\setbox \tempb@x \vsplit \Linsertb@x to \dimen0
+\setbox0 \vbox {\unvbox \tempb@x \global \setbox \tempb@x \lastbox }}}
+
+%\testoutput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
diff --git a/language/arabic/arabtex/texinput/abjad.sty b/language/arabic/arabtex/texinput/abjad.sty
new file mode 100644
index 0000000000..cbf617018a
--- /dev/null
+++ b/language/arabic/arabtex/texinput/abjad.sty
@@ -0,0 +1,68 @@
+% abjad.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% defines the command \abjad {#1}
+% to produce the `abjad' rendering of the argument,
+% which must be (or expand within Tex's mouth to)
+% a legal number between 1 and 1999
+% This command works both inside and outside an Arabic environment.
+% 26.04.2003
+% no warranty whatsoever
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \abjatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \abjatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {abjad.sty} {3.11 abjad numerals } {26.04.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \abj@d #1{% convert to abjad notation if possible
+\ifnum #1>1999 #1 \else \ifnum #1=0 0 \else
+\ifnum #1>999 \xpa\@bjad \number #1\else
+\ifnum #1>099 \xpa\@bjad \xpa0\number#1\else
+\ifnum #1>009 \xpa\@bjad \xpa0\xpa0\number#1\else
+\xpa\@bjad \xpa0\xpa0\xpa0\number#1%
+\fi\fi\fi\fi\fi }
+
+\def \@bjad #1#2#3#4{% convert to abjad notation
+\ifx #10\else .g\fi
+\ifcase #2 \or q\or r\or ^s\or t\or _t \or _h\or _d\or .d\or .z\fi
+\ifcase #3 \or Y\or k\or l\or m\or n\or s\or `\or f\or .s\fi
+\ifcase #4 \or |A\or .b\or .h-\or d\or h\or w\or z\or .h\or .t\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \abjad #1{% inside a Roman environment
+\edef \the@bjad {\abj@d {#1}}%
+\novocalize \arabtrue \transfalse \RL {\stdcode {\the@bjad }}%
+\iftrans {\set@transfont \ \trans@text #1 \end }\fi }
+
+\def \a@c@abjad #1{% inside an Arabic environment
+\putwordb@x {\transfalse \showfalse \abjad {#1}}%
+\iftrans {\set@transfont \trans@text #1 \end }\fi
+\arab@tail }
+
+\allowarab \the@bjad
+
+% NOTE: \abj@d is fully expandable
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \Abjad #1{\xpa \@Abjad \csname c@#1\endcsname }
+
+\let \@Abjad \abj@d
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\catcode `\@ = \abjatcode
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
diff --git a/language/arabic/arabtex/texinput/aboxes.sty b/language/arabic/arabtex/texinput/aboxes.sty
new file mode 100644
index 0000000000..095db6eb43
--- /dev/null
+++ b/language/arabic/arabtex/texinput/aboxes.sty
@@ -0,0 +1,401 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aboxes.sty
+% ArabTeX
+% deposit character into output box
+% called in HMODE
+% Version 28.05.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {aboxes.sty} {3.11 build output boxes} {28.05.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Arabic
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \def@arabaccent {% define accent macros for Arabic
+\gdef \put@fatha {\put@acc@hi {\char \a@fatha }}
+\gdef \put@damma {\put@acc@hi {\char \a@damma }}
+\gdef \put@kasra {\put@acc@lo {\char \a@kasra }}
+\gdef \put@shadda {\put@acc@hi {\char \a@shadda }}
+\gdef \put@hamza {\put@hi {\char \a@hamza }}
+\gdef \put@hamzalo {\put@lo {\char \a@hamza }}
+\gdef \put@madda {\put@hi {\a@madda@up }}
+\gdef \put@sukun {\put@acc@hi {\char \a@sukun }}
+\gdef \put@wasla {\put@acc@hi {\char \a@wasla }}
+\gdef \put@fathatan {\put@acc@hi {\char \a@fathatan }}
+\gdef \put@dammatan {\put@acc@hi {\char \a@dammatan }}
+\gdef \put@kasratan {\put@acc@lo {\char \a@kasratan }}
+\gdef \put@fathaspec {\put@acc@hi {\char \a@quran@alif }}
+\gdef \put@kasraspec {\put@acc@lo {\char \a@quran@alif }}
+\gdef \put@ammad {\put@acc@hi {\char \a@ammad }}
+\gdef \put@zwarakay {\put@acc@hi {\char \a@zwarakay }}
+\gdef \put@barslo {\put@lo {\char \a@bars }}
+\gdef \put@kh@hamza {\put@hi {\char \a@hamza }}
+\gdef \put@kl@hamza {\put@lo {\char \a@hamza }}
+\gdef \put@kh@hamz@s {\put@hi {\char \a@hamz@s }}
+\gdef \put@kl@hamz@s {\put@lo {\char \a@hamz@s }}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}}% end of dynamic definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newdimen \a@dp \newdimen \a@ht \newdimen \a@wd
+\newdimen \dia@dx \newdimen \dia@dy \newdimen \dia@ht
+\newdimen \a@disp \newdimen \a@ic
+\newbox \ab@x \newbox \dia@box
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%em# := 25.4dx#; %ex# := 8dy#;
+
+\def \a@kern {\kern.05em } \def \a@mkern {\kern-.05em }% Arabic kerning
+\def \acc@hi {1.8ex } \def \acc@lo {0.4ex } % positions for .harakAt
+\def \tat@ht {0.20ex } \def \tat@wd {0.007em } % kashida dimensions
+\def \tat@skip {0.014em plus 0.2fil }
+\def \a@dsp {.5ex } % shift for raised characters
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% global: \act@cd, \act@mod, \act@dia, \act@tie
+
+\def \put@skel #1#2#3*{% deposit writing syllable % f d m *
+\put@act@box #1#2\put@mod #3*\dep@sitb@x
+\fix@act@box }
+
+\def \put@lig@skel #1#2#3*#4*{% deposit 2char ligature % f d m * m *
+\put@act@box #1#2\global\a@wd .5\wd\ab@x
+\wd\ab@x \a@wd \dimen4 \a@ht \dimen6 \a@dp
+\global\setbox \ab@x \vbox {\box \ab@x }\put@mod #3*\dep@sitb@x
+\setbox0 \hbox to\a@wd {\hfill }\dp0 \dimen6 \ht0 \dimen4
+\global\a@ht \dimen4 \global\a@dp \dimen6
+\global\setbox \ab@x \vbox {\box0 }\put@mod #4*\dep@sitb@x
+\fix@act@box }
+
+\def \put@act@box #1#2{% set tie and open character box
+\ifnum \act@tie = 0 \else \advance\act@tie \a@f@mid \put@tie \fi
+\advance\act@cd #2\xpa \dia@pos \act@dia #1\relax
+\put@b@x {\the\act@cd }\if@mod@act \put@d@t {\the\act@mod }\fi }
+
+\def \put@tie {% deposit ties between characters
+\setbox0 \hbox {\char \the\act@tie }%
+\setbox2 \hbox {\char \the\act@tie \/}%
+\ifdim \a@disp = \z@ \unhcopy0
+\else \raise\a@disp \hbox {\unhcopy0 }\fi
+\advance\a@disp \wd2 \advance\a@disp -\wd0 }
+
+\def \set@high@act {% prepare raising of actual character
+\advance \a@disp \a@dsp \@high@acttrue }
+
+\def \set@low@act {% lower actual character
+\advance \a@disp -.25ex }
+
+\def \set@loww@act {% lower actual character
+\advance \a@disp -.50ex }
+
+\def \set@lowww@act {% lower actual character
+\advance \a@disp -.75ex }
+
+\def \fix@act@box {% fixup position and set tatwil
+\if@high@act \advance\a@disp -\a@dsp \@high@actfalse \fi
+\advance\a@min@dp \a@ic \advance\a@disp \a@ic
+\if@tat \put@tat \@tatfalse \fi }
+
+\def \put@tat {% deposit a keshide
+\dimen@ \a@disp \advance\dimen@ \tat@ht \nobreak \hskip-\tat@wd
+\leaders \hrule height\dimen@ depth-\a@disp \hskip\tat@skip \hskip-\tat@wd }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \put@b@x #1{% evaluate the argument
+\edef \t@mp {\nxp\put@box {\char #1}}\t@mp }
+
+\def \put@box #1{% pack and get dimensions, also ic and baseline skew
+\setbox0 \hbox {#1\/}\global\a@ic \wd0
+\global\setbox \ab@x \hbox{#1}% put into box
+\global\a@ht \ht\ab@x \global\a@wd \wd\ab@x
+\global\a@dp \dp\ab@x \global\advance \a@ic -\a@wd
+\a@adj@lo \a@min@dp
+\ifnum \a@min > 0 \global\a@min@dp \a@dp \global\advance\a@min -1
+\else \global\a@min@dp \z@ \fi }
+%\global\a@sk -\a@skew\a@wd
+%\ifa@sk \global\a@skfalse \else \global\a@sk -\a@sk \fi }
+
+\def \dep@sitb@x {% put contents into output, unpack if possible
+\ifhbox \ab@x \ifdim \a@disp = \z@ \unhbox \ab@x
+ \else \raise\a@disp \hbox {\unhbox\ab@x }%
+ \fi
+\else \global\advance \a@ht \a@disp \global\advance \a@dp -\a@disp
+ \ht\ab@x \a@ht \dp\ab@x \a@dp \box \ab@x
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \put@mod #1+#2*{% put modifier onto contents of "\ab@x" % m1 + m2 *
+ \global\red@mod 0#1\relax
+ \ifnum 0#1> 9 \global\advance \red@mod -10 \relax \fi
+\ifnum 0#2= \c@kasra \xpa\a@putkasra \xpa{\the\red@mod }\else
+\ifnum 0#2= \c@kasratan \xpa\a@putkasratan \xpa{\the\red@mod }\else
+ \ifcase \red@mod
+ \relax \or \put@shadda \or
+ \put@hamza \or \put@hamza \put@shadda \or
+ \put@madda \or \put@hamzalo \or
+ \fi
+ \put@voc 0#2*%
+\fi \fi }
+
+\def \a@putkasra #1{% modification at kasra % m1
+\ifcase 0#1\put@kasra \or \put@k@sra \put@shadda \or
+\put@ihamza \put@kasra \or \put@k@sra \put@hamza \put@shadda \or
+\put@madda \put@kasra \or \put@hamzalo \put@kasra \or
+\fi }
+
+\def \a@putkasratan #1{% modification at kasratan % m1
+\ifcase 0#1\put@kasratan \or \put@k@sratan \put@shadda \or
+\put@ihamza \put@kasratan \or \put@k@sratan \put@hamza \put@shadda \or
+\put@madda \put@kasratan \or \put@hamzalo \put@kasratan \or
+\fi }
+
+\def \put@k@sra {% high or low
+\ifk@sra \put@kasra \else \put@fatha \fi }
+
+\def \put@k@sratan {% high or low
+\ifk@sra \put@kasratan \else \put@fathatan \fi }
+
+\def \put@voc #1*{% put .harakAt % m2
+\ifcase 0#1\relax \or \put@sukun \or \put@fatha \or \put@kasra \or
+\put@damma \or \put@fathatan \or \put@kasratan \or \put@dammatan \or
+\put@zwarakay \or \put@wasla \or \put@fathaspec \or \put@kasraspec \or
+\put@ammad \or \put@fatha\put@kasra \or \put@barslo \or \put@kh@hamza \or
+\put@kl@hamza \or\put@kh@hamz@s \or \put@kl@hamz@s \or
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \put@ihamza {% hamza at <i> depending on carrier
+\ifnum \act@cd = \a@alif@iso \put@hamzalo \else
+\ifnum \act@cd = \a@alif@end \put@hamzalo \else
+\ifnum \act@cd = \a@lam@alif@iso \put@hamzalo \else
+\ifnum \act@cd = \a@lam@alif@end \put@hamzalo \else
+ \put@hamza
+\fi\fi\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@one@up {\char \a@one@dot@up }
+
+\def \a@two@up {\char \a@two@dots@up }
+
+\def \a@twov@up {\setbox0 \hbox {\char \a@one@dot@up }%
+\setbox2 \hbox {\char \a@one@dot@up }\dimen@ .6\ht2
+\advance \dimen@ -.4\dp0 \ht2 \dimen@ \advance \dimen@ \dp0
+\vbox {\moveright \a@slant\dimen@ \box0 \nointerlineskip \box2 }}
+
+\def \a@three@up {\char \a@three@dots@up }
+
+\def \a@threev@up {\setbox0 \hbox {\char \a@three@dots@down }%
+\ht0 \dp0 \dp0 .5\dp0 \box0 }
+
+\def \a@four@up {\setbox0 \hbox {\char \a@two@dots@up }%
+\setbox2 \hbox {\char \a@two@dots@up }\dimen@ .6\ht2
+\advance \dimen@ -.4\dp0 \ht2 \dimen@ \advance \dimen@ \dp0
+\vbox {\moveright \a@slant\dimen@ \box0 \nointerlineskip \box2 }}
+
+\def \a@hamza@up {\setbox0 \hbox {\char \a@hamza }%
+\dp0 -\ht0 \box0 }
+
+\def \a@alif@up {\char \a@quran@alif }
+
+\def \a@ttah@up {\char \a@ttah@dia }
+
+\def \a@bow@up {\char\a@bow@dia }
+
+\def \a@madda@up {\setbox0 \hbox {\char \a@madda \kern .02em}\box0 }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@one@down {\char \a@one@dot@down }
+
+\def \a@two@down {\char \a@two@dots@down }
+
+\def \a@twov@down {\setbox2 \hbox {\char \a@one@dot@down }%
+\setbox0 \hbox {\char \a@two@dots@down }\dimen@ .6\dp0
+\setbox0 \hbox {\char \a@one@dot@down }% correct depth
+\advance \dimen@ -.4\ht2 \dp0 \dimen@ \advance \dimen@ \ht2
+\vbox {\moveright \a@slant\dimen@ \box0 \nointerlineskip \box2 }}
+
+\def \a@three@down {\setbox0 \hbox {\char \a@three@dots@down }%
+\dp0 .7\dp0 \box0 }
+
+\def \a@four@down {\setbox0 \hbox {\char \a@two@dots@down }%
+\setbox2 \hbox {\char \a@two@dots@down }\dimen@ .6\dp0
+\advance \dimen@ -.4\ht2 \dp0 \dimen@ \advance \dimen@ \ht2
+\vbox {\moveright \a@slant\dimen@ \box0 \nointerlineskip \box2 }}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \put@d@t #1{% evaluate the argument
+\edef \t@mp {\nxp\put@dot {#1}}\t@mp }
+
+\def \put@dot #1{% modify character skeleton
+\ifcase 0#1%
+\relax \or % 0
+% . .. ^
+% 1 --- 2 --- 3 --- 4 --- 5 --- 6 ---
+% . .. v
+\put@hi {\a@one@up }\or % 1
+\put@hi {\a@two@up }\or % 2
+\put@hi {\a@three@up }\or % 3
+\put@lo {\a@one@down }\or % 4
+\put@lo {\a@two@down }\or % 5
+\put@lo {\a@three@down }\or % 6
+% c b . u
+% 7 --- 8 --- 9 --- 10 --- 11 --- 12 ---
+% : . 6
+\put@hi {\a@hamza@up }\or % 7
+\put@hi {\a@ttah@up }\or % 8
+\put@lo {\a@twov@down }\or % 9
+\put@hi {\a@one@up }\put@lo {\a@one@down }\or % 10
+\put@lo {\char\a@h@dia }\or % 11
+\put@hi {\a@bow@up }\or % 12
+% u : v ::
+% 13 --- 14 --- 15 --- 16 --- 17 --- 18 ---
+% u .. ::
+\put@lo {\a@bow@up }\or % 13
+\put@lo {\a@two@down }\put@hi {\a@bow@up }\or % 14
+\put@hi {\a@twov@up }\or % 15
+\put@hi {\a@threev@up }\or % 16
+\put@hi {\a@four@up }\or % 17
+\put@lo {\a@four@down }\or % 18
+% 9 | b ^ . ^
+% 19 --- 20 --- 21 --- 22 --- 23 --- 24 ---
+% . v v .
+\put@hi {\char\a@damma }\or % 19
+\put@hi {\a@alif@up }\or % 20
+\put@hi {\a@ttah@up }\put@lo {\a@one@down }\or % 21
+\put@hi {\a@three@up }\put@lo {\a@three@down }\or % 22
+\put@hi {\a@one@up }\put@lo {\a@three@down }\or % 23
+\put@hi {\a@three@up }\put@lo {\a@one@down }\or % 24
+% ^ C
+% 25 --- 26 --- 27 --- 28 --- 29 --- 30 ---
+% H C
+%
+\put@hi {\char\a@roof }\or % 25
+\put@lo {\char\a@bars }\or % 26
+\put@hi {\char\a@hamz@s}\or % 27
+\put@lo {\char\a@hamz@s}\or % 28
+ \put@hi {\char 2 }\or % illegal
+\else \put@hi {\char 2 }\or % illegal
+\fi}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \put@hi #1{% deposit upper modifier, slanted
+\setbox\dia@box \hbox to \z@ {\hss #1\hss }%
+\dia@dy \a@ht \hi@dia \put@upper }
+
+\def \put@acc@hi #1{% deposit upper accent
+\ifacc@hi \a@adj@hi \acc@hi \fi
+\setbox\dia@box \hbox to \z@ {\hss #1\hss }%
+\dia@dy \a@ht \a@ubox@u \put@upper }
+
+\def \put@lo #1{% deposit lower modifier, slanted
+\setbox\dia@box \hbox to \z@ {\hss #1\hss }%
+\a@adj@lo \a@min@dp \dia@dy \a@dp \lo@dia \put@lower }
+
+\def \put@acc@lo #1{% deposit lower accent
+\ifacc@hi \a@adj@lo \acc@lo \fi
+\setbox\dia@box \hbox to \z@ {\hss #1\hss }%
+\dia@dy \a@dp \a@lbox@d \put@lower }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \hi@dia {% position of upper diacritic
+\ifcase \dia@mod \relax
+\a@ubox@u \or \a@ubox@d \or \a@ubox@u \or
+\a@ubox@d \or \a@ubox@u \or \a@ubox@d \or
+\a@ubox@c \or \a@ubox@c \or \a@ubox@c \or
+\fi }
+
+\def \lo@dia {% position of lower diacritic
+\ifcase \dia@mod \relax
+\a@lbox@d \or \a@lbox@d \or \a@lbox@u \or
+\a@lbox@u \or \a@lbox@c \or \a@lbox@c \or
+\a@lbox@d \or \a@lbox@u \or \a@lbox@c \fi }
+
+\def \a@adj@hi #1{% adjustment of box height
+\dimen@ #1\advance\dimen@ -\a@disp
+\ifdim \dimen@ > \a@ht \advance\dimen@ -\a@ht
+ \global\advance\a@ht \dimen@ \global\setbox\ab@x \vbox
+ {\kern\dimen@ \nointerlineskip
+ \ifvbox\ab@x \unvbox\ab@x \else \box\ab@x \fi }\fi }
+
+\def \a@adj@lo #1{% adjustment of box depth
+\dimen@ #1\advance\dimen@ \a@disp
+\ifdim \dimen@ > \a@dp \advance\dimen@ -\a@dp
+ \global\advance\a@dp \dimen@ \global\setbox\ab@x \vbox
+ {\ifvbox\ab@x \unvbox\ab@x \else \box\ab@x \fi
+ \nointerlineskip \kern\dimen@ }\fi }
+
+\def \a@ubox@u {% upper box above
+\dimen@ \ht\dia@box \advance\dimen@ \dp\dia@box
+\advance\dia@dy .5\dimen@ \global\advance \a@ht \dimen@ }
+
+\def \a@ubox@d {% upper box lowered
+\dimen@ \ht\dia@box \advance\dimen@ \dp\dia@box
+\advance\dia@dy -.5\dimen@ \dp\dia@box -\ht\dia@box }
+
+\def \a@ubox@c {% upper box centered
+\dimen@ .5\ht\dia@box \advance\dimen@ .5\dp\dia@box
+\global\advance \a@ht \dimen@
+\advance\dimen@ -\ht\dia@box \dp\dia@box \dimen@ }
+
+\def \a@lbox@d {% lower box below
+\dimen@ \ht\dia@box \advance\dimen@ \dp\dia@box
+\advance \dia@dy .5\dimen@ \global\advance \a@dp \dimen@ }
+
+\def \a@lbox@u {% lower box raised
+\dimen@ \ht\dia@box \advance\dimen@ \dp\dia@box
+\advance \dia@dy -.5\dimen@ \ht\dia@box -\dp\dia@box }
+
+\def \a@lbox@c {% lower box centered
+\dimen@ \ht\dia@box \advance\dimen@ \dp\dia@box
+\advance \dia@dy -.5\dimen@ \advance \dia@dy -.75\a@dp
+\advance\dimen@ -2\ht\dia@box \advance\dimen@ 1.5\a@dp
+\dp\dia@box .4\dimen@ \ht\dia@box -\dp\dia@box }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \put@upper {\dia@dx \a@slant\dia@dy \advance\dia@dx .5\a@wd
+\advance\dia@dx \dia@hadj\a@dx \global\setbox\ab@x \vbox
+{\moveright\dia@dx \box\dia@box \nointerlineskip
+\ifvbox\ab@x \unvbox\ab@x \else \box\ab@x \fi }\wd\ab@x \a@wd }
+
+\def \put@lower {\dia@dx -\a@slant\dia@dy \advance\dia@dx .5\a@wd
+\advance\dia@dx \dia@hadj\a@dx \global\setbox \ab@x \vbox
+{\ifvbox\ab@x \unvbox\ab@x \else \box\ab@x \fi
+\nointerlineskip \moveright\dia@dx \box\dia@box }\wd\ab@x \a@wd }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\iffalse % cf. aparse.sty
+\chardef \c@shadda = 1 \chardef \c@hamza = 2
+\chardef \c@hamzalow = 3 \chardef \c@madda = 4
+\chardef \c@high = 10
+
+\chardef \c@sukun = 1 \chardef \c@fatha = 2
+\chardef \c@kasra = 3 \chardef \c@damma = 4
+\chardef \c@fathatan = 5 \chardef \c@kasratan = 6
+\chardef \c@dammatan = 7 \chardef \c@zwarakay = 8
+\chardef \c@wasla = 9 \chardef \c@fathaspec = 10
+\chardef \c@kasraspec = 11 \chardef \c@ammad = 12
+\chardef \c@kas@fath = 13 \chardef \c@bars = 14
+\chardef \c@kh@hamza = 15 \chardef \c@kl@hamza = 16
+\chardef \c@kh@hamzl = 17 \chardef \c@kl@hamzl = 18
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/acjk.sty b/language/arabic/arabtex/texinput/acjk.sty
new file mode 100644
index 0000000000..ae8ff4bce2
--- /dev/null
+++ b/language/arabic/arabtex/texinput/acjk.sty
@@ -0,0 +1,33 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% acjk.sty
+% for CJK compatibility of ArabTeX
+% or rather the other way around
+% 24.10.1998
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ifx \CJK \undefined \else
+
+\chardef \acjkatcode = \catcode`\@ \catcode`\@ = 11
+\a@ident {acjk.sty} {3.08 ArabTeX extensions for CJK} {24.10.1998}
+
+\ifx \CJK \undefined \else
+\global\def\CJK@input#1{
+ \makeatletter
+ \edef\CJK@lscode{\noexpand\catcode`<\the\catcode`<}
+ \catcode `< 12
+ \endlinechar \m@ne
+ \input #1\relax
+ \endlinechar `\^^M
+ \CJK@lscode
+ \makeatother}
+\fi
+
+\catcode`\@ = \acjkatcode
+\fi
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+
+
diff --git a/language/arabic/arabtex/texinput/acmd.sty b/language/arabic/arabtex/texinput/acmd.sty
new file mode 100644
index 0000000000..10cf141cae
--- /dev/null
+++ b/language/arabic/arabtex/texinput/acmd.sty
@@ -0,0 +1,335 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% acmd.sty
+% ArabTeX command processing
+% 20.08.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {acmd.sty} {3.11 Arabic command processing } {20.08.2003}
+
+\def \a@command #1{% process an internal command
+\iftest@command \tracingmacros 1 \fi
+ \def@@cmd #1\xpa
+\ifx \the\a@@cmd \relax % no special handling?
+ \if\is@in@set #1\a@@listreg
+% \def \next {\xpa \test@token #1}\else
+ \def \next {\xpa \arab@tail #1}\else
+ \if\is@in@set #1\a@@listzero
+ \unarab@codes \def \next {#1\arab@tail }\else
+ \if\is@in@set #1\a@@listone
+ \unarab@codes \def \next ##1{#1{##1}\arab@tail }\else
+ \if\is@in@set #1\a@@listtwo
+ \unarab@codes \def \next ##1##2{#1{##1}{##2}\arab@tail }\else
+ \def \next {\a@cmderr #1}% disallowed
+ \fi\fi\fi\fi
+\else \def \next {\the\a@@cmd }% local routine
+\fi \next }
+
+\def \a@cmderr #1{% complain and substitute a dummy command
+ \errhelp {Your command will be echoed in the output}%
+\ifx #1\undefined \def \next {\a@puttt #1\test@token }%
+ \errmessage {Unknown arabic command: \nxp #1}%
+\else \errmessage {Illegal arabic command: \nxp #1}%
+ \a@@cmd = {{\a@puttt #1\arab@tail }}
+ \immediate\openout \a@@err = \jobname.err
+ \immediate\write \a@@err {\string \gdef \string \next \space
+ \xpa \a@@pat \meaning #1:->\pat@end \the\a@@cmd }% substitution
+ \immediate\closeout \a@@err
+ {\catcode `\@=11 \input \jobname.err }%
+\fi \next }
+
+\def \def@@cmd #1{% define \a@@cmd as \a@c@#1
+\ifcat \nxp #1\nxp ~%
+\global\a@@cmd = \xpa {\csname a@c@\string #1\endcsname }\else
+\global\a@@cmd = \xpa {\csname a@c@\xpa \@gobble \string #1\endcsname }\fi }
+
+\def \arab@tail {\arab@codes \set@arabfont \test@token }
+
+\def \a@@pat #1:#2->#3\pat@end {#2}
+
+\def \a@puttt #1{\putwordb@x {\tt \string #1}}
+
+%%%%%%%%%%%%%%%%%%%%%% enable internal commands %%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newtoks \a@@listzero \newtoks \a@@listone
+\newtoks \a@@listtwo \newtoks \a@@listreg
+
+\long\def \a@@addcmd #1#2{% #1 cmd, #2 list
+\global #2 = \xpa {\the #2#1}}
+
+\long\def \all@wcmd #1{% enable parameterless command in arabic environment
+\a@@addcmd #1\a@@listzero }
+
+\long\def \all@w@ne #1{% enable command with 1 param in arabic environment
+\a@@addcmd #1\a@@listone }
+
+\long\def \all@wtw@ #1{% enable command with 2 params in arabic environment
+\a@@addcmd #1\a@@listtwo }
+
+\long\def \all@wif #1{% enable \#1true, \#1false
+\a@@name = \xpa \xpa \xpa {\xpa \@gobble \string #1}%
+\xpa \all@wcmd \csname \the\a@@name true\endcsname
+\xpa \all@wcmd \csname \the\a@@name false\endcsname }
+
+\long\def \all@whcmd #1{% enable command for horizontal mode
+\def@@cmd #1\all@wcmd #1%
+\xpa \def \the\a@@cmd {\putwordb@x {\leavevmode #1}\test@token }}
+
+\long\def \all@wvcmd #1{% enable command for vertical mode
+\def@@cmd #1\all@wcmd #1%
+\xpa \def \the\a@@cmd {\a@@par #1\test@token }}
+
+%%%%%%%%%%%%%%%%%%%%%% enable command definitions %%%%%%%%%%%%%%%%%%%%%%%%
+
+\long\def \allowarab #1{% enable new command in arabic environment
+\a@@addcmd #1\a@@listreg }
+
+\def \a@@def #1#2#3#4{% define command in RL mode
+\allowarab #2#1#2#3{#4}\test@token }
+
+\def \a@c@def #1#2#{\a@@def \def {#1}{#2}}
+
+\def \a@c@edef #1#2#{\a@@def \edef {#1}{#2}}
+
+\def \a@c@gdef #1#2#{\a@@def \gdef {#1}{#2}}
+
+\def \a@c@xdef #1#2#{\a@@def \xdef {#1}{#2}}
+
+%%%%%%%%%%%%%%%%%%%%%% enable ArabTeX commands %%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\all@wcmd \novocalize \all@wcmd \vocalize \all@wcmd \fullvocalize
+\all@wcmd \setnash \all@wcmd \setnashbf \all@wcmd \setnastaliq
+\all@wcmd \setarab \all@wcmd \setmaghribi \all@wcmd \setfarsi
+\all@wcmd \setturk \all@wcmd \setkurdish \all@wcmd \setbalut
+\all@wcmd \seturdu \all@wcmd \setpashto \all@wcmd \setverb
+\all@wcmd \yahdots \all@wcmd \yahnodots \all@wcmd \oldtanwin
+\all@wcmd \newtanwin \all@wcmd \accentshigh \all@wcmd \accentslow
+\all@wcmd \oldhamza \all@wcmd \newhamza \all@w@ne \setarabfont
+\all@w@ne \setcode \all@wcmd \endsetcode \all@wcmd \setuighur
+\iffalse
+\all@w@ne \input \all@w@ne \end
+\all@wcmd \relax \all@wcmd \indent \all@wcmd \noindent
+\all@w@ne \emphasize \all@wtw@ \footnote \all@w@ne \marginpar
+\all@w@ne \docommand \all@wtw@ \doassign \all@w@ne \mbox
+\all@w@ne \centerline \all@w@ne \spreadline \all@wtw@ \spreadbox
+\all@wcmd \nospace \all@w@ne \hspace \all@w@ne \tracingmacros
+\fi
+
+\all@wif \arab \all@wif \trans \all@wif \show
+\all@wif \spread \all@wif \ligs \all@wif \RL
+
+\all@whcmd \bigskip \all@whcmd \medskip \all@whcmd \smallskip
+\all@whcmd \hfill \all@whcmd \hfil \all@whcmd \space
+\all@whcmd \hss
+
+\ifx \LaTeX \undefined
+\all@wvcmd \bigskip \all@wvcmd \medskip \all@wvcmd \smallskip
+\fi
+
+\all@wvcmd \newpage \all@wvcmd \clearpage
+\all@wvcmd \vfil \all@wvcmd \vfill
+
+
+%%%%%%%%%%%%%%%%%%% special characters %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@spec@def #1#2{% define routine for special character
+\def@@cmd #1\xpa \gdef \the\a@@cmd {#2}}
+
+\def \a@@chardef #1{\begingroup \lccode `\0 #1\lowercase
+{\endgroup \ifarab \putwordb@x {\a@rabwrite {0}}\fi
+\a@showinput {0}}\obey@space }
+
+\a@spec@def \#{\a@@chardef {`\#}} \a@spec@def \${\a@@chardef {`\$}}
+\a@spec@def \%{\a@@chardef {`\%}} \a@spec@def \&{\a@@chardef {`\&}}
+\a@spec@def \^{\a@@chardef {`\^}} \a@spec@def \_{\a@@chardef {`\_}}
+
+\a@spec@def \ {\a@spacefalse \putwordb@x {\arab@space }\test@token }
+
+\def \a@c@arabchar #1{% single character in the font
+\ifarab \putwordb@x {\char #1}\fi \a@showinput {\arabchar #1}\obey@space }
+
+\def \a@c@char {% read char number
+\begingroup \afterassignment \a@@char \count0=}
+
+\def \a@@char {% deposit character
+\edef \a@ch@r {\noexpand\a@c@arabchar {\the\count0}}%
+\xpa\endgroup \a@ch@r }
+
+%%%%%%%%%%%%%%%%%%% miscellaneous commands %%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@end {\end } \def \a@c@relax {\test@token }
+
+\def \a@c@par {\a@@par \test@token }
+
+\def \a@c@indent {\arab@indent \test@token }
+
+\def \a@c@noindent {\arab@noindent \test@token }
+
+\def \a@c@input {% \input inside arabic environment, Plain version
+\xpa \test@token \input }
+
+\def \a@c@doassign #1#2{% execute assignment
+#1#2\relax \test@token }
+
+\def \a@c@docommand #1{% expand and process user command
+\xpa \test@token \xpa {#1} }
+
+\def \a@c@bf {\setnashbf \arab@tail }
+\def \a@c@rm {\setnash \arab@tail }
+
+\def \a@c@today {\xpa \a@c@mbox \xpa {\a@@today }}
+
+\edef \a@@today {\number\day \space \ifcase\month\or
+yanAyir \or febrAyir \or mAris \or 'abrIl \or
+mAyU \or yUniyU \or yUliyU \or 'a.gus.tus \or
+sibtambar \or 'uktUbar \or nUfambar \or disambar \fi ,
+\number\year}
+
+\def \a@c@protect {\test@token }
+
+\long\def \a@c@cond #1#2#3\fi {% call conditional
+#1\ReturnElseFi {\test@token #2}%
+\else \ReturnFi {\test@token #3}\fi }
+
+\def \a@c@endinput {\endinput \test@token }
+
+%%%%%%%%%%%%%% \begin ... \end {romantext} %%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@romantext {% end Arabic mode and switch down (!) to Roman
+\endgroup \endarabtext \endgroup
+\def \@currenvir {romantext}\let \end \a@r@end \ignorespaces }
+
+\def \endromantext {% switch up (!) to Arabic mode
+\endgraf
+\def \@currenvir {document}\begingroup
+\def \@currenvir {arabtext}\arabtext }
+
+\let \a@l@end \end % save current meaning of \end
+
+\def \a@r@end #1{% new \end for the base level
+\def \@romantext {romantext}\def \@tempa {#1}%
+\ifx \@tempa \@romantext \let \@tempa \endromantext
+\else \def \@tempa {\a@l@end {#1}}%
+\fi \@tempa }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% boxes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@centerline #1{% new line, centered
+\a@@par \centerline {\a@showinput {#1}}%
+\ifarab \putwordb@x {\hss \a@sequence {#1}\hss }\a@put@line
+\fi \test@token }
+
+\def \a@c@spreadline #1{% new line, spread out
+\a@@par \initlineb@x \centerline {\a@showinput {#1}}%
+\ifarab \putwordb@x
+{\spreadtrue \a@sequence {#1}\setbox0 \lastbox \unhbox0 }\a@put@line
+\fi \test@token }
+
+\def \a@c@mbox #1{% put the argument into a box
+\ifarab \putwordb@x {\a@sequence {#1}}\fi
+\a@spacefalse \a@showinput {#1}\test@token }
+
+\def \a@c@spreadbox {% {width}{text} put the text into a box
+\unarab@codes \a@@spreadbox }
+
+\def \a@@spreadbox #1{% {width}{text} get the width
+\def \a@bwidth {#1}\arab@codes \a@spreadbox }
+
+\def \a@spreadbox #1{% {width}{text} get the text
+\ifarab \putwordb@x {\spreadtrue
+\setspace {3pt plus .3fil}%
+\a@sequence {#1}%
+\setbox0 \lastbox \hbox to \a@bwidth {\unhbox0 }}\fi
+\a@spacefalse \a@showinput {#1}\test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% spacing %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@nospace {% concatenate neighboring items
+\a@spacefalse \test@token }
+
+\let \nospace \relax
+
+\def \a@c@hspace {% horizontal space
+\unarab@codes \a@@hspace }
+
+\def \a@@hspace #1{% get argument
+\a@spacefalse \ifarab \putwordb@x {\hskip #1\relax }\fi
+\arab@codes \test@token }
+
+\def \a@c@pagebreak
+{\a@@par \@ifnextchar [{\a@@pagebreak }{\a@@pagebreak [4]}}
+
+\def \a@@pagebreak [#1]{\pagebreak [#1]\test@token }
+
+\def \a@c@hskip {\afterassignment \a@hskip \dimen0=}
+
+\def \a@hskip {\putwordb@x {\hskip \dimen0 }\test@token }
+
+\def \a@c@vskip {\afterassignment \a@vskip \dimen0=}
+
+\def \a@vskip {\a@@par \vskip \dimen0 \test@token }
+
+\def \a@c@vspace {% vertical space
+\unarab@codes \a@@vspace }
+
+\def \a@@vspace #1{% get argument
+\ifarab \a@@par \vskip #1\relax \fi
+\arab@codes \test@token }
+
+\def \a@c@break {\a@put@line \test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% emphasis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@emphasize {% get next token
+\def \next@command {\arab@em}%
+\futurelet \next@token \test@space }
+
+\def \arab@em #1 {% overstrike group
+\def \next@command {\test@special}%
+\ifarab \setbox0 \hbox {\a@sequence {#1}}%
+ \putwordb@x {\vbox {\hrule \kern 1pt \box0}}%
+\fi
+\ifshow {\tt \string \emphasize \ }%
+\if \bgroup \nxp \next@token \a@@verb {{#1}}\else \a@@verb {#1}%
+\fi\fi
+\iftrans \underbar {{\set@transfont \trans@text #1 \end }}%
+\fi \test@token }
+
+%%%%%%%%%%%%%%%%%%% \footnote in an arabic environment %%%%%%%%%%%%%%%
+
+\def \a@c@footnote #1{% Plain TeX arabic footnote
+\rm \parindent \a@parindent \unarab@codes \def \@foot
+{\unskip \strut \egroup \arab@codes \set@arabfont \test@token }%
+\putwordb@x {#1}\a@spacetrue \vfootnote {#1}}
+
+%%%%%%%%%%%%%%%%%% \marginpar in an arabic environment %%%%%%%%%%%%%%%
+
+\def \a@c@marginpar {% for Arabic environments only
+\setbox0 \vtop \bgroup \unarab@codes \a@@marginpar }
+
+\long \def \a@@marginpar #1{% get text of note
+\hsize \marginparwidth \parskip 0pt \raggedright
+\noindent \rm \strut #1\vss \egroup \dp0 \z@
+\setbox\lineb@x \hbox {\unhbox\lineb@x
+\rlap {\hskip \marginparsep \box0 \hss }}\test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\all@w@ne \settrans
+
+\def \a@c@tracingmacros {\afterassignment \test@token \tracingmacros=}
+
+\def \a@c@test #1{\csname test@#1true\endcsname \test@token }
+
+\def \a@c@untest #1{\csname test@#1false\endcsname \test@token }
+
+\a@spec@def \<{\a@get@ins }
+
+\def \a@get@ins #1>{\test@token #1 }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/aconfig.sty b/language/arabic/arabtex/texinput/aconfig.sty
new file mode 100644
index 0000000000..fa3cf81b0d
--- /dev/null
+++ b/language/arabic/arabtex/texinput/aconfig.sty
@@ -0,0 +1,95 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aconfig.sty
+% determine the configuration for ArabTeX
+% 26.04.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%\a@ident {aconfig.sty}{3.11 get ArabTeX configuration } {26.04.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%% check environment %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@@Plain {Plain} \def \a@@LaTeX {LaTeX}
+\def \a@@LaTeXiizix {LaTeX2.09} \def \a@@LaTeXiie {LaTeX2e}
+\def \a@@EDMAC {EDMAC} \def \a@@EDMACiii {EDMAC3.00}
+\def \a@@EDMACiiixv {EDMAC3.15}
+\def \a@config {aconfig} \def \a@sty {sty}
+
+\def \UsePackage #1{\input {#1.sty}}
+
+\ifx \undefined \LaTeX \let \a@@env \a@@Plain
+ \wlog {Plain TeX detected }\let \a@@var \a@@Plain
+ \newcount \@listdepth \@listdepth \z@
+ \newdimen \linewidth \linewidth \hsize
+\else \let \a@@env \a@@LaTeX
+\ifx \undefined \NeedsTeXFormat
+ \wlog {LaTeX 2.09 detected }\let \a@@var \a@@LaTeXiizix
+\else \wlog {LaTeX2e detected }\let \a@@var \a@@LaTeXiie
+ \listfiles
+ \ifx \undefined \xpt \def \UsePackage {\usepackage }
+ \fi
+\fi\fi
+
+\ifx \edmacloaded \relax \let \a@@env \a@@EDMAC
+\ifx \end@lemmas \undefined
+ \wlog {EDMAC 3.00 detected }\let \a@@var \a@@EDMACiii
+\else \wlog {EDMAC 3.15 or later detected }\let \a@@var \a@@EDMACiiixv
+\fi\fi
+
+\ifx \undefined \originalTeX \else
+ \wlog {BABEL detected}\def \a@babel {BABEL}%
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%% module reporting %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcount \a@moduledate \newcount \a@maindate \a@maindate 0
+\def \arabtexconfig {$ArabTeX configuration:$}%
+
+\def \a@LaTeXdate #1#2#3#4#5#6#7#8{% fixed Y2k problem !!
+#1#2#3#4/#5#6/#7#8}% standard format
+
+\def \a@getstem #1.#2\relax {\def \a@stem {#1}\def \a@ext {#2}}
+
+\def \a@geteight #1#2#3#4#5#6#7#8#9\relax % pad to 8 characters
+{\def \a@eight {#1#2#3#4#5#6#7#8}\xpa \a@getpad \a@eight\space..\relax }
+
+\def \a@getpad #1.#2.#3\relax {\def \a@pad {#2}}
+
+\def \a@newdate #1.#2.#3.#4\@{\a@moduledate 0#3\relax
+\ifnum \a@moduledate < 100 \advance \a@moduledate 1900
+\message {^^J*** fix date (\a@@date ) of module \a@@module ! ***^^J^^J}%
+\ifnum \a@moduledate < 1990 \advance \a@moduledate 100
+\fi\fi
+\multiply \a@moduledate 100 \advance \a@moduledate 0#2
+\multiply \a@moduledate 100 \advance \a@moduledate 0#1 }
+
+\def \a@report {% identify actual run
+\typeout {Arabic processor `ArabTeX' [\number\a@maindate \space
+patch level \a@patchlevel ]}}
+
+\def \a@ident #1#2#3{% report loaded modules
+\def \a@@module {#1}\edef \a@@date {#3}%
+\xpa\a@newdate \a@@date ...\@ % format date of module
+\ifnum \a@moduledate > \a@maindate \a@maindate \a@moduledate \fi
+\edef \a@descr {\xpa \a@LaTeXdate \the\a@moduledate \space\space #2}
+\a@getstem #1\relax
+\ifx \a@@var \a@@LaTeXiie
+ \ifx \a@stem \a@config \else
+ \ifx \a@ext \a@sty \ProvidesPackage {\a@stem }[\a@descr ]%
+ \fi
+ \fi
+\else \message {#2} \message {(#3)}
+\fi
+\xpa \a@geteight \a@stem.\space\space\space\space\space\space\relax
+\edef \arabtexconfig {\arabtexconfig $\a@pad #1 \space\a@descr }}
+
+\a@ident {aconfig.sty}{3.08 get ArabTeX configuration } {01.11.1998}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/texinput/aedpatch.sty b/language/arabic/arabtex/texinput/aedpatch.sty
new file mode 100644
index 0000000000..17ae709d35
--- /dev/null
+++ b/language/arabic/arabtex/texinput/aedpatch.sty
@@ -0,0 +1,220 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aedpatch.sty
+% patches for EDMAC to operate with ArabTeX
+% 19.03.93 2.07 EDMAC 3.00
+% 19.06.94 3.02 EDMAC 3.15 compatible
+% \pstart, \pend, \autopar within Arabic
+% 06.05.97 3.05 bug fixes, works with EDMAC 3.17
+% 05.07.97 3.06 for edmacfss.sty
+% 22.01.98 3.06a fixed parafootnote format
+% 07.02.98 3.06a fixed parafootnote format for LaTeX
+% 08.07.98 3.07 new ArabTeX version
+% 10.04.99 3.08 fixed spurious space
+% 20.08.03 3.11 cleanup
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \aedatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \aedatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {aedpatch.sty} {3.11 ArabTeX extensions for EDMAC} {20.08.2003}
+
+\def \tr@ce@n {\tracingmacros 0}
+
+\def \tr@ce@ff {\edef \tr@ce@n
+ {\nxp\tracingmacros \the\tracingmacros }\tracingmacros 0}
+\let \tr@ce@n \relax
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% modify some EDMAC commands in a compatible way
+
+\long \def \text #1#2/{% inside Roman text
+% depends on EDMAC version used
+\leavevmode
+\begingroup \no@expands
+ \xdef\@tag{#1}%
+ \set@line \global\insert@count=0
+ \ignorespaces #2\relax \flag@start
+\endgroup
+#1%
+\a@end@lemma
+\flag@end }
+
+\def \a@end@lemma {% for EDMAC 3.00 and EDMAC 3.15
+\ifx \end@lemma \undefined % as in EDMAC 3.15 - 3.17
+ \ifx\end@lemmas\empty \else
+ \gl@p\end@lemmas\to\x@lemma
+ \x@lemma
+ \global\let\x@lemma=\relax
+ \fi
+\else \the\end@lemma % defined or EDMAC 3.00
+\fi }
+
+\def \lemma #1{% in argument of \text
+% care for delayed expansion of some ArabTeX commands
+ \begingroup \def \protect {\noexpand \protect \noexpand }%
+ \xdef\@tag{#1}%
+ \endgroup \ignorespaces }
+
+\def \do@line {% break off a line from \raw@text
+ {\vbadness=10000 \splittopskip=0pt
+ \advance \baselineskip 1ex
+% guard against some overfull \vboxes !
+% Arabic lines have a greater height and depth
+ \global \setbox\one@line
+ \vsplit \raw@text to \baselineskip }%
+ \unvbox\one@line \global \setbox\one@line \lastbox \getline@num
+ \hbox to \hsize {\affixline@num {\hfil
+ \hbox to \wd\one@line {\new@line \unhbox\one@line }}}%
+ \add@inserts
+ \add@penalties }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% variants for use inside an Arabic environment
+
+\def \<#1>{\RL{#1}} % allow long insertions
+
+{\catcode `< \active
+\gdef <#1>{\RL{#1}}} % allow long insertions
+
+\def \a@c@text {% internal version of \text
+% parameters will have the original catcodes
+\tr@ce@n \leavea@vmode \unarab@codes \begingroup
+\tr@ce@ff \rm \tr@ce@n \a@@text }
+
+\long \def \a@@text #1{% auxiliary routine
+% to kill leading blanks and remove spurious braces from #2
+\def \next@command {\a@@@text {#1}}%
+\futurelet \next@token \test@space }
+
+\def \a@append #1{% to the \lineb@x
+\setbox \lineb@x \hbox {\unhbox \lineb@x #1}}
+
+\def \a@get@text #1\@@ {% get flags and lemma
+\a@append {\flag@start }\a@@Linsert {#1}}
+
+\def \a@put@text {% unpack \Linsertb@x
+\a@Lunpack \putwordb@x {\ins@skip }}
+
+\long \def \a@@@text #1#2/{% inside arabic enviroment:
+% stay in vertical mode, put the text into a \hbox
+% and deposit the box *and* the \writes in the Arabic line
+ \no@expands
+ \def \next@command {\test@special}%
+ \xdef \@tag{#1}\set@line \global\insert@count=0
+ \aftergroup \a@get@text
+ % prepare for collecting any side effects of #2
+ \ignorespaces #2\relax
+\endgroup
+ #1\a@end@lemma \@@ % close the text
+ \a@put@text \a@append {\flag@end }%
+ \arab@codes \a@spacetrue
+\tr@ce@ff \test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@label #1{% outside the arguments of \text
+% hide the \write commands inside a box in the Arabic line
+% otherwise \do@line will not find the correct line breaks
+ \do@labelsfile
+ \ifx \labelref@list \empty \xdef \label@refs {\zz@@@ }%
+ \else \gl@p \labelref@list \to \label@refs
+ \fi
+ \edef \next {\write\@aux {\string\make@labels \label@refs|{#1}}}%
+ \global \setbox \wordb@x \hbox
+ {\write\linenum@out {\string\@lab }\next }%
+ \put@word \test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\let \a@par \a@@par % save for \a@@everypar in \a@c@autopar
+
+\def \a@c@pstart {\pstart \test@token }
+
+\def \a@c@pend {\a@par \pend \a@par \test@token }
+
+\def \a@c@autopar {% use inside Arabic environment
+\ifnumbering \else \errmessage
+ {\string\autopar\space must be used within a numbered section}%
+ \beginnumbering
+\fi
+\a@@everypar= {\setbox0 = \box \lineb@x \let \next \test@token
+ \a@par \pstart % starts a group
+ \def \a@@par {\a@par \pend \a@par }%
+ \def \end {\a@par \pend \test@token \end }%
+ \a@@everypar= {}\arab@indent }%
+\a@spacefalse \test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% allow still more EDMAC commands in Arabic text also
+
+\all@w@ne \pageref \all@w@ne \lineref \all@w@ne \sublineref
+\all@w@ne \xpageref \all@w@ne \xlineref \all@w@ne \xsublineref
+\all@wtw@ \makelabel \all@wtw@ \xxref
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% fix some bugs in EDMAC (Plain TeX and LaTeX2e versions)
+
+\xpa\def \xpa\no@expands \xpa{\no@expands \let ~=0\relax }
+
+\ifx\selectfont\undefined
+
+\font \nashix =nash14 scaled 900
+\font \nashviii =nash14 scaled 800
+
+\xpa\def \xpa\eightpoint \xpa{\eightpoint % Arabic is higher
+\normalbaselineskip=15.99pt
+\setbox\strutbox=\hbox{\vrule height10pt depth6pt width0pt}%
+\normallineskiplimit -16pt
+\setarabfont \nashviii
+\normalbaselines \rm }
+
+\else
+\listfiles
+
+\def\notefontsetup{\rm\fontsize{8}{15.99pt}\selectfont
+\lineskiplimit -\baselineskip }
+
+\def \begin #1{% call \a@c@#1
+% enable local \end
+\@ifundefined {#1}%
+{\def \@tempa {\@latexerr {Environment #1 undefined}\@eha }}%
+{\def \@tempa {\def \@currenvir {#1}\csname #1\endcsname }}%
+\begingroup \let \end \a@l@end \@endpefalse \@tempa }
+
+\def \a@l@end #1{% call \end#1
+% local version of \end
+\csname end#1\endcsname \@checkend {#1}%
+\if@endpe \global \let \@gtempa \@doendpe
+\else \global \let \@gtempa \relax
+\fi \endgroup \@gtempa }
+
+\fi
+
+\interparanoteglue{1em plus2em minus.4em}
+% more stretch for Arabic text
+
+\ifx \LaTeX \undefined \else \listfiles \fi
+
+\def \end {\newlinechar `$\wlog {\arabtexconfig }\@@end }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \edmacloaded \relax
+ \ifx \selectfont \undefined
+ \let \notefontsetup \eightpoint
+ \fi
+ \footnormal{A} \footnormal{B} \footnormal{C}
+ \footnormal{D} \footnormal{E}
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\catcode`\@ = \aedatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/afonts.sty b/language/arabic/arabtex/texinput/afonts.sty
new file mode 100644
index 0000000000..675681bed7
--- /dev/null
+++ b/language/arabic/arabtex/texinput/afonts.sty
@@ -0,0 +1,52 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% afonts.sty
+% 18.07.91 1.0
+% 20.09.91 1.1 added NFSS macros (br)
+% 19.11.91 1.2 magstephalf
+% 24.12.91 1.3 format
+% 12.02.92 1.4 message delayed
+% 27.02.92 1.5 nash14 font
+% 31.08.93 1.6 added support for NFSS2, missing `pt' in NFSS1 def. (br)
+% 14.03.94 1.7 identify lfonts.tex or NFSS version used
+% 16.11.95 3.04 split into separate files
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally and Bernd Raichle
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% load this file only, if \pnash not defined
+
+\expandafter \ifx \csname pnash\endcsname \relax \else
+ \expandafter \endinput \fi
+
+\a@ident {afonts.sty} {3.04 define Naskh font } {16.11.1995}
+
+\def\nash {\protect\pnash}
+\def\nashbf {\protect\pnashbf}
+% select the nash font with \nash
+
+\expandafter\ifx\csname DeclareFontShape\endcsname\relax
+
+% If we are using the NFSS, Version 2, \DeclareFontShape
+% is defined.
+% (The \expandafter\ifx\csname...\endcsname\relax is necessary,
+% because the NFSS2 styleoptions use LaTeX's internal \@ifundefined
+% command.)
+
+\expandafter\ifx\csname selectfont\endcsname\relax
+
+% Now it's possible that NFSS, Version 1, is used.
+% If \selectfont is defined, NFSS is active, otherwise
+% we assume LaTeX's `lfonts.tex'.
+
+ % OLD FONT SELECTION
+ \UsePackage {afonts0}
+ \else % NEW FONT SELECTION -- Version 1
+ \UsePackage {afonts1}
+ \fi
+\else % NEW FONT SELECTION -- Version 2
+ \UsePackage {afonts2}
+\fi
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/afonts0.sty b/language/arabic/arabtex/texinput/afonts0.sty
new file mode 100644
index 0000000000..f5d8b7b416
--- /dev/null
+++ b/language/arabic/arabtex/texinput/afonts0.sty
@@ -0,0 +1,60 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% afonts0.sty
+% ArabTeX
+% load Naskh14 for old LateX
+% 16.11.95
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {afonts0.sty} {3.04 define Naskh font for old LaTeX} {16.11.1995}
+
+% OLD FONT SELECTION
+% load all necessary fonts
+
+\newfont {\tennash }{nash14}
+\newfont {\elvnnash}{nash14 scaled 1095}
+\newfont {\twlvnash}{nash14 \@magscale1}
+\newfont {\frtnnash}{nash14 \@magscale2}
+\newfont {\svtnnash}{nash14 \@magscale3}
+\newfont {\twtynash}{nash14 \@magscale4}
+\newfont {\twfvnash}{nash14 \@magscale5}
+
+\newfont {\tennashbf }{nash14bf}
+\newfont {\elvnnashbf}{nash14bf scaled 1095}
+\newfont {\twlvnashbf}{nash14bf \@magscale1}
+\newfont {\frtnnashbf}{nash14bf \@magscale2}
+\newfont {\svtnnashbf}{nash14bf \@magscale3}
+\newfont {\twtynashbf}{nash14bf \@magscale4}
+\newfont {\twfvnashbf}{nash14bf \@magscale5}
+
+% add the \pnash command to the size changing hooks
+
+\@addfontinfo \@vpt {\def\pnash {\tennash}}
+\@addfontinfo \@viipt {\def\pnash {\tennash}}
+\@addfontinfo \@viiipt {\def\pnash {\tennash}}
+\@addfontinfo \@ixpt {\def\pnash {\tennash}}
+\@addfontinfo \@xpt {\def\pnash {\tennash}}
+\@addfontinfo \@xipt {\def\pnash {\elvnnash}}
+\@addfontinfo \@xiipt {\def\pnash {\twlvnash}}
+\@addfontinfo \@xivpt {\def\pnash {\frtnnash}}
+\@addfontinfo \@xviipt {\def\pnash {\svtnnash}}
+\@addfontinfo \@xxpt {\def\pnash {\twtynash}}
+\@addfontinfo \@xxvpt {\def\pnash {\twfvnash}}
+
+\@addfontinfo \@vpt {\def\pnashbf {\tennashbf}}
+\@addfontinfo \@viipt {\def\pnashbf {\tennashbf}}
+\@addfontinfo \@viiipt {\def\pnashbf {\tennashbf}}
+\@addfontinfo \@ixpt {\def\pnashbf {\tennashbf}}
+\@addfontinfo \@xpt {\def\pnashbf {\tennashbf}}
+\@addfontinfo \@xipt {\def\pnashbf {\elvnnashbf}}
+\@addfontinfo \@xiipt {\def\pnashbf {\twlvnashbf}}
+\@addfontinfo \@xivpt {\def\pnashbf {\frtnnashbf}}
+\@addfontinfo \@xviipt {\def\pnashbf {\svtnnashbf}}
+\@addfontinfo \@xxpt {\def\pnashbf {\twtynashbf}}
+\@addfontinfo \@xxvpt {\def\pnashbf {\twfvnashbf}}
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/afonts1.sty b/language/arabic/arabtex/texinput/afonts1.sty
new file mode 100644
index 0000000000..669ccb6a60
--- /dev/null
+++ b/language/arabic/arabtex/texinput/afonts1.sty
@@ -0,0 +1,61 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% afonts1.sty
+% ArabTeX
+% load Naskh14 for NFSS1
+% 16.11.95
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally and Bernd Raichle
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {afonts1.sty} {3.04 define Naskh font for NFSS1} {16.11.1995}
+
+\chardef \fntatcode = \catcode`\@ \catcode`\@ = 11
+\chardef \fntlscode = \catcode`\< \catcode`\< = 12
+
+% NEW FONT SELECTION -- Version 1
+
+% define \pnash to use the `nash' family, `m'edium series, `n'ormal shape.
+
+\def\pnash{\family{nash}\series{m}\shape{n}\selectfont}
+\def\pnashbf{\family{nash}\series{bx}\shape{n}\selectfont}
+
+% setup the font definition table
+% (`1' at the beginning of a fontname: size not available, print
+% warning to inform the user)
+
+\new@fontshape{nash}{m}{n}{%
+ <5>1nash14%
+ <6>1nash14%
+ <7>1nash14%
+ <8>1nash14%
+ <9>1nash14%
+ <10>nash14 at14.4pt%
+ <11>nash14 at15.77441pt%
+ <12>nash14 at17.28pt%
+ <14>nash14 at20.736pt%
+ <17>nash14 at24.8832pt%
+ <20>1nash14 at29.85984pt%
+ <25>1nash14 at35.831808pt}{}
+
+\new@fontshape{nash}{bx}{n}{%
+ <5>1nash14bf%
+ <6>1nash14bf%
+ <7>1nash14bf%
+ <8>1nash14bf%
+ <9>1nash14bf%
+ <10>nash14bf at14.4pt%
+ <11>nash14bf at15.77441pt%
+ <12>nash14bf at17.28pt%
+ <14>nash14bf at20.736pt%
+ <17>nash14bf at24.8832pt%
+ <20>nash14bf at29.85984pt%
+ <25>nash14bf at35.831808pt}{}
+
+\extra@def{nash}{}{}
+
+\catcode`\@ = \fntatcode \catcode`\< = \fntlscode
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/afonts2.sty b/language/arabic/arabtex/texinput/afonts2.sty
new file mode 100644
index 0000000000..b65bd57300
--- /dev/null
+++ b/language/arabic/arabtex/texinput/afonts2.sty
@@ -0,0 +1,54 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% afonts2.sty
+% ArabTeX
+% load Naskh14 for NFSS2
+% 19.10.1999
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally and Bernd Raichle
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {afonts2.sty} {3.10 define Naskh fonts for LaTeX2e} {19.10.1998}
+
+% NEW FONT SELECTION -- Version 2
+
+% define \pnash to use the `unknown' fontencoding, `nash' fontfamily,
+% `m'edium fontseries und `n'ormal fontshape.
+
+\def\pnash{\fontencoding{U}\fontfamily{nash}%
+ \fontseries{m}\fontshape{n}\selectfont}
+
+% define \pnashbf to use the `unknown' fontencoding, `nash' fontfamily,
+% `b'old e`x'tended fontseries und `n'ormal fontshape.
+
+\def\pnashbf{\fontencoding{U}\fontfamily{nash}%
+ \fontseries{bx}\fontshape{n}\selectfont}
+
+% extended Nash fonts (14pt @ 12pt):
+
+\def \xnash {\protect \pxnash }
+\def \xnashbf {\protect \pxnashbf }
+
+\def \pxnash {\fontencoding {U}\fontfamily {xnsh}%
+ \fontseries {m}\fontshape {n}\selectfont }
+
+\def \pxnashbf {\fontencoding {U}\fontfamily {xnsh}%
+ \fontseries {bx}\fontshape {n}\selectfont }
+
+% smaller fonts (12pt @ 12pt):
+
+\def \snash {\protect \psnash }
+\def \snashbf {\protect \psnashbf }
+
+\def \psnash {\fontencoding {U}\fontfamily {xnsh}%
+ \fontseries {m}\fontshape {s}\selectfont }
+
+\def \psnashbf {\fontencoding {U}\fontfamily {xnsh}%
+ \fontseries {bx}\fontshape {s}\selectfont }
+
+% All other definitions are done in the files `Unash.fd' and `Uxnsh.fd',
+% which are loaded on demand.
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/afoot.sty b/language/arabic/arabtex/texinput/afoot.sty
new file mode 100644
index 0000000000..97ebef55f7
--- /dev/null
+++ b/language/arabic/arabtex/texinput/afoot.sty
@@ -0,0 +1,100 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% afoot.sty
+% ArabTeX footnotes
+% 12.05.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \undefined \LaTeX \xpa \endinput \fi
+
+\a@ident {afoot.sty} {3.11 ArabTeX footnotes} {12.05.2003}
+
+%%%%%%%%%%%%%%%%%%% \footnote in an arabic environment %%%%%%%%%%%%%%%
+% footnotes inside an Arabic environment, Roman document style
+
+\let \a@@footnotemark \@footnotemark
+\let \a@@footnotetext \@footnotetext
+
+\def \a@footnotemark {% inside Arabic environment
+\iftrans \unskip \unskip \nobreak \@makefnmark \fi
+\ifarab \a@spacefalse \putwordb@x \@makefnmark \a@spacetrue \fi }
+
+\long\def \a@footnotetext #1{\a@@footnotetext {#1}\arab@tail }
+
+\at@arabtext {% inside Arabic environments
+\let \@footnotemark \a@footnotemark
+\let \@footnotetext \a@footnotetext }
+
+\def \a@c@footnote {% ArabTeX-LaTeX version
+\let \@footnotemark \a@footnotemark
+\unarab@codes \footnote }
+
+\def \a@c@footnotemark {% ArabTeX-LaTeX version
+\def \@footnotemark {\a@footnotemark \arab@tail }%
+\unarab@codes \footnotemark }
+
+\long\def \a@c@footnotetext {% ArabTeX-LaTeX version
+\unarab@codes \footnotetext }
+
+\def \LRfootnotes {% left to right footnotes
+\def \a@fnhook {\a@@mkfntext }% Roman document
+%\def \a@fnhook {\a@rmfntext }% Roman document
+\def \a@@fnhook {\a@rmfntext }% Arabic document
+}
+
+\all@wcmd \LRfootnotes \LRfootnotes % default
+
+%%%%%%%%%%%%%%%%%%% \footnote in an arabic environment %%%%%%%%%%%%%%%
+% footnotes inside an Arabic environment, Arabic document style
+
+\iffalse
+\def \a@@footnote {% ArabTeX-LaTeX version
+\def \@footnotemark {%
+ \a@spacefalse \putwordb@x \@makefnmark \a@spacetrue }%
+\def \a@@fntext ##1{% common part for footnote text
+ \def \end {\a@par \egroup \test@token }%
+ \hsize \columnwidth \@parboxrestore
+ \initlineb@x \@footnotemark \test@token ##1 \end }
+}
+
+\def \a@@footnotemark {%
+\def \@footnotemark % ArabTeX-LaTeX version
+ {\a@spacefalse \putwordb@x \@makefnmark \a@spacetrue \test@token }%
+\footnotemark }
+\fi
+
+\long\def \a@@fntext #1{% common part for footnote text
+%\def \@footnotemark {%
+% \a@spacefalse \putwordb@x \@makefnmark \a@spacetrue }%
+\def \end {\a@par \egroup \test@token }%
+ \a@hsize \columnwidth \hsize \columnwidth \@parboxrestore
+ \initlineb@x \putwordb@x \@makefnmark \a@spacetrue
+\set@arabfont
+ \arabtrue \test@token #1 \end }
+
+\long\def \a@@@fntext #1{% common part for RL footnote text, Roman mode
+%\def \@footnotemark {%
+% \a@spacefalse \putwordb@x \@makefnmark \a@spacetrue }%
+\def \end {\a@par \egroup }%
+ \a@hsize \columnwidth \hsize \columnwidth \@parboxrestore
+ \the\arabtext@hook \putwordb@x \@makefnmark \a@spacetrue
+ \test@token #1 \end }
+
+%%%%%%%%%%%%%%%%%%% \footnote in an arabic environment %%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%w%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \RLfootnotes {% right to left footnotes
+\def \a@fnhook {\a@@@fntext }% Roman document
+\def \a@@fnhook {\a@@fntext }% Arabic document
+}
+
+\all@wcmd \RLfootnotes
+
+\let \arabfootnotes \RLfootnotes \all@wcmd \arabfootnotes
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/alatex.sty b/language/arabic/arabtex/texinput/alatex.sty
new file mode 100644
index 0000000000..f347f236d4
--- /dev/null
+++ b/language/arabic/arabtex/texinput/alatex.sty
@@ -0,0 +1,164 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% alatex.sty
+% LaTeX extensions for ArabTeX
+% 04.05.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \undefined \LaTeX \xpa \endinput \fi
+
+\a@ident {alatex.sty} {3.11 ArabTeX extensions for LaTeX } {04.05.2003}
+
+%%%%%%%%%%%%%%%%%%% modify \document command %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\let \a@document \document \let \a@enddocument \enddocument
+
+\def \document {% activate Arabic insertions
+ \a@document \setarab }
+\ifx \@listfiles \undefined
+\def \enddocument {% report the configuration
+ {\newlinechar `$ \wlog {\arabtexconfig $}}\a@enddocument }
+\fi
+
+\UsePackage {afoot} % ArabTeX footnotes
+
+%%%%%%%%%%%%%%%%%%%%%%% verbatim %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% patch for LaTeX2e
+% thanks to Andreas Scherer
+% <scherer@imib.rwth-aachen.de>
+
+\def \verb {% make < safe
+\ifx \undefined\documentclass % LaTeX 2.09
+\begingroup \catcode ``=13 \tt
+\else
+\relax \ifmmode \hbox \fi \bgroup \verbatim@font
+\fi
+\catcode `<=12 \@noligs \let \do \@makeother \dospecials
+\@ifstar {\@sverb }{\@verb }}
+
+%%%%%%%%%%%%%%%%%%%%%% enable LaTeX commands %%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \fdef #1#2#3#4{% define NFSS2 font
+\pdef #1{\def \pheb {\fontencoding {U}\fontfamily {#2}%
+\fontseries {#3}\fontshape {#4}\selectfont }%
+\ifx \a@normalfont \a@default \gdef \a@normalfont {#1}\fi
+\setarabfont \pheb \set@arabfont }%
+\all@wcmd #1}
+
+\all@wcmd \tiny \all@wcmd \footnotesize \all@wcmd \small
+\all@wcmd \normalsize \all@wcmd \large \all@wcmd \Large
+\all@wcmd \LARGE \all@wcmd \huge \all@wcmd \Huge
+
+\all@wcmd \mdseries \all@wcmd \bfseries \all@wcmd \a@normalfont
+\all@wcmd \upshape \all@wcmd \itshape \all@wcmd \slshape
+\all@wcmd \rmfamily \all@wcmd \sffamily \all@wcmd \ttfamily
+\all@wcmd \a@normalfont
+
+\def \a@c@input {\expandafter \test@token \@@input }
+
+\def \@abj #1{\abj@d {#1}}
+
+\def \Arabic #1{\expandafter \@Arabic \csname c@#1\endcsname }
+\def \arab #1{\expandafter \@arab \csname c@#1\endcsname }
+\def \Arab #1{\expandafter \@Arab \csname c@#1\endcsname }
+\def \abj #1{\expandafter \@abj \csname c@#1\endcsname }
+\def \Abj #1{\expandafter \@Abj \csname c@#1\endcsname }
+
+\let \@Arab \@arabic \let \@arab \@arabic \let \@Arabic \@arabic
+\let \@abjad \@abj \let \@Abj \@abj
+
+%%%%%%%%%%%%%%%%%%%%%% Math in Arabic mode %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@spec@def \({% inline math insertion in Arabic mode
+\unarab@codes \test@mathx }
+
+\def \test@mathx #1\){% finish inline math insertion
+\putwordb@x {$#1$}\a@spacetrue \arab@codes \test@token }
+
+\def \a@c@math {% inline math environment in Arabic mode
+ \def \endmath {$\egroup \aftergroup \test@mathy }%
+\unarab@codes \global\setbox1 \hbox \bgroup $}
+
+\def \a@c@test@mathy {% finish inline math environment
+\a@spacetrue \putwordb@x {\box1 }\a@spacetrue \test@token }
+
+\a@spec@def \[{% math display in Arabic mode
+\begingroup \endarabtext \leavevmode \let \a@end@dis \]%
+ \def \]{\a@end@dis \endgroup \a@spacefalse \test@token }\[}
+
+\def \a@c@displaymath {% displaymath environment in Arabic mode
+\endarabtext \leavevmode \displaymath }
+
+\def \a@c@equation {\endarabtext \equation }
+
+\def \a@c@eqnarray {\endarabtext \eqnarray }
+
+\xpa\def \csname a@c@eqnarray*\endcsname {% eqnarray* environment
+\endarabtext \csname eqnarray*\endcsname }
+
+%%%%%%%%%%%%%%%%%%%%% inner environments %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \end #1{% modified LaTeX version: tail supplied by \begin
+ \csname end#1\endcsname \@checkend {#1}%
+\if@endpe \aftergroup \@doendpe \fi
+\endgroup }
+
+\def \a@c@@doendpe {% called in Arabic mode
+\@doendpe \test@token }
+
+\def \begin #1{% from LaTeX2e; after \end stay in Roman mode
+\@ifundefined {#1}%
+ {\def \reserved@a {\@latex@error
+ {Environment #1 undefined}\@eha }}%
+ {\def \reserved@a {\def \@currenvir {#1}\edef \@currenvline {\on@line}%
+ \csname #1\endcsname }}%
+\@ignorefalse \begingroup \aftergroup \a@endx
+\@endpefalse \reserved@a }
+
+\def \a@endx {% after \end in Roman mode
+\if@ignore \@ignorefalse \ignorespaces \fi}
+
+\def \a@c@begin #1{% Arabic version; after \end set Arabic mode
+\@ifundefined {a@c@#1}%
+ {\def \reserved@a {\@latex@error
+ {Arabic mode: Environment #1 undefined}\@eha \test@token }}%
+ {\def \reserved@a {\def \@currenvir {#1}\edef \@currenvline {\on@line}%
+ \csname a@c@#1\endcsname }}%
+\@ignorefalse \begingroup \aftergroup \a@endy
+\@endpefalse \reserved@a }
+
+\def \a@endy {% after \end in Arabic mode
+\a@spacefalse \test@token }
+
+%%%%%%%%%%%%%%%%%%%%% new commands %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@newcommand #1#2#{\a@@def \newcommand {#1}{#2}}
+
+\def \a@c@renewcommand #1#2#{\a@@def \renewcommand {#1}{#2}}
+
+\def \a@c@providecommand #1#2#{\a@@def \providecommand {#1}{#2}}
+
+\def \a@c@@env {\putwordb@x {\unhbox1 }\a@spacetrue \test@token }
+
+\def \a@@env #1#2#3#4#5{% define environment in RL mode
+\xpa \def \csname end#2\endcsname
+{\def \end {\global \setbox1 \hbox {\unhbox \lineb@x}\aftergroup \@env }%
+\test@token #5 \end }%
+\xpa #1\csname a@c@#2\endcsname #3%
+%{\setbox\lineb@x \box\lineb@x \a@spacetrue \test@token #4}%
+{\setbox\lineb@x \box\lineb@x \let\ifa@space \ifa@space \test@token #4}%
+\test@token }
+
+\def \a@c@newenvironment #1#2#{\a@@env \newcommand {#1}{#2}}
+
+\def \a@c@renewenvironment #1#2#{\a@@env \renewcommand {#1}{#2}}
+
+\def \a@c@protect {\test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/aligs.sty b/language/arabic/arabtex/texinput/aligs.sty
new file mode 100644
index 0000000000..a5fbbc38f6
--- /dev/null
+++ b/language/arabic/arabtex/texinput/aligs.sty
@@ -0,0 +1,635 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aligs.sty
+% ArabTeX
+% Ligatures
+% called in HMODE
+% Version 26.05.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {aligs.sty} {3.11 compute ligatures} {26.05.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \is@end@char #1{00% does not connect to the left ?
+\a@test {#1}\xxpa \unp@ck@skl \skl@skel \relax
+\ifnum \skl@con = 0 \else \xpa \setiffalse \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \aw@endligs #1#2*#3#4*#5{% test for final ligatures
+% c1 m1 * c2 m2 * c3
+\ifcase \act@cls \lam@lig #3#5% % 0 l
+\or % 1 YntCbyp
+ \ifnum \act@cd = \a@yah \yah@end #1#3#5\else
+ \ifnum \act@cd = \a@yah@h \yah@end #1#3#5\else
+ \ifnum \act@cd = \a@yah@p \yah@p@end #1#3#5\else
+ \ifnum \act@cd = \a@yah@p@s \yah@p@end #1#3#5\else
+ \ifnum \act@cd = \a@nun \nun@end #1#3#5\else
+ \bah@end #1%
+ \fi\fi\fi\fi\fi
+\or \sin@lig #1#5% % 2 sxSD
+\or \gim@lig #1#3#5% % 3 GHXJ
+ \a@min 0
+\or \global\@highfalse \@mod@acttrue \put@tatwil % 4 cR
+\or \kaf@end #3#5% % 5 kgM
+\or \fah@end #1% % 6 fqv
+\or \ttah@lig #1#5% % 7 VZ
+\or \rah@end #1#2*#3#5% % 8 rzj \a@r \a@R
+\or % 9 \a@t \a@n
+ \ifnum \act@cd = \a@yah@p@s \yah@p@end #1#3#5\else
+ \ifnum \act@cd = \a@nun@p \nun@end #1#3#5\else
+ \bah@end #1%
+ \fi\fi
+\else \global\@highfalse \@mod@acttrue % 10 ...
+ \ifnum \act@cd = \a@hah \hah@end #1#2*#3#4*#5\else
+ \ifnum \act@cd = \a@h@s \hah@urd #3\else
+ \ifnum \act@cd = \a@mim \mim@end #2*#3#5\else
+ \put@tatwil
+ \ifnum \act@cd = \a@dal \gim@test #5\else
+ \ifnum \act@cd = \a@dal@p \gim@test #5\else
+ \fi\fi
+ \fi\fi\fi
+\fi \aw@lower #5}
+
+%%%%%%%%%%%%%%%%%%%%%%% bah %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \bah@end #1{% bah skeleton
+% c1
+\ifnum \act@cls = 1 \set@act\sk@b % YntCbyp
+\else \set@act\sk@b@p
+\fi
+\put@tatwil \@mod@acttrue \global\@hightrue }
+
+%%%%%%%%%%%%%%%%%%%%%%% gim %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \gim@lig #1#2#3{% gim, hhah, khah, tchah etc.
+% c1 c2 c3
+\ifnum \act@cd = \a@khah \else
+ \@mod@acttrue
+ \ifnum \act@cd = \a@gim@close \else \set@act\sk@hh
+ \fi
+\fi
+\ifs@nd \else
+\if\is@end@char #3\gim@one #1#2#3\else
+ \gim@more #1#2#3%
+\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%% gim %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \gim@one #1#2#3{% gim, hhah, khah, tchah % and one char
+% c1 c2 c3
+%\ifligs
+\ifcase \chr@cls
+ \act@gim #1\set@chr\sk@l@g@s % 0 l
+\or \act@gim #1\chr@tie\a@g@to@bb % 1 YntCbyp
+ \set@chr\sk@spc
+\or \act@gim #1\chr@tie\a@g@to@s \chr@sin % 2 sxSD
+\or \act@gim #1% % 3 GHXJ
+\or \put@tatwil % 4 cR
+\or \act@gim #1% % 5 kgM
+\or \act@gim #1% % 6 fqv
+\else \ifx #2m\act@gim #1\set@chr\sk@m@s
+ \else \put@tatwil
+ \fi
+%\fi
+\fi }
+
+\def \gim@more #1#2#3{% gim, hhah, khah, tchah
+% and more than one char
+% c1 c2 c3
+\ifligs
+\ifcase \chr@cls
+ \act@gim #1\set@chr\sk@l@y % 0 l
+\or \act@gim #1\chr@tie\a@g@to@mb % 1 YntCbyp
+ \set@chr\sk@b@y
+\or \act@gim #1\chr@tie\a@g@to@s \chr@sin % 2 sxSD
+\or \put@tatwil % 3 GHXJ
+\or \put@tatwil % 4 cR
+\or \act@gim #1% % 5 kgM
+\else \ifx #2m\ifx #3l\act@gim #1\set@chr\sk@m@l@g
+ \fi\fi
+\fi
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% sin %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sin@lig #1#2{% sin, shin, ssad, ddad, \a@s
+% c1 c3
+\put@tatwil \@mod@acttrue
+\ifnum \chr@cls = 1 % YntCbyp
+ \if\is@end@char #2\set@chr\sk@b@h \else
+ \ifx #1s\set@chr\sk@b@h \else
+ \ifx #1x\set@chr\sk@b@h \else
+ \fi\fi\fi
+\fi }
+
+\def \sin@lig #1#2{% sin, shin, ssad, ddad, \a@s
+% c1 c3
+\put@tatwil \@mod@acttrue
+\ifnum \chr@cls = 1 % YntCbyp
+ \if\is@end@char #2\set@chr\sk@b@h \else
+ \ifnum \act@cd = \a@sin \set@chr\sk@b@h \else
+ \fi\fi
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% ttah %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \ttah@lig #1#2{% ttah, tthah
+% c1 c3
+\put@tatwil \@mod@acttrue
+\ifnum \chr@cls = 1 % YntCbyp
+ \if\is@end@char #2\set@chr\sk@b@h
+ \fi
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% rah %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \rah@end #1#2*#3#4{% final r, z, j
+% c1 m1 * c2 c3
+\@mod@acttrue
+\ifcase \chr@cls
+ \put@tatwil % 0 l
+\or \if\is@end@char #4% % 1 YntCbyp
+ \else \set@chr\sk@b@sp \set@high@act
+ \fi
+\or \chr@tie\a@er@to@s \chr@sin % 2 sxSD
+\or \put@tatwil % 3 GHXJ
+\or \put@tatwil % 4 cR
+\or \ifligs % 5 kgM
+ \ifx #1r\if\is@updia #2*\put@tatwil
+ \else \kaf@lig
+ \fi
+ \else \put@tatwil
+ \fi
+ \else \put@tatwil
+ \fi
+\else \put@tatwil
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% fah %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \fah@end #1{% fah family
+% c1
+\ifnum \act@cd = \a@qaf
+ \ifnewfont \set@act\sk@q@s \@mod@acttrue
+ \fi
+\else \@mod@acttrue
+\fi \global\@highfalse }
+
+%%%%%%%%%%%%%%%%%%%%%% kaf %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \kaf@end #1#2{% kaf family
+% c2 c3
+\ifnum \act@cd = \a@kaf
+ \gim@test #2% closed gim?
+ \kaf@test #1% kaf-kaf ?
+\fi
+\@mod@acttrue }
+
+%%%%%%%%%%%%%%%%%%%%%% lam %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \lam@lig #1#2{% lam family
+% c2 c3
+\global\@highfalse
+\ifnum \act@cd = \a@lam@gim
+ \if\is@end@char #1\chr@tie\a@skip
+ \fi \else
+\ifnum \act@cd = \a@lam@spec@low \else
+ \@mod@acttrue
+ \gim@test #2% closed gim?
+ \kaf@test #1% kaf-lam ?
+\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% mim %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \mim@end #1*#2#3{% final mIm
+% m1 * c2 c3
+\ifs@nd \if\is@lodia #1*% simulate tail
+ \if\is@end@char #2\set@act\sk@m@s
+ \else \set@act\sk@B \chr@tie\a@mim
+ \fi
+ \else \set@act\sk@m@s
+ \fi
+\else
+\ifcase \chr@cls
+ \set@act\sk@m@s % 0 l
+ \if\is@end@char #3\else \set@chr\sk@l@m
+ \fi
+\or \set@act\sk@m@s % 1 YntCbyp
+ \if\is@end@char #3\chr@tie\a@em@to@bb \set@chr\sk@spc
+ \else \set@chr\sk@b@e@m
+ \fi
+\or \set@act\sk@m@s \chr@tie\a@em@to@s \chr@sin % 2 sxSD
+\or \put@tatwil % 3 GHXJ
+\or \put@tatwil % 4 cR
+\or \if\is@updia #1*\put@tatwil % 5 kgM
+ \else \set@act\sk@m@s %\kaf@lig
+ \fi
+\or \set@act\sk@m@s % 6 fqv
+\else \ifx #2m\set@act\sk@m@s
+ \if\is@end@char #3\set@chr\sk@m@s \else
+ \set@chr\sk@m@s@h
+ \fi
+ \else \put@tatwil
+ \fi
+\fi
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% nun %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \nun@end #1#2#3{% final nun
+% c1 c2 c3
+\global\@highfalse \@mod@acttrue
+\ifnum \chr@cls = 1 % YntCbyp
+ \if\is@end@char #3\else
+ \set@chr\sk@b@sp \set@high@act
+ \fi
+\else \put@tatwil
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% hah %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \hah@end #1#2*#3#4+#5*#6{% hah, test for ligature
+% c1 m1 * c2 m21 + m22 * c3
+\ifu@gh
+\ifx #1\a@H \else
+\set@act \sk@h@u
+\fi
+\else
+\ifurd@ \ifm@lay \else \set@act \sk@h@s \fi % two eyes
+ \ifx #1T\else
+ \ifx #1\a@H
+ \ifx #3l\ifx #6l% % 0 l
+ \ifnum #4 = \c@shadda \set@chr\sk@l@w
+ % special short form of lam for the Name of God
+ \fi\fi
+ \put@tatwil
+ \fi
+ \else \set@act\sk@h@u
+ \if\is@end@char #3%
+ \else \set@loww@act \global\a@min 1
+ \fi
+ \fi\fi
+\else
+\ifx #3l\ifx #6l% % 0 l
+ \ifnum #4 = \c@shadda \set@chr\sk@l@w
+ % special short form of lam for the Name of God
+ \fi\fi
+ \put@tatwil
+\else
+\ifnum \chr@cls = 1 \set@chr\sk@b \put@tatwil % 1 YntCbyp
+\else
+\ifnum \chr@cls = 3 % 3 GHX
+% \if\is@updia #4+#5*\chr@tie\a@tatwil \else
+ \put@tatwil
+% \fi
+\else \gim@test #6\put@tatwil
+\fi\fi\fi\fi
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% wavy hah %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \hah@urd #1{% wavy hah
+% c2
+\if\is@end@char #1\set@act\sk@h % isolated round h
+\fi
+\@mod@actfalse % no mark below
+\ifnum \chr@cls = 1 \set@chr\sk@b % YntCbyp normal height
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% yah %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \yah@end #1#2#3{% yah or alif maqsoura
+% y/Y/L c2 c3
+ \global\@highfalse
+%\global \a@min 1
+\ifx #1y\ifyahd@ts \@mod@acttrue \fi
+\else \@mod@acttrue
+\fi
+\if\is@end@char #3\yah@one #2\else \yah@more #2%
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \yah@one #1{% yah or alif maqsoura % and one char
+% c2
+\ifcase \chr@cls
+ \act@yah \set@chr\sk@l@lng % 0 l
+\or % 1 YntCbyp
+ \ifh@mza \act@yah \set@chr\sk@b@y \else
+ \ifk@fs \act@yah \set@chr\sk@b@y \else % ++++
+ \ifx #1y\else
+ \ifx #1Y\else
+ \act@yah \set@chr\sk@b@y
+ \fi\fi\fi\fi % ++++
+\or \act@yah \chr@tie\a@em@to@s \chr@sin % 2 sxSD
+\or \act@yah \ifs@nd \chr@tie\a@em@to@s \fi % 3 GHXJ
+\or \act@yah % 4 cR
+\or \act@yah \ifs@nd \chr@tie\a@em@to@s \fi % 5 kgM
+\or \act@yah % 6 fqv
+\else \ifx #1m\act@yah \set@chr\sk@m@s \else
+ \put@tatwil
+ \fi
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \yah@more #1{% yah or alif maqsoura % and more than one char
+% c2
+\ifcase \chr@cls % 0 l
+ \act@yah \set@chr\sk@l@y
+ \set@low@act
+\or \ifiz@fet % 1 YntCbyp
+ \ifx #1y\else
+ \ifx #1Y\else
+ \act@yah \set@chr\sk@b@e@m
+ \fi\fi
+ \else \act@yah \set@chr\sk@b@e@m
+ \fi
+\or \act@yah \chr@tie\a@em@to@s \chr@sin % 2 sxSD
+\or \act@yah \ifs@nd \chr@tie\a@em@to@s \fi % 3 GHXJ
+\or \put@tatwil % 4 cR
+\or \act@yah \kaf@lig % 5 kgM
+ \ifs@nd \chr@tie\a@em@to@s \fi
+\or \ifs@nd \act@yah \else \put@tatwil \fi % 6 fqv
+\else \ifx #1h\act@yah \chr@tie\a@em@to@s
+ \else \put@tatwil
+ \fi
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% long yah %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \yah@p@end #1#2#3{% long (Urdu) yah bari
+% c2 c3
+ \global\@highfalse
+\global \a@min 2
+\ifx #1E\ifyahd@ts \@mod@acttrue
+ \fi
+\else \@mod@acttrue
+\fi
+\if\is@end@char #3\yah@p@one #2\else \yah@p@more #2%
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \yah@p@one #1{% yah bari and one char
+% c2
+\ifcase \chr@cls \relax \set@chr\sk@l@lng % 0 l
+\or \set@chr\sk@b@g % 1 YntCbyp
+\or \chr@tie\a@g@to@s \chr@sin % 2 sxSD
+\else \ifx #1m\set@chr\sk@m@s
+ \else \put@tatwil
+ \fi
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \yah@p@more #1{% yah bari and more than one char c2 X
+% c2
+\ifcase \chr@cls \relax \set@chr\sk@l@y % 0 l
+\or \set@chr\sk@b@g % 1 YntCbyp
+\or \chr@tie\a@g@to@s \chr@sin % 2 sxSD
+\else \ifx #1m\set@chr\sk@m@s@h \else
+ \ifx #1h\set@chr\sk@h@s@l
+ \else
+ \put@tatwil
+ \fi\fi
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \aw@midligs #1#2*#3#4{% check for medial ligatures
+% c1 m1 * c2 c3
+\ifcase \act@cls \lam@lig #3#4% % 0 l
+\or \bah@mid #2*#3#4% % 1 YntCbyp
+\or \sin@lig #1#4% % 2 sxSD
+\or \gim@lig #1#3#4% % 3 GHXJ
+\or \global\@highfalse \put@tatwil % 4 cR
+\or \global\@highfalse \put@tatwil % 5 kgM
+\or \global\@highfalse \put@tatwil % 6 fqv
+\or \ttah@lig #1#4% % 7 VZ
+\else \global\@highfalse
+ \ifx #1m\mim@mid #2*#3#4\else
+ \ifx #1h\hah@mid #1#3#4\else % two-eyed hah
+ \ifx #1\a@h\hah@urd@mid #1#3#4\else
+ \put@tatwil
+ \fi\fi\fi
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \chr@fam #1{% put family
+% c2
+\if@con \@mod@chrtrue
+\ifcase \chr@cls % 0 l
+\or \set@chr\sk@b % 1 YntCbyp
+ \ifx #1\a@am \chr@mod 6 \fi % Malay
+\or % 2 sxSD
+\or \set@chr\sk@hh \@mod@chrtrue % 3 GHXJ
+\or % 4 cR
+\or \kaf@fam % 5 kgM
+\or \set@chr\sk@f@s % 6 fqv
+\or % 7 VZ
+\or % 8 rzj
+\or \set@chr\sk@b@p % 9 \a@t \a@n
+\else
+\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%% bah %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \bah@mid #1+#2*#3#4{% long form of bah etc.
+% m11 + m12 * c2 c3
+\put@tatwil
+\ifnum \act@cd = \a@bah@s % normal shape
+ \@mod@acttrue
+ \if@high \ifnum #1 > 9 \set@act\sk@b@h \global\@highfalse
+ \fi
+ \else \global\@hightrue
+ \fi
+ \else
+\ifnum \act@cd = \a@bah@high % higher shape
+ \global\@highfalse
+ \else
+\ifnum \act@cd = \a@bah@spec@gim % before medial gim
+ \global\@highfalse
+ \else
+\ifnum \act@cd = \a@bah@spec@yah % before final yah
+ \global\@highfalse
+ \else
+\ifnum \act@cd = \a@bah@mid@mim % before medial mim
+ \global\@highfalse
+ \else
+\ifnum \act@cd = \a@bah@spec % before rah
+ \gim@test #4% closed gim ?
+ \global\@highfalse
+ \else
+\fi\fi\fi\fi\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% mim %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \mim@mid #1*#2#3{% medial mIm
+% m1 * c2 c3
+\ifnum \act@cd = \a@mim@spec@alif % s-m-a
+ \ifnum \chr@cls = 2 \chr@sin
+ \fi
+ \else
+\ifligs \mim@mid@lig #1*#2#3\else
+\if\is@end@char #3\mim@mid@lig #1*#2#3\else
+ \put@tatwil
+\fi\fi\fi }
+
+\def \mim@mid@lig #1*#2#3{% ligature for medial mIm
+% m1 * c2 c3
+\ifcase \chr@cls % 0 l
+ \ifnum \act@cd = \a@mim@lam@gim % l-m-^g
+ \if\is@end@char #3\set@chr\sk@l@h \else
+ \set@chr\sk@l@y
+ \fi
+ \if\is@updia #1*\set@act\sk@m@s@l
+ \fi
+ \else
+ \if\is@end@char #3\act@mim@spec #1*\set@chr\sk@l@m
+ \fi\fi
+%\or \set@act\sk@m@s \set@chr\sk@b@m@m % 1 YntCbyp
+\or \act@mim@spec #1*\set@chr\sk@b@m@m % 1 YntCbyp
+%\or \act@mim@spec #1*\chr@tie\a@bah@mid@mim % 2 sxSD
+\or \set@act\sk@m@s \chr@tie\a@bah@mid@mim % 2 sxSD
+ \chr@sin
+\or \set@act\sk@m@s@h \gim@test #3% % 3 GHXJ
+\or \set@act\sk@m@s@h % 4 cR
+\or \put@tatwil % 5 kgM
+\or \set@act\sk@m@s@h % 6 fqv
+\else
+ \ifx #2m\if\is@end@char #3%
+% \act@mim@spec #1*\set@chr\sk@m@s@m
+ \set@act\sk@m@s@l \set@chr\sk@m@s@m
+ \if\is@updia #1*\set@act\sk@m@s@l
+ \fi
+ \else \put@tatwil
+ \fi
+ \else \put@tatwil
+ \fi
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% hah %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \hah@mid #1#2#3{% medial hah, no ligature in Urdu
+% c1 c2 c3
+\ifurd@ \ifnum \chr@cls = 0 % 0 l
+ \if\is@end@char #3\set@act\sk@h@s@l
+ \set@chr\sk@l@h
+ \else \put@tatwil
+ \fi
+ \else \put@tatwil
+ \fi
+\else
+\ifcase \chr@cls % 0 l
+ \ifligs \set@act\sk@h@s@l
+ \if\is@end@char #3\set@chr\sk@l@h
+ \else \set@chr\sk@l@m
+ \fi\fi
+\or \act@hah \set@chr\sk@b@e@h % 1 YntCbyp
+\or \act@hah \chr@tie\a@mh@to@s \chr@sin % 2 sxSD
+\else \ifnum \chr@cls = 9 % \a@t \a@n
+ \act@hah \set@chr\sk@b@e@h
+ \else \put@tatwil
+ \fi
+\fi
+\fi }
+
+\def \hah@urd@mid #1#2#3{% medial (wavy) hah
+% c1 c2 c3
+\ifcase \chr@cls \set@act\sk@h@s@l % 0 l
+ \if\is@end@char #3\set@chr\sk@l@h \else
+ \set@chr\sk@l@m
+ \fi
+\or \act@hah \set@chr\sk@b@e@h % 1 YntCbyp
+\or \act@hah \chr@tie\a@mh@to@s \chr@sin % 2 sxSD
+\else \ifnum \chr@cls = 9 % \a@t \a@n
+ \act@hah \set@chr\sk@b@e@h
+ \else \put@tatwil
+ \fi
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \gim@test #1{% closed gim ?
+% c3
+\ifnum \chr@cls = \gim@cls % GHXJ
+\if\is@end@char #1\set@chr\sk@j@cl
+ \@mod@chrtrue \global\@highfalse
+\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \kaf@test #1{% short kaf ?
+%\ifx #1\a@ax \put@tatwil % swash kaf
+\ifnum \chr@cd = \a@kaf@w \put@tatwil % swash kaf
+\else \ifnum \chr@cls = \kaf@cls
+ \kaf@lig \global\@highfalse
+\else \put@tatwil
+\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% change chr@cd %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \chr@sin {% shape without tooth % c
+\@mod@chrtrue
+\ifnum \chr@cd = \a@sin \set@chr\sk@sn@s \else
+\ifnum \chr@cd = \a@sad \set@chr\sk@sd@s \else
+\fi\fi }
+
+\def \kaf@lig {% put short kaf-alif ligature
+\@mod@chrtrue
+\ifnum \chr@cd = \a@kaf \set@chr\sk@k@sh \else
+\ifnum \chr@cd = \a@kaf@s \set@chr\sk@k@sh \else
+\ifnum \chr@cd = \a@kaf@p \set@chr\sk@k@sp \else
+\ifnum \chr@cd = \a@kaf@p@s \set@chr\sk@k@sp \else
+\ifnum \chr@cd = \a@gaf \set@chr\sk@g@sh \else
+\ifnum \chr@cd = \a@gaf@s \set@chr\sk@g@sh \else
+\ifnum \chr@cd = \a@gaf@p@s \set@chr\sk@g@sp \else
+\fi\fi\fi\fi\fi\fi\fi }
+
+\def \kaf@fam {% no mark
+\ifnum \chr@cd = \a@kaf \set@chr\sk@k@s \else
+\ifnum \chr@cd = \a@kaf@p \set@chr\sk@k@p \else
+\ifnum \chr@cd = \a@gaf \set@chr\sk@g@s \else
+\fi\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% change act@cd %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \act@yah {% short yah
+\global\a@min 1
+\ifnum \act@cd = \a@yah \set@act\sk@y@s \else
+\ifnum \act@cd = \a@yah@h \set@act\sk@y@h@s
+\fi\fi }
+
+\def \act@hah {% short hah
+\ifurd@ \else
+\ifnum \act@cd = \a@hah \set@act\sk@h@s
+\fi\fi }
+
+\def \act@gim #1{% deposit ligature
+\ifnum \act@cd = \a@khah \set@act\sk@kh@s \act@mod = 0
+\else \set@act\sk@hh@s \@mod@acttrue
+\fi \a@min 1 }
+%\fi }
+
+\def \act@mim@spec #1*{% lam-mim etc.
+\if\is@updia #1*\set@act\sk@m@s@l
+\else \set@act\sk@m@s
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% keshide %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \put@tatwil {% deposit keshide
+\ifspread \if@con \@tattrue
+\fi\fi }
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/alists.sty b/language/arabic/arabtex/texinput/alists.sty
new file mode 100644
index 0000000000..1f1272a1ba
--- /dev/null
+++ b/language/arabic/arabtex/texinput/alists.sty
@@ -0,0 +1,211 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% alists.sty
+% called by altxext.sty
+% 26.04.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% chapter = al-fa.slu
+% tableofcontents = al-mu.htawayAtu
+% listoffigures = qA'imaTu al-.suwaru
+% listoftables = qA'imaTu al-^gadAwilu
+% listofpictures = qA'imaTu al-rusUmu
+% index = al-fihrisu (al-fihristu)
+% bibliography = al-marA^gi`u
+% references = al-ma.sAdiru
+% abstract = al-mula_h_ha.su
+% appendix = al-mul.haqu
+% attachments = al-murfaqAtu
+% number = al-raqmu
+
+\a@ident {alists.sty} {3.11 inverted list macros} {26.04.2003}
+
+\iffalse %%%%%%%%%%%%%%%%%%% LaTeX 2.09 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\center{\trivlist \centering\item[]}
+
+%\let\endcenter=\endtrivlist
+
+\def\centering{\let\\=\@centercr\rightskip\@flushglue\leftskip\@flushglue
+\parindent\z@\parfillskip\z@}
+
+%\let\enddescription\endlist
+
+\def\flushleft{\trivlist \raggedright\item[]}
+
+\def\raggedright
+{\let\\=\@centercr\@rightskip\@flushglue \rightskip\@rightskip
+ \leftskip\z@ \parindent\z@}
+
+\let\endflushleft=\endtrivlist
+
+\def\flushright{\trivlist \raggedleft\item[]}
+
+\def\raggedleft
+{\let\\=\@centercr\rightskip\z@\leftskip\@flushglue
+ \parindent\z@ \parfillskip\z@}
+
+\let\endflushright=\endtrivlist
+
+\def\@centercr{\ifhmode \unskip\else \@badcrerr\fi
+ \par\@ifstar{\penalty \@M\@xcentercr}{\@xcentercr}}
+
+\def\@xcentercr{\addvspace{-\parskip}\@ifnextchar
+ [{\@icentercr}{\ignorespaces}}
+
+\def\@icentercr[#1]{\vskip #1\ignorespaces}
+
+\fi %%%%%%%%%%%%%%%%%%% LaTeX 2.09 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@itemize
+{\ifnum \@itemdepth >3 \@toodeep
+\else \advance \@itemdepth \@ne
+ \edef \@itemitem {labelitem\romannumeral \the \@itemdepth }%
+ \a@@list {\csname \@itemitem \endcsname }%
+ {\def \makelabel ##1{\hbox to 1sp {##1\hss }\hfil }}%
+\fi \test@token }
+
+\def \a@c@enumerate
+{\ifnum \@enumdepth >3 \@toodeep
+\else \advance \@enumdepth \@ne
+ \edef \@enumctr {enum\romannumeral \the \@enumdepth }%
+ \a@@list {\csname label\@enumctr \endcsname }%
+ {\usecounter {\@enumctr }%
+ \def \makelabel ##1%
+ {\edef \a@@tmp {##1}\hbox to 1sp
+ {\expandafter \<\a@@tmp >\hss }\hfil }}%
+\fi \test@token }
+
+\def \a@c@description {\a@@list {}%
+{\labelwidth\z@ \itemindent-\leftmargin \let\makelabel\descriptionlabel}%
+\def \enddescription {\endlist }\test@token}
+
+\def \a@c@trivlist {\a@trivlist \test@token }
+
+\def \a@trivlist
+{\parsep \a@parskip \@nmbrlistfalse \a@@trivlist
+\labelwidth \z@ \leftmargin \z@ \itemindent \z@
+\let \@itemlabel \@empty \def \makelabel ##1{##1}}
+
+\def \a@c@center {%
+\let\endcenter \a@@endtrivlist
+\a@trivlist \a@@centering \a@@item[]}
+
+\def \a@c@flushright {%
+\let\endflushright \a@@endtrivlist
+\a@trivlist \a@@raggedright \a@@item[]}
+
+\def \a@c@flushleft {%
+\let\endflushleft \a@@endtrivlist
+\a@trivlist \a@@raggedleft \a@@item[]}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@@raggedright
+{\let \a@last@line \put@line
+\rightskip \@flushglue \@rightskip \@flushglue \leftskip \z@
+\a@parindent \z@ \spreadfalse }
+
+\def \a@@raggedleft
+{\let \a@last@line \put@line
+\rightskip \z@ \leftskip \@flushglue
+\parfillskip \z@ \a@parindent \z@ \spreadfalse }
+
+\def \a@@centering
+{\let \a@last@line \put@line
+\rightskip \@flushglue \leftskip \@flushglue
+\a@parindent \z@ \spreadfalse \parfillskip \z@ }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\a@centercr {% end of line
+%{\ifhmode \unskip\else \@badcrerr\fi
+%\par
+\a@last@line
+\@ifstar{\penalty \@M\@xcentercr}{\@xcentercr}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@@list #1#2{%
+\ifnum \@listdepth >5\relax \@toodeep
+ \else \global \advance \@listdepth \@ne \fi
+\rightmargin \z@ \listparindent \z@ \itemindent \z@
+\csname @list\romannumeral \the \@listdepth \endcsname
+\def \@itemlabel {#1}\let \makelabel \a@@mklab \@nmbrlistfalse #2\relax
+\a@@trivlist \a@parskip \parsep \a@parindent \listparindent
+\advance \a@hsize -\leftmargin \advance \a@hsize -\rightmargin
+\advance \@totalleftmargin \leftmargin \advance \a@leftmargin \rightmargin
+\ignorespaces }
+
+\def \a@@trivlist
+{\@topsepadd \topsep
+\if@noskipsec \leavea@vmode \fi % \a@@everypar
+\ifa@vmode \advance \@topsepadd \partopsep \fi \a@@par
+\if@inlabel \@noparitemtrue \@noparlisttrue
+ \else \@noparlistfalse \@topsep \@topsepadd \fi
+\advance \@topsep \a@parskip \leftskip \z@ \rightskip \@rightskip
+\parfillskip \@flushglue
+%\@setpar {\if@newlist \else {\@@par }\fi }% ??
+\let \endtrivlist \a@@endtrivlist
+\global \@newlisttrue \@outerparskip \a@parskip }
+
+\def \a@@mklab #1{#1\hfil }
+
+\def \a@@endtrivlist
+{\if@inlabel \putwordb@x {}\fi % \a@@everypar
+\if@newlist \@noitemerr \fi
+\a@@par
+\if@noparlist \else
+\ifdim \lastskip >\z@
+ \@tempskipa \lastskip \vskip -\lastskip
+ \advance \@tempskipa \a@parskip
+ \advance \@tempskipa -\@outerparskip
+ \vskip \@tempskipa
+\fi \@endparenv
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@@item [#1]{% for arabic lists running from right to left
+\if@noparitem \a@@donoparitem \else
+ \if@inlabel \putwordb@x {\arab@space }\a@@par \fi
+ \a@@par
+ \if@newlist \if@nobreak \@nbitem \else
+ \addpenalty \@beginparpenalty
+ \addvspace \@topsep \addvspace {-\a@parskip }\fi
+ \else \addpenalty \@itempenalty \addvspace \itemsep
+ \fi \global \@inlabeltrue
+\fi
+\a@@everypar {\global \@minipagefalse \global \@newlistfalse
+ \if@inlabel \global \@inlabelfalse \a@spacefalse
+ \putwordb@x {\box \@labels \hskip -\a@parindent }%
+ \fi \a@@everypar {}}%
+\global \@nobreakfalse
+\if@noitemarg \@noitemargfalse
+ \if@nmbrlist \refstepcounter {\@listctr }\fi
+\fi
+\setbox \@tempboxa \hbox {\makelabel {#1}}%
+\global \setbox \@labels \hbox
+ {\hskip \labelsep
+ \ifdim \wd \@tempboxa >\labelwidth \box \@tempboxa
+ \else \hbox to\labelwidth {\unhbox \@tempboxa }\fi
+ \hskip \itemindent \hskip -\labelwidth \hskip -\labelsep
+ \unhbox \@labels }%
+%\test@token }
+\arab@tail }
+
+\def \a@@donoparitem
+{\@noparitemfalse \global \setbox \@labels \hbox
+ {\hskip \leftmargin \unhbox \@labels \hskip -\leftmargin }%
+\if@minipage \else
+ \@tempskipa \lastskip \vskip -\lastskip
+ \advance \@tempskipa \@outerparskip
+ \advance \@tempskipa -\a@parskip \vskip \@tempskipa
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/alocal.sty b/language/arabic/arabtex/texinput/alocal.sty
new file mode 100644
index 0000000000..626d644581
--- /dev/null
+++ b/language/arabic/arabtex/texinput/alocal.sty
@@ -0,0 +1,20 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% alocal.sty
+% ArabTeX
+% stub for local extensions
+% should normally be empty!
+% Version 26.02.2006
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@message {3.11 local stub, 26.02.2006}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\relax
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
diff --git a/language/arabic/arabtex/texinput/altxext.sty b/language/arabic/arabtex/texinput/altxext.sty
new file mode 100644
index 0000000000..536d0357c0
--- /dev/null
+++ b/language/arabic/arabtex/texinput/altxext.sty
@@ -0,0 +1,101 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% altxext.sty
+% patches for LaTeX in arabic mode
+% for use with arabart.cls
+% ArabTeX 3.11
+% 04.05.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {altxext.sty} {3.11 LaTeX extensions for Arabic mode} {04.05.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@outputdblcol {% part of output routine for Arabic mode
+\if@firstcolumn \global\@firstcolumnfalse
+ \global\setbox\@leftcolumn \box\@outputbox
+\else \global\@firstcolumntrue
+ \setbox\@outputbox \vbox {\hbox to\textwidth {%
+ \hskip \columnwidth
+ \hfil \vrule width\columnseprule \hfil
+ \hbox to\columnwidth {\box\@leftcolumn \hss}%
+ \hskip -\textwidth
+ \hbox to\columnwidth{\box\@outputbox \hss}%
+ \hskip \columnsep
+ \hskip \columnwidth }}%
+ \@combinedblfloats \@outputpage
+ \begingroup \@dblfloatplacement \@startdblcolumn
+ \@whilesw\if@fcolmade \fi
+ {\@outputpage \@startdblcolumn }\endgroup
+\fi}
+
+\let \@outputdblcol \a@outputdblcol % for Arabic mode
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@addmarginpar {% part of output routine for Arabic mode
+\@next \@marbox \@currlist
+{\@cons\@freelist\@marbox \@cons\@freelist\@currbox}\@latexbug
+\@tempcnta \m@ne
+\if@twocolumn
+ \if@firstcolumn \@tempcnta \@ne \fi
+\else \if@mparswitch
+ \ifodd \c@page \else \@tempcnta \@ne \fi
+ \fi
+ \if@reversemargin \@tempcnta -\@tempcnta \fi
+\fi
+\ifnum \@tempcnta < \z@
+ \global\setbox\@marbox \box\@currbox
+\fi
+\@tempdima \@mparbottom \advance\@tempdima -\@pageht
+\advance\@tempdima \ht \@marbox
+\ifdim \@tempdima > \z@
+ \@@warning {Marginpar on page \thepage\space moved}%
+\else \@tempdima \z@
+\fi
+\global\@mparbottom \@pageht
+\global\advance\@mparbottom \@tempdima
+\global\advance\@mparbottom \dp\@marbox
+\global\advance\@mparbottom \marginparpush
+\advance\@tempdima -\ht\@marbox
+\global\ht\@marbox \z@ \global\dp\@marbox \z@
+\vskip -\@pagedp \vskip\@tempdima \nointerlineskip
+\hbox to\columnwidth
+ {\ifnum \@tempcnta > \z@
+ \hskip\columnwidth \hskip\marginparsep
+ \else \hskip -\marginparsep \hskip -\marginparwidth
+ \fi \box\@marbox \hss}%
+\nobreak %% RmS 91/06/21 \nobreak added
+\vskip -\@tempdima \nointerlineskip
+\hbox {\vrule \@height\z@ \@width\z@ \@depth\@pagedp }}
+
+\let \@addmarginpar \a@addmarginpar % for Arabic mode
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\markright#1{{\let\protect\noexpand
+ \let\label\relax \let\index\relax \let\glossary\relax
+ \expandafter\@markright\@themark
+ {#1}\mark{\@themark}}\if@nobreak\ifvmode\nobreak\fi\fi}
+
+\def\@markright#1#2#3{\gdef\@themark{{#1}{#3}}}
+
+\def \markleft #1{{\let\protect\noexpand
+\let\label\relax \let\index\relax \let\glossary\relax
+\expandafter\@markleft \@themark {#1}%
+\mark {\@themark }}%
+\if@nobreak \ifvmode \nobreak \fi \fi }
+
+\def \@markleft #1#2#3{\gdef\@themark {{#3}{#2}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\UsePackage {alists} % load LaTeX extensions for Arabic lists
+\UsePackage {asect} % load LaTeX extensions for Arabic sections
+\UsePackage {atabg} % load LaTeX extensions for Arabic tabbing
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
diff --git a/language/arabic/arabtex/texinput/amac.sty b/language/arabic/arabtex/texinput/amac.sty
new file mode 100644
index 0000000000..52a00e1b13
--- /dev/null
+++ b/language/arabic/arabtex/texinput/amac.sty
@@ -0,0 +1,164 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% amac.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% amac.sty
+% Scanner for MAC Arabic
+% to install it, include it as a LaTeX package or style option "amac"
+% with Plain TeX, say "\input amac.sty"
+% to activate it, say "\setcode{amac}"
+% 26.04.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \amacatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \amacatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {amac.sty} {3.11 MAC Arabic encoding} {26.04.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \amac@catcodes {% assignments for MAC Hebrew
+\countdef \is@m=2 \countdef \is@n=4
+\is@m = 128 \is@n = 64
+\loop \ifnum \catcode \is@m = 11 \else \catcode \is@m = 11 \fi
+\global\lccode \is@m = \is@n
+\ifnum 159 > \is@m \advance \is@m 1 \advance \is@n 1 \repeat
+\is@m = 160 \is@n = 32
+\loop \ifnum \catcode \is@m = 11 \else \catcode \is@m = 11 \fi
+\global\lccode \is@m = \is@n
+\ifnum 255 > \is@m \advance \is@m 1 \advance \is@n 1 \repeat
+\is@m=0 \is@n=0 \catcode `\^^a0 12 }
+
+{\amac@catcodes
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for MAC Arabic
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \setamac@codes {% activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@^^80 {@} \def \sc@^^81 {@} \def \sc@^^82 {@} \def \sc@^^83 {@}
+\def \sc@^^84 {@} \def \sc@^^85 {@} \def \sc@^^86 {@} \def \sc@^^87 {@}
+\def \sc@^^88 {@} \def \sc@^^89 {@} \def \sc@^^8a {@}
+\def \sc@^^8b {\n@xp\a@n}
+\def \sc@^^8c {@} \def \sc@^^8d {@} \def \sc@^^8e {@} \def \sc@^^8f {@}
+
+\def \sc@^^90 {@} \def \sc@^^91 {@} \def \sc@^^92 {@} \def \sc@^^93 {\a@ell}
+\def \sc@^^94 {@} \def \sc@^^95 {@} \def \sc@^^96 {@} \def \sc@^^97 {@}
+\def \sc@^^98 {@} \def \sc@^^99 {@} \def \sc@^^9a {@} \def \sc@^^9b {\a@div}
+\def \sc@^^9c {@} \def \sc@^^9d {@} \def \sc@^^9e {@} \def \sc@^^9f {@}
+
+\def \sc@^^a0 {@} \def \sc@^^a1 {!}
+\def \sc@^^a2 {\a@dq} \def \sc@^^a3 {\a@hsh}
+\def \sc@^^a4 {\a@dlr} \def \sc@^^a5 {\a@pct}
+\def \sc@^^a6 {\a@amp} \def \sc@^^a7 {\a@qt}
+\def \sc@^^a8 {)} \def \sc@^^a9 {(} \def \sc@^^aa {*} \def \sc@^^ab {+}
+\def \sc@^^ac {,} \def \sc@^^ad {-} \def \sc@^^ae {.} \def \sc@^^af {/}
+%
+\def \sc@^^b0 {0} \def \sc@^^b1 {1} \def \sc@^^b2 {2} \def \sc@^^b3 {3}
+\def \sc@^^b4 {4} \def \sc@^^b5 {5} \def \sc@^^b6 {6} \def \sc@^^b7 {7}
+\def \sc@^^b8 {8} \def \sc@^^b9 {9} \def \sc@^^ba {:} \def \sc@^^bb {;}
+\def \sc@^^bc {\a@rab} \def \sc@^^bd {=}
+\def \sc@^^be {\a@lab} \def \sc@^^bf {?}
+%
+\def \sc@^^c0 {*} \def \sc@^^c1 {Q|} \def \sc@^^c2 {QA} \def \sc@^^c3 {Qa}
+\def \sc@^^c4 {Qw} \def \sc@^^c5 {Qi} \def \sc@^^c6 {Qy} \def \sc@^^c7 {A}
+\def \sc@^^c8 {b} \def \sc@^^c9 {T} \def \sc@^^ca {t} \def \sc@^^cb {C}
+\def \sc@^^cc {G} \def \sc@^^cd {H} \def \sc@^^ce {X} \def \sc@^^cf {d}
+
+\def \sc@^^d0 {F} \def \sc@^^d1 {r} \def \sc@^^d2 {z} \def \sc@^^d3 {s}
+\def \sc@^^d4 {x} \def \sc@^^d5 {S} \def \sc@^^d6 {D} \def \sc@^^d7 {V}
+\def \sc@^^d8 {Z} \def \sc@^^d9 {P} \def \sc@^^da {R} \def \sc@^^db {]}
+\def \sc@^^dc {\a@bsl} \def \sc@^^dd {[}
+\def \sc@^^de {\a@up} \def \sc@^^df {\a@dn}
+
+\def \sc@^^e0 {B} \def \sc@^^e1 {f} \def \sc@^^e2 {q} \def \sc@^^e3 {k}
+\def \sc@^^e4 {l} \def \sc@^^e5 {m} \def \sc@^^e6 {n} \def \sc@^^e7 {h}
+\def \sc@^^e8 {w} \def \sc@^^e9 {Y} \def \sc@^^ea {y} \def \sc@^^eb {"aN}
+\def \sc@^^ec {"uN}\def \sc@^^ed {"iN} \def \sc@^^ee {"a} \def \sc@^^ef {"u}
+
+\def \sc@^^f0 {"i} \def \sc@^^f1 {\n@xp\a@Ze}
+\def \sc@^^f2 {""} \def \sc@^^f3 {p}
+\def \sc@^^f4 {\n@xp\a@t} \def \sc@^^f5 {J}
+\def \sc@^^f6 {\n@xp\a@H} \def \sc@^^f7 {v}
+\def \sc@^^f8 {g} \def \sc@^^f9 {\n@xp\a@d}
+\def \sc@^^fa {\n@xp\a@r} \def \sc@^^fb {\a@rbc}
+\def \sc@^^fc {\a@bar} \def \sc@^^fd {\a@lbc}
+\def \sc@^^fe {j} \def \sc@^^ff {E}
+\a@digits = {0123456789}
+\a@paren = {()[]}
+\a@first = {"`^^e6\a@tok \lq \rq \cap \MIN \IN }
+\globaldefs=0 }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for MAC Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \amac@scan #1>{% standard scanner call: token sequence -> \a@tokens
+\iftest@scan \tracingmacros = 1
+\ifshow \else \lowercase{\a@verb #1>}\fi\fi
+\global\def \a@rest {}\global\a@tokens = {}\sc@beg #1\@ \@@
+\iftest@scan \tracingmacros = 0 %
+\xpa \a@verb \xpa (\the\a@tokens )>\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \amac@beg {% start MAC Arabic scanner
+\h@mzafalse \iz@fetfalse \@ssimfalse \novocalize % because of explicit quoting
+\amac@word }
+
+{\catcode `\^^M=13 \endlinechar = -1
+\gdef \amac@word #1{% transform input into internal notation
+\ifx #1\@ \def \next {\sc@endscan }\else % finished
+\ifcat \nxp #1\relax \def \next {\t@cs #1}\else % control sequence
+\if \nxp ^^M\nxp #1\def \next {\amac@par #1}% active character
+\else \def \next {\amac@w@rd #1}%
+\fi\fi\fi \next }%
+} % catcode 13
+
+\gdef \amac@w@rd #1#2{% special cases
+\case #1\of
+{ #2{\amac@word #1-#2}
+ -{\amac@minus #2}
+ ^^a0{\sc@back #2}
+ ^^ad{\amac@minus #2}
+\default {\amac@@word #1#2}
+}\endcase }
+
+\gdef \amac@@word #1{% default branch
+\ifcat a\nxp #1\edef \sc@char {\csname sc@#1\endcsname }%
+\else \def \sc@char {\nxp #1}%
+\fi \sc@put \amac@word }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \amac@minus {% hyphen between words
+\def \sc@char {-}\sc@put \amac@beg }
+
+\gdef \amac@par #1\@ \@@ {% new line, push back the rest
+\sc@back \\ #1\@ \@@ }
+
+\gdef \amac@endscan \@@ {\global\let \a@scan \amac@scan }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+} % \amac@catcodes
+
+\def \set@amac {% select the MAC Hebrew scanner
+\let \sc@beg \amac@beg \let \sc@word \amac@word
+\let \sc@back \sc@@back \let \sc@endscan \amac@endscan
+\global\let \a@scan \amac@scan \setamac@codes
+\amac@catcodes
+\a@message {input encoding set to MAC Arabic and ISO 8859-6 conventions}}
+
+\xpa \def \xpa \sc@table \xpa {\sc@table % add the MAC Hebrew encoding
+iso88596\set@amac iso8859-6\set@amac amac\set@amac }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@message {scanner for MAC Arabic code installed.}
+
+\catcode `\@ = \amacatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/aoutput.sty b/language/arabic/arabtex/texinput/aoutput.sty
new file mode 100644
index 0000000000..da7edc579e
--- /dev/null
+++ b/language/arabic/arabtex/texinput/aoutput.sty
@@ -0,0 +1,173 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aoutput.sty
+% ArabTeX
+% Version 04.06.2000
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {aoutput.sty} {3.10 build output lines} {04.06.2000}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newdimen \a@hsize \newdimen \a@limit \newdimen \a@leftmargin
+\newcount \a@prevgraf \newcount \a@@prevgraf \newbox \a@tempb@x
+
+\def \setspace #1{\def \arab@space {\hskip #1\relax }}% redefine ?
+
+\def \arab@space {\space \hskip 0pt plus 0.001fil \relax }
+
+\def \def@arabstrut {\def \arab@strut {\if@vocals
+%\vrule height2.5ex depth2.0ex width\z@ \relax \else
+\vrule height2ex depth1.5ex width\z@ \relax \else
+%\vrule height3ex depth1.5ex width\z@ \relax \else
+\vrule height2ex depth1.0ex width\z@ \relax \fi }}
+
+\def \a@parparams {% get paragraph dimensions
+\ifnum \parshape = \z@ \a@hsize \hsize
+\a@leftmargin \z@
+\else \a@hsize \linewidth \a@leftmargin \@totalleftmargin
+\fi
+\a@leftmargin \z@
+\a@prevgraf \z@ \spreadfalse }
+
+\def \a@resetpar {% called by \a@par
+\a@prevgraf \z@ }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% control variables for the "arabtext" environment:
+%
+% \the\arabtext@hook: executed when entering the environment
+%
+% \ifa@vmode: Arabic paragraph closed?
+%
+% \ifa@space: deposit a space?
+%
+% \ifspread: fill line by spreading the words?
+%
+% \ifarab: ignore Arabic script output?
+%
+% \a@parindent: skip at beginning of first line of paragraph
+% \a@parindent: saved value from Roman mode
+%
+% \a@parskip: saved value from Roman mode
+%
+% \the\a@@everypar: token list, executed when starting a paragraph
+%
+% \a@oldhmode: saved value from outside
+%
+% \a@short@line: finish last line, close paragraph
+%
+% \a@put@line: deposit current line buffer, continue paragraph
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% TeX/LaTeX parameters influencing the shape of a paragraph:
+%
+% \hsize, \leftskip, \rightskip, \parindent, \parskip
+% \parshape, \hangindent, \hangafter, \linewidth, \@totalleftmargin
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% internal control:
+%
+% \a@hsize = length of line buffer including \leftskip, \rightskip
+% \a@limit = maximal Arabic text length
+%
+% \a@vmodetrue : linebuffer undefined, \a@hsize valid
+% \a@vmodefalse: linebuffer valid, \a@limit valid, \a@@everypar used
+%
+%%%%%%%%%%%%%%%%%%%%%%% output routines %%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \putwordb@x #1{% deposit a word
+\ifa@vmode \arab@indent \fi
+\setbox \wordb@x \hbox {#1}\put@word }
+
+\def \arab@indent {% like \indent for Arabic
+\ifa@vmode \putlineb@x {\hskip \a@parindent }\the\a@@everypar
+\else \setbox \wordb@x \hbox {\hskip \a@parindent }\add@word \fi }
+
+\def \arab@noindent {% like \noindent for Arabic
+\ifa@vmode \initlineb@x \the\a@@everypar \fi }
+
+\def \leavea@vmode {% like \leavevmode for Arabic
+\ifa@vmode \arab@indent \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \initlineb@x {% make an empty Arabic line
+\putlineb@x {\arab@strut }\a@spacefalse }
+
+\def \putlineb@x #1{% open the line box
+\a@vmodefalse \a@limit \a@hsize
+\advance \a@limit -\leftskip \advance \a@limit -\rightskip
+\setbox \lineb@x \hbox {#1}\a@spacefalse }
+
+\def \add@word {% add word to line without space
+\putlineb@x {\unhbox \wordb@x \unhbox \lineb@x }}
+
+\def \addt@line {% add word to line unconditionally, spacing ?
+\ifa@space \putlineb@x
+ {\unhcopy \wordb@x \arab@space \unhcopy \lineb@x }%
+\else \add@word \fi }
+
+\def \put@word {% add word to line, spacing, break line if necessary
+\setbox \a@tempb@x \hbox
+{\unhcopy \wordb@x \ifa@space \arab@space \fi \unhcopy \lineb@x }%
+\ifdim \a@limit < \wd\lineb@x \put@line \add@word \else
+\ifdim \a@limit < \wd\a@tempb@x \put@line \add@word \else
+\setbox \lineb@x \box \a@tempb@x
+\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \put@line {% output the line, adjusted
+\ifarab \setbox\a@tempb@x \hbox to \a@hsize
+ {\hskip \rightskip \arab@strut
+ \charsubdefmax \m@ne \unhbox \lineb@x \hskip \leftskip }%
+ \put@ab@x
+\fi \ifnum \tracingarab > 1 \message {|}\fi }
+
+\def \short@line{% put line without adjustment, close line
+\ifarab \ifdim \wd\lineb@x = \z@ \else
+\ifspread \dimen0 \a@limit \divide \dimen0 8
+ \dimen2 \a@limit \advance \dimen2 -\wd\lineb@x
+ \setbox\a@tempb@x \hbox to \a@hsize
+ {\hskip \rightskip
+ \loop \hskip \parfillskip \advance \dimen2 -\dimen0
+ \ifdim \dimen2 > \z@ \repeat
+ \arab@strut \charsubdefmax \m@ne
+ \unhbox \lineb@x \hskip \leftskip }%
+\else \setbox\a@tempb@x \hbox to \a@hsize
+ {\hskip \rightskip \hskip \parfillskip
+ \arab@strut \charsubdefmax \m@ne
+ \unhbox \lineb@x \hskip \leftskip }%
+\fi \put@ab@x
+\fi\fi
+\ifnum \tracingarab > 1 \message {/}\fi }
+
+\def \put@ab@x {% deposit line
+\ifhmode \unskip {\endgraf }\penalty \clubpenalty
+\parindent \z@ \parskip \z@ \else
+\ifnum \a@prevgraf = \z@ \else \penalty \widowpenalty
+\fi\fi
+\begingroup \parfillskip 0pt plus 1fill
+ \leftskip \z@ \rightskip \z@ \noindent
+ \ifdim \a@leftmargin = \z@ \else \hskip \a@leftmargin \fi
+ \box\a@tempb@x \endgraf
+\endgroup \parindent \z@ \parskip \z@ \initlineb@x
+\advance \a@prevgraf \@ne \a@@prevgraf \prevgraf
+\advance \a@@prevgraf \@ne \prevgraf \a@@prevgraf }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\let \a@par@hook \relax % reserved
+
+\def \testoutput {% show output box
+\showboxbreadth = \maxdimen \showboxdepth = 6
+\message {"testoutput" activated.}
+\tracingoutput = 1 }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/aparse.sty b/language/arabic/arabtex/texinput/aparse.sty
new file mode 100644
index 0000000000..af54ac6f1f
--- /dev/null
+++ b/language/arabic/arabtex/texinput/aparse.sty
@@ -0,0 +1,1123 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aparse.sty
+% ArabTeX
+% Parser 26.05.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {aparse.sty} {3.11 get syllables } {26.05.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Arabic
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \def@arabvoc {% define vowel parsing routines for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% short vowels %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@a {\sv@@a }% short a
+\def \sv@e {\sv@@e }% short e
+\def \sv@i {\sv@@i }% short i
+\def \sv@o {\sv@@o }% short o
+\def \sv@u {\sv@@u }% short u
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% long vowels, plene %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@A {\sv@@A }% long a
+\def \sv@E {\sv@@E }% long e
+\def \sv@I {\sv@@I }% long i
+\def \sv@O {\sv@@O }% long o
+\def \sv@U {\sv@@U }% long u
+\def \sv@Y {\sv@Ytest }% alif maqsura or tooth
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% long vowels, defective %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\sv@def \a@a {\sv@a@a }% defective long a = Qur'an alif
+\sv@def \a@e {\sv@a@e }% explicit sukun
+\sv@def \a@i {\sv@a@i }% defective long i
+\sv@def \a@o {\sv@U }% special short u
+\sv@def \a@u {\sv@a@u }% defective long u
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% special vowels %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%\sv@def \a@A {\sv@a }% Turkish "a
+\sv@def \a@A {\sv@a@A }% Turkish "a
+\sv@def \a@E {\sv@a@E }% Kurdish ^e
+\sv@def \a@I {\sv@i }% Turkish "i
+\sv@def \a@O {\sv@a@O }% Kurdish and Turkish "o
+%\sv@def \a@U {\sv@u }% Turkish "u
+\sv@def \a@U {\sv@a@U }% Turkish "u
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% extra vowels %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\sv@def \a@Za {\sv@Za }% Kashmiri .a
+\sv@def \a@Ze {\sv@Ze }% explicit shadda
+\sv@def \a@Zi {\sv@Zi }% Sindhi -IN
+\sv@def \a@Zo {\sv@Zo }% Kashmiri .o
+\sv@def \a@Zu {\sv@Zu }% Kashmiri .u
+
+\sv@def \a@ZA {\sv@ZA }% Kashmiri .A
+\sv@def \a@ZE {\sv@ZE }% explicit madda
+\sv@def \a@ZI {\sv@ZI }% Kashmiri .y
+\sv@def \a@ZO {\sv@ZO }% Kashmiri .O
+\sv@def \a@ZU {\sv@ZU }% Kashmiri .U
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% hamza handling %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \syl@hamzabeg {\syl@@hamzabeg }% initial hamza
+
+\def \syl@hamza {\syl@@hamza }% non-initial hamza, context #1'
+
+\def \syl@test@voc {\syl@@test@voc }% vowel or sukun ?
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% miscellaneous %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \check@high {\check@@high }% long form for tooth ?
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% static definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@def #1{% define \sv@#1
+\xpa \def \csname sv@\string #1\endcsname }
+
+\newtoks \a@revwd
+\newtoks \sv@revwd \newtoks \last@con
+\newcount \last@mod \newcount \last@voc
+\newif \ifsyl@wdend \newif \ifm@dda
+
+\def \a@parse #1>{% parse token sequence into syllables
+\iftest@parse \tracingmacros = 1
+\iftest@scan \else \a@verb (#1)>\fi\fi
+\last@con ={.}\last@mod = 0 \last@voc = 0 \global\@highfalse
+\global \sv@revwd ={}\global \a@revwd ={}\syl@beg #1<<<>%
+\iftest@parse \tracingmacros = 0 %
+\xpa \a@verb \xpa (\the\a@revwd )>\fi }
+
+\def \test@wdend #1#2#3{% test for end of word: k #1 #2 #3
+\case #1\of
+{ N<{\syl@wdendtrue }
+ |"{\test@wdend #2#3<}
+\default {\if\is@shortvowel #1\test@wdend #2#3<\else
+ \ifcat -\nxp #1\syl@wdendtrue \else \syl@wdendfalse
+ \fi\fi }
+}\endcase }
+
+\def \isat@wdend #1#2#3{00% at end of word?
+\test@wdend #1#2#3\ifsyl@wdend \else \xpa \setiffalse \fi }
+
+\def \is@vowel #1{% test for all vowels
+\is@in@list #1aeiouAEIOUY%
+\a@a \a@e \a@i \a@o \a@u
+\a@A \a@E \a@I \a@O \a@U
+\a@Za \a@Ze \a@Zi \a@Zo \a@Zu
+\a@ZA \a@ZE \a@ZI \a@ZO \a@ZU >}
+
+\def \is@shortvowel #1{% test for short vowels
+\is@in@list #1aeiou\a@a >}
+
+\def \syl@end #1>{% kill the rest
+\relax }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% start of word %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \syl@beg #1{% start new word
+\global\@highfalse
+\case #1\of
+{ <{\syl@end }
+ Q{\syl@hamzabeg }
+ ^{\syl@hamzabeg A}
+ B{\syl@tatwilbeg }
+ "{\syl@quote@beg }
+ |{\syl@bar }
+ Y{\syl@con Y}
+ \cap {\syl@beg }
+\default {\syl@@beg #1}
+}\endcase }
+
+\def \syl@@beg #1{% start new word
+\ifcat -\nxp #1\def \next {\syl@spec #1}\else
+\if\is@vowel #1\def \next {\syl@wasla #1}% check for wasla
+ \else \def \next {\syl@con #1}% start syllable
+\fi\fi \next }
+
+\def \syl@bar #1{% check for || as "|
+\case #1\of
+{ |{\syl@quote@beg #1}
+ B{\syl@con |B}
+\default {\put@con W\v@cfalse \@sukfalse\syl@voctest #1}
+}\endcase }
+
+\def \syl@wasla #1{% start word with vowel without hamza
+\put@con a\def \next {\syl@voc #1}% prepare for vowel
+\ifx \a@lang \a@hebr % Hebrew mode
+ \ifx #1U\put@con W\else % Hebrew: no carrier, shureq follows
+ \ifx #1A\add@fathaspec % Hebrew: qames
+\fi\fi\fi
+\ifx #1E\put@con E\put@syl \def \next {\syl@con }\else
+\ifx #1\a@ZA \add@kh@hamzl \put@syl \def \next {\syl@con }\else
+\ifx #1A\ifiz@fet \add@madda \put@syl \def \next {\syl@con }\else
+ \def \next {\syl@voctest }%
+ \fi \else
+\ifiz@fet \else % wasla only in Arabic ?
+\ifh@mza \if\is@shortvowel #1%
+ \if@wasla \add@wasla \put@syl \def \next {\syl@con }% next syllable
+ \fi\fi
+\fi\fi\fi\fi\fi \next }
+
+\def \syl@wasla #1{% start word with vowel without hamza
+\def \next {\syl@voc #1}% prepare for vowel
+\ifu@gh \put@con Y\add@hamza\else \put@con a%
+\ifx \a@lang \a@hebr % Hebrew mode
+ \ifx #1U\put@con W\else % Hebrew: no carrier, shureq follows
+ \ifx #1A\add@fathaspec % Hebrew: qames
+\fi\fi\fi
+\ifx #1E\put@con E\put@syl \def \next {\syl@con }\else
+\ifx #1\a@ZA \add@kh@hamzl \put@syl \def \next {\syl@con }\else
+\ifx #1A\ifiz@fet \add@madda \put@syl \def \next {\syl@con }\else
+ \def \next {\syl@voctest }%
+ \fi \else
+\ifiz@fet \else % wasla only in Arabic ?
+\ifh@mza \if\is@shortvowel #1%
+ \if@wasla \add@wasla \put@syl \def \next {\syl@con }% next syllable
+ \fi\fi
+\fi\fi\fi\fi\fi\fi \next }
+
+\def \syl@tatwilbeg #1{% start word with tatwIl: -- #1
+ \put@con B%
+\if\is@vowel #1\def \next {\syl@voc #1}% harakat on tatwil
+\else \put@syl \def \next {\syl@con #1}% join
+\fi \next }
+
+\def \syl@spec #1#2{% deposit special character
+\ifx #1<\let \next \syl@end
+\else \put@spec #1% deposit character
+ \ifx #1-\def \next {\syl@con #2}\else % create joining form
+ \ifx #2<\let \next \syl@end \else % isolated character
+ \def \next {\syl@beg #2}% % start new word
+ \fi\fi
+\fi \next }
+
+\def \sv@syl #1#2#3{% explicit syllable
+\put@con #1\last@mod 0#2\last@voc 0#3\@highfalse \put@syl \syl@con }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% start of syllable %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \syl@con #1{% start a new syllable
+\case #1\of
+{ <{\syl@end }% not done
+ Q{\syl@hamza } % no Hamza
+ B{\put@con B\put@syl \syl@con }
+ W{\put@con w\syl@Wspec }% no ending wA or w-
+ "{\syl@quote@con }
+ |{\syl@bar@con }
+ \cap {\syl@con }
+ \sv@syl {\sv@syl }
+\default {\syl@@con #1}
+}\endcase }
+
+\def \syl@@con #1#2{% start a new syllable
+ \def \next {\syl@voctest #2}%
+\ifx #2\cap \def \next {\syl@@con #1}\else
+\ifx #1-\ifx #2<\def \next {\syl@spec #1#2}% joining form
+ \else \def \next {\syl@beg #2}% ignore hyphen, tie
+ \fi \else
+\ifcat -\nxp #1\def \next {\syl@spec #1#2}\else % special character
+\ifx #2-\def \next {\syl@assim #1}% assimilate?
+\else \put@con #1% deposit consonant
+ \ifx #1#2\if@ssim \add@shadda
+ \def \next {\syl@shadd@voctest #2}%
+ \fi\fi
+ \ifiz@fet\ifx #1X\ifx #2w\put@syl
+ \def \next {\syl@con #2}% waw-e-ma`dul
+ \fi\fi\fi
+\fi\fi\fi\fi \next }
+
+\def \syl@bar@con #1{% |
+\case #1\of
+{ |{\syl@quote@con #1}
+ B{\syl@tatwil }
+\default {\put@con |\@sukfalse \syl@voctest #1}
+}\endcase }
+
+\def \syl@tatwil #1{% test for 2 tatwils
+\put@con B%
+\ifx #1B\add@shadda \def \next {\syl@voctest }%
+\else \def \next {\syl@voctest #1}%
+\fi \next }
+
+\def\syl@shadd@voctest #1#2{% hyphen after shadda ? context #1#1 #2
+\ifx #2-\def \next {\syl@hyphen #1}\else
+ \def \next {\syl@voctest #2}%
+\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% hyphen %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \syl@hyphen #1#2#3{% hyphen after consonant, #1 - #2 #3
+\ifx #2<\add@sukun \put@syl \def \next {\syl@con -#2#3}\else % k - ||
+\ifx #3<\def \next {\syl@contie #1#2#3}\else % k - x ||
+\ifx #3N\def \next {\syl@contie #1#2#3}\else % k - x N
+\ifcat -\nxp #3\def \next {\syl@contie #1#2#3}\else % k - x -
+\ifx #1l\def \next {\syl@art #2#3}\else % l - #2 #3
+\ifx #1\a@H \put@syl \put@spec W\def \next {\syl@beg #2#3}\else % H - x
+\ifiz@fet \def \next {\syl@voctest #2#3}% Persian suffix
+\else \add@sukun \put@syl \def \next {\syl@beg #2#3}% start new word
+\fi\fi\fi\fi\fi\fi\fi \next }
+
+\def \syl@art #1#2#3{% article, (a)l-#1#2#3
+ \def \next {\syl@beg #1#2#3}% ought to test for sun letter !
+\ifx #1#2% no sukun before double (sun) letter
+ \ifx #1Q\add@sukun \else
+ \ifx #2#3\def \next {\syl@beg #2#3}% special case l-ll
+ \fi \fi
+\else \add@sukun % moon letter
+\fi \put@syl \next }
+
+\def \syl@assim #1#2{% test for assimilation #1 - #2
+\ifx #2\cap \def \next {\syl@assim #1}\else
+ \put@con #1\def \next {\syl@hyphen #1#2}% #1 - #2
+\if@ssim\ifx #1#2% ought to test for sun letter !
+ \put@con l\def\next {\syl@art #1#2}% substitute l - #1 #2
+ \fi
+\fi\fi \next }
+
+\def \syl@contie #1#2#3{% connecting vowel, #1 - #2#3
+ \def \next {\syl@voctest #2#3}%
+\ifiz@fet \sv@test@izafet #1#2#3%
+\fi \next }
+
+\def \syl@voctie #1#2#3{% hyphen after vowel, #1 - #2 #3
+ \def \next {\put@syl \syl@con -#2#3}% close syllable
+\ifiz@fet\ifx #3<\sv@test@izafet #1#2#3\else
+ \ifcat -\nxp #3\sv@test@izafet #1#2#3\else
+ \ifx #1a\put@con \a@H % supply final silent H
+ \def \next {\syl@hyphen \a@H #2#3}\else
+ \ifx #1e\put@con \a@H % supply final silent H
+ \def \next {\syl@hyphen \a@H #2#3}%
+ \fi\fi\fi\fi
+\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% special cases for Persian %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \syl@hahtie #1#2#3{% connecting vowel, H - #2#3
+ \def \next {\syl@hah #2#3}%
+\case #2\of
+{ IE{}
+\default {\sv@test@izafet #1#2#3}
+}\endcase \next }
+
+\def \syl@hah{% H at the end, ha-ye hawwaz-e ma.hfi
+\put@syl \put@spec W\syl@beg }
+
+\def \sv@izafet #1#2{% #1 - i/e/_i
+\case #1\of
+{ I\a@H{\add@hamza }
+ AU{\put@syl \put@con y}
+}\endcase
+\ifx #2\a@i \add@kasraspec \else \add@kasra % long izafet ?
+\fi \put@syl \syl@con }
+
+\def \sv@wahdat #1#2{% #1 - I/E
+\case #1\of
+{ I\a@H{\put@syl \put@spec W\put@con a}
+ AU{\put@syl \put@con Y\add@hamza }
+}\endcase
+\ifx #2I\add@kasra \fi
+\put@syl \put@con y\put@syl \syl@con }
+
+\def \sv@test@izafet #1#2#3{% special cases for -e, -i, -_e, -_i, -I, -E
+\case #2\of
+{ e{\def \next {\sv@izafet #1e#3}}
+i\a@i\a@E{\def \next {\sv@izafet #1i#3}}
+ y{\def \next {\sv@izafet #1e}}
+ I{\def \next {\sv@wahdat #1I#3}}
+ E{\def \next {\sv@wahdat #1E#3}}
+}\endcase }
+
+\def \syl@endvoc #1{% test for H
+ \def \next {\syl@con #1}%
+\ifiz@fet \ifx #1\a@H \put@con \a@H
+ \def \next {\syl@@endvoc }%
+\fi\fi \next }
+
+\def \syl@@endvoc #1#2{% char after H
+\case #1\of
+{ -{\syl@hahtie \a@H #2}
+ Q{\add@hamza \syl@voc }
+ <{\put@syl \syl@end #2}
+ "{\put@syl \syl@quote@beg #2}
+ |{\put@syl \syl@bar #2}
+\default {\put@syl
+ \ifcat -\nxp #1\def \next {\syl@spec #1#2}\else
+ \def \next {\syl@beg #1#2}% start a new word
+ \fi \next }
+}\endcase }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% quoting %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \syl@quote@beg #1#2{% start word with quote: " #1 #2
+\case #1\of
+{ '{\put@con Q\syl@voctest #2}
+ Q{\put@con Q\syl@voctest }
+ |{\put@spec W\syl@beg #2}% start new word
+\default {\syl@@quote@beg #1#2}
+}\endcase }
+
+\def \syl@@quote@beg #1{% start word with quote: " #1 #2
+\if\is@vowel #1\def \next {\syl@wasla #1}% " v k: alif vowel
+% \if@wasla \v@ctrue \else \add@wasla \togglev@c \fi
+ \if@wasla \v@ctrue \@waslafalse \else \@waslatrue \togglev@c \fi
+\else \put@con a\togglev@c \add@wasla \put@syl % alif implied
+ \ifx #1"\def \next {\syl@con }% " " k: alif wasla
+ \else \def \next {\syl@con #1}% " k: alif wasla
+ \fi
+\fi \next }
+
+\def \syl@quote@con #1#2{% start syllable with quote: " #1 #2
+\case #1\of
+{ '{\put@con Q\syl@voctest #2}
+ Q{\put@con Q\syl@voctest }
+ |{\put@con W\syl@voctest #2}
+\default {\togglev@c \syl@con #2}
+}\endcase }
+
+% original version of logic:
+\def \syl@quote@voc #1#2{% continue syllable with quote: " #1 #2
+\case #1\of
+{ B{\togglev@c \add@sukun \put@syl \syl@con #1#2}
+ "{\togglev@c \add@sukun \put@syl \syl@beg #2}
+ |{\syl@@quote@voc #2}
+ '{\add@hamza \syl@voctest #2}
+ Q{\add@hamza \syl@voctest }
+\default {\togglev@c \syl@voctest #1#2}% vowel: sukun
+}\endcase }
+
+% patches for Arnoud Vrolijk:
+% make "' sukun hamza instead of hamza modifier
+\def \syl@quote@voc #1{% continue syllable with quote: " #1 #2
+\case #1\of
+{ B{\togglev@c \add@sukun \put@syl \syl@con #1}
+ "{\togglev@c \add@sukun \put@syl \syl@beg }
+ |{\syl@@quote@voc }
+\default {\togglev@c \syl@voctest #1}% vowel: sukun
+}\endcase }
+
+\def \syl@@quote@voc #1{% continue syllable with quote: "| #1 #2
+ \put@syl \put@spec W%
+\if\is@vowel #1\def \next {\syl@wasla #1}% vowel: wasla
+\else \def \next {\syl@con #1}% consonant
+\fi \next }
+
+\def \togglev@c {% toggle diacritic
+\ifv@c \v@cfalse \else \v@ctrue \fi % toggle vowel indicator
+\if@suk \@sukfalse \else \@suktrue \fi % toggle sukun, wasla
+}
+
+\def \voc@suk {% normalize vowels and sukun
+\let \ifv@c \if@vocals \let \if@suk \if@sukun }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% vowel or end of syllable %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \syl@@test@voc #1{% vowel or sukun ? variant in Hebrew!
+\if\is@vowel #1\def \next {\syl@voc #1}% test for vowel
+\else \def \next {\syl@con #1}%
+ \ifurd@ \ifx #1h\else \add@sukun \fi
+ \else \add@sukun
+ \fi \put@syl
+\fi \next }
+
+\def \syl@voctest #1{% continue open syllable: K #1
+\case #1\of
+{ "{\syl@quote@voc }
+ ^{\m@ddatrue \syl@voctest }
+ |{\syl@bar@voc }
+ B{\syl@tatwil@voc }
+ \cap {\syl@voctest }
+\default {\syl@test@voc #1}
+}\endcase }
+
+\def \syl@bar@voc #1{% K | #1
+\ifx #1|\def \next {\syl@quote@voc |}\else
+\ifx #1"\def \next {\syl@test@quote }\else
+\if\is@vowel #1\def \next {\syl@test@voc #1|}\else
+ \def \next {\syl@test@voc |#1}% no bar
+\fi\fi\fi \next }
+
+\def \syl@tatwil@voc #1{% K B #1
+\if\is@vowel #1\def \next {\syl@test@voc #1B}\else
+ \def \next {\syl@test@voc B#1}% no vowel
+\fi \next }
+
+\def \syl@test@quote #1{% K |" #1
+\if\is@vowel #1\def \next {\syl@quote@voc #1|}\else
+ \put@syl \put@con |\def \next {\syl@quote@voc "#1}%
+\fi \next }
+
+\iffalse % deleted for efficiency; for documentation only !
+% and also for compatibility with the Hebrew mode !!
+\def \syl@voc #1{% test for vowel
+\case #1\of
+{ <{\syl@end }% this cannot happen! or can it?
+ -{\syl@voc }% ignore hyphen here
+ a \a@A{\sv@@a }% short a, Turkish "a
+ e {\sv@@e }% short e
+ i \a@I{\sv@@i }% short i, Turkish "i
+ o {\sv@@o }% short o
+ u \a@U{\sv@@u }% short u, Turkish "u
+ A {\sv@@A }% long a
+ E {\sv@@E }% long e
+ I {\sv@@I }% long i
+ O {\sv@@O }% long o
+ U \a@o{\sv@@U }% long u, special short u
+ Y {\sv@Ytest }% alif maqsura or tooth
+ \a@a {\sv@a@a }% Qur'an alif
+ \a@e {\sv@a@e }% frei
+ \a@i {\sv@a@i }% defective long i
+ \a@u {\sv@a@u }% defective long u
+ \a@E {\sv@a@E }% kurdish ^e
+ \a@O {\sv@a@O }% Kurdish and Turkish "o
+ \a@Za {\sv@Za }% Kashmiri .A
+ \a@Ze {\sv@Ze }% Kashmiri .a
+ \a@Zi {\sv@Zi }% Sindhi -IN
+ \a@Zo {\sv@Zo }% Kashmiri u'
+ \a@Zu {\sv@Zu }% Kashmiri U'
+\default {\csname sv@\string #1\endcsname}% switch on vowel
+}\endcase }
+\fi
+
+\def \syl@voc #1{% test for vowel, also for Hebrew mode
+\case #1\of
+{ <{\syl@end }% this cannot happen! or can it?
+ -{\syl@voc }% ignore hyphen here
+\default {\csname sv@\string #1\endcsname}% switch on vowel
+}\endcase }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% auxiliary vowel routines
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \test@B #1#2{% tatweel or ligature break
+\case #1\of
+{ |B{\put@con #1\put@syl #2}
+\default {#2#1}% deposit vowel carrier
+}\endcase }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% short vowels %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@@a #1{% short a
+\ifk@rd \put@syl \def \next {\test@B #1\sv@a@Hvwl }\else
+\def \next {\sv@aInt #1}\fi \next }
+
+\def \sv@@a #1{% short a
+\ifu@gh \put@syl \put@con a\put@syl \def \next {\syl@con #1}\else
+\ifk@rd \put@syl \def \next {\test@B #1\sv@a@Hvwl }\else
+ \def \next {\sv@aInt #1}%
+\fi\fi \next }
+
+\def \sv@a@Hvwl {% kurdish aH carrier
+\put@con \a@H \put@syl \syl@endvoc }
+
+\def \sv@aInt #1{% short a
+\ifx #1N\def \next {\syl@Nspec }% tanwin alif
+\else \add@fatha \put@syl \def \next {\sv@@aInt #1}%
+\fi \next }
+
+\def \sv@@aInt #1{% short a
+\case #1\of
+{ e{\ifurd@ \put@con E\else \put@con Y\add@hamza
+ \fi \put@syl \syl@con }\else
+ ou{\put@con w\put@syl \syl@con }\else
+ i{\put@con y\put@syl \syl@con }\else
+\default {\syl@endvoc #1}% test for H
+}\endcase }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@@e {% short e
+\ifk@rd \xpa \sv@a \else
+\ift@rk \xxpa \sv@a \else \xxpa \sv@eInt \fi\fi }
+
+\def \sv@@e {% short e
+\ifk@rd \def \next {\sv@a }\else
+\ift@rk \def \next {\sv@a }\else
+\ifu@gh \put@syl \put@con \a@Y \put@syl \def \next {\syl@con }\else
+\def \next {\sv@eInt }\fi\fi\fi \next }
+
+\def \sv@eInt #1{% zwarakay in Pashto, otherwise short a
+\ifk@sh \put@syl \put@con \a@E \put@syl \def \next {\syl@con #1}%
+\else \def \next {\syl@endvoc #1}% test for H
+ \ifp@sht \add@zwarakay \put@syl
+ \ifx #1e\def \next {\syl@con }\put@con Y\add@hamza \put@syl
+ \fi
+ \else \add@kasra \put@syl
+ \ifiz@fet % provisions for the preposition be-
+ \if\is@vowel #1\def \next {\syl@beg #1}%
+ \fi\fi
+ \fi
+\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@@i #1{% short i
+\case #1\of
+{ y{\sv@@I }% iy -> I
+ N{\add@kasratan \put@syl \syl@ignore }% tanwin yah
+ -{\add@kasra \syl@voctie i}
+\default {\add@kasra \put@syl \syl@con #1}% next syllable
+}\endcase }
+
+\def \sv@@i {% short i
+\ifu@gh \put@syl \put@con Y\put@syl \xpa \syl@con
+\else \xpa \sv@@iInt \fi }
+
+\def \sv@@iInt #1{% short i
+\case #1\of
+{ y{\sv@@I }% iy -> I
+ N{\add@kasratan \put@syl \syl@ignore }% tanwin yah
+ -{\add@kasra \syl@voctie i}
+\default {\add@kasra \put@syl \syl@con #1}% next syllable
+}\endcase }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@@o #1{% ammad in Pashto, otherwise short u
+\ifk@sh \put@syl \put@con \a@W \put@syl
+ \def \next {\syl@con #1}\else
+\ifk@rd \put@syl \def \next {\test@B #1\sv@a@Wvwl }\else
+ \def \next {\sv@oInt #1}%
+\fi\fi \next }
+
+\def \sv@@o #1{% ammad in Pashto, otherwise short u
+\ifk@sh \put@syl \put@con \a@W \put@syl
+ \def \next {\syl@con #1}\else
+\ifu@gh \put@syl \put@con w\put@syl
+ \def \next {\syl@con #1}\else
+\ifk@rd \put@syl \def \next {\test@B #1\sv@a@Wvwl }\else
+ \def \next {\sv@oInt #1}%
+\fi\fi\fi \next }
+
+\def \sv@a@Wvwl {% kurdish O carrier
+\put@con \a@W \put@syl \syl@con }
+
+\def \sv@oInt #1{% ammad in Pashto, otherwise short u
+\ifp@sht \add@ammad \else \add@damma
+\fi \put@syl
+\ifx #1i\put@con y\put@syl \def \next {\syl@con }\else
+ \def \next {\syl@endvoc #1}% test for H
+\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@@u {% short u
+\ifk@rd \put@syl \xpa \sv@ukurd \else \xpa \sv@uInt \fi }
+
+\def \sv@@u {% short u
+\ifk@rd \put@syl \def \next {\sv@ukurd }\else
+\ifu@gh \put@syl \put@con \a@w \put@syl \def \next {\syl@con }\else
+\def \next {\sv@uInt }\fi\fi \next }
+
+\def \sv@ukurd #1{% short u, for Kurdish
+\ifx #1Q\def \next {\syl@hamza }\else
+\def \next {\test@B #1\sv@wvwl }\fi \next }
+
+\def \sv@wvwl {% w carrier
+\put@con w\put@syl \syl@con }
+
+\def \sv@uInt #1{% short u, otherwise
+\case #1\of
+{ w{\sv@UInt }% uw -> U
+ N{\add@dammatan \put@syl \syl@ignore }% tanwin waw
+\default {\add@damma \put@syl \syl@con #1}% next syllable
+}\endcase }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% long vowels %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@@A #1{% long A
+\ifk@rd \else \add@fatha \fi
+\put@syl \test@B #1\sv@Avwl }
+
+\def \sv@Avwl #1{% long A vowel
+ \put@con a% may also serve as consonant, carry vowels
+ \ifm@dda \add@madda \m@ddafalse \fi
+\ifx #1-\def \next {\syl@voctie A}\else
+ \def \next {\syl@voctest #1}\@sukfalse % next syllable
+\fi \next }
+
+\def \sv@Aa #1{% long a + a ? whence ??
+\case #1\of
+{ |B{\put@con #1\put@syl \put@con a%
+ \ifm@dda \add@madda \m@ddafalse
+ \fi \put@syl \syl@con }
+ -{\ifm@dda \add@madda \m@ddafalse
+ \fi \syl@voctie A}
+ a{\ifm@dda \add@madda \m@ddafalse
+ \fi \sv@AaN }
+ "{\ifm@dda \add@madda \m@ddafalse
+ \fi \v@ctrue \@suktrue \sv@Aa }
+\default {\ifm@dda \add@madda \m@ddafalse
+ \fi \put@syl \syl@con #1}% next syllable
+}\endcase }
+
+\def \sv@AaN #1{% long a + aN ?
+ \def \next {\syl@con a#1}% next syllable
+\ifx #1N\def \next {\syl@aN}\else \put@syl
+\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@@E {% long e
+\ift@rk \xpa \sv@I \else \xpa \sv@EInt \fi }
+
+\def \sv@EInt #1{% long E
+\ifk@sh \put@syl \put@con E\put@syl \def \next {\syl@con #1}%
+\else \def \next {\test@B #1\sv@Evwl }%
+ \ifp@sht \add@zwarakay \else
+ \ifiz@fet \else \add@kasra
+ \fi\fi \put@syl
+\fi \next }
+
+\def \sv@Evwl #1{% long E vowel
+\ifx #1e\put@con L\def \next {\syl@con }\else % ey
+ \def \next {\syl@con #1}% next syllable
+\ifp@sht \put@con \a@Y \else
+\ifurd@ \put@con E\else
+ \put@con y%
+\fi\fi\fi \put@syl \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@@I #1{% long i
+\ifk@sh \put@syl \put@con y\add@kasraspec \put@syl
+ \def \next {\syl@con #1}\else
+ \add@kasra \put@syl \def \next {\test@B #1\sv@Ivwl }%
+\fi \next }
+
+\def \sv@Ivwl #1{% long i carrier
+ \put@con y\ifm@dda \add@madda \m@ddafalse \fi % -I becomes -iy,
+\case #1\of
+{ y{\@sukfalse \add@shadda \syl@voctest} % -Iy becomes -iyy
+ -{\syl@voctie I}
+\default {\@sukfalse \syl@voctest #1}% next syllable
+}\endcase }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@@O #1{% long o
+\ifp@sht \add@ammad \else
+\ifiz@fet \else \add@damma
+\fi\fi \put@syl \test@B #1\sv@Ovwl }
+
+\def \sv@Ovwl {% long o carrier
+\put@con w\put@syl \syl@con }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@@U #1{% long u
+\ifk@sh \put@syl \put@con w\add@ammad \put@syl
+ \def \next {\syl@con #1}\else
+\ifk@rd \put@syl \def \next {\test@B #1\sv@wwvwl }\else
+ \def \next {\sv@UInt #1}%
+\fi\fi \next }
+
+\def \sv@wwvwl {% kurdish double w carrier
+\put@con w\put@syl \put@con w\put@syl \syl@con }
+
+\def \sv@UInt #1{% long u
+\add@damma \put@syl \test@B #1\sv@Uvwl }
+
+\def \sv@Uvwl #1{% long u carrier
+ \put@con w\ifm@dda \add@madda \m@ddafalse \fi % -U becomes -uw
+\case #1\of
+{ w{\@sukfalse\add@shadda \syl@voctest} % -Uw becomes -uww
+ -{\syl@voctie U} % not -U-
+ A{\put@syl \put@con a\put@syl \syl@con } % not -UA
+\default {\sv@@Uvwl #1}
+}\endcase }
+
+\def \sv@@Uvwl #1{% long u carrier
+\ifiz@fet\ifx #1Q\def \next {\sv@UQ}\else % not -U'
+ \def \next {\syl@voctest #1}\@sukfalse % next syllable
+ \fi
+\else \def \next {\syl@voctest #1}\@sukfalse % next syllable
+\fi \next }
+
+\def \sv@UQ #1#2#3#4{% UQU#2#3#4, U' in Farsi
+\if\isat@wdend #2#3#4\add@hamza % final hamza on waw ?
+ \ifx #2-\def \next {\syl@hyphen Q#3#4}% ezafe ?
+ \else \def \next {\syl@voctest #2#3#4}% vowel ?
+ \fi
+\else \put@syl \def \next {\syl@hamza U#2#3#4}% next syllable
+\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@Ytest #1{% is alif maqsura vowel or consonant?
+\case #1\of
+{ "{\put@syl \syl@con Y#1}
+ < B{\sv@YInt #1}
+\default {\ifcat -\nxp #1\def \next {\sv@YInt #1}%
+ \else \put@syl \def \next {\syl@con Y#1}%
+ \fi \next }
+}\endcase }
+
+\def \sv@YInt #1{% alif maqsura is vowel
+\add@fatha \put@syl \test@B #1\sv@Yvwl }
+
+\def \sv@Yvwl {% put alif maqsura
+\put@con Y\ifqur@n \add@fathaspec \fi \put@syl \syl@con }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% special vowels %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@a@a #1{% Qur'an alif
+ \add@fathaspec \put@syl
+\case #1\of
+{ \a@H {\put@con \a@H\put@syl \syl@con }%
+ U{\put@con w\put@syl \syl@con }%
+ Y{\put@con Y\put@syl \syl@con }%
+ I{\put@con y\put@syl \syl@con }%
+\default {\syl@con #1}%
+}\endcase }
+
+\def \sv@a@e {% explicit sukun
+\add@sukun \put@syl \syl@con }
+
+\def \sv@a@i {% defective long i
+\add@kasraspec \put@syl \syl@con }
+
+\def \sv@a@u {% defective long u
+\add@ammad \put@syl \syl@con }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@a@A {% Uighuric and Turkish
+\ifu@gh \put@syl \put@con \a@H \put@syl \xpa \syl@con
+\else \xpa \sv@a \fi }
+
+\def \sv@a@E #1{% kurdish ^e
+\ifk@rd \put@syl \def \next {\test@B #1\sv@a@Evwl }\else
+\add@kasraspec \put@syl \def \next {\syl@con #1}\fi \next }
+
+\def \sv@a@Evwl {% kurdish E carrier
+\put@con \a@E \put@syl \syl@con }
+
+\def \sv@a@O #1{% Kurdish and Turkish "o
+\put@syl
+\ifk@rd \def \next {\test@B #1\sv@wa@Evwl }\else
+\def \next {\test@B #1\sv@wvwl }\fi \next }
+
+\def \sv@a@O #1{% Kurdish and Turkish "o
+\put@syl
+\ifu@gh \put@con \a@W \put@syl \def \next {\syl@con #1}\else
+\ifk@rd \def \next {\test@B #1\sv@wa@Evwl }\else
+\def \next {\test@B #1\sv@wvwl }\fi\fi \next }
+
+\def \sv@wa@Evwl {% kurdish W E carrier
+\put@con w\put@syl \put@con \a@E \put@syl \syl@con }
+
+\def \sv@a@U {% Uighuric and Turkish
+\ifu@gh \put@syl \put@con \a@aw \put@syl \xpa \syl@con
+\else \xpa \sv@u \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@Za {% Kashmiri .a
+\add@kh@hamza \put@syl \syl@con }
+
+\def \sv@Ze {% explicit shadda
+%\add@shadda \put@syl \syl@con }
+%\add@shadda \syl@voctest }
+\voc@suk \add@shadda \syl@voctest }
+
+\def \sv@Zi {% Sindhi -IN
+\add@bars \put@syl \syl@con }
+
+\def \sv@Zo {% Kashmiri .o
+\put@syl \put@con \a@aU \put@syl \syl@con }
+
+\def \sv@Zu {% Kashmiri .u
+\add@kl@hamza \put@syl \syl@con }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@ZA {% Kashmiri .A
+\put@syl \put@con A%
+\add@kh@hamzl \put@syl \syl@con }
+
+\def \sv@ZE {% explicit madda
+\add@madda \put@syl \syl@con }
+
+\def \sv@ZI {% Kashmiri .y
+\put@syl \put@con \a@as \syl@voctest }
+
+\def \sv@ZO {% Kashmiri .O
+\put@syl \put@con \a@aU \put@syl \put@con A\add@fatha \put@syl \syl@con }
+
+\def \sv@ZU {% Kashmiri .U
+\add@kl@hamzl \put@syl \syl@con }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% Nunation %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \syl@Nspec {% tanwin fatha
+\ifh@mza \ifaN@alif \def \next {\syl@aN@alif }%
+ \else \def \next {\syl@aN }%
+ \fi
+\else \add@fathatan \put@syl \def \next {\syl@ignore }%
+\fi \next }
+
+\def \syl@aN #1{% tanwin fatha on actual character, alif required ?
+ \add@fathatan \put@syl \def \next {\syl@ignore #1}%
+\ifcat -\nxp #1%
+ \xpa\if \xpa\is@in@list \the\last@con YTaB>\else
+ \put@con a\put@syl % deposit alif
+ \fi
+\fi \next }
+
+\def \syl@aN@alif #1{% tanwin fatha at the end, alif required ?
+\ifcat -\nxp #1\def \next {\syl@ignore #1}%
+ \xpa\if \xpa\is@in@list \the\last@con YTaB>\else
+ \ifv@c \put@syl \v@ctrue \else \put@syl
+ \fi \put@con a% % deposit alif
+ \fi
+\else \def \next {\syl@ignore }%
+ \ifv@c \put@syl \v@ctrue \else \put@syl
+ \fi \put@con #1% % deposit character
+\fi \add@fathatan \put@syl \next }
+
+\def \syl@Wspec #1{% final w with silent alif ?
+\case #1\of
+{ -{\syl@Wspec }% ignore hyphen
+ u{\add@damma \put@syl
+ \put@con a\put@syl \syl@con }% % ending w-u
+\default {\add@sukun \put@syl
+ \put@con a\put@syl \syl@con }% % ending w
+}\endcase }
+
+\def \syl@ignore #1{% kill the rest after Tanwin except U, A, a, y, and Y
+\case #1\of
+{ -{\syl@ignore }
+ U{\put@con w\put@syl \syl@ignore }
+ aA{\put@con a\put@syl \syl@ignore }
+ Y{\put@con Y\put@syl \syl@ignore }
+ y{\put@con y\put@syl \syl@ignore }
+\default {\let \next \syl@ignore
+ \ifcat -\nxp #1\def \next {\syl@con #1}% % tie
+ \fi \next }
+}\endcase }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% Hamza %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newif \if@ay
+
+\def \syl@@hamzabeg #1#2{% initial hamza
+\ifk@rd \ifx #2i\def \next {\syl@con }\put@con a% alif
+ \add@hamza \add@hamzalow \put@syl
+ \else \put@con Y\add@hamza \def \next {\syl@voctest #2}%
+ \fi \else
+\ifh@mza \def \next {\syl@beghamza #1#2}\else
+ \def \next {\syl@hamzaverb #1#2}% verbatim mode
+\fi\fi \next }
+
+\def \syl@@hamzabeg #1#2{% initial hamza
+\ifk@rd \ifx #2i\def \next {\syl@con }\put@con a% alif
+ \add@hamza \add@hamzalow \put@syl
+ \else \put@con Y\add@hamza \def \next {\syl@voctest #2}%
+ \fi \else
+\ifu@gh \put@con Y\add@hamza \def \next {\syl@voctest #2}\else
+\ifh@mza \def \next {\syl@beghamza #1#2}\else
+ \def \next {\syl@hamzaverb #1#2}% verbatim mode
+\fi\fi\fi \next }
+
+\def \syl@@hamza #1{% non-initial hamza, context #1'
+\ifx #1-\def \next {\syl@hamzabeg #1}\else
+\ifh@mza \def \next {\syl@arabhamza #1}\else
+ \def \next {\syl@hamzaverb #1}% verbatim mode
+\fi\fi \next }
+
+\def \syl@hamzaverb #1{% verbatim hamza, #1 = carrier
+\case #1\of
+{ |{\put@con Q}
+ A{\put@con a\add@madda \@sukfalse }
+ y{\put@con Y\add@hamza }
+ u{\put@con w\add@hamza }
+ i{\put@con a\add@hamza \add@hamzalow }
+\default {\put@con #1\add@hamza }
+}\endcase \syl@voctest }
+
+\def \syl@beghamza #1#2{% start word with hamza, context '#2
+\ifx #2"\def \next {\syl@beghamza #1}\togglev@c % toggle vowel
+\else \def \next {\syl@@beghamza #2}%
+\fi \next }
+
+\def \syl@@beghamza #1{% start word with hamza, context '#1
+\put@con a\def \next {\syl@con }% alif
+\case #1\of
+{ A{\add@madda }
+ \a@a {\add@fathaspec }
+ a\a@A{\add@hamza \add@fatha }
+i\a@i\a@I{\add@hamza \add@kasra \add@hamzalow }
+ou\a@O\a@U{\add@hamza \add@damma }
+ eE\a@E{\add@hamza \ifp@sht \add@zwarakay \else \add@kasra \fi }
+ I\a@e{\add@hamza \add@kasra \add@hamzalow \put@syl \put@con y}
+OU\a@o\a@p\a@w{\add@hamza \add@damma \put@syl \put@con w}
+\default {\add@hamza \add@sukun \def \next {\syl@con #1}}
+}\endcase
+\put@syl \next }
+
+\def \syl@arabhamza #1#2#3{% non-initial hamza, context #1'#2#3
+\case #2\of
+{ "{\togglev@c \syl@hamza #1#3} % toggle vowel
+ |{\syl@hamza #1#3} % ignore bar
+ AIUYEO{\syl@hamzamid #1#2#3#3} % arabic rules
+\default {\syl@@arabhamza #1#2#3} % test for final position
+}\endcase }
+
+\def \syl@@arabhamza #1#2#3#4{% non-initial hamza, context #1'#2#3#4
+ \def \next {\syl@hamzamid #1#2#3#3#4}%
+\if\isat@wdend #2#3#4% test for hamza as last consonant
+\ifiz@fet \else \def \next {\syl@hamzaend #1#2#3#4}%
+\fi\fi \next }
+
+\def \syl@hamzamid #1#2#3{% test for #1 a y ; obsolete?
+ \@ayfalse
+\ifx #2a\ifx #3y\@aytrue
+\fi\fi \syl@@hamzamid #1#2#3}
+
+\def \syl@@hamzamid #1#2#3{% intermediate hamza, context #1'#2#3
+ \def \next {\syl@voctest #2}%
+\ifx #1I\ifqur@n \put@con B\else \put@con Y\fi \add@hamza \else
+\if\is@in@list #1iy>\put@con Y\add@hamza \else
+\if\is@in@list #2iIE>\put@con Y\add@hamza
+ \ifqur@n \add@hamzalow \fi \else
+\if\is@in@list #1uo>\put@con w\add@hamza \else
+\if\is@in@list #2uo>\put@con w\add@hamza \else
+\if\is@in@list #2UO>%
+ \ifqur@n \put@Q #1\else \put@con w\add@hamza \fi \else
+\if\is@in@list #1AUO>\put@Q #1\else
+\if\is@in@list #2A>\put@con a\add@madda
+ \put@syl \def \next {\syl@con }\else
+\if\is@in@list #2\a@a>\put@con a\add@fathaspec
+ \put@syl \def \next {\syl@con }\else
+\ifx #1a\put@con a\add@hamza \else
+\ifx #2a\ifqur@n \put@Q #1\else \put@con a\add@hamza \fi \else
+ \put@Q #1% deposit Hamza
+\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+\ifx #2Q\def \next {\syl@doublehamza }%
+\fi \next }
+
+\def \syl@hamzaend #1{% final hamza, context #1'
+\case #1\of
+{ i{\put@con Y\add@hamza \syl@voctest }
+ u{\put@con w\add@hamza \syl@voctest }
+ a{\put@con a\add@hamza \syl@voctest }
+\default {\syl@@hamzaend #1}
+}\endcase }
+
+\def \syl@@hamzaend #1#2#3{% final hamza, context #1'#2#3
+\put@con Q\def \next {\syl@voctest #2#3}% deposit Hamza
+\ifx #2a\ifx #3N\def \next {\syl@hamza@Nspec #1}%
+\fi\fi \next }
+
+\def \syl@hamza@Nspec #1#2{% #1'aN , put alif ?
+\ifx #1A\else
+\ifx #1U\else
+\if\is@end@char #1\else
+ \ifqur@n \put@con B\else \put@con Y\fi \add@hamza
+\fi\fi\fi
+ \add@fathatan \put@syl
+\ifx #1A\else
+ \ifx #2Y\put@con Y% put alif maqsoura
+ \else \put@con a% put alif
+ \fi
+ \put@syl
+\fi \syl@ignore #2}
+
+\def \syl@doublehamza #1{% double Hamza
+\add@shadda \syl@voctest }
+
+\def \put@Q #1{% deposit isolated hamza after #1
+\ifqur@n \if\is@end@char #1\put@con Q\else \put@con B\add@hamza \fi
+\else\put@con Q%
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%% deposit characters %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \check@@high #1{% % long form for tooth ?
+\if\is@in@list #1YntCbyp>% % YntCbyp : toggle
+ \if@high \global\@highfalse \else \global\@hightrue
+ \fi \else
+\if\is@in@list #1sxSD>\global\@hightrue \else % sxSD : force high
+ \global\@highfalse % otherwise : force low
+\fi\fi }
+
+\def \put@con #1{% start syllable
+\last@con ={#1}}
+
+\def \put@syl {% deposit syllable
+\if@high \advance \last@mod \c@high \fi
+\xpa \check@high \the\last@con
+\let \ifv@c \if@vocals \let \if@suk \if@sukun
+\def \rev@wd {\the\last@con \the\last@mod +\the\last@voc *}\put@rev@wd
+\global \@waslatrue }
+
+\def \put@spec #1{% deposit special character
+\last@con={#1}\def \rev@wd {#10+0*}\put@rev@wd
+\global \@waslafalse }
+
+\def \put@rev@wd {% deposit output item % no group!
+\edef \temp {\global \nxp\a@revwd {\rev@wd \the\a@revwd }% % \temp
+\global \nxp\sv@revwd {\the\sv@revwd \rev@wd }}\temp
+\last@mod = 0 \last@voc = 0 }
+
+%%%%%%%%%%%%%%%%%%%%%% deposit .harakAt %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \add@shadda {\advance \last@mod \c@shadda }
+\def \add@hamza {\advance \last@mod \c@hamza }
+\def \add@hamzalow {\advance \last@mod \c@hamzalow }
+\def \add@madda {\advance \last@mod \c@madda }
+
+\def \add@wasla {\if@suk \last@voc \c@wasla \fi }
+\def \add@sukun {\if@suk \last@voc \c@sukun \fi }
+\def \add@fatha {\ifv@c \last@voc \c@fatha \fi }
+\def \add@kasra {\ifv@c \last@voc \c@kasra \fi }
+\def \add@damma {\ifv@c \last@voc \c@damma \fi }
+\def \add@zwarakay {\ifv@c \last@voc \c@zwarakay \fi }
+\def \add@fathatan {\ifv@c \last@voc \c@fathatan \fi }
+\def \add@kasratan {\ifv@c \last@voc \c@kasratan \fi }
+\def \add@dammatan {\ifv@c \last@voc \c@dammatan \fi }
+\def \add@fathaspec {\ifv@c \last@voc \c@fathaspec \fi }
+\def \add@kasraspec {\ifv@c \last@voc \c@kasraspec \fi }
+\def \add@ammad {\ifv@c \last@voc \c@ammad \fi }
+\def \add@bars {\ifv@c \last@voc \c@bars \fi }
+\def \add@kh@hamza {\ifv@c \last@voc \c@kh@hamza \fi }
+\def \add@kl@hamza {\ifv@c \last@voc \c@kl@hamza \fi }
+\def \add@kh@hamzl {\ifv@c \last@voc \c@kh@hamzl \fi }
+\def \add@kl@hamzl {\ifv@c \last@voc \c@kl@hamzl \fi }
+
+%%%%%%%%%%%%%%%%%%%%% output code constants %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chardef \c@shadda = 1 \chardef \c@hamza = 2
+\chardef \c@hamzalow = 3 \chardef \c@madda = 4
+\chardef \c@high = 10
+
+\chardef \c@sukun = 1 \chardef \c@fatha = 2
+\chardef \c@kasra = 3 \chardef \c@damma = 4
+\chardef \c@fathatan = 5 \chardef \c@kasratan = 6
+\chardef \c@dammatan = 7 \chardef \c@zwarakay = 8
+\chardef \c@wasla = 9 \chardef \c@fathaspec = 10
+\chardef \c@kasraspec = 11 \chardef \c@ammad = 12
+\chardef \c@kas@fath = 13 \chardef \c@bars = 14
+\chardef \c@kh@hamza = 15 \chardef \c@kl@hamza = 16
+\chardef \c@kh@hamzl = 17 \chardef \c@kl@hamzl = 18
+
+%%%%%%%%%%%%%%%%%%%%%%%% end of routines %%%%%%%%%%%%%%%%%%%%%%%%
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/apatch.sty b/language/arabic/arabtex/texinput/apatch.sty
new file mode 100644
index 0000000000..9fdcfe2c10
--- /dev/null
+++ b/language/arabic/arabtex/texinput/apatch.sty
@@ -0,0 +1,2397 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% apatch.sty
+% last minute corrections
+% see \a@pdatum and \a@level at the end of the file
+% template: 22.08.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% this is just another *.sty file
+% you do not have to do any manual patching
+% just put this file onto the TEXINPUT path
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chardef \patchatcode = \catcode`\@ \catcode`\@ = 11
+\chardef \patchdqcode = \catcode`\" \catcode`\" = 12
+
+\def \a@version {3.11} % compare to arabtex::theversion
+
+\ifx \a@version \theversion \else \edef \next {\errmessage
+{This patch file only works with ArabTeX version \a@version }}
+\next \def \a@patchlevel {-undefined-}
+\xpa \endinput
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% presently no patches
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% two passes with LaTeX; see: alatex.sty
+
+%\iffalse % no patches yet; otherwise: delete !
+\ifx \LaTeX \undefined \else
+\ifx \a@patchlevel \undefined % first patching run
+\let \a@@@document \a@document
+\a@extend \document {\setnone \input {apatch.sty}}
+\else % second pass after loading all modules
+\let \a@document \a@@@document
+\fi\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% patch patterns:
+
+\ifx \a@patchlevel \undefined % load only the first time
+% patches on first pass
+\else
+% patches on second pass
+\fi
+
+\ifx \a@hebr \undefined \else
+%\a@message {Hebrew mode patches}
+\fi
+
+\ifx \LaTeX \undefined \else
+%\a@message {LaTeX mode patches}
+\fi
+%\fi % no patches yet; otherwise: delete !
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {22.08.2003} \def \a@level {-}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aligs.sty
+
+\def \hah@end #1#2*#3#4+#5*#6{% hah, test for ligature
+% c1 m1 * c2 m21 + m22 * c3
+\ifu@gh \ifx #1\a@H
+ \else \set@act \sk@h@u
+ \fi
+\else
+\ifurd@ \ifm@lay
+ \else \set@act \sk@h@s \hah@urd #3% round h?
+ \fi
+ \ifx #1T\else
+ \ifx #3l\test@allah #4#6\else
+ \ifx #1\a@H
+ \else \set@act\sk@h@u
+ \if\is@end@char #3%
+ \else \set@loww@act \global\a@min 1
+ \fi
+ \fi\fi\fi
+\else
+\ifx #3l\test@allah #4#6\else
+\ifnum \chr@cls = 1 \set@chr\sk@b \put@tatwil % 1 YntCbyp
+\else
+\ifnum \chr@cls = 3 \put@tatwil % 3 GHX
+\else \gim@test #6\put@tatwil
+\fi\fi\fi\fi\fi }
+
+\def \test@allah #1#2{% special ligature
+\ifx #2l\ifnum #1 = \c@shadda \set@chr\sk@l@w
+ % special short form of lam for the Name of God
+\fi\fi \put@tatwil }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabtex.sty
+
+\def \setarabfont #1{% define font switching
+ \def \the@arabfont {\tr@ceoff #1\tr@ceon }}
+
+\def \arab@output {\ifx \a@lang \a@arab \else
+\tr@ceoff % switch to Arabic output conventions
+\def@arabchars % define character macros for Arabic
+\def@arabaccent % define accent macros for Arabic
+\def@arabvoc % define vowel parsing routines for Arabic
+\def@arabstrut % define strut for Arabic
+\tr@zdmg % define standard transliteration
+\global\let \a@write \a@@write \global\let \a@write@hook \relax
+\def \set@arabfont {\the@arabfont }%
+\tr@ceon \let \a@lang \a@arab \fi }
+
+%\setnash
+
+\ifx \a@hebr \undefined \else
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hebtex.sty
+
+\def \heb@output {\ifx \a@lang \a@hebr \else
+\tr@ceoff % switch to Hebrew output conventions
+\def@hebchars % define character macros for Hebrew
+\def@hebvoc % define vowel parsing routines for Hebrew
+\def@hebstrut % define strut for Hebrew
+\global\let \a@write \heb@write \global\let \a@write@hook \relax
+%\def \set@arabfont {\the@hebfont }%
+%\def \set@arabfont {\pheb }%
+\def \set@arabfont {\hebfont }%
+\tr@heb \tr@ceon \global\let \a@lang \a@hebr \fi }
+
+\def \sethebfont #1{% define font switching
+ \def \hebfont {\tr@ceoff #1\tr@ceon }}
+
+\pdef \sethebrew {% switch to hebrew writing
+\all@false \@ssimtrue \yahd@tstrue \heb@output }
+
+\let \setheb \sethebrew
+
+\ifx \LaTeX \undefined \else
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hefonts2.sty
+
+\def \fdef #1#2#3#4{% define NFSS2 font command
+\pdef #1{\def \pheb {\fontencoding {U}\fontfamily {#2}%
+\fontseries {#3}\fontshape {#4}\selectfont }%
+\sethebfont \pheb }%
+\all@wcmd #1}
+
+\hdef \hc {m}{n}
+\hdef \hp {bx}{n}
+\hdef \Jm {m}{Jm}
+\hdef \jm {m}{jm}
+\hdef \ds {m}{ds}
+\hdef \oj {m}{oj}
+\hdef \ta {m}{ta}
+\hdef \shlmold {m}{so}
+\hdef \shlmscr {m}{sr}
+\hdef \shlmstk {m}{sk}
+\hdef \fr {m}{fr}
+\hdef \frbx {bx}{fr}
+\hdef \frsl {sl}{fr}
+\hdef \crml {m}{crml}
+\hdef \crmlsl {sl}{crml}
+
+\sethebfont \hc
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\fi % LaTeX
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\fi % Hebrew
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {27.08.2003} \def \a@level {a}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \a@hebr \undefined \else
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \LaTeX \undefined
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hebtex.tex
+
+\def\smash{\relax % \relax, in case this comes first in \halign
+\ifmmode \xpa\mathpalette \xpa\mathsm@sh \else \xpa\makesm@sh
+\fi }
+
+\def \jm {\sethebfont {\jerusalem}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\fi % Plain
+
+\hc % default Hebrew font
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\fi % Hebrew
+
+\ifx \a@patchlevel \undefined % load only the first time
+\ifx \LaTeX \undefined \else
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% alatex.tex
+
+\UsePackage {alists} % load LaTeX extensions for Arabic lists
+\UsePackage {asect} % load LaTeX extensions for Arabic sections
+\UsePackage {atabg} % load LaTeX extensions for Arabic tabbing
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\fi % LaTeX
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {08.09.2003} \def \a@level {b}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ifx \a@hebr \undefined \else
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% heparse.sty
+
+\def \add@@shewa {% put shewa on final kaf
+\xpa\case \the\last@con \of
+%{ k R {\add@shewa }}
+{ k {\add@shewa }}
+\endcase }
+
+\let \sv@qameslongum \sv@qamesaleph
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hebtex.sty
+
+\pdef \setjudarab {% switch to hebrew writing
+\all@false \@ssimtrue \yahd@tstrue \jud@output }
+
+\all@wcmd \setjudarab
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \jud@output {\ifx \a@lang \a@juda \else
+\heb@output \tr@ceoff % switch to Hebrew output conventions
+\def@judchars % define character macros for Judeo-Arabic
+\tr@zdmg % standard transliteration
+\tr@ceon \global\let \a@lang \a@juda \fi }
+
+\def \a@juda {JUDARAB}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hebchrs.sty
+
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\gdef \def@judchars {% define character macros for Judeo-Arabic
+\gdef \tc@f {\act@cd\hc@f \@finaltrue } % f
+\gdef \tc@C {\act@cd\hc@t \act@mod \j@d@t } % _t
+\gdef \tc@D {\act@cd\hc@ss \act@mod \j@d@t \@finaltrue } % .d
+\gdef \tc@F {\act@cd\hc@d \act@mod \j@d@t } % _d
+\gdef \tc@G {\act@cd\hc@j \act@mod \j@d@t } % ^g
+\gdef \tc@R {\act@cd\hc@j \act@mod \j@@@d@t } % .g
+\gdef \tc@T {\act@cd\hc@h \act@mod \j@@d@t } % T
+\gdef \tc@X {\act@cd\hc@k \act@mod \j@d@t \@finaltrue } % _h
+\gdef \tc@Z {\act@cd\hc@tt \act@mod \j@d@t } % .z
+}}% end of dynamic definitions
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\fi %\a@hebr
+
+\ifx \setjudarab \undefined \else
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hewrite.sty
+
+\chardef \j@d@t 5 \chardef \j@@d@t 6 \chardef \j@@@d@t 7
+
+\def \h@putmod #1{% deposit modifier
+\ifcase #1\relax
+\or \h@sindot \or \h@shindot \or \h@rdot \or \h@raphe
+\or \j@dot \or \j@@dot \or \j@@@dot \fi }
+
+\def \the@dots {\the@dot \kern2\h@p \the@dot }
+
+\def \the@gim {\raise \h@p \hbox {\the@dot }%
+\the@dot \raise \h@p \hbox {\the@dot }}
+
+\def \j@dot {\j@put@dia {.5}{1.3}{\the@dot }}
+\def \j@@dot {\j@put@dia {.5}{1.3}{\the@dots }}
+\def \j@@@dot {\j@put@dia {.5}{1.3}{\the@gim}}
+
+\def \j@put@dia #1#2#3{% put diacritic #3 at (#1,#2)
+\setbox0 \hbox to \z@ {\hss #3\hss}\dimen@ #2\a@ht
+\dimen2 \a@slant\dimen@ \advance\dimen2 #1\a@wd
+\global\setbox\ab@x \hbox
+{\rlap {\kern\dimen2 \raise\dimen@\box0 }\unhcopy\ab@x }}%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\fi %\setjudarab
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {17.09.2003} \def \a@level {c}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% acmd.sty
+
+\let \a@c@emph \a@c@emphasize
+
+\def \arab@em #1{% overstrike group
+\def \next@command {\test@special}%
+\ifarab \setbox0 \hbox {\a@sequence {#1}}%
+ \putwordb@x {\vbox {\hrule \kern 1pt \box0}}%
+\fi
+\ifshow {\tt \string \emphasize \ }%
+\if \bgroup \nxp \next@token \a@@verb {{#1}}\else \a@@verb {#1}%
+\fi\fi
+\iftrans \underbar {{\set@transfont \trans@text #1 \end }}%
+\fi \test@token }
+
+\def \a@c@textbf #1{\a@c@bf #1\rm }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% for LyX: spacing.sty
+
+\let \a@c@noun \test@token
+
+\def \a@spacing {\let \a@@restore@spacing \restore@spacing
+\let \restore@spacing \a@restore@spacing }
+
+\def \a@restore@spacing {\a@par \a@@restore@spacing }
+
+\def \a@c@singlespace {\a@par \a@spacing
+\def \endsinglespace {\a@par \par }%
+\singlespace \test@token }
+
+\def \a@c@onehalfspace {\a@par \a@spacing \onehalfspace \test@token }
+
+\def \a@c@doublespace {\a@par \a@spacing \doublespace \test@token }
+
+\def \a@c@spacing #1{\a@par \a@spacing \spacing {#1}\test@token }
+
+\xpa\def \csname a@c@singlespace*\endcsname
+{\a@par \a@spacing
+\xpa\let \xpa\a@endsinglespace \csname endsinglespace*\endcsname
+\xpa\def \csname endsinglespace*\endcsname
+{\a@par \a@endsinglespace \vskip -\baselineskip }%
+\csname singlespace*\endcsname \test@token }
+
+\let \a@c@textsf \test@token % these are preliminary
+\let \a@c@textsf \a@c@textbf
+
+\let \a@c@textit \test@token
+\let \a@c@textit \a@c@textbf
+\let \a@c@textit \a@c@emph
+
+\let \a@c@textsl \test@token
+\let \a@c@textsl \a@c@textbf
+
+\let \a@c@texttt \test@token
+\let \a@c@texttt \a@c@textbf
+
+\let \a@c@underbar \test@token
+\let \a@c@underbar \a@c@textbf
+
+\def \a@c@underbar {% get next token
+\def \next@command {\arab@ub }%
+\futurelet \next@token \test@space }
+
+\def \arab@ub #1 {% underbar
+\def \next@command {\test@special}%
+\ifarab \setbox0 \hbox {\a@sequence {#1}}%
+ \putwordb@x {\vtop {\box0 \kern -5pt \hrule }}%
+\fi
+\ifshow {\tt \string \underbar \ }%
+\if \bgroup \nxp \next@token \a@@verb {{#1}}\else \a@@verb {#1}%
+\fi\fi
+\iftrans \underbar {{\set@transfont \trans@text #1 \end }}%
+\fi \test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% awrite.sty
+
+\def \arab@testfont {% diagnose font, look for vowels and ayin
+\edef \next {\the\font }%
+\ifx \next \a@font \else
+\ifnum \tracingarab > 0 \a@message{Arabic font \next selected.}\fi
+\global\let \a@font \next \a@testfont \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hewrite.sty
+
+\def \heb@testfont {% diagnose font, look for vowels and ayin
+\edef \next {\the\font }%
+\ifx \next \h@font \else
+\ifnum \tracingarab > 0 \a@message {Hebrew font \next selected.}\fi
+\global\let \h@font \next \h@testfont \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabrep.cls
+
+\at@arabtext {%
+ \def\a@l@section{\@dottedtocline{1}{1.0em}{1.8em}}%
+ \def\a@l@subsection{\@dottedtocline{2}{2.8em}{2.1em}}%
+ \def\a@l@subsubsectiom{\@dottedtocline{3}{4.9}{2.8em}}%
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabaux.sty
+
+\def \a@gextend #1#2{% global extend command definition, no pars!
+\xpa\gdef \xpa#1\xpa{#1#2}}
+
+\def \a@extend #1#2{% extend command definition, no pars!
+\xpa\def \xpa#1\xpa{#1#2}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aparse.sty
+
+\def \syl@@quote@beg #1{% start word with quote: " #1 #2
+\if\is@vowel #1\def \next {\syl@wasla #1}% " v k: alif vowel
+% \if@wasla \v@ctrue \else \add@wasla \togglev@c \fi
+ \if@wasla \v@ctrue \global\@waslafalse
+ \else \global\@waslatrue \togglev@c \fi
+\else \put@con a\togglev@c \add@wasla \put@syl % alif implied
+ \ifx #1"\def \next {\syl@con }% " " k: alif wasla
+ \else \def \next {\syl@con #1}% " k: alif wasla
+ \fi
+\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% asect.sty
+
+\def \a@dottedtocline #1#2#3#4#5{% Level, Indent, Numwidth, Text, Pageno
+% for Arabic mode
+\ifnum #1>\c@tocdepth
+\else \vskip \z@ plus.2\p@
+ \begin{arabtext}
+% \tocp@rs {#2}{#3}#4 {\le@ders \thep@geno {#5}}
+ \tocp@rs {#2}{#3}#4 \le@ders \thep@geno {#5}
+ \end{arabtext}
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aboxes.sty
+
+\def \fix@act@box {% fixup position and set tatwil
+\if@high@act \advance\a@disp -\a@dsp \@high@actfalse \fi
+%\advance\a@min@dp \a@ic \advance\a@disp \a@ic
+\global\advance\a@min@dp \a@ic \advance\a@disp \a@ic
+\if@tat \put@tat \@tatfalse \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aligs.sty
+
+\def \aw@endligs #1#2*#3#4*#5{% test for final ligatures
+% c1 m1 * c2 m2 * c3
+\ifcase \act@cls \lam@lig #3#5% % 0 l
+\or % 1 YntCbyp
+ \ifnum \act@cd = \a@yah \yah@end #1#3#5\else
+ \ifnum \act@cd = \a@yah@h \yah@end #1#3#5\else
+ \ifnum \act@cd = \a@yah@p \yah@p@end #1#3#5\else
+ \ifnum \act@cd = \a@yah@p@s \yah@p@end #1#3#5\else
+ \ifnum \act@cd = \a@nun \nun@end #1#3#5\else
+ \bah@end #1%
+ \fi\fi\fi\fi\fi
+\or \sin@lig #1#5% % 2 sxSD
+\or \gim@lig #1#3#5% % 3 GHXJ
+ \global\a@min 0
+\or \global\@highfalse \@mod@acttrue \put@tatwil % 4 cR
+\or \kaf@end #3#5% % 5 kgM
+\or \fah@end #1% % 6 fqv
+\or \ttah@lig #1#5% % 7 VZ
+\or \rah@end #1#2*#3#5% % 8 rzj \a@r \a@R
+\or % 9 \a@t \a@n
+ \ifnum \act@cd = \a@yah@p@s \yah@p@end #1#3#5\else
+ \ifnum \act@cd = \a@nun@p \nun@end #1#3#5\else
+ \bah@end #1%
+ \fi\fi
+\else \global\@highfalse \@mod@acttrue % 10 ...
+ \ifnum \act@cd = \a@hah \hah@end #1#2*#3#4*#5\else
+ \ifnum \act@cd = \a@h@s \hah@urd #3\else
+ \ifnum \act@cd = \a@mim \mim@end #2*#3#5\else
+ \put@tatwil
+ \ifnum \act@cd = \a@dal \gim@test #5\else
+ \ifnum \act@cd = \a@dal@p \gim@test #5\else
+ \fi\fi
+ \fi\fi\fi
+\fi \aw@lower #5}
+
+\def \act@gim #1{% deposit ligature
+\ifnum \act@cd = \a@khah \set@act\sk@kh@s \act@mod = 0
+\else \set@act\sk@hh@s \@mod@acttrue
+%\fi \a@min 1 }
+\fi \global\a@min 1 }
+
+\def \hah@end #1#2*#3#4+#5*#6{% hah, test for ligature
+% c1 m1 * c2 m21 + m22 * c3
+\ifu@gh \ifx #1\a@H
+ \else \set@act \sk@h@u
+ \fi
+\else
+\ifurd@ \ifm@lay
+ \else \set@act \sk@h@s \hah@urd #3% round h?
+ \fi
+ \ifx #1T\else
+% \ifx #3l\test@allah #4#6\else
+ \ifx #3l\test@allah {#4}{#6}\else
+ \ifx #1\a@H
+ \else \set@act\sk@h@u
+ \if\is@end@char #3%
+ \else \set@loww@act \global\a@min 1
+ \fi
+ \fi\fi\fi
+\else
+%\ifx #3l\test@allah #4#6\else
+\ifx #3l\test@allah {#4}{#6}\else
+\ifnum \chr@cls = 1 \set@chr\sk@b \put@tatwil % 1 YntCbyp
+\else
+\ifnum \chr@cls = 3 \put@tatwil % 3 GHX
+\else \gim@test #6\put@tatwil
+\fi\fi\fi\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aoutput.sty
+
+\def \put@ab@x {% deposit line
+\ifhmode \unskip {\endgraf }\penalty \clubpenalty
+\parindent \z@ \parskip \z@ \else
+\ifnum \a@prevgraf = \z@ \else \penalty \widowpenalty
+\fi\fi
+\begingroup \parfillskip 0pt plus 1fill
+ \leftskip \z@ \rightskip \z@ \noindent
+ \ifdim \a@leftmargin = \z@ \else \hskip \a@leftmargin \fi
+ \box\a@tempb@x \endgraf
+%\endgroup \parindent \z@ \parskip \z@ \initlineb@x
+\endgroup \parindent \z@ \parskip \z@ plus 1pt \initlineb@x
+\advance \a@prevgraf \@ne \a@@prevgraf \prevgraf
+\advance \a@@prevgraf \@ne \prevgraf \a@@prevgraf }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {23.10.2003} \def \a@level {d}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabtex.sty
+
+\newarabfont % as a side effect an Arabic font default is defined!
+%\setnash
+
+% wg. utfcode.sty und inputenc.sty:
+
+\long\def \test@special #1{% check for special cases
+\if \bgroup \nxp \next@token % arabic group
+ \a@@putword \def \next {\arab@group {#1}}\else
+\if \relax \nxp #1% % command
+ \if\is@in@set #1\a@accent % known to scanner
+ \a@@append {#1}\def \next {\get@token }%
+ \else % general command
+ \a@@putword \def \next {\test@command #1}%
+ \fi \else
+%\if \sp@ce \nxp \next@token % RTL space
+% \a@@putword \def \next {\get@token }\else
+\ifnum `#1 > 127 % inputenc command
+ \a@@append {#1}\def \next {\get@token}\else
+\ifcat \nxp ~\nxp #1% % active character
+ \a@@putword \def \next {\test@command #1}\else
+\if \nxp <\nxp #1\unarab@codes % Roman insert
+ \a@@putword \let \next \test@insert \else
+\ifx $#1\unarab@codes % Math insert
+ \a@@putword \let \next \test@math
+\else \a@@append {#1}\def \next {\get@token}% % normal case
+\fi\fi\fi\fi\fi\fi \next }
+
+{\catcode `\< = \@other % better make sure
+\gdef \a@ins {% arabic insertion or 'less'
+\ifmmode \global\let \a@less <
+%\else \global\let \a@less \arab@insert \leavevmode
+\else \global\let \a@less \a@@insert \leavevmode
+ \bgroup \arab@codes \set@arabfont \global\@waslafalse \@wasfalse
+\fi \a@less }
+} % catcode <
+
+\def \a@@insert #1{% check for < >
+\ifx #1>\egroup \unskip \else \xpa \arab@insert \xpa #1\fi}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ascan.sty
+
+{\arab@codes % because of special characters
+
+\gdef \t@b@g #1{% start \ArabTeX scanner
+ \def \next {\sc@word {#1}}\def \sc@char {@}%
+\ifcat a\nxp #1\else % letter
+\apply \set@next \tocase #1\of
+{ \@{\sc@endscan } % finished
+ '{\t@rquote }
+ `{\t@lquote }
+ *{\t@star }
+\default {\sc@word {#1}}
+}\endcase
+\fi \next }
+
+\gdef \t@w@rd #1{% transform input into internal notation
+ \def \next {\sc@word }%
+\ifx #1\@\def \next {\sc@endscan }\else % finished
+\ifcat \nxp #1a%
+ \ifx #1a\def \next {\t@aa }\else % test for aa -> A
+ \ifx #1n\def \next {\t@nn }\else % test for ng, ny
+ \edef \sc@char {\csname sc@#1\endcsname }% letter
+ \ifx \sc@char \relax \def \sc@char {#1}% undef letter
+ \fi
+ \ifs@nd \edef \next {\nxp \t@asp {\sc@char }}\else \sc@put
+ \fi
+ \fi\fi \else % other character
+\ifcat \nxp #1\relax \def \next {\t@cs #1}\else % control sequence
+\ifx #1'\def \next {\t@hamza }\else % hamza
+ \def \sc@char {#1}%
+\apply \set@next \tocase #1\of
+{~\@ldtie{\t@tie }
+ .{\t@dot }
+ ,{\t@comma }
+ -{\t@minus }
+ `{\t@ain }
+ "{\t@dquote }
+ :={\t@colon }
+ ^{\t@up }
+ _{\t@down }
+ |{\t@bar }
+ *{\t@shadda }
+\default {\t@w@@rd {#1}}
+}\endcase
+\fi\fi\fi\fi \next }
+
+} % \arab@codes
+
+\def \t@star {\sc@dep *}
+
+\let \sc@beg \t@b@g % apatch only
+\let \sc@word \t@w@rd % apatch only
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aligs.sty
+
+\def \test@allah #1#2{% special ligature
+\ifx #2l%
+%\ifnum #1 = \c@shadda
+\set@chr\sk@l@w
+ % special short form of lam for the Name of God
+%\fi
+\fi \put@tatwil }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aparse.sty
+
+\def \set@shadda {\advance \last@mod \c@shadda }
+
+\def \add@shadda {\ifcase \last@mod % set bit 1
+\set@shadda \or\or \set@shadda \or\or \set@shadda \or\or \set@shadda
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%\ifx \a@hebr \undefined \else
+\iffalse
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hebtex.sty
+
+\def \heb@output {\ifx \a@lang \a@hebr \else
+\tr@ceoff % switch to Hebrew output conventions
+\def@hebchars % define character macros for Hebrew
+\def@hebvoc % define vowel parsing routines for Hebrew
+\def@hebstrut % define strut for Hebrew
+\global\let \a@write \heb@write \global\let \a@write@hook \relax
+\def \set@arabfont {\the@hebfont }%
+\tr@heb \tr@ceon \global\let \a@lang \a@hebr \fi }
+
+\def \sethebfont #1{% define font switching
+ \def \the@hebfont {\tr@ceoff #1\tr@ceon }}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hefonts2.sty % apatch.sty only!
+
+\hdef \hc {m}{n}
+\sethebfont \hc
+
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% abidir.sty
+
+\def \a@Rtobox #1{% pack the insertion into \Rinsertb@x
+\setbox \Rinsertb@x \vbox {\a@hsize \a@Lwidth
+\advance \a@hsize -\leftskip \advance \a@hsize -\rightskip
+\a@normpen \widowpenalty \a@normpen \clubpenalty
+\leftskip \z@ \rightskip \z@
+\parfillskip \z@ plus 1fil \relax \parskip \z@
+\let \a@@kern \a@kern \let \a@@mkern \a@mkern
+\def \a@kern {\nobreak \a@@kern}\def \a@mkern {\nobreak \a@@mkern}%
+\let \end \relax \spreadtrue \vskip \a@vglue \hbadness 10000
+\putlineb@x {\arab@strut \hskip \a@Llength }\a@spacefalse
+\test@token #1 \end \unskip \unskip \vskip \a@vglue
+\hbox {\box\lineb@x \hfill }}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ifx \a@hebr \undefined \else
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hewrite.sty
+
+\gdef \h@putvowel #1{% vowel mark
+\ifx #1\relax \relax \else \def \hadj {0}\def \vadj {0}%
+\ifnum \act@cd = \hc@P \let\vadj \v@adj \put@b@x{\hc@Pv }\else % vowel-ayin
+%\ifnum \act@cd = \hc@kf \def \hadj {-.1}\def \vadj {.85}\else % final kaph
+\ifnum \act@cd = \hc@kf \def \hadj {-.1}\def \vadj {.75}\else % final kaph
+\ifnum \act@cd = \hc@r \def \hadj {.35}\else % resh
+\ifnum \act@cd = \hc@d \def \hadj {.2}\else % daleth
+\ifnum \act@cd = \hc@q \def \hadj {.1}\else % qoph
+\ifnum \act@cd = \hc@y \def \hadj {.1}\else % yod
+\ifnum \act@cd = \hc@w \def \hadj {.15}\else % waw
+\ifnum \act@cd = \hc@si \def \hadj {-.1}\else % sin
+\fi\fi\fi\fi\fi\fi\fi\fi
+\setbox0 \hbox to \a@wd {\hss #1\hss}\dimen@ \vadj\a@ht
+\advance \dimen@ -2\h@p
+\dimen2 \a@slant\dimen@ \advance\dimen2 \hadj\a@wd
+\global\setbox\ab@x \hbox
+{\rlap {\kern\dimen2 \raise\dimen@\box0 }\unhcopy\ab@x }\fi }
+
+\gdef \h@putvowel #1{% vowel mark
+\ifx #1\relax \relax \else \def \hadj {0}\def \vadj {0}%
+\ifnum \act@cd = \hc@P \let\vadj \v@adj \put@b@x{\hc@Pv }\else % vowel-ayin
+%\ifnum \act@cd = \hc@kf \def \hadj {-.1}\def \vadj {.85}\else % final kaph
+\ifnum \act@cd = \hc@kf \def \hadj {-.1}\def \vadj {.75}\else % final kaph
+\ifnum \act@cd = \hc@r \def \hadj {.35}\else % resh
+\ifnum \act@cd = \hc@d \def \hadj {.2}\else % daleth
+\ifnum \act@cd = \hc@q \def \hadj {.1}\else % qoph
+\ifnum \act@cd = \hc@y \def \hadj {.1}\else % yod
+\ifnum \act@cd = \hc@w \def \hadj {.15}\else % waw
+\ifnum \act@cd = \hc@si \def \hadj {-.1}\else % sin
+\fi\fi\fi\fi\fi\fi\fi\fi
+\setbox0 \hbox to \a@wd {\hss #1\hss}\dimen@ \vadj\a@ht
+\advance \dimen@ -2\h@p
+\dimen2 \a@slant\dimen@ \advance\dimen2 \hadj\a@wd
+\global\setbox\ab@x \hbox
+{\rlap {\kern\dimen2 \raise\dimen@\box0 }\unhcopy\ab@x }\fi }
+
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% utfcode.sty
+
+\ifx \utfatcode \undefined \else
+
+{\catcode `\^ 7 \catcode `\^^M=13
+\gdef \utf@word #1{% transform input into internal notation
+\ifx #1\@ \def \next {\utf@end }\else % finished
+\ifx #1-\def \next {\utf@minus }\else %
+\ifx #1/\def \next {\sc@back #1}\else %
+\ifnum `#1="D6 \def \next {\utf@dvi }\else %
+\ifnum `#1="D7 \def \next {\utf@dvii }\else %
+\ifnum `#1="D8 \def \next {\utf@dviii }\else %
+\ifnum `#1="D9 \def \next {\utf@dix }\else %
+\ifnum `#1="DA \def \next {\utf@da }\else %
+\ifnum `#1="DB \def \next {\utf@db }\else %
+\ifnum `#1="E2 \def \next {\utf@eii }\else %
+ \def \next {\utf@asci #1}%
+\fi %
+\fi\fi\fi\fi\fi\fi %
+\fi\fi\fi \next }%
+} % catcode 13
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \utf@eii #1#2{% segment E2
+ \u@lb `#1\relax \advance \u@lb -128
+ \u@lq `#2\relax \advance \u@lq -128
+ \edef \sc@char {}%
+\ifnum \u@lb = 0
+\ifnum \u@lq = 12 % ZERO WIDTH NON-JOINER (U+200C)
+% \edef \sc@char {||}\else
+ \edef \sc@char {\n@xp\a@ba}\else
+\ifnum \u@lq = 13 % ZERO WIDTH JOINER (U+200D)
+ \edef \sc@char {-}\else
+% \edef \sc@char {\n@xp\a@bb}\else
+\fi\fi\fi \utf@next }
+
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \utf@dix #1{% segment D9
+ \u@lb `#1\relax \advance \u@lb -"80
+ \u@lq \u@lb \divide \u@lq 8
+\ifcase \u@lq \edef \sc@char {\ifcase \u@lb
+ B\or f\or q\or k\or l\or m\or n\or h\or \fi }%
+\or \advance \u@lb -8 \edef \sc@char {\ifcase \u@lb
+ w\or Y\or y\or "aN\or "uN\or "iN\or "a\or "u\or \fi }%
+\or \advance \u@lb -"10 \edef \sc@char {\ifcase \u@lb
+ "i\or "\n@xp\a@Ze\or ""\or "\n@xp\a@ZE\or
+ "\n@xp\a@Za\or "\n@xp\a@Zu\or \or \or \fi }%
+\or \advance \u@lb -"18 \edef \sc@char {}%
+\or \advance \u@lb -"20 \edef \sc@char {\ifcase \u@lb
+ 0\or 1\or 2\or 3\or 4\or 5\or 6\or 7\or \fi }%
+\or \advance \u@lb -"28 \edef \sc@char {\ifcase \u@lb
+ 8\or 9\or \a@pc\or \f@sila\or
+ \f@sila\or *\or \n@xp\a@b\or \n@xp\a@bq\or \fi }%
+\or \advance \u@lb -"30 \edef \sc@char {\ifcase \u@lb
+ "\n@xp\a@a\or "\or "\n@xp\a@ZA\or "\n@xp\a@ZU\or
+% N"\n@xp\a@Za\or Qa\or Qw\or Qw"u\or \fi }%
+N"\n@xp\a@Za\or N"\n@xp\a@Za A\or N"\n@xp\a@Za w\or N"\n@xp\a@Za w"u\or \fi }%
+\or \advance \u@lb -"38 \edef \sc@char {\ifcase \u@lb
+% Qy\or \n@xp\a@t\or \n@xp\a@T\or \n@xp\a@ab\or
+ N"\n@xp\a@Za Y\or \n@xp\a@t\or \n@xp\a@T\or \n@xp\a@ab\or
+ \n@xp\a@v\or \n@xp\a@at\or p\or \n@xp\a@ac\or \fi }%
+\fi \utf@next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \utf@db #1{% segment DB
+ \u@lb `#1\relax \advance \u@lb -"80
+ \u@lq \u@lb \divide \u@lq 8
+\ifcase \u@lq \edef \sc@char {\ifcase \u@lb
+ Qh\or \n@xp\a@h\or \n@xp\a@B\or \n@xp\a@j\or
+ \n@xp\a@aU\or \n@xp\a@aV\or \n@xp\a@W\or \n@xp\a@w\or \fi }%
+\or \advance \u@lb -8 \edef \sc@char {\ifcase \u@lb
+ \n@xp\a@aw\or \n@xp\a@au\or \n@xp\a@av\or \n@xp\a@X\or
+ Y\or L\or \n@xp\a@az\or \n@xp\a@x\or \fi }%
+\or \advance \u@lb -"10 \edef \sc@char {\ifcase \u@lb
+ \n@xp\a@Y\or \n@xp\a@y\or E\or \n@xp\a@ay\or
+ B\or \n@xp\a@H\or \or \or \fi }%
+\or \advance \u@lb -"18 \edef \sc@char {}%
+\or \advance \u@lb -"20 \edef \sc@char {}%
+\or \advance \u@lb -"28 \edef \sc@char {\ifcase \u@lb
+ \or \or \or \or
+ \or \or \n@xp\a@bd\or \n@xp\a@br\or \fi }%
+\or \advance \u@lb -"30 \edef \sc@char {\ifcase \u@lb
+ 0\or 1\or 2\or 3\or
+ 4\or 5\or 6\or 7\or \fi }%
+\or \advance \u@lb -"38 \edef \sc@char {\ifcase \u@lb
+ 8\or 9\or \n@xp\a@aI\or \n@xp\a@aN\or
+ \n@xp\a@P\or \n@xp\a@ai"\n@xp\a@Zi\or
+ \n@xp\a@ao"\n@xp\a@Zi\or \n@xp\a@bh-\or \fi }%
+\fi \utf@next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabtoks.sty
+
+\def \a@br {\sk@r ,25 } % rah with roof
+\def \a@ba {\sk@W , 0 } % ZERO WIDTH NON-JOINER
+\def \a@bb {\sk@spc , 0 } % ZERO WIDTH JOINER
+\def \a@bb {\sk@N , 0 } % ZERO WIDTH JOINER
+\def \a@bd {\sk@d ,25 } % dal with roof
+\def \a@bh {\sk@h ,25 } % hah with roof
+\def \a@bq {\sk@q@s , 0 } % qaf without dots
+\def \a@br {\sk@r ,25 } % rah with roof
+
+\gdef \sk@Q {10 ,\a@hamzc ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % hamza char
+\gdef \sk@W {10 ,\a@break ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % small space 34
+\gdef \sk@Wp {10 ,\a@break ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % small space 34
+\gdef \sk@N {10 ,\a@break ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % small space 34
+\gdef \sk@spc {10 ,\a@smspc ,1 ,{{0,0}{0,0}{2,0}{2,0}}} % small space 36
+\gdef \sk@spcn {10 ,\a@smspc ,0 ,{{0,0}{0,0}{2,0}{2,0}}} % small space 36
+\gdef \sk@skip{10 ,\a@skip ,1 ,{{0,0}{0,0}{2,0}{2,0}}} % small space 37
+\gdef \sk@skipn{10 ,\a@skip ,0 ,{{0,0}{0,0}{2,0}{2,0}}} % small space 37
+
+\def \a@bc {\sk@@ , 0 } % empty
+%\def \a@bc {\sk@skipn , 0 } % empty
+\def \a@be {\sk@@ , 0 } % empty
+%\def \a@be {\sk@spc , 0 } % empty
+\def \a@bf {\sk@@ , 0 } % empty
+%\def \a@bf {\sk@spcn , 0 } % empty
+\def \a@bg {\sk@@ , 0 } % empty
+%\def \a@bg {\sk@skip , 0 } % empty
+\def \a@bi {\sk@@ , 0 } % empty
+%\def \a@bi {\sk@Wp , 0 } % empty
+\def \a@bj {\sk@@ , 0 } % empty
+\def \a@bk {\sk@@ , 0 } % empty
+\def \a@bl {\sk@@ , 0 } % empty
+\def \a@bm {\sk@@ , 0 } % empty
+\def \a@bn {\sk@@ , 0 } % empty
+\def \a@bo {\sk@@ , 0 } % empty
+\def \a@bp {\sk@@ , 0 } % empty
+\def \a@bs {\sk@@ , 0 } % empty
+\def \a@bt {\sk@@ , 0 } % empty
+\def \a@bu {\sk@@ , 0 } % empty
+\def \a@bv {\sk@@ , 0 } % empty
+\def \a@bw {\sk@@ , 0 } % empty
+\def \a@bx {\sk@@ , 0 } % empty
+\def \a@by {\sk@@ , 0 } % empty
+\def \a@bz {\sk@@ , 0 } % empty
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% atrans.sty
+
+\let \tr@@zdmg \tr@zdmg
+
+\iffalse % inserted in 3.11f
+\def \tr@zdmg {% patches for Uzbek
+\tr@def \a@H {\"a}%
+\tr@def \a@ab {\"e}%
+}
+\fi % inserted in 3.11f
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ascan.sty
+
+\def \setcode #1{% switch the input encoding
+\lowercase {\def \sc@code {#1}%
+\ifx \sc@code \sc@oldcode \else
+\begingroup \def \sc@lookup ##1#1##2##3\@@ {\endgroup ##2}%
+\xpa \sc@lookup \sc@table #1\sc@default \@@ \fi }%
+%\let \sc@oldcode \sc@code }
+\global\let \sc@oldcode \sc@code }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aligs.sty
+
+\def \hah@urd #1{% wavy hah
+% c2
+\if\is@end@char #1\set@act\sk@h % isolated round h
+\fi
+\ifx #1\a@h
+\@mod@actfalse % no mark below
+\fi
+\ifnum \chr@cls = 1 \set@chr\sk@b % YntCbyp normal height
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {16.11.2003} \def \a@level {d+UCS}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% witbhs.sty
+
+\if\AND{\isx\bhscode\undefined}{\isx\buckatcode\undefined}\else
+\def \test@@token {\iftest@command \tracingmacros 0 \fi
+\futurelet \next@token \test@space }
+
+\let \test@token \test@@token % get next token
+
+\xpa\def \xpa\kill@space \space {% gobble LTR space
+\futurelet \next@token \test@space }
+
+\xpa\def \xpa\kill@sp@ce \sp@ce {% gobble RTL space
+\futurelet \next@token \test@space }
+
+\def \test@space {% check for LTR space
+\if \space \nxp\next@token \xpa\kill@space
+\else \xpa\test@sp@ce \fi }
+
+\def \test@sp@ce {% check for RTL space
+\if \sp@ce \nxp\next@token \xpa\kill@sp@ce
+\else \xpa\next@command \fi }
+
+\long\def \test@special #1{% check for special cases
+\ifcat \bgroup \nxp \next@token % arabic group
+ \def \next {\arab@group {#1}}\else
+\if\is@in@set #1\a@first % normal case
+ \def \next {\test@word #1}\else
+\if \relax \nxp #1% % command
+ \def \next {\test@command #1}\else
+\ifcat \nxp ~\nxp #1% % active character
+ \def \next {\test@command #1}\else
+\if \nxp <\nxp #1\unarab@codes % Roman insert
+ \let \next \test@insert \else
+\ifx $#1\unarab@codes % Math insert
+ \let \next \test@math \else
+ \def \next {\test@word #1}% % normal case
+\fi\fi\fi\fi\fi\fi \next }
+
+{\catcode `\^^a0 12
+\gdef \test@word #1 {% process next RTL word
+\a@test@word #1^^a0\@@ }
+
+\gdef \a@test@word #1^^a0#2\@@ {% process next RTL word
+\ifarab \putwordb@x {\arab@item #1\@@ }\fi
+\a@spacetrue \a@showinput {#1}%
+\ifx \relax #2\relax \def \next {\test@token }\else
+\def \next {\test@token #2 }\fi
+\next }
+}% catcode ^^a0
+
+\fi % witbhs
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabaux.sty
+
+\def \tr@ceoff {% suspend temporarily, local, no nesting!
+\edef \tr@ceon {\nxp\tracingmacros \the\tracingmacros \relax }%
+\tracingmacros 0 }
+
+\def \notr@ce {% suspend temporarily, for NFSS only, no nesting!
+\edef \dotr@ce {\nxp\tracingmacros \the\tracingmacros \relax}%
+\tracingmacros 0 }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {08.12.2003} \def \a@level {e}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aboxes.sty
+
+\def \put@tie {% deposit ties between characters
+\setbox0 \hbox {\char \the\act@tie }%
+\setbox2 \hbox {\char \the\act@tie \/}%
+\ifdim \a@disp = \z@ \unhcopy0
+\else \raise\a@disp \hbox {\unhcopy0 }\fi
+\global\advance\a@disp \wd2 \global\advance\a@disp -\wd0 }
+
+\def \set@high@act {% prepare raising of actual character
+\global\advance \a@disp \a@dsp \global\@high@acttrue }
+
+\def \set@low@act {% lower actual character
+\global\advance \a@disp -.25ex }
+
+\def \set@loww@act {% lower actual character
+\global\advance \a@disp -.50ex }
+
+\def \set@lowww@act {% lower actual character
+\global\advance \a@disp -.75ex }
+
+\def \fix@act@box {% fixup position and set tatwil
+\if@high@act \global\advance\a@disp -\a@dsp \global\@high@actfalse \fi
+\global\advance\a@min@dp \a@ic \global\advance\a@disp \a@ic
+\if@tat \put@tat \@tatfalse \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%\ifx \a@patchlevel \undefined % load only the first time
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% atrans.sty
+
+\iffalse
+\def \tr@zdmg {% patches for Uzbek
+\tr@@zdmg
+\tr@def \a@H {\"a}%
+\tr@def \a@ab {\"e}%
+}
+\fi
+\let \tr@zdmg \tr@@zdmg % nullify problems in version 3.11d
+
+\gdef \tr@@aword #1{% transcribe rest of word
+\let \tr@old \tr@act \def \tr@act {#1}%
+\case #1\of
+{ >{\@gobble }
+ \cap {\c@ptrue \tr@aword }
+% |"^\a@e{\tr@aword }
+ |"^{\tr@aword }
+ -{-\tr@aword }
+% XlEeQ{\csname tr@@\string #1\endcsname }
+ TXlEeQ{\csname tr@@\string #1\endcsname }
+ \a@a NUW{\setc@p #1\kill@alif }
+ P{\tr@P \tr@aword }
+ aiu{\tr@wasla #1}
+ \a@Ze{\xpa\tr@aword \tr@old }
+\default {\@vocalfalse
+ \ifcat \nxp #1-#1\else \setc@p #1%
+ \fi \tr@aword }
+}\endcase }
+
+\gdef \tr@@T #1{\@vocalfalse
+\ifx #1|h\let \next \tr@aword \else
+t\def \next {\tr@aword #1}\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%\fi
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ifx \a@hebr \undefined \else
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hebchrs.sty
+
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\gdef \def@judchars {% define character macros for Judeo-Arabic
+\gdef \tc@f {\act@cd\hc@f \@finaltrue } % f
+\gdef \tc@C {\act@cd\hc@t \act@mod \j@d@t } % _t
+\gdef \tc@D {\act@cd\hc@ss \act@mod \j@d@t \@finaltrue } % .d
+\gdef \tc@F {\act@cd\hc@d \act@mod \j@d@t } % _d
+\gdef \tc@G {\act@cd\hc@j \act@mod \j@d@t } % ^g
+\gdef \tc@H {\act@cd \hc@hh } % .h
+\gdef \tc@R {\act@cd \hc@j } % .g
+\gdef \tc@T {\act@cd\hc@h \act@mod \j@@d@t } % T
+\gdef \tc@V {\act@cd \hc@tt } % .t
+\gdef \tc@X {\act@cd\hc@k \act@mod \j@d@t \@finaltrue } % _h
+\gdef \tc@Z {\act@cd\hc@tt \act@mod \j@d@t } % .z
+}}% end of dynamic definitions
+
+\fi % Hebrew
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {12.02.2004} \def \a@level {f}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% cp1256.sty
+
+\ifx \awinatcode \undefined \else
+
+\def \set@awin {% select the CP 1256 scanner
+\let \sc@beg \awin@beg \let \sc@word \awin@word
+\let \sc@back \sc@@back \let \sc@endscan \awin@endscan
+\global\let \a@scan \awin@scan \setawin@codes
+\awin@catcodes \yahdots
+\global \a@paren {}%
+\a@message {input encoding set to Windows CP 1256 conventions}}
+
+\xpa \def \xpa \sc@table \xpa {\sc@table % add the CP 1256 encoding
+arabwin\set@awin cp1256\set@awin }
+
+\gdef \awin@beg #1{% start CP 1256 scanner
+\h@mzafalse \iz@fetfalse \yahdots \@ssimfalse
+\novocalize % because of explicit quoting
+\ifx #1"\def \next {\awin@lquote}\else
+\ifx #1^^c7\def \next {\awin@alif}\else
+\def \next {\awin@word #1}\fi\fi \next }
+
+\gdef \awin@lquote {% initial quote
+\def \sc@char {`}\sc@put \awin@beg }
+
+\gdef \awin@dquote {% double quote, intermediate version
+%\def \sc@char {\a@dq}\sc@put \awin@word }
+\def \sc@char {\nxp\a@dq }\sc@put \awin@word }
+
+\gdef \awin@dquote {% right quote
+\def \sc@char {'}\sc@put \awin@word }
+
+\fi % cp1256
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabtex.sty
+
+\long\def \test@special #1{% check for special cases
+%\if \bgroup \nxp \next@token % arabic group
+\ifcat \bgroup \nxp \next@token % arabic group
+ \a@@putword \def \next {\arab@group {#1}}\else
+\if \relax \nxp #1% % command
+ \if\is@in@set #1\a@accent % known to scanner
+ \a@@append {#1}\def \next {\get@token }%
+ \else % general command
+ \a@@putword \def \next {\test@command #1}%
+ \fi \else
+%\if \sp@ce \nxp \next@token % RTL space
+% \a@@putword \def \next {\get@token }\else
+\ifnum `#1 > 127 % inputenc command
+ \a@@append {#1}\def \next {\get@token}\else
+\ifcat \nxp ~\nxp #1% % active character
+ \a@@putword \def \next {\test@command #1}\else
+\if \nxp <\nxp #1\unarab@codes % Roman insert
+ \a@@putword \let \next \test@insert \else
+\ifx $#1\unarab@codes % Math insert
+ \a@@putword \let \next \test@math
+\else \a@@append {#1}\def \next {\get@token}% % normal case
+\fi\fi\fi\fi\fi\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ascan.sty
+
+{\arab@codes % because of special characters
+
+\gdef \t@b@g #1{% start \ArabTeX scanner
+ \def \next {\sc@word {#1}}\def \sc@char {@}%
+\ifcat a\nxp #1\else % letter
+\apply \set@next \tocase #1\of
+{ \@{\sc@endscan } % finished
+ '{\t@rquote }
+ `{\t@lquote }
+ *{\t@star }
+ +{\t@plus }
+ ={\t@equ }
+\default {\sc@word {#1}}
+}\endcase
+\fi \next }
+
+\gdef \t@w@rd #1{% transform input into internal notation
+ \def \next {\sc@word }%
+\ifx #1\@\def \next {\sc@endscan }\else % finished
+\ifcat \nxp #1a%
+ \ifx #1a\def \next {\t@aa }\else % test for aa -> A
+ \ifx #1n\def \next {\t@nn }\else % test for ng, ny
+ \edef \sc@char {\csname sc@#1\endcsname }% letter
+ \ifx \sc@char \relax \def \sc@char {#1}% undef letter
+ \fi
+ \ifs@nd \edef \next {\nxp \t@asp {\sc@char }}\else \sc@put
+ \fi
+ \fi\fi \else % other character
+\ifcat \nxp #1\relax \def \next {\t@cs #1}\else % control sequence
+\ifx #1'\def \next {\t@hamza }\else % hamza
+ \def \sc@char {#1}%
+\apply \set@next \tocase #1\of
+{~\@ldtie{\t@tie }
+ .{\t@dot }
+ ,{\t@comma }
+ -{\t@minus }
+ `{\t@ain }
+ "{\t@dquote }
+ :{\t@colon }
+ ^{\t@up }
+ _{\t@down }
+ |{\t@bar }
+ *{\t@shadda }
+ +{\t@madda }
+ ={\t@sukun }
+\default {\t@w@@rd {#1}}
+}\endcase
+\fi\fi\fi\fi \next }
+
+} % \arab@codes
+
+\def \t@star {\sc@dep *}
+\def \t@plus {\sc@dep +}
+\def \t@equ {\sc@dep =}
+
+\let \sc@beg \t@b@g % apatch only
+\let \sc@word \t@w@rd % apatch only
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aparse.sty
+
+\def \a@parse #1>{% parse token sequence into syllables
+\iftest@parse \tracingmacros = 1
+\iftest@scan \else \a@verb (#1)>\fi\fi
+\csname a@parse@hook\endcsname
+\last@con ={.}\last@mod = 0 \last@voc = 0 \global\@highfalse
+\global \sv@revwd ={}\global \a@revwd ={}\syl@beg #1<<<>%
+\iftest@parse \tracingmacros = 0 %
+\xpa \a@verb \xpa (\the\a@revwd )>\fi }
+
+\def \sv@@I #1{% long i
+\ifx #1N\def \next {\sv@Zi }\else
+\ifk@sh \put@syl \put@con y\add@kasraspec
+ \put@syl \def \next {\syl@con #1}%
+\else \add@kasra \put@syl \def \next {\test@B #1\sv@Ivwl }%
+\fi\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% verses.sty
+
+\ifx \verseatcode \undefined \else
+
+% define some verse dimensions, verses will be centered
+\def \setversedim #1#2{% set length of half-verse, separation
+\a@hvlen #1\relax \a@hvsep #2\relax
+\ifx \LaTeX \undefined \a@hvind \hsize
+\else \a@hvind \textwidth \fi
+\advance \a@hvind -\a@hvsep
+\divide \a@hvind 2 \advance \a@hvind -\a@hvlen }
+
+\def \connverses #1#2#3{% first half-verse, connection, second half-verse
+\cond{\ifdim 0pt > \a@hvind }%
+{\spreadbox \a@hvlen {#1}\par \hfill }% first block
+{\noindent \hspace \a@hvind \spreadbox \a@hvlen {#1}}\fi
+\spreadbox \a@hvsep {#2}% separator
+\spreadbox \a@hvlen {#3}% second block
+\par }
+
+\fi % verses.sty
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% awrite.sty
+
+\def \a@@write #1>{% Arabic output
+\iftest@write \tracingmacros 1
+\iftest@parse \else \a@verb (#1 )>\fi\fi
+\csname a@write@hook\endcsname
+\ifa@@write \arab@testfont \aw@beg #1>0+0*>0+0*>\fi
+\iftest@write \tracingmacros 0 \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hewrite.sty
+
+\ifx \a@hebr \undefined \else
+
+\def \heb@write #1>{% Hebrew output routine
+\iftest@write \tracingmacros = 1
+\iftest@parse \else \a@verb (#1)>\fi\fi
+\csname a@write@hook\endcsname
+\ifa@@write \heb@testfont \heb@beg #1>0+0*>\fi
+\iftest@write \tracingmacros = 0
+\fi }
+
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {26.02.2004} \def \a@level {g}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ascan.sty
+
+\def \sc@restore {% restore scanner defaults
+\let \vocalize \v@calize \let \fullvocalize \fullv@calize
+\let \sc@beg \t@b@g \let \sc@word \t@w@rd
+\let \sc@back \sc@@back \let \sc@endscan \sc@@endscan
+\global\let \a@scan \a@@scan \seta@codes
+\let \arab@codes \a@arab@codes
+\let \unarab@codes \a@unarab@codes }
+
+\def \t@comma #1{% after ,
+\apply \set@char \tocase #1\of
+{ a{a\nxp \a@H }
+ A{\nxp \a@a \nxp \a@H }
+ c{\ift@rk J\else \nxp \a@c \fi }
+ d{\ifp@sht \nxp \a@aA \else
+ \ifs@nd \nxp \a@D \else \nxp \a@d \fi\fi }
+ e{e\nxp \a@H }
+ g{\nxp \a@L }
+ h{\nxp \a@h }
+% n{\ifs@nd \nxp \a@an \else \nxp \a@M \fi }
+ n{\ifs@nd \nxp \a@an \else \nxp \a@m \fi }
+ r{\ifp@sht \nxp \a@q \else
+ \ifs@nd \nxp \a@ar \else \nxp \a@r \fi\fi }
+ s{\ift@rk x\else \nxp \a@s \fi }
+ t{\ifp@sht \nxp \a@v \else
+ \ifs@nd \nxp \a@at \else \nxp \a@t \fi\fi }
+ z{\ift@rk D\else \nxp \a@z \fi }
+}\endcase \t@tail ,#1}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% utf8.sty
+
+\ifx \utfatcode \undefined \else
+
+\gdef \set@utfc {% select the UTF-8 scanner
+\global\let \a@scan \utfc@scan
+\let \sc@beg \utf@beg
+\let \sc@word \utf@word
+\global\a@digits = {0123456789}%
+\global\a@first = {ϕ}%
+\catcode ` 11
+\a@message {input encoding set to UTF-8 conventions}}
+
+\fi % utf8.sty
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bhs.sty
+
+\ifx \bhsatcode \undefined \else
+
+% dynamic definitions for BHS Hebrew coding
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\catcode `\"=12 \catcode `\&=12 \catcode `\$ 12
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \setbhs@codes {% activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@A {a} \def \sc@B {b} \def \sc@C {S} \def \sc@D {d}
+\def \sc@E {e} \def \sc@F {A} \def \sc@G {g} \def \sc@H {h}
+\def \sc@I {i} \def \sc@J {t} \def \sc@K {k} \def \sc@L {l}
+%\def \sc@M {m} \def \sc@N {n} \def \sc@O {O} \def \sc@P {p}
+\def \sc@M {m} \def \sc@N {n}\def\sc@O{\n@xp\a@o}\def \sc@P {p}
+\def \sc@Q {q} \def \sc@R {r} \def \sc@S {s} \def \sc@T {t}
+%\def \sc@U {u} \def \sc@V {D} \def \sc@W {W} \def \sc@X {X}
+\def \sc@U {u} \def \sc@V {D} \def \sc@W {w} \def \sc@X {X}
+\def \sc@Y {y} \def \sc@Z {z} \def \sc@@ {QQ}
+\a@digits = {0123456789} \a@paren = {[]}
+\a@first = {)+(##&$":.,*0123456789}
+\globaldefs=0 }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for BHS
+
+{\arab@codes
+\catcode `\& 12 \catcode `\$ 12
+
+\gdef \bhs@beg #1#2{% start BHS scanner
+\@ssimfalse \def \next {\bhs@word #1#2}%
+\ifx #1\@\def \next {\sc@endscan #2}\else % finished
+\ifx #2\@\def \next {\bhs@testpara #1#2}\else
+\ifx #2?\def \next {\bhs@testpara #1#2}\else
+\fi\fi\fi \next }
+
+\gdef \bhs@word #1#2{% transform input into internal notation
+ \def \next {\bhs@word #2}%
+\ifx #1\@\def \next {\sc@endscan #2}\else % finished
+\ifx #1]\def \next {\bhs@word }\else
+\ifx #10\def \next {\bhs@zero #2}\else
+\ifx #17\def \next {\bhs@seven #2}\else
+%
+\if\is@in@set #1\a@digits \def \next {\bhs@word }\else
+\ifx #1?\def \next {\bhs@query #2}\else
+\ifx #1:\def \next {\bhs@colon #2}\else
+\ifx #1|\def \sc@char {|}\sc@put \else
+%
+\ifx #1.\def \sc@char {\nxp \a@Zu }\sc@put \else
+\ifx #1'\def \sc@char {'}\sc@put \else
+\ifx #1)\def \sc@char {Q}\sc@put \else
+\ifx #1+\def \sc@char {C}\sc@put \else
+%
+\ifx #1(\def \sc@char {P}\sc@put \else
+\if #1\a@hash \def \sc@char {\nxp \a@S }\sc@put \else
+\ifx #1&\def \sc@char {\nxp \a@s }\sc@put \else
+\ifx #1$\def \sc@char {x}\sc@put \else
+%
+\ifx #1"\def \sc@char {\nxp \a@E }\sc@put \else
+\ifx #1-\def \sc@char {B}\sc@put \else
+\ifx #1*\def \sc@char {*}\sc@put \else
+\ifcat \nxp #1a\edef \sc@char {\csname sc@#1\endcsname }%
+ \sc@put
+\fi\fi\fi\fi
+\fi\fi\fi\fi
+\fi\fi\fi\fi
+\fi\fi\fi\fi
+\fi\fi\fi\fi
+\next }
+} % arabcodes
+
+\fi % bhs.sty
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% cp1255.sty
+
+\ifx \hwinatcode \undefined \else
+
+\def \hwin@catcodes {% assignments for CP 1255
+\countdef \is@m=2 \is@m = 192 \is@n = 64
+\loop \catcode \is@m = 11 \global\lccode \is@m = \is@n
+\ifnum 255 > \is@m \advance \is@m 1 \advance \is@n 1 \repeat
+\is@m=0 \is@n=0 \catcode `\^^a0 12 }
+
+{\hwin@catcodes
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Hebrew
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \sethwin@codes {% activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@^^c0 {"\n@xp\a@e} \def \sc@^^c1 {"\n@xp\a@I}
+\def \sc@^^c2 {"\n@xp\a@A} \def \sc@^^c3 {"\n@xp\a@O}
+\def \sc@^^c4 {"i} \def \sc@^^c5 {"\n@xp\a@E}
+\def \sc@^^c6 {"e} \def \sc@^^c7 {"a}
+\def \sc@^^c8 {"A} \def \sc@^^c9 {"\n@xp\a@o}
+\def \sc@^^ca {L} \def \sc@^^cb {"u}
+\def \sc@^^cc {"\n@xp\a@Zu} \def \sc@^^cd {|}
+\def \sc@^^ce {B} \def \sc@^^cf {"\n@xp\a@Zo}
+
+\def \sc@^^d0 {K} \def \sc@^^d1 {"\n@xp\a@Ze}
+\def \sc@^^d2 {"\n@xp\a@Za} \def \sc@^^d3 {:}
+\def \sc@^^d4 {"\n@xp\a@Zi} \def \sc@^^d5 {w-w}
+\def \sc@^^d6 {wy} \def \sc@^^d7 {y-y}
+\def \sc@^^d8 {@} \def \sc@^^d9 {@} \def \sc@^^da {@} \def \sc@^^db {@}
+\def \sc@^^dc {@} \def \sc@^^dd {@} \def \sc@^^de {@} \def \sc@^^df {@}
+
+\def \sc@M {M} %\def \sc@N {N}
+\def \sc@^^e0 {Q} \def \sc@^^e1 {b} \def \sc@^^e2 {g} \def \sc@^^e3 {d}
+\def \sc@^^e4 {h} \def \sc@^^e5 {w} \def \sc@^^e6 {z} \def \sc@^^e7 {X}
+\def \sc@^^e8 {C} \def \sc@^^e9 {y} \def \sc@^^ea {k} \def \sc@^^eb {k}
+\def \sc@^^ec {l} \def \sc@^^ed {m} \def \sc@^^ee {m} \def \sc@^^ef {n}
+
+\def \sc@^^f0 {n} \def \sc@^^f1 {s} \def \sc@^^f2 {P} \def \sc@^^f3 {p}
+\def \sc@^^f4 {p} \def \sc@^^f5 {S} \def \sc@^^f6 {S} \def \sc@^^f7 {q}
+\def \sc@^^f8 {r} \def\sc@^^f9{\n@xp\a@S} \def\sc@^^fa {t} \def \sc@^^fb {@}
+\def \sc@^^fc {@} \def \sc@^^fd {@} \def \sc@^^fe {@} \def \sc@^^ff {@}
+\a@digits = {0123456789}
+\a@paren = {()[]}
+\a@first = {"`^^e6}
+\globaldefs=0 }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\fi % cp1255.sty
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ifx \a@hebr \undefined \else
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hescan.sty
+
+\def \hwin@catcodes {% assignments for CP 1255
+\countdef \is@m=2 \is@m = 192 \is@n = 64
+\loop \catcode \is@m = 11 \global\lccode \is@m = \is@n
+\ifnum 255 > \is@m \advance \is@m 1 \advance \is@n 1 \repeat
+\is@m=0 \is@n=0 \catcode `\^^a0 12 }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% heparse.sty
+
+\def \sv@ay {% Yiddish ay
+\put@syl \put@con \a@h \v@ctrue \add@fatha \put@syl \test@patf }
+
+\def \sv@ey {% Yiddish ey
+\put@syl \put@con \a@h \put@syl \test@patf }
+
+\def \sv@oy {% Yiddish oy
+\put@syl \put@con \a@p \put@syl \test@patf }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hebchrs.sty
+
+\tc@def \a@h {\act@cd \hc@ey } % yod yod
+\tc@def \a@p {\act@cd \hc@oy } % waw yod
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\fi % Hebrew
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% verses.sty
+
+\ifx \verseatcode \undefined \else
+
+%\newdimen \a@@hvlen
+\csname newdimen\endcsname \a@@hvlen
+
+% define some verse dimensions, verses will be centered
+\def \setversedim #1#2{% set lengths of half-verse, separation
+\ifx \LaTeX \undefined \a@hvind \hsize
+\else \a@hvind \textwidth \fi
+\a@hvlen #1\relax \advance \a@hvind -\a@hvlen
+\ifx [#2\def \next {\set@verseI [}\else
+\a@@hvlen \a@hvlen \def \next {\set@@verse {#2}}\fi \next }
+
+\def \set@verseI [#1]{% optional parameter
+\a@@hvlen #1\relax \set@@verse }
+
+\def \set@@verse #1{% separation
+\advance \a@hvind -\a@@hvlen \a@hvsep #1\relax
+\advance \a@hvind -\a@hvsep \divide \a@hvind 2 }
+
+\def \connverses #1#2#3{% first half-verse, connection, second half-verse
+\cond{\ifdim 0pt > \a@hvind }%
+{\spreadbox \a@hvlen {#1}\\ \hfill }% first block
+{\noindent \hskip \a@hvind \relax \spreadbox \a@hvlen {#1}}\fi
+\spreadbox \a@hvsep {#2}% separator
+\spreadbox \a@@hvlen {#3}% second block
+\tracingmacros 0
+\par }
+
+\def \a@c@halfverses #1#2{% optional parameter?
+%\tracingmacros 1
+\cond{\ifx [#2}{\half@verses {#1}[}%
+{\half@verses {#1}[\hfill]{#2}}\fi }
+
+\def \half@verses #1[#2]#3{% first[mid]second
+\test@token \connverses {#1}{#2}{#3}}
+
+\fi % verses.sty
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% utfcode.sty
+
+\ifx \utfatcode \undefined \else
+
+\def \utf@dvii #1{% segment D7
+ \u@lb `#1\relax \advance \u@lb -128
+ \u@lq \u@lb \divide \u@lq 8
+\ifcase \u@lq \edef \sc@char
+ {\ifcase \u@lb
+ K\or "\n@xp\a@Ze\or "\n@xp\a@Za\or :\or "\n@xp\a@Zi\or \or \or \or
+ \fi }%
+\or \advance \u@lb -8 \edef \sc@char {}%
+\or \advance \u@lb -16 \edef \sc@char
+ {\ifcase \u@lb
+ Q\or b\or g\or d\or h\or w\or z\or X\or
+ \fi }%
+\or \advance \u@lb -24 \edef \sc@char
+ {\ifcase \u@lb
+ C\or y\or k\or k\or l\or m\or m\or n\or
+ \fi }%
+\or \advance \u@lb -32 \edef \sc@char
+ {\ifcase \u@lb
+ n\or s\or P\or p\or p\or S\or S\or q\or
+ \fi }%
+\or \advance \u@lb -40 \edef \sc@char
+ {\ifcase \u@lb
+ r\or \n@xp\a@S \or t\or \or \or \or \or \or
+ \fi }%
+\or \advance \u@lb -48 \edef \sc@char
+ {\ifcase \u@lb
+% w\n@xp\a@U w\or wy\or y\n@xp\a@U y\or '\or
+ \n@xp\a@w \or \n@xp\a@p \or \n@xp\a@h \or '\or
+ ''\or \or \or \or
+ \fi }%
+\or \advance \u@lb -56 \edef \sc@char
+ {\ifcase \u@lb
+ \or \or \or \or \or \or \or "|\or
+ \fi }%
+\fi \utf@next }
+
+\fi % utfcode.sty
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% yiddish.sty
+
+\ifx \yidatcode \undefined \else
+
+\def \yid@t #1{% ts ?
+\ifx #1s\def \next {\yid@ts }\else
+\def \sc@char {C}\def \next {\yid@word #1}\sc@put
+\fi \next }
+
+\def \yid@ts #1{% tsh ?
+\ifx #1h\def \sc@char {C\nxp\a@S}\def \next {\yid@word }\else
+\def \sc@char {S}\def \next {\yid@word #1}%
+\fi \sc@put \next }
+
+\fi % yiddish.sty
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {15.03.2004} \def \a@level {h}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% abidir.sty
+
+\ifx \a@patchlevel \undefined % first patching run
+
+\csname newtoks\endcsname \a@oldoutput
+\csname newbox\endcsname \a@oldbox
+\csname newbox\endcsname \a@newbox
+\csname newdimen\endcsname \a@prevdepth
+
+\def \a@@Rinsert #1{% RL insertion inside Ltext
+%\tracingmacros 1
+\ifshow \a@@verb {#1}\fi % verbating listing
+\ifarab \a@Rinsert {#1}\fi % arabic writing
+\iftrans \set@transfont \trans@text #1 \end \/\fi
+\ifnum \tracingarab > \@ne \message {>}\fi
+\unskip \egroup }
+
+\def \a@Rinsert #1{% put a sequence of RL words into Ltext
+%\leavevmode % go to hmode if not there already
+\ifinner \a@sequence {#1}% inside a \hbox: append
+\else \a@@Rsplit {#1}% splice into the current paragraph
+\fi }
+
+\def \a@box@aparm {% Arabic parameters for vbox
+\let \end \relax \def \next@command {\test@special}\transfalse
+\def \a@kern {\nobreak\kern.05em } \def \a@mkern {\nobreak\kern-.05em }
+\showfalse \spreadtrue \a@hsize \a@Lwidth
+\advance \a@hsize -\leftskip \advance \a@hsize -\rightskip
+\leftskip \z@ \rightskip \z@
+%\advance \a@hsize 20pt % TENTATIVE
+\def \arab@space {\nobreak\hskip 5pt plus 4pt minus 1pt }%
+\def \tat@skip {0.04ex plus 0.5ex }}
+
+\def \a@box@rparm {% Roman parameters for vbox
+\hbadness 10000 \tolerance 5000
+\parskip \z@ \parfillskip \z@ plus 1fil \relax \vskip \a@vglue }
+
+\def \a@@Rsplit #1{% splice RL words into the current paragraph
+\tracingmacros 0
+\bgroup \global\a@oldoutput = \output
+$$\global\a@lines \prevgraf \global\a@Lwidth \displaywidth
+$${\endgraf }%
+\ifinner \a@back@line \else
+\global\output = {\a@newoutput }\eject
+\fi \vskip -\parskip \prevdepth \a@prevdepth
+\ifvoid \a@oldbox
+\else \advance \a@lines -1 \setbox\a@oldbox \hbox
+{\hskip -\leftskip \unhbox\a@oldbox \unskip \unskip \unpenalty }\fi
+\setbox\Rinsertb@x \vbox {\a@box@rparm \a@box@aparm
+\putlineb@x {\copy\a@oldbox }\a@spacefalse
+\test@token #1 \end \unskip \unskip
+\vskip \a@vglue \hbox {\box\lineb@x \hfill }}%
+\a@Rgetline
+\setbox\tempb@x \hbox {\unhbox \tempb@x \unskip \unpenalty
+ \global\setbox \a@newbox \lastbox }%
+\noindent \prevgraf \a@lines
+\ifdim \wd\a@newbox = 0pt \unhbox \tempb@x
+\else \unhbox \a@newbox
+\ifdim \wd\tempb@x = 0pt
+\else \space \ins@skip \unhbox \tempb@x
+\fi\fi \penalty -9999
+\ifvbox \Rinsertb@x \break \a@Runpack \fi
+\egroup }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \a@back@line {% skip back
+\dimen0 \baselineskip \unskip \unpenalty \setbox0 \lastbox
+\dimen2 \lastskip \unskip \unskip \unpenalty
+\global\setbox \a@oldbox \lastbox
+\ifvoid \a@oldbox \else \dimen2 \lastskip \unskip
+\advance\dimen0 -\ht\a@oldbox \fi
+\advance\dimen0 -\dimen2 \global\a@prevdepth \dimen0 \unskip }%
+
+\gdef \a@newoutput {% intermediate output routine
+\global\output = \a@oldoutput
+%\showbox 255
+\setbox 255 \vbox {\unvbox 255 % put back to MVL
+\a@back@line }\unvbox 255 }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\fi % first run
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {29.04.2004} \def \a@level {i2}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% buck.sty
+
+\ifx \buckatcode \undefined \else
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Arabic
+{\catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \setbuck@codes {% activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@@ {@} \def \sc@c {@} \def \sc@e {@}
+\def \sc@B {@} \def \sc@C {J} \def \sc@G {g} \def \sc@I {Qi}
+\def \sc@J {j} \def \sc@L {@} \def \sc@M {@} \def \sc@O {Qa}
+\def \sc@P {p} \def \sc@Q {@} \def \sc@R {@} \def \sc@U {Qw}
+\def \sc@V {v} \def \sc@W {Qw} \def \sc@X {@}
+
+\sc@def ' {Q|} \sc@def | {QA} \sc@def > {Qa} \sc@def & {Qw}
+\sc@def < {Qi} \sc@def ## {|} \def \sc@A {A} \def \sc@b {b}
+\def \sc@p {T} \def \sc@t {t} \def \sc@v {C} \def \sc@j {G}
+\def \sc@H {H} \def \sc@x {X} \def \sc@d {d} \sc@def * {F}
+\def \sc@r {r} \def \sc@z {z} \def \sc@s {s} \sc@def $ {x}
+\def \sc@S {S} \def \sc@D {D} \def \sc@T {V} \def \sc@Z {Z}
+\def \sc@E {P} \def \sc@g {R} \sc@def _ {|B}
+\def \sc@f {f} \def \sc@q {q} \def \sc@k {k} \def \sc@l {l}
+\def \sc@m {m} \def \sc@n {n} \def \sc@h {h} \def \sc@w {w}
+\def \sc@Y {Y} \def \sc@y {y} \def \sc@F {"aN} \def \sc@N {"uN}
+\def \sc@K {"iN} \def \sc@a {"a} \def \sc@u {"u} \def \sc@i {"i}
+%\sc@def ~ {@} \def \sc@o {""} \sc@def ` {"\n@xp \a@a}
+\sc@def ~ {\n@xp \a@Ze} \def \sc@o {""} \sc@def ` {"\n@xp \a@a}
+\sc@def ^ {"'}
+\sc@def = {"\n@xp \a@ZE }
+
+\a@digits = {0123456789} \a@paren = {()[]}
+\a@first = {"`}
+\setbuck@codes@hook
+\globaldefs=0 }
+\global\let \setbuck@codes@hook \relax
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+{\catcode `\[ 1 \catcode `\{ 11
+\gdef \buck@beg #1[% start the TB scanner
+\h@mzafalse \iz@fetfalse \novocalize \@ssimfalse
+ \def \next [\buck@word #1}%
+\ifx #1\@ \def \next [\sc@endscan }\else % finished
+\ifx #1{\def \next [\buck@lbrace }\else
+\ifx #1"\def \next [\buck@lquote }\else
+\ifx #1A\def \next [\buck@alif }\else
+\fi\fi\fi\fi \next }
+} % catcodes 1 and 11
+
+{\catcode `\^^M=13 \catcode `\~ 11 %
+\gdef \buck@word #1#2{% transform input into internal notation
+ \def \next {\buck@word #2}%
+\ifx #1\@ \def \next {\sc@endscan #2}\else % finished
+\ifx #1-\def \next {\buck@minus #2}\else %
+\ifx #1"\def \next {\buck@rquote #2}\else %
+\ifx #1y\def \next {\buck@yah #2}\else %
+\if \nxp ^^M\nxp #1\def \next {\buck@par #1#2}\else % active character
+\ifx #1#2\def \next {\buck@two #1}\else %
+ \ifcat a\nxp #1\edef \sc@char {\csname sc@#1\endcsname }%
+ \else \def \sc@char {\nxp #1}%
+ \fi %
+ \sc@put %
+\fi\fi\fi\fi\fi\fi \next }%
+} % catcodes 13 and 11
+
+\def \buck@alif #1{% specials?
+\def \next {\buck@word }%
+\if \nxp #1=\def \sc@char {QA}\sc@put \else
+\if \nxp #1@\def \sc@char {"}\sc@put \else
+\if \nxp #1^\def \sc@char {Qa}\sc@put \else
+\if \nxp #1_\def \sc@char {Qi}\sc@put \else
+\def \sc@char {A}\def \next {\buck@word #1}\sc@put
+\fi\fi \fi\fi \next }
+
+\def \buck@yah #1{% hamza?
+\def \next {\buck@word }%
+\if \nxp #1^\def \sc@char {Qy}\sc@put \else
+\def \sc@char {y}\def \next {\buck@word #1}\sc@put
+\fi \next }
+
+\def \set@buck {% substitute new scanner
+\let \sc@beg \buck@beg \let \sc@word \buck@word
+\let \sc@back \sc@@back \let \sc@endscan \sc@@endscan
+\global\let \a@scan \a@@scan \setbuck@codes
+\let \arab@codes \buck@codes \let \unarab@codes \unbuck@codes
+\let \test@special \buck@special
+\message {input coding set to Tim Buckwalter's encoding conventions}}
+
+\def \buck@cat {% change catcodes
+\catcode `\# 11 \catcode `\= 11 \catcode `\^ 11 \catcode `\~ 11
+\catcode `\' 11 \catcode `\| 11 \catcode `\> 11 \catcode `\& 11
+\catcode `\< 11 \catcode `\} 11 \catcode `\* 11 \catcode `\$ 11
+\catcode `\_ 11 \catcode `\~ 11 \catcode `\` 11 \catcode `\{ 11 }
+
+\def \buck@recat {% change catcodes back
+\catcode `\# 6 \catcode `\= 12 \catcode `\^ 7 \catcode `\~ 13
+\catcode `\' 12 \catcode `\| 12 \catcode `\> 12 \catcode `\& 4
+\catcode `\< 12 \catcode `\} 2 \catcode `\* 12 \catcode `\$ 3
+\catcode `\_ 8 \catcode `\~ 13 \catcode `\` 12 \catcode `\{ 1 }
+
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aparse.sty
+
+\def \syl@hamzaverb #1{% verbatim hamza, #1 = carrier
+\case #1\of
+{ |{\put@con Q}
+ A{\put@con a\add@madda \@sukfalse }
+ y{\put@con Y\add@hamza \ifqur@n \add@hamzalow \fi }
+ u{\put@con w\add@hamza }
+ i{\put@con a\add@hamza \add@hamzalow }
+\default {\put@con #1\add@hamza }
+}\endcase \syl@voctest }
+
+\def \syl@quote@voc #1{% continue syllable with quote: " #1 #2
+\case #1\of
+{ B{\togglev@c \add@sukun \put@syl \syl@con #1}
+ "{\togglev@c \add@sukun \put@syl \syl@beg }
+ |{\syl@@quote@voc }
+ '{\add@hamza \syl@voctest }
+\default {\togglev@c \syl@voctest #1}% vowel: sukun
+}\endcase }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hewrite.sty
+
+\ifx \a@hebr \undefined \else
+
+\ifx \a@patchlevel \undefined % load only the first time
+\else
+\global\let \@@set@hcls \set@hcls
+
+\gdef \set@hcls {%
+\@@set@hcls
+\global\let \h@putvowel \h@put@@vowel
+}
+
+\fi
+
+\gdef \h@put@@vowel #1{% vowel mark
+\ifx #1\relax \relax \else \def \hadj {0}\def \vadj {0}%
+\ifnum \act@cd = \hc@P \let\vadj \v@adj \put@b@x{\hc@Pv }\else % vowel-ayin
+%\ifnum \act@cd = \hc@kf \def \hadj {-.1}\def \vadj {.85}\else % final kaph
+\ifnum \act@cd = \hc@kf \def \hadj {-.1}\def \vadj {.80}\else % final kaph
+\ifnum \act@cd = \hc@r \def \hadj {.35}\else % resh
+\ifnum \act@cd = \hc@d \def \hadj {.2}\else % daleth
+\ifnum \act@cd = \hc@q \def \hadj {.1}\else % qoph
+\ifnum \act@cd = \hc@y \def \hadj {.1}\else % yod
+\ifnum \act@cd = \hc@w \def \hadj {.15}\else % waw
+\ifnum \act@cd = \hc@si \def \hadj {-.1}\else % sin
+\fi\fi\fi\fi\fi\fi\fi\fi
+\setbox0 \hbox to \a@wd {\hss #1\hss}\dimen@ \vadj\a@ht
+\advance \dimen@ -1\h@p
+\dimen2 \a@slant\dimen@ \advance\dimen2 \hadj\a@wd
+\global\setbox\ab@x \hbox
+{\rlap {\kern\dimen2 \raise\dimen@\box0 }\unhcopy\ab@x }\fi }
+
+\fi % a@hebr
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {17.05.2004} \def \a@level {j}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% abidir.sty
+
+\def \a@RL {% RTL insertion inside LRtext
+\ifaRL \else \aRLtrue
+ \let \a@RLpar \par % prepare for normal baselines
+ \edef \a@lslimit {\lineskiplimit \the\lineskiplimit}%
+ \def \par {\a@RLpar \let \par \a@RLpar \a@lslimit \aRLfalse }%
+\fi
+\ifhmode \lineskiplimit -.9\baselineskip
+\fi % enforce uniform baselines
+\bgroup \arab@codes \set@arabfont \@waslafalse \@wasfalse \a@@Rinsert }
+
+\def \a@Rinsert #1{% put a sequence of RL words into Ltext
+\leavevmode % go to hmode if not there already
+\ifinner \a@sequence {#1}% inside a \hbox: append
+\else \a@@Rsplit {#1}% splice into the current paragraph
+\fi }
+
+\def \a@@Rsplit #1{% splice RL words into the current paragraph
+\bgroup \global\a@oldoutput = \output
+$$\global\a@lines \prevgraf \global\a@Lwidth \displaywidth
+$${\endgraf }%
+\ifinner \a@back@line \else
+\global\output = {\a@newoutput }\eject
+\fi \vskip -\parskip \global\prevdepth \a@prevdepth
+\ifvoid \a@oldbox \else
+\advance \a@lines -1 \setbox\a@oldbox \hbox
+{\hskip -\leftskip \unhbox\a@oldbox \unskip \unskip \unpenalty }\fi
+\setbox\Rinsertb@x \vbox {\a@box@rparm \a@box@aparm
+ \putlineb@x {\copy\a@oldbox }\a@spacefalse
+ \test@token #1 \end \unskip \unskip
+ \vskip \a@vglue \hbox {\box\lineb@x \hfill }}%
+\a@Rgetline
+\setbox\tempb@x \hbox {\unhbox \tempb@x \unskip \unpenalty
+ \global\setbox \a@newbox \lastbox }%
+\noindent \prevgraf \a@lines \unhcopy \a@newbox
+\ifdim \wd\a@newbox = 0pt \else
+\ifdim \wd\a@newbox = \parindent \else \space \ins@skip
+\fi\fi \unhbox \tempb@x \penalty -9999
+\ifvbox \Rinsertb@x \break \a@Runpack \fi
+\egroup }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% alatex.sty
+
+\def \a@endx {\if@ignore \@ignorefalse \xpa\ignorespaces \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {24.05.2004} \def \a@level {k}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabtex.sty
+
+\def \all@false {% reset language code to default
+\k@rdfalse \t@rkfalse \m@ghfalse \urd@false \p@shtfalse
+\s@ndfalse \m@layfalse \u@ghfalse \k@srafalse \k@shfalse
+\h@mzafalse \@ssimfalse \iz@fetfalse \yahd@tsfalse \k@fsfalse \f@rsnfalse
+\let \vocalize \v@calize \let \fullvocalize \fullv@calize
+\arab@output \catcode`\<=\active }
+
+\pdef \setuighur {% switch language specific processing
+\let \vocalize \novocalize \let \fullvocalize \novocalize
+\novocalize \all@false \@ssimfalse \h@mzafalse
+\u@ghtrue \def \a@defaultfont {\setnash }}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% abidir.sty
+
+\def \a@RL {% RTL insertion inside LRtext
+\ifaRL \else \aRLtrue
+ \let \a@RLpar \par % prepare for normal baselines
+ \edef \a@lslimit {\lineskiplimit \the\lineskiplimit}%
+ \def \par {\a@RLpar \let \par \a@RLpar \a@lslimit \aRLfalse }%
+\fi
+\lineskiplimit -.9\baselineskip % enforce uniform baselines
+\bgroup \arab@codes \set@arabfont \@waslafalse \@wasfalse \a@@Rinsert }
+
+\def \a@@Rsplit #1{% splice RL words into the current paragraph
+\bgroup \global\a@oldoutput = \output
+$$\global\a@lines \prevgraf \global\a@Lwidth \displaywidth
+$${\endgraf }%
+\ifinner \a@back@line \else
+\global\output = {\a@newoutput }\eject
+\fi \global\prevdepth \a@prevdepth
+\ifvoid \a@oldbox \else \advance \a@lines -1
+\setbox\a@oldbox \hbox {\hskip -\leftskip \unhbox\a@oldbox
+ \unskip \unskip \unpenalty \unpenalty }%
+\fi
+\setbox\Rinsertb@x \vbox {\a@box@rparm \a@box@aparm
+ \putlineb@x {\hbox {\unhcopy\a@oldbox }}\a@spacefalse
+ \test@token #1 \end \hbox {\box\lineb@x \hfill }}%
+\a@Rgetline
+\setbox\tempb@x \hbox {\unhbox \tempb@x \unskip \unpenalty
+ \global\setbox \a@newbox \lastbox }%
+\noindent \prevgraf \a@lines \unhcopy \a@newbox
+\ifdim \wd\a@newbox = 0pt \else
+\ifdim \wd\a@newbox = \parindent \else
+\ifdim \wd\tempb@x = 0pt \else
+ \space \LRskip
+\fi\fi\fi \unhbox \tempb@x
+\ifvbox \Rinsertb@x \break \a@Runpack \fi
+\egroup }
+
+\gdef \a@newoutput {% intermediate output routine
+\global\output = \a@oldoutput
+%\showbox 255
+\setbox 255 \vbox {\unvbox 255 % put back to MVL
+\a@back@line }\unvbox 255 }
+
+\def \a@Runpack {% unpack all lines from the insertion
+\loop \a@Rgetline \unhbox \tempb@x \unskip \unskip \break
+\ifvbox \Rinsertb@x \repeat \unpenalty \RLskip }
+
+\def \LRskip {\hskip \z@ plus 0.1em }% before RL insertion (right)
+\def \RLskip {\hskip \z@ plus 0.1em }% after RL insertion (left)
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@Linsert #1{% splice Ltext into RL paragraph
+\putwordb@x {\RLskip }\a@spacefalse \a@@Linsert {#1}\a@Lunpack
+\putwordb@x {\LRskip }\a@spacetrue \arab@codes
+\tracingmacros 0
+\test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {22.06.2004} \def \a@level {l}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% alists.sty
+
+\def \a@c@item
+{\@ifnextchar [{\a@@item }{\@noitemargtrue
+\expandafter \a@@item \expandafter [\@itemlabel ]}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% awrite.sty
+
+\let \ac@high \relax
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabrep.cls
+
+\at@arabtext {% switch to Arabic terms
+ \def\labelenumi{\theenumi\nospace-}
+ \def\labelenumiii{\theenumiii\nospace)}
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {23.01.2005} \def \a@level {m}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabext.sty
+
+\ifx \a@@figure \undefined \else
+
+\def \a@@figure {% figure within Arabic environment
+\let \a@endfigure \endfigure \def \endfigure {\a@par \a@endfigure }%
+\a@par \figure }
+
+\def \a@@table {% table within Arabic environment
+\let \a@endtable \endtable \def \endtable {\a@par \a@endtable }%
+\a@par \table }
+
+\fi
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {06.04.2005} \def \a@level {n}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% abidir.sty
+
+% for use with abidir.sty version 3.12a:
+\csname newcount\endcsname \a@lines
+\csname newdimen\endcsname \a@Lwidth
+
+%\newdimen \a@prevdepth
+%\newdimen \a@displaywidth
+%\newcount \a@prevgraf
+%\newtoks \a@oldoutput
+
+\def \RLskip {\hskip \z@ plus 0.1em }% after RL insertion (right)
+\def \LRskip {\hskip 1em plus 0.1em }% before RL insertion (left)
+
+\def \a@@Rsplit #1{% splice RL words into the current paragraph
+\bgroup \global\a@oldoutput = \output
+\dimen0 \vsize \advance \dimen0 100pt \pagegoal \dimen0
+$$\global\a@prevgraf \prevgraf \global\a@displaywidth \displaywidth
+$${\endgraf }%
+\ifinner \a@back@line \else
+\global\output = {\a@newoutput }\eject
+\fi \global\prevdepth \a@prevdepth
+\ifvoid \a@oldbox \else \advance \a@prevgraf -1
+\setbox\a@oldbox \hbox {\hskip -\leftskip \unhbox\a@oldbox
+ \unskip \unskip \unpenalty \unpenalty }%
+\fi
+\setbox\Rinsertb@x \vbox {\a@box@rparm \a@box@aparm
+ \putlineb@x {\hbox {\unhcopy\a@oldbox }}\a@spacefalse
+ \test@token #1 \end \hbox {\box\lineb@x \hfill }}%
+\a@Rgetline
+\setbox\tempb@x \hbox {\unhbox \tempb@x \unskip \unpenalty
+ \global\setbox \a@newbox \lastbox }%
+\noindent \prevgraf \a@prevgraf \unhcopy \a@newbox
+\ifdim \wd\a@newbox = 0pt \else
+\ifdim \wd\a@newbox = \parindent \else
+\ifdim \wd\tempb@x = 0pt \else
+ \space \LRskip
+\fi\fi\fi \unhbox \tempb@x
+\ifvbox \Rinsertb@x \break \a@Runpack
+\else \RLskip
+\fi
+\egroup }
+
+\gdef \a@back@line {% skip back over empty display
+\dimen0 \baselineskip \unskip \unpenalty \setbox0 \lastbox
+\dimen2 \lastskip \unskip \unskip \unpenalty
+\global\setbox \a@oldbox \lastbox % last line
+\ifvoid \a@oldbox \else \dimen2 \lastskip \unskip
+\advance\dimen0 -\ht\a@oldbox \fi
+\advance\dimen0 -\dimen2 % compute \prevdepth
+\global\a@prevdepth \dimen0 \unskip }%
+
+\gdef \a@newoutput {% intermediate output routine
+\global\output = \a@oldoutput
+%\ifnum \tracingmacros = 0 \else \showbox 255 \fi
+\setbox 255 \vbox {\unvbox 255 % put back into MVL
+\a@back@line }\unvbox 255 }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% atrans.sty
+% because of an incompatible change in Plain 3.1415926
+
+\gdef \x@s #1{\oalign{#1\crcr\hidewidth \nsh@ft{34}% accent for _h
+ \vbox to -.2ex {\hbox{\char'25}\vss}\hidewidth}}
+
+\gdef \x@x #1{\oalign{#1\crcr\hidewidth \nsh@ft{29}% accent for .s in Urdu
+ \vbox to.2ex{\hbox{\char'177}\vss}\hidewidth}}
+
+\def \ish@ft #1{\dimen\z@.00#1ex\multiply\dimen\z@\fontdimen1\font
+ \kern.0156\dimen\z@} % positive kern for slant
+
+\def \rsh@ft #1#2{\ish@ft{#1}#2\nsh@ft{#1}}
+
+\def \nsh@ft#1{\dimen\z@.00#1ex\multiply\dimen\z@\fontdimen1\font
+ \kern-.0156\dimen\z@} % compensate for slant in lowered accents
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {25.01.2006} \def \a@level {o}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% version 3.11i::abidir.sty
+
+%\csname newbox\endcsname for \newbox etc. (inner!)
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aligs.sty
+
+\def \hah@end #1#2*#3#4+#5*#6{% hah, test for ligature
+% c1 m1 * c2 m21 + m22 * c3
+\ifu@gh \ifx #1\a@H
+ \else \set@act \sk@h@u
+ \fi
+\else
+\ifm@lay \else
+\ifurd@ \set@act \sk@h@s \hah@urd #3% round h?
+ \ifx #1T\else
+ \ifx #3l\test@allah {#4}{#6}\else
+ \ifx #1\a@H
+ \else \set@act\sk@h@u
+ \if\is@end@char #3%
+ \else \set@loww@act \global\a@min 1
+ \fi
+ \fi\fi\fi
+\else
+\ifx #3l\test@allah {#4}{#6}\else
+\ifnum \chr@cls = 1 \set@chr\sk@b \put@tatwil % 1 YntCbyp
+\else
+\ifnum \chr@cls = 3 \put@tatwil % 3 GHX
+\else \gim@test #6\put@tatwil
+\fi
+\fi\fi\fi\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {08.02.2006} \def \a@level {p}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% abidir.sty
+
+\csname newdimen\endcsname \a@displaywidth
+
+\def \LRskip {\hskip \z@ plus 0.1em }% before RL insertion (left)
+
+\def \a@@Rsplit #1{% splice RL words into the current paragraph
+\bgroup \global\a@oldoutput = \output
+\dimen0 \vsize \advance \dimen0 100pt \pagegoal \dimen0
+$$\global\a@prevgraf \prevgraf \global\a@displaywidth \displaywidth
+$${\par }%
+\ifinner \a@back@line \else
+\global\output = {\a@newoutput }\eject
+\fi \global\prevdepth \a@prevdepth
+\ifvoid \a@oldbox \else \advance \a@prevgraf -1
+\setbox\a@oldbox \hbox {\hskip -\leftskip \unhbox\a@oldbox
+ \unskip \unskip \unpenalty \unpenalty }%
+\fi
+\setbox\Rinsertb@x \vbox {\a@box@rparm \a@box@aparm
+ \putlineb@x {\hbox {\unhcopy\a@oldbox }}\a@spacefalse
+ \test@token #1 \end \hbox {\box\lineb@x \hfill }}%
+\a@Rgetline
+\setbox\tempb@x \hbox {\unhbox \tempb@x \unskip \unpenalty
+ \global\setbox \a@newbox \lastbox }%
+\noindent \prevgraf \a@prevgraf \unhcopy \a@newbox
+\ifdim \wd\a@newbox = 0pt \else
+\ifdim \wd\a@newbox = \parindent \else
+\ifdim \wd\tempb@x = 0pt \else
+ \space \LRskip
+\fi\fi\fi \unhbox \tempb@x
+\ifvbox \Rinsertb@x \break \a@Runpack
+\else \RLskip
+\fi
+\egroup }
+
+\def \a@box@aparm {% Arabic parameters for vbox
+\let \end \relax \def \next@command {\test@special}\transfalse
+\def \a@kern {\nobreak\kern.05em } \def \a@mkern {\nobreak\kern-.05em }
+\showfalse \spreadtrue \a@hsize \a@displaywidth
+\advance \a@hsize -\leftskip \advance \a@hsize -\rightskip
+\leftskip \z@ \rightskip \z@
+%\advance \a@hsize 20pt % TENTATIVE
+\def \arab@space {\nobreak\hskip 5pt plus 4pt minus 1pt }%
+\def \tat@skip {0.04ex plus 0.5ex }}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aoutput.sty
+
+\def \put@ab@x {% deposit line
+\ifhmode \unskip {\par }\penalty \clubpenalty
+\parindent \z@ \parskip \z@ \else
+\ifnum \a@prevgraf = \z@ \else \penalty \widowpenalty
+\fi\fi
+\begingroup \parfillskip 0pt plus 1fill
+ \leftskip \z@ \rightskip \z@ \noindent
+ \ifdim \a@leftmargin = \z@ \else \hskip \a@leftmargin \fi
+ \box\a@tempb@x \par
+\endgroup \parindent \z@ \parskip \z@ plus 1pt \initlineb@x
+\advance \a@prevgraf \@ne \a@@prevgraf \prevgraf
+\advance \a@@prevgraf \@ne \prevgraf \a@@prevgraf }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% altxext.sty
+
+\ifx \a@olddisp \undefined
+\let \a@olddisp \[ % for lineno.sty
+\ifx \linenumbers \undefined \else
+ \def \[{\par\nobreak\noindent \a@olddisp}
+ \all@w@ne \linelabel
+\fi
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% for acmd.sty in version 3.11 only!
+
+\def \a@c@smallskip {\a@@par \smallskip \test@token }
+\def \a@c@medskip {\a@@par \medskip \test@token }
+\def \a@c@bigskip {\a@@par \bigskip \test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aparse.sty
+
+{\catcode `\< = \@other % better make sure
+\gdef \a@parse #1>{% parse token sequence into syllables
+\iftest@parse \tracingmacros = 1
+\iftest@scan \else \a@verb (#1)>\fi\fi
+\csname a@parse@hook\endcsname
+\last@con ={.}\last@mod = 0 \last@voc = 0 \global\@highfalse
+\global \sv@revwd ={}\global \a@revwd ={}\syl@beg #1<<<>%
+\iftest@parse \tracingmacros = 0 %
+\xpa \a@verb \xpa (\the\a@revwd )>\fi }
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {01.03.2006} \def \a@level {q}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% alatex.sty
+
+\ifx \linenumbers \undefined
+\global\let \linenumbers \relax \fi
+\global\let \ifLineNumbers \iffalse
+% CAUTION: must be in \outer context!
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% abidir.sty
+
+\gdef \a@Rinsert #1{% put a sequence of RL words into Ltext
+\leavevmode % go to hmode if not there already
+\ifinner \a@sequence {#1}% inside a \hbox: append
+\else \a@@Rsplit {#1}% splice into the current paragraph
+\fi }
+
+\gdef \a@@Rinsert #1{% RL insertion inside Ltext
+%\tracingmacros 1
+\ifshow \a@@verb {#1}\fi % verbating listing
+\ifarab \a@Rinsert {#1}\fi % arabic writing
+\iftrans \set@transfont \trans@text #1 \end \/\fi
+\ifnum \tracingarab > \@ne \message {>}\fi
+\unskip \egroup }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \a@back@line {% skip back over last line
+\ifLineNumbers % undo last linenumber
+ \unskip \unkern \unskip \unpenalty \setbox0 \lastbox
+ \ifvoid0 \else \global \advance \c@linenumber -1
+ \fi \unkern \unskip
+\fi \global\setbox \a@oldbox \lastbox % grab last text line
+\ifvoid \a@oldbox \prevdepth 0pt % start of paragraph
+\else \dimen0 \baselineskip \advance\dimen0 -\ht\a@oldbox
+ \advance\dimen0 -\lastskip \prevdepth \dimen0 % compute \prevdepth
+\fi \unskip }
+
+\gdef \a@@Rsplit #1{% splice RL words into the current paragraph
+\bgroup \global\a@oldoutput = \output
+\dimen0 \vsize \advance \dimen0 100pt \pagegoal \dimen0
+\everypar {}%
+\par \global\a@prevgraf \prevgraf
+\ifinner \a@back@line \else
+ \global\output = {\a@newoutput }\break
+\fi
+\dimen0 \pagegoal \advance \dimen0 -100pt \pagegoal \dimen0
+\ifvoid \a@oldbox \global \a@displaywidth \hsize
+\else \advance \a@prevgraf -1 \vskip -\parskip
+ \global \a@displaywidth \wd \a@oldbox
+ \setbox\a@oldbox \hbox {\hskip -\leftskip \unhbox\a@oldbox
+ \unskip \unskip \unpenalty \unpenalty }%
+\fi
+\setbox\Rinsertb@x \vbox {\a@box@rparm \a@box@aparm \let \par \endgraf
+ \putlineb@x {\hbox {\unhcopy\a@oldbox }}\a@spacefalse
+ \test@token #1 \end \hbox {\box\lineb@x \hfill }}%
+\a@Rgetline
+\setbox\tempb@x \hbox {\unhbox \tempb@x \unskip \unpenalty
+ \global\setbox \a@newbox \lastbox }%
+\noindent \prevgraf \a@prevgraf \unhcopy \a@newbox
+\ifdim \wd\a@newbox = 0pt \else
+\ifdim \wd\a@newbox = \parindent \else
+\ifdim \wd\tempb@x = 0pt \else \space \LRskip
+\fi\fi\fi
+\unhbox \tempb@x
+\ifvbox \Rinsertb@x \break \a@Runpack \else \RLskip
+\fi \egroup }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \a@newoutput {% intermediate output routine
+\global\output = \a@oldoutput
+%\ifnum \tracingmacros = 0 \else \showbox 255 \fi
+%\showbox255
+\setbox 255 \vbox {\unvbox 255 % put back into MVL
+%\tracingmacros 1
+\a@back@line }\unvbox 255 }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \a@Linsert #1{% splice Ltext into RL paragraph
+%\tracingmacros 1
+\putwordb@x {\RLskip }\a@spacefalse \a@@Linsert {#1}\a@Lunpack
+\putwordb@x {\LRskip }\a@spacetrue \arab@codes
+%\tracingmacros 0
+\test@token }
+
+\gdef \a@@Linsert #1{% splice Ltext into RL paragraph
+\dimen0 \wd \lineb@x \setbox \Linsertb@x \vbox
+{\hsize \a@hsize \hangindent -\dimen0 \hangafter -\@ne
+\tr@ceoff \rm \tr@ceon \rightskip \z@ plus .001fil
+\vskip \a@vglue \everypar {}\parskip \z@
+\dimen2 \fontdimen4\font \fontdimen4\font 0pt % prevent shrinking
+\noindent \null #1\clubpenalty 0 \widowpenalty 0 \tolerance 10000
+\endgraf \fontdimen4\font \dimen2 }}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabaux.sty
+
+\ifx \a@check@mathfonts \undefined
+\global\let \a@check@mathfonts \check@mathfonts
+\gdef\check@mathfonts{\tr@ceoff % dont trace fonts
+\a@check@mathfonts \tr@ceon }
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% aedpatch.sty
+
+\let \ins@skip \relax
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabtex.sty
+
+%\long\def \test@@special #1{% check for special cases
+\long\gdef \test@special #1{% check for special cases
+\ifcat \bgroup \nxp \next@token % arabic group
+ \a@@putword \def \next {\arab@group {#1}}\else
+\if \relax \nxp #1% % command
+ \if\is@in@set #1\a@accent % known to scanner
+ \a@@append {#1}\def \next {\get@token }%
+ \else % general command
+ \a@@putword \def \next {\test@command #1}%
+ \fi \else
+\if \sp@ce \nxp \next@token % RTL space
+ \a@@putword \def \next {\get@token }\else
+\ifnum `#1 > 127 % inputenc command
+ \a@@append {#1}\def \next {\get@token}\else
+\ifcat \nxp ~\nxp #1% % active character
+ \a@@putword \def \next {\test@command #1}\else
+\if \nxp <\nxp #1\unarab@codes % Roman insert
+ \a@@putword \let \next \test@insert \else
+\ifx $#1\unarab@codes % Math insert
+ \a@@putword \let \next \test@math
+\else \a@@append {#1}\def \next {\get@token}% % normal case
+\fi\fi\fi\fi\fi\fi\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {16.04.2006} \def \a@level {r}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% abidir.sty
+
+\gdef \a@@Rinsert #1{% RL insertion inside Ltext
+%\tracingmacros 1
+\ifshow \a@@verb {#1}\fi % verbating listing
+\ifarab \a@Rinsert {#1}\fi % arabic writing
+\iftrans \set@transfont \trans@text #1 \end \/\fi
+\ifnum \tracingarab > \@ne \message {>}\fi
+\RLskip \egroup }
+
+\gdef \a@@Rsplit #1{% splice RL words into the current paragraph
+\bgroup \global\a@oldoutput = \output
+ \dimen0 \vsize \advance \dimen0 100pt \pagegoal \dimen0
+ \skip0 \lastskip \everypar {}\par \global\a@prevgraf \prevgraf
+\ifinner \a@back@line \else \global\output = {\a@newoutput }\break
+\fi
+ \dimen0 \pagegoal \advance \dimen0 -100pt \pagegoal \dimen0
+ \global\prevdepth \a@prevdepth
+\ifvoid \a@oldbox \global \a@displaywidth \hsize
+\else \advance \a@prevgraf -1 \vskip -\parskip
+ \global \a@displaywidth \wd \a@oldbox
+ \setbox\a@oldbox \hbox {\hskip -\leftskip \unhbox\a@oldbox
+ \unskip \unskip \unpenalty \unpenalty }%
+\fi
+\setbox\Rinsertb@x \vbox {\a@box@rparm \a@box@aparm \let \par \endgraf
+ \putlineb@x {\hbox {\unhcopy\a@oldbox }}\a@spacefalse
+ \test@token #1 \end \hbox {\box\lineb@x \hfill }}%
+\a@Rgetline
+\setbox\tempb@x \hbox {\unhbox \tempb@x \unskip \unpenalty
+ \global\setbox \a@newbox \lastbox }%
+\noindent \prevgraf \a@prevgraf \unhcopy \a@newbox
+\ifdim \wd\a@newbox = 0pt \else
+\ifdim \wd\a@newbox = \parindent \else
+\ifdim \wd\tempb@x = 0pt \else
+ \ifdim \skip0 = 0pt \else \hskip \skip0
+ \fi \LRskip
+\fi\fi\fi
+\unhbox \tempb@x
+\ifvbox \Rinsertb@x \break \a@Runpack
+\fi \egroup }
+
+\def \a@Runpack {% unpack all lines from the insertion
+\loop \a@Rgetline \unhbox \tempb@x \unskip \unskip \break
+\ifvbox \Rinsertb@x \repeat \unpenalty }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \a@pdatum {02.07.2006} \def \a@level {s}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+\input alocal.sty % local patches!
+% must be idempotent!
+
+\ifx \a@patchlevel \undefined % first patching run
+\a@ident {apatch.sty}
+ {\a@version\a@level\space last minute patches } {\a@pdatum }
+ \edef \a@patchlevel {\a@version \a@level \space (\a@pdatum )}
+\else \a@message {version \a@patchlevel: second phase of patching}
+\fi
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\catcode`\" = \patchdqcode \catcode`\@ = \patchatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/arababel.sty b/language/arabic/arabtex/texinput/arababel.sty
new file mode 100644
index 0000000000..04e750d52d
--- /dev/null
+++ b/language/arabic/arabtex/texinput/arababel.sty
@@ -0,0 +1,39 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arababel.sty
+% protect against a conflict with the BABEL package
+% as suggested by Olaf Kummer and Johannes Braams
+% 10.03.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {arababel.sty}{3.07 BABEL compatibility } {10.03.1998}
+
+\def\peek@token#1#2{%
+ \expandafter\let\expandafter\bbl@nexta\csname #1\string#2\endcsname
+ \expandafter\let\expandafter\bbl@nextb
+ \csname system@active\string#2\endcsname
+ \futurelet\bbl@token\bbl@test@token}
+
+\def\bbl@test@token{%
+ \let\bbl@next\bbl@nexta
+ \ifcat\noexpand\bbl@token a%
+ \else
+ \ifcat\noexpand\bbl@token=%
+ \else
+ \ifcat\noexpand\bbl@token\noexpand\bbl@next
+ \else
+ \let\bbl@next\bbl@nextb
+ \fi
+ \fi
+ \fi
+ \bbl@next}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
diff --git a/language/arabic/arabtex/texinput/arabart.cls b/language/arabic/arabtex/texinput/arabart.cls
new file mode 100644
index 0000000000..2763605723
--- /dev/null
+++ b/language/arabic/arabtex/texinput/arabart.cls
@@ -0,0 +1,24 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabart.cls
+% ArabTeX extension
+% Arabic version of article.cls
+% for use with ArabTeX Version 3.04
+%
+% Copyright (C) 1995 by Klaus Lagally
+% 21.05.96
+%
+% reusing arabrep.cls of 21 May 1996
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\NeedsTeXFormat {LaTeX2e}[1995/06/01]
+\ProvidesClass {arabart}[1996/05/21 v0.01 arabic article format]
+
+\DeclareOption* {\PassOptionsToClass {\CurrentOption}{arabrep}}
+\ProcessOptions
+\LoadClass [article]{arabrep}[1996/05/21] % load the Arabic report class
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% end of file arabart.cls
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/arabaux.sty b/language/arabic/arabtex/texinput/arabaux.sty
new file mode 100644
index 0000000000..466c0cfef7
--- /dev/null
+++ b/language/arabic/arabtex/texinput/arabaux.sty
@@ -0,0 +1,134 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabaux.sty
+% auxiliary macros for ArabTeX
+% 27.04.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {arabaux.sty} {3.11 auxiliary macros for ArabTeX} {21.05.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@message #1{% ArabTeX message
+\message{(ArabTeX) #1}}
+
+\def \isfalse {\xxpa \iffalse \fi } % invert condition before \fi
+\def \setiffalse {\xpa \iffalse \fi } % invert condition before \fi
+
+\def \NOT #1{00\if #1\xpa \setiffalse \fi }
+
+\def \AND #1#2{00\if #1\if #2\else \xxpa \setiffalse \fi
+\else \xpa \setiffalse \fi }
+
+\def \OR #1#2{00\if #1\else \if #2\else \xpa \setiffalse \fi \fi }
+
+\def \isx #1#2{00\ifx #1#2\else\xpa \setiffalse \fi }
+
+\def \iscat #1#2{00\ifcat #1#2\else\xpa \setiffalse \fi }
+
+\def \is #1#2{00\if #1#2\else\xpa \setiffalse \fi }
+
+\long\def \Return #1\fi {\fi #1}
+\long\def \ReturnFi #1\fi {\fi #1}
+\long\def \ReturnElseFi #1\else #2\fi {\fi #1}
+
+\long\def \cond #1#2#3\fi {% call conditional
+#1\ReturnElseFi {#2}\else \ReturnFi {#3}\fi }
+
+%%%%%%%%%%%%%%%%%%%%
+
+\def \@gobble #1{}
+
+\let \protect \relax
+
+\ifx \@\undefined \def \@{@}\fi
+
+\ifx \nil \undefined \def \nil {NIL}\fi
+
+\def \pdef #1{% define robust command
+\edef #1{\nxp\protect \xpa\nxp\csname \xpa\@gobble\string #1 \endcsname }%
+\xpa\def \csname \xpa\@gobble\string #1 \endcsname }
+
+\def \a@extend #1#2{% extend command definition, no pars!
+\xpa\gdef \xpa#1\xpa{#1#2}}
+
+%%%%%%%%%%%%%%%%%%%%
+
+% map token to action
+% allow list of labels
+\def \case #1\of #{%
+ \begingroup \tracingmacros 0
+ \def \l@@kup ##1#1##2##{\h@@d }%
+ \getc@se #1\of }
+
+\def \getc@se #1\of #2#3\endcase {%
+ \doc@se #1#2\default {}\@end }
+
+\def \doc@se #1#2\default #3#4\@end {%
+ \l@@kup #2#1{#3}\@end }
+
+\def \h@@d #1#2\@end {\endgroup #1}
+
+% evaluate map: sets \result
+\def \evalcase #1\of #{%
+ \begingroup \tracingmacros 0
+ \def \l@@kup ##1#1##2##{\r@sult }%
+ \getc@se #1\of }
+
+\def \r@sult #1#2\@end {\endgroup \def \result {#1}}
+
+% apply function to map:
+\def \apply #1\tocase #2\of #{%
+ \begingroup \tracingmacros 0
+ \def \l@@kup ##1#2##2##{\@pply {#1}}%
+ \getc@se #2\of }
+
+\def \@pply #1#2#3\@end {\endgroup #1{#2}}
+
+%%%%%%%%%%%%%%%%%%%%%%%% tracing control %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \tr@ceoff {% suspend temporarily, local, no nesting!
+\edef \tr@ceon {\nxp\tracingmacros \the\tracingmacros }\tracingmacros 0 }
+
+\def \notr@ce {% suspend temporarily, for NFSS only, no nesting!
+\edef \dotr@ce {\nxp\tracingmacros \the\tracingmacros }\tracingmacros 0 }
+
+\let \tr@ceon \relax \let \dotr@ce \relax
+
+\let \a@setfontsize \@setfontsize
+
+\def \@setfontsize #1#2#3{% do not trace NFSS routine
+\notr@ce \a@setfontsize {#1}{#2}{#3}\dotr@ce }
+
+%%%%%%%%%%%%%%%%%%%%%%%% list utilities %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\long\def \is@in@list #1#2>{00% #1 token, #2 list
+ \begingroup \tracingmacros 0
+ \def \l@@kup ##1#1##2\@ {\endgroup \ifx >##2\isfalse \fi }%
+ \l@@kup #2#1>\@ }
+
+\long\def \ismember #1#2{00% #1 token, #2 list
+ \begingroup \tracingmacros 0
+ \def \l@@kup ##1#1##2\@@ {\endgroup \ifx \nil ##2\xpa \setiffalse \fi }%
+ \l@@kup #2#1\nil \@@ }
+
+\long\def \is@in@set #1#2{% #1 = symbol, #2 = token list of symbols
+\xpa \ismember \xpa #1\xpa {\the #2}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcount \hours \newcount \mins
+
+\def \timeofday
+{\hours \time \divide \hours 60 \the\hours:%
+\mins \time \multiply \hours 60 \advance \mins -\hours
+\ifnum 10 > \mins \relax 0\fi \the\mins }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/texinput/arabbook.cls b/language/arabic/arabtex/texinput/arabbook.cls
new file mode 100644
index 0000000000..2677d06ab7
--- /dev/null
+++ b/language/arabic/arabtex/texinput/arabbook.cls
@@ -0,0 +1,23 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabbook.cls
+% ArabTeX extension
+% Arabic version of book.cls
+% for use with ArabTeX Version 3.04
+%
+% Copyright (C) 1995 by Klaus Lagally
+% 21.05.96
+%
+% reusing arabrep.cls of 18 May 1996
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\NeedsTeXFormat {LaTeX2e}[1995/06/01]
+\ProvidesClass {arabbook}[1996/05/21 v0.01 arabic book format]
+
+\DeclareOption* {\PassOptionsToClass {\CurrentOption}{arabrep}}
+\ProcessOptions
+\LoadClass [book]{arabrep}[1996/05/18] % load the Arabic report class
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% end of file arabbook.cls
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/arabchrs.sty b/language/arabic/arabtex/texinput/arabchrs.sty
new file mode 100644
index 0000000000..f5486e59d0
--- /dev/null
+++ b/language/arabic/arabtex/texinput/arabchrs.sty
@@ -0,0 +1,77 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabchrs.sty
+% ArabTeX
+% dynamic letter token definitions for Arabic
+% Version 11.07.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {arabchrs.sty} {3.07 letter token definitions } {11.07.1998}
+
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\gdef \def@arabchars {% define character macros for Arabic
+% dynamic letter token definitions for Arabic
+% pattern: skeleton, modifier
+\gdef \tc@@ {\sk@@ , 0 } % illegal
+\gdef \tc@a {\sk@a , 0 } % alif
+\gdef \tc@b {\sk@b , 4 } % bah
+\gdef \tc@c {\sk@hh , 7 } % gim with hamza
+\gdef \tc@d {\sk@d , 0 } % dal
+\gdef \tc@e {\sk@@ , 0 } % reserved for vowel
+\gdef \tc@f {\sk@f@s , 1 } % fah
+\gdef \tc@g {\sk@g@s , 0 } % gaf with bar
+\gdef \tc@h {\sk@h , 0 } % hah
+\gdef \tc@i {\sk@@ , 0 } % reserved for vowel
+\gdef \tc@j {\sk@r , 3 } % zhah
+\gdef \tc@k {\sk@k , 0 } % kaf
+\gdef \tc@l {\sk@l , 0 } % lam
+\gdef \tc@m {\sk@m , 0 } % mim
+\gdef \tc@n {\sk@n , 1 } % nun
+\gdef \tc@o {\sk@@ , 0 } % reserved for vowel
+\gdef \tc@p {\sk@b , 6 } % pah
+\gdef \tc@q {\sk@q , 2 } % qaf
+\gdef \tc@r {\sk@r , 0 } % rah
+\gdef \tc@s {\sk@s , 0 } % sin
+\gdef \tc@t {\sk@b , 2 } % tah
+\gdef \tc@u {\sk@@ , 0 } % reserved for vowel
+\gdef \tc@v {\sk@f@s , 3 } % vah
+\gdef \tc@w {\sk@w , 0 } % waw
+\gdef \tc@x {\sk@s , 3 } % shin
+\gdef \tc@y {\sk@y , 5 } % yah
+\gdef \tc@z {\sk@r , 1 } % zay
+%
+\gdef \tc@A {\sk@a , 0 } % alif also
+\gdef \tc@B {\sk@B , 0 } % tatwil
+\gdef \tc@C {\sk@b , 3 } % thah
+\gdef \tc@D {\sk@ss , 1 } % ddad
+\gdef \tc@E {\sk@y@p , 5 } % yah bari
+\gdef \tc@F {\sk@d , 1 } % dhal
+\gdef \tc@G {\sk@hh , 4 } % gim
+\gdef \tc@H {\sk@hh , 0 } % hhah
+\gdef \tc@I {\sk@@ , 0 } % reserved for vowel
+\gdef \tc@J {\sk@hh , 6 } % tchah
+\gdef \tc@K {\sk@k , 3 } % kaf-i-nun
+\gdef \tc@L {\sk@y@h , 0 } % yah with stroke
+\gdef \tc@M {\sk@n , 6 } % nya (Malay)
+\gdef \tc@N {\sk@W , 0 } % small space
+\gdef \tc@O {\sk@@ , 0 } % reserved for vowel
+\gdef \tc@P {\sk@ain , 0 } % `ain
+\gdef \tc@Q {\sk@Q , 0 } % hamza
+\gdef \tc@R {\sk@ain , 1 } % ghain
+\gdef \tc@S {\sk@ss , 0 } % ssad
+\gdef \tc@T {\sk@h@m , 2 } % tah marbuta
+\gdef \tc@U {\sk@@ , 0 } % reserved for vowel
+\gdef \tc@V {\sk@tt , 0 } % ttah
+\gdef \tc@W {\sk@W , 0 } % small space
+\gdef \tc@X {\sk@kh , 1 } % khah
+\gdef \tc@Y {\sk@y , 0 } % alif maqsura
+\gdef \tc@Z {\sk@tt , 1 } % zzah
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}}% end of dynamic letter token definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/arabext.sty b/language/arabic/arabtex/texinput/arabext.sty
new file mode 100644
index 0000000000..3e10ffc7e7
--- /dev/null
+++ b/language/arabic/arabtex/texinput/arabext.sty
@@ -0,0 +1,103 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabext.sty
+% ArabTeX
+% 21.08.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% patches for arabtex.sty etc
+% for use with arabart.cls
+% ArabTeX 3.11
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {arabext.sty} {3.11 patches for use with arabart.cls} {21.08.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@ignorespaces {\test@token }
+
+\def \a@c@ref {\unarab@codes \a@@ref }
+
+\def \a@@ref #1{\putwordb@x {\ref {#1}}\arab@codes \test@token }
+
+\def \a@c@cite {\unarab@codes \a@@cite }
+
+\def \a@@cite #1{\putwordb@x {\rm \cite {#1}}\arab@codes \test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \arabdef #1{% define command valid for Arabic environment only
+\begingroup \escapechar -1
+\xdef \reserved@a {\xpa \nxp \csname a@\string #1\endcsname }\endgroup
+\toks@ \xpa {\xpa \let \xpa #1\reserved@a }\allowarab #1%
+\xpa \at@arabtext \xpa {\the\toks@ }\xpa \def \reserved@a }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@table {\unarab@codes \a@@table }
+
+\def \a@@table [#1]{% table within Arabic environment
+\let \a@endtable \endtable \def \endtable {\a@par \a@endtable }%
+\table [#1]%
+\arab@tail }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@figure {\unarab@codes \a@@figure }
+
+\def \a@@figure [#1]{% figure within Arabic environment
+\let \a@endfigure \endfigure \def \endfigure {\a@par \a@endfigure }%
+\figure [#1]%
+\arab@tail }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\all@w@ne \label
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@endtabular {\a@@endtabular \advance \parfillskip \rightskip
+\rightskip \leftskip \leftskip \parfillskip \parfillskip \z@ \par }
+
+\def \a@c@hline {% \\ missing
+\errmessage{table row not terminated: \string\\ inserted; proceed.}%
+\test@token \\ \hline }
+
+\def \a@c@tabular {\unarab@codes \let \@mkpream \a@mkpream
+\let \a@@endtabular \endtabular \let \endtabular \a@endtabular
+\a@@par \leavevmode \tabular }
+
+\def \a@c@array {\unarab@codes
+\let \a@@endtabular \endarray \let \endarray \a@endtabular
+\a@@par \leavevmode \array }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\let \a@@mkpream \@mkpream
+
+\def \a@c@a@RL {\test@token }
+
+\def \a@c@protect {\test@token }
+
+\def \a@mkpream #1{\a@@mkpream {#1}\let \@@sharp \relax \let \a@END \relax
+\edef \@sharp {\protect\a@SEQ \@@sharp \a@END }%
+\edef \@preamble {\@preamble}%
+\def \@@sharp {\@sharp }\let \@sharp \relax
+\edef \@preamble {\@preamble}}
+
+\def \a@SEQ {% put a sequence of words into a \hbox
+\begingroup \transfalse \showfalse
+\arab@codes \set@arabfont \@waslafalse \@wasfalse
+\def \next@command {\test@special}\let \a@put@line \break@line
+\def \a@last@line {\let \next \a@NL }\let \put@word \addt@line
+\initlineb@x \test@token }
+
+\def \a@c@a@END {\box\lineb@x \endgroup }
+
+\def \a@NL {\box\lineb@x \endgroup \\}%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/arabrep.cls b/language/arabic/arabtex/texinput/arabrep.cls
new file mode 100644
index 0000000000..f901f18d61
--- /dev/null
+++ b/language/arabic/arabtex/texinput/arabrep.cls
@@ -0,0 +1,1076 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabrep.cls
+% ArabTeX extension
+% Arabic version of report.cls
+% for use with ArabTeX Version 3.08 - 3.10
+%
+% Copyright (C) 1997 - 2003 by Klaus Lagally
+% 16.05.1997
+% 21.03.1999
+% 26.04.2003
+%
+% reusing report.cls (and book.cls) of 19 Jun 1995
+% reusing report.cls (and book.cls) of 26 May 1996
+% patches for pagenumbering 25 March 1999
+% 15.07.1999
+% 21.04.2000 % new font handling
+% 14.09.2001 % RTL footnotes, chapter names etc.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\NeedsTeXFormat {LaTeX2e}[1996/06/01]
+\ProvidesClass {arabrep}[2003/04/26 v3.11 arabic report format]
+
+\newif\if@mainmatter \@mainmattertrue
+\newif\ifa@book \a@bookfalse
+\newif\ifa@article \a@articlefalse
+\DeclareOption {book}{\a@booktrue \@mainmattertrue }
+\DeclareOption {article}{\a@articletrue \@mainmattertrue }
+\DeclareOption* {\PassOptionsToClass {\CurrentOption}{report}}
+\ProcessOptions
+\LoadClass {report}[1996/05/26] % load the LaTeX standard class
+
+\ifa@book \@openrighttrue \fi
+%\input{bk1\@ptsize.clo} % collision on \small !!
+
+\ifa@article \@titlepagefalse \fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%\RequirePackage {arabtex}[1997/05/08] % load the ArabTeX processor
+\RequirePackage {arabtex}[2003/04/26] % load the ArabTeX processor
+
+\UsePackage {altxext} % load local patches for LaTeX
+
+% ****************************************
+% * PAGE STYLES *
+% ****************************************
+
+\if@twoside % If two-sided printing.
+ \def \ps@headings {% for arabic mode
+ \let \@mkboth \markboth \def\@oddfoot{}\def\@evenfoot{}%
+ \def \@evenhead {\edef \thep@ge {\nxp\RL{\thepage }}% left heading
+ \a@normalfont \leftmark \hfil \thep@ge }%
+ \def \@oddhead {\edef \thep@ge {\nxp\RL{\thepage }}% right heading
+ \a@normalfont \thep@ge \hfil \rightmark }%
+ \def \chaptermark ##1{\markboth {##1%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \hskip 1em\relax \RL{\@chapapp \space \thechapter. }%
+ \fi\fi }{}}%
+ \def \sectionmark ##1{\markleft {##1\ifnum \c@secnumdepth >\@ne
+ \hskip 1em\relax \RL{\thesection }\fi }}%
+ \ifa@article
+ \def \subsectionmark ##1{\markleft {##1\ifnum \c@secnumdepth >\@ne
+ \hskip 1em\relax \RL{\thesubsection }\fi }}%
+ \fi }
+\else % If one-sided printing.
+ \def \ps@headings {% for arabic mode
+ \let \@mkboth \markboth \def \@oddfoot{}\def \@evenfoot{}%
+ \def \@oddhead {\edef \thep@ge {\nxp\RL{\thepage }}% right heading
+ \a@normalfont \thep@ge \hfil \rightmark }%
+ \def \chaptermark ##1{\markright {##1%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \hskip 1em\relax \RL{\@chapapp\space \thechapter. }%
+ \fi\fi }}}
+\fi
+
+\def \ps@plain {% for arabic mode
+ \let \@mkboth\@gobbletwo \let\@oddhead\@empty \let\@evenhead\@empty
+ \def \@oddfoot {\edef \thep@ge {\nxp\RL{\thepage }}% right heading
+ \a@normalfont \hfil \thep@ge \hfil }%
+ \let \@evenfoot\@oddfoot }
+
+\def \ps@myheadings {% for arabic mode
+ \let\@oddfoot \@empty \let\@evenfoot \@empty
+ \def \@oddhead {\edef \thep@ge {\nxp\RL{\thepage }}% right heading
+ \a@normalfont \thep@ge \hfil \rightmark }%
+ \def \@evenhead {\edef \thep@ge {\nxp\RL{\thepage }}% left heading
+ \a@normalfont \leftmark \hfil \thep@ge }%
+ \let\@mkboth\@gobbletwo \let\subsectionmark\@gobble
+ \let\chaptermark\@gobble \let\sectionmark\@gobble }
+
+% ****************************************
+% * TITLE AND ABSTRACT *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\if@titlepage
+ \newcommand\maketitle{\begin{titlepage}%
+ \let\footnotesize\small
+ \let\footnoterule\relax
+ \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}%
+ \let\thanks\relax\let\maketitle\relax
+ \gdef\@thanks{}\gdef\@author{}\gdef\@title{}}
+\else
+ \newcommand\maketitle{\par
+ \begingroup
+ \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
+ \def\@makefnmark{\hb@xt@\z@{$\m@th^{\@thefnmark}$\hss}}%
+ \long\def\@makefntext##1{\parindent 1em\noindent
+ \hb@xt@1.8em{\hss\@makefnmark}##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}%
+ \let\thanks\relax
+ \let\maketitle\relax\let\@maketitle\relax
+ \gdef\@thanks{}\gdef\@author{}\gdef\@title{}}
+
+ \def\@maketitle{%
+ \newpage
+ \null
+ \vskip 2em%
+ \begin{center}%
+ {\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
+
+\else %============= arabart.cls ==================================
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * UNITS *
+% ****************************************
+
+\ifa@book
+\newcommand\frontmatter
+ {\cleardoublepage \@mainmatterfalse \pagenumbering{Abjad}}
+% {\cleardoublepage \@mainmatterfalse \pagenumbering{Abj}}
+\newcommand\mainmatter
+ {\cleardoublepage \@mainmattertrue \pagenumbering{arabic}}
+% {\cleardoublepage \@mainmattertrue \pagenumbering{arab}}
+\newcommand\backmatter
+ {\if@openright \cleardoublepage \else \clearpage
+ \fi \@mainmatterfalse }
+\fi
+
+\ifa@article
+\renewcommand\thesection {\@arabic\c@section}
+\fi
+
+%\allowarab \@chapapp
+
+% ****************************************
+% * PARTS *
+% ****************************************
+
+\renewcommand \thepart {\@arabic\c@part }
+
+\def \a@c@part {\a@@par
+\ifa@article \addvspace{4ex}\@afterindentfalse
+\else \cleardoublepage \thispagestyle{plain}%
+ \if@twocolumn \onecolumn \@tempswatrue
+ \else \@tempswafalse
+ \fi
+ \hbox{}\vfil
+\fi \secdef \a@part \a@spart }
+
+\ifa@article
+
+\def \a@part [#1]#2{% numbered part
+\ifnum \c@secnumdepth > \m@ne
+ \refstepcounter {part}%
+ \addcontentsline {toc}{part}{\protect\RL
+ {\protect\abjad {\thepart}\hspace {1em} #1 }}%
+\else \addcontentsline {toc}{part}{\protect\RL {#1}}%
+\fi
+\begingroup \let \end \a@@par \a@parindent \z@ \a@@raggedright
+ \a@normalfont \bfseries \interlinepenalty \@M
+\ifnum \c@secnumdepth >\m@ne
+ \Large \set@arabfont
+ \test@token \partname \abjad{\thepart } \end \nobreak
+\fi
+ \huge \set@arabfont \test@token #2 \end
+ \markboth {}{}
+\endgroup
+\nobreak \vskip 3ex
+\a@afterheading \test@token }
+
+\def \a@spart #1{% unnumbered part
+\begingroup \let \end \a@@par \a@@raggedright \a@parindent \z@
+ \interlinepenalty \@M
+ \a@normalfont \huge \bffamily \set@arabfont \test@token #1 \end
+\endgroup
+\nobreak \vskip 3ex
+\a@afterheading \test@token }
+
+\else % report or book
+
+\def \a@part [#1]#2{% numbered part
+ \ifnum \c@secnumdepth > \ifa@article \m@ne \else -2 \fi
+ \refstepcounter {part}%
+ \addcontentsline {toc}{part}{\protect\RL
+ {\protect\abjad {\thepart}\hspace {1em} #1 }}%
+ \else \addcontentsline {toc}{part}{\protect\RL {#1}}%
+ \fi
+ \markboth{}{}
+\begingroup \let \end \a@@par \a@@centering \interlinepenalty \@M
+ \a@normalfont \bfseries
+ \ifnum \c@secnumdepth > -2\relax
+ \huge \set@arabfont
+ \test@token \partname \abjad{\thepart } \end
+ \vskip 20\p@
+ \fi
+ \Huge \set@arabfont \test@token #2 \end
+\endgroup
+\@endpart \test@token }
+
+\def \a@spart #1{% unnumbered part
+\begingroup \let \end \a@@par \a@@centering \interlinepenalty \@M
+ \a@normalfont \Huge \bfseries \set@arabfont \test@token #1 \end
+\endgroup
+\@endpart \test@token }
+
+\fi % article, report or book
+
+\def\@part[#1]#2{% \part outside Arabic text
+\begin{arabtext}
+\a@part[\LR{#1}]{\LR{#2}}
+\end{arabtext}}
+
+\def\@spart#1{% \part* outside Arabic text
+\begin{arabtext}
+\a@spart {\LR{#1}}
+\end{arabtext}}
+
+% ****************************************
+% * CHAPTERS *
+% ****************************************
+
+
+\ifa@article \else % report or book
+\allowarab \thechapter
+
+\newcommand \a@c@chapter {\a@@par
+ \if@openright \cleardoublepage \else \clearpage \fi
+ \thispagestyle {plain}%
+ \global\@topnum \z@ \@afterindentfalse
+ \secdef \a@chapter \a@schapter }
+
+\def \a@chapter [#1]#2{% numbered chapter
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \refstepcounter {chapter}%
+ \typeout {\@chapapp \space \thechapter.}%
+ \addcontentsline {toc}{chapter}%
+ {\protect\numberline {\thechapter }\protect\RL {#1}}%
+ \else \addcontentsline {toc}{chapter}{\protect\RL {#1}}%
+ \fi
+ \else \addcontentsline {toc}{chapter}{\protect\RL {#1}}%
+ \fi
+\chaptermark{\RL {#1}}%
+\addtocontents {lof}{\protect\addvspace {10\p@}}%
+\addtocontents {lot}{\protect\addvspace {10\p@}}%
+ \if@twocolumn \@topnewpage [\a@makechapterhead {#2}]%
+ \else \a@makechapterhead {#2}\a@afterheading
+ \fi
+\tracingmacros 0
+\test@token }
+
+\def\a@makechapterhead #1{% make heading with number
+ \null \vskip 50\p@
+\begingroup \let \end \a@@par \a@@raggedright \interlinepenalty\@M
+ \a@normalfont \bfseries
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \edef \thechapter {\@chapapp \space \thechapter . }%
+ \huge \set@arabfont \test@token {\thechapter } \end
+ \nobreak \vskip 20\p@
+ \fi\fi
+ \Huge \set@arabfont \test@token #1 \end
+ \nobreak \vskip 40\p@
+\endgroup }
+
+\def\a@schapter #1{% unnumbered chapter
+ \if@twocolumn \@topnewpage [\a@makeschapterhead {#1}]%
+ \else \a@makeschapterhead {#1}\a@afterheading
+ \fi
+\test@token }
+
+\def\a@makeschapterhead #1{%
+\null \vskip 50\p@
+\begingroup \let \end \a@@par \a@@raggedright \interlinepenalty\@M
+ \a@normalfont \Huge \bfseries \set@arabfont \test@token #1 \end
+\endgroup
+\nobreak \vskip 40\p@ }
+
+\fi % report or book
+
+%*********************************************************************
+%*********************************************************************
+%************************* rest not yet adapted **********************
+%*********************************************************************
+%*********************************************************************
+
+% ****************************************
+% * SECTIONS *
+% ****************************************
+
+\def \a@c@section {\a@startsection
+{section}{1}{\z@}{-3.5ex plus-1ex minus -.2ex}{2.3ex plus.2ex}%
+%{\reset@font \Large\setnashbf }}
+{\a@normalfont \Large \bfseries }}
+
+\def \a@c@subsection {\a@startsection
+{subsection}{2}{\z@}{-3.25ex plus-1ex minus-.2ex}{1.5ex plus.2ex}%
+{\a@normalfont \large \bfseries }}
+
+\def \a@c@subsubsection {\a@startsection
+{subsubsection}{3}{\z@}{-3.25ex plus -1ex minus-.2ex}{1.5ex plus.2ex}%
+{\a@normalfont \normalsize \bfseries }}
+
+\def \a@c@paragraph {\a@startsection
+{paragraph}{4}{\z@}{3.25ex plus1ex minus.2ex}{-1em}%
+{\a@normalfont \normalsize \bfseries }}
+
+\def\a@c@subparagraph {\a@startsection
+{subparagraph}{5}{\parindent}{3.25ex plus1ex minus .2ex}{-1em}%
+{\a@normalfont \normalsize \bfseries }}
+
+% ****************************************
+% * LISTS *
+% ****************************************
+
+\at@arabtext {% switch to Arabic terms
+ \def\theenumii{\arabic{enumii}}
+ \def\theenumiii{\arabic{enumiii}}
+ \def\theenumiv{\arabic{enumiv}}
+%
+ \def\labelenumi{\theenumi\space-}
+ \def\labelenumii{\abj@d{\theenumii}-}
+ \def\labelenumiii{\theenumiii\nospace(}
+ \def\labelenumiv{\abj@d{\theenumiv}\nospace)}
+%
+ \def\labelitemi{$\circ$}
+ \def\labelitemii{$-$}
+ \def\labelitemiii{$\star$}
+ \def\labelitemiv{$+$}
+}
+
+% ****************************************
+% * OTHER ENVIRONMENTS *
+% ****************************************
+
+% DESCRIPTION
+
+\def \descriptionlabel #1{\setnashbf \RL{#1}\hskip \labelsep }
+\def \descriptionlabel #1{\bfseries \RL{#1}\hskip \labelsep }
+
+% THEOREM
+%%%%%%%%%%%%% NOT IMPLEMENTED
+
+% EQUATION and EQNARRAY
+%%%%%%%%%%%%% NOT IMPLEMENTED
+
+% TITLEPAGE
+%%%%%%%%%%%%% NOT IMPLEMENTED
+
+% TABBING
+%%%%%%%%%%%%% NOT IMPLEMENTED
+
+% MINIPAGE
+%%%%%%%%%%%%% NOT IMPLEMENTED
+
+% FRAMEBOX
+%%%%%%%%%%%%% NOT IMPLEMENTED
+
+% ****************************************
+% * ABSTRACT *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifa@book
+\else
+\if@titlepage
+ \newenvironment{abstract}{%
+ \titlepage
+ \null\vfil
+ \begin{center}%
+ \bfseries \abstractname
+ \@endparpenalty\@M
+ \end{center}}%
+ {\par\vfil\null\endtitlepage}
+\else
+ \newenvironment{abstract}{%
+ \if@twocolumn
+ \section*{\abstractname}%
+ \else
+ \small
+ \begin{center}%
+ {\bfseries \abstractname\vspace{-.5em}\vspace{\z@}}%
+ \end{center}%
+ \quotation
+ \fi}
+ {\if@twocolumn\else\endquotation\fi}
+\fi
+\fi
+
+\else %============= arabart.cls ==================================
+
+\ifa@book
+\else
+\if@titlepage
+\iffalse
+\newenvironment{abstract}{%
+ \titlepage
+ \null\vfil
+ \begin{center}%
+ \bfseries \abstractname
+ \@endparpenalty\@M
+ \end{center}}%
+ {\par\vfil\null\endtitlepage}
+\fi
+\else
+
+\def \a@c@abstract{%
+\if@twocolumn \def \next
+ {\a@c@section*{\abstractname}}%
+\else \def \next
+ {\small
+ \begingroup \center
+% \setnashbf \abstractname
+ \a@normalfont \bfseries \abstractname
+ \vspace{-.5em}\vspace{\z@}%
+ \endcenter \endgroup
+ \a@c@quotation }%
+\fi
+ \def \endabstract
+ {\if@twocolumn\else\endquotation\fi}%
+\next }
+
+\fi
+\fi
+
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * OTHER ENVIRONMENTS *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newenvironment{verse}
+ {\let\\=\@centercr
+ \list{}{\itemsep \z@
+ \itemindent -1.5em%
+ \listparindent\itemindent
+ \rightmargin \leftmargin
+ \advance\leftmargin 1.5em}%
+ \item[]}
+ {\endlist}
+
+\newenvironment{quotation}
+ {\list{}{\listparindent 1.5em%
+ \itemindent \listparindent
+ \rightmargin \leftmargin
+ \parsep \z@ \@plus\p@}%
+ \item[]}
+ {\endlist}
+
+\newenvironment{quote}
+ {\list{}{\rightmargin\leftmargin}%
+ \item[]}
+ {\endlist}
+
+\else %============= arabart.cls ==================================
+
+\def \a@c@verse {%
+%\tracingmacros 1
+\let \endverse \a@@endtrivlist
+\a@@list{}{\itemsep\z@ \itemindent -1.5em \listparindent \itemindent
+ \rightmargin\leftmargin \advance\leftmargin 1.5em}\a@@item[]}
+
+\def \a@c@quotation {%
+%\tracingmacros 1
+\a@@list{}{\listparindent 1.5em \itemindent\listparindent
+ \rightmargin\leftmargin \parsep \z@ plus\p@}\a@@item[]}
+
+\def \a@c@quote {%
+%\tracingmacros 1
+\let \endquote \a@@endtrivlist
+\a@@list{}{\rightmargin\leftmargin}\a@@item[]}
+
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * TITLE PAGE *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newenvironment{titlepage}
+{% \titlepage
+ \ifa@book
+ \cleardoublepage
+ \fi
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse\newpage
+ \fi
+ \thispagestyle{empty}%
+ \if@compatibility
+ \setcounter{page}{0}
+ \else
+ \ifa@book \else
+ \setcounter{page}{1}%
+ \fi
+ \fi }%
+{% \endtitlepage
+ \if@restonecol\twocolumn \else \newpage \fi
+ \ifa@book \else
+ \setcounter{page}{1}%
+ \fi }
+
+\else %============= arabart.cls ==================================
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * APPENDIX *
+% ****************************************
+
+\def\a@c@appendix{%\par
+ \setcounter{section}{0}%
+ \renewcommand\@chapapp {\appendixname }%
+\ifa@article \renewcommand\thesection {\@Abjad \c@section }%
+ \setcounter{subsection}{0}%
+\else \renewcommand\thechapter {\@Abjad \c@chapter }%
+ \setcounter{chapter}{0}%
+\fi \test@token }
+
+% ****************************************
+% * FIGURES AND TABLES *
+% ****************************************
+
+\ifa@article
+ \renewcommand\theequation{\@arabic\c@equation}
+ \renewcommand\thefigure{\@arabic\c@figure}
+ \renewcommand\thetable{\@arabic\c@table}
+\fi
+
+\def\fnum@figure {\figurename \space \thefigure }
+
+\def\fnum@table {\tablename \space \thetable }
+
+\long\def \a@makecaption #1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#2 : #1}%
+ \ifdim \wd\@tempboxa >\hsize
+ #2 : #1\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip }
+
+\let \@makecaption \a@makecaption
+
+\long\def \a@caption #1[#2]#3{\par
+ \addcontentsline {\csname ext@#1\endcsname}{#1}
+ {\protect\numberline {\csname the#1\endcsname}\protect #2}%
+\begingroup \@parboxrestore \normalsize
+ \edef \reserved@a {\csname fnum@#1\endcsname }%
+ \@makecaption {\xpa \RL \xpa {\reserved@a }}{#3}\par
+\endgroup}
+
+\let \@caption \a@caption
+
+\long\def \a@@caption #1[#2]#3{\par
+ \addcontentsline {\csname ext@#1\endcsname}{#1}
+ {\protect\numberline {\csname the#1\endcsname}\protect\RL {#2}}%
+\begingroup \@parboxrestore \normalsize
+ \edef \reserved@a {\csname fnum@#1\endcsname }%
+ \@makecaption {\xpa \RL \xpa {\reserved@a }}{\RL {#3}}\par
+\endgroup \test@token }
+
+\at@arabtext {\let \@caption \a@@caption }
+
+\let \a@c@caption \caption
+
+% ****************************************
+% * TABLE OF CONTENTS, ETC. *
+% ****************************************
+
+\ifa@article \setcounter{tocdepth}{3}
+\else \setcounter{tocdepth}{2}
+\fi
+
+\setcounter{tocdepth}{5} % for test only
+
+\def \a@c@tableofcontents {\a@t@ble {\contentsname }{toc}}
+%\def \a@c@tableofcontents {\a@t@ble {\RL{\contentsname }}{toc}}
+
+\def \a@c@starttoc #1{\endarabtext
+\the\arabtext@hook
+\@starttoc {#1}\arabtext }
+
+%\def \a@t@ble #1#2{% \tableofcontents etc.
+% \a@c@section *{#1}\@mkboth {#1}{#1}\starttoc {#2}}
+
+%\def \a@c@@mkboth #1#2{\@mkboth {\RL{#1}}{\RL{#2}}\test@token }
+
+\def \a@l@section #1#2{% for arabic mode
+\ifnum \c@tocdepth >\z@
+ \addpenalty {\@secpenalty }\addvspace {1.0em plus\p@ }
+ \if@twocolumn \@tempdima 1.0em \else \@tempdima 1.5em \fi
+ \a@@lsection {#1}{#2}{\a@normalfont \bfseries }%
+\fi }
+
+\def \a@l@part #1#2{% for arabic mode
+\ifnum \c@tocdepth >-2\relax
+ \addpenalty {-\@highpenalty }\addvspace {2.25em plus\p@ }
+ \if@twocolumn \@tempdima 2.0em \else \@tempdima 3.0em \fi
+ \a@@lsection {#1}{#2}{\a@normalfont \large \bfseries }%
+\fi }
+
+\def \a@l@chapter #1#2{% for arabic mode
+\ifnum \c@tocdepth >\m@ne
+ \addpenalty {-\@highpenalty }\addvspace {1.0em plus\p@ }
+ \if@twocolumn \@tempdima 1.0em \else \@tempdima 1.5em \fi
+ \a@@lsection {#1}{#2}{\a@normalfont \bfseries }%
+ \penalty\@highpenalty
+\fi }
+
+\at@arabtext {% switch to Arabic terms
+ \let \l@part \a@l@part
+ \let \l@section \a@l@section
+ \let \l@chapter \a@l@chapter
+}
+
+\if@twocolumn
+ \def\l@subsection{\@dottedtocline{2}{1.0em}{1.5em}}
+ \def\l@subsubsection{\@dottedtocline{3}{2.5em}{2.3em}}
+ \def\l@paragraph{\@dottedtocline{4}{4.8em}{3.1em}}
+ \def\l@subparagraph{\@dottedtocline{5}{7.9em}{3.9em}}
+ \def\@tocrmarg {1.55em}
+\fi
+
+\def \a@c@listoffigures {\a@t@ble {\listfigurename }{lof}}
+
+\def \a@c@listoftables {\a@t@ble {\listtablename }{lot}}
+
+% ****************************************
+% * BIBLIOGRAPHY *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newdimen\bibindent
+\bibindent=1.5em
+
+\newenvironment{thebibliography}[1]
+% {\chapter*{\bibname
+ {\section*{\bibname
+ \@mkboth{\MakeUppercase\bibname}{\MakeUppercase\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
+
+\else %============= arabart.cls ==================================
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * THE INDEX *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand\newblock{}
+
+\newenvironment{theindex}
+ {\if@twocolumn
+ \@restonecolfalse
+ \else
+ \@restonecoltrue
+ \fi
+ \columnseprule \z@
+ \columnsep 35\p@
+ \twocolumn[\@makeschapterhead{\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{\hangindent 40\p@}
+\newcommand\subitem{\par\hangindent 40\p@ \hspace*{20\p@}}
+\newcommand\subsubitem{\par\hangindent 40\p@ \hspace*{30\p@}}
+\newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}
+
+\else %============= arabart.cls ==================================
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * FOOTNOTES *
+% ****************************************
+
+% Default definition
+\def\@makefnmark{\hbox{$^{\@thefnmark}\m@th$}}
+
+\def \footnoterule{%
+ \kern-3\p@
+ \hbox to \columnwidth{\hskip .6\columnwidth \hrulefill }
+ \kern2.6\p@}
+
+\RLfootnotes
+
+% see also "alatex.sty"
+
+% ****************************************
+% * LANGUAGE DEPENDENT NAMES *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand\contentsname{Contents}
+\newcommand\listfigurename{List of Figures}
+\newcommand\listtablename{List of Tables}
+\newcommand\bibname{Bibliography}
+\newcommand\refname{References}
+\newcommand\indexname{Index}
+\newcommand\figurename{Figure}
+\newcommand\tablename{Table}
+\newcommand\partname{Part}
+\newcommand\chaptername{Chapter}
+\newcommand\appendixname{Appendix}
+\newcommand\abstractname{Abstract}
+
+\else %============= arabart.cls ==================================
+
+% tableofcontents = al-mu.htawayAtu
+% listoffigures = qA'imaTu al-.suwaru
+% listoftables = qA'imaTu al-^gadAwilu
+% listofpictures = qA'imaTu al-rusUmu
+% bibliography = al-marA^gi`u
+% references = al-ma.sAdiru
+% index = al-fihrisu (al-fihristu)
+% chapter = al-fa.slu
+% appendix = al-mul.haqu
+% abstract = al-mula_h_ha.su
+% attachments = al-murfaqAtu
+% number = al-raqmu
+
+%\at@arabtext {% switch to Arabic terms
+ \def\bibname {\a@tok(al-marAGiPu)}
+ \def\refname {\a@tok(al-maSAdiru)}
+ \def\indexname {\a@tok(al-fihristu)}
+ \def\figurename {\a@tok(SUraTuN)}
+ \def\tablename {\a@tok(GadwaluN)}
+ \def\partname {\a@tok(al-GuzQzu)}
+ \def\chaptername {\a@tok(al-faSlu)}
+ \def\appendixname {\a@tok(al-mulHaqu)}
+ \def\abstractname {\a@tok(al-mulaXXaSu)}
+%}
+
+\allowarab \contentsname
+\allowarab \listfigurename
+\allowarab \listtablename
+\allowarab \bibname
+\allowarab \refname
+\allowarab \indexname
+\allowarab \figurename
+\allowarab \tablename
+\allowarab \partname
+\allowarab \chaptername
+\allowarab \appendixname
+\allowarab \abstractname
+
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * INITIALIZATION *
+% ****************************************
+
+% Default initializations
+
+\ifa@book \pagestyle{headings}
+\else \pagestyle{plain}
+\fi
+
+\pagenumbering{arabic} % Arabic page numbers
+
+% ****************************************
+% * SIZE DEPENDENT PATCHES *
+% ****************************************
+
+\input {asize1\@ptsize.clo}
+
+\UsePackage {arabext} % load local patches for ArabTeX
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \contentsname{Contents}
+\gdef \listfigurename{List of Figures}
+\gdef \listtablename{List of Tables}
+
+\at@arabtext {% switch to Arabic terms
+ \def\contentsname {\a@tok(al-muHtawayAtu)}
+ \def\listfigurename {\a@tok(qAQAimaTu aS-Suwari)}
+ \def\listtablename {\a@tok(qAQAimaTu al-GadAwili)}
+ \def\chaptername {\a@tok(al-faSlu)}
+}
+
+\ifx \a@part \undefined \else
+
+% tableofcontents = al-mu.htawayAtu
+% listoffigures = qA'imaTu al-.suwaru
+% listoftables = qA'imaTu al-^gadAwilu
+% listofpictures = qA'imaTu al-rusUmu
+% bibliography = al-marA^gi`u
+% references = al-ma.sAdiru
+% index = al-fihrisu (al-fihristu)
+% chapter = al-fa.slu
+% appendix = al-mul.haqu
+% abstract = al-mula_h_ha.su
+% attachments = al-murfaqAtu
+% number = al-raqmu
+
+\def\bibname {\stdcode{al-marA^gi`u}}
+\def\refname {\stdcode{al-ma.sAdiru}}
+\def\indexname {\stdcode{al-fihristu}}
+\def\figurename {\stdcode{.sUraTuN}}
+\def\tablename {\stdcode{^gadwaluN}}
+\def\partname {\stdcode{al-^guz'u}}
+\def\chaptername {\stdcode{al-fa.slu}}
+\def\appendixname {\stdcode{al-mul.haqu}}
+\def\abstractname {\stdcode{al-mula_h_ha.su}}
+
+\at@arabtext {% switch to Arabic terms
+\def\contentsname {\stdcode{al-mu.htawayAtu}}
+\def\listfigurename {\stdcode{qA'imaTu al-.suwari}}
+\def\listtablename {\stdcode{qA'imaTu al-^gadAwili}}
+}
+\fi
+
+\def\a@makechapterhead #1{% make heading with number
+ \null \vskip 50\p@
+\begingroup \let \end \a@@par \a@@raggedright \interlinepenalty\@M
+ \a@normalfont \bfseries
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \edef \thechapter {\thechapter }%
+ \huge \set@arabfont \test@token \@chapapp {\thechapter} \end
+ \nobreak \vskip 20\p@
+ \fi\fi
+ \Huge \set@arabfont \test@token #1 \end
+ \nobreak \vskip 40\p@
+\endgroup }
+
+\allowarab \@chapapp
+
+\def\a@c@appendix{%\par
+ \setcounter{section}{0}%
+ \renewcommand\@chapapp {\appendixname }%
+\ifa@article \renewcommand\thesection {\@abjad \c@section }%
+ \setcounter{subsection}{0}%
+\else \renewcommand\thechapter {\@abjad \c@chapter }%
+ \setcounter{chapter}{0}%
+\fi \test@token }
+
+\def \a@chapter [#1]#2{% numbered chapter
+\ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \refstepcounter {chapter}%
+ \typeout {\@chapapp \space \thechapter.}%
+ \addcontentsline {toc}{chapter}%
+ {\protect\numberline
+ {\protect\RL{\protect\stdcode{\thechapter }}}%
+ \protect\RL {#1}}%
+ \else \addcontentsline {toc}{chapter}{\protect\RL {#1}}%
+ \fi
+\else \addcontentsline {toc}{chapter}{\protect\RL {#1}}%
+\fi
+\chaptermark{\RL {#1}}%
+\addtocontents {lof}{\protect\addvspace {10\p@}}%
+\addtocontents {lot}{\protect\addvspace {10\p@}}%
+\if@twocolumn \@topnewpage [\a@makechapterhead {#2}]%
+\else \a@makechapterhead {#2}\a@afterheading
+\fi \test@token }
+
+\long\def \a@@caption #1[#2]#3{\par
+ \addcontentsline {\csname ext@#1\endcsname}{#1}
+ {\protect\numberline {\csname the#1\endcsname}\protect\RL {#2}}%
+\begingroup \@parboxrestore \normalsize
+ \def \protect {\nxp\protect\nxp}
+ \edef \thecaption {\csname fnum@#1\endcsname }%
+ \let \protect \relax
+ \@makecaption {\RL {\thecaption }}{\RL {#3}}\par
+\endgroup \test@token }
+
+\long\def \a@makecaption #1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{\RL{#1: #2}}%
+ \ifdim \wd\@tempboxa >\hsize
+\begin{arabtext} #1: #2
+\end{arabtext}
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip }
+
+\allowarab \caption
+\allowarab \thecaption
+
+\at@arabtext {\let \@caption \a@@caption
+\let \@makecaption \a@makecaption }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@l@section #1#2{% Text, Pageno
+% for arabic mode
+\ifnum \c@tocdepth >\z@
+ \addpenalty {\@secpenalty }%
+ \addvspace {1.0em plus\p@ }%
+% \@tempdima 1.5em
+ \@tempdima 1.0em
+% \@tempdima \if@twocolumn 1.0em \else 1.5em \fi \relax
+ \a@@lsection {#1}{#2}{\a@normalfont \bfseries }%
+\fi }
+
+\def \a@l@part #1#2{% Text, Pageno
+% for arabic mode
+\ifnum \c@tocdepth >-2\relax
+ \addpenalty {-\@highpenalty }%
+ \addvspace {2.25em plus\p@ }%
+ \@tempdima 2.0em
+% \@tempdima \if@twocolumn 2.0em \else 3.0em \fi \relax
+ \a@@lsection {#1}{#2}{\a@normalfont \large \bfseries }%
+\fi }
+
+\def \a@l@chapter #1#2{% Text, Pageno
+% for arabic mode
+\ifnum \c@tocdepth >\m@ne
+ \addpenalty {-\@highpenalty }%
+ \addvspace {1.0em plus\p@ }%
+% \@tempdima 1.5em
+ \@tempdima 1.0em
+% \@tempdima \if@twocolumn 1.0em \else 1.5em \fi \relax
+ \a@@lsection {#1}{#2}{\a@normalfont \bfseries }%
+ \penalty\@highpenalty
+\fi }
+
+\def \a@x@sect {% arabic section TOC formats if article
+ \def\a@l@subsection{\@dottedtocline{2}{1.0em}{1.5em}}
+ \def\a@l@subsubsection{\@dottedtocline{3}{2.5em}{2.1em}}
+ \def\a@l@paragraph{\@dottedtocline{4}{4.6em}{2.8em}}
+ \def\a@l@subparagraph{\@dottedtocline{5}{9.4em}{3.4em}}
+}
+
+\def \a@y@sect {% arabic section TOC formats if report or book
+ \def\a@l@section{\@dottedtocline{1}{1.0em}{1.5em}}
+ \def\a@l@subsection{\@dottedtocline{2}{2.5em}{2.1em}}
+ \def\a@l@subsubsection{\@dottedtocline{3}{4.6em}{2.8em}}
+ \def\a@l@paragraph{\@dottedtocline{4}{9.4em}{3.4em}}
+ \def\a@l@subparagraph{\@dottedtocline{5}{23.8em}{4.1em}}
+}
+
+\def \a@xy@sect {% arabic section TOC formats
+\ifa@article \a@x@sect \else \a@y@sect \fi }
+
+\def \a@c@tableofcontents {\a@xy@sect % define arabic section TOC formats
+\a@t@ble {\contentsname }{toc}}
+
+% CAUTION: \a@xy@sect must be executed before expanding \the\arabtex@hook
+% and prior to \@starttoc within \a@t@ble, see arabrep.cls
+
+\def\a@l@figure{\@dottedtocline{1}{1.0em}{1.5em}}
+\def\a@l@table{\@dottedtocline{1}{1.0em}{1.5em}}
+
+\at@arabtext {% switch to Arabic terms, execute from asect::a@t@ble
+ \let \l@part \a@l@part
+ \let \l@chapter \a@l@chapter
+ \let \l@section \a@l@section
+ \let \l@subsection \a@l@subsection
+ \let \l@subsubsection \a@l@subsubsection
+ \let \l@paragraph \a@l@paragraph
+ \let \l@subparagraph \a@l@subparagraph
+ \let \l@figure \a@l@figure
+ \let \l@table \a@l@table
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% restore LaTeX version, delete \a@caption!
+
+\long\def\@caption#1[#2]#3{%
+ \par
+ \addcontentsline{\csname ext@#1\endcsname}{#1}%
+ {\protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}}%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \endgroup}
+
+\long\def \a@caption #1[#2]#3{\par
+ \addcontentsline {\csname ext@#1\endcsname}{#1}
+ {\protect\numberline {\csname the#1\endcsname}\protect #2}%
+\begingroup \@parboxrestore \normalsize
+ \protected@edef \reserved@a {\csname fnum@#1\endcsname }%
+ \xpa\@makecaption \xpa{\xpa\RL \xpa{\reserved@a }}{#3}\par
+\endgroup}
+
+%\let \@caption \a@caption
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% end of file arabrep.cls
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/arabrep1.cls b/language/arabic/arabtex/texinput/arabrep1.cls
new file mode 100644
index 0000000000..e308a8d9e4
--- /dev/null
+++ b/language/arabic/arabtex/texinput/arabrep1.cls
@@ -0,0 +1,914 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabrep.cls
+% ArabTeX extension
+% Arabic version of report.cls
+% for use with ArabTeX Version 3.08 - 3.10
+%
+% Copyright (C) 1997, 1999 by Klaus Lagally
+% 16.05.1997
+% 21.03.1999
+%
+% reusing report.cls (and book.cls) of 19 Jun 1995
+% reusing report.cls (and book.cls) of 26 May 1996
+% patches for pagenumbering 25 March 1999
+% 15.07.1999
+% 21.04.2000 % new font handling
+% 14.09.2001 % RTL footnotes, chapter names etc.
+% 16.02.2002 % input encoding at \part
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\NeedsTeXFormat {LaTeX2e}[1996/06/01]
+%\ProvidesClass {arabrep}[2001/09/14 v3.10 arabic report format]
+\ProvidesClass {arabrep}[2002/02/16 v3.11 arabic report format]
+
+\newif\if@mainmatter \@mainmattertrue
+\newif\ifa@book \a@bookfalse
+\newif\ifa@article \a@articlefalse
+\DeclareOption {book}{\a@booktrue \@mainmattertrue }
+\DeclareOption {article}{\a@articletrue \@mainmattertrue }
+\DeclareOption* {\PassOptionsToClass {\CurrentOption}{report}}
+\ProcessOptions
+\LoadClass {report}[1996/05/26] % load the LaTeX standard class
+
+\ifa@book \@openrighttrue \fi
+%\input{bk1\@ptsize.clo} % collision on \small !!
+
+\ifa@article \@titlepagefalse \fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%\RequirePackage {arabtex}[1997/05/08] % load the ArabTeX processor
+\RequirePackage {arabtex}[2000/04/21] % load the ArabTeX processor
+
+\UsePackage {latexext} % load local patches for LaTeX
+
+% ****************************************
+% * PAGE STYLES *
+% ****************************************
+
+\if@twoside % If two-sided printing.
+ \def \ps@headings {% for arabic mode
+ \let \@mkboth \markboth \def\@oddfoot{}\def\@evenfoot{}%
+ \def \@evenhead {\edef \thep@ge {\nxp\RL{\thepage }}% left heading
+ \a@normalfont \leftmark \hfil \thep@ge }%
+ \def \@oddhead {\edef \thep@ge {\nxp\RL{\thepage }}% right heading
+ \a@normalfont \thep@ge \hfil \rightmark }%
+ \def \chaptermark ##1{\markboth {##1%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \hskip 1em\relax \RL{\@chapapp \space \thechapter. }%
+ \fi\fi }{}}%
+ \def \sectionmark ##1{\markleft {##1\ifnum \c@secnumdepth >\@ne
+ \hskip 1em\relax \RL{\thesection }\fi }}%
+ \ifa@article
+ \def \subsectionmark ##1{\markleft {##1\ifnum \c@secnumdepth >\@ne
+ \hskip 1em\relax \RL{\thesubsection }\fi }}%
+ \fi }
+\else % If one-sided printing.
+ \def \ps@headings {% for arabic mode
+ \let \@mkboth \markboth \def \@oddfoot{}\def \@evenfoot{}%
+ \def \@oddhead {\edef \thep@ge {\nxp\RL{\thepage }}% right heading
+ \a@normalfont \thep@ge \hfil \rightmark }%
+ \def \chaptermark ##1{\markright {##1%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \hskip 1em\relax \RL{\@chapapp\space \thechapter. }%
+ \fi\fi }}}
+\fi
+
+\def \ps@plain {% for arabic mode
+ \let \@mkboth\@gobbletwo \let\@oddhead\@empty \let\@evenhead\@empty
+ \def \@oddfoot {\edef \thep@ge {\nxp\RL{\thepage }}% right heading
+ \a@normalfont \hfil \thep@ge \hfil }%
+ \let \@evenfoot\@oddfoot }
+
+\def \ps@myheadings {% for arabic mode
+ \let\@oddfoot \@empty \let\@evenfoot \@empty
+ \def \@oddhead {\edef \thep@ge {\nxp\RL{\thepage }}% right heading
+ \a@normalfont \thep@ge \hfil \rightmark }%
+ \def \@evenhead {\edef \thep@ge {\nxp\RL{\thepage }}% left heading
+ \a@normalfont \leftmark \hfil \thep@ge }%
+ \let\@mkboth\@gobbletwo \let\subsectionmark\@gobble
+ \let\chaptermark\@gobble \let\sectionmark\@gobble }
+
+% ****************************************
+% * TITLE AND ABSTRACT *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\if@titlepage
+ \newcommand\maketitle{\begin{titlepage}%
+ \let\footnotesize\small
+ \let\footnoterule\relax
+ \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}%
+ \let\thanks\relax\let\maketitle\relax
+ \gdef\@thanks{}\gdef\@author{}\gdef\@title{}}
+\else
+ \newcommand\maketitle{\par
+ \begingroup
+ \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
+ \def\@makefnmark{\hb@xt@\z@{$\m@th^{\@thefnmark}$\hss}}%
+ \long\def\@makefntext##1{\parindent 1em\noindent
+ \hb@xt@1.8em{\hss\@makefnmark}##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}%
+ \let\thanks\relax
+ \let\maketitle\relax\let\@maketitle\relax
+ \gdef\@thanks{}\gdef\@author{}\gdef\@title{}}
+
+ \def\@maketitle{%
+ \newpage
+ \null
+ \vskip 2em%
+ \begin{center}%
+ {\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
+
+\else %============= arabart.cls ==================================
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * UNITS *
+% ****************************************
+
+\ifa@book
+\newcommand\frontmatter
+ {\cleardoublepage \@mainmatterfalse \pagenumbering{Abjad}}
+% {\cleardoublepage \@mainmatterfalse \pagenumbering{Abj}}
+\newcommand\mainmatter
+ {\cleardoublepage \@mainmattertrue \pagenumbering{arabic}}
+% {\cleardoublepage \@mainmattertrue \pagenumbering{arab}}
+\newcommand\backmatter
+ {\if@openright \cleardoublepage \else \clearpage
+ \fi \@mainmatterfalse }
+\fi
+
+\ifa@article
+\renewcommand\thesection {\@arabic\c@section}
+\fi
+
+%\allowarab \@chapapp
+
+% ****************************************
+% * PARTS *
+% ****************************************
+
+\renewcommand \thepart {\@arabic\c@part }
+
+\def \a@c@part {\a@@par
+\ifa@article \addvspace{4ex}\@afterindentfalse
+\else \cleardoublepage \thispagestyle{plain}%
+ \if@twocolumn \onecolumn \@tempswatrue
+ \else \@tempswafalse
+ \fi
+ \hbox{}\vfil
+\fi \secdef \a@part \a@spart }
+
+\ifa@article
+
+\def \a@part [#1]#2{% numbered part
+\ifnum \c@secnumdepth > \m@ne
+ \refstepcounter {part}%
+ \addcontentsline {toc}{part}{\protect\RL
+ {\protect\abjad {\thepart}\hspace {1em} #1 }}%
+\else \addcontentsline {toc}{part}{\protect\RL {#1}}%
+\fi
+\begingroup \let \end \a@@par \a@parindent \z@ \a@@raggedright
+ \a@normalfont \bfseries \interlinepenalty \@M
+\ifnum \c@secnumdepth >\m@ne
+ \Large \set@arabfont
+ \test@token \partname \abjad{\thepart } \end \nobreak
+\fi
+ \huge \set@arabfont \test@token #2 \end
+ \markboth {}{}
+\endgroup
+\nobreak \vskip 3ex
+\a@afterheading \test@token }
+
+\def \a@part [#1]#2{% numbered part
+\ifnum \c@secnumdepth > \m@ne
+ \refstepcounter {part}%
+ \addcontentsline {toc}{part}{\protect\RL
+ {\protect\abjad {\thepart}\hspace {1em} #1 }}%
+\else \addcontentsline {toc}{part}{\protect\RL {#1}}%
+\fi
+\begingroup \let \end \a@@par \a@parindent \z@ \a@@raggedright
+ \a@normalfont \bfseries \interlinepenalty \@M
+\ifnum \c@secnumdepth >\m@ne
+ \Large \set@arabfont
+{\let \a@oldcode \sc@code \setcode{arabtex}%
+ \test@token \partname \abjad{\thepart } \end
+\xpa\setcode\xpa{\a@oldcode }}%
+ \nobreak
+\fi
+ \huge \set@arabfont \test@token #2 \end
+ \markboth {}{}
+\endgroup
+\nobreak \vskip 3ex
+\a@afterheading \test@token }
+
+\def \a@spart #1{% unnumbered part
+\begingroup \let \end \a@@par \a@@raggedright \a@parindent \z@
+ \interlinepenalty \@M
+ \a@normalfont \huge \bffamily \set@arabfont \test@token #1 \end
+\endgroup
+\nobreak \vskip 3ex
+\a@afterheading \test@token }
+
+\else % report or book
+
+\def \a@part [#1]#2{% numbered part
+ \ifnum \c@secnumdepth > \ifa@article \m@ne \else -2 \fi
+ \refstepcounter {part}%
+ \addcontentsline {toc}{part}{\protect\RL
+ {\protect\abjad {\thepart}\hspace {1em} #1 }}%
+ \else \addcontentsline {toc}{part}{\protect\RL {#1}}%
+ \fi
+ \markboth{}{}
+\begingroup \let \end \a@@par \a@@centering \interlinepenalty \@M
+ \a@normalfont \bfseries
+ \ifnum \c@secnumdepth > -2\relax
+ \huge \set@arabfont
+ \test@token \partname \abjad{\thepart } \end
+ \vskip 20\p@
+ \fi
+ \Huge \set@arabfont \test@token #2 \end
+\endgroup
+\@endpart \test@token }
+
+\def \a@part [#1]#2{% numbered part
+\ifnum \c@secnumdepth > \ifa@article \m@ne \else -2 \fi
+ \refstepcounter {part}%
+ \addcontentsline {toc}{part}{\protect\RL
+ {\protect\abjad {\thepart}\hspace {1em} #1 }}%
+\else \addcontentsline {toc}{part}{\protect\RL {#1}}%
+\fi
+\markboth{}{}
+\begingroup \let \end \a@@par \a@@centering \interlinepenalty \@M
+ \a@normalfont \bfseries
+\ifnum \c@secnumdepth > -2\relax
+ \huge \set@arabfont
+{\let \a@oldcode \sc@code \setcode{arabtex}%
+ \test@token \partname \abjad{\thepart } \end
+\xpa\setcode\xpa{\a@oldcode }}%
+ \vskip 20\p@
+\fi
+ \Huge \set@arabfont \test@token #2 \end
+\endgroup
+\@endpart \test@token }
+
+\def \a@spart #1{% unnumbered part
+\begingroup \let \end \a@@par \a@@centering \interlinepenalty \@M
+ \a@normalfont \Huge \bfseries \set@arabfont \test@token #1 \end
+\endgroup
+\@endpart \test@token }
+
+\fi % article, report or book
+
+\def\@part[#1]#2{% \part outside Arabic text
+\begin{arabtext}
+\a@part[\LR{#1}]{\LR{#2}}
+\end{arabtext}}
+
+\def\@spart#1{% \part* outside Arabic text
+\begin{arabtext}
+\a@spart {\LR{#1}}
+\end{arabtext}}
+
+% ****************************************
+% * CHAPTERS *
+% ****************************************
+
+
+\ifa@article \else % report or book
+\allowarab \thechapter
+
+\newcommand \a@c@chapter {\a@@par
+ \if@openright \cleardoublepage \else \clearpage \fi
+ \thispagestyle {plain}%
+ \global\@topnum \z@ \@afterindentfalse
+ \secdef \a@chapter \a@schapter }
+
+\def \a@chapter [#1]#2{% numbered chapter
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \refstepcounter {chapter}%
+ \typeout {\@chapapp \space \thechapter.}%
+ \addcontentsline {toc}{chapter}%
+ {\protect\numberline {\thechapter }\protect\RL {#1}}%
+ \else \addcontentsline {toc}{chapter}{\protect\RL {#1}}%
+ \fi
+ \else \addcontentsline {toc}{chapter}{\protect\RL {#1}}%
+ \fi
+\chaptermark{\RL {#1}}%
+\addtocontents {lof}{\protect\addvspace {10\p@}}%
+\addtocontents {lot}{\protect\addvspace {10\p@}}%
+ \if@twocolumn \@topnewpage [\a@makechapterhead {#2}]%
+ \else \a@makechapterhead {#2}\a@afterheading
+ \fi
+\tracingmacros 0
+\test@token }
+
+\def\a@makechapterhead #1{% make heading with number
+ \null \vskip 50\p@
+\begingroup \let \end \a@@par \a@@raggedright \interlinepenalty\@M
+ \a@normalfont \bfseries
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \edef \thechapter {\@chapapp \space \thechapter . }%
+ \huge \set@arabfont \test@token {\thechapter } \end
+ \nobreak \vskip 20\p@
+ \fi\fi
+ \Huge \set@arabfont \test@token #1 \end
+ \nobreak \vskip 40\p@
+\endgroup }
+
+\def\a@schapter #1{% unnumbered chapter
+ \if@twocolumn \@topnewpage [\a@makeschapterhead {#1}]%
+ \else \a@makeschapterhead {#1}\a@afterheading
+ \fi
+\test@token }
+
+\def\a@makeschapterhead #1{%
+\null \vskip 50\p@
+\begingroup \let \end \a@@par \a@@raggedright \interlinepenalty\@M
+ \a@normalfont \Huge \bfseries \set@arabfont \test@token #1 \end
+\endgroup
+\nobreak \vskip 40\p@ }
+
+\fi % report or book
+
+%*********************************************************************
+%*********************************************************************
+%************************* rest not yet adapted **********************
+%*********************************************************************
+%*********************************************************************
+
+% ****************************************
+% * SECTIONS *
+% ****************************************
+
+\def \a@c@section {\a@startsection
+{section}{1}{\z@}{-3.5ex plus-1ex minus -.2ex}{2.3ex plus.2ex}%
+%{\reset@font \Large\setnashbf }}
+{\a@normalfont \Large \bfseries }}
+
+\def \a@c@subsection {\a@startsection
+{subsection}{2}{\z@}{-3.25ex plus-1ex minus-.2ex}{1.5ex plus.2ex}%
+{\a@normalfont \large \bfseries }}
+
+\def \a@c@subsubsection {\a@startsection
+{subsubsection}{3}{\z@}{-3.25ex plus -1ex minus-.2ex}{1.5ex plus.2ex}%
+{\a@normalfont \normalsize \bfseries }}
+
+\def \a@c@paragraph {\a@startsection
+{paragraph}{4}{\z@}{3.25ex plus1ex minus.2ex}{-1em}%
+{\a@normalfont \normalsize \bfseries }}
+
+\def\a@c@subparagraph {\a@startsection
+{subparagraph}{5}{\parindent}{3.25ex plus1ex minus .2ex}{-1em}%
+{\a@normalfont \normalsize \bfseries }}
+
+% ****************************************
+% * LISTS *
+% ****************************************
+
+\at@arabtext {% switch to Arabic terms
+ \def\theenumii{\arabic{enumii}}
+ \def\theenumiii{\arabic{enumiii}}
+ \def\theenumiv{\arabic{enumiv}}
+%
+ \def\labelenumi{\theenumi\space-}
+ \def\labelenumii{\abj@d{\theenumii}-}
+ \def\labelenumiii{\theenumiii\nospace(}
+ \def\labelenumiv{\abj@d{\theenumiv}\nospace)}
+%
+ \def\labelitemi{$\circ$}
+ \def\labelitemii{$-$}
+ \def\labelitemiii{$\star$}
+ \def\labelitemiv{$+$}
+}
+
+% ****************************************
+% * OTHER ENVIRONMENTS *
+% ****************************************
+
+% DESCRIPTION
+
+\def \descriptionlabel #1{\setnashbf \RL{#1}\hskip \labelsep }
+\def \descriptionlabel #1{\bfseries \RL{#1}\hskip \labelsep }
+
+% THEOREM
+%%%%%%%%%%%%% NOT IMPLEMENTED
+
+% EQUATION and EQNARRAY
+%%%%%%%%%%%%% NOT IMPLEMENTED
+
+% TITLEPAGE
+%%%%%%%%%%%%% NOT IMPLEMENTED
+
+% TABBING
+%%%%%%%%%%%%% NOT IMPLEMENTED
+
+% MINIPAGE
+%%%%%%%%%%%%% NOT IMPLEMENTED
+
+% FRAMEBOX
+%%%%%%%%%%%%% NOT IMPLEMENTED
+
+% ****************************************
+% * ABSTRACT *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifa@book
+\else
+\if@titlepage
+ \newenvironment{abstract}{%
+ \titlepage
+ \null\vfil
+ \begin{center}%
+ \bfseries \abstractname
+ \@endparpenalty\@M
+ \end{center}}%
+ {\par\vfil\null\endtitlepage}
+\else
+ \newenvironment{abstract}{%
+ \if@twocolumn
+ \section*{\abstractname}%
+ \else
+ \small
+ \begin{center}%
+ {\bfseries \abstractname\vspace{-.5em}\vspace{\z@}}%
+ \end{center}%
+ \quotation
+ \fi}
+ {\if@twocolumn\else\endquotation\fi}
+\fi
+\fi
+
+\else %============= arabart.cls ==================================
+
+\ifa@book
+\else
+\if@titlepage
+\iffalse
+\newenvironment{abstract}{%
+ \titlepage
+ \null\vfil
+ \begin{center}%
+ \bfseries \abstractname
+ \@endparpenalty\@M
+ \end{center}}%
+ {\par\vfil\null\endtitlepage}
+\fi
+\else
+
+\def \a@c@abstract{%
+\if@twocolumn \def \next
+ {\a@c@section*{\abstractname}}%
+\else \def \next
+ {\small
+ \begingroup \center
+% \setnashbf \abstractname
+ \a@normalfont \bfseries \abstractname
+ \vspace{-.5em}\vspace{\z@}%
+ \endcenter \endgroup
+ \a@c@quotation }%
+\fi
+ \def \endabstract
+ {\if@twocolumn\else\endquotation\fi}%
+\next }
+
+\fi
+\fi
+
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * OTHER ENVIRONMENTS *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newenvironment{verse}
+ {\let\\=\@centercr
+ \list{}{\itemsep \z@
+ \itemindent -1.5em%
+ \listparindent\itemindent
+ \rightmargin \leftmargin
+ \advance\leftmargin 1.5em}%
+ \item[]}
+ {\endlist}
+
+\newenvironment{quotation}
+ {\list{}{\listparindent 1.5em%
+ \itemindent \listparindent
+ \rightmargin \leftmargin
+ \parsep \z@ \@plus\p@}%
+ \item[]}
+ {\endlist}
+
+\newenvironment{quote}
+ {\list{}{\rightmargin\leftmargin}%
+ \item[]}
+ {\endlist}
+
+\else %============= arabart.cls ==================================
+
+\def \a@c@verse {%
+%\tracingmacros 1
+\let \endverse \a@@endtrivlist
+\a@@list{}{\itemsep\z@ \itemindent -1.5em \listparindent \itemindent
+ \rightmargin\leftmargin \advance\leftmargin 1.5em}\a@@item[]}
+
+\def \a@c@quotation {%
+%\tracingmacros 1
+\a@@list{}{\listparindent 1.5em \itemindent\listparindent
+ \rightmargin\leftmargin \parsep \z@ plus\p@}\a@@item[]}
+
+\def \a@c@quote {%
+%\tracingmacros 1
+\let \endquote \a@@endtrivlist
+\a@@list{}{\rightmargin\leftmargin}\a@@item[]}
+
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * TITLE PAGE *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newenvironment{titlepage}
+{% \titlepage
+ \ifa@book
+ \cleardoublepage
+ \fi
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse\newpage
+ \fi
+ \thispagestyle{empty}%
+ \if@compatibility
+ \setcounter{page}{0}
+ \else
+ \ifa@book \else
+ \setcounter{page}{1}%
+ \fi
+ \fi }%
+{% \endtitlepage
+ \if@restonecol\twocolumn \else \newpage \fi
+ \ifa@book \else
+ \setcounter{page}{1}%
+ \fi }
+
+\else %============= arabart.cls ==================================
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * APPENDIX *
+% ****************************************
+
+\def\a@c@appendix{%\par
+ \setcounter{section}{0}%
+ \renewcommand\@chapapp {\appendixname }%
+\ifa@article \renewcommand\thesection {\@Abjad \c@section }%
+ \setcounter{subsection}{0}%
+\else \renewcommand\thechapter {\@Abjad \c@chapter }%
+ \setcounter{chapter}{0}%
+\fi \test@token }
+
+% ****************************************
+% * FIGURES AND TABLES *
+% ****************************************
+
+\ifa@article
+ \renewcommand\theequation{\@arabic\c@equation}
+ \renewcommand\thefigure{\@arabic\c@figure}
+ \renewcommand\thetable{\@arabic\c@table}
+\fi
+
+\def\fnum@figure {\figurename \space \thefigure }
+
+\def\fnum@table {\tablename \space \thetable }
+
+\long\def \a@makecaption #1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#2 : #1}%
+ \ifdim \wd\@tempboxa >\hsize
+ #2 : #1\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip }
+
+\let \@makecaption \a@makecaption
+
+\long\def \a@caption #1[#2]#3{\par
+ \addcontentsline {\csname ext@#1\endcsname}{#1}
+ {\protect\numberline {\csname the#1\endcsname}\protect #2}%
+\begingroup \@parboxrestore \normalsize
+ \edef \reserved@a {\csname fnum@#1\endcsname }%
+ \@makecaption {\xpa \RL \xpa {\reserved@a }}{#3}\par
+\endgroup}
+
+\let \@caption \a@caption
+
+\long\def \a@@caption #1[#2]#3{\par
+ \addcontentsline {\csname ext@#1\endcsname}{#1}
+ {\protect\numberline {\csname the#1\endcsname}\protect\RL {#2}}%
+\begingroup \@parboxrestore \normalsize
+ \edef \reserved@a {\csname fnum@#1\endcsname }%
+ \@makecaption {\xpa \RL \xpa {\reserved@a }}{\RL {#3}}\par
+\endgroup \test@token }
+
+\at@arabtext {\let \@caption \a@@caption }
+
+\let \a@c@caption \caption
+
+% ****************************************
+% * TABLE OF CONTENTS, ETC. *
+% ****************************************
+
+\ifa@article \setcounter{tocdepth}{3}
+\else \setcounter{tocdepth}{2}
+\fi
+
+\setcounter{tocdepth}{5} % for test only
+
+\def \a@c@tableofcontents {\a@t@ble {\contentsname }{toc}}
+%\def \a@c@tableofcontents {\a@t@ble {\RL{\contentsname }}{toc}}
+
+\def \a@c@starttoc #1{\endarabtext
+\the\arabtext@hook
+\@starttoc {#1}\arabtext }
+
+%\def \a@t@ble #1#2{% \tableofcontents etc.
+% \a@c@section *{#1}\@mkboth {#1}{#1}\starttoc {#2}}
+
+%\def \a@c@@mkboth #1#2{\@mkboth {\RL{#1}}{\RL{#2}}\test@token }
+
+\def \a@l@section #1#2{% for arabic mode
+\ifnum \c@tocdepth >\z@
+ \addpenalty {\@secpenalty }\addvspace {1.0em plus\p@ }
+ \if@twocolumn \@tempdima 1.0em \else \@tempdima 1.5em \fi
+ \a@@lsection {#1}{#2}{\a@normalfont \bfseries }%
+\fi }
+
+\def \a@l@part #1#2{% for arabic mode
+\ifnum \c@tocdepth >-2\relax
+ \addpenalty {-\@highpenalty }\addvspace {2.25em plus\p@ }
+ \if@twocolumn \@tempdima 2.0em \else \@tempdima 3.0em \fi
+ \a@@lsection {#1}{#2}{\a@normalfont \large \bfseries }%
+\fi }
+
+\def \a@l@chapter #1#2{% for arabic mode
+\ifnum \c@tocdepth >\m@ne
+ \addpenalty {-\@highpenalty }\addvspace {1.0em plus\p@ }
+ \if@twocolumn \@tempdima 1.0em \else \@tempdima 1.5em \fi
+ \a@@lsection {#1}{#2}{\a@normalfont \bfseries }%
+ \penalty\@highpenalty
+\fi }
+
+\at@arabtext {% switch to Arabic terms
+ \let \l@part \a@l@part
+ \let \l@section \a@l@section
+ \let \l@chapter \a@l@chapter
+}
+
+\if@twocolumn
+ \def\l@subsection{\@dottedtocline{2}{1.0em}{1.5em}}
+ \def\l@subsubsection{\@dottedtocline{3}{2.5em}{2.3em}}
+ \def\l@paragraph{\@dottedtocline{4}{4.8em}{3.1em}}
+ \def\l@subparagraph{\@dottedtocline{5}{7.9em}{3.9em}}
+ \def\@tocrmarg {1.55em}
+\fi
+
+\def \a@c@listoffigures {\a@t@ble {\listfigurename }{lof}}
+
+\def \a@c@listoftables {\a@t@ble {\listtablename }{lot}}
+
+% ****************************************
+% * BIBLIOGRAPHY *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newdimen\bibindent
+\bibindent=1.5em
+
+\newenvironment{thebibliography}[1]
+% {\chapter*{\bibname
+ {\section*{\bibname
+ \@mkboth{\MakeUppercase\bibname}{\MakeUppercase\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
+
+\else %============= arabart.cls ==================================
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * THE INDEX *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand\newblock{}
+
+\newenvironment{theindex}
+ {\if@twocolumn
+ \@restonecolfalse
+ \else
+ \@restonecoltrue
+ \fi
+ \columnseprule \z@
+ \columnsep 35\p@
+ \twocolumn[\@makeschapterhead{\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{\hangindent 40\p@}
+\newcommand\subitem{\par\hangindent 40\p@ \hspace*{20\p@}}
+\newcommand\subsubitem{\par\hangindent 40\p@ \hspace*{30\p@}}
+\newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}
+
+\else %============= arabart.cls ==================================
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * FOOTNOTES *
+% ****************************************
+
+% Default definition
+\def\@makefnmark{\hbox{$^{\@thefnmark}\m@th$}}
+
+\def \footnoterule{%
+ \kern-3\p@
+ \hbox to \columnwidth{\hskip .6\columnwidth \hrulefill }
+ \kern2.6\p@}
+
+\RLfootnotes
+
+% see also "alatex.sty"
+
+% ****************************************
+% * LANGUAGE DEPENDENT NAMES *
+% ****************************************
+
+\iffalse %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand\contentsname{Contents}
+\newcommand\listfigurename{List of Figures}
+\newcommand\listtablename{List of Tables}
+\newcommand\bibname{Bibliography}
+\newcommand\refname{References}
+\newcommand\indexname{Index}
+\newcommand\figurename{Figure}
+\newcommand\tablename{Table}
+\newcommand\partname{Part}
+\newcommand\chaptername{Chapter}
+\newcommand\appendixname{Appendix}
+\newcommand\abstractname{Abstract}
+
+\else %============= arabart.cls ==================================
+
+% tableofcontents = al-mu.htawayAtu
+% listoffigures = qA'imaTu al-.suwaru
+% listoftables = qA'imaTu al-^gadAwilu
+% listofpictures = qA'imaTu al-rusUmu
+% bibliography = al-marA^gi`u
+% references = al-ma.sAdiru
+% index = al-fihrisu (al-fihristu)
+% chapter = al-fa.slu
+% appendix = al-mul.haqu
+% abstract = al-mula_h_ha.su
+% attachments = al-murfaqAtu
+% number = al-raqmu
+
+%\at@arabtext {% switch to Arabic terms
+ \def\bibname {\a@tok(al-marAGiPu)}
+ \def\refname {\a@tok(al-maSAdiru)}
+ \def\indexname {\a@tok(al-fihristu)}
+ \def\figurename {\a@tok(SUraTuN)}
+ \def\tablename {\a@tok(GadwaluN)}
+ \def\partname {\a@tok(al-GuzQzu)}
+ \def\chaptername {\a@tok(al-faSlu)}
+ \def\appendixname {\a@tok(al-mulHaqu)}
+ \def\abstractname {\a@tok(al-mulaXXaSu)}
+%}
+
+\allowarab \contentsname
+\allowarab \listfigurename
+\allowarab \listtablename
+\allowarab \bibname
+\allowarab \refname
+\allowarab \indexname
+\allowarab \figurename
+\allowarab \tablename
+\allowarab \partname
+\allowarab \chaptername
+\allowarab \appendixname
+\allowarab \abstractname
+
+\fi %%%%%%%%%%%%%%%% article.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ****************************************
+% * INITIALIZATION *
+% ****************************************
+
+% Default initializations
+
+\ifa@book \pagestyle{headings}
+\else \pagestyle{plain}
+\fi
+
+\pagenumbering{arabic} % Arabic page numbers
+
+% ****************************************
+% * SIZE DEPENDENT PATCHES *
+% ****************************************
+
+\input {asize1\@ptsize.clo}
+
+\UsePackage {arabext} % load local patches for ArabTeX
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \contentsname{Contents}
+\gdef \listfigurename{List of Figures}
+\gdef \listtablename{List of Tables}
+
+\at@arabtext {% switch to Arabic terms
+ \def\contentsname {\a@tok(al-muHtawayAtu)}
+ \def\listfigurename {\a@tok(qAQAimaTu aS-Suwari)}
+ \def\listtablename {\a@tok(qAQAimaTu al-GadAwili)}
+ \def\chaptername {\a@tok(al-faSlu)}
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% end of file arabrep.cls
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/arabskel.sty b/language/arabic/arabtex/texinput/arabskel.sty
new file mode 100644
index 0000000000..b866b05af5
--- /dev/null
+++ b/language/arabic/arabtex/texinput/arabskel.sty
@@ -0,0 +1,185 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabskel.sty
+% ArabTeX
+% character skeleton definitions for font nash14
+% called in HMODE
+% Version 04.06.2000
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chardef \sklatcode = \catcode`\@ \catcode`\@ = 11
+\a@ident {arabskel.sty}{3.10 character skeleton definitions }{04.06.2000}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Arabic
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\gdef \seta@skels {% define \ArabTeX character skeletons for font nash
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% pattern: class, code, connect, {iso, fin, med, ini}
+\gdef \sk@@ {10 ,\a@block ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % illegal
+\gdef \sk@def {10 ,\a@block ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % default
+
+% basic letters
+\gdef \sk@a {10 ,\a@alif ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % alif
+\gdef \sk@ain { 4 ,\a@ain ,1 ,{{4,0}{4,1}{0,0}{2,0}}} % `ain
+\gdef \sk@b { 1 ,\a@bah ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % bah, no dot
+\gdef \sk@b@p { 9 ,\a@bah@p ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % bah, loop
+\gdef \sk@d {10 ,\a@dal ,0 ,{{0,0}{0,0}{0,2}{0,0}}} % dal
+\gdef \sk@d@p {10 ,\a@dal@p ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % dal, loop
+\gdef \sk@dd { 2 ,\a@dad ,1 ,{{2,4}{2,4}{0,1}{0,2}}} % ddad
+\gdef \sk@f { 6 ,\a@fah ,1 ,{{0,5}{0,5}{0,0}{2,1}}} % fah
+\gdef \sk@f@s { 6 ,\a@fah@s ,1 ,{{0,5}{0,5}{0,0}{2,0}}} % fah, no dot
+\let \sk@g \sk@@
+\gdef \sk@g@p { 5 ,\a@gaf@p ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % gaf, loop
+\gdef \sk@g@s { 5 ,\a@gaf@s ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % gaf, bar
+\let \sk@g@ps \sk@@
+\gdef \sk@h {10 ,\a@hah ,1 ,{{0,0}{0,-1}{0,0}{0,0}}} % hah
+\gdef \sk@h@m {10 ,\a@hah ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % hah marbouta
+\gdef \sk@h@s {10 ,\a@h@s ,1 ,{{1,0}{0,0}{0,0}{0,0}}} % urdu hah
+\gdef \sk@hh { 3 ,\a@hhah ,1 ,{{4,0}{4,0}{0,0}{0,2}}} % hhah
+\gdef \sk@j { 3 ,\a@gim ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % gim
+\gdef \sk@k { 5 ,\a@kaf ,1 ,{{0,2}{0,2}{0,0}{0,-1}}} % kaf
+\gdef \sk@k@p { 5 ,\a@kaf@p@s,1,{{0,2}{0,2}{0,0}{0,-1}}} % kaf, loop
+\gdef \sk@k@s { 5 ,\a@kaf@s ,1 ,{{0,2}{0,2}{0,0}{0,-1}}} % kaf, no mark
+\gdef \sk@k@w { 5 ,\a@kaf@w ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % wide kaf
+\gdef \sk@kh { 3 ,\a@khah ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % khah
+\gdef \sk@l { 0 ,\a@lam ,1 ,{{0,3}{0,2}{0,0}{0,0}}} % lam
+\gdef \sk@l@w { 0 ,\a@lam@l ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % lower lam
+\gdef \sk@m {10 ,\a@mim ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % mim
+\gdef \sk@n { 1 ,\a@nun ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % nun, no dot
+\gdef \sk@n@p { 9 ,\a@nun@p ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % nun, loop
+\gdef \sk@q { 6 ,\a@qaf ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % qaf
+\let \sk@q@s \sk@@
+\gdef \sk@r { 8 ,\a@rah ,0 ,{{0,2}{0,1}{0,0}{0,0}}} % rah
+\gdef \sk@r@p { 8 ,\a@rah@p ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % rah, loop
+\gdef \sk@r@s { 8 ,\a@rah@s ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % rah, two dots
+\gdef \sk@s { 2 ,\a@sin ,1 ,{{2,6}{2,4}{0,1}{0,3}}} % sin
+\gdef \sk@s@p { 2 ,\a@sin@p ,1 ,{{0,6}{0,4}{0,2}{0,4}}} % sin, two dots
+\gdef \sk@sh { 2 ,\a@shin ,1 ,{{2,6}{2,4}{0,2}{0,2}}} % shin
+\gdef \sk@ss { 2 ,\a@sad ,1 ,{{2,4}{2,4}{0,1}{0,2}}} % ssad
+\gdef \sk@ts { 3 ,\a@tsah ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % tchah
+\gdef \sk@tt { 7 ,\a@ttah ,1 ,{{1,2}{1,2}{1,1}{1,1}}} % ttah
+\gdef \sk@v { 6 ,\a@vah ,1 ,{{0,5}{0,5}{0,0}{0,0}}} % vah
+\gdef \sk@w {10 ,\a@waw ,0 ,{{0,1}{0,1}{0,0}{0,0}}} % waw
+\let \sk@w@r \sk@@
+\let \sk@w@b \sk@@
+\gdef \sk@y { 1 ,\a@yah ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % yah
+\gdef \sk@y@h { 1 ,\a@yah@h ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % yah, stroke
+\gdef \sk@y@p { 1 ,\a@yah@p ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % yah bari
+\let \sk@y@ps \sk@@
+\gdef \sk@z { 8 ,\a@zay ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % zay
+\gdef \sk@zh { 8 ,\a@zhah ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % zhah
+\gdef \sk@zz { 7 ,\a@zzah ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % zzah
+
+% special forms
+\gdef \sk@sn@s { 2 ,\a@sin@spec ,1 ,{{2,6}{2,4}{0,-2}{0,-1}}} % sin short
+\gdef \sk@sd@s { 2 ,\a@sad@spec ,1 ,{{2,4}{2,4}{0,-3}{0,-2}}} % ssad short
+\gdef \sk@j@cl { 3 ,\a@gim@close ,1 ,{{0,0}{0,0}{0,0}{0,1}}} % gim closed
+\gdef \sk@k@sh { 5 ,\a@kaf@spec ,1 ,{{0,2}{0,2}{0,0}{0,0}}} % kaf, short
+\let \sk@k@sp \sk@@
+\gdef \sk@g@ph { 5 ,\a@gaf@p ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % gaf' short
+\gdef \sk@g@sh { 5 ,\a@gaf@s ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % gaf- short
+\let \sk@g@sp \sk@@
+\gdef \sk@y@s { 1 ,\a@yah@spec ,1 ,{{0,0}{0,2}{0,0}{0,0}}} % yah lig
+\gdef \sk@y@h@s { 1 ,\a@yah@h@spec ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % yah' lig
+\gdef \sk@j@s { 3 ,\a@gim@spec ,1 ,{{0,0}{0,0}{0,1}{0,0}}} % gim short
+\gdef \sk@hh@s { 3, \a@hhah@spec ,1 ,{{4,0}{4,6}{0,1}{0,0}}} % hhah short
+\gdef \sk@kh@s { 3 ,\a@khah@spec ,1 ,{{0,0}{0,0}{0,1}{0,0}}} % khah short
+\gdef \sk@ts@s { 3 ,\a@tsah@spec ,1 ,{{0,0}{0,0}{0,1}{0,0}}} % tchah short
+\gdef \sk@l@a {10 ,\a@lam@alif ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % lam-alif
+\let \sk@m@si \sk@@
+
+% specials
+\gdef \sk@B {10 ,\a@tatwil,1 ,{{0,0}{0,0}{0,0}{0,0}}} % tatwil
+\gdef \sk@Q {10 ,\a@hamzc ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % hamza char
+\gdef \sk@W {10 ,\a@break ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % small space 34
+\gdef \sk@spc {10 ,\a@smspc ,1 ,{{0,0}{0,0}{2,0}{2,0}}} % small space 36
+\gdef \sk@skip{10 ,\a@skip ,1 ,{{0,0}{0,0}{2,0}{2,0}}} % small space 37
+
+% ligatures
+\gdef \sk@b@sp { 1 ,\a@bah@spec ,1 ,{{0,0}{0,0}{0,0}{0,1}}} % r-b-?
+\gdef \sk@b@g { 1 ,\a@bah@spec@gim ,1 ,{{0,0}{0,0}{0,2}{0,4}}} % j-b-?
+\gdef \sk@b@h { 1 ,\a@bah@high ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % s-b-?
+\gdef \sk@b@y { 1 ,\a@bah@spec@yah ,1 ,{{0,0}{0,0}{0,-1}{0,0}}} % y-b-?
+\gdef \sk@b@e@m { 1 ,\a@bah@end@mim ,1 ,{{0,0}{0,0}{0,1}{0,0}}} % m-b-?
+\gdef \sk@b@m@m { 1 ,\a@bah@mid@mim ,1 ,{{0,0}{0,0}{2,2}{2,2}}} % m-b-?
+\gdef \sk@b@e@h { 1 ,\a@bah@end@hah ,1 ,{{0,0}{0,0}{2,2}{0,0}}} % h-b-?
+\gdef \sk@h@s@l {10 ,\a@hah@spec@lam ,1 ,{{1,0}{0,0}{1,-3}{0,0}}} % E-h-?
+\gdef \sk@l@h { 0 ,\a@lam@spec@hah ,1 ,{{0,0}{0,0}{0,0}{0,-3}}} % m-l-|
+\gdef \sk@l@g { 0 ,\a@lam@gim ,1 ,{{0,0}{0,0}{0,0}{0,4}}} % j-l-|
+\gdef \sk@l@g@s { 0 ,\a@lam@gim ,1 ,{{0,0}{0,0}{0,0}{0,1}}} % j-l-|
+\gdef \sk@l@y { 0 ,\a@lam@spec@yah ,1 ,{{0,0}{0,0}{0,1}{0,0}}} % j-l-?
+\gdef \sk@l@m { 0 ,\a@lam@spec@mim ,1 ,{{0,0}{0,0}{0,0}{0,-2}}} % m-l-|
+\gdef \sk@l@lng { 0 ,\a@lam@long ,1 ,{{0,0}{0,0}{0,0}{0,1}}} % y-l-|
+\gdef \sk@m@s {10 ,\a@mim@spec ,1 ,{{0,0}{0,-1}{0,2}{0,2}}} % ?-m-l
+\gdef \sk@m@s@h {10 ,\a@mim@spec@high,1 ,{{0,0}{0,0}{0,0}{0,0}}} % j-m-|
+\gdef \sk@m@s@l {10 ,\a@mim@spec@long,1 ,{{0,0}{0,0}{0,-2}{0,0}}} % ?-m-l
+\gdef \sk@m@s@m {10 ,\a@mim@spec@mim ,1 ,{{0,0}{0,0}{0,5}{0,0}}} % m-m-|
+\gdef \sk@m@l@g {10 ,\a@mim@lam@gim ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % j-m-l
+\gdef \sk@l@spc {10 ,\a@smspc ,1 ,{{0,0}{0,0}{0,0}{0,-4}}} % small space
+
+\global\let \sk@free \sk@W % phantom for outtable
+
+\global\let \sk@b@s \sk@b
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}}% end of dynamic definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\seta@skels % activate skeletons
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ACT = 1. char
+\def \set@act #1{\def \act@skel {#1}\xpa \unp@ck@act #1\relax }
+
+\def \get@act {\xxpa \unp@ck@act \act@skel \relax }
+
+\def \new@act #1{\xxpa \unp@ck@act #1\relax }
+
+\def \unp@ck@act #1,#2,#3,#4\relax {% unpack skeleton description
+\act@cls #1\act@cd #2\act@con #3\def \act@dia {#4}}
+
+% CHR = 2. char
+\def \set@chr #1{\def \chr@skel {#1}\xpa \unp@ck@chr #1\relax }
+
+\def \get@chr {\xxpa \unp@ck@chr \chr@skel \relax }
+
+\def \new@chr #1{\xxpa \unp@ck@chr #1\relax }
+
+\def \unp@ck@chr #1,#2,#3,#4\relax {% unpack skeleton description
+\chr@cls #1\chr@cd #2\chr@con #3\def \chr@dia {#4}}
+
+% SKL = 3. char
+\def \set@skl #1{\def \skl@skel {#1}\xpa \unp@ck@skl #1\relax }
+
+\def \get@skl {\xxpa \unp@ck@skl \skl@skel \relax }
+
+\def \new@skl #1{\xxpa \unp@ck@skl #1\relax }
+
+\def \unp@ck@skl #1,#2,#3,#4\relax {% unpack skeleton description
+\skl@cls #1\skl@cd #2\skl@con #3\def \skl@dia {#4}}
+
+\def \a@skl@init {% default attributes
+\set@skel \sk@def }
+
+\def \dia@pos #1#2#3#4#5\relax {% unpack diacritics list
+\edef \temp {\ifcase #5 #1\or #2\or #3\or #4\fi }%
+\xpa \get@dia \temp \relax }
+
+\def \get@dia #1,#2\relax {% position of diacritic
+\def \dia@mod {#1}\def \dia@hadj {#2}}
+
+\def \dia@mod {0} \def \dia@hadj {0}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chardef \bah@cls 1 \chardef \gim@cls 3 \chardef \kaf@cls 5
+\chardef \rah@cls 8 \chardef \other@cls 10
+
+\catcode`\@ = \sklatcode
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/arabsymb.sty b/language/arabic/arabtex/texinput/arabsymb.sty
new file mode 100644
index 0000000000..709d9e1e0b
--- /dev/null
+++ b/language/arabic/arabtex/texinput/arabsymb.sty
@@ -0,0 +1,192 @@
+%%%%%%%%%%%%%%%%%%%% xarbsymb.sty %%%%%%%%%%%%%%%%%%%%
+% 20.4.1998 11:30:59
+% code assignments for arabic font in ArabTeX
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+% 20.04.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {xarbsymb.sty} {3.07 symbolic output encoding } {12.07.1997}
+
+\chardef \a@nashcode = '1 % file has been read
+
+%%%%%%%%%%%%%%%%%% connection forms %%%%%%%%%%%%%%%%%%
+
+\chardef \a@f@iso = '0 % isolated
+\chardef \a@f@end = '1 % final
+\chardef \a@f@mid = '2 % medial
+\chardef \a@f@beg = '3 % initial
+
+%%%%%%%%%%%%%%%%%% diacritical marks %%%%%%%%%%%%%%%%%
+
+\chardef \a@ttah@dia = '010 % for urdu
+\chardef \a@one@dot@up = '011 %
+\chardef \a@two@dots@down = '012 %
+\chardef \a@fatha = '013 %
+\chardef \a@kasra = '013 %
+\chardef \a@damma = '014 %
+\chardef \a@hamza = '015 %
+\chardef \a@madda = '016 %
+\chardef \a@shadda = '017 %
+\chardef \a@two@dots@up = '020 %
+\chardef \a@three@dots@up = '021 %
+\chardef \a@three@dots@down = '022 %
+\chardef \a@fathatan = '023 %
+\chardef \a@kasratan = '023 %
+\chardef \a@dammatan = '024 %
+\chardef \a@sukun = '025 %
+\chardef \a@wasla = '026 %
+\chardef \a@quran@alif = '027 %
+\chardef \a@bow@dia = '030 % for kurdish
+\chardef \a@e@dia = '040 % for pashto
+\chardef \a@zwarakay = '040 % for pashto
+\chardef \a@one@dot@down = '056 % period
+\chardef \a@h@dia = '146 % for urdu
+\chardef \a@ammad = '146 % for pashto
+
+%%%%%%%%%%%%%%%%%% letters %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chardef \a@alif = '100 % 100,101
+\chardef \a@bah@s = '110 % 110-113
+%% gim 140 140-143
+\chardef \a@hhah = '150 % 150-153
+\chardef \a@khah = '160 % 160-163
+%% tsah 170 170-173
+\chardef \a@dal = '130 % 130,131
+\chardef \a@rah = '120 % 120,121
+%% zay 122 122,123
+%% zhah 124 124,125
+\chardef \a@sin = '200 % 200-203
+%% shin 210 210-213
+\chardef \a@sad = '220 % 220-223
+%% dad 230 230-233
+\chardef \a@kaf@w = '234 % 234-237 wide kaf
+\chardef \a@ttah = '240 % 240-243
+%% zzah 244 244-247
+\chardef \a@ain = '250 % 250-253
+\chardef \a@fah@s = '254 % 254-257 fah family
+%% fah 362 362,363
+\chardef \a@qaf = '364 % 364,365
+%% vah 366 366,367
+\chardef \a@kaf@s = '270 % 270-273 kaf family
+\chardef \a@kaf = '274 % 274,275
+\chardef \a@gaf@s = '300 % 300-303 gaf family
+\chardef \a@gaf = '304 % 304,305
+\chardef \a@lam = '310 % 310-313
+\chardef \a@mim = '320 % 320-323
+\chardef \a@nun = '340 % 340,341
+\chardef \a@hah = '350 % 350-354
+\chardef \a@waw = '360 % 360,361
+\chardef \a@yah = '370 % 370,371
+
+\chardef \a@hamza@iso = '132 % 132
+
+\chardef \a@alif@iso = \a@alif % 100
+\chardef \a@alif@end = '101 % 101
+\chardef \a@bah = \a@bah@s % 110
+\chardef \a@hamzc = \a@hamza@iso % 132
+
+%%%%%%%%%%%%%%%%%% special characters %%%%%%%%%%%%%%%%%%%
+
+\chardef \a@block = '000 % 000-003
+\chardef \a@tatwil = '004 % 004-007
+
+\chardef \a@rquotes = '042 % 042
+\chardef \a@period = '056 % 056
+\chardef \a@lquotes = '134 % 134
+
+\chardef \a@space@spec = '044 % 046,047 carrier for dots
+\chardef \a@skip = '045 % 047 small space, initial (!)
+\chardef \a@no@break = '046 % 046 no space, breaks ligatures
+\chardef \a@break = '047 % 047 small space, medial
+
+\chardef \a@smspc = \a@space@spec % 044
+
+%%%%%%%%%%%%%%%%%% ligatures %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chardef \a@bah@spec@gim = '027 % 031 medial bah before gim
+\chardef \a@bah@beg@gim = '030 % 032 initial (!) bah before gim
+\chardef \a@g@to@mb = '031 % 033 medial bah to gim
+\chardef \a@bah@high = '032 % 034,035 before sin, sad
+\chardef \a@bah@spec = '034 % 036,037 bah before final rah, nun
+\chardef \a@lam@spec@low = '072 % 074 medial lam for 'allah'
+\chardef \a@alif@spec@mim = '075 % 076 final alif after mim
+\chardef \a@lam@alif = '102 % 102,103
+\chardef \a@bah@end@hah = '102 % 104,105 bah before final hah
+\chardef \a@bah@spec@yah = '104 % 106,107 bah before gim, with tie;
+ % also bah before yah
+%% gim_spec 143 144,145 from above
+\chardef \a@gim@close = '144 % 146,147 closed gim
+\chardef \a@hhah@spec = '153 % 154,155 from above
+\chardef \a@khah@spec = '163 % 164,165 from above
+\chardef \a@rah@k = '166 % 166,167 kurdish rah
+%% tsah_spec 173 174,175 from above
+\chardef \a@sin@spec = '202 % 204,205 short form
+%% shin_spec 204 206,207 short form
+\chardef \a@sad@spec = '222 % 224,225 short form
+%% dad_spec 224 226,227 short form
+\chardef \a@kaf@spec = '274 % 276,277 short form
+\chardef \a@gaf@spec = '304 % 306,307 short form
+\chardef \a@lam@gim = '311 % 314 lam on gim
+\chardef \a@lam@on@gim = '312 % 314 initial (!) lam before gim
+\chardef \a@lam@long = '312 % 315 initial lam before yah
+\chardef \a@lam@spec@yah = '314 % 316 before final yah ?
+\chardef \a@lam@spec@mim = '314 % 317 initial lam before medial mim
+\chardef \a@mim@spec@high = '322 % 324 from above
+\chardef \a@mim@spec = '324 % 325-327 final; medial after lam;
+ % also before gim
+\chardef \a@mim@spec@mim = '325 % 330 initial mim before mim
+\chardef \a@mim@lam@gim = '327 % 331 medial mim between lam and gim
+\chardef \a@lam@spec@hah = '330 % 333 initial lam before medial hah
+\chardef \a@mim@spec@long = '332 % 334 medial mim after lam, vocalized
+\chardef \a@mm@to@b = '333 % 335 bah to medial mim
+\chardef \a@bah@mid@mim = '334 % 336,337 bah before medial mim
+\chardef \a@mim@spec@alif = '342 % 344 medial mim before alif
+\chardef \a@er@to@s = '343 % 345 sin to final rah
+\chardef \a@bah@end@mim = '344 % 346 medial bah before final mim
+\chardef \a@bah@beg@mim = '345 % 347 initial (!) bah before final mim
+\chardef \a@hah@urd = '353 % 353,354 two-eyed hah,
+ % see hah and hah_spec_lam
+\chardef \a@hah@spec@lam = '352 % 354 medial hah after initial lam
+\chardef \a@hah@spec = '354 % 355-357 final short hah;
+ % also medial hah after sin
+\chardef \a@yah@spec = '371 % 372 ligature for final yah
+
+\chardef \a@lam@alif@iso = \a@lam@alif % 102
+\chardef \a@lam@alif@end = '103 % 103
+
+\chardef \a@h@s = \a@hah@spec % 354
+\chardef \a@lam@l = \a@lam@spec@low % 072
+
+%lam_spec_gim 311
+
+%%%%%%%%%%%%%%%%%% ties %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chardef \a@g@to@s = \a@bah@spec@gim % sin to gim
+\chardef \a@em@to@s = \a@bah@end@mim % sin to final mim
+\chardef \a@mh@to@s = \a@bah@end@hah % sin to medial hah or final mim
+\chardef \a@g@to@bb = \a@bah@beg@gim % initial bah to gim
+\chardef \a@em@to@bb = \a@bah@beg@mim % initial bah to final mim
+
+%%%%%%%%%%%%%%%%%% others %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chardef \a@bah@p = '114 % 114-117 bah family with loop
+\chardef \a@rah@p = '126 % 126,127 rah with loop
+\chardef \a@dal@p = '136 % 136,137 dal with loop
+\chardef \a@rah@s = '156 % 156,157 rah with two dots
+%% sin_p 214 214,215 sin with two dots
+\chardef \a@kaf@p@s = '260 % 260-263 kaf family with loop
+\chardef \a@kaf@p = '264 % 264,265 kaf with loop and mark
+\chardef \a@kaf@p@spec = '264 % 266,267 short form of kaf with loop
+\chardef \a@nun@p = '342 % 342,343 nun with loop
+\chardef \a@yah@h = '373 % 373,374 yah with hook
+\chardef \a@yah@h@spec = '374 % 375 ligature for final yah with hook
+\chardef \a@yah@p = '376 % 376,377 long yah
+
+\chardef \a@gaf@p = \a@kaf@p@s % 260
+
+%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\endinput
diff --git a/language/arabic/arabtex/texinput/arabtex.sty b/language/arabic/arabtex/texinput/arabtex.sty
new file mode 100644
index 0000000000..03d8bece91
--- /dev/null
+++ b/language/arabic/arabtex/texinput/arabtex.sty
@@ -0,0 +1,634 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% arabtex.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabtex.sty
+% this is the driver module for the ArabTeX macro package
+\def \theversion {3.11}
+\def \thedatum {22.08.2003}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally EMail: lagallyk@acm.org
+% Institut fuer Formale
+% Methoden der Informatik TEL: +49-711-7816-392
+% Universitaet Stuttgart FAX: +49-711-7816-370
+% Universitaetsstrasse 38
+% D-70569 Stuttgart INFO: arabtex@informatik.uni-stuttgart.de
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% This program can be redistributed and/or modified under the terms
+% of the LaTeX Project Public License distributed from CTAN
+% archives in directory macros/latex/base/lppl.txt; either
+% version 1 of the License, or (at your option) any later version.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \undefined \Lagally \else
+\errhelp {ArabTex should be loaded *after* EDMAC (if applicable),^^J
+but *before* any non-standard LaTeX packages or options.^^J
+Correct your configuration and try again.}
+\errmessage {Inconsistent configuration.^^J
+The command `\string \undefined' has been redefined by some package.^^J
+`\string \undefined' is defined as `\meaning \undefined'.^^J
+This might utterly confuse ArabTeX which is therefore not loaded.^^J
+}\fi
+
+\ifx \ar@batcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \ar@batcode = \catcode`\@ \catcode`\@ = 11 \chardef \@other = 12
+\chardef \ar@bdqcode = \catcode`\" \catcode`\" = 12 % for german.sty
+
+%%%%%%%%%%%%%%%%%%%%%%%% auxiliary macros %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \ArabTeX {Arab\TeX }
+
+\let \xpa \expandafter \def \xxpa {\xpa \xpa \xpa }
+\def \xxxpa {\xpa \xxpa \xpa }
+
+\let \nxp \noexpand \def \nxxp {\nxp \nxp \nxp }
+\def \n@xp {\nxp \nxp \nxp }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%% identify yourself %%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\input aconfig.sty % check environment
+
+\let \a@wlog \wlog \def \wlog #1{\relax }
+
+\a@ident {arabtex.sty} {\theversion \space ArabTeX main module} {\thedatum }
+
+\UsePackage {arabaux} % load auxiliary macros
+
+%%%%%%%%%%%%%%%%%%% various declarations %%%%%%%%%%%%%%%%%%%%%
+
+\newbox \wordb@x \newbox \lineb@x \newbox \tempb@x
+\newtoks \a@tokens \newtoks \sc@next \newtoks \sc@rest
+\newtoks \a@@cmd \newtoks \a@@name \newtoks \a@@tail
+\newtoks \a@digits \newtoks \a@first \newtoks \a@paren
+\newtoks \a@@everypar \newtoks \a@accent
+\newskip \a@parindent \newskip \a@parskip
+\newwrite \a@@err \newwrite \a@@out
+\newcount \tracingarab \def \quiet {\tracingarab = 0 }
+
+\newif \if@vocals \newif \ifv@c \newif \if@sukun
+\newif \if@suk \newif \if@wasla \newif \if@was
+\newif \if@high \newif \ifacc@hi \newif \ifa@vmode
+\newif \ifa@space \newif \iftr@ns \newif \ifa@oldhmode
+
+\newif \iftest % \testtrue % for internal use only
+\newif \iftest@scan \newif \iftest@trans
+\newif \iftest@parse \newif \iftest@write
+\newif \iftest@command \newif \iftest@font
+
+\newif \ifnewfont \newif \ifaRL
+
+%%%%%%%%%%%%%%%%%%% language specific switches %%%%%%%%%%%%%%%%%%%%%
+
+%% beware of moving arguments!
+
+\newif \ifarab % generate the arabic script
+\newif \ifshow % display the input text verbatim
+\newif \ifligs % set all ligatures active
+\newif \ifspread % spread characters by keshide
+\newif \iftrans % generate the transliteration
+
+%newif \ifRL % alias for \ifarab
+\let \RLtrue \arabtrue \let \RLfalse \arabfalse
+
+% internal switches
+
+\newif \ifaN@alif % tanwin on alif
+\newif \ifqur@n % old hamza rules
+\newif \ifh@mza % hamza rules, assimilation
+\newif \if@ssim % assimilation
+\newif \ifiz@fet % izafet rules
+\newif \ifyahd@ts % yah with dots
+\newif \ifk@fs % final kaf without mark
+\newif \iff@rsn % Farsi numerals
+\newif \ifk@sra % Kasra always below char
+
+\newif \ifp@sht % loop chars, e as two dots, diphtongs
+\newif \ifurd@ % e as long yah, urdu accent, two hah chars
+\newif \ifm@gh % variants of fah, vah and qaf
+\newif \ift@rk % special transliteration and coding
+\newif \ifk@rd % special transliteration and coding
+\newif \ifs@nd % special transliteration and coding
+\newif \ifu@gh % special transliteration and coding
+\newif \ifm@lay % special transliteration and coding
+\newif \ifk@sh % special transliteration and coding
+
+\newif \ifn@arab % load Arabic default
+
+%%%%%%%%%%%%%%%%%%% various robust options %%%%%%%%%%%%%%%%%%%%%
+
+\pdef \yahdots {\yahd@tstrue } \pdef \yahnodots {\yahd@tsfalse }
+\pdef \accentshigh {\acc@hitrue } \pdef \accentslow {\acc@hifalse }
+\pdef \oldtanwin {\aN@aliffalse } \pdef \newtanwin {\aN@aliftrue }
+\pdef \oldhamza {\qur@ntrue } \pdef \newhamza {\qur@nfalse }
+
+%%%%%%%%%%%%%%%%%%% various defaults %%%%%%%%%%%%%%%%%%%%%
+
+\def \transtrue {% activate the transliteration
+\iftr@ns \else \tr@zdmg \fi \let \iftrans \iftrue }
+
+\let \tr@zdmg \relax \n@arabtrue
+
+\def \arab@output {\ifx \a@lang \a@arab \else
+\tr@ceoff % switch to Arabic output conventions
+\def@arabchars % define character macros for Arabic
+\def@arabaccent % define accent macros for Arabic
+\def@arabvoc % define vowel parsing routines for Arabic
+\def@arabstrut % define strut for Arabic
+\tr@zdmg % define standard transliteration
+\let \a@write \a@@write \let \a@write@hook \relax
+\tr@ceon \let \a@lang \a@arab \fi }
+
+\def \a@arab {ARABIC} \def \a@lang {NONE}
+
+%%%%%%%%%%%%%%%%%%% ML-TeX compatibility (br) %%%%%%%%%%%%%%%%%%%%%
+
+\newcount \arab@charsubdefmax \arab@charsubdefmax \m@ne
+
+\ifx \charsubdefmax \undefined
+ \csname newcount\endcsname \charsubdefmax
+\else % save actual \charsubdefmax value
+ \arab@charsubdefmax=\charsubdefmax
+ % restore it, when outputting a new box in \output routine
+ \csname newtoks\endcsname \a@@output \a@@output=\output
+ \output={\charsubdefmax \arab@charsubdefmax \the\a@@output }
+\fi
+
+%%%%%%%%%%%%%%%%%%% language selection %%%%%%%%%%%%%%%%%%%%%
+
+\def \all@false {% reset language code to default
+\k@rdfalse \t@rkfalse \m@ghfalse \urd@false \p@shtfalse
+\s@ndfalse \m@layfalse \u@ghfalse \k@srafalse
+\h@mzafalse \@ssimfalse \iz@fetfalse \yahd@tsfalse \k@fsfalse \f@rsnfalse
+\let \vocalize \v@calize \let \fullvocalize \fullv@calize
+\arab@output \catcode`\<=\active }
+
+% all language selection commands are robust!
+
+\pdef \setarab {% kaf with mark, hamza rules, yah with dots
+\all@false \h@mzatrue \@ssimtrue \yahd@tstrue \oldtanwin
+\def \a@defaultfont {\setnash }}
+
+\pdef \setmaghribi {% variants of fah and qaf
+\setarab \m@ghtrue }
+
+\pdef \setfarsi {% no kaf mark, yah without dots, izafet
+\all@false \iz@fettrue \h@mzatrue \@ssimtrue \k@fstrue \f@rsntrue
+\newtanwin \def \a@defaultfont {\setnast }}
+
+\pdef \setkurdish {% no kaf mark, yah without dots, izafet
+\setfarsi \k@rdtrue }
+
+\pdef \setturk {% kaf with mark, yah without dots, izafet, hamza
+\all@false \iz@fettrue \h@mzatrue \@ssimtrue \newtanwin \t@rktrue
+\def \a@defaultfont {\setnash }}
+
+\pdef \seturdu {% two hah, long yah, urdu accent, long e, izafet
+\all@false \iz@fettrue \h@mzatrue \@ssimtrue \k@fstrue \f@rsntrue
+\newtanwin \urd@true \def \a@defaultfont {\setnast }}
+
+\pdef \setpashto {% pashto loop, e: two dots, izafet, hamza
+\all@false \iz@fettrue \h@mzatrue \@ssimtrue \yahd@tstrue \k@fstrue
+\newtanwin \p@shttrue \def \a@defaultfont {\setnast }}
+
+\pdef \setbalut {% temporary
+\setpashto}
+
+\pdef \setsindhi {% switch language specific processing
+\seturdu \h@mzafalse \ligsfalse \yahd@tstrue \s@ndtrue }% ALA-LC has dots!
+
+%\seturdu \h@mzafalse \ligsfalse \yahd@tsfalse \s@ndtrue }% A.Pandey not
+
+\pdef \setmalay {% p, ng, ny
+\seturdu \yahd@tstrue \m@laytrue \def \a@defaultfont {\setnash }}
+
+\pdef \setuighur {% switch language specific processing
+\let \vocalize \novocalize \let \fullvocalize \novocalize
+\novocalize \@ssimfalse \h@mzafalse
+\u@ghtrue \def \a@defaultfont {\setnash }}
+
+\pdef \setkashmiri {% Kashmiri language mode
+\seturdu \k@shtrue \newarabfont \settrans{kashmiri}}
+
+\pdef \setverb {% no special processing
+\all@false \yahd@tstrue \oldtanwin \def \a@defaultfont {\setnash }}
+
+\pdef \setnone {\catcode`\<=\@other }% deselect arabic quotations
+
+\pdef \setquot {\catcode`\<=\active }% select arabic quotations
+
+\pdef \setnoquot {\catcode`\<=\@other }% deselect arabic quotations
+
+%%%%%%%%%%%%%%%%%%%%%%% vowelization options %%%%%%%%%%%%%%%%%%%%%%%%
+
+% must be robust!
+
+\pdef \novocalize {% no diacritics except explicitly indicated
+\@vocalsfalse \v@cfalse \@sukunfalse \@sukfalse }
+
+\pdef \v@calize {% diacritics for short vowels only
+\@vocalstrue \v@ctrue \@sukunfalse \@sukfalse }
+
+\pdef \fullv@calize {% all diacritics
+\@vocalstrue \v@ctrue \@sukuntrue \@suktrue }
+
+\let \vocalize \v@calize \let \fullvocalize \fullv@calize
+
+%%%%%%%%%%%%%%%%%%%%%%%% robust font selection %%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \setarabfont #1{% define font switching
+ \def \set@arabfont {\tr@ceoff #1\tr@ceon }}
+
+\pdef \set@nash {\setarabfont \nash }
+\pdef \set@nashbf {\setarabfont \nashbf }
+\pdef \set@nast {\setarabfont \nastaliq }
+\pdef \set@xnash {\setarabfont \xnash }
+\pdef \set@xnashbf {\setarabfont \xnashbf }
+
+% presently no nastaliq font
+\def \nastaliq {\nash }
+
+\def \newarabfont {% switch to new ArabTeX fonts version
+\setx@skels % activate new skeletons
+\let \setnash \set@xnash
+\let \setnashbf \set@xnashbf
+\let \setnastaliq \set@xnash
+\let \setnast \set@xnash
+\newfonttrue \setnash }
+
+\def \oldarabfont {% switch to old ArabTeX fonts version
+\seta@skels % activate old skeletons
+\let \setnash \set@nash
+\let \setnashbf \set@nashbf
+\let \setnastaliq \set@nash
+\let \setnast \set@nash
+\newfontfalse \setnash }
+
+\def \a@defaultfont {\setnash }
+\def \a@default {\a@defaultfont }
+\def \a@normalfont {\a@defaultfont }
+
+%%%%%%%%%%%%%%%%%%%%%%%% handling of special characters %%%%%%%%%%%%%%%
+
+\def \a@arab@codes {% save and set special characters
+\chardef \spc@de = \catcode`\ \catcode`\ = 10
+\chardef \dqc@de = \catcode`\" \catcode`\" = \@other
+\chardef \lsc@de = \catcode`\< \catcode`\< = \@other
+\csname originalTeX\endcsname % reset codes if BABEL is present
+\arab@charsubdefmax \charsubdefmax \charsubdefmax \m@ne }
+
+\def \a@unarab@codes {% reset catcodes
+\catcode`\ = \spc@de \catcode`\< = \lsc@de \catcode`\" = \dqc@de
+\charsubdefmax \arab@charsubdefmax
+\csname germanTeX\endcsname }% reset codes if german.sty is present
+
+\let \arab@codes \a@arab@codes \let \unarab@codes \a@unarab@codes
+
+%%%%%%%%%%%%%%%%%%%%%%% Arabic environment %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newif \ifin@arab % inside Arabic environment?
+
+\def \arabtext {% environment for RTL formatting
+\a@parparams % aoutput::a@parparams
+\the\arabtext@hook \test@token }
+
+\newtoks \arabtext@hook
+
+\arabtext@hook = {% initialize RTL environment
+\in@arabtrue \a@parindent \parindent \a@parskip \parskip
+\edef \a@@font {\the\font }%
+\ifhmode \a@oldhmodetrue \else \a@oldhmodefalse \fi
+\a@vmodetrue \a@@everypar {}%
+\let \| \break \def \\{\hfil \break }%
+\let \emphasize \underbar % define internal commands
+\let \a@last@line \short@line \let \a@put@line \put@line
+\arab@codes \set@arabfont \@waslafalse \@wasfalse
+\def \next@command {\test@special}}
+
+\def \at@arabtext #1{% extend the initialization
+\arabtext@hook \xpa{\the\arabtext@hook #1}}
+
+\let \at@arabtex \at@arabtext % catch typo
+
+\def \a@par {% close a RTL paragraph
+\ifa@vmode \else % terminate last RTL line
+\a@last@line \spreadfalse \a@vmodetrue
+\parindent \a@parindent \parskip \a@parskip
+\a@resetpar \a@par@hook % aoutput::
+\ifnum \tracingarab > 0 \message {##}\fi
+\fi }
+
+\let \a@@par \a@par % save for \a@@everypar in \a@c@autopar
+
+\def \endarabtext {% close RTL environment
+\a@last@line
+\ifa@oldhmode \noindent \fi
+\ifnum \tracingarab > 0 \message {||}\fi
+\global \@ignoretrue }
+
+\let \RLtext \arabtext \let \arabtex \arabtext % catch typo
+\let \endRLtext \endarabtext \let \endarabtex \endarabtext % catch typo
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% next token %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@accent = {\lq \rq \cap \MIN \IN \a@tok \shadda \madda \sukun
+ \raphe \dagesh \mappiq \ldot \rdot \cdot \maqqef \abbr \,}
+
+{\catcode `\^^a0 12 \gdef \sp@ce {^^a0}
+}% catcode ^^a0
+
+\a@digits = {0123456789} \a@paren = {()[]}
+\a@first = {.^_-'`~,|"=:} % default, scanner dependent
+
+\def \test@@token {\iftest@command \tracingmacros 0 \fi
+\let \a@@word \empty \get@token }
+
+\def \get@token {\futurelet \next@token \test@space }
+
+\let \test@token \test@@token % get next token
+
+\def \test@space {% check for LTR space
+\if \space \nxp\next@token \a@@putword \xpa\kill@space
+\else \xpa\next@command \fi }% hook for acmd, aedpatch, arabext
+
+\xpa\def \xpa\kill@space \space {% gobble LTR space
+\futurelet \next@token \test@special }
+
+\xpa\def \xpa\kill@sp@ce \sp@ce {% gobble RTL space
+\futurelet \next@token \test@space }
+
+\def \obey@space {% after control characters
+\a@spacefalse \futurelet \next@token \obey@@space }
+
+\def \obey@@space {% check for space after control character
+\if \space \nxp\next@token \a@spacetrue \fi \test@space }
+
+\def \test@rest {% continue after \control sequence in text
+\global\let \test@token \test@@token % global!
+\xpa \xpa \xpa \test@token \xpa \a@rest \space }
+
+%%%%%%%%%%%%%%%%%%%%%% special cases %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\long\def \test@special #1{% check for special cases
+\if \bgroup \nxp \next@token % arabic group
+ \a@@putword \def \next {\arab@group {#1}}\else
+\if \relax \nxp #1% % command
+ \if\is@in@set #1\a@accent % known to scanner
+ \a@@append {#1}\def \next {\get@token }%
+ \else % general command
+ \a@@putword \def \next {\test@command #1}%
+ \fi \else
+\if \sp@ce \nxp \next@token % RTL space
+ \a@@putword \def \next {\get@token }\else
+\ifcat \nxp ~\nxp #1% % active character
+ \a@@putword \def \next {\test@command #1}\else
+\if \nxp <\nxp #1\unarab@codes % Roman insert
+ \a@@putword \let \next \test@insert \else
+\ifx $#1\unarab@codes % Math insert
+ \a@@putword \let \next \test@math
+\else \a@@append {#1}\def \next {\get@token}% % normal case
+\fi\fi\fi\fi\fi\fi \next }
+
+\def \a@@putword {% process characters
+\ifx \a@@word \empty \else
+ \ifarab \putwordb@x {\xpa\arab@item \a@@word \@@ }\fi
+ \a@spacetrue \xpa\a@showinput \xpa{\a@@word }%
+ \let \a@@word \empty
+\fi }
+
+\def \a@@append #1{% add character
+\a@extend \a@@word {#1}}
+
+%%%%%%%%%%%%%%%%%%%%%% Arabic word %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \arab@item #1#2\@@ {% split the word if necessary
+\ifx \relax #1\relax \else % empty word
+\ifx \relax #2\relax \a@rabwrite {#1}\else % single character
+\if\is@in@set #1\a@first
+ \a@rabwrite {#1#2}\else % start symbol: word
+\if\is@in@set #1\a@digits
+ \a@split #1#2\@@ \else % digit: number
+\if\is@in@set #1\a@paren
+ \arab@item #2\@@ \a@rabwrite {#1}\else % parenthesis: test content
+ \a@rabwrite {#1#2}% % normal case
+\fi\fi\fi\fi\fi }
+
+\def \a@rabwrite #1{% process an Arabic word (called within a group)
+\tracingmacros 0 % use \test@XXXtrue for testing !
+ \a@scan #1>% % generate the token sequence
+ \xpa \a@parse \the\a@tokens >% split it into syllables and reverse
+ \xpa \a@write \the\a@revwd >% output the word
+\ifnum \tracingarab > 2 \message {.}\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% Arabic commands %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \a@c@last@ {\\} \gdef \a@c@put@ {\|} \gdef \a@c@par@ {\par }
+
+{\catcode `\^ 7 \catcode `\^^M=\active \gdef \a@c@M {^^M}}
+
+{\catcode `\ =\active\gdef\a@c@SP{ }}
+
+\long \def \test@command #1{% check for special commands
+\gdef \a@arg {#1}\let \next \test@token
+\ifx \a@arg \a@c@par@ \a@@par \else % \par
+\ifx \a@arg \a@c@M \a@@par \else % \obeylines
+\ifx \a@arg \a@c@SP \else % \obeyspaces
+\ifx \a@arg \a@c@last@ \a@last@line \else % \\
+\ifx \a@arg \a@c@put@ \a@put@line \else % \|
+ \def \next {\a@command #1}% process the command inside "acmd.sty"
+\fi\fi\fi\fi\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% Arabic groups %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \arab@group #1{% process the next group
+\bgroup \initlineb@x
+\def \end {\global \setbox1 \hbox {\unhbox \lineb@x}%
+\egroup \putwordb@x {\unhbox1 }\a@spacetrue \test@token }% last line
+\test@token #1 \end }
+
+\def \a@sequence #1{% put a sequence of words into a \hbox
+\bgroup \transfalse \showfalse \let \end \relax
+\let \a@last@line \finish@line \let \a@put@line \break@line
+\def \next@command {\test@special}\let \put@word \addt@line
+\initlineb@x \test@token #1 \end \box\lineb@x \egroup }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% arabic number %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@split #1#2\@@ {% next word starts with digit
+\ifx \relax #2\relax \a@rabwrite {#1}\else
+ \def \a@body {}\def \a@number {#1}\a@splitnumber #2\@@
+ \xpa \a@rabwrite \xpa {\a@body }%
+\fi }
+
+%{\catcode `\B =12 \gdef \f@sila {B}} % cf. awrite::ac@other
+%{\catcode `\C =12 \gdef \h@phen {C}}
+
+\def \a@splitnumber #1#2\@@ {% process word starting with digit
+\if\is@in@set #1\a@digits \edef \a@number {#1\a@number }\else
+\ifx -#1\edef \a@number {\h@phen \a@number }\else
+\ifx /#1\edef \a@number {/\a@number }\else
+\ifx ,#1\ifx \relax #2\relax
+ \edef \a@body {\a@body \a@number #1}\def \a@number {}%
+ \else \edef \a@number {\f@sila \a@number }\fi
+\else \edef \a@body {\a@body \a@number #1}\def \a@number {}%
+\fi\fi\fi\fi
+\ifx \relax #2\relax \edef \a@body {\a@body \a@number}\let \next \relax
+\else \def \next {\a@splitnumber #2\@@ }%
+\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% insertions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \test@math #1${% Math insertion in Arabic text
+\def \next {#1}% test for display math
+\ifx \next \empty \def \next
+ {\begingroup \endarabtext $$\aftergroup \endgroup
+ \aftergroup \a@spacefalse \aftergroup \test@token }%
+\else \def \next
+ {\putwordb@x {$#1$}\a@spacetrue \arab@codes \test@token }%
+\fi \next }
+
+\def \test@insert #1>{% Roman insertion in Arabic text
+\putwordb@x {\rm #1}\a@spacetrue \arab@codes \test@token }
+%\putwordb@x {\a@@font #1}\a@spacetrue \arab@codes \test@token }
+
+% cf. abidir::\LR
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% verbatim mode %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@showinput #1{% show verbatim text and transliteration
+\ifshow \a@@verb {#1}\fi
+\iftrans {\tracingmacros 0 \set@transfont \trans@text #1 \end }\fi }
+
+\def \a@@verb #1{\def \verb@text {#1}% list input words verbatim
+ {\tracingmacros 0 \penalty \z@ \tt
+ \xpa \get@meaning \meaning \verb@text }\ }
+
+\def \get@meaning #1>{} % strip off macro header
+
+\def \a@verb #1>{\a@@verb {#1}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%% arabic insertion %%%%%%%%%%%%%%%%%%%%%%%%
+
+{\catcode `\< = \@other % better make sure
+
+\gdef \a@ins {% arabic insertion or 'less'
+\ifmmode \global\let \a@less <
+\else \global\let \a@less \arab@insert \leavevmode
+ \bgroup \arab@codes \set@arabfont \@waslafalse \@wasfalse
+\fi \a@less }
+
+\gdef \<{\protect \a@ins } % explicit command \<
+
+\catcode`\< = \active % prepare active <
+\gdef <{\protect \a@ins }
+} % catcode <
+
+\def \break@line {% \| inside insertion
+\box\lineb@x \break \initlineb@x }
+
+\def \finish@line {% \\ inside insertion
+\box\lineb@x \hfil \break \initlineb@x }
+
+\def \arab@insert #1>{% Arabic insertion in Roman text
+\ifshow \a@@verb {#1}\fi % verbating listing
+\ifarab \a@sequence {#1} \fi % arabic writing
+\iftrans \set@transfont \trans@text #1 \end \/\fi
+\ifnum \tracingarab > \@ne \message {>}\fi
+\unskip \egroup }
+
+% cf. abidir::\LR
+
+%%%%%%%%%%%%%%%%%%%%%%%%% transliteration %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \settransfont #1{% set transliteration style or \style
+\if \relax \nxp#1\relax \def \set@transfont
+ {\tr@ceoff #1\csname selectfont\endcsname \tr@ceon }%
+\else \def \set@transfont
+ {\tr@ceoff \csname #1\endcsname
+ \csname selectfont\endcsname \tr@ceon }%
+\fi}
+
+\settransfont {\rm \it }% standard font for transliteration
+
+\long \def \trans@text #1{% check for special cases
+\leavevmode \def \next {\trans@text }%
+\if\is@in@set {#1}\a@first \def \next {\trans@elem #1}\else % normal case
+\ifx \end #1\let \next \relax \else
+\ifx \par #1\endgraf \else
+\ifx \\#1\hfil \break \else
+\ifx \|#1\hfil \break \else
+\ifx \emphasize #1\def \next {\a@emp }\else
+\if \relax \nxp #1\relax % ignore control sequences
+\else \def \next {\trans@elem #1}% normal case
+\fi\fi\fi\fi\fi\fi\fi \next }
+
+\def \a@emp #1{\trans@text #1 }
+
+\def \trans@elem #1 {% transliterate next word of text
+\a@transword {#1}\trans@text }
+
+\def \a@transword #1{% transliterate a word
+{\tracingmacros 0 \a@scan #1>\xpa \a@trans \the\a@tokens >\ }}
+
+\ifx \a@trans \undefined % atrans.sty not yet loaded
+\def \a@trans #1>{\gdef \a@trans ##1>{\relax }% default
+\message {`atrans.sty' not loaded; transliteration ignored.}}
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%% initialization %%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \startarab {% set default initializations
+\newarabfont
+\a@normalfont % default font
+\transfalse \arabtrue \vocalize \ligsfalse
+\tracingarab = 0 \setnone } % \catcode < := 12 for user macros
+
+%%%%%%%%%%%%%%%%%%%%%%% load the later passes %%%%%%%%%%%%%%%%%%%%%%
+
+\UsePackage {acmd} % load the command processor module
+\UsePackage {afonts} % load the default fonts
+\UsePackage {ascan} % generate a token sequence
+\UsePackage {aparse} % parse it into syllables and reverse them
+\UsePackage {awrite} % generate the basic writing
+\UsePackage {aligs} % modify for any ligatures
+\UsePackage {aoutput} % generate output lines
+\UsePackage {abidir} % bidirectional linebreaking
+\UsePackage {atrans} % generate the transliteration
+\UsePackage {alatex} % extensions for LaTeX
+\UsePackage {abjad} % abjad numerals
+\ifx \edmacloaded \relax
+ \UsePackage {aedpatch} \fi % patches for EDMAC ?
+\ifx \undefined \peek@token \else
+\ifx \undefined \bbl@test@token
+ \UsePackage {arababel} \fi\fi % patches for old BABEL ?
+\ifx \CJK \undefined \else
+ \UsePackage {acjk} \fi % patches for CJK ?
+\UsePackage {apatch} % any last minute corrections
+
+%%%%%%%%%%%%%%%%%%%%%%% statistics %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \arab@stat {{\newlinechar `$
+\wlog {$Parameterless commands valid in Arabic mode:}
+\wlog {\space (\the\a@@listzero )}
+\wlog {$Commands with 1 parameter valid in Arabic mode:}
+\wlog {\space (\the\a@@listone )}
+\wlog {$Commands with 2 parameters valid in Arabic mode:}
+\wlog {\space (\the\a@@listtwo )}
+\wlog {$User defined commands valid in Arabic mode:}
+\wlog {\space (\the\a@@listreg )}}}
+
+\let \arabstat \arab@stat
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%% here we go %%%%%%%%%%%%%%%%%%%%%%%
+
+\let \wlog \a@wlog
+
+\startarab \a@report
+
+\a@message {... now be patient ... }
+
+\catcode`\" = \ar@bdqcode \catcode`\@ = \ar@batcode
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/arabtex.tex b/language/arabic/arabtex/texinput/arabtex.tex
new file mode 100644
index 0000000000..09ac9508b8
--- /dev/null
+++ b/language/arabic/arabtex/texinput/arabtex.tex
@@ -0,0 +1,133 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% arabtex.tex %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabtex.tex
+% version 3.10a
+% this is the Plain TeX driver module for the ArabTeX macro package
+% 26.04.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally EMail: lagallyk@acm.org
+% Institut fuer Formale
+% Methoden der Informatik TEL: +49-711-7816-392
+% Universitaet Stuttgart FAX: +49-711-7816-370
+% Universitaetsstrasse 38
+% D-70569 Stuttgart INFO: arabtex@informatik.uni-stuttgart.de
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ % This program can be redistributed and/or modified under the terms
+ % of the LaTeX Project Public License distributed from CTAN
+ % archives in directory macros/latex/base/lppl.txt; either
+ % version 1 of the License, or (at your option) any later version.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% \input this file at the beginning of an ArabTeX input file running
+% under Plain TeX. This is an adaptation by Tom Koornwinder of
+% Jan Lodder's file arab.plain.tex, again modified by Klaus Lagally
+% 26.04.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\message { Plain TeX setup for ArabTeX, 26.04.2003}
+
+\ifx \LaTeX \undefined \else
+\errmessage {^^JThis loader does not work with LaTeX!
+ ^^JUse Plain TeX instead.^^J}
+\expandafter \endinput
+\fi
+
+\def \makeatletter {\catcode `\@ = 11 }
+\def \makeatother {\catcode `\@ = 12 }
+
+\let \typeout \message \let \protect \relax
+\let \em \it
+
+\font \xnash =xnsh14
+\font \nash =xnsh14
+\font \tennash =xnsh14 % add fonts as needed.
+\font \nashx =xnsh14
+\font \nashxi =xnsh14 scaled \magstephalf
+\font \nashxii =xnsh14 scaled \magstep1
+\font \nashxiv =xnsh14 scaled \magstep2
+\font \nashxvii =xnsh14 scaled \magstep3
+\font \nashxx =xnsh14 scaled \magstep4
+\font \nashxxv =xnsh14 scaled \magstep5
+
+\font \xnashbf =xnsh14bf
+\font \nashbf =xnsh14bf
+\font \tennashbf=xnsh14bf % bold face fonts
+\font \nashbx =xnsh14bf
+\font \nashbxi =xnsh14bf scaled \magstephalf
+\font \nashbxii =xnsh14bf scaled \magstep1
+\font \nashbxiv =xnsh14bf scaled \magstep2
+\font \nashbxvii=xnsh14bf scaled \magstep3
+\font \nashbxx =xnsh14bf scaled \magstep4
+\font \nashbxxv =xnsh14bf scaled \magstep5
+
+\font \yorn =yarborn % simple ornaments by Y. Haralambous
+
+\def \pnash {\tennash } \def \pnashbf {\tennashbf }
+\def \nash {\protect\pnash } \def \nashbf {\protect\pnashbf }
+
+\def \strut {\vrule height 2ex depth .8ex width 0pt}
+
+\makeatletter
+
+\newif \if@ignore % ignore spaces after environment?
+\newif \if@endpe
+
+\def \begin #1{% small version without checks
+\begingroup
+ \long \def \end ##1{% local version for \end{arabtext} and \end \end
+ \ifx ##1\par \endarabtext \endgroup
+ \else \csname end\string ##1\endcsname \endgroup \fi
+ \if@ignore \global\@ignorefalse \expandafter \ignorespaces \fi }%
+\csname #1\endcsname }
+
+\expandafter \def \csname end\string\end\endcsname{% for \end \end
+\endgroup \end }
+
+{\catcode `\"=\active % simulate german.sty
+\gdef "#1{\ifx #1s\ss \else \"#1\fi }% umlaut and sharp s
+}
+
+\newdimen \marginparwidth \marginparwidth 72pt % adjust as required !
+\newdimen \marginparsep \marginparsep 10pt % adjust as required !
+
+\long \def \marginpar #1{% Plain TeX version
+ \dimen0 \baselineskip
+\setbox0 \vtop to \dimen0
+ {\hsize \marginparwidth \parskip 0pt \raggedright
+ \noindent \strut #1\vss }%
+\setbox0 \hbox to \hsize
+ {\hskip \hsize \hskip \marginparsep \box0 \hss }%
+\ifhmode \skip0 \lastskip \hskip 0pt \strut
+ \vadjust {\box0 \vskip -\dimen0 }%
+ \ifdim \skip0 = 0pt \else \expandafter \ignorespaces \fi
+\else \dimen2 \prevdepth \nointerlineskip \box0
+ \vskip -\dimen0 \prevdepth \dimen2
+\fi }
+
+\def \verb #1{% simple verbatim routine
+\def \endverb ##1#1{\a@@verb {##1}}\endverb }
+
+\def \\{\hfill \break } % utilities
+
+\def \newpage {\vfill \eject }
+
+\def \today {\number\day.\number\month.\number\year }
+
+\let \@@input \input
+\def \input #1 {\@@input #1 }
+\def \UsePackage #1{\input {#1.sty}}
+
+\let \document \relax \let \enddocument \end
+\let \a@enddocument \end
+
+\input arabtex.sty % here goes
+\a@ident {arabtex.tex} {3.11 Plain TeX loader for ArabTeX} {26.04.2003}
+
+\def \end {% report the configuration
+{\arab@stat \newlinechar `$ \wlog {\arabtexconfig $}}\a@enddocument }
+
+\makeatother
+\setarab
+
+\tracingstats=1
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/arabtoks.sty b/language/arabic/arabtex/texinput/arabtoks.sty
new file mode 100644
index 0000000000..9c1d4f9ca3
--- /dev/null
+++ b/language/arabic/arabtex/texinput/arabtoks.sty
@@ -0,0 +1,146 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% arabtoks.sty
+% ArabTeX
+% extra \CS token definitions for Arabic
+% Version 17.07.1999
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {arabtoks.sty} {3.09 ArabTeX CS token definitions } {17.07.1999}
+
+% extra \CS token definitions for Arabic
+% pattern: skeleton, modifier
+\def \a@a {\sk@@ , 1 } % reserved for vowel
+\def \a@b {\sk@b , 0 } % bah without dot
+\def \a@c {\sk@hh , 3 } % gim with three dots
+\def \a@d {\sk@d , 8 } % dal with ttah
+\def \a@e {\sk@@ , 2 } % reserved for vowel
+\def \a@f {\sk@f@s , 0 } % fah without dot
+\def \a@g {\sk@g@p , 0 } % gaf with loop
+\def \a@h {\sk@h@s ,11 } % urdu hah
+\def \a@i {\sk@@ , 3 } % reserved for vowel
+\def \a@j {\sk@h@s , 2 } % urdu hah with 2 dots ..
+\def \a@k {\sk@k@s , 0 } % kaf without mark
+\def \a@l {\sk@l ,12 } % kurdish lam
+\def \a@m {\sk@n@p , 1 } % nun with loop, 1 dot above
+\def \a@n {\sk@n , 0 } % nun without dot
+\def \a@o {\sk@@ , 4 } % reserved for vowel
+\def \a@p {\sk@ain , 3 } % `ain with three dots
+\def \a@q {\sk@r@p , 0 } % rah with loop
+\def \a@r {\sk@r , 8 } % rah with ttah
+\def \a@s {\sk@s ,10 } % sin with two dots
+\def \a@t {\sk@b , 8 } % tah with ttah
+\def \a@u {\sk@@ , 5 } % reserved for vowel
+\def \a@v {\sk@b@p , 2 } % tah with loop
+\def \a@w {\sk@w ,19 } % waw with damma (Uighur)
+\def \a@x {\sk@w , 1 } % waw with dot (Malay)
+\def \a@y {\sk@y , 6 } % yah with three dots below
+\def \a@z {\sk@r@s , 0 } % Pashto rah with two dots
+
+\def \a@A {\sk@@ , 6 } % reserved for vowel
+\def \a@B {\sk@h@s , 7 } % wavy hah with hamza
+\def \a@C {\sk@hh , 2 } % hhah with two dots above
+\def \a@D {\sk@d , 4 } % dal with dot below
+\def \a@E {\sk@y ,14 } % kurdish yah
+\def \a@F {\sk@f@s , 4 } % fah with dot below
+\def \a@G {\sk@hh ,15 } % hhah with two vert dots above
+\def \a@H {\sk@h@m , 0 } % hah marbuta !
+\def \a@I {\sk@@ , 7 } % reserved for vowel
+\def \a@J {\sk@g@ps , 0 } % gaf with ring and bar
+\def \a@K {\sk@k@s , 1 } % kaf with dot
+\def \a@L {\sk@k , 1 } % kaf with dot and mark
+\def \a@M {\sk@g@s , 3 } % gaf with 3 dots above
+\def \a@N {\sk@n@p , 0 } % nun with loop
+\def \a@O {\sk@@ , 8 } % reserved for vowel
+\def \a@P {\sk@ain ,10 } % ghain wit 1 dot above, 1 below
+\def \a@Q {\sk@f@s , 1 } % fah with one dot above
+\def \a@R {\sk@r ,13 } % kurdish rah
+\def \a@S {\sk@s , 2 } % sin with two dots
+\def \a@T {\sk@b ,15 } % tah with two vert. dots above
+\def \a@V {\sk@f@s , 6 } % fah with three dots below
+\def \a@U {\sk@@ , 9 } % reserved for vowel
+\def \a@W {\sk@w ,12 } % kurdish waw with dot
+\def \a@X {\sk@w , 3 } % waw with three dots
+\def \a@Y {\sk@y , 9 } % yah with two vert. dots below
+\def \a@Z {\sk@s ,15 } % sin with two dots vertical
+
+\def \a@aa {\sk@a , 0 } % alif as consonant (Uighur)
+\def \a@ab {\sk@b , 9 } % bah with 2 dots below :
+\def \a@ac {\sk@b ,17 } % bah with 4 dots above ::
+\def \a@ad {\sk@d , 2 } % dal with 2 dots above ..
+\def \a@ae {\sk@d ,16 } % dal with 3 dots above v
+\def \a@af {\sk@d , 5 } % dal with 2 dots below ..
+\def \a@ag {\sk@hh , 5 } % gim with 2 dots below ..
+\def \a@ah {\sk@hh , 9 } % gim with 2 dots below :
+%\def \a@ai {\sk@free, 0 } % unassigned
+\def \a@ai {\sk@Q , 0 } % isolated hamza}
+\def \a@aj {\sk@hh ,18 } % gim with 4 dots below ::
+\def \a@ak {\sk@g@s , 9 } % gaf with 2 dots below :
+\def \a@al {\sk@g@s , 2 } % gaf with 2 dots above ..
+\def \a@am {\sk@n , 3 } % nun with 3 dots ^
+\def \a@an {\sk@n , 8 } % nun with small ttah
+%\def \a@ao {\sk@free, 0 } % unassigned
+\def \a@ao {\sk@m@si, 0 } % Sindhi final mim
+\def \a@ap {\sk@b ,18 } % bah with 4 dots below ::
+\def \a@aq {\sk@f@s ,17 } % fah with 4 dots ::
+\def \a@ar {\sk@r ,17 } % rah with 4 dots ::
+\def \a@as {\sk@y@ps, 0 } % yah bari with ring
+\def \a@at {\sk@b ,16 } % bah with 3 dots above v
+%\def \a@au {\sk@free, 0 } % unassigned
+\def \a@au {\sk@free, 0 } % unassigned
+\def \a@au {\sk@w ,25 } % waw with roof
+\def \a@av {\sk@w , 2 } % waw with 2 dots
+\def \a@aw {\sk@w ,20 } % waw with alif (Uighur)
+\def \a@ax {\sk@k@w , 0 } % wide kAf
+\def \a@ay {\sk@y@p , 7 } % yah bari with hamza
+\def \a@az {\sk@y ,12 } % alif maqsura with bow
+
+\def \a@aA {\sk@d@p , 0 } % dal with loop
+\def \a@aB {\sk@d ,21 } % dal with ttah and dot below
+\def \a@aC {\sk@d , 3 } % dal with 3 dots above
+\def \a@aD {\sk@d ,17 } % dal with 4 dots above ::
+\def \a@aE {\sk@hh ,23 } % gim with 1 dot above, 3 below
+\def \a@aF {\sk@r ,12 } % rah with bow
+\def \a@aG {\sk@r , 4 } % rah with dot below
+\def \a@aH {\sk@r , 2 } % rah with 2 dots ..
+\def \a@aI {\sk@s ,24 } % sin with 3 dots above, 1 below
+\def \a@aJ {\sk@s , 6 } % sin with 3 dots below v
+\def \a@aK {\sk@s ,22 } % sin with 3 dots above, 3 below
+\def \a@aL {\sk@ss , 5 } % ssad with 2 dots below
+\def \a@aM {\sk@ss , 3 } % ssad with 3 dots above
+\def \a@aN {\sk@ss ,10 } % ssad with 1 dot above, 1 below
+\def \a@aO {\sk@tt , 3 } % ttah with 3 dots above
+\def \a@aP {\sk@f@s ,10 } % fah with 1 dot above, 1 below
+\def \a@aQ {\sk@q@s , 1 } % qaf with 1 dot above
+\def \a@aR {\sk@q@s , 3 } % qaf with 3 dots above
+\def \a@aS {\sk@k , 6 } % kaf with 3 dots below
+\def \a@aT {\sk@g@s , 5 } % gaf with 2 dots below ..
+\def \a@aU {\sk@w@r , 0 } % waw with ring
+\def \a@aV {\sk@w@b , 0 } % waw with bar
+\def \a@aW {\sk@l , 1 } % lam with 1 dot above
+\def \a@aX {\sk@l , 3 } % lam with 3 dots above
+\def \a@aY {\sk@l , 6 } % lam with 3 dots below
+\def \a@aZ {\sk@n ,10 } % nun with 1 dot above, 1 below
+
+\def \a@Za {\sk@@ ,10 } % reserved for vowel
+\def \a@Ze {\sk@@ ,11 } % reserved for vowel
+\def \a@Zi {\sk@@ ,12 } % reserved for vowel
+\def \a@Zo {\sk@@ ,13 } % reserved for vowel
+\def \a@Zu {\sk@@ ,14 } % reserved for vowel
+\def \a@Zz {\sktt , 1 } % zzah with variant transliteration
+\def \a@ZZ {\sk@@ , 0 } % illegal
+
+\def \a@ZA {\sk@@ ,15 } % reserved for vowel
+\def \a@ZE {\sk@@ ,16 } % reserved for vowel
+\def \a@ZI {\sk@@ ,17 } % reserved for vowel
+\def \a@ZO {\sk@@ ,18 } % reserved for vowel
+\def \a@ZU {\sk@@ ,19 } % reserved for vowel
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/texinput/ascan.sty b/language/arabic/arabtex/texinput/ascan.sty
new file mode 100644
index 0000000000..080aece86c
--- /dev/null
+++ b/language/arabic/arabtex/texinput/ascan.sty
@@ -0,0 +1,502 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% ascan.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% ascan.sty
+% ArabTeX
+% Standard Scanner
+% 22.08.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {ascan.sty} {3.11 standard ZDMG input encoding } {22.08.2003}
+
+\chardef \testatcode = \catcode`\@ \catcode`\@ = 11
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Arabic
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \seta@codes {% define standard \ArabTeX input coding
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@@ {@} % illegal character
+\def \sc@a {a}
+\def \sc@b {b}
+\def \sc@c {\ift@rk G\else \ifs@nd J\else
+ \ifm@lay J\else c\fi\fi\fi }
+\def \sc@d {d}
+\def \sc@e {e}
+\def \sc@f {\ifm@gh \n@xp \a@F \else f\fi }
+\def \sc@g {\ifm@lay \n@xp \a@K \else g\fi }
+\def \sc@h {h}
+\def \sc@i {i}
+\def \sc@j {\ift@rk j\else G\fi }
+\def \sc@k {\ifs@nd \n@xp \a@ax \else
+ \ifk@fs \n@xp \a@k \else k\fi\fi }
+\def \sc@l {l}
+\def \sc@m {m}
+\def \sc@n {n}
+\def \sc@o {o}
+\def \sc@p {\ifm@lay v\else p\fi }
+\def \sc@q {\ifm@gh \n@xp \a@Q \else q\fi }
+\def \sc@r {r}
+\def \sc@s {s}
+\def \sc@t {t}
+\def \sc@u {u}
+\def \sc@v {\ifm@gh \n@xp \a@V \else \ift@rk w\else
+ \ifm@lay \n@xp \a@x \else v\fi\fi\fi }
+\def \sc@w {\ifu@gh \n@xp \a@X \else w\fi }
+\def \sc@x {X}
+\def \sc@y {y}
+\def \sc@z {z}
+\def \sc@A {A}
+\def \sc@B {B}
+\def \sc@C {@}
+\def \sc@D {@}
+\def \sc@E {E}
+\def \sc@F {@}
+\def \sc@G {\n@xp \a@g } % Pashto gaf with ring
+\def \sc@H {\n@xp \a@H } % Heh marbouta
+\def \sc@I {I}
+\def \sc@J {@}
+\def \sc@K {K}
+\def \sc@L {@}
+\def \sc@M {M}
+\def \sc@N {N}
+\def \sc@O {O}
+\def \sc@P {@}
+\def \sc@Q {@}
+\def \sc@R {@}
+\def \sc@S {\n@xp \a@S }
+\def \sc@T {T}
+\def \sc@U {U}
+\def \sc@V {v}
+\def \sc@W {W}
+\def \sc@X {@}
+\def \sc@Y {Y}
+\def \sc@Z {@}
+\a@digits = {0123456789}
+\a@paren = {()[]}
+\global\a@first = {.^_-'`~,|"=:\a@tok \lq \rq \cap \MIN \IN }
+\globaldefs=0 }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@@scan #1>{% standard scanner call: token sequence -> \a@tokens
+\iftest@scan \tracingmacros = 1
+\ifshow \else \a@verb #1>\fi\fi
+\global\def \a@rest {}\global\a@tokens = {}\sc@beg #1\@ \@@
+\iftest@scan \tracingmacros = 0 %
+\xpa \a@verb \xpa (\the\a@tokens )>\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+{\arab@codes % because of special characters
+
+\gdef \set@next #1{\def \next {#1}}
+
+\gdef \t@b@g #1{% start \ArabTeX scanner
+ \def \next {\sc@word {#1}}\def \sc@char {@}%
+\ifcat a\nxp #1\else % letter
+\apply \set@next \tocase #1\of
+{ \@{\sc@endscan } % finished
+ '{\t@rquote }
+ `{\t@lquote }
+\default {\sc@word {#1}}
+}\endcase
+\fi \next }
+
+\gdef \t@w@rd #1{% transform input into internal notation
+ \def \next {\sc@word }%
+\ifx #1\@\def \next {\sc@endscan }\else % finished
+\ifcat \nxp #1a%
+ \ifx #1a\def \next {\t@aa }\else % test for aa -> A
+ \ifx #1n\def \next {\t@nn }\else % test for ng, ny
+ \edef \sc@char {\csname sc@#1\endcsname }% letter
+ \ifx \sc@char \relax \def \sc@char {#1}% undef letter
+ \fi
+ \ifs@nd \edef \next {\nxp \t@asp {\sc@char }}\else \sc@put
+ \fi
+ \fi\fi \else % other character
+\ifcat \nxp #1\relax \def \next {\t@cs #1}\else % control sequence
+\ifx #1'\def \next {\t@hamza }\else % hamza
+ \def \sc@char {#1}%
+\apply \set@next \tocase #1\of
+{~\@ldtie{\t@tie }
+ .{\t@dot }
+ ,{\t@comma }
+ -{\t@minus }
+ `{\t@ain }
+ "{\t@dquote }
+ :={\t@colon }
+ ^{\t@up }
+ _{\t@down }
+ |{\t@bar }
+\default {\t@w@@rd {#1}}
+}\endcase
+\fi\fi\fi\fi \next }
+
+\gdef \t@w@@rd #1{% default branch
+\ifcat \nxp #1\nxp ~\def \next {\t@cs #1}% % active character
+\else \def \sc@char {\nxp #1}% % other character
+ \ifs@nd \edef \next {\nxp \t@asp {\sc@char }}%
+ \else \sc@put \def \next {\sc@word }%
+ \fi
+\fi \next }
+
+} % \arab@codes
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \set@char@next #1#2{\def \sc@char {#1}\def \next {#2}}
+
+\def \set@@c@n #1{\set@char@next #1}
+
+\def \t@cs #1{% control sequence within a word; push back
+\apply \set@@c@n \tocase #1\of
+{ \a@tok \MIN \IN \cap
+ \shadda \madda \sukun
+ \raphe \dagesh \mappiq \ldot \rdot \cdot
+ {{#1} {\csname t@\xpa\@gobble\string #1\endcsname }}
+ \maqqef {{B} {\sc@put \sc@word }}
+ \, {{"|} {\sc@put \sc@word }}
+ \lq {{`} {\sc@put \sc@word }}
+ \c@p {{\nxp \cap } {\sc@put \sc@word }}
+ \abbr {{'} {\sc@put \sc@word }}
+ \rq {{'} {\sc@put \sc@back }}
+\default {{#1} {\sc@back #1}}%
+}\endcase \next }
+
+\def \tdef #1{% define robust ArabTeX scanner command
+\def #1{\nxp #1}%
+\xpa\def \csname t@\xpa\@gobble\string #1\endcsname }
+
+\tdef \a@tok (#1){% direct substitution
+\global \a@tokens \xpa {\the\a@tokens #1}\sc@word }
+
+\tdef \MIN {\def \sc@char {\nxp\a@ao \nxp\a@Zi }\sc@put \sc@word }
+
+\tdef \IN {\def \sc@char {\nxp\a@ai \nxp\a@Zi }\sc@put \sc@word }
+
+\tdef \shadda {\sc@dep {\nxp \a@Ze }}
+\tdef \madda {\sc@dep {\nxp \a@ZE }}
+\tdef \sukun {\sc@dep {\nxp \a@e }}
+\tdef \raphe {\sc@dep {\nxp \a@Zo }}
+\tdef \dagesh {\sc@dep {\nxp \a@Zu }}
+\tdef \mappiq {\sc@dep {\nxp \a@Zu }}
+\tdef \ldot {\sc@dep {\nxp \a@Za }}
+\tdef \rdot {\sc@dep {\nxp \a@Ze }}
+
+\def \t@cdot {\sc@dep {\nxp \a@Zi }}
+\def \t@cap #1{\sc@word \c@p #1} % kill braces on #1
+
+\def \sc@@back #1\@ \@@ {% end scanning, push back into input
+\global\def \a@rest {#1}\global\let \test@token \test@rest }
+
+\def \sc@@endscan \@@ {\global\let \a@scan \a@@scan }
+
+\def \sc@dep #1{% deposit tokens and proceed
+\def \sc@char {#1}\sc@put \sc@word }
+
+\def \sc@put {% deposit a symbol % no group!
+\edef \temp {\global \nxp \a@tokens % \temp
+ {\the\a@tokens \sc@char }}\temp }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \t@rquote #1#2{% context '#1#2 , initial
+\ifh@mza \ifx #1\@ \def \sc@char {QQ}\sc@put % '>
+ \def \next {\sc@endscan #2}\else
+ \ifx #1'\ifx #2\@ \def \sc@char {'}\sc@put
+ \def \next {\sc@word #2}% ''>
+ \else \def \sc@char {QQ}\sc@put \def \sc@char {Q}%
+ \def \next {\sc@word '#2}% ''x
+ \fi
+ \else \def \sc@char {QQ}\sc@put \def \sc@char {Q}%
+ \def \next {\sc@word #1#2}% 'xy
+ \fi\fi
+\else \ifu@gh \def \sc@char {QY}\sc@put
+ \else \def \sc@char {Q}\sc@put
+ \fi \def \next {\sc@word #1#2}%
+\fi \next }
+
+\def \t@hamza #1{% context \sc@char ' #1
+\ifh@mza % not verbatim mode
+ \ifx #1'\let \next \t@hamza@ii \else
+ \ifcat -\sc@char \def \sc@char {QQ}\sc@put
+ \else \xpa\def \xpa\sc@char \xpa{\xpa Q\sc@char }\sc@put
+ \fi \def \sc@char {Q}\def \next {\sc@word #1}%
+ \fi
+\else % verbatim mode
+ \ifx #1'\def \sc@char {'}\sc@put \let \next \sc@word
+ \else \ifu@gh \def \sc@char {QY}\sc@put
+ \else \def \sc@char {Q}\sc@put
+ \fi \def \next {\sc@word #1}%
+ \fi
+\fi \next }
+
+\def \t@hamza@ii #1#2{% context \sc@char '' #1 #2
+\ifcat \nxp #1a%
+ \edef \sc@toks {\the\a@tokens Q\sc@char QQ}%
+ \global \a@tokens =\xpa {\sc@toks }\def \sc@char {Q}%
+\else
+\ifcat \nxp #2a%
+ \edef \sc@toks {\the\a@tokens Q\sc@char QQ}%
+ \global \a@tokens =\xpa {\sc@toks }\def \sc@char {Q}%
+\else \def \sc@char {'}\sc@put % right quote
+\fi\fi \sc@word #1#2}
+
+\def \t@dquote #1{% verbatim
+\ifx #1'\ifh@mza \def \sc@char {"QQ}\sc@put
+ \else \def \sc@char {"Q}\sc@put
+ \fi \def \sc@char {Q}\let \next \sc@word
+\else \def \sc@char {"}\sc@put \def \next {\sc@word #1}%
+\fi \next }
+
+\def \t@ain {% ` = `ain
+\def \sc@char {P}\sc@put \sc@word }
+
+\def \t@lquote #1#2{% context `#1#2 at the beginning of a word
+\ifx #1`\def \sc@char {`}\sc@put \def \next {\sc@word #2}% ``x
+\else \def \sc@char {P}\sc@put \def \next {\sc@word #1#2}% `xy
+\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \t@aa #1{% aa -> A
+\edef \@tempa {\sc@char }%
+\xpa\ifx \@tempa Q\def \next {\sc@word #1}\def \sc@char {a}\else
+\ifx #1a\def \sc@char {A}\def \next {\sc@word }\else
+ \edef \sc@char {\sc@a }\def \next {\sc@word #1}%
+\fi\fi \sc@put \next }
+
+\def \t@nn #1{% after n
+ \def \sc@char {n}\def \next {\sc@word }%
+\ifm@lay \ifx #1g\def \sc@char {\nxp \a@p }\else
+ \ifx #1y\def \sc@char {\nxp \a@am }\else
+ \def \next {\sc@word #1}%
+ \fi\fi
+\else \def \next {\sc@word #1}%
+\fi \sc@put \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \t@minus #1{% after -
+\ifx #1-\def \sc@char {B}\def \next {\sc@word }\else
+ \def \sc@char {-}\def \next {\sc@word #1}%
+\fi \sc@put \next }
+
+\def \t@bar #1{% after |
+\ifx #1|\def \next {\sc@word \,}\else
+ \def \sc@char {|}\sc@put \def \next {\sc@word #1}%
+\fi \next }
+
+\def \set@char #1{\def \sc@char {#1}}
+
+\def \t@tail #1#2{% default exit
+\ifx \sc@char \empty \set@char {#1}\def \next {\sc@put \sc@word #2}%
+\else \def \next {\edef \temp {\nxp \t@asp {\sc@char }}\temp }%
+\fi \next }
+
+\def \t@dot #1{% after .
+\apply \set@char \tocase #1\of
+{ a{\ifk@sh \nxp \a@Za \else \nxp \a@A \fi }
+ b{\nxp \a@b }
+ c{c}
+ d{D}
+ e{\nxp \a@I }
+ f{\nxp \a@f }
+ g{R}
+ h{H}
+ i{\nxp \a@e }
+ k{\ift@rk q\else \nxp \a@k \fi }
+ l{\nxp \a@l }
+ n{\ifp@sht \nxp \a@m \else
+ \ifs@nd \nxp \a@an \else \nxp \a@n \fi\fi }
+ o{\ifk@sh \nxp \a@Zo \else \nxp \a@O \fi }
+ p{\nxp \a@f }
+ r{\ifs@nd \nxp \a@ar \else \nxp \a@R \fi }
+ s{S}
+ t{V}
+ u{\ifk@sh \nxp \a@Zu \else \nxp \a@U \fi }
+ v{\nxp \a@b }
+ y{\nxp \a@ZI }
+ z{Z}
+ A{\nxp \a@ZA }
+ O{\nxp \a@ZO }
+ U{\nxp \a@ZU }
+ Z{\nxp \a@Zz }
+ T{Y}
+}\endcase \t@tail .#1}
+
+\def \t@comma #1{% after ,
+\apply \set@char \tocase #1\of
+{ a{a\nxp \a@H }
+ A{\nxp \a@a \nxp \a@H }
+ c{\ift@rk J\else \nxp \a@c \fi }
+ d{\ifp@sht \nxp \a@aA \else
+ \ifs@nd \nxp \a@D \else \nxp \a@d \fi\fi }
+ e{e\nxp \a@H }
+ g{\nxp \a@L }
+ h{\nxp \a@h }
+ n{\ifs@nd \nxp \a@an \else \nxp \a@M \fi }
+ r{\ifp@sht \nxp \a@q \else
+ \ifs@nd \nxp \a@ar \else \nxp \a@r \fi\fi }
+ s{\ift@rk x\else \nxp \a@s \fi }
+ t{\ifp@sht \nxp \a@v \else
+ \ifs@nd \nxp \a@at \else \nxp \a@t \fi\fi }
+ z{\ift@rk D\else \nxp \a@z \fi }
+}\endcase \t@tail ,#1}
+
+\def \t@up #1{% after ^
+\apply \set@char \tocase #1\of
+{ c{J}
+ d{\nxp \a@D }
+ e{\nxp \a@E }
+ g{\ift@rk \nxp \a@p \else \ifk@rd R\else
+ \ifu@gh R\else G\fi\fi\fi }
+ l{\nxp \a@l }
+ n{\ifs@nd \nxp \a@ag \else \ifm@lay M\else K\fi\fi }
+ s{x}
+ u{U}
+ z{j}
+}\endcase \t@tail ^#1}
+
+\def \t@down #1{% after _
+\apply \set@char \tocase #1\of
+{ a{\nxp \a@a }
+ A{Y}
+ d{F}
+ e{\nxp \a@E }
+ h{X}
+ i{\nxp \a@i }
+ k{R}
+ o{\nxp \a@o }
+ O{\nxp \a@O }
+ s{C}
+ t{C}
+ u{\nxp \a@u }
+ U{\nxp \a@o }
+ z{F}
+}\endcase \t@tail @#1}
+
+\gdef \t@colon #1{% after = or :
+\apply \set@char \tocase #1\of
+{ a{\ifu@gh \nxp \a@H \else \nxp \a@A \fi }
+ b{\nxp \a@ab }
+ d{\nxp \a@ae }
+ e{\nxp \a@I }
+ g{\nxp \a@ak }
+ i{\nxp \a@I }
+ j{\nxp \a@ah }
+ I{\nxp \a@e }
+ n{\nxp \a@al }
+ o{\ifu@gh \nxp \a@W \else \nxp \a@O \fi }
+ s{\nxp \a@aJ }
+ O{\nxp \a@P }
+ t{V}
+ u{\ifu@gh \nxp \a@aw \else \nxp \a@U \fi }
+ U{\nxp \a@w }
+ z{D}
+}\endcase \t@tail :#1}
+
+\gdef \t@colon #1{% after = or :
+\apply \set@char \tocase #1\of
+{ a{\nxp \a@A }
+ b{\nxp \a@ab }
+ d{\nxp \a@ae }
+ e{\nxp \a@I }
+ g{\nxp \a@ak }
+ i{\nxp \a@I }
+ j{\nxp \a@ah }
+ I{\nxp \a@e }
+ n{\nxp \a@al }
+ o{\nxp \a@O }
+ s{\nxp \a@aJ }
+ O{\nxp \a@P }
+ t{V}
+ u{\nxp \a@U }
+ U{\nxp \a@w }
+ z{D}
+}\endcase \t@tail :#1}
+
+\def \t@tie #1{% after ~
+\apply \set@char \tocase #1\of
+{ l{\nxp \a@l }
+ g{\nxp \a@p }
+ n{\ifs@nd \nxp \a@ag \else \ifm@lay M\else K\fi\fi }
+}\endcase \t@tail ^#1}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \t@asp #1#2{% test for hah
+\ifs@nd \ifx #2h\def \next {\t@@asp {#1}}%
+ \else \def \next {\sc@put \sc@word #2}%
+ \fi
+\else \def \next {\sc@put \sc@word #2}%
+\fi \next }
+
+\def \t@@asp #1{% test for aspiration
+\apply \set@char \tocase #1\of
+{ b{\nxp \a@ap }
+ c{J}
+ d{\nxp \a@ad }
+ p{\nxp \a@aq }
+ k{\ifs@nd \nxp \a@k \else X\fi }
+ t{\nxp \a@ac }
+ J{\nxp \a@aj }
+ \a@D{\nxp \a@af }
+ \a@at{\nxp \a@T }
+ \a@ax{\nxp \a@k }
+}\endcase
+\ifx \empty \sc@char \def \sc@char {\nxp #1}\def \next {\sc@word h}%
+\else \def \next {\sc@word }%
+\fi \sc@put \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% preparations for additional scanners
+\def \setcode #1{% switch the input encoding
+\lowercase {\def \sc@code {#1}%
+\ifx \sc@code \sc@oldcode \else
+\begingroup \def \sc@lookup ##1#1##2##3\@@ {\endgroup ##2}%
+\xpa \sc@lookup \sc@table #1\sc@default \@@ \fi }%
+\let \sc@oldcode \sc@code }
+
+\pdef \stdcode #1{% prepare temp switch to standard
+\let \a@oldcode \sc@code \sc@standard \test@token #1 \@stdcode }
+
+\def \a@c@@stdcode {\xpa\setcode\xpa{\a@oldcode }}
+
+\all@w@ne \stdcode
+\xpa \all@w@ne \csname stdcode \endcsname
+
+\def \sc@table {% table of code names
+standard\sc@standard arabtex\sc@standard }
+
+\def \sc@restore {% restore scanner defaults
+\let \vocalize \v@calize \let \fullvocalize \fullv@calize
+\let \sc@beg \t@b@g \let \sc@word \t@w@rd
+\let \sc@back \sc@@back \let \sc@endscan \sc@@endscan
+\let \a@scan \a@@scan \seta@codes
+\let \arab@codes \a@arab@codes
+\let \unarab@codes \a@unarab@codes
+}
+
+\def \sc@standard {\sc@restore % standard encoding
+\ifx \sc@code \sc@oldcode \else
+\a@message {input encoding set to ArabTeX standard conventions.}\fi }
+
+\def \sc@default {\sc@restore % unknown encoding
+\a@message {unknown input encoding `\sc@code';
+ArabTeX standard encoding is assumed.}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@message {scanner for code `arabtex' installed.}
+\let \sc@oldcode \@ \setcode {standard} % default
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/asect.sty b/language/arabic/arabtex/texinput/asect.sty
new file mode 100644
index 0000000000..92fb08cd4a
--- /dev/null
+++ b/language/arabic/arabtex/texinput/asect.sty
@@ -0,0 +1,390 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% asect.sty
+% called by altxext.sty
+% 26.04.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {asect.sty} {3.11 section macros for Arabic} {26.04.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% sections
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\iffalse % LaTeX 2.09 routines
+
+\def\@xsect#1{\@tempskipa #1\relax
+\ifdim \@tempskipa > \z@
+ \par \nobreak
+ \vskip\@tempskipa
+ \@afterheading
+\else \global\@nobreakfalse \global\@noskipsectrue
+ \everypar
+ {\if@noskipsec \global\@noskipsecfalse
+ \clubpenalty\@M \hskip -\parindent
+ \begingroup \@svsechd
+ \endgroup
+ \unskip \hskip -#1\relax % relax added 14 Jan 91
+ \else \clubpenalty \@clubpenalty
+ \everypar {}%
+ \fi}
+\fi \ignorespaces }
+
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+\ifnum #2 > \c@secnumdepth \let\@svsec \@empty
+\else \refstepcounter{#1}%
+ \edef\@svsec {\csname the#1\endcsname \hskip 1em}%
+\fi
+\@tempskipa #5\relax
+\ifdim \@tempskipa>\z@
+ \begingroup #6\relax
+ \@hangfrom {\hskip #3\relax \@svsec }%
+ {\interlinepenalty \@M #8\par}%
+ \endgroup
+ \csname #1mark\endcsname {#7}%
+ \addcontentsline {toc}{#1}%
+ {\ifnum #2>\c@secnumdepth
+ \else \protect\numberline {\csname the#1\endcsname}%
+ \fi #7}%
+\else \def\@svsechd
+ {#6\hskip #3\relax %% \relax added 2 May 90
+ \@svsec #8\csname #1mark\endcsname {#7}%
+ \addcontentsline {toc}{#1}%
+ {\ifnum #2>\c@secnumdepth
+ \else \protect\numberline {\csname the#1\endcsname}%
+ \fi #7}}%
+\fi \@xsect{#5}}
+
+\def\@ssect#1#2#3#4#5{\@tempskipa #3\relax
+\ifdim \@tempskipa > \z@
+ \begingroup #4%
+ \@hangfrom {\hskip #1}%
+ {\interlinepenalty \@M #5\par}%
+ \endgroup
+\else \def\@svsechd {#4\hskip #1\relax #5}%
+\fi \@xsect{#3}}
+
+\def\@startsection#1#2#3#4#5#6{\if@noskipsec \leavevmode \fi
+\par \@tempskipa #4\relax
+\@afterindenttrue
+\ifdim \@tempskipa < \z@
+ \@tempskipa -\@tempskipa \@afterindentfalse
+\fi
+\if@nobreak \everypar{}%
+\else \addpenalty{\@secpenalty}\addvspace{\@tempskipa}%
+\fi
+\@ifstar {\@ssect{#3}{#4}{#5}{#6}}%
+ {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}
+
+\def\@afterheading{\global\@nobreaktrue
+\everypar {\if@nobreak \global\@nobreakfalse \clubpenalty \@M
+ \if@afterindent \else {\setbox\z@\lastbox}\fi
+ \else \clubpenalty \@clubpenalty \everypar{}%
+ \fi}}
+
+\fi % end of LaTeX 2.09 routines
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Arabic versions
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@startsection #1#2#3#4#5#6{% Arabic mode
+%\tracingmacros 1
+\if@noskipsec \leavea@vmode \fi
+\a@@par \@tempskipa #4\relax \@afterindenttrue
+\ifdim \@tempskipa <\z@ \@tempskipa -\@tempskipa \@afterindentfalse
+\fi
+\if@nobreak \a@@everypar {}%
+\else \addpenalty \@secpenalty \addvspace \@tempskipa
+\fi
+\@ifstar {\a@ssect {#3}{#4}{#5}{#6}}%
+ {\@dblarg {\a@sect {#1}{#2}{#3}{#4}{#5}{#6}}}}
+
+\def \a@ssect #1#2#3#4#5{% Arabic mode
+\@tempskipa #3\relax
+\ifdim \@tempskipa > \z@
+ \begingroup \let \end \a@@par
+ #4\relax \set@arabfont % style
+ \a@hangfrom {\hskip #1\relax }% indentation
+ \test@token #5 \end
+ \endgroup
+\else \def \@svsechd {\putwordb@x {#4\xpa\RL \xpa{#5}\hskip #1\relax }}%
+\fi \a@xsect{#3}}
+
+\def\a@sect #1#2#3#4#5#6[#7]#8{% Arabic mode
+\ifnum #2 > \c@secnumdepth \let \@svsec \@empty
+\else \refstepcounter{#1}%
+ \edef \@svsec {\hskip 1em \nxp\RL {\csname the#1\endcsname }}%
+\fi
+\@tempskipa #5\relax
+\ifdim \@tempskipa > \z@
+ \begingroup \let \end \a@@par
+ #6\relax \set@arabfont % style
+ \a@hangfrom {\hskip #3\relax \@svsec }% section number
+ \test@token #8 \end
+ \endgroup
+ \csname #1mark\endcsname {\RL {#7}}%
+ \addcontentsline {toc}{#1}%
+ {\ifnum #2 > \c@secnumdepth \else
+ \protect\numberline {\csname the#1\endcsname }\fi
+ \protect\RL {#7}}%
+\else \def \@svsechd % saved head, executed by \everypar
+ {\putwordb@x {#6\xpa\RL {#8}\@svsec \hskip #3\relax }%
+ \csname #1mark\endcsname {\RL {#7}}%
+ \addcontentsline {toc}{#1}%
+ {\ifnum #2>\c@secnumdepth \else
+ \protect\numberline {\csname the#1\endcsname}\fi
+ \protect\RL {#7}}}% \@svsechd
+\fi \a@xsect {#5}}
+
+\def\a@xsect #1{% Arabic mode
+\@tempskipa #1\relax
+\ifdim \@tempskipa>\z@ \a@@par \nobreak \vskip \@tempskipa
+ \a@afterheading
+\else \global\@nobreakfalse \global\@noskipsectrue
+\a@@everypar {\if@noskipsec \global\@noskipsecfalse \clubpenalty \@M
+ \putwordb@x {\hskip -\a@parindent }\@svsechd
+ \putwordb@x {\hskip -#1\relax }%
+ \else \clubpenalty \@clubpenalty \a@@everypar {}%
+ \fi}
+\fi \a@spacefalse
+%\tracingmacros 0
+\test@token }
+
+\def \a@afterheading {% Arabic mode
+\global\@nobreaktrue
+\a@@everypar {% when entering Arabic horizontal mode
+ \if@nobreak \global\@nobreakfalse \clubpenalty \@M
+ \if@afterindent \else \putwordb@x {\hskip -\a@parindent }%
+ \fi
+ \else \clubpenalty \@clubpenalty \a@@everypar{}%
+ \fi}}
+
+\def \a@hangfrom #1{% hanging indentation for rest of paragraph (group)
+\setbox0 \hbox {#1}\@tempdima \wd0
+\advance \leftskip \@tempdima \advance \a@limit -\@tempdima
+\putlineb@x {\rlap {\unhbox0 }}\a@spacefalse }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% for table of contents
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\iffalse % LaTeX 2.09 routines
+
+\def\contentsline#1{\csname l@#1\endcsname}
+
+% \@dottedtocline{LEVEL}{INDENT}{NUMWIDTH}{TITLE}{PAGE} :
+% Macro to produce a table of contents line with the following
+% parameters:
+% LEVEL : If LEVEL > \c@tocdepth, then no line produced.
+% INDENT : Total indentation from the left margin.
+% NUMWIDTH : Width of box for number if the TITLE has a
+% \numberline command.
+% As of 25 Jan 88, this is also the amount of extra indentation
+% added to second and later lines of a multiple line entry.
+% TITLE : Contents of entry.
+% PAGE : Page number.
+%
+% Uses the following parameters, which must be set by the document style.
+% They should be defined with \def's.
+% \@pnumwidth : Width of box in which page number is set.
+% \@tocrmarg : Right margin indentation for all but last line of
+% multiple-line entries.
+% \@dotsep : Separation between dots, in mu units. Should be \def'd to
+% a number like 2 or 1.7
+%
+
+%% RmS 91/09/29: added \reset@font for page number
+\def\@dottedtocline#1#2#3#4#5{\ifnum #1>\c@tocdepth \else
+ \vskip \z@ plus.2\p@
+ {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip
+ \parindent #2\relax\@afterindenttrue
+ \interlinepenalty\@M
+ \leavevmode
+ \@tempdima #3\relax \advance\leftskip \@tempdima \hbox{}\hskip -\leftskip
+ #4\nobreak\leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern \@dotsep
+ mu$}\hfill \nobreak
+ \hbox to\@pnumwidth{\hfil\reset@font\rm #5}\par}\fi}
+
+
+%%% Note: \nobreak's added 7 Jan 86 to prevent bad line break that
+%%% left the page number dangling by itself at left edge of a new line.
+%%%
+%%% Changed 25 Jan 88 to use \leftskip instead of \hangindent so
+%%% leaders of multiple-line contents entries would line up properly.
+
+% \numberline{NUMBER} : For use in a \contentsline command.
+% It puts NUMBER flushleft in a box of width \@tempdima
+% (Before 25 Jan 88 change, it also added \@tempdima to the hanging
+% indentation.)
+
+\def\numberline#1{\hbox to\@tempdima{#1\hfil}}
+
+\fi % end of LaTeX 2.09 routines
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Arabic versions of toc auxiliary routines
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@starttoc #1{\endarabtext
+\the\arabtext@hook \@starttoc {#1}\arabtext }
+
+\def \a@t@ble #1#2{% \tableofcontents etc.
+\a@c@section *{#1}\@mkboth {#1}{#1}\starttoc {#2}}
+
+\def \a@c@@mkboth #1#2{\@mkboth {\RL{#1}}{\RL{#2}}\test@token }
+
+\def \a@@lsection #1#2#3{% common part for \part and \section
+ \begin{arabtext}
+% \tocp@rs {\z@ }{\@tempdima }#3 #1 {\hfill \thep@geno {#2}}
+ \tocp@rs {\z@ }{\@tempdima }#3 #1 {#3\hfill \thep@geno {#2}}
+ \end{arabtext}}
+
+\def \a@dottedtocline #1#2#3#4#5{% for Arabic mode
+\ifnum #1>\c@tocdepth
+\else \vskip \z@ plus.2\p@
+ \begin{arabtext}
+ \tocp@rs {#2}{#3}#4 {\le@ders \thep@geno {#5}}
+ \end{arabtext}
+\fi }
+
+\def \a@c@tocp@rs #1#2{% change toc parameters
+\advance \leftskip #1\relax \advance \a@limit -#1\relax
+\advance \leftskip #2\relax \advance \a@limit -#2\relax
+\advance \rightskip \@tocrmarg \advance \a@limit -\@tocrmarg
+\@tempdima #2\relax % for \numberline, width of number
+\parfillskip \z@ \test@token }
+
+\def \a@c@le@ders {% for toc
+\setbox \wordb@x \hbox to \z@ {\leaders \hbox
+{$\m@th \mkern \@dotsep mu\hbox {.}\mkern \@dotsep mu$}\hfill }%
+\put@word \test@token }
+
+\def \a@c@thep@geno #1{% pagenumber of width \@pnumwidth
+\dimen@ \@pnumwidth \advance \dimen@ -\rightskip
+\a@c@spreadbox {\dimen@ }{\hss #1 \hspace {-\rightskip }}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\iffalse
+\def \a@numberline #1#2{% for arabic mode
+#2\hbox to\@tempdima {\hfil \<#1>}}
+
+\def \a@numberline #1\a@RL #2{% for arabic mode
+\RL {\spreadbox \@tempdima {#1 \hfill }#2}}
+\fi
+
+\def \a@c@numberline #1{% external Arabic command
+\a@c@hspace {-\@tempdima }\spreadbox \@tempdima {#1 \hfill }}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\at@arabtext {% modify LaTeX for Arabic mode
+ \let \numberline \a@numberline
+ \let \@dottedtocline \a@dottedtocline
+\if@twocolumn
+ \def\@pnumwidth{1.0em}
+ \def\@tocrmarg {1em}
+\fi
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@addcontentsline #1#2#3{% Arabic version
+\addcontentsline {#1}{#2}{\LR{#3}}\arab@tail }
+
+\let \a@c@abstract \a@c@quotation
+\let \endabstract \endquotation
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\iffalse % LaTeX 2.09 routines
+
+\def\@starttoc#1{\begingroup
+ \makeatletter
+ \@input{\jobname.#1}\if@filesw \expandafter\newwrite\csname tf@#1\endcsname
+ \immediate\openout \csname tf@#1\endcsname \jobname.#1\relax
+ \fi \global\@nobreakfalse \endgroup}
+
+\fi % end of LaTeX 2.09 routines
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\a@sect #1#2#3#4#5#6[#7]#8{% Arabic mode
+\ifnum #2 > \c@secnumdepth \let \@svsec \@empty
+\else \refstepcounter{#1}%
+ \edef \@svsec
+ {\nxp\RL {\nxp\stdcode {\csname the#1\endcsname }\hskip 1em}}%
+\fi
+\@tempskipa #5\relax
+\ifdim \@tempskipa > \z@
+ \begingroup \let \end \a@@par
+ #6\relax \set@arabfont % style
+ \a@hangfrom {\hskip #3\relax \@svsec }% section number
+ \test@token #8 \end
+ \endgroup
+ \csname #1mark\endcsname {\RL {#7}}%
+ \addcontentsline {toc}{#1}%
+ {\ifnum #2 > \c@secnumdepth \else \protect\numberline
+ {\protect\RL{\protect\stdcode{\csname the#1\endcsname }}}\fi
+ \protect\RL {#7}}%
+\else \def \@svsechd {% saved head, executed by \everypar
+ #6\relax \set@arabfont % style
+ \let \a@@end \end \def \end {\let \end \a@@end }%
+ \test@token \@svsec % saved section number
+ \hskip #3\relax #8 \end
+ \csname #1mark\endcsname {\RL {#7}}%
+ \addcontentsline {toc}{#1}%
+ {\ifnum #2>\c@secnumdepth \else \protect\numberline
+ {\protect\RL{\protect\stdcode{\csname the#1\endcsname }}}\fi
+ \protect\RL {#7}}}% \@svsechd
+\fi \a@xsect {#5}}
+
+\allowarab \@svsec
+
+\def\a@xsect #1{% Arabic mode
+\@tempskipa #1\relax
+\ifdim \@tempskipa>\z@ \a@@par \nobreak \vskip \@tempskipa
+ \a@afterheading
+\else \global\@nobreakfalse \global\@noskipsectrue
+\a@@everypar {\if@noskipsec \global\@noskipsecfalse \clubpenalty \@M
+ \putwordb@x {\hskip -\a@parindent }\@svsechd
+ \putwordb@x {\hskip -#1\relax }%
+ \else \clubpenalty \@clubpenalty \a@@everypar {}%
+ \fi}
+\fi \a@spacefalse \test@token }
+
+\def \a@c@numberline #1{% external Arabic command
+\a@c@hspace {-\@tempdima }\spreadbox \@tempdima {#1 \hfill }}
+
+\def \a@@lsection #1#2#3{% Text, Pageno, Font
+% common part for \part and \section
+ \begin{arabtext}
+ #3\tocp@rs {\z@ }{\@tempdima }#1 \hfill \thep@geno {#2}
+ \end{arabtext}}
+
+\def \a@dottedtocline #1#2#3#4#5{% Level, Indent, Numwidth, Text, Pageno
+% for Arabic mode
+\ifnum #1>\c@tocdepth
+\else \vskip \z@ plus.2\p@
+ \begin{arabtext}
+ \tocp@rs {#2}{#3}#4 {\le@ders \thep@geno {#5}}
+ \end{arabtext}
+\fi }
+
+\def \a@c@tocp@rs #1#2{% Indent, Numwidth
+% change toc parameters
+\leftskip #1\relax \advance \leftskip #2\relax
+\advance \rightskip \@tocrmarg
+\@tempdima #2\relax % for \numberline, width of number
+\a@parindent \z@ \parfillskip \z@ \test@token }
+
+\at@arabtext {% modify LaTeX for Arabic mode
+ \let \numberline \a@numberline
+ \let \@dottedtocline \a@dottedtocline
+}
+
+\c@secnumdepth \c@tocdepth % for test TOC
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/asize10.clo b/language/arabic/arabtex/texinput/asize10.clo
new file mode 100644
index 0000000000..60d66fdc74
--- /dev/null
+++ b/language/arabic/arabtex/texinput/asize10.clo
@@ -0,0 +1,40 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% This is ASIZE10.CLO in text format
+% size dependent corrections for arabart.cls and size10.clo
+% for use with ArabTeX Version 3.04
+% 29.11.1995
+%
+% Copyright (C) 1995 by Klaus Lagally
+%
+% reusing art12.sty of 14 Jan 1992
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ProvidesFile {asize10.clo}[1995/11/29 v1.00 10pt parameters for arabart]
+
+% ****************************************
+% * PAGE LAYOUT *
+% ****************************************
+
+\columnsep 20pt
+\columnseprule .4pt
+\headheight 18pt
+
+% ****************************************
+% * LISTS *
+% ****************************************
+
+% presently not changed
+
+\iffalse
+\leftmargini 2.5em
+\leftmarginii 2.2em % > \labelsep + width of '(m)'
+\leftmarginiii 1.87em % > \labelsep + width of 'vii.'
+\leftmarginiv 1.7em % > \labelsep + width of 'M.'
+\leftmarginv 1em
+\leftmarginvi 1em
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/asize11.clo b/language/arabic/arabtex/texinput/asize11.clo
new file mode 100644
index 0000000000..ae88f77e47
--- /dev/null
+++ b/language/arabic/arabtex/texinput/asize11.clo
@@ -0,0 +1,40 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% This is ASIZE11.CLO in text format
+% size dependent corrections for arabart.cls and size11.clo
+% for use with ArabTeX Version 3.04
+% 29.11.1995
+%
+% Copyright (C) 1995 by Klaus Lagally
+%
+% reusing art12.sty of 14 Jan 1992
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ProvidesFile {asize11.clo}[1995/11/29 v1.00 11pt parameters for arabart]
+
+% ****************************************
+% * PAGE LAYOUT *
+% ****************************************
+
+\columnsep 20pt
+\columnseprule .4pt
+\headheight 18pt
+
+% ****************************************
+% * LISTS *
+% ****************************************
+
+% presently not changed
+
+\iffalse
+\leftmargini 2.5em
+\leftmarginii 2.2em % > \labelsep + width of '(m)'
+\leftmarginiii 1.87em % > \labelsep + width of 'vii.'
+\leftmarginiv 1.7em % > \labelsep + width of 'M.'
+\leftmarginv 1em
+\leftmarginvi 1em
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/asize12.clo b/language/arabic/arabtex/texinput/asize12.clo
new file mode 100644
index 0000000000..7290057ddb
--- /dev/null
+++ b/language/arabic/arabtex/texinput/asize12.clo
@@ -0,0 +1,40 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% This is ASIZE12.CLO in text format
+% size dependent corrections for arabart.cls and size12.clo
+% for use with ArabTeX Version 3.04
+% 29.11.1995
+%
+% Copyright (C) 1995 by Klaus Lagally
+%
+% reusing art12.sty of 14 Jan 1992
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ProvidesFile {asize12.clo}[1995/11/29 v1.00 12pt parameters for arabart]
+
+% ****************************************
+% * PAGE LAYOUT *
+% ****************************************
+
+\columnsep 20pt
+\columnseprule .4pt
+\headheight 18pt
+
+% ****************************************
+% * LISTS *
+% ****************************************
+
+% presently not changed
+
+\iffalse
+\leftmargini 2.5em
+\leftmarginii 2.2em % > \labelsep + width of '(m)'
+\leftmarginiii 1.87em % > \labelsep + width of 'vii.'
+\leftmarginiv 1.7em % > \labelsep + width of 'M.'
+\leftmarginv 1em
+\leftmarginvi 1em
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/asmo449.sty b/language/arabic/arabtex/texinput/asmo449.sty
new file mode 100644
index 0000000000..7672e9c1c1
--- /dev/null
+++ b/language/arabic/arabtex/texinput/asmo449.sty
@@ -0,0 +1,122 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% asmo449.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% asmo449.sty
+% Scanner for ASMO 449 Code (ISO 9036) (table driven)
+% to install it, include it as a LaTeX package or style option "asmo449"
+% with Plain TeX, say "\input asmo449.sty"
+% to activate it, say "\setcode {asmo449}" or "\setcode {iso9036}"
+% 26.04.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \asmoatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \asmoatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {asmo449.sty} {3.11 ASMO449 input encoding (table)} {26.04.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \setasmo@codes {% activate and change some codes
+\a@digits = {0123456789}%
+\a@paren = {"'([}%
+\a@first = {}%
+}% end of dynamic definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \asmo@tbli {% ASMO re-encoding table
+\\AQ|\\BQA\\CQa\\DQw\\EQi\\FQy\\GA\\Hb\\IT%
+\\Jt\\KC\\LG\\MH\\NX\\Od\\PF\\Qr\\Rz%
+\\Ss\\Tx\\US\\VD\\WV\\XZ\\YP\\ZR%
+\\af\\bq\\ck\\dl\\em\\fn\\gh\\hw\\iY%
+\\jy\\k"aN\\l"uN\\m"iN\\n"a\\o"u\\p"i\\q@\\r""%
+\\s@\\t@\\u@\\v@\\w@\\x@\\y@\\z@\\`B\\@@}
+
+\def \asmo@tblii {% shadda + harakaat
+\\q\\sk\\tl\\um\\vn\\wo\\xp}
+
+\def \asmo@tbliii {% medial special characters
+\\\@\sc@endscan\\-\asmo@minus\\"\asmo@rquote}
+
+\def \asmo@tbliv {% initial special characters
+\\\@\sc@endscan\\G\asmo@alif\\"\asmo@lquote\\'\asmo@lquote}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newif \ifa@quote
+
+\def \asmo@beg #1#2{% start ASMO 449 scanner
+ \h@mzafalse \iz@fetfalse \novocalize % because of explicit quoting
+ \@ssimfalse
+ \def \next {\asmo@word #1#2}%
+ \def \l@@kup ##1\\#1##2\\##3\@@ {% look for special chars
+ \ifx *##2\relax\xpa\xpa\xpa\iffalse\fi\fi % not found; else
+ \def \next {##2#2}}%
+\iftrue \xpa \l@@kup \asmo@tbliv \\#1*\\\@@ \else
+\ifx #1/\global \a@tokens ={#1}\def \next {\asmo@word #2}% /x
+\fi\fi \next }
+
+{\catcode `\^ 7 \catcode `\^^M=13
+\gdef \asmo@word #1#2{% transform input into internal notation
+ \def \l@@kup ##1\\#1##2\\##3\@@ {% look for special chars
+ \ifx *##2\relax\xpa\xpa\xpa\iffalse\fi\fi %
+ \def \next {##2#2}}%
+\iftrue \xpa \l@@kup \asmo@tbliii \\#1*\\\@@ \else %
+\ifx #1/\def \next {\sc@back #1#2}\else %
+\if \nxp ^^M\nxp #1\def \next {\asmo@par #2}\else %
+\ifx #1#2\def \next {\asmo@word #1-#2}\else %
+ \def \l@@kup ##1\\#1##2\\##3\@@ {% reencode char
+ \def \sc@char {##2}}%
+ \xpa \l@@kup \asmo@tbli \\#1\nxp #1\\\@@ % reencode
+ \sc@put %
+ \def \l@@kup ##1\\#2##2\\##3\@@ {% look for shadda variants
+ \ifx *##2\relax\def \next {\asmo@word #2}%
+ \else \def \next {\asmo@word #1##2}\fi }%
+ \xpa \l@@kup \asmo@tblii \\#2*\\\@@ % double 1st char
+\fi\fi\fi\fi \next }%
+} % catcode 13
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \asmo@alif {% alif at the beginning of a word
+\def \sc@char {a}\sc@put \asmo@word }
+
+\def \asmo@minus {% hyphen between words
+\def \sc@char {-}\sc@put \asmo@beg }
+
+\def \asmo@lquote {% left quote
+\ifa@quote \def \sc@char {'}\global\a@quotefalse
+\else \def \sc@char {`}\global\a@quotetrue
+\fi
+\sc@put \asmo@beg }
+
+\def \asmo@rquote {% right quote
+\global\a@quotefalse
+\def \sc@char {'}\sc@put \asmo@word }
+
+\def \asmo@par #1\@ \@@ {% new line, push back the rest
+\sc@back \\#1\@ \@@ }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \set@asmo {% select the ASMO 449 scanner
+\let \sc@beg \asmo@beg \let \sc@word \asmo@word
+\let \sc@back \sc@@back \let \sc@endscan \sc@@endscan
+\global\let \a@scan \a@@scan \setasmo@codes \a@quotefalse
+\a@message {input encoding set to ASMO 449 (ISO 9036) conventions}}
+
+\xpa \def \xpa \sc@table \xpa {\sc@table % add the ASMO449 encoding
+asmo449\set@asmo iso9036\set@asmo }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@message {scanner for code ASMO 449 (ISO 9036) installed.}
+
+\catcode `\@ = \asmoatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/asmo449a.sty b/language/arabic/arabtex/texinput/asmo449a.sty
new file mode 100644
index 0000000000..02607dd887
--- /dev/null
+++ b/language/arabic/arabtex/texinput/asmo449a.sty
@@ -0,0 +1,126 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% asmo449.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% asmo449.sty
+% Scanner for ASMO 449 Code (ISO 9036) (long version)
+% to install it, include it as a LaTeX package or style option "asmo449"
+% with Plain TeX, say "\input asmo449.sty"
+% to activate it, say "\setcode {asmo449}" or "\setcode {iso9036}"
+% 11.04.1997
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \asmoatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \asmoatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {asmo449.sty} {3.05 ASMO449 input encoding (long)} {11.04.1997}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Arabic
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \setasmo@codes {% activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@A {Q|} \def \sc@B {QA} \def \sc@C {Qa} \def \sc@D {Qw}
+\def \sc@E {Qi} \def \sc@F {Qy} \def \sc@G {A} \def \sc@H {b}
+\def \sc@I {T} \def \sc@J {t} \def \sc@K {C} \def \sc@L {G}
+\def \sc@M {H} \def \sc@N {X} \def \sc@O {d} \def \sc@P {F}
+\def \sc@Q {r} \def \sc@R {z} \def \sc@S {s} \def \sc@T {x}
+\def \sc@U {S} \def \sc@V {D} \def \sc@W {V} \def \sc@X {Z}
+\def \sc@Y {P} \def \sc@Z {R}
+\def \sc@a {f} \def \sc@b {q} \def \sc@c {k} \def \sc@d {l}
+\def \sc@e {m} \def \sc@f {n} \def \sc@g {h} \def \sc@h {w}
+\def \sc@i {Y} \def \sc@j {y} \def \sc@k {"aN} \def \sc@l {"uN}
+\def \sc@m {"iN} \def \sc@n {"a} \def \sc@o {"u} \def \sc@p {"i}
+\def \sc@q {@} \def \sc@r {""} \def \sc@s {@} \def \sc@t {@}
+\def \sc@u {@} \def \sc@v {@} \def \sc@w {@} \def \sc@x {@}
+\def \sc@y {@} \def \sc@z {@} \def \sc@@ {@}
+\a@digits = {0123456789} \a@paren = {"'([}
+\a@first = {}
+\globaldefs=0 }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newif \ifa@quote
+
+\def \asmo@beg #1#2{% start ASMO 449 scanner
+\h@mzafalse \iz@fetfalse \novocalize % because of explicit quoting
+ \def \next {\asmo@word #1#2}%
+\ifx #1\@ \def \next {\sc@endscan #2}\else % finished
+\ifx #1G\def \next {\asmo@alif #2}\else
+\ifx #1"\def \next {\asmo@lquote #2}\else
+\ifx #1/\global \a@tokens ={#1}\def \next {\asmo@word #2}% x>
+\fi\fi\fi\fi \next }
+
+{\catcode `\^ 7 \catcode `\^^M=13
+\gdef \asmo@word #1#2{% transform input into internal notation
+\ifx #1\@ \def \next {\sc@endscan #2}\else % finished
+\ifx #1-\def \next {\asmo@minus #2}\else %
+\ifx #1"\def \next {\asmo@rquote #2}\else %
+\ifx #1/\def \next {\sc@back #1#2}\else %
+\if \nxp ^^M\nxp #1\def \next {\asmo@par #2}\else % active character
+\ifx #1#2\def \next {\asmo@word #1-#2}\else %
+ \ifx #1`\def \sc@char {B}\else %
+ \ifcat a\nxp #1\edef \sc@char {\csname sc@#1\endcsname }%
+ \else \def \sc@char {\nxp #1}%
+ \fi \fi %
+ \sc@put %
+ \ifx #2q\def \next {\asmo@word #1}\else %
+ \ifx #2s\def \next {\asmo@word #1k}\else %
+ \ifx #2t\def \next {\asmo@word #1l}\else %
+ \ifx #2u\def \next {\asmo@word #1m}\else %
+ \ifx #2v\def \next {\asmo@word #1n}\else %
+ \ifx #2w\def \next {\asmo@word #1o}\else %
+ \ifx #2x\def \next {\asmo@word #1p}\else %
+ \def \next {\asmo@word #2}%
+ \fi\fi\fi\fi\fi\fi\fi %
+\fi\fi\fi\fi\fi\fi \next }%
+} % catcode 13
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \asmo@alif {% alif at the beginning of a word
+\def \sc@char {a}\sc@put \asmo@word }
+
+\def \asmo@minus {% hyphen between words
+\def \sc@char {-}\sc@put \asmo@beg }
+
+\def \asmo@lquote {% left quote
+\ifa@quote \def \sc@char {'}\global\a@quotefalse
+\else \def \sc@char {`}\global\a@quotetrue
+\fi
+\sc@put \asmo@beg }
+
+\def \asmo@rquote {% right quote
+\global\a@quotefalse
+\def \sc@char {'}\sc@put \asmo@word }
+
+\def \asmo@par #1\@ \@@ {% new line, push back the rest
+\sc@back \\#1\@ \@@ }
+
+\def \asmo@endscan \@@ {\global\let \a@scan \a@@scan }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \set@asmo {% select the ASMO 449 scanner
+\let \sc@beg \asmo@beg \let \sc@word \asmo@word
+\let \sc@back \sc@@back \let \sc@endscan \sc@@endscan
+\global\let \a@scan \a@@scan \setasmo@codes \a@quotefalse
+\message {input encoding set to ASMO 449 (ISO 9036) conventions}}
+
+\xpa \def \xpa \sc@table \xpa {\sc@table % add the ASMO449 encoding
+asmo449\set@asmo iso9036\set@asmo }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\message {scanner for code ASMO 449 (ISO 9036) installed.}
+
+\catcode `\@ = \asmoatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/atabg.sty b/language/arabic/arabtex/texinput/atabg.sty
new file mode 100644
index 0000000000..b2bd9f1b8c
--- /dev/null
+++ b/language/arabic/arabtex/texinput/atabg.sty
@@ -0,0 +1,129 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% atabg.sty
+% called by altxext.sty
+% 21.01.1997
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {atabg.sty} {3.05 LaTeX tabbing macros for Arabic} {21.01.1997}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@tabdef #1{\xpa\def \csname a@c@\string #1\endcsname }
+
+\def \a@c@tabbing {% tabbing in Arabic mode
+\a@tabdef >{\a@rtab \test@token }
+\a@tabdef ={\a@settab \test@token }
+\a@tabdef <{\@ltab \test@token }
+\a@tabdef +{\@tabplus \test@token }
+\a@tabdef -{\@tabminus \test@token }
+\a@tabdef `{\a@tabrj \test@token }
+\a@tabdef '{\a@tablab \test@token }
+\def \a@last@line {\let \next \a@tabcr }
+\let \endtabbing \a@endtabbing
+\a@@par \lineskip \z@skip
+\@hightab \@firsttab \global\@nxttabmar \@firsttab
+\dimen\@firsttab \@totalleftmargin \global\@tabpush \z@
+\global\@rjfieldfalse
+\trivlist \item\relax
+\if@minipage \else \vskip\parskip \fi
+\setbox\@tabfbox \hbox
+ {\rlap {\indent \hskip\@totalleftmargin \the\everypar }}%
+\def \@itemfudge {\box\@tabfbox }%
+\a@startline \test@token }
+
+\def \a@endtabbing {% end of Arabic tabbing environment
+\a@stopline \aftergroup \a@spacefalse
+\ifnum\@tabpush >\z@ \@badpoptabs \fi
+\endtrivlist }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@startline{% open new tabbing line
+\ifnum \@nxttabmar >\@hightab \@badtab \global\@nxttabmar \@hightab \fi
+\global\@curtabmar \@nxttabmar \global\@curtab \@curtabmar
+\global\setbox\@curline \hbox {}\a@startfield }
+
+\def \a@stopline {% deposit tabbing line
+\a@stopfield \a@spacefalse
+\if@rjfield \global\@rjfieldfalse
+ \@tempdima\@totalleftmargin \advance\@tempdima\linewidth
+ \putwordb@x {\hb@xt@ \@tempdima
+ {\box\@curfield \hfil \box\@curline
+ \hskip\dimen\@curtabmar \@itemfudge }}%
+\else \a@addfield \putwordb@x {\hbox
+ {\box\@curline \hskip\dimen\@curtabmar \@itemfudge }}%
+\fi \short@line }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@startfield {% new tabbing field
+\initlineb@x \putwordb@x {\color@endgroup }}
+
+\def \a@stopfield {% end of tabbing field
+\global\setbox\@curfield \hbox {\color@begingroup \unhbox\lineb@x }}
+
+\def \a@contfield {% continue tabbing field
+\setbox\lineb@x \box\@curfield
+\a@spacefalse \putwordb@x {\color@endgroup }}
+
+\def \a@addfield {% add field to current line
+\ifdim \wd\@curfield = \z@ \else
+\global\setbox\@curline \hbox
+ {\arab@space \unhbox\@curfield \unhbox\@curline }\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@tabcr {\a@stopline \@ifstar{\penalty \@M \a@xtabcr }\a@xtabcr }
+\def \a@xtabcr {\@ifnextchar[\a@itabcr {\a@startline \test@token }}
+\def \a@itabcr [#1]{\vskip #1\a@startline \test@token }
+
+\def \a@c@kill {\a@stopfield \a@startline \test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@rtab {% \> skip right
+\a@stopfield \a@addfield
+\ifnum \@curtab<\@hightab \global\advance\@curtab \@ne
+\else\@badtab\fi
+\@tempdima \dimen\@curtab
+\advance\@tempdima -\dimen\@curtabmar
+\advance\@tempdima -\wd\@curline
+\global\setbox\@curline \hbox {\hskip\@tempdima \unhbox\@curline }%
+\a@startfield }
+
+\def \a@settab {% \= set tab
+\a@stopfield \a@addfield
+\ifnum \@curtab <\@maxtab
+ \ifnum\@curtab =\@hightab \advance\@hightab \@ne \fi
+ \global\advance\@curtab \@ne
+\else \@latex@error{Tab overflow}\@ehd \fi
+\dimen\@curtab \dimen\@curtabmar \advance\dimen\@curtab \wd\@curline
+\a@startfield }
+
+\def \a@tabrj {% \` field at right margin
+\a@stopfield \a@addfield \global\@rjfieldtrue \a@startfield }
+
+\def \a@tablab {% \' field right adjusted to last tab
+\a@stopfield \dimen@ \wd\@curfield
+\global\setbox\@curline \hbox {\hskip\tabbingsep \box\@curfield
+ \hskip-\dimen@ \hskip-\tabbingsep \box\@curline }%
+\a@startfield }
+
+\def \a@c@pushtabs {% new level of tabs
+\a@stopfield \a@addfield \global\advance\@tabpush \@ne
+\begingroup \a@contfield \test@token }
+
+\def \a@c@poptabs {% return to previous level
+\a@stopfield \a@addfield
+\ifnum \@tabpush >\z@ \endgroup \global\advance\@tabpush \m@ne
+ \ifnum \@curtab >\@hightab \global\@curtab \@hightab \@badtab \fi
+\else \@badpoptabs \fi
+\a@contfield \test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/atrans.sty b/language/arabic/arabtex/texinput/atrans.sty
new file mode 100644
index 0000000000..4dc5fabc71
--- /dev/null
+++ b/language/arabic/arabtex/texinput/atrans.sty
@@ -0,0 +1,432 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% atrans.sty
+% transcription module for ArabTeX
+% ZDMG Transcription
+% Encyclopedia of Islam Transcription
+% Modern Turkish Transcription
+% Urdu Transcription
+% Uighuric Transcription
+% 14.06.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Additional Transcription Modes for Farsi:
+% Encyclopedia Iranica [Standard Farsi]
+% Farsi [Modified Encyclopedia Iranica]
+% Lazard [Philological: Gilbert Lazard, etc.]
+% (c) Adrian Rezus [adriaan@{sci,cs}.kun.nl]: Nijmegen, Nederland
+% 21.12.95
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \transatcode \undefined
+\chardef \transatcode = \catcode`\@ \catcode`\@ = 11
+\a@ident {atrans.sty} {3.11 generate the transliteration } {14.06.2003}
+\else \xpa \endinput
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\let \a@hyp \- \let \a@macron \=
+\let \a@acute \' \let \a@grave \`
+
+\gdef \a@trans #1>{% transcribe word
+\iftest@trans \tracingmacros=1
+\iftest@scan \else \a@verb (#1)>\fi\fi
+{\if@was \@vocaltrue \else \@vocalfalse \fi
+\let \- \a@hyp \let \= \a@macron
+\let \' \a@acute \let \` \a@grave \def \tr@act {-}%
+\tr@aword #1|||>>%
+\if@vocal \global \@wastrue \else \global \@wasfalse \fi }%
+\iftest@trans \tracingmacros=0 \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newif \if@vocal \newif \ifc@p
+
+\gdef \tr@@aword #1{% transcribe rest of word
+\let \tr@old \tr@act \def \tr@act {#1}%
+\case #1\of
+{ >{\@gobble }
+ \cap {\c@ptrue \tr@aword }
+% |"^\a@e{\tr@aword }
+ |"^{\tr@aword }
+ -{-\tr@aword }
+ XlEeQ{\csname tr@@\string #1\endcsname }
+ \a@a NUW{\setc@p #1\kill@alif }
+ P{\tr@P \tr@aword }
+ aiu{\tr@wasla #1}
+ \a@Ze{\xpa\tr@aword \tr@old }
+\default {\@vocalfalse
+ \ifcat \nxp #1-#1\else \setc@p #1%
+ \fi \tr@aword }
+}\endcase }
+
+\def \setc@p #1{% capitalize if needed
+\xpa\ifx \xpa\relax \csname tr@\string #1\endcsname \tr@@ \else
+\ifc@p \xxxpa\uppercase \xxpa{\csname tr@\string #1\endcsname }\c@pfalse
+\else \csname tr@\string #1\endcsname
+\fi\fi }
+
+\def \@gobble #1{}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \kill@alif #1{% delete alif or waw after N, U, W, _a
+\case #1\of
+{ aAIYU{\tr@aword }
+\default {\tr@aword #1}
+}\endcase }
+
+\gdef \tr@wasla #1{% initial vowel, Arabic
+\ifiz@fet \@vocalfalse \fi
+\ifu@gh \@vocalfalse \fi
+\ifh@mza \if@vocal '\else \setc@p #1\fi
+\else \setc@p #1\fi
+\@vocaltrue \tr@aword }
+
+\gdef \tr@vowel #1{% vowel
+\setc@p #1\@vocaltrue \tr@aword }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \sp@cw@w #1#2{% handle w after _h (Persian) specially
+\def \next {\tr@aword #2}\@vocalfalse
+\ifiz@fet \ifx #2w#1\let\next\tr@aword
+\fi\fi \next }
+
+\gdef \putw@w {\sp@cw@w w } % w after _h (Persian): normal
+
+\gdef \killw@w {\sp@cw@w {}} % w after _h (Persian): delete
+
+\gdef \superv@w {\sp@cw@w {$^v\!$}}% w after _h (Persian): super v
+
+\gdef \superw@w {\sp@cw@w {$^w\!$}}% w after _h (Persian): super w
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \tr@@l #1{% test assimilation after l
+\ifx #1-\def \next {\tr@@la }\else
+ \setc@p l\def \next {\tr@aword #1}%
+\fi \@vocalfalse \next }
+
+\gdef \tr@@la #1#2{% test assimilation after l-
+\case #1\of
+{ Q{\setc@p l-\tr@Q \tr@aword } % l - Q x -> l - '
+ #2{\tr@aword #1-#2} % l - x x -> x - x
+ \cap {\tr@@lb #2} % l - \cap x
+\default {\setc@p l-\tr@aword #1#2}
+}\endcase }
+
+\gdef \tr@@lb #1#2{% test assimilation after l-\cap
+\case #1\of
+{ #2{\tr@aword #1-\cap #2} % l - \cap x x -> x - \cap x
+\default {\setc@p l-\tr@aword \cap #1#2}
+}\endcase }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \x@s #1{\oalign{#1\crcr\hidewidth \sh@ft{34}% accent for _h
+ \vbox to -.2ex {\hbox{\char'25}\vss}\hidewidth}}
+
+\gdef \x@x #1{\oalign{#1\crcr\hidewidth \sh@ft{29}% accent for .s in Urdu
+ \vbox to.2ex{\hbox{\char'177}\vss}\hidewidth}}
+
+\def \ish@ft #1{\dimen\z@.00#1ex\multiply\dimen\z@\fontdimen1\font
+ \kern.0156\dimen\z@} % positive kern for slant
+
+\def \rsh@ft #1#2{\ish@ft{#1}#2\sh@ft{#1}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \tr@def #1#2{% define \tr@#1 as {#2}
+\xpa \gdef \csname tr@\string #1\endcsname {#2}}
+
+\def \tr@cap #1{\ifc@p \uppercase {#1}\else #1\fi }
+
+\def \tr@ng {\tr@cap ng} \def \tr@ny {\tr@cap ny}
+\def \tr@kh {\tr@cap kh} \def \tr@th {\tr@cap th}
+\def \tr@dh {\tr@cap dh} \def \tr@bh {\tr@cap bh}
+\def \tr@ph {\tr@cap ph} \def \tr@zh {\tr@cap zh}
+\def \tr@sh {\tr@cap sh} \def \tr@ch {\tr@cap ch}
+\def \tr@gh {\tr@cap gh} \def \tr@af {\tr@cap {\'d}h}
+\def \tr@ag {\tr@cap {\'t}h} \def \tr@aj {\tr@cap {\v{c}}h}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\gdef \tr@zdmg {% define character macros for transliteration
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\let \specw@w \killw@w % special handling of w after .h in Farsi
+\gdef \tr@@e ##1{% test for ee -> ey
+ \ifx ##1e\def \next {\setc@p e\tr@aword y}\else
+ \def \next {\setc@p e\tr@aword ##1}\fi \next}
+\gdef \tr@@E ##1{% test for Ee -> ey
+ \ifx ##1e\def \next {\setc@p e\tr@aword y}\else
+ \def \next {\setc@p E\tr@aword ##1}\fi \next}
+\gdef \tr@@Q ##1{\tr@Q \def \next {\tr@aword ##1}%
+ \ifh@mza \let \next \tr@aword \fi \next }
+\gdef \tr@@X {\setc@p X\specw@w }
+\gdef \tr@@ {{$\bullet $}}% substitute for illegal characters
+\gdef \tr@a {a\@vocaltrue }
+\gdef \tr@b {b} \gdef \tr@c {c} \gdef \tr@d {d}
+\gdef \tr@e {e\@vocaltrue }
+\gdef \tr@f {f} \gdef \tr@g {g} \gdef \tr@h {h}
+\gdef \tr@i {i\@vocaltrue }
+\gdef \tr@j {\v{z}} \gdef \tr@k {k} \gdef \tr@l {l}
+\gdef \tr@m {m} \gdef \tr@n {n}
+\gdef \tr@o {o\@vocaltrue }
+\gdef \tr@p {p} \gdef \tr@q {q} \gdef \tr@r {r}
+\gdef \tr@s {s} \gdef \tr@t {t}
+\gdef \tr@u {u\@vocaltrue }
+\gdef \tr@v {v} \gdef \tr@w {w} \gdef \tr@x {\v{s}}
+\gdef \tr@y {y} \gdef \tr@z {z}
+\gdef \tr@A {\=a\-\@vocaltrue } \gdef \tr@B {}
+\gdef \tr@C {\b{t}} \gdef \tr@D {\d{d}}
+\gdef \tr@E {\=e\-\@vocaltrue }
+\gdef \tr@F {\b{d}} \gdef \tr@G {\v{g}}
+\gdef \tr@H {\d{h}} \gdef \tr@I {\ifc@p\=I\else\=\i\fi\-\@vocaltrue }
+\gdef \tr@J {\v{c}} \gdef \tr@K {\~n}
+\gdef \tr@L {y} \gdef \tr@M {\tr@ny}
+\gdef \tr@N {n\@vocalfalse }
+\gdef \tr@O {\=o\-\@vocaltrue }
+\gdef \tr@P {\rsh@ft{07}{\ifc@p \raise .2ex \hbox {$\lhook $}\kern-.1em
+ \else \kern-.05em$\lhook$\kern-.05em\fi }\@vocalfalse }
+\gdef \tr@Q {\rsh@ft{07}{\ifc@p \raise .2ex \hbox {$\rhook $}\kern-.1em
+ \else \kern-.05em$\rhook$\kern-.05em\fi }\@vocalfalse }
+\gdef \tr@R {\.g}
+\gdef \tr@S {\d{s}} \gdef \tr@T {t}
+\gdef \tr@U {\=u\-\@vocaltrue }
+\gdef \tr@V {\d{t}}
+\gdef \tr@W {w\@vocalfalse }
+\gdef \tr@X {\x@s{h}}
+\gdef \tr@Y {\=a\-\@vocaltrue }
+\gdef \tr@Z {\d{z}}
+\tr@def \a@a {\=a\-\@vocaltrue }
+\tr@def \a@b {\d{b}} \tr@def \a@c {\'c} \tr@def \a@d {\'d}
+\tr@def \a@e {\'d} \tr@def \a@f {\d{f}} \tr@def \a@g {g}
+\tr@def \a@h {h} \tr@def \a@i {\ifc@p\=I\else\=\i\fi\-\@vocaltrue }
+\tr@def \a@j {\ifc@p\"I\else\"\i\fi\@vocaltrue }
+\tr@def \a@k {\ifs@nd \tr@kh\else k\fi }
+\tr@def \a@l {\~l} \tr@def \a@m {k} \tr@def \a@n {\d{n}}
+\tr@def \a@o {u\@vocaltrue } \tr@def \a@p {\tr@ng}
+\tr@def \a@q {\'r} \tr@def \a@r {\'r} \tr@def \a@s {\'s}
+\tr@def \a@t {\'t} \tr@def \a@u {\=u\-\@vocaltrue }
+\tr@def \a@v {\'t} \tr@def \a@w {{u}\@vocaltrue }
+\tr@def \a@x {v} \tr@def \a@y {y} \tr@def \a@z {\'z}
+\tr@def \a@A {e\@vocaltrue }
+\tr@def \a@B {\tr@@ } \tr@def \a@C {\'c} \tr@def \a@D {\'{d}}
+\tr@def \a@E {\ifk@rd\v{e}\else\={e}\fi\@vocaltrue }
+\tr@def \a@F {f} \tr@def \a@G {\'c} \tr@def \a@H {h}
+\tr@def \a@I {\ifc@p\"J\else\"\j\fi } \tr@def \a@J {\.g}
+\tr@def \a@K {\d{k}} \tr@def \a@L {k} \tr@def \a@M {k}
+\tr@def \a@N {\d{n}}
+\tr@def \a@O {o\@vocaltrue }
+\tr@def \a@P {\={u}\@vocaltrue } \tr@def \a@Q {q}
+\tr@def \a@R {\.r} \tr@def \a@S {\'s} \tr@def \a@T {\tr@ag}
+\tr@def \a@U {u\@vocaltrue }
+\tr@def \a@V {v} \tr@def \a@W {o}
+\tr@def \a@X {w} \tr@def \a@Y {\=e\-} \tr@def \a@Z {\'s}
+\tr@def \a@aa {a\@vocaltrue } % Uighuric alif
+\tr@def \a@ab {\x@x{b}} \tr@def \a@ac {\tr@th} \tr@def \a@ad {\tr@dh}
+\tr@def \a@ae {\x@x{d}} \tr@def \a@af {\tr@af} \tr@def \a@ag {\~{n}}
+\tr@def \a@ah {\"{\j}} \tr@def \a@aj {\v{c}h} \tr@def \a@ak {\x@x{g}}
+\tr@def \a@al {\x@x{n}} \tr@def \a@an {\'{n}} \tr@def \a@ap {\tr@bh}
+\tr@def \a@aq {\tr@ph} \tr@def \a@ar {\'{r}} \tr@def \a@at {\'{t}}
+\tr@def \a@au {w} % Uighuric waw with roof
+\tr@def \a@ax {k}
+\tr@def \a@aA {\'{d}}
+\tr@def \a@aJ {s} % sin with 3 dots below
+\tr@def \a@Zz {\d{\b{d}}} % .z, Palestinian, coded .Z
+\tr@def \a@aO {\d{\b{d}}} % .z, Palestinian, coded .Z, (for test only)
+\gdef \tr@aword {\tr@@aword }\global \tr@nstrue }% end \tr@zdmg
+}% catcodes
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\catcode `\~=10
+\gdef \tr@encislam {% define Enc. of Islam transliteration
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\tr@zdmg \let \@ub \underbar
+\let \specw@w \killw@w % special handling of w after .h in Farsi
+\def \tr@j {\@ub{\tr@zh}} \def \tr@x {\@ub{\tr@sh}}
+\def \tr@C {\@ub{\tr@th}} \def \tr@F {\@ub{\tr@dh}}
+\def \tr@G {j} \def \tr@J {\@ub{\tr@ch}}
+\def \tr@R {\@ub{\tr@gh}} \def \tr@X {\@ub{\tr@kh}}
+%\def \tr@q {\d{k}} % variant qaf; uncomment if required
+%\def \tr@P {$^c$} % variant `ain; uncomment if required
+\a@message {Encyclopedia~of~Islam~transliteration.}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\catcode `\~=10
+\gdef \tr@turk {% define character macros for modern Turkish
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\tr@zdmg
+\let \specw@w \putw@w % no special handling of w after .h in Farsi
+\gdef \tr@e {e\@vocaltrue } \gdef \tr@q {k}
+\gdef \tr@w {v} \gdef \tr@x {\c{s}}
+\gdef \tr@A {\^a\@vocaltrue } \gdef \tr@E {\^e\@vocaltrue }
+\gdef \tr@G {c} \gdef \tr@H {h}
+\gdef \tr@I {\^{\i}\@vocaltrue} \gdef \tr@J {\c{c}}
+\gdef \tr@K {n} \gdef \tr@O {\^o\@vocaltrue }
+\gdef \tr@P {\-} \gdef \tr@R {g}
+\gdef \tr@S {s} \gdef \tr@T {t}
+\gdef \tr@U {\^u\@vocaltrue \kill@alif }
+\gdef \tr@V {t} \gdef \tr@Z {z}
+\tr@def \a@j {\i\@vocaltrue }
+\tr@def \a@m {\u{g}} \tr@def \a@w {{\"u}\@vocaltrue }
+\tr@def \a@A {\"a\@vocaltrue } \tr@def \a@H {}
+\tr@def \a@I {{\i}\@vocaltrue } \tr@def \a@J {\u{g}}
+\tr@def \a@L {g} \tr@def \a@M {n}
+\tr@def \a@O {\"o\@vocaltrue }
+\tr@def \a@P {\"o\@vocaltrue } \tr@def \a@Q {q}
+\tr@def \a@U {\"u\@vocaltrue } \tr@def \a@V {v}
+\catcode `\ =10
+\a@message {modern~Turkish~transliteration.}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Specific definitions for Persian:
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\catcode `\~=10
+\gdef \tr@enciran {% Encyclopaedia Iranica transliteration
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\tr@zdmg % start with default and modify
+\let \specw@w \superv@w % special handling of w after .h in Farsi
+\gdef\tr@w{v\@vocalfalse} % EIran = Lazard <> ZDMG
+\gdef\tr@W{v\@vocalfalse} % EIran = Lazard <> ZDMG
+\gdef\tr@G{\v{\j}\@vocalfalse} % EIran = Lazard <> ZDMG
+\gdef\tr@D{\.{z}\@vocalfalse} % EIran = Lazard <> ZDMG
+\gdef\tr@C{\b{s}\@vocalfalse} % EIran <> Lazard <> ZDMG
+\gdef\tr@F{\b{z}\@vocalfalse} % EIran <> Lazard <> ZDMG
+\gdef\tr@R{\={g}\@vocalfalse} % EIran <> Lazard <> ZDMG
+\gdef\tr@X{\b{k}} % EIran <> Lazard <> ZDMG
+\tr@def\a@H{} % EIran = Lazard <> ZDMG
+\a@message {Encyclopaedia~Iranica~transliteration.}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\catcode `\~=10
+\gdef \tr@farsi {% Modified Encyclopaedia Iranica transliteration
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\tr@enciran % start with default and modify
+\let \specw@w \superv@w % special handling of w after .h in Farsi
+\gdef\tr@R{\.{g}\@vocalfalse} % ZDMG = Persian
+\gdef\tr@X{x} % Lazard = Persian
+\tr@def\a@H{$\hbar\!$} % Persian <> EIran = nil
+\a@message {Modified~Encyclopaedia~Iranica~transliteration.}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\gdef \tr@lazard {% Philological Farsi transliteration; cf., e.g.,
+ % Gilbert Lazard
+ % "La langue des plus anciens documents de la prose persane"
+ % (Paris: Cl. Klincksieck 1963).
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\tr@enciran % start with default and modify
+\let \specw@w \superv@w % special handling of w after .h in Farsi
+\gdef\tr@C{\b{s}\@vocalfalse} % Lazard <> EIran
+\gdef\tr@C{$\theta\!$\@vocalfalse} % Lazard <> EIran
+\gdef\tr@F{$\delta\!$\@vocalfalse} % Lazard <> EIran <> ZDMG
+\gdef\tr@R{$\gamma\!$\@vocalfalse} % Lazard <> EIran <> ZDMG
+\gdef\tr@X{x} % Lazard <> EIran <> ZDMG
+\a@message {Philological~Farsi~transliteration.}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\catcode `\~=10
+\gdef \tr@urdu {% define Urdu transliteration
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\tr@zdmg
+\let \specw@w \killw@w % special handling of w after .h in Farsi
+\gdef \tr@j {\.{z}} \gdef \tr@x {\'{s}} \gdef \tr@C {\x@x{s}}
+\gdef \tr@D {\b{z}} \gdef \tr@F {\d{z}} \gdef \tr@G {j}
+\gdef \tr@H {\b{h}} \gdef \tr@J {c} \gdef \tr@O {o\-\@vocaltrue}
+\gdef \tr@S {\b{s}} \gdef \tr@T {t} \gdef \tr@V {\x@x{t}}
+\gdef \tr@X {x} \gdef \tr@Z {\x@x{z}} \tr@def \a@d {\d{d}}
+\tr@def \a@r {\d{r}} \tr@def \a@t {\d{t}} \tr@def \a@H {}
+\a@message {Urdu~transliteration.}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\catcode `\~=10
+\gdef \tr@kash {% define Kashmiri transliteration
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\tr@zdmg \let \@ub \underbar
+\let \specw@w \putw@w % no special handling of w after .h
+\gdef \tr@j {ts} \gdef \tr@x {\'{s}} \gdef \tr@C {\b{s}}
+\gdef \tr@D {\x@x{z}} \gdef \tr@F {\b{z}} \gdef \tr@G {j}
+\gdef \tr@H {\d{h}} \gdef \tr@J {c} \gdef \tr@R {\@ub{\tr@gh}}
+\gdef \tr@S {\d{s}} \gdef \tr@T {t} \gdef \tr@V {\b{t}}
+\gdef \tr@X {\@ub{\tr@kh}} \gdef \tr@Z {\d{z}}
+\tr@def \a@d {\d{d}} \tr@def \a@r {\d{r}} \tr@def \a@t {\d{t}}
+\tr@def \a@Za {\d{a}} \tr@def \a@ZA {\d{\=a}}
+\tr@def \a@Zo {\d{o}} \tr@def \a@ZO {\d{\=o}}
+\tr@def \a@Zu {u'} \tr@def \a@ZU {\=u'} \tr@def \a@ZI {\.y}
+\a@message {Kashmiri~transliteration.}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\catcode `\~=10
+\gdef \tr@uigh {% define Uighuric transliteration
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\tr@zdmg
+\gdef \tr@a {a} \gdef \tr@e {e}
+\gdef \tr@i {i} \gdef \tr@j {j}
+\gdef \tr@o {o} \gdef \tr@u {u}
+\gdef \tr@G {\v{g}} \gdef \tr@X {x}
+\gdef \tr@Y {}
+\tr@def \a@A {\"a} \tr@def \a@O {\"o}
+\tr@def \a@U {\"u} \tr@def \a@X {v}
+\a@message {Uyghuric~transliteration.}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\catcode `\~=10
+\gdef \tr@uighe {% define Uighuric English transliteration
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\tr@zdmg \let \@ub \underbar
+\gdef \tr@a {a} \gdef \tr@e {e}
+\gdef \tr@i {i} \gdef \tr@j {\@ub{\tr@zh}}
+\gdef \tr@o {o} \gdef \tr@u {u}
+\gdef \tr@x {\@ub{\tr@sh}} \gdef \tr@G {j}
+\gdef \tr@J {\@ub{\tr@ch}} \gdef \tr@K {\@ub{\tr@ng}}
+\gdef \tr@R {\@ub{\tr@gh}} \gdef \tr@X {\@ub{\tr@kh}}
+\gdef \tr@Y {}
+\tr@def \a@A {\"a} \tr@def \a@O {\"o}
+\tr@def \a@U {\"u} \tr@def \a@X {v}
+\a@message {Uyghuric~English~transliteration.}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \settrans #1{% switch the transliteration
+\lowercase {\def \tr@code {#1}\begingroup
+\def \tr@lookup ##1#1##2##3\@@ {\endgroup ##2}%
+\xpa \tr@lookup \tr@table #1\tr@default \@@ }%
+\let \tr@oldcode \tr@code }
+
+\def \tr@table {% table of transliterations
+standard\tr@standard zdmg\tr@standard english\tr@encislam
+turk\tr@turk urdu\tr@urdu iranica\tr@enciran
+farsi\tr@farsi lazard\tr@lazard kashmiri\tr@kash
+uighur\tr@uigh uighure\tr@uighe }
+
+\def \tr@standard {% standard transliteration
+\ifx \tr@code \tr@oldcode \else \tr@zdmg
+\a@message {ZDMG transliteration.}\fi }
+
+\def \tr@default {% unknown transliteration
+\tr@zdmg \message {unknown transliteration `\tr@code'}%
+\a@message {ZDMG transliteration is assumed.}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\let \tr@oldcode \tr@code \settrans {zdmg} % default
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\catcode`\@ = \transatcode
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/awrite.sty b/language/arabic/arabtex/texinput/awrite.sty
new file mode 100644
index 0000000000..2e70ef96b4
--- /dev/null
+++ b/language/arabic/arabtex/texinput/awrite.sty
@@ -0,0 +1,397 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% awrite.sty
+% ArabTeX
+% basic contextual analysis
+% called in HMODE
+% Version 05.06.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {awrite.sty} {3.11 build output word } {05.06.2003}
+
+\UsePackage {xarbsymb} % character definitions
+\UsePackage {arabskel} % skeleton definitions
+\UsePackage {xarbskel}
+\UsePackage {aboxes} % deposit output boxes
+
+\UsePackage {arabtoks} % token definitions
+\UsePackage {arabchrs} % character macros
+
+% ACT = 1. char
+\newcount \act@cd \newcount \act@cls \newcount \act@mod
+\newcount \act@con \newcount \act@tie
+
+% CHR = 2. char
+\newcount \chr@cd \newcount \chr@cls \newcount \chr@mod
+\newcount \chr@con \newcount \chr@tie
+
+% SKL = 3. char
+\newcount \skl@cd \newcount \skl@cls \newcount \skl@mod
+\newcount \skl@con
+
+\newcount \red@mod \newcount \a@shp
+\newcount \a@max \newcount \a@min
+
+\newif \if@con \newif \if@mod@act \newif \if@high@act
+\newif \if@mod@chr \newif \if@tat \newif \if@tatl
+\newif \if@updia \newif \if@lodia \newif \ifa@sk
+\newif \ifa@min \newif \ifa@max
+
+\newdimen \a@min@dp \newdimen \a@dx \newdimen \a@dy
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newif \ifa@@write \a@@writetrue
+
+\def \a@@write #1>{% Arabic output
+\iftest@write \tracingmacros 1
+\iftest@parse \else \a@verb (#1 )>\fi\fi
+\a@write@hook
+\ifa@@write \arab@testfont \aw@beg #1>0+0*>0+0*>\fi
+\iftest@write \tracingmacros 0 \fi }
+
+\let \a@write \a@@write \let \a@write@hook \relax
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%em# := 25.4dx#; %ex# := 8dy#;
+
+{\catcode `p=12 \catcode `t=12 % see TeXbook, Appendix D
+\csname expandafter\endcsname \gdef
+\csname getfactor\endcsname #1pt{#1}}
+
+\def \arab@testfont {% diagnose font, look for vowels and ayin
+\edef \next {\the\font }%
+\ifx \next \a@font \else
+\iftest@font \a@message{Arabic font \next selected.}\fi
+\global\let \a@font \next \a@testfont \fi }
+
+\def \a@testfont {% diagnose font, set params
+\xdef \a@slant {\xpa\getfactor \the\fontdimen1\font }%
+\dimen@ 128\fontdimen7\font % assumes \fontdimen7 < 128 pt
+\divide \dimen@ \fontdimen6\font \multiply \dimen@ 512
+\xdef \a@skew {\xpa\getfactor \the\dimen@}}
+
+\def \a@norm {% start a new character group
+\global\@highfalse \global\a@min@dp \z@ \global\a@min \z@
+\global\a@max \z@ \a@disp \z@ \@high@actfalse \global\a@sktrue }
+
+\def \aw@init {% start word, get font parameters
+\a@norm \leavevmode \a@dx .04em \a@dy .125ex }
+
+\def \a@skew {0} \def \a@slant {0}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \aw@beg #1#2*#3#4*#5{% start output
+% c m * c m * c
+ \aw@init
+ \test@chr #1\def \next {\aw@end #1#2*#3#4*#5}%
+\ifx #1-\test@chr #3\chr@fam #3%
+ \def \next {\aw@mid #3#4*#5}%
+ \ifx #3>\ac@other #1#2*#3#4*#5<%
+ \fi \else
+\ifcat -\nxp #1\a@shift \test@chr #3%
+ \@confalse \ac@other #1#2*#3#4*#5<\else
+\fi\fi \next }
+
+\def \aw@beg #1#2*#3#4*#5{% start output
+% c m * c m * c
+\ifx #1>\let \next \relax \else
+ \aw@init
+ \test@chr #1\def \next {\aw@end #1#2*#3#4*#5}%
+\ifx #1-\test@chr #3\chr@fam #3%
+ \def \next {\aw@mid #3#4*#5}%
+ \ifx #3>\ac@other #1#2*#3#4*#5<%
+ \fi \else
+\ifcat -\nxp #1\a@shift \test@chr #3%
+ \@confalse \ac@other #1#2*#3#4*#5<\else
+\fi\fi\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \aw@end #1#2*#3#4*#5{% character is not joined to the left
+% c m * c m * c
+% ACT, CHR defined
+\ifx #1>\let \next \relax \else
+\if \AND{\isx #3|}{\is@end@char #5}\def \next {\aw@end #1#2*#5}%
+\else \def \next {\aw@end #3#4*#5}%
+ \a@shift \test@chr #3%
+ \if \AND{\iscat -{\nxp #3}}%
+ {\NOT {\is@end@char #5}}\@contrue
+ \fi
+ \ifnum \act@cd = \a@alif \def \next {\alif@lig #2*#3#4*#5}\else
+ \ifcat \nxp ~\nxp #1\else
+ \ifx #1-\chr@fam #3\else
+% \ifcat -\nxp #1\ac@other #1#2*#3#4*#5<\else
+ \ifcat -\nxp #1\@confalse \ac@other #1#2*#3#4*#5<\else
+ \ifnum \act@cd = \a@hamzc \@confalse \else
+ \ifnum \act@cd = \a@break \@confalse \else
+ \if@con \chr@fam #3%
+ \fi
+ \ifu@gh \@mod@acttrue
+ \ifnum \act@cd = \a@qaf \set@act\sk@q@s
+ \fi
+ \else \aw@endligs #1#2*#3#4*#5%
+ \fi
+ \fi\fi
+ \a@kern
+ \ifnum \act@cd = \a@waw \under@cut #2*\else
+ \ifnum \act@cls = \rah@cls \under@cut #2*\else
+ \ifnum \act@cd = \a@hah \a@kern
+ \fi\fi\fi
+ \put@end #2*#3#4*#5<%
+ \fi\fi\fi\fi
+\fi\fi \next }
+
+\def \alif@lig #1*#2#3*#4{% alif, test for ligature
+% m * c m * c
+\a@kern
+\chr@fam #2\global\@highfalse
+\ifx #2l\def \next {\lam@alif #1*#3*#4}\else
+ \gim@test #4% closed gim?
+ \kaf@test #2% kaf-alif ?
+ \aw@lower #4%
+ \put@end #1*#2#3*#4<%
+\fi \next }
+
+\def \lam@alif #1*#2*#3#4*#5{% ligature lam-alif
+% m * m * c m * c
+\global\@highfalse \a@shift \test@chr #3\chr@fam #3%
+\gim@test #5% closed gim?
+\ifu@gh \else \kaf@test #3\fi % kaf-lam ?
+\set@act\sk@l@a
+\if@con \lig@end #1*#2*\def \next {\aw@mid #3#4*#5}%
+ \else \lig@iso #1*#2*\def \next {\aw@end #3#4*#5}%
+\fi \next }
+
+\def \lig@iso #1*#2*{% isolated shape % m1 * m2 *
+\put@lig@skel 0\a@f@iso #1*#2*\a@norm }
+
+\def \lig@end #1*#2*{% final shape % m1 * m2 *
+\put@lig@skel 1\a@f@end #1*#2*}
+
+\def \aw@lower #1{% adjust vertical position
+% uses ACT, CHR, and #1
+\ifligs
+\ifnum \chr@cd = \a@hah
+ \ifx #1l\set@lowww@act \fi
+\fi
+\ifnum \chr@cls = 3 % gim etc
+ \a@test {#1}\xxpa \unp@ck@skl \skl@skel \relax
+% \ifnum \skl@cls = 0 \set@lowww@act \fi
+ \ifnum \skl@cls = 1 \set@lowww@act \fi
+ \ifnum \skl@cls = 2 \set@lowww@act \fi
+ \ifnum \skl@cls = 5 \set@lowww@act \fi
+\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \aw@mid #1#2*#3#4*#5{% character is joined to the left
+% c m * c m * c
+% ACT, CHR defined
+\ifx #1>\let \next \relax \else
+\if \AND{\isx #3|}{\is@end@char #5}\def \next {\aw@mid #1#2*#5}\else
+\ifx #1-\test@chr #3\chr@fam #3\def \next {\aw@mid #3#4*#5}\else
+ \a@shift \test@chr #3\chr@fam #3%
+\ifcat -\nxp #1\ac@other #1#2*#3#4*#5<%
+\else \if \AND{\iscat -{\nxp #3}}%
+ {\NOT {\is@end@char #5}}\@contrue
+ \fi
+ \ifu@gh \else
+ \aw@midligs #1#2*#3#5%
+ \fi
+ \put@mid #2*#3#4*#5<%
+ \if@con \else % initial shape
+ \ifnum \act@cls = \kaf@cls % kaf etc.
+ \xpa\if \xpa\is@in@list \chr@skel \sk@a \sk@l >\a@kern
+ \else \unkern \a@mkern
+ \fi
+ \fi\fi
+\fi\fi\fi\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \test@updia #1+#2*{% test for upper diacritic
+% m21 + m22 *
+\@updiafalse \@lodiafalse
+\global\red@mod #1 \relax
+\ifnum #1 > 9 \global\advance \red@mod -10 \fi
+\ifcase \red@mod
+ \relax\or \@updiatrue\or \@updiatrue\or \@updiatrue\or
+ \@updiatrue\or \@lodiatrue\or
+\fi
+\ifcase #2\relax
+ \relax\or \@updiatrue\or \@updiatrue\or \@lodiatrue\or
+ \@updiatrue\or \@updiatrue\or \@lodiatrue\or \@updiatrue\or
+ \@updiatrue\or \@updiatrue\or \@updiatrue\or \@lodiatrue\or
+ \@updiatrue\or
+\fi }
+
+\def \is@updia #1*{00% is there an upper diacritic ?
+\test@updia #1*\if@updia \else \xpa \setiffalse \fi }
+
+\def \is@lodia #1*{00% is there a lower diacritic ?
+\test@updia #1*\if@lodia \else \xpa \setiffalse \fi }
+
+\def \under@cut #1*{% if no upper diacritic % m2 *
+\ifdim \a@dp > .5ex \else % \if\is@updia #1*\else
+\unkern \a@mkern \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \put@end #1*#2<{% deposit non-joining character, set new state
+% m * c m * c <
+\if@con \ac@end #1*\def \next {\aw@mid #2}%
+ \else \ac@iso #1*\def \next {\aw@end #2}%
+\fi }
+
+\def \put@mid #1*#2<{% deposit joining character, set new state
+% m * c m * c <
+\if@con \ac@mid #1*\def \next {\aw@mid #2}%
+ \else \ac@beg #1*\def \next {\aw@end #2}%
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \ac@high #1{\raise.5ex\hbox{#1}}
+\def \ac@high #1{% raise punctuation
+\ifu@gh #1\else \raise.5ex\hbox{#1}\fi }
+
+% define CS names for special punctuation
+
+{\catcode`\$ 12 \gdef \a@dlr {$} % $
+\catcode `\# 12 \gdef \a@hsh {#} % #
+\catcode `\% 12 \gdef \a@pct {%}} % %
+{\catcode`\^ 12 \gdef \a@up {^} % ^
+\catcode `\_ 12 \gdef \a@dn {_} % _
+\catcode `\& 12 \gdef \a@amp {&} % &
+\catcode `\A 12 \gdef \a@dq {A} % "
+\catcode `\B 12 \gdef \f@sila {B} % ,
+\catcode `\C 12 \gdef \h@phen {C} % -
+\catcode `\D 12 \gdef \a@bar {D} % |
+\catcode `\E 12 \gdef \a@qt {E} % '
+\catcode `\F 12 \gdef \a@bsl {F} % \
+\catcode `\G 12 \gdef \a@lbc {G} % {
+\catcode `\H 12 \gdef \a@rbc {H} % }
+\catcode `\I 12 \gdef \a@ell {I} % ...
+\catcode `\J 12 \gdef \a@div {J} % :-
+\catcode `\K 12 \gdef \a@lab {K} % <
+\catcode `\L 12 \gdef \a@rab {L} % >
+\catcode `\M 12 \gdef \a@end {M} % --
+\catcode `\N 12 \gdef \a@emd {N} % ---
+\catcode `\O 12 \gdef \a@lq {O} % `
+\catcode `\P 12 \gdef \a@rq {P} % '
+
+\gdef \ac@other #1#2*#3<{% special punctuation mark
+% c * c m * c
+\case #1\of
+{ ){\ac@high {(}}
+ ({\ac@high {)}}
+ ]{\ac@high {[}}
+ [{\ac@high {]}}
+ `{\a@kern \ac@high {\char \a@lquotes }}
+ '{\ac@high {\char \a@rquotes }\a@kern }
+ ^{{\tt ^}}
+ _{{\tt _}}
+ &{{\tt \char`\&}}
+ A{{\tt "}}
+ B{{\rm \bf ,}}
+ C{\ac@high {-}}
+ D{{\tt \char`\|}}
+ E{{\tt \char'015}}
+ F{{\tt \char`\\}}
+ G{{\tt \char`\}}}
+ H{{\tt \char`\{}}
+ I{{\bf $\cdots$}}
+ J{{\bf $\div$}}
+ K{{\tt \char`\>}}
+ L{{\tt \char`\<}}
+ M{{\rm \bf \char'173}}
+ N{{\rm \bf \char'174}}
+ O{{\rm \bf `}}
+ P{{\rm \bf '}}
+% |{\char \a@break }
+ |{}
+ 4{\ac@high {\iff@rsn \char \a@f@iv \else 4\fi }\a@kern }
+ 5{\ac@high {\iff@rsn \char \a@f@v \else 5\fi }\a@kern }
+ 6{\ac@high {\iff@rsn \char \a@f@vi \else 6\fi }\a@kern }
+\default {\ac@high {#1}\a@kern }
+}\endcase
+\if@con \def \next {\aw@mid #3}%
+ \else \def \next {\aw@end #3}%
+\fi }
+%\def \next {\aw@end #3}}
+}% catcodes 12
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \ac@iso #1*{% isolated shape % m *
+\put@skel 0\a@f@iso #1*\a@norm }
+
+\def \ac@end #1*{% final shape % m *
+\put@skel 1\a@f@end #1*}
+
+\def \ac@mid #1*{% medial shape % m *
+\put@skel 2\a@f@mid #1*}
+
+\def \ac@beg #1*{% initial shape % m *
+\put@skel 3\a@f@beg #1*\a@norm }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@shift {% go to next position
+% ACT := CHR
+\let \act@skel \chr@skel \act@mod \chr@mod \get@act
+\act@tie \chr@tie
+\let \if@mod@act \if@mod@chr \@mod@chrfalse }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \test@chr #1{% get attributes of next character
+% set CHR := SKL := <#1>
+\a@test #1\chr@tie 0
+\let \chr@skel \skl@skel \chr@mod \skl@mod \get@chr
+\ifnum \chr@con = 0 \@confalse \else \@contrue \fi }
+
+\def \a@test #1{% get character attributes
+% set SKL := <#1>
+\set@skl \sk@def \skl@mod 0
+\ifcat \nxp #1a%
+ \xpa \ifx \csname tc@\string #1\endcsname \relax
+ \else \unp@ck@tc {#1}%
+ \fi \else
+\if \nxp #1\relax \unp@ck@cs {#1}\else
+\ifx #1-\set@skl \sk@B \else
+\ifx #1|\set@skl \sk@spc \else
+\fi\fi\fi\fi }
+
+\def \a@test #1{% get character attributes
+% set SKL := <#1>
+ \skl@mod 0
+\ifcat \nxp #1a%
+ \xpa \ifx \csname tc@\string #1\endcsname \relax
+ \set@skl \sk@def
+ \else \unp@ck@tc {#1}%
+ \fi \else
+\if \nxp #1\relax \unp@ck@cs {#1}\else
+\ifx #1-\set@skl \sk@B \else
+\ifx #1|\set@skl \sk@spc \else
+ \set@skl \sk@def
+\fi\fi\fi\fi }
+
+\def \unp@ck@cs #1{% evaluate token routine
+\xpa\unp@ck@token #1\relax }
+
+\def \unp@ck@tc #1{% evaluate letter description
+\xxpa\unp@ck@token \csname tc@\string #1\endcsname \relax }
+
+\def \unp@ck@token #1,#2\relax {% unpack letter description
+\def \skl@skel {#1}\skl@mod #2}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/bhs.sty b/language/arabic/arabtex/texinput/bhs.sty
new file mode 100644
index 0000000000..823fc4e45d
--- /dev/null
+++ b/language/arabic/arabtex/texinput/bhs.sty
@@ -0,0 +1,213 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% bhs.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bhs.sty
+% Scanner for the CCAT encoding used in the machine-readable
+% Biblia Hebraica Stuttgardiana
+% to install it, include it as a LaTeX package or style option "bhs"
+% with Plain TeX, say "\input bhs.sty"
+% to activate it, say "\setcode {bhs}
+% 26.07.1999
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \bhsatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \bhsatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {bhs.sty} {3.09 read BHS Hebrew encoding} {26.07.1999}
+
+\UsePackage {bhslabel} % process BHS labels
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for BHS Hebrew coding
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\catcode `\"=12 \catcode `\&=12
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \setbhs@codes {% activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@A {a} \def \sc@B {b} \def \sc@C {S} \def \sc@D {d}
+\def \sc@E {e} \def \sc@F {A} \def \sc@G {g} \def \sc@H {h}
+\def \sc@I {i} \def \sc@J {t} \def \sc@K {k} \def \sc@L {l}
+%\def \sc@M {m} \def \sc@N {n} \def \sc@O {O} \def \sc@P {p}
+\def \sc@M {m} \def \sc@N {n}\def\sc@O{\n@xp\a@o}\def \sc@P {p}
+\def \sc@Q {q} \def \sc@R {r} \def \sc@S {s} \def \sc@T {t}
+%\def \sc@U {u} \def \sc@V {D} \def \sc@W {W} \def \sc@X {X}
+\def \sc@U {u} \def \sc@V {D} \def \sc@W {w} \def \sc@X {X}
+\def \sc@Y {y} \def \sc@Z {z} \def \sc@@ {QQ}
+\a@digits = {0123456789} \a@paren = {[]}
+\a@first = {)+(##&$":.,*0123456789}
+\globaldefs=0 }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for BHS
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+{\arab@codes
+\catcode `\& 12
+
+\gdef \bhs@beg #1#2{% start BHS scanner
+\@ssimfalse \def \next {\bhs@word #1#2}%
+\ifx #1\@\def \next {\sc@endscan #2}\else % finished
+\ifx #2\@\def \next {\bhs@testpara #1#2}\else
+\ifx #2?\def \next {\bhs@testpara #1#2}\else
+%\ifx #1W\def \next {\bhs@begW #2}\else
+%\fi
+\fi\fi\fi \next }
+
+\gdef \bhs@word #1#2{% transform input into internal notation
+ \def \next {\bhs@word #2}%
+\ifx #1\@\def \next {\sc@endscan #2}\else % finished
+\ifx #1]\def \next {\bhs@word }\else
+\ifx #10\def \next {\bhs@zero #2}\else
+\ifx #17\def \next {\bhs@seven #2}\else
+\if\is@in@set #1\a@digits \def \next {\bhs@word }\else
+%
+\ifx #1?\def \next {\bhs@query #2}\else
+\ifx #1:\def \next {\bhs@colon #2}\else
+%\ifx #1O\def \next {\bhs@O #2}\else
+%\ifx #1W\def \next {\bhs@W #2}\else
+\ifx #1|\def \sc@char {|}\sc@put \else
+%\ifx #1#2\def \next {\bhs@word #1|#2}\else
+%
+%\ifx #1.\sc@put \else
+\ifx #1.\def \sc@char {\nxp \a@Zu }\sc@put \else
+\ifx #1'\def \sc@char {'}\sc@put \else
+\ifx #1)\def \sc@char {Q}\sc@put \else
+\ifx #1+\def \sc@char {C}\sc@put \else
+%
+\ifx #1(\def \sc@char {P}\sc@put \else
+\if #1\a@hash \def \sc@char {\nxp \a@S }\sc@put \else
+\ifx #1&\def \sc@char {\nxp \a@s }\sc@put \else
+\ifx #1$\def \sc@char {x}\sc@put \else
+%
+\ifx #1"\def \sc@char {\nxp \a@E }\sc@put \else
+\ifx #1-\def \sc@char {B}\sc@put \else
+\ifx #1*\def \sc@char {*}\sc@put \else
+\ifcat \nxp #1a\edef \sc@char {\csname sc@#1\endcsname }%
+ \sc@put
+\fi\fi\fi\fi
+\fi\fi\fi\fi
+\fi\fi\fi\fi
+%
+%\fi
+%\fi
+\fi\fi\fi\fi
+%\fi
+\fi\fi\fi\fi
+\next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \bhs@colon #1{% shwa or chatef
+\def \next {\bhs@word }%
+\ifx #1A\def \sc@char {\nxp \a@A }\else
+\ifx #1F\def \sc@char {\nxp \a@O }\else
+\ifx #1E\def \sc@char {\nxp \a@I }\else
+\def \sc@char {\nxp \a@e }\def \next {\bhs@word #1}%
+\fi\fi\fi \sc@put \next }
+
+\gdef \bhs@O #1#2{% cholem or cholem waw
+\if\is@in@set #1\a@digits \def \next {\bhs@word #1#2O}\else
+ \ifx #1W\def \sc@char {O}\def \next {\bhs@word #2}%
+ \else \def \sc@char {\nxp \a@o }\def \next {\bhs@word #1#2}%
+ \fi \sc@put
+\fi \next }
+
+\iffalse
+\gdef \bhs@W #1{% waw or shureq
+\def \sc@char {w}\def \next {\bhs@word #1}%
+\sc@put \next }
+
+\gdef \bhs@begW #1{% initial waw
+\ifx #1.\def \sc@char {ww}\def \next {\bhs@word }%
+\else \def \sc@char {w}\def \next {\bhs@word #1}%
+\fi \sc@put \next }
+\fi
+
+\gdef \bhs@seven #1{% meteg
+\def \next {\bhs@word }%
+\ifx #15\def \sc@char {|}\sc@put \else
+\if\is@in@set #1\a@digits \else \def \next {\bhs@word #1}%
+\fi\fi \next }
+
+\gdef \bhs@zero #1{% sop pasuq and pasuq
+\ifx #10\def \sc@char {:}\sc@put \def \next {\bhs@word }\else
+%\ifx #15\def \sc@char {K}\sc@put \def \next {\bhs@word }\else
+\ifx #15\def \next {\bhs@pasuq }\else
+\if\is@in@set #1\a@digits \def \next {\bhs@word }\else
+ \def \next {\bhs@word #1}%
+\fi\fi\fi \next }
+
+}% \arab@codes
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \bhs@testpara #1#2{% single initial P ?
+\ifx #1P\def \next {\bhs@para #1#2}%
+\else \def \next {\bhs@word #1#2}%
+\fi \next }
+
+\def \a@c@bhspara {% small paragraph mark
+\putwordb@x {\small \heb@font \heb@testfont
+\act@cd '164 \advance \act@cd \heb@dsp
+\space \char \act@cd \space }\test@token }
+
+\def \a@c@pasuq {% verse division
+\putwordb@x {\small $\!|\!$}\test@token }
+
+\def \bhs@para P#1\@ \@@ {% prepare paragraph mark
+\sc@back \bhspara #1\@ \@@ }
+
+\def \bhs@pasuq #1\@ \@@ {% prepare verse division
+\sc@back \pasuq #1\@ \@@ }
+
+\newcount \bhsmode \bhsmode 0
+
+\def \bhs@query #1\@ \@@ {% new line, push back the rest
+\ifnum \bhsmode = 1 \sc@back \\#1\@ \@@ \else % finish line
+\ifnum \bhsmode = 2 \sc@back \|#1\@ \@@ \else % stretch line
+ \sc@back #1\@ \@@ % next word
+\fi\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \set@bhs {% substitute the BHS scanner
+\let \sc@beg \bhs@beg \let \sc@word \bhs@word
+\let \sc@back \sc@@back \let \sc@endscan \sc@@endscan
+\let \a@scan \a@@scan \setbhs@codes
+\let \arab@codes \bhs@arab@codes
+\let \unarab@codes \bhs@unarab@codes
+\a@message {input encoding set to BHS conventions}}
+
+\xpa \def \xpa \sc@table \xpa {\sc@table % add the BHS encoding
+bhs\set@bhs }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \bhs@arab@codes {% save and set special characters
+\csname originalTeX\endcsname
+\chardef \spc@de = \catcode`\ \catcode`\ = 10
+\chardef \dqc@de = \catcode`\" \catcode`\" = \@other
+\chardef \lsc@de = \catcode`\< \catcode`\< = \@other
+\chardef \hsc@de = \catcode`\# \catcode`\# = \@other
+\chardef \amc@de = \catcode`\& \catcode`\& = \@other
+\arab@charsubdefmax \charsubdefmax \charsubdefmax \m@ne }
+
+\def \bhs@unarab@codes {% reset catcodes
+\catcode`\ = \spc@de \catcode`\< = \lsc@de \catcode`\" = \dqc@de
+\catcode`\# = \hsc@de \catcode`\& = \amc@de
+\charsubdefmax \arab@charsubdefmax }
+
+{\catcode`\# = \@other \gdef \a@hash {#}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@message {scanner for BHS encoding installed.}
+
+\catcode `\@ = \bhsatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/bhslabel.sty b/language/arabic/arabtex/texinput/bhslabel.sty
new file mode 100644
index 0000000000..258bc8adcd
--- /dev/null
+++ b/language/arabic/arabtex/texinput/bhslabel.sty
@@ -0,0 +1,149 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% bhslabel.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% bhslabel.sty
+% called by bhs.sty
+% generate markup from BHS label notation
+% 01.12.1998
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {bhslabel.sty} {3.00 BHS label markup} {01.12.1998}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\xpa \gdef \csname a@c@\string ~\endcsname #1 {% get BHS label
+%\tracingmacros 1
+\def \bhs@@label {#1}\bhs@label #1\@
+\tracingmacros 0
+\bhs@out \test@token }
+
+\errorcontextlines 10
+
+\def \is@digit #1{\is@in@list #10123456789>}
+
+\def \is@label #1{\is@in@list #1abcvwxyz>}
+
+\def \bhs@err {% illegal BHS label
+\errmessage {illegal BHS label `\bhs@@label'}}
+
+\def \bhs@label #1{% start processing BHS label
+\if\is@label #1\bhs@init {#1}\let \next \bhs@A
+\else \let \next \bhs@err
+\fi \next }
+
+{\catcode `\" 12
+\gdef \bhs@A #1{% get label value
+\ifx #1\@ \bhs@store \let \next \relax \else
+\ifx #1"\let \next \bhs@B \else
+\if\is@label #1\bhs@store % null value
+ \bhs@init {#1}\let \next \bhs@A \else
+\if\is@digit #1\def \bhs@value {#1}\let \next \bhs@D \else
+ \let \next \bhs@err
+\fi\fi\fi\fi \next }
+
+\gdef \bhs@B #1"{% get label string value
+\def \bhs@kind {S}\def \bhs@value {#1}\bhs@C }
+
+\gdef \bhs@C #1{% get next label after string
+\ifx #1\@ \bhs@store \let \next \relax \else
+\if\is@label #1\bhs@store
+ \bhs@init {#1}\let \next \bhs@A \else
+ \let \next \bhs@err
+\fi\fi \next }
+
+\gdef \bhs@D #1{% get next digit
+\def \bhs@kind {I}%
+\ifx #1\@ \bhs@store \let \next \relax \else
+\if\is@label #1\bhs@store
+ \bhs@init {#1}\let \next \bhs@A \else
+\if\is@digit #1\edef \bhs@value {\bhs@value #1}%
+ \let \next \bhs@D \else
+ \let \next \bhs@err
+\fi\fi\fi \next }
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcount \bhs@cnt
+\newif \ifbhs@outa \newif \ifbhs@outx
+\newif \ifbhs@outy \newif \ifbhs@outz
+
+\def \bhs@init #1{% init label
+\def \bhs@name {#1}\def \bhs@value {}\def \bhs@kind {N}}
+
+\def \bhs@store {% store label value and execute
+\begingroup \edef \x {\endgroup \if N\bhs@kind \nxp \bhs@inc {\bhs@name }%
+\else \nxp \bhs@set {\bhs@name }{\bhs@value }{\bhs@kind }\fi }\x }
+
+\def \bhs@set #1#2#3{% set label value
+\csname bhs@#1set\endcsname {#2}{#3}}
+
+\def \bhs@inc #1{% increase label value
+\if I\csname bhs@#1kind\endcsname \bhs@cnt \csname bhs@#1value\endcsname
+ \advance \bhs@cnt 1 \begingroup
+ \edef \x {\endgroup \nxp \bhs@set {#1}{\the\bhs@cnt }{I}}\x
+\else \errmessage {BHS level `#1' has no numeric value}%
+ \bhs@set {#1}{1}{I}%
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \bhs@aset #1#2{% set level a
+\def \bhs@avalue {#1}\def \bhs@akind {#2}\bhs@outatrue
+\bhs@xset {0}{I}\bhs@yset {0}{I}\bhs@zset {0}{I}}
+
+\def \bhs@bset #1#2{% set level b
+\def \bhs@bvalue {#1}\def \bhs@bkind {#2}}
+
+\def \bhs@cset #1#2{% set level c
+\def \bhs@cvalue {#1}\def \bhs@ckind {#2}}
+
+\def \bhs@zset #1#2{% set level z
+\def \bhs@zvalue {#1}\bhs@outztrue \def \bhs@zkind {#2}}
+
+\def \bhs@yset #1#2{% set level y
+\def \bhs@ykind {#2}\def \bhs@value {#1}%
+\ifx \bhs@yvalue \bhs@value \else
+ \def \bhs@yvalue {#1}\bhs@outytrue \bhs@zreset
+ \if #2I\ifnum #1 = 0
+ \bhs@outyfalse \bhs@outzfalse
+ \fi\fi
+\fi }
+
+\def \bhs@xset #1#2{% set level x
+\def \bhs@xkind {#2}\def \bhs@value {#1}%
+\ifx \bhs@xvalue \bhs@value \else
+ \def \bhs@xvalue {#1}\bhs@outxtrue \bhs@yreset
+ \if #2I\ifnum #1 = 0
+ \bhs@outxfalse \bhs@outyfalse \bhs@outzfalse
+ \fi\fi
+\fi }
+
+\def \bhs@yreset {% reset level y
+\def \bhs@yvalue {1}\def \bhs@ykind {I}\bhs@outytrue \bhs@zreset }
+
+\def \bhs@zreset {% reset level z
+\def \bhs@zvalue {1}\def \bhs@zkind {I}\bhs@outztrue }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \bhs@yout {% verse
+\putwordb@x {\tracingmacros 0 \rm $^{\bhs@yvalue }$\space }\a@spacetrue }
+
+\def \bhs@xout {% chapter
+\putwordb@x {\tracingmacros 0 \bf \bhs@xvalue \space }}
+
+\def \bhs@aout {% heading
+{\tracingmacros 0 \rm \hfill \bhs@@label }\bigskip }
+
+\def \bhs@out {% print new label
+\ifbhs@outa \bhs@outafalse \bhs@aout \fi
+\ifbhs@outx \bhs@outxfalse \bhs@xout \fi
+\ifbhs@outy \bhs@outyfalse \bhs@yout \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/buck.sty b/language/arabic/arabtex/texinput/buck.sty
new file mode 100644
index 0000000000..be6c80d8e8
--- /dev/null
+++ b/language/arabic/arabtex/texinput/buck.sty
@@ -0,0 +1,229 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% buck.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% buck.sty
+% Scanner for Tim Buckwalter's encoding
+% to install it, include it as a LaTeX style option "buck"
+% with Plain TeX, say "\input buck.sty"
+% to activate it, say "\setcode {buck}
+% 27.10.97
+% 04.02.98
+% 28.07.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \buckatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \buckatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {buck.sty} {0.95 Tim Buckwalter's input encoding } {28.07.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\xpa\def \csname sc@\string }\endcsname {Qy} % hamza on yah
+
+\xpa\def \csname sc@\string {\endcsname {-""} % medial alif waSla
+
+\def \sc@def #1#2{\xpa\def\csname sc@\string #1\endcsname {#2}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Arabic
+{\catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \setbuck@codes {% activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@@ {@} \def \sc@c {@} \def \sc@e {@}
+\def \sc@B {@} \def \sc@C {@} \def \sc@G {@} \def \sc@I {@}
+\def \sc@J {@} \def \sc@L {@} \def \sc@M {@} \def \sc@O {@}
+\def \sc@P {@} \def \sc@Q {@} \def \sc@R {@} \def \sc@U {@}
+\def \sc@V {@} \def \sc@W {@} \def \sc@X {@}
+
+\sc@def ' {Q|} \sc@def | {QA} \sc@def > {Qa} \sc@def & {Qw}
+\sc@def < {Qi} \sc@def ## {|} \def \sc@A {A} \def \sc@b {b}
+\def \sc@p {T} \def \sc@t {t} \def \sc@v {C} \def \sc@j {G}
+\def \sc@H {H} \def \sc@x {X} \def \sc@d {d} \sc@def * {F}
+\def \sc@r {r} \def \sc@z {z} \def \sc@s {s} \sc@def $ {x}
+\def \sc@S {S} \def \sc@D {D} \def \sc@T {V} \def \sc@Z {Z}
+\def \sc@E {P} \def \sc@g {R} \sc@def _ {B}
+\def \sc@f {f} \def \sc@q {q} \def \sc@k {k} \def \sc@l {l}
+\def \sc@m {m} \def \sc@n {n} \def \sc@h {h} \def \sc@w {w}
+\def \sc@Y {Y} \def \sc@y {y} \def \sc@F {"aN} \def \sc@N {"uN}
+\def \sc@K {"iN} \def \sc@a {"a} \def \sc@u {"u} \def \sc@i {"i}
+\sc@def ~ {\n@xp \a@Ze} \def \sc@o {""} \sc@def ` {"\n@xp \a@a}
+
+\a@digits = {0123456789} \a@paren = {()[]}
+\a@first = {"`}
+\globaldefs=0 }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\long \def \buck@special #1{% check for special cases
+\if \is@in@set #1\a@first % normal case
+ \def \next {\test@word #1}\else
+\if \relax \nxp #1% % command
+ \def \next {\test@command #1}\else
+ \def \next {\test@word #1}% % normal case
+\fi\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newif \ifk@sra
+\def \lowkasra {\k@sratrue } \def \hikasra {\k@srafalse }
+
+\def \a@putkasra #1{% modification at kasra % m1
+\ifcase #1\put@kasra \or
+\ifqur@n \put@kasra \else \put@fatha \fi \put@shadda \or
+\put@ihamza \put@kasra \or \put@fatha \put@hamza \put@shadda \or
+\put@madda \put@kasra \or \put@hamzalo \put@kasra \or
+\fi }
+
+\def \a@putkasratan #1{% modification at kasratan % m1
+\ifcase #1\put@kasratan \or
+\ifqur@n \put@kasratan \else \put@fathatan \fi \put@shadda \or
+\put@ihamza \put@kasratan \or \put@fathatan \put@hamza \put@shadda \or
+\put@madda \put@kasratan \or \put@hamzalo \put@kasratan \or
+\fi }
+
+\def \put@ihamza {% hamza at <i> depending on carrier
+\ifh@mza \ifnum \act@cd = \a@alif@iso \put@hamzalo \else
+ \ifnum \act@cd = \a@alif@end \put@hamzalo \else
+ \ifnum \act@cd = \a@lam@alif@iso \put@hamzalo \else
+ \ifnum \act@cd = \a@lam@alif@end \put@hamzalo \else
+ \put@hamza
+ \fi\fi\fi\fi
+\else \put@hamza \fi }
+
+\def \syl@hamzaverb #1{% verbatim hamza, #1 = carrier
+ \put@con #1\def \next {\syl@voctest }%
+\ifx #1|\put@con Q\else
+\ifx #1A\put@con a\add@madda \@sukfalse \else
+ \add@hamza
+\ifx #1y\put@con Y%
+\ifqur@n \add@hamzalow \fi \else
+\ifx #1u\put@con w\else
+\ifx #1i\put@con a\add@hamzalow \else
+\fi\fi\fi\fi\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \buck@cat {% change catcodes
+\catcode `\# 11
+\catcode `\' 11 \catcode `\| 11 \catcode `\> 11 \catcode `\& 11
+\catcode `\< 11 \catcode `\} 11 \catcode `\* 11 \catcode `\$ 11
+\catcode `\_ 11 \catcode `\~ 11 \catcode `\` 11 \catcode `\{ 11 }
+
+\def \buck@recat {% change catcodes back
+\catcode `\# 6
+\catcode `\' 12 \catcode `\| 12 \catcode `\> 12 \catcode `\& 4
+\catcode `\< 12 \catcode `\2 11 \catcode `\* 12 \catcode `\$ 3
+\catcode `\_ 8 \catcode `\~ 13 \catcode `\` 12 \catcode `\{ 1 }
+
+\def \buck@codes {% save and set special characters
+\a@arabcodes \buck@cat }
+
+\def \unbuck@codes {% reset catcodes
+\a@unarabcodes \buck@recat }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\xpa \def \csname a@c@end\string{arabtext\string}\endcsname {\end{arabtext} }
+
+{\catcode `\[ 1 \catcode `\] 2 \catcode `\{ 11 \catcode `\} 11
+\gdef \a@c@end {arabtext}[\end[arabtext]]
+]
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \TB({\bgroup \def \a@c@end {\end }\buck@cat \T@B}% prepare reading
+
+\def \T@B #1){\protect \a@ins #1>\egroup }% now read the argument
+
+\def \<{\bgroup \def \a@c@end {\end }\buck@cat \T@@B}% prepare reading
+
+\def \T@@B #1\>{\protect \a@ins #1>\egroup }% now read the argument
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+{\catcode `\[ 1 \catcode `\{ 11
+\gdef \buck@beg #1[% start the TB scanner
+\h@mzafalse \iz@fetfalse \novocalize % because of explicit quoting
+\@ssimfalse
+ \def \next [\buck@word #1}%
+\ifx #1\@ \def \next [\sc@endscan }\else % finished
+\ifx #1{\def \next [\buck@lbrace }\else
+\ifx #1"\def \next [\buck@lquote }\else
+\fi\fi\fi \next }
+} % catcodes 1 and 11
+
+{\catcode `\^^M=13 \catcode `\~ 11 %
+\gdef \buck@word #1#2{% transform input into internal notation
+ \def \next {\buck@word #2}%
+\ifx #1\@ \def \next {\sc@endscan #2}\else % finished
+\ifx #1-\def \next {\buck@minus #2}\else %
+\ifx #1"\def \next {\buck@rquote #2}\else %
+\if \nxp ^^M\nxp #1\def \next {\buck@par #1#2}\else % active character
+\ifx #1#2\def \next {\buck@two #1}\else %
+% \ifx #2~\def \next {\buck@word #1}\else %
+% \fi %
+ \ifcat a\nxp #1\edef \sc@char {\csname sc@#1\endcsname }%
+ \else \def \sc@char {\nxp #1}%
+ \fi %
+ \sc@put %
+\fi\fi\fi\fi\fi \next }%
+} % catcodes 13 and 11
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+{\catcode `\# 11 \catcode `\& 6
+\gdef \buck@two &1{% double character
+\def \next {\buck@word -&1}\edef \sc@char {\csname sc@&1\endcsname}%
+\ifx &1#\def \next {\buck@word &1}\fi
+\sc@put \next }}
+
+\def \buck@minus {% hyphen between words
+\def \sc@char {-}\sc@put \buck@beg }
+
+\def \buck@lquote {% left quote
+\def \sc@char {`}\sc@put \buck@beg }
+
+\def \buck@rquote {% right quote
+\def \sc@char {'}\sc@put \buck@word }
+
+\def \buck@lbrace {% initial left brace: alif wasla
+\def \sc@char {""}\sc@put \buck@word }
+
+\def \buck@par #1\@ \@@ {% new line, push back the rest
+\sc@back \\ #1\@ \@@ }
+
+\def \buck@endscan \@@ {\global\let \a@scan \a@@scan }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@buck {buck} \let \buck@setcode \setcode
+\let \a@arabcodes \arab@codes \let \a@unarabcodes \unarab@codes
+
+\def \set@buck {% substitute new scanner
+\let \sc@beg \buck@beg \let \sc@word \buck@word
+\let \sc@back \sc@@back \let \sc@endscan \sc@@endscan
+\let \a@scan \a@@scan \setbuck@codes
+\let \arab@codes \buck@codes \let \unarab@codes \unbuck@codes
+\let \test@special \buck@special
+\message {input coding set to Tim Buckwalter's encoding conventions}}
+
+\def \setcode #1{\def \next {#1}% switch input coding
+\ifx \next \a@buck \set@buck \else
+ \buck@setcode {#1}
+\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\message {scanner for Tim Buckwalter's encoding installed.}
+
+\catcode `\@ = \buckatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/captions.def b/language/arabic/arabtex/texinput/captions.def
new file mode 100644
index 0000000000..3d4b48ec3d
--- /dev/null
+++ b/language/arabic/arabtex/texinput/captions.def
@@ -0,0 +1,76 @@
+% chapter = al-fa.slu
+% chapter = al-bAbu
+% section = al-fa.slu
+% section = al-bandu
+% section = al-qismu
+% paragraph = al-fa.slu
+% paragraph = al-bandu
+% paragraph = al-mAddaTu
+% overview = al-nna.zraTu
+% abbreviations = al-mula_h_ha.su
+% heading = al-`unwAnu
+% heading = al-maqAdaTu
+% tableofcontents = al-mu.htawayAtu
+% tableofcontents = al-ma.dmUnu
+% listoffigures = qA'imaTu al-.suwaru
+% listoftables = qA'imaTu al-^gadAwilu
+% listofpictures = qA'imaTu al-rusUmu
+% index = al-fihrisu (al-fihristu)
+% bibliography = al-marA^gi`u
+% references = al-ma.sAdiru
+% abstract = al-mula_h_ha.su
+% abstract = al-^s^samlu
+% appendix = al-mul.haqu
+% attachments = al-murfaqAtu
+% number = al-raqmu
+% number = al-`adadu
+% title = al-`unwAnu
+% table = al-^gadwalu
+% picture = al-.s.sUraTu
+% picture = al-rrasmu
+% page = al-.s.saf.haTu
+% column = al-`amUdu
+% introduction = al-tta.h.dIru
+% introduction = al-muqaddamaTu
+% introduction = al-ttaw.sIlu
+% introduction = al-'id_hAlu
+% list = al-qA'imaTu
+% note = al-mal.hU.zaTu
+% note = al-mulA.ha.zaTu
+% entry = al-nnafdaTu
+
+% first page = a.s-.saf.haTu al-'Ul_A
+% previous page = a.s-.saf.haTu qablu
+% next page = a.s-.saf.haTu ba`du
+% next page = a.s-.saf.haTu at-tAlI
+% last page = a.s-.saf.haTu al-'A_hiraTu
+% contents = mu_htaw_A
+% part = al-^guz'u
+% part = al-qismu
+% see also = 'un.zur 'aydaN
+% drawing = ar-rasmu
+
+
+\def\captionsenglish{%
+\def\prefacename{Preface}%
+\def\refname{References}%
+\def\abstractname{Abstract}%
+\def\bibname{Bibliography}%
+\def\chaptername{Chapter}%
+\def\appendixname{Appendix}%
+\def\contentsname{Contents}%
+\def\listfigurename{List of Figures}%
+\def\listtablename{List of Tables}%
+\def\indexname{Index}%
+\def\figurename{Figure}%
+\def\tablename{Table}%
+\def\partname{Part}%
+\def\enclname{encl}%
+\def\ccname{cc}%
+\def\headtoname{To}%
+\def\pagename{Page}%
+\def\seename{see}%
+\def\alsoname{see also}}
+
+\let\captionsUSenglish=\captionsenglish
+
diff --git a/language/arabic/arabtex/texinput/cp1256.sty b/language/arabic/arabtex/texinput/cp1256.sty
new file mode 100644
index 0000000000..9926dd3705
--- /dev/null
+++ b/language/arabic/arabtex/texinput/cp1256.sty
@@ -0,0 +1,173 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% cp1256.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% cp1256.sty
+% Scanner for Windows CP 1256
+% to install it, include it as a LaTeX package or style option "cp1256"
+% with Plain TeX, say "\input cp1256.sty"
+% to activate it, say "\setcode{cp1256}" or "\setcode{arabwin}"
+% 26.04.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \awinatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \awinatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {cp1256.sty} {3.11 CP 1256 Windows encoding} {26.04.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \awin@catcodes {% assignments for MAC Hebrew
+\countdef \is@m=2 \countdef \is@n=4
+\is@m = 128 \is@n = 64
+\loop \ifnum \catcode \is@m = 11 \else \catcode \is@m = 11 \fi
+\global\lccode \is@m = \is@n
+\ifnum 159 > \is@m \advance \is@m 1 \advance \is@n 1 \repeat
+\is@m = 160 \is@n = 32
+\loop \ifnum \catcode \is@m = 11 \else \catcode \is@m = 11 \fi
+\global\lccode \is@m = \is@n
+\ifnum 255 > \is@m \advance \is@m 1 \advance \is@n 1 \repeat
+\is@m=0 \is@n=0 \catcode `\^^a0 12 }
+
+{\awin@catcodes
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Arabic
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \setawin@codes {% activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@^^80 {p} \def \sc@^^81 {@} \def \sc@^^82 {@} \def \sc@^^83 {@}
+\def \sc@^^84 {@} \def \sc@^^85 {@} \def \sc@^^86 {@} \def \sc@^^87 {@}
+\def \sc@^^88 {@} \def \sc@^^89 {@}
+\def \sc@^^8a {\n@xp\a@t} \def \sc@^^8b {@}
+\def \sc@^^8c {@} \def \sc@^^8d {J}
+\def \sc@^^8e {j} \def \sc@^^8f {\n@xp\a@d}
+
+\def \sc@^^90 {g} \def \sc@^^91 {@} \def \sc@^^92 {@} \def \sc@^^93 {@}
+\def \sc@^^94 {@} \def \sc@^^95 {@} \def \sc@^^96 {@} \def \sc@^^97 {@}
+\def \sc@^^98 {\n@xp\a@k} \def \sc@^^99 {@}
+\def \sc@^^9a {\n@xp\a@r} \def \sc@^^9b {@}
+\def \sc@^^9c {@} \def \sc@^^9d {@} \def \sc@^^9e {@}
+\def \sc@^^9f {\n@xp\a@n}
+
+\def \sc@^^a0 {@} \def \sc@^^a1 {,} \def \sc@^^a2 {@} \def \sc@^^a3 {@}
+\def \sc@^^a4 {$} \def \sc@^^a5 {@} \def \sc@^^a6 {@} \def \sc@^^a7 {@}
+\def \sc@^^a8 {@} \def \sc@^^a9 {@} \def \sc@^^aa {h} \def \sc@^^ab {@}
+\def \sc@^^ac {@} \def \sc@^^ad {-} \def \sc@^^ae {@} \def \sc@^^af {@}
+
+\def \sc@^^b0 {@} \def \sc@^^b1 {@} \def \sc@^^b2 {@} \def \sc@^^b3 {@}
+\def \sc@^^b4 {@} \def \sc@^^b5 {@} \def \sc@^^b6 {@} \def \sc@^^b7 {@}
+\def \sc@^^b8 {@} \def \sc@^^b9 {@} \def \sc@^^ba {;} \def \sc@^^bb {@}
+\def \sc@^^bc {@} \def \sc@^^bd {@} \def \sc@^^be {@} \def \sc@^^bf {?}
+
+\def \sc@^^c0 {\n@xp\a@H}
+\def \sc@^^c1 {Q|} \def \sc@^^c2 {QA} \def \sc@^^c3 {Qa}
+\def \sc@^^c4 {Qw} \def \sc@^^c5 {Qi} \def \sc@^^c6 {Qy} \def \sc@^^c7 {A}
+\def \sc@^^c8 {b} \def \sc@^^c9 {T} \def \sc@^^ca {t} \def \sc@^^cb {C}
+\def \sc@^^cc {G} \def \sc@^^cd {H} \def \sc@^^ce {X} \def \sc@^^cf {d}
+
+\def \sc@^^d0 {F} \def \sc@^^d1 {r} \def \sc@^^d2 {z} \def \sc@^^d3 {s}
+\def \sc@^^d4 {x} \def \sc@^^d5 {S} \def \sc@^^d6 {D} \def \sc@^^d7 {@}
+\def \sc@^^d8 {V} \def \sc@^^d9 {Z} \def \sc@^^da {P} \def \sc@^^db {R}
+\def \sc@^^dc {B} \def \sc@^^dd {f} \def \sc@^^de {q} \def \sc@^^df {k}
+
+\def \sc@^^e0 {@} \def \sc@^^e1 {l} \def \sc@^^e2 {@} \def \sc@^^e3 {m}
+\def \sc@^^e4 {n} \def \sc@^^e5 {h}
+\def \sc@^^e6 {w} \def \sc@^^e7 {@}
+\def \sc@^^e8 {@} \def \sc@^^e9 {@} \def \sc@^^ea {@} \def \sc@^^eb {@}
+\def \sc@^^ec {Y} \def \sc@^^ed {y} \def \sc@^^ee {@} \def \sc@^^ef {@}
+
+\def \sc@^^f0 {"aN}\def \sc@^^f1 {"uN} \def \sc@^^f2 {"iN} \def \sc@^^f3 {"a}
+\def \sc@^^f4 {@} \def \sc@^^f5 {"u} \def \sc@^^f6 {"i} \def \sc@^^f7 {@}
+\def \sc@^^f8 {\n@xp\a@Ze} \def \sc@^^f9 {@}
+\def \sc@^^fa {""} \def \sc@^^fb {@}
+\def \sc@^^fc {@} \def \sc@^^fd {@} \def \sc@^^fe {@} \def \sc@^^ff {E}
+\a@digits = {0123456789}
+%\a@paren = {()[]^^a8^^a9^^e2^^e3}
+\a@paren = {()[]}
+\a@first = {"`^^e6}
+\globaldefs=0 }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \awin@scan #1>{% standard scanner call: token sequence -> \a@tokens
+\iftest@scan \tracingmacros = 1
+\ifshow \else \lowercase{\a@verb #1>}\fi\fi
+\global\def \a@rest {}\global\a@tokens = {}\sc@beg #1\@ \@@
+\iftest@scan \tracingmacros = 0 %
+\xpa \a@verb \xpa (\the\a@tokens )>\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \awin@beg #1{% start CP 1256 scanner
+\h@mzafalse \iz@fetfalse \yahdots \novocalize % because of explicit quoting
+ \@ssimfalse
+%\urd@true
+\ifx #1^^c7\def \next {\awin@alif}\else
+\def \next {\awin@word #1}\fi \next }
+
+{\catcode `\^^M=13 \endlinechar = -1
+\gdef \awin@word #1{% transform input into internal notation
+\ifx #1\@ \def \next {\sc@endscan }\else % finished
+\if \nxp ^^M\nxp #1\def \next {\awin@par #1}% active character
+\else \def \next {\awin@w@rd #1}%
+\fi\fi \next }%
+} % catcode 13
+
+\gdef \awin@w@rd #1#2{% special cases
+\case #1\of
+{ #2{\awin@word #1-#2}
+ -{\awin@minus #2}
+ "{\awin@dquote #2}
+ ^^a0{\sc@back #2}
+ ^^ad{\awin@minus #2}
+\default {\awin@@word #1#2}
+}\endcase }
+
+\gdef \awin@@word #1{% default branch
+\ifcat a\nxp #1\edef \sc@char {\csname sc@#1\endcsname }%
+\else \def \sc@char {\nxp #1}%
+\fi \sc@put \awin@word }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \awin@alif {% alif at the beginning of a word
+\def \sc@char {a}\sc@put \awin@word }
+
+\gdef \awin@dquote {% double quote
+\def \sc@char {\a@dq}\sc@put \awin@word }
+
+\gdef \awin@minus {% hyphen between words
+\def \sc@char {-}\sc@put \awin@beg }
+
+\gdef \awin@par #1\@ \@@ {% new line, push back the rest
+\sc@back \\ #1\@ \@@ }
+
+\gdef \awin@endscan \@@ {\global\let \a@scan \awin@scan }
+} % \awin@catcodes
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \set@awin {% select the CP 1256 scanner
+\let \sc@beg \awin@beg \let \sc@word \awin@word
+\let \sc@back \sc@@back \let \sc@endscan \awin@endscan
+\global\let \a@scan \awin@scan \setawin@codes
+\awin@catcodes \yahdots
+\a@message {input encoding set to Windows CP 1256 conventions}}
+
+\xpa \def \xpa \sc@table \xpa {\sc@table % add the CP 1256 encoding
+awin\set@awin cp1256\set@awin }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@message {scanner for Windows code page 1256 installed.}
+
+\catcode `\@ = \awinatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/etrans.sty b/language/arabic/arabtex/texinput/etrans.sty
new file mode 100644
index 0000000000..71c3ff2be0
--- /dev/null
+++ b/language/arabic/arabtex/texinput/etrans.sty
@@ -0,0 +1,9 @@
+% etrans.sty
+
+\endinput
+
+% this module is no more needed.
+% its effect is now taken care of by "atrans.sty"; use \settrans{english}
+% 04.11.1998
+% Klaus Lagally
+
diff --git a/language/arabic/arabtex/texinput/gedalin.sty b/language/arabic/arabtex/texinput/gedalin.sty
new file mode 100644
index 0000000000..5f1e8bf57b
--- /dev/null
+++ b/language/arabic/arabtex/texinput/gedalin.sty
@@ -0,0 +1,112 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% gedalin.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% gedalin.sty
+% Scanner for Michael Gedalin's special Hebrew encoding
+% to activate it, say "\setcode {gedalin}"
+% presupposes the packages "arabtex.sty" and "hebtex.sty"
+% 10.09.2001
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \gedatcode \undefined \else \xpa \endinput \fi
+
+\chardef \gedatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {gedalin.sty}
+{3.10 scanner for Michael Gedalin's Hebrew encoding} {10.09.2001}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Hebrew
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \setged@codes {\seta@codes % activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+\def \sc@a {\n@xp\a@S} \def \sc@b {n} \def \sc@c {b}
+\def \sc@d {g} \def \sc@e {q} \def \sc@f {k}
+\def \sc@g {P} \def \sc@h {y} \def \sc@i {\n@xp\a@N}
+\def \sc@j {X} \def \sc@k {l} \def \sc@l {\n@xp\a@K}
+\def \sc@m {S} \def \sc@n {m} \def \sc@o {\n@xp\a@M}
+\def \sc@p {p} \def \sc@q {/} \def \sc@r {r}
+\def \sc@s {d} \def \sc@t {Q} \def \sc@u {w}
+\def \sc@v {h} \def \sc@w {,} \def \sc@x {s}
+\def \sc@y {C} \def \sc@z {z}
+%
+\a@digits = {0123456789} \a@paren = {()[]} \a@first = {;,.}
+%\iffalse
+\tc@def \a@M {\act@cd \hc@mf } % mem sofit
+\tc@def \a@N {\act@cd \hc@nf } % nun sofit
+\tc@def \a@K {\act@cd \hc@kf } % kaf sofit
+\tc@def \a@P {\act@cd \hc@ff } % peh sofit
+\tc@def \a@Z {\act@cd \hc@sf } % tsadeh sofit
+%\fi
+\globaldefs=0
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for Hebrew
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \ged@scan #1>{% modified scanner call: token sequence -> \a@tokens
+\iftest@scan \ifshow \else \lowercase {\a@verb #1>}\fi
+\tracingmacros = 1 \fi
+\global\def \a@rest {}\global\a@tokens = {}%
+\novocalize \sc@beg #1\@ \@@
+\iftest@scan \tracingmacros = 0 \xpa \a@verb \xpa (\the\a@tokens )>\fi }
+
+\def \ged@word #1#2{% transform input into internal notation
+\@ssimfalse \def \next {\ged@word #2}%
+\ifx #1\@ \let \next \relax \else
+\ifcat \nxp #1\relax \def \next {\ged@cs #1#2}\else % control sequence
+ \ifx #1-\def \sc@char {B}\sc@put \else
+ \ifx #1/\def \sc@char {.}\sc@put \else
+ \ifx #1`\def \sc@char {;}\sc@put \else
+ \ifx #1w\def \sc@char {,}\sc@put \else
+ \ifx #1q\def \sc@char {/}\sc@put \else
+ \ifx #1|\def \sc@char {\nxp \a@U}\sc@put \else
+ \ifx #1;\def \sc@char {\nxp \a@P \nxp \a@U}\sc@put \else
+ \ifx #1,\def \sc@char {t\nxp \a@U}\sc@put \else
+ \ifx #1.\def \sc@char {\nxp \a@Z \nxp \a@U}\sc@put \else
+ \ifcat \noexpand #1-\def \sc@char {#1}\sc@put \else
+ \ifcat \noexpand #1a\edef \sc@char {\csname sc@#1\endcsname }\else
+ \def \sc@char {#1}%
+ \fi \sc@put
+\fi\fi\fi\fi\fi\fi
+\fi\fi\fi\fi\fi\fi \next }
+
+\def \g@d@cs #1#2{% test word end
+\def \sc@char {#1}\sc@put
+\ifx #2\@ \def \next {\sc@endscan #2}\else
+\ifcat -\nxp #2 \def \next {\ged@word #2}\else
+\def \next {\sc@back #2}\fi \fi \next }
+
+\def \ged@cs #1#2{% control sequence within a word; push back?
+\xpa \ifx #1\closegeresh \def \next {\g@d@cs {\nxp \lq }#2}\else
+\xpa \ifx #1\closequote \def \next {\g@d@cs {`}#2}\else
+ \def \next {\sc@back #1#2}%
+\fi\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \ged@select {% select the new scanner
+%\heb@catcodes % inside hebtex.sty; to make sure
+\let \sc@beg \ged@word \let \sc@word \ged@word
+\let \sc@back \sc@@back \let \sc@endscan \sc@@endscan
+\setged@codes \global\let \a@scan \ged@scan
+\let \h@put@end \h@put@mid
+\a@message {input encoding set to Michael Gedalin's Hebrew encoding}}
+
+\xpa \def \xpa \sc@table \xpa {\sc@table % add the encoding
+gedalin\ged@select }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@message {scanner for Michael Gedalin's Hebrew encoding installed.}
+\setcode{gedalin}
+
+\catcode `\@ = \gedatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/hebchrs.sty b/language/arabic/arabtex/texinput/hebchrs.sty
new file mode 100644
index 0000000000..fd1ffbef83
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hebchrs.sty
@@ -0,0 +1,105 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hebchrs.sty
+% ArabTeX
+% dynamic letter token definitions for Hebrew
+% Version 26.04.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {hebchrs.sty} {3.11 Hebrew letter token definitions } {26.04.2003}
+
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\gdef \def@hebchars {% define character macros for Hebrew
+\tc@clearall
+\gdef \tc@@ {\act@cd \hc@@ } % illegal
+\gdef \tc@a {\act@cd \hc@a } % aleph
+\gdef \tc@b {\act@cd \hc@b } % beth
+\gdef \tc@d {\act@cd \hc@d } % daleth
+\gdef \tc@f {\act@cd \hc@f \@finaltrue } % pe
+\gdef \tc@f {\act@cd \hc@f \@finaltrue \act@mod\r@phe } % pe
+\gdef \tc@g {\act@cd \hc@j } % gimel
+\gdef \tc@h {\act@cd \hc@h } % heh
+\gdef \tc@i {\act@cd \hc@y } % chireq plene
+\gdef \tc@k {\act@cd \hc@k \@finaltrue } % kaph
+\gdef \tc@l {\act@cd \hc@l } % lamed
+\gdef \tc@m {\act@cd \hc@m \@finaltrue } % mem
+\gdef \tc@n {\act@cd \hc@n \@finaltrue } % nun
+\gdef \tc@p {\act@cd \hc@f \@finaltrue } % pe
+\gdef \tc@q {\act@cd \hc@q } % qoph
+\gdef \tc@r {\act@cd \hc@r } % resh
+\gdef \tc@s {\act@cd \hc@s } % samekh
+\gdef \tc@t {\act@cd \hc@t } % taw
+\gdef \tc@v {\act@cd \hc@b } % beth
+\gdef \tc@v {\act@cd \hc@b \act@mod\r@phe } % beth
+\gdef \tc@w {\act@cd \hc@w } % waw
+\gdef \tc@x {\act@cd \hc@si \act@mod \shind@t } % shin with dot
+\gdef \tc@y {\act@cd \hc@y } % yod
+\gdef \tc@z {\act@cd \hc@z } % zayin
+
+\gdef \tc@A {\act@cd \hc@a } % aleph again
+\gdef \tc@B {\act@cd \hc@B } % maqqeph
+\gdef \tc@C {\act@cd \hc@tt } % thet
+\gdef \tc@D {\act@cd \hc@d \@dageshtrue } % daleth dagesh
+\gdef \tc@F {\act@cd \hc@d } % daleth
+\gdef \tc@G {\act@cd \hc@j } % gimel
+\gdef \tc@H {\act@cd \hc@h \@dageshtrue } % heh mappiq
+\gdef \tc@K {\act@cd \hc@K } % paseq
+\gdef \tc@M {\act@cd \hc@M } % phantom 1: box
+\gdef \tc@N {\act@cd \hc@N } % phantom 2: space
+\gdef \tc@O {\act@cd \hc@w \act@mod \rd@t } % cholem maleh
+\gdef \tc@P {\act@cd \hc@P } % ayin
+\gdef \tc@Q {\act@cd \hc@a } % aleph again
+\gdef \tc@R {\act@cd \hc@j \@dageshtrue } % gimel dagesh
+\gdef \tc@S {\act@cd \hc@ss \@finaltrue } % sade
+\gdef \tc@T {\act@cd \hc@h \@dageshtrue } % he
+\gdef \tc@U {\act@cd \hc@w \@dageshtrue } % shureq
+\gdef \tc@V {\act@cd \hc@t \@dageshtrue } % taw dagesh
+\gdef \tc@W {\act@cd \hc@N } % phantom 2
+\gdef \tc@X {\act@cd \hc@hh } % chet
+\gdef \tc@Y {\act@cd \hc@y } % yod
+
+\tc@def \a@b {\act@cd \hc@b \@dageshtrue } % beth dagesh
+\tc@def \a@f {\act@cd \hc@f \@finaltrue \@dageshtrue } % pe dagesh
+\tc@def \a@i {\act@cd \hc@ey } % yod yod
+\tc@def \a@k {\act@cd \hc@k \@finaltrue \@dageshtrue } % kaph dagesh
+\tc@def \a@o {\act@cd \hc@oy } % waw yod
+\tc@def \a@s {\act@cd \hc@si \act@mod \sind@t } % sin with dot
+\tc@def \a@w {\act@cd \hc@v } % waw waw
+\tc@def \a@B {\act@cd \hc@b \act@mod \r@phe } % veyz
+\tc@def \a@F {\act@cd \hc@f \@finaltrue \act@mod\r@phe }% fey
+\tc@def \a@H {\act@cd \hc@h } % silent he
+\tc@def \a@K {\act@cd \hc@kf } % kaf sofit
+\tc@def \a@M {\act@cd \hc@mf } % mem sofit
+\tc@def \a@N {\act@cd \hc@nf } % nun sofit
+\tc@def \a@P {\act@cd \hc@ff } % peh sofit
+\tc@def \a@S {\act@cd \hc@si } % sin without dot
+\tc@def \a@Z {\act@cd \hc@sf } % tsadeh sofit
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}}% end of dynamic definitions for Hebrew
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \tc@def #1{% define letter description \tc@#1
+\xpa \gdef \csname tc@\string #1\endcsname }
+
+\def \a@letters {abcdefghijklmnopqrstuvwxyz}
+
+\def \tc@clear #1{% reset all letter descriptions, also for Hebrew!
+\ifx #1\relax \relax \else \uppercase {\gdef \1{#1}}%
+\xpa \gdef \csname tc@#1\endcsname {\relax}%
+\xpa \gdef \csname tc@\1\endcsname {\relax}%
+\xpa \gdef \csname tc@\xpa\string\csname a@#1\endcsname\endcsname {\relax}%
+\xpa \gdef \csname tc@\xpa\string\csname a@\1\endcsname\endcsname {\relax}%
+\xpa \tc@clear \fi }
+
+\def \tc@clearall {% reset all \tc@x definitions
+\xpa \tc@clear \a@letters \relax }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/hebsymb.sty b/language/arabic/arabtex/texinput/hebsymb.sty
new file mode 100644
index 0000000000..b9936e9816
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hebsymb.sty
@@ -0,0 +1,59 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hebsymb.sty
+% ArabTeX
+% Hebrew character assignments
+% in font "hclassic"
+% 12.06.2000
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {hebsymb.sty} {3.10 for oldcode font assignments} {12.06.2000}
+
+% will be modified in "hewrite.sty" for other font assignments
+
+\def \hc@@ {33} % illegal
+\def \hc@B {45} % maqqeph
+\def \hc@a {96} % aleph
+\def \hc@b {97} % beth
+\def \hc@j {98} % gimel
+\def \hc@d {99} % daleth
+\def \hc@h {100} % he
+\def \hc@w {101} % waw
+\def \hc@z {102} % zayin
+\def \hc@hh {103} % chet
+\def \hc@tt {104} % ttet
+\def \hc@y {105} % yod
+\def \hc@kf {106} % kaph, final
+\def \hc@k {107} % kaph
+\def \hc@l {108} % lamed
+\def \hc@mf {109} % mem, final
+\def \hc@m {110} % mem
+\def \hc@nf {111} % nun, final
+\def \hc@n {112} % nun
+\def \hc@s {113} % samech
+\def \hc@P {114} % ayin
+\def \hc@ff {115} % pe, final
+\def \hc@f {116} % pe, f
+\def \hc@sf {117} % ssade, final
+\def \hc@ss {118} % ssade
+\def \hc@q {119} % qoph
+\def \hc@r {120} % resh
+\def \hc@si {121} % ssin
+\def \hc@t {122} % taw
+\def \hc@Pv {123} % vowel ayin
+\def \hc@v {124} % vav
+\def \hc@K {125} % paseq
+\def \hc@M {126} % phantom 1
+\def \hc@N {127} % phantom 2
+\def \hc@ay {128} % ay
+\def \hc@ey {129} % ey
+\def \hc@oy {130} % oy
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/texinput/hebtex.sty b/language/arabic/arabtex/texinput/hebtex.sty
new file mode 100644
index 0000000000..037b5d33fc
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hebtex.sty
@@ -0,0 +1,87 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hebtex.sty
+% ArabTeX
+% Modifications for Hebrew mode
+% 12.06.2000
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \sethebrew \undefined \else \xpa \endinput \fi
+
+\ifx \ArabTeX \undefined
+\ifx \NeedsTeXFormat \undefined \input arabtex.sty
+\else \usepackage {arabtex}\fi \fi
+
+\let \h@wlog \wlog \def \wlog #1{\relax }
+
+\a@ident {hebtex.sty} {3.10 modifications for Hebrew mode} {12.06.2000}
+
+\newif \ifhedc@de
+
+\ifx \LaTeX \undefined \else
+ \let \h@document \document
+ \def \document {\h@document \sethebrew \hedc@detrue }
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\let \hebtext \arabtext \let \endhebtext \endarabtext
+\let \hebtex \arabtext \let \endhebtex \endarabtext % catch typo
+\let \hebfalse \arabfalse \let \hebtrue \arabtrue
+
+\pdef \sethebrew {% switch to hebrew writing
+\all@false \@ssimtrue \yahd@tstrue \heb@output
+\def \a@defaultfont {\hc }\setarabfont \a@normalfont \hc }
+
+\let \setheb \sethebrew
+
+\def \set@hebfont {\setarabfont \heb@font }
+
+\def \heb@font {\protect \pheb }
+\def \a@defaultfont {\protect \pheb }
+
+\def \sethebfont #1{\def \pheb {\hebfont }\font \hebfont =#1\relax}
+
+\all@wcmd \sethebrew \all@wcmd \setheb \all@wcmd \sethebfont \all@wif \heb
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \heb@output {\ifx \a@lang \a@hebr \else
+\tr@ceoff % switch to Hebrew output conventions
+\def@hebchars % define character macros for Hebrew
+\def@hebvoc % define vowel parsing routines for Hebrew
+\def@hebstrut % define strut for Hebrew
+\global\let \a@write \heb@write \global\let \a@write@hook \relax
+\tr@heb \tr@ceon \global\let \a@lang \a@hebr \fi }
+
+\def \a@hebr {HEBREW}
+\let \tr@heb \relax % if hetrans.sty is not loaded
+
+\def \def@hebstrut {\def \arab@strut
+%{\vrule height2.8ex depth0.7ex width0pt \relax }}
+{\vrule height1.9ex depth0.7ex width0pt \relax }}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\UsePackage {hecmd}
+\UsePackage {hescan}
+\UsePackage {heparse}
+\UsePackage {hewrite}
+\UsePackage {hetrans}
+\ifx \LaTeX \undefined \else \UsePackage {hefonts}
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\UsePackage {hepatch} % must be at the end !!
+
+%\hc
+
+\let \wlog \h@wlog
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/hebtex.tex b/language/arabic/arabtex/texinput/hebtex.tex
new file mode 100644
index 0000000000..6e653c43d1
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hebtex.tex
@@ -0,0 +1,122 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% hebtex.tex %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hebtex.tex
+% version 3.11
+% Plain TeX loader for ArabTeX, Hebrew mode
+% 08.09.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally EMail: lagallyk@acm.org
+% Institut fuer Formale
+% Methoden der Informatik TEL: +49-711-7816-392
+% Universitaet Stuttgart FAX: +49-711-7816-370
+% Universitaetsstrasse 38
+% D-70569 Stuttgart INFO: arabtex@informatik.uni-stuttgart.de
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% This program can be redistributed and/or modified under the terms
+% of the LaTeX Project Public License distributed from CTAN
+% archives in directory macros/latex/base/lppl.txt; either
+% version 1 of the License, or (at your option) any later version.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% \input this file at the beginning of an ArabTeX input file running
+% under Plain TeX. This is an adaptation by Tom Koornwinder of
+% Jan Lodder's file arab.plain.tex, again modified by Klaus Lagally
+% and modified again to switch to Hebrew mode
+% 16.09.2001
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\message { Plain TeX Hebrew setup for ArabTeX }
+
+\input arabtex.tex % load the ArabTeX package
+
+\makeatletter
+\a@ident {hebtex.tex} {3.11 Plain TeX Hebrew loader for ArabTeX} {08.09.2003}
+
+%\def \pheb {\hebfont }
+
+\iffalse
+\input hebtex.sty % load the Hebrew extension
+\input apatch.sty % load any patches
+\input hepatch.sty % load any patches
+\fi
+
+% commands for font selection:
+
+\font \hclassic = hclassic \relax % fix em and ex
+ \fontdimen5\hclassic =.8\fontdimen2\hclassic
+ \fontdimen6\hclassic =3\fontdimen5\hclassic
+\font \hcaption = hcaption \relax % fix em and ex
+ \fontdimen5\hcaption =.8\fontdimen2\hcaption
+ \fontdimen6\hcaption =3\fontdimen5\hcaption
+ \fontdimen1\hcaption =.2pt \relax
+
+\def \hc {\sethebfont {\hclassic}}
+\def \hp {\sethebfont {\hcaption}}
+
+\all@wcmd \hc \all@wcmd \hp % allow these in Hebrew context
+
+\font \jerusalem = jerusalem \relax
+\font \Jerusalem = Jerusalem \relax
+\font \OldJaffa = OldJaffa \relax
+\font \DeadSea = DeadSea \relax
+\font \TelAviv = TelAviv \relax
+
+\def \jm {\sethebfont {\jerusalem}}
+\def \Jm {\sethebfont {\Jerusalem}}
+\def \oj {\sethebfont {\OldJaffa}}
+\def \ds {\sethebfont {\DeadSea}}
+\def \ta {\sethebfont {\TelAviv}} % add others as required
+
+\all@wcmd \ds \all@wcmd \oj \all@wcmd \jm \all@wcmd \ta \all@wcmd \Jm
+
+\font \smold = shlm_old \relax
+ \fontdimen5\font =\fontdimen2\font
+\def \shlmold {\sethebfont {\smold}}
+
+\font \smscr = shlm_scr \relax
+ \fontdimen5\font =\fontdimen2\font
+\def \shlmscr {\sethebfont {\smscr}}
+
+\font \smstk = shlm_stk \relax
+ \fontdimen5\font =\fontdimen2\font
+\def \shlmstk {\sethebfont {smstk}}
+
+\all@wcmd \shlmold \all@wcmd \shlmscr \all@wcmd \shlmstk
+
+\def \fr {\sethebfont {fr}}
+\def \frbx {\sethebfont {frbx}}
+\def \frsl {\sethebfont {frsl}}
+
+\all@wcmd \fr \all@wcmd \frbx \all@wcmd \frsl
+
+\def \crml {\sethebfont {crml10}% fix ex
+ \fontdimen5\font =\fontdimen2\font }
+\def \crmlsl {\sethebfont {crmlsl10}% fix ex
+ \fontdimen5\font =\fontdimen2\font }
+
+\all@wcmd \crml \all@wcmd \crmlsl
+%\makeatother
+
+\input hebtex.sty % load the Hebrew extension
+\input apatch.sty % load any patches
+\input hepatch.sty % load any patches
+
+\hc % define a default Hebrew font choose one !
+%\jm % define a default Hebrew font
+%\ds % define a default Hebrew font
+%\ta % define a default Hebrew font
+%\oj % define a default Hebrew font
+%\hp % define a default Hebrew font
+%\shlmold % define a default Hebrew font
+%\shlmscr % define a default Hebrew font
+%\shlmstk % define a default Hebrew font
+%\fr % define a default Hebrew font
+%\frbx % define a default Hebrew font
+%\frsl % define a default Hebrew font
+%\crml % define a default Hebrew font
+%\crmlsl % define a default Hebrew font
+
+\sethebrew % switch to Hebrew mode
+\makeatother
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/hecmd.sty b/language/arabic/arabtex/texinput/hecmd.sty
new file mode 100644
index 0000000000..14ecb374e2
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hecmd.sty
@@ -0,0 +1,165 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hecmd.sty
+% ArabTeX
+% special commands for Hebrew mode
+% using ideas by Rama Porrat, Bernd Raichle and others
+% 26.07.2007
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {hecmd.sty} {3.12 additional commands for Hebrew} {26.07.2007}
+
+\let \RLtext \arabtext \let \endRLtext \endarabtext
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcount \is@m \newcount \is@n \newcount \is@l
+
+\def \heb@catcodes {% make chars 128-154 and 224-250 into letters
+\is@m = 96 % oldcode
+\is@n = 128 % pccode
+\is@l = 224 % newcode
+\loop \global\lccode \is@n = \is@m \catcode \is@n = 11
+ \global\lccode \is@l = \is@m \catcode \is@l = 11
+\ifnum 122 > \is@m
+ \advance \is@m 1 \advance \is@n 1 \advance \is@l 1
+\repeat }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@hadgesh #1{% poor man's bold version
+\setbox0 \hbox {#1}%
+\kern-.025em\copy0\kern-\wd0
+\kern.05em\copy0\kern-\wd0
+\kern-.025em\raise.025em\copy0\kern-\wd0
+\raise-.025em\box0}
+
+\def \a@c@hadgesh #1{\putwordb@x {\a@hadgesh {\R{#1}}}\test@token }
+\def \hadgesh #1{\a@hadgesh {\R {#1}}}
+
+\def \a@c@makafgadol {\putwordb@x {\bf --}\test@token }
+
+\def \a@c@makafanak {\putwordb@x {\bf ---}\test@token }
+
+\def \a@c@geresh {\a@spacefalse \putwordb@x {\bf `}\test@token }
+\let \a@c@closegeresh \a@c@geresh
+\def \geresh {`} \let \closegeresh \geresh
+
+\def \a@c@opengeresh {\putwordb@x {\bf '}\a@spacefalse \test@token }
+\def \opengeresh {'}
+
+\def \a@c@closequote {\a@spacefalse \putwordb@x {\bf ``}\test@token }
+\def \closequote {``}
+
+\def \a@c@openquote {\putwordb@x {\bf ''}\a@spacefalse \test@token }
+\def \openquote {''}
+
+\def \a@c@undertext #1{\putwordb@x {$\underline {\R {#1}}$}\test@token }
+\let \undertext \underline
+
+\def \a@c@hebday {\putwordb@x {\number\day }\a@spacetrue
+\edef \themonth {\ifcase \month \or
+ \or \or \or \or \or \or
+ \or \or \or \or \or \fi }%
+\putwordb@x {\xpa \RL \xpa {\themonth }}\a@spacetrue
+\putwordb@x {\number\year }\test@token }
+
+\def \hebday {\RL{\hebday }} % this looks wrong, but works !
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \a@c@Hebrewtoday {% internal calendar routine
+\Hebrewsetreg
+\tracingmacros 1
+\edef \theHebrewDay {\HebrewDayName {\Hebrewday }\space
+\HebrewMonthName {\Hebrewmonth }{\Hebrewyear },\space
+\a@HebrewYearName {\Hebrewyear }}%
+\tracingmacros 0
+\putwordb@x {\xpa \R \xpa {\theHebrewDay }}\test@token }
+
+\def \a@HebrewYearName #1{% max 4 digits, fully expandable version
+\ifnum #1>9999 \errmessage{HebrewYearName: illegal argument #1}\else
+\ifnum #1>999 \xpa \a@HYName \number #1\else
+\ifnum #1>99 \xpa \a@HYName \xpa 0\number #1\else
+\ifnum #1>9 \xpa \a@HYName \xpa 0\xpa 0\number #1\else
+\xpa \a@HYName \xpa 0\xpa 0\xpa 0\number #1\fi \fi \fi \fi }
+
+\def \a@HYName #1#2#3#4{% max 4 digits to Hebrew number
+\ifnum #1= 5 % Change it in the next Hebrew Millennium..
+ \ifnum #2#3#4> 0 \else \DigitInHebrew {#1}'\fi
+\else \DigitInHebrew {#1}'\fi
+\a@ShortHYName {#2#3#4}%
+\ifnum #1< 1 \space )"(\fi
+\ifnum #2#3#4= 0 \space )"(\fi }
+
+\def \a@SHYNumber #1{% fully expandable version
+\ifnum #1>999 \errmessage{ShortHYName: illegal argument #1}\else
+\ifnum #1>99 \xpa \a@SHYName \number #1\else
+\ifnum #1>9 \xpa \a@SHYName \xpa 0\number #1\else
+\xpa \a@SHYName \xpa 0\xpa 0\number #1\fi \fi \fi }
+
+\def \a@SHYName #1#2#3{% max 3 digits, fully expandable
+\ifcase #1\or \or \or \or \or
+ \or \or \or \or \fi
+\ifnum #2#3 = 16 \else
+\ifnum #2#3 = 15 \else
+ \ifnum #2 = 0 \else \TensInHebrew{#2}\fi
+ \ifnum #3 = 0 \else \DigitInHebrew{#3}\fi
+\fi\fi }
+
+\def \a@ShortHYName #1{% format Hebrew number < 1000
+\xpa \xpa \xpa \a@FormatNumber \a@EvalToCS {\a@SHYNumber {#1}}\@ }
+
+\def \a@EvalToCS #1{% fully expand the parameter to a \cs name string
+\xpa \string \csname #1\endcsname }
+
+\def \a@FormatNumber #1\@ {\xpa \a@Format #1\@ }
+
+\def \a@Format #1#2\@ {\a@Formati #2\@ }
+
+\def \a@Formati #1#2\@ {% first digit
+#1\ifx \relax #2\relax '\else \ReturnFi
+\a@Formatii #2\@ \fi }
+
+\def \a@Formatii #1#2\@ {% following digits
+\ifx \relax #2\relax ''#1\else #1\ReturnFi
+\a@Formatii #2\@ \fi }
+
+\def \ReturnFi #1\fi {\fi #1}% FALSE branch
+
+\def \ReturnElseFi #1\else #2\fi {\fi #1}% TRUE branch
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\iffalse
+% from heb_pc.mac
+
+%\def\ifundefined#1{\expandafter\ifx\csname#1\endcsname\relax}
+
+\everydisplay{\aftergroup\beginR }
+
+\def\piska#1{\item{#1}\hangindent=-\hangindent}
+
+\def\piskapiska#1{\itemitem{#1}\hangindent=-\hangindent}
+
+\def\leftquotation{\L{''}}
+\def\rightquotation{\L{``}}
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ ! " $ % & . ( ) = ? ;
+^ 1 2 3 4 5 6 7{ 8[ 9] 0} \ ,
+ Q@ W E R T Z U I O P *
+ / ' +~
+ A S D F G H J K L ,
+ #
+ > Y X C V B N M : _
+ <| -
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
diff --git a/language/arabic/arabtex/texinput/hefonts.sty b/language/arabic/arabtex/texinput/hefonts.sty
new file mode 100644
index 0000000000..b76463f2e2
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hefonts.sty
@@ -0,0 +1,56 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hefonts.sty
+% ArabTeX
+% load Hebrew fonts in LaTeX mode
+% 02.07.1997
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally and Bernd Raichle
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% load this file only, if \pheb not defined
+% select the Hebrew font by \pheb (\protected )
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\expandafter \ifx \csname pheb\endcsname \relax \else
+ \expandafter \endinput
+\fi
+
+\a@ident {hefonts.sty} {3.06 standard Hebrew fonts} {02.07.1997}
+
+\chardef \fntatcode = \catcode`\@ \catcode`\@ = 11
+\chardef \fntlscode = \catcode`\< \catcode`\< = 12
+
+\ifx \LaTeX \undefined \else
+
+% If we are using the NFSS, Version 2, \DeclareFontShape
+% is defined.
+%
+% (The \expandafter\ifx\csname...\endcsname\relax is necessary,
+% because the NFSS2 styleoptions use LaTeX's internal \@ifundefined
+% command.)
+%
+\xpa \ifx \csname DeclareFontShape\endcsname\relax
+
+% Now it's possible that NFSS, Version 1, is used.
+% If \selectfont is defined, NFSS is active, otherwise
+% we assume LaTeX's `lfonts.tex'.
+%
+ \xpa \ifx \csname selectfont\endcsname\relax
+
+ % OLD FONT SELECTION
+ \UsePackage {hefonts0}
+ \else % NEW FONT SELECTION -- Version 1
+ \UsePackage {hefonts1}
+ \fi
+\else
+ % NEW FONT SELECTION -- Version 2
+ \UsePackage {hefonts2}
+\fi\fi
+
+\catcode`\@ = \fntatcode \catcode`\< = \fntlscode
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/hefonts0.sty b/language/arabic/arabtex/texinput/hefonts0.sty
new file mode 100644
index 0000000000..a446ca6f2a
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hefonts0.sty
@@ -0,0 +1,42 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hefonts0.sty
+% ArabTeX
+% load Hebrew fonts for old LaTeX
+% 03.04.1997
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally and Bernd Raichle
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {hefonts0.sty} {3.05 define Hebrew fonts for old LaTeX} {03.04.1997}
+
+% OLD FONT SELECTION
+\message {using lfonts.tex}
+
+% load all necessary fonts
+
+\newfont {\tenheb }{hclassic}
+\newfont {\elvnheb}{hclassic scaled 1095}
+\newfont {\twlvheb}{hclassic \@magscale1}
+\newfont {\frtnheb}{hclassic \@magscale2}
+\newfont {\svtnheb}{hclassic \@magscale3}
+\newfont {\twtyheb}{hclassic \@magscale4}
+\newfont {\twfvheb}{hclassic \@magscale5}
+
+% add the \pheb command to the size changing hooks
+
+\@addfontinfo \@vpt {\def\pheb {\tenheb}}
+\@addfontinfo \@viipt {\def\pheb {\tenheb}}
+\@addfontinfo \@viiipt {\def\pheb {\tenheb}}
+\@addfontinfo \@ixpt {\def\pheb {\tenheb}}
+\@addfontinfo \@xpt {\def\pheb {\tenheb}}
+\@addfontinfo \@xipt {\def\pheb {\elvnheb}}
+\@addfontinfo \@xiipt {\def\pheb {\twlvheb}}
+\@addfontinfo \@xivpt {\def\pheb {\frtnheb}}
+\@addfontinfo \@xviipt {\def\pheb {\svtnheb}}
+\@addfontinfo \@xxpt {\def\pheb {\twtyheb}}
+\@addfontinfo \@xxvpt {\def\pheb {\twfvheb}}
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/hefonts1.sty b/language/arabic/arabtex/texinput/hefonts1.sty
new file mode 100644
index 0000000000..5189228b73
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hefonts1.sty
@@ -0,0 +1,44 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hefonts1.sty
+% ArabTeX
+% load Hebrew fonts for NFSS1
+% 24.05.1996
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally and Bernd Raichle
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {hefonts1.sty} {3.04 define Hebrew fonts for NFSS1} {24.05.1996}
+
+% NEW FONT SELECTION -- Version 1
+\message {using NFSS1}
+
+% define \pheb to use the `heb' family, `m'edium series und
+% `n'ormal shape.
+%
+\def\pheb{\family{heb}\series{m}\shape{n}\selectfont}
+
+% setup the font definition table
+% (`1' at the beginning of a fontname: size not available, print
+% warning to inform the user)
+%
+\new@fontshape{heb}{m}{n}{%
+ <5>1hclassic%
+ <6>1hclassic%
+ <7>1hclassic%
+ <8>1hclassic%
+ <9>1hclassic%
+ <10>hclassic%
+ <11>hclassic at10.95pt%
+ <12>hclassic at12.0pt%
+ <14>hclassic at14.4pt%
+ <17>hclassic at15.77441pt%
+ <20>hclassic at17.28pt%
+ <25>hclassic at20.736pt}{}
+\extra@def{heb}{}{}
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/texinput/hefonts2.sty b/language/arabic/arabtex/texinput/hefonts2.sty
new file mode 100644
index 0000000000..1fe0b856af
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hefonts2.sty
@@ -0,0 +1,72 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hefonts2.sty
+% ArabTeX
+% load Hebrew fonts for NFSS2
+% 27.04.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally and Bernd Raichle
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {hefonts2.sty} {3.11 define Hebrew fonts for NFSS2} {27.04.2003}
+
+% NEW FONT SELECTION -- Version 2
+%\a@message {using NFSS2}
+
+\def \fdef #1#2#3#4{% define NFSS2 font command
+\pdef #1{\def \pheb {\fontencoding {U}\fontfamily {#2}%
+\fontseries {#3}\fontshape {#4}\selectfont }%
+\ifx \a@normalfont \a@default \gdef \a@normalfont {#1}\fi
+%\setarabfont \pheb \set@arabfont }%
+\setarabfont \pheb }%
+\all@wcmd #1}
+
+\def \hdef #1{\fdef #1{heb}}% define Hebrew font
+
+% commands for selecting the default Hebrew fonts:
+
+\hdef \sethebrm {m}{n}
+\hdef \sethebbf {bx}{n}
+
+%\let \hc \sethebrm \all@wcmd \hc
+%\let \hp \sethebbf \all@wcmd \hp
+
+\hdef \hc {m}{n}
+\hdef \hp {bx}{n}
+
+% commands for selecting the standard Hebrew fonts from CTAN:
+
+\hdef \Jm {m}{Jm}
+\hdef \jm {m}{jm}
+\hdef \ds {m}{ds}
+\hdef \oj {m}{oj}
+\hdef \ta {m}{ta}
+
+% commands for selecting the Shalom family of Hebrew fonts from CTAN:
+
+\hdef \shlmold {m}{so}
+\hdef \shlmscr {m}{sr}
+\hdef \shlmstk {m}{sk}
+
+% commands for selecting the Frank Ruehl family of Hebrew fonts from CTAN:
+
+\hdef \fr {m}{fr}
+\hdef \frbx {bx}{fr}
+\hdef \frsl {sl}{fr}
+
+% commands for selecting the Carmel family of Hebrew fonts from CTAN:
+
+\hdef \crml {m}{crml}
+\hdef \crmlsl {sl}{crml}
+
+% All other definitions are done in file `Uheb.fd', which is
+% loaded on demand.
+
+%\def \a@defaultfont {\hc }
+\hc
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
diff --git a/language/arabic/arabtex/texinput/heparse.sty b/language/arabic/arabtex/texinput/heparse.sty
new file mode 100644
index 0000000000..650a617cb1
--- /dev/null
+++ b/language/arabic/arabtex/texinput/heparse.sty
@@ -0,0 +1,291 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% heparse.sty
+% ArabTeX
+% Modifications for Hebrew mode
+% 27.04.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {heparse.sty} {3.11 Hebrew parser routines} {27.04.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Hebrew
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \def@hebvoc {% define vowel parsing routines for Hebrew
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%% short vowels
+
+\def \sv@a {\sv@patach } % a: patach
+\def \sv@e {\sv@segol } % e: segol
+\def \sv@i {\sv@chireq } % i: chireq breve
+\def \sv@o {\sv@qamesqatuf } % o: qames-chatuph
+\def \sv@u {\sv@qibbus } % u: qibbus
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% long vowels
+
+\def \sv@A {\sv@qames } % A: qames
+\def \sv@E {\sv@serelongum } % E: sere yod
+\def \sv@I {\sv@chireqlongum } % I: chireq yod
+\def \sv@O {\sv@cholemlongum } % O: cholem waw
+\def \sv@U {\sv@shureq } % U: shureq
+\def \sv@Y {\sv@qameslongum } % _A: qames aleph
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% long vowels, defective
+
+\sv@def \a@a {\sv@qames } % _a: qames aleph ?
+\sv@def \a@e {\sv@shewa } % .i: shewa
+\sv@def \a@i {\sv@chireq } % _i: chireq yod ?
+\sv@def \a@o {\sv@cholem } % _o: cholem breve
+\sv@def \a@u {\sv@shureq } % _u: shureq ?
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% special vowels
+
+\sv@def \a@A {\sv@chatef@patach } % .a:
+\sv@def \a@E {\sv@sere } % _e: sere breve
+\sv@def \a@I {\sv@chatef@segol } % .e:
+\sv@def \a@O {\sv@chatef@qames } % .o:
+\sv@def \a@U {\put@syl \syl@con } % .u: no vowel mark
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% extra marks
+
+\sv@def \a@Za {\sv@sindot } % sin dot
+\sv@def \a@Ze {\sv@shindot } % shin dot
+\sv@def \a@Zi {\sv@rdot } % center dot
+\sv@def \a@Zo {\sv@raphe } % raphe
+\sv@def \a@Zu {\sv@dagesh } % dagesh
+
+\sv@def \a@ZA {\sv@ay } % Yiddish ay
+\sv@def \a@ZE {\sv@ey } % Yiddish ey
+\sv@def \a@ZI {\syl@voctest } % free
+\sv@def \a@ZO {\sv@oy } % Yiddish oy
+\sv@def \a@ZU {\syl@voctest } % free
+
+%%%%%%%%%%%%%%%%%%%%%%%%%% hamza handling
+
+\def \syl@hamza {% non-initial hamza, context #1'
+\put@con a\syl@voctest }
+
+\let \syl@hamzabeg \syl@hamza
+
+\def \syl@test@voc {% vowel or shewa ?
+\h@test@voc }
+
+\def \check@high ##1{\relax }
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for Hebrew
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% static definitions for Hebrew
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newif \ifp@tach \newif \ifch@lem
+
+\def \h@test@voc #1{% vowel or shewa ?
+\ifch@lem \ch@lemfalse \add@rdot \fi % rdot
+\if\is@vowel #1\def \next {\syl@voc #1}\else % test for vowel
+\ifx #1|\add@madda \def \next {\syl@shewa }% % meteg
+\else \def \next {\syl@shewa #1}% non-vowel follows
+\fi\fi \next }
+
+\def \syl@shewa #1{% put shewa if appropriate
+\ifp@tach \add@patachf \p@tachfalse \else
+\xpa\ifx \the\last@con B\else
+\ifx #1<\add@@shewa \else
+\ifcat \nxp #1\nxp <\add@@shewa \else
+ \add@sukun % shewa
+\fi\fi\fi\fi \put@syl \syl@con #1}
+
+\def \add@@shewa {% put shewa on final kaf
+\xpa\case \the\last@con \of
+{ k R {\add@shewa }}
+\endcase }
+
+\def \syl@meteg #1#2{% test for meteg and patach furtivum
+\ifx #2|\add@madda \def \next {#1}\else
+\ifx #2\a@A\p@tachtrue \def \next {#1}\else
+ \def \next {#1#2}%
+\fi\fi \put@syl \next }
+
+\gdef \test@cont #1{% vowel contact? put dummy if not cholem male
+\ifx #1O\def \next {\syl@con #1}\else
+\ifx #1U\def \next {\syl@con #1}\else
+\if\is@vowel #1\def \next {\syl@con N#1}\else
+\def \next {\syl@con #1}\fi\fi\fi \next }
+
+\def \test@patf #1{% vowel contact? put dummy, test for guttural: 05.10.01
+\ifx #1O\def \next {\test@p@tf #1}\else
+\ifx #1U\def \next {\test@p@tf #1}\else
+\if\is@vowel #1\def \next {\syl@con N#1}\else
+\def \next {\test@p@tf #1}\fi\fi\fi \next }
+
+\def \test@p@tf #1#2#3{% guttural at end: prepare patach furtivum
+\ifx #1h\ifx #2\a@Zu \p@tachtrue
+ \fi\fi
+\ifx #2a\ifx #3<\if\is@in@list #1PX>\p@tachtrue
+ \fi\fi\fi
+\syl@con #1#2#3}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \sv@patach {% a: put patach, test meteg
+\ifp@tach \add@patachf \p@tachfalse \else \add@fatha
+\fi \syl@meteg \test@cont }
+
+\def \sv@segol {% e: put segol, test meteg
+\add@zwarakay \syl@meteg \test@cont }
+
+\def \sv@qamesqatuf {% o: put qames qatuf, test meteg
+\add@ammad \syl@meteg \test@cont }
+
+\def \sv@qibbus {% u: put qibbus, test meteg
+\add@damma \syl@meteg \test@cont }
+
+%%%%%%%%%%%%%%%%
+
+\def \sv@qames {% long a: put qames, test meteg
+\add@fathaspec \syl@meteg \test@cont }
+
+\def \sv@qamesaleph {% long a: put qames, test meteg
+\add@fathaspec \syl@meteg \sv@qames@aleph }
+
+\def \sv@qames@aleph {% long a: put aleph
+\put@con a\put@syl \test@cont }
+
+%%%%%%%%%%%%%%%%
+
+\def \sv@sere {% long e: put sere breve, test meteg
+\add@kasraspec \syl@meteg \sv@s@re }
+
+\def \sv@s@re #1{% test for ey = E
+\ifx #1y\def \next {\sv@sere@longum }%
+\else \def \next {\test@patf #1}%
+\fi \next }
+
+\def \sv@serelongum {% long e: put sere, test meteg
+\add@kasraspec \syl@meteg \sv@sere@longum }
+
+\def \sv@sere@longum {% long e: put yod ?
+\test@yod }
+
+\def \test@yod #1{% vowel or consonant
+\if\is@vowel #1\def \next {\syl@con y#1}\else
+\put@con y\put@syl \def \next {\test@patf #1}%
+\fi \next }
+
+%%%%%%%%%%%%%%%%
+
+\def \sv@chireq {% i: put chireq, test meteg
+\add@kasra \syl@meteg \sv@ch@req }
+
+\def \sv@ch@req #1{% test for iy = I
+\ifx #1y\def \next {\sv@chireq@longum }%
+\else \def \next {\test@cont #1}%
+\fi \next }
+
+\def \sv@chireqlongum {% long i: put chireq, test meteg
+\add@kasra \syl@meteg \sv@chireq@longum }
+
+\def \sv@chireq@longum {% long i: put yod ?
+\test@yod }
+
+%%%%%%%%%%%%%%%%
+
+\def \sv@shureq {% long u: test meteg
+\syl@meteg \sv@sh@req }
+
+\def \sv@sh@req {% long u: put waw with shureq
+\put@con w\add@shadda \put@syl \test@patf }
+
+%%%%%%%%%%%%%%%%
+
+\def \sv@cholem #1{% short o: test meteg
+\ifx #1|\add@madda \def \next {\sv@ch@lem }%
+\else \def \next {\sv@ch@lem #1}%
+\fi \next }
+
+\def \sv@ch@lem #1{% short o: put cholem breve
+\xpa\ifx \the\last@con \a@s % omit cholem on sin
+\else \case #1\of
+{ a A Q w{\ch@lemtrue } % shift cholem
+ \default {\add@cholem } % deposit cholem
+} \endcase
+\fi \put@syl \sv@ch@lemwaw #1}
+
+\def \sv@ch@lemwaw #1{% test for ow = O
+\ifx #1w\def \next {\sv@cholem@longum }%
+\else \def \next {\test@cont #1}%
+\fi \next }
+
+\def \sv@cholemlongum {% long o: test meteg
+\syl@meteg \sv@cholem@longum }
+
+\def \sv@cholem@longum {% long o: put waw with cholem
+\put@con w\add@rdot \ch@lemfalse \put@syl \test@patf }
+
+%%%%%%%%%%%%%%%%
+
+\def \sv@chatef@patach {% put chatef patach, test meteg
+\add@fathatan \syl@meteg \test@cont }
+
+\def \sv@chatef@segol {% put chatef segol, test meteg
+\add@kasratan \syl@meteg \test@cont }
+
+\def \sv@chatef@qames {% put chatef qames, test meteg
+\add@dammatan \syl@meteg \test@cont }
+
+%%%%%%%%%%%%%%%%
+
+\def \sv@shewa {% put shewa unconditionally
+\add@shewa \put@syl \syl@con }
+
+\def \sv@sindot {% sin dot
+\voc@suk \advance \last@mod 10 \syl@voctest }
+
+\def \sv@shindot {% shin dot
+\voc@suk \advance \last@mod 20 \syl@voctest }
+
+\def \sv@rdot {% center dot
+\voc@suk \advance \last@mod 30 \syl@voctest }
+
+\def \sv@raphe {% raphe
+\voc@suk \advance \last@mod 40 \syl@voctest }
+
+\def \sv@dagesh {% dagesh, ww -> U, shureq?
+\add@shadda
+\xpa\ifx \the\last@con w\put@syl \def \next {\test@patf }%
+%\else \def \next {\syl@test@voc }%
+%\else \def \next {\syl@voctest }%
+\else \voc@suk \def \next {\syl@voctest }%
+\fi \next }
+
+\def \sv@dagesh {% dagesh, ww -> U, shureq?
+\add@shadda \voc@suk \syl@voctest }
+
+%%%%%%%%%%%%%%%%
+
+\def \sv@ay {% Yiddish ay
+\put@syl \put@con \a@i \v@ctrue \add@fatha \put@syl \test@patf }
+
+\def \sv@ey {% Yiddish ey
+\put@syl \put@con \a@i \put@syl \test@patf }
+
+\def \sv@oy {% Yiddish oy
+\put@syl \put@con \a@o \put@syl \test@patf }
+
+%%%%%%%%%%%%%%%%
+
+\def \add@rdot {\advance \last@mod \c@hamza }
+
+\def \add@cholem {\ifv@c \last@voc \c@wasla \fi }
+
+\def \add@patachf {\ifv@c \last@voc 13 \fi }
+
+\def \add@shewa {% put shewa unconditionally
+\ifv@c \last@voc \c@sukun \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
diff --git a/language/arabic/arabtex/texinput/hepatch.sty b/language/arabic/arabtex/texinput/hepatch.sty
new file mode 100644
index 0000000000..703485f467
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hepatch.sty
@@ -0,0 +1,37 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hepatch.sty
+% ArabTeX, Hebrew mode
+% last minute corrections
+% see \hversion, \hdatum and \hlevel at the end of the file
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% this is just another *.sty file
+% you do not have to do any manual patching
+% just put this file onto the TEXINPUT path
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\catcode`\@ = 11
+
+\newtoks \hversion \newtoks \hdatum \hversion = {3.10}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% presently no patches
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\hdatum = {17.09.2001} \def \hlevel {-}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {hepatch.sty}
+ {\the\hversion \hlevel \space patches for Hebrew} {\the\hdatum}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\catcode`\@ = \patchatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
diff --git a/language/arabic/arabtex/texinput/hescan.sty b/language/arabic/arabtex/texinput/hescan.sty
new file mode 100644
index 0000000000..628c7e178f
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hescan.sty
@@ -0,0 +1,216 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% hescan.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hescan.sty
+% Scanner for ISO 8859-8 Code, loaded by hebtex.sty
+% experimental scanner for Hebrew files
+% to activate it, say "\setcode {hed}" or "\setcode {HED}" or
+% "\setcode {pccode}" or "\setcode {newcode}" or "\setcode {iso8859-8}"
+% for Hebrew Windows encoding CP1255 say "\setcode{cp1255}"
+% 07.03.2002
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \hedatcode \undefined \else \xpa \endinput \fi
+
+\chardef \hedatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {hescan.sty}
+{3.10a scanner for HED and ISO 8859-8 encoding} {07.03.2002}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Hebrew
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \sethed@codes {\seta@codes % activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@a {b} \def \sc@b {g} \def \sc@c {d} \def \sc@d {h}
+%\def \sc@a {v} \def \sc@b {g} \def \sc@c {d} \def \sc@d {h}
+\def \sc@e {w} \def \sc@f {z} \def \sc@g {X} \def \sc@h {C}
+\def \sc@i {y} \def \sc@j {k} \def \sc@k {k-} \def \sc@l {l}
+\def \sc@m {m} \def \sc@n {m-} \def \sc@o {n} \def \sc@p {n-}
+%\def \sc@q {s} \def \sc@r {P} \def \sc@s {f} \def \sc@t {f-}
+\def \sc@q {s} \def \sc@r {P} \def \sc@s {p} \def \sc@t {p-}
+\def \sc@u {S} \def \sc@v {S-} \def \sc@w {q} \def \sc@x {r}
+\def \sc@y {\n@xp \a@S } \def \sc@z {t}
+%
+\xpa \def \csname sc@`\endcsname {Q}
+\a@digits = {0123456789} \a@paren = {()[]} \a@first = {}
+\globaldefs=0
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for Hebrew: oldcode and pccode
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \hed@scan #1>{% modified scanner call: token sequence -> \a@tokens
+\iftest@scan \tracingmacros = 1
+\ifshow \else \lowercase {\a@verb #1>}\fi\fi
+\global\def \a@rest {}\global\a@tokens = {}\@ssimfalse
+\novocalize \lowercase {\sc@beg #1\@ \@@ }% transform
+\iftest@scan \tracingmacros = 0 \xpa \a@verb \xpa (\the\a@tokens )>\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \hed@word #1#2{% transform input into internal notation
+ \def \next {\hed@word #2}%
+\ifx #1\@ \let \next \relax \else
+\ifcat \nxp #1\relax \def \next {\hed@cs #1#2}\else % control sequence
+ \ifx #1-\def \sc@char {B}\else
+ \ifx #1`\def \sc@char {Q}\else
+ \ifcat \noexpand #1a\edef \sc@char
+ {\csname sc@#1\endcsname }%
+ \else \def \sc@char {#1}%
+ \fi\fi\fi \sc@put
+\fi\fi \next }
+
+\def \h@d@cs #1#2{% test word end
+\def \sc@char {#1}\sc@put
+\ifx #2\@ \def \next {\sc@endscan #2}\else
+\ifcat -\nxp #2 \def \next {\hed@word #2}\else
+\def \next {\sc@back #2}\fi \fi \next }
+
+\def \hed@cs #1#2{% control sequence within a word; push back?
+\xpa \ifx #1\closegeresh \def \next {\h@d@cs {\nxp \lq }#2}\else
+\xpa \ifx #1\closequote \def \next {\h@d@cs {`}#2}\else
+ \def \next {\sc@back #1#2}%
+\fi\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \hed@select {% select the new scanner
+\heb@catcodes % inside hebtex.sty; to make sure
+\let \sc@beg \hed@word \let \sc@word \hed@word
+\let \sc@back \sc@@back \let \sc@endscan \sc@@endscan
+\sethed@codes \global\let \a@scan \hed@scan
+\a@message {input encoding set to ISO 8859-8 and other Hebrew conventions}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \hwin@catcodes {% assignments for CP 1255
+\countdef \is@m=2 \is@m = 192 \is@n = 64
+\loop \catcode \is@m = 11 \lccode \is@m = \is@n
+\ifnum 255 > \is@m \advance \is@m 1 \advance \is@n 1 \repeat
+\is@m=0 \is@n=0 \catcode `\^^a0 12 }
+
+{\hwin@catcodes
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Hebrew
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \sethwin@codes {% activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@^^c0 {"\n@xp\a@e} \def \sc@^^c1 {"\n@xp\a@I}
+\def \sc@^^c2 {"\n@xp\a@A} \def \sc@^^c3 {"\n@xp\a@O}
+\def \sc@^^c4 {"i} \def \sc@^^c5 {"\n@xp\a@E}
+\def \sc@^^c6 {"e} \def \sc@^^c7 {"a}
+\def \sc@^^c8 {"A} \def \sc@^^c9 {"\n@xp\a@o}
+\def \sc@^^ca {L} \def \sc@^^cb {"u}
+\def \sc@^^cc {"\n@xp\a@Zu} \def \sc@^^cd {|}
+\def \sc@^^ce {B} \def \sc@^^cf {"\n@xp\a@Zo}
+
+\def \sc@^^d0 {K} \def \sc@^^d1 {"\n@xp\a@Ze}
+\def \sc@^^d2 {"\n@xp\a@Za} \def \sc@^^d3 {:}
+\def \sc@^^d4 {w-w} \def \sc@^^d5 {wy}
+\def \sc@^^d6 {y-y} \def \sc@^^d7 {@}
+\def \sc@^^d8 {@} \def \sc@^^d9 {@} \def \sc@^^da {@} \def \sc@^^db {@}
+\def \sc@^^dc {@} \def \sc@^^dd {@} \def \sc@^^de {@} \def \sc@^^df {@}
+
+\def \sc@M {M} %\def \sc@N {N}
+\def \sc@^^e0 {Q} \def \sc@^^e1 {b} \def \sc@^^e2 {g} \def \sc@^^e3 {d}
+\def \sc@^^e4 {h} \def \sc@^^e5 {w} \def \sc@^^e6 {z} \def \sc@^^e7 {X}
+\def \sc@^^e8 {C} \def \sc@^^e9 {y} \def \sc@^^ea {k} \def \sc@^^eb {k}
+\def \sc@^^ec {l} \def \sc@^^ed {m} \def \sc@^^ee {m} \def \sc@^^ef {n}
+
+\def \sc@^^f0 {n} \def \sc@^^f1 {s} \def \sc@^^f2 {P} \def \sc@^^f3 {p}
+\def \sc@^^f4 {p} \def \sc@^^f5 {S} \def \sc@^^f6 {S} \def \sc@^^f7 {q}
+\def \sc@^^f8 {r} \def\sc@^^f9{\n@xp\a@S} \def\sc@^^fa {t} \def \sc@^^fb {@}
+\def \sc@^^fc {@} \def \sc@^^fd {@} \def \sc@^^fe {@} \def \sc@^^ff {@}
+\a@digits = {0123456789}
+\a@paren = {()[]}
+\a@first = {"`^^e6}
+\globaldefs=0 }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for Hebrew, CP1255, ISO8859-8, newcode
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \hwin@scan #1>{% standard scanner call: token sequence -> \a@tokens
+\iftest@scan \tracingmacros = 1
+\ifshow \else \lowercase{\a@verb #1>}\fi\fi
+\global\def \a@rest {}\global\a@tokens = {}\sc@beg #1\@ \@@
+\iftest@scan \tracingmacros = 0 %
+\xpa \a@verb \xpa (\the\a@tokens )>\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \hwin@beg {% start CP 1255 scanner
+\h@mzafalse \iz@fetfalse \@ssimfalse \novocalize % because of explicit quoting
+\hwin@word }
+
+{\catcode `\^^M=13 \endlinechar = -1
+\gdef \hwin@word #1{% transform input into internal notation
+\ifx #1\@ \def \next {\sc@endscan }\else % finished
+\if \nxp ^^M\nxp #1\def \next {\hwin@par #1}% active character
+\else \def \next {\hwin@w@rd #1}%
+\fi\fi \next }%
+} % catcode 13
+
+\gdef \hwin@w@rd #1#2{% special cases
+\case #1\of
+{ #2{\hwin@word #1-#2}
+ -{\hwin@minus #2}
+ ^^a0{\sc@back #2}
+ ^^ad{\hwin@minus #2}
+\default {\hwin@@word #1#2}
+}\endcase }
+
+\gdef \hwin@@word #1#2{% default branch
+\ifcat a\nxp #1\edef \sc@char {\csname sc@#1\endcsname }%
+\else \def \sc@char {\nxp #1}%
+\fi \sc@put
+\def \next {\hwin@word #2}%
+\next }
+
+\gdef \hwin@@word #1{% default branch
+\ifcat a\nxp #1\edef \sc@char {\csname sc@#1\endcsname }%
+\else \def \sc@char {\nxp #1}%
+\fi \sc@put \hwin@word }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \hwin@minus {% hyphen between words
+\def \sc@char {-}\sc@put \hwin@beg }
+
+\gdef \hwin@par #1\@ \@@ {% new line, push back the rest
+\sc@back \\ #1\@ \@@ }
+
+\gdef \hwin@endscan \@@ {\global\let \a@scan \hwin@scan }
+} % \hwin@catcodes
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \set@hwin {% select the CP 1255 scanner
+\let \sc@beg \hwin@beg \let \sc@word \hwin@word
+\let \sc@back \sc@@back \let \sc@endscan \hwin@endscan
+\global\let \a@scan \hwin@scan \sethwin@codes
+\hwin@catcodes
+\a@message {input encoding set to Windows CP 1255 conventions}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\xpa \def \xpa \sc@table \xpa {\sc@table % add the Hebrew encodings
+hed\hed@select newcode\hed@select pccode\hed@select
+iso8859-8\hed@select hwin\set@hwin cp1255\set@hwin }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@message {scanner for ISO 8859-8, CP1255, and other Hebrew codes installed.}
+
+\catcode `\@ = \hedatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/hetrans.sty b/language/arabic/arabtex/texinput/hetrans.sty
new file mode 100644
index 0000000000..93168b793e
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hetrans.sty
@@ -0,0 +1,87 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hetrans.sty
+% ArabTeX
+% Modifications for Hebrew mode
+% needs atrans.sty version 3.09 or later
+% 17.07.1999
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \transatcode \undefined \UsePackage {atrans}
+\fi
+
+\catcode`\@ = 11 % presupposes atrans.sty loaded
+
+\a@ident {hetrans.sty} {3.09 Hebrew transcription module} {17.07.1999}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\catcode `\~=10
+\gdef \tr@heb {% my transliteration for Hebrew
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\tr@zdmg % start with default and modify
+\gdef \tr@@e ##1{% test for ey -> `e
+ \ifx ##1y\def \next {\`e\tr@aword }\else
+ \def \next {\setc@p e\tr@aword ##1}\fi \next}
+\gdef \tr@B {-} \gdef \tr@C {\d{t}} \gdef \tr@D {d}
+\gdef \tr@R {g} \gdef \tr@U {\=u\-} \gdef \tr@V {t}
+\gdef \tr@X {\d{h}}
+\tr@def \a@b {b} \tr@def \a@e {\rsh@ft{07}{$^i$}\-}
+\tr@def \a@f {p} \tr@def \a@j {\rsh@ft{07}{$^i$}\-}
+\tr@def \a@k {k} \tr@def \a@o {\=o\-}
+\tr@def \a@A {\rsh@ft{07}{$^a$}\-} \tr@def \a@E {\=e\-}
+\tr@def \a@H {h} \tr@def \a@I {\rsh@ft{07}{$^e$}\-}
+\tr@def \a@O {\rsh@ft{07}{$^o$}\-} \tr@def \a@U {}
+\gdef \tr@aword {\@vocalfalse \tr@@aword }}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \tr@zaw {% ZAW transliteration for Hebrew
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\tr@heb % start with default and modify
+\gdef \tr@@e ##1{% test for ey -> `\ae
+ \ifx ##1y\def \next {\`{\ae}\tr@aword }\else
+ \def \next {\ae\tr@aword ##1}\fi \next}
+\gdef \tr@@E ##1{% test for Ee -> ey
+ \ifx ##1e\def \next {\setc@p e\tr@aword y}\else
+ \def \next {\^e\tr@aword ##1}\fi \next}
+\gdef \tr@o {\aa } \gdef \tr@I {\^{\i}\-}
+\gdef \tr@O {\^o\-} \gdef \tr@U {\^u\-}
+\tr@def \a@e {\rsh@ft{07}{$^e$}\-} \tr@def \a@i {i\-}
+\tr@def \a@j {\rsh@ft{07}{$^e$}\-} \tr@def \a@o {\=o\-}
+\tr@def \a@E {e\-}
+\tr@def \a@I {\rsh@ft{07}{$^{\hbox{\scriptsize \ae}}$}\-}
+\tr@def \a@O {\rsh@ft{07}{$^{\mathaccent 23a}$}\-}
+\ifx \tr@code \tr@oldcode \else \a@message {ZAW~transliteration}\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \tr@gesen {% transliteration for Hebrew after Gesenius
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\tr@heb % start with default and modify
+\gdef \tr@@e ##1{% test for ey -> `e
+ \ifx ##1y\def \next {\`e\tr@aword }\else
+ \def \next {\u{e}\tr@aword ##1}\fi \next}
+\gdef \tr@f {ph} \gdef \tr@C {th}
+\gdef \tr@H {h} \gdef \tr@R {kh}
+\tr@def \a@e {\rsh@ft{07}{$^e$}\-}
+\tr@def \a@j {\rsh@ft{07}{$^e$}\-}
+\ifx \tr@code \tr@oldcode \else \a@message {Gesenius'~transliteration}\fi }
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\xpa \def \xpa \tr@table \xpa {\tr@table % add the Hebrew encodings
+gesenius\tr@gesen zaw\tr@zaw heb\tr@stdheb }
+
+\def \tr@stdheb {\tr@heb
+\ifx \tr@code \tr@oldcode \else
+\a@message {ArabTeX default transliteration}\fi }
+
+\settrans {heb}% default
+
+\catcode`\@ = \transatcode
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+
+
diff --git a/language/arabic/arabtex/texinput/hewrite.sty b/language/arabic/arabtex/texinput/hewrite.sty
new file mode 100644
index 0000000000..48b39b642b
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hewrite.sty
@@ -0,0 +1,589 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hewrite.sty
+% ArabTeX
+% Modifications for Hebrew mode
+% 21.05.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {hewrite.sty} {3.11 for all supported Hebrew fonts} {21.05.2003}
+
+\UsePackage {hebsymb} % Hebrew font character definitions
+\UsePackage {hebchrs} % Hebrew letter token definitions
+
+\chardef \sind@t 1 \chardef \shind@t 2 \chardef \rd@t 3
+\chardef \r@phe 4 \chardef \illch@r 33
+
+\newcount \heb@dsp \newcount \heb@cd
+\newcount \heb@voc \newcount \h@modii \newcount \h@modi
+
+\newif \if@dagesh \newif \if@final \newif \if@meteg
+%\newif \ifhv@wel % is obsolete, remove!
+\newif \ifsp@c
+
+\newdimen \h@ht \newdimen \h@p
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \heb@write #1>{% Hebrew output routine
+\iftest@write \tracingmacros = 1
+\iftest@parse \else \a@verb (#1)>\fi\fi
+\a@write@hook
+\ifa@@write \heb@testfont \heb@beg #1>0+0*>\fi
+\iftest@write \tracingmacros = 0
+\fi }
+
+\def \heb@testfont {% diagnose font, look for vowels and ayin
+\edef \next {\the\font }%
+\ifx \next \h@font \else
+\iftest@font \a@message {Hebrew font \next selected.}\fi
+\global\let \h@font \next \h@testfont \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \isch@r #1{00% code position in font not empty?
+\setbox0 \hbox {\tracinglostchars 0 \char #1}%
+\ifdim \wd0 = \z@ \xpa \setiffalse \fi }
+
+\def \h@testfont {% diagnose font, look for vowels and ayin
+\if\isch@r {"80}\global\heb@dsp "20\else
+\if\isch@r {"E0}\global\heb@dsp "80\else
+\if\isch@r {"60}\global\heb@dsp 0\else
+ \global\heb@dsp 0\errmessage {no usable Hebrew font found}%
+\fi\fi\fi
+\gdef \v@adj {0}\global\h@ht \ht0 \global\h@p .1\h@ht \relax
+\xdef \a@slant {\xpa\getfactor \the\fontdimen1\font }%
+\heb@cd \heb@dsp \advance \heb@cd 114 \xdef \hc@Pv {\the\heb@cd }%
+\if\isch@r {"10}\set@shalom\else
+\if\isch@r {1}\set@hclassic\else
+ \set@hebstd
+\fi\fi }
+
+\def \set@hclassic {% and dclassic, hcaption, dcaption
+\global\let \h@kern \relax \global\sp@cfalse
+\gdef \v@adj {0}\gdef \hc@Pv {123}%
+\if\isch@r {"30}\global\sp@ctrue
+\gdef \v@adj {-.2}\gdef \hc@Pv {114}%
+\fi \set@hcls }
+
+\def \set@shalom {% shlm_old, shlm_stk, shlm_scr
+\gdef \h@kern {\kern.05em }\global\sp@cfalse
+\set@shlm }
+
+\def \set@hebstd {% jerusalem, oldjaffa, telaviv, deadsea,
+% fr, frbx, frsl, crml, crmlsl
+\global\let \h@kern \relax \global\sp@ctrue
+\set@hstd }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \heb@beg #1#2*#3{% start output
+% c m * c
+\h@test@chr #1\heb@end #1#2*#3}
+
+\def \heb@end #1#2*#3{% final character
+% c m * c
+\ifx #1>\let \next \relax
+\else \def \next {\heb@mid #3}%
+ \ifx #1-\else
+ \ifcat \nxp #1-\h@put@spec #1#2*#3<%
+ \else \h@put@end #1#2*#3<%
+ \fi\fi
+ \h@test@chr #3%
+\fi \next }
+
+\def \heb@mid #1#2*#3{% non-final character
+% c m * c
+\ifx #1>\let \next \relax
+\else \def \next {\heb@mid #3}%
+ \ifcat \nxp #1-\h@put@spec #1#2*#3<%
+ \else \h@put@mid #1#2*#3<%
+ \fi
+ \h@test@chr #3%
+\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \h@put@end {% final position
+\if@final \advance \act@cd -1 \fi \h@put@mid }
+
+\gdef \h@put@mid #1#2+#3*#4<{% deposit character
+% c m1 + m2 * c <
+% \def \next {\heb@mid #4}%
+\ifnum \act@cd = \hc@@ \relax \h@put@ill \else % illegal character
+\case #1\of
+{ B{\put@maqqef \def \next {\heb@end #4}}
+ K{\put@box {$|$}}
+ M{\put@box {$\Box$}}
+ WN{\put@phantom }
+ y{\h@ylig #4<}
+ w{\h@wlig #4<}
+\default {\h@putchar }
+}\endcase
+\fi
+\heb@accent #2+#3*\h@kern
+\ifnum \act@cd = \hc@l \relax \smash {\unhbox \ab@x }%
+\else \unhbox \ab@x
+\fi }
+
+\def \h@wlig #1<{% waw ligatures
+\ifx #1w%
+\fi
+\h@putchar }
+
+\def \h@ylig #1<{% yod ligatures
+\ifx #1w%
+\fi
+\h@putchar }
+
+\def \h@put@ill {\put@box {$\bullet$}}
+
+\def \put@phantom {% small space
+\heb@cd \hc@y \advance \heb@cd \heb@dsp
+\put@box {\hphantom{\char \the\heb@cd }}}
+
+{\catcode`\^ 12 \catcode `\_ 12 \catcode `\& 12
+\catcode `\A 12 \catcode `\B 12 \catcode `\C 12
+\catcode `\D 12 \catcode `\E 12 \catcode `\F 12
+\catcode `\G 12 \catcode `\H 12 \catcode `\I 12
+\catcode `\J 12 \catcode `\K 12 \catcode `\L 12
+\catcode `\M 12 \catcode `\N 12 \catcode `\O 12
+\catcode `\P 12
+%
+\gdef \h@put@spec #1#2*#3<{% special character
+% c m * c <
+\case #1\of
+{ -|{}
+% !,.{#1}
+ :{#1\,}
+ \lq {\rm \bf `}
+ `{\rm \bf ``}
+% A{{\tt "}\def \next {\heb@end #3}} % "
+ A{{\tt "}} % "
+ B{{\rm \bf ,}} % ,
+ C{{\tt -}} % -
+ D{{\tt \char`\|}} % |
+% E{{\tt \char'015}\def \next {\heb@end #3}} % '
+ E{{\tt \char'015}} % '
+ F{{\tt \char`\\}} % \
+ G{{\tt \char`\}}} % {
+ H{{\tt \char`\{}} % }
+ I{{\bf $\cdots$}} % ...
+ J{{\bf $\div$}} % -:-
+ K{{\tt \char`\>}} % <
+ L{{\tt \char`\<}} % >
+ M{{\rm \bf --}} % --
+ N{{\rm \bf ---}} % ---
+ O{{\rm \bf `}} % `
+% P{{\rm \bf '}\def \next {\heb@end #3}} % '
+ P{{\rm \bf '}} % '
+\default {{\ifsp@c \else \rm \bf \fi
+ \ifx #1][\else \ifx #1[]\else
+ #1\fi\fi}}
+}\endcase
+\ifx #1A\else \ifx #1E\else \ifx #1'\else
+\def \next {\heb@end #3}\fi\fi\fi }
+}% \catcodes 12
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \h@test@chr #1{% get character attributes
+\@dageshfalse \@finalfalse \act@mod 0 \act@cd \hc@@
+\def \hc@sk {#1}%
+\csname tc@\string #1\endcsname }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \heb@accent #1+#2*{% put modifier onto contents of "\ab@x"
+% m1 + m2 *
+\red@mod = 0#1 \relax \advance \red@mod 100 \relax
+\xpa \heb@split \the\red@mod *\h@putaccent #2*}
+
+\def \h@putmod #1{% deposit modifier
+\ifcase #1\relax
+\or \h@sindot \or \h@shindot \or \h@rdot \or \h@raphe \fi }
+
+\def \heb@split 1#1#2*{% separate modifier 1
+% 1 m11 m12 *
+\h@putmod #1\@metegfalse \red@mod = #2\relax
+\ifnum \red@mod > 3 \advance \red@mod -4 \@metegtrue \fi
+\ifnum \red@mod > 1 \advance \red@mod -2 \h@cholem \fi
+\ifnum \red@mod > 0 \advance \red@mod -1 \@dageshtrue \fi }
+
+\def \h@putaccent #1*{% deposit vowels
+\h@putmod \act@mod
+\ifcase 0#1\relax
+\put@dummy \or \put@shwa \or \put@patach \or \put@chireq \or
+\put@qibbus \or \put@chpatach \or \put@chsegol \or \put@chqames \or
+\put@segol \or \put@cholem \or \put@qames \or \put@sere \or
+\put@qameschat \or \put@patachf \fi
+\if@dagesh \put@dagesh \fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \h@@putchar {% choose character glyph
+\ifnum \act@cd = \hc@v \relax \h@putlig \hc@w \hc@w \else
+\ifnum \act@cd = \hc@oy \relax \h@putlig \hc@y \hc@w \else
+\ifnum \act@cd = \hc@ey \relax \h@putlig \hc@y \hc@y \else
+ \h@put@char \act@cd
+\fi\fi\fi }%
+
+\def \h@putlig #1#2{% Hebrew ligature
+\h@put@char #1\setbox4 \box \ab@x
+\h@put@char #2\setbox6 \box \ab@x
+\put@box {\unhcopy4 \unhcopy6 }}%
+
+\def \h@put@char #1{% choose character glyph
+\heb@cd #1\advance \heb@cd \heb@dsp \put@b@x {\the\heb@cd }}%
+
+\def \h@@putdot #1{% put a dot above a character
+\dimen@ 1.25\h@ht \dimen2 \a@slant\dimen@ \advance\dimen2 #1\a@wd
+\global\setbox\ab@x \hbox
+{\rlap{\kern\dimen2 \raise\dimen@\hbox{\the@dot }}\unhcopy\ab@x}}%
+
+\def \h@@raphe {% no dagesh
+\setbox0 \hbox {\the@raphe }\dimen@ 1.25\h@ht
+\dimen2 .5\a@wd \advance\dimen2 -.5\wd0 \advance\dimen2 \a@slant\dimen@
+\global\setbox\ab@x \hbox
+{\rlap{\kern\dimen2 \raise\dimen@\box0 }\unhcopy\ab@x }}%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for vowel positioning
+% CAUTION: these routines are called in HMODE
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \set@hcls{% routines for the HCLASSIC font family
+\globaldefs = 1\relax
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+\let \h@putchar \h@@putchar
+%
+\def \put@maqqef {% deposit maqqef
+\put@b@x {\the\act@cd }}%
+%
+\def \h@vowel {% check for meteg
+\if@meteg \xpa \h@meteg \else \xpa \h@putvowel \fi }%
+%
+\def \h@meteg ##1{% put vowel and meteg
+\h@putvowel {\char 8 ##1}}%
+%
+\def \the@dot {\char 0}%
+%
+\def \the@raphe {\vrule width.8\a@wd height.4pt depth0pt }%
+%
+\def \put@dummy {\h@vowel {}}% % dummy for meteg, silluq
+\def \put@patach {\h@vowel {\char 1 }}% % patach
+\def \put@qames {\h@vowel {\char 2 }}% % qames
+\def \put@segol {\h@vowel {\char 3 }}% % segol
+\def \put@qibbus {\h@vowel {\char 4 }}% % qibbus
+\def \put@chireq {\h@vowel {\char 5 }}% % chireq
+\def \put@qameschat {\h@vowel {\char 6 }}% % qames chatuph
+\def \put@shwa {\h@vowel {\char 7 }}% % shwa
+\def \put@sere {\h@vowel {\char 9 }}% % sere
+\def \put@chpatach {\h@vowel {\char 1 \char 7 }}% % chateph patach
+\def \put@chsegol {\h@vowel {\char 3 \char 7 }}% % chateph segol
+\def \put@chqames {\h@vowel {\char 6 \char 7 }}% % chateph qames
+\def \put@cholem {\h@vowel {}\h@ldot }% % cholem breve, meteg?
+\def \put@patachf {\h@vowel {\hphantom
+ {\char 1 }\char 1 }}% % patach furtivum
+%
+\def \put@dagesh {\def \vadj {.48}\def \hadj {0}% default
+\ifnum \act@cd = \hc@j \def \hadj {-.2}\fi % gimel
+\ifnum \act@cd = \hc@w \def \hadj {-.3}\def \vadj {.55}\fi % waw
+\ifnum \act@cd = \hc@z \def \hadj {-.4}\fi % zayin
+\ifnum \act@cd = \hc@tt \def \hadj {.1}\fi % tet
+\ifnum \act@cd = \hc@y \def \hadj {-.45}\def \vadj {.55}\fi % yod
+\ifnum \act@cd = \hc@l \def \hadj {-.1}\def \vadj {.3}\fi % lamed
+\ifnum \act@cd = \hc@n \def \hadj {-.2}\fi % nun
+\ifnum \act@cd = \hc@nf \def \hadj {-.2}\fi % nun sofit
+\ifnum \act@cd = \hc@f \def \hadj {.15}\fi % pe
+\ifnum \act@cd = \hc@ff \def \hadj {.15}\fi % pe sofit
+\ifnum \act@cd = \hc@ss \def \hadj {.1}\fi % sade
+\ifnum \act@cd = \hc@sf \def \hadj {.1}\fi % sade sofit
+\ifnum \act@cd = \hc@si \def \hadj {.07}\fi % shin
+\ifnum \act@cd = \hc@M \def \vadj {.7}\fi % box
+\dimen@ \vadj\a@ht \dimen2 \a@slant\dimen@
+\advance\dimen2 \hadj\a@wd \advance\dimen2 .5\a@wd
+\global\setbox\ab@x \hbox
+%{\rlap{\kern\dimen2 \raise\dimen@\hbox{\char 0 }}\unhcopy\ab@x}}%
+{\rlap{\kern\dimen2 \raise\dimen@\hbox{\the@dot }}\unhcopy\ab@x}}%
+%
+\let \h@put@dot \h@@putdot
+%
+\let \h@raphe \h@@raphe
+%
+\def \h@shindot {\h@put@dot {.8}}% % right dot for shin
+%
+\def \h@sindot {\h@put@dot {.2}}% % left dot for sin
+%
+\def \h@rdot {\h@put@dot {.5}}% % right dot for waw, cholem breve
+%
+\def \h@ldot {% left dot for cholem breve
+\ifnum \act@cd = \hc@l \relax \h@put@dot {-.1}% lamed
+\else \h@put@dot {.1}\fi }%
+%
+\def \h@cholem {% depends on carrier
+\ifnum \act@cd = \hc@w \h@rdot \else \h@shindot \fi }%
+%
+\def \h@putvowel ##1{% vowel mark
+\ifx ##1\relax \relax \else \def \hadj {0}\def \vadj {0}%
+\ifnum \act@cd = \hc@P \let\vadj \v@adj \put@b@x{\hc@Pv }\else % vowel-ayin
+\ifnum \act@cd = \hc@kf \def \hadj {-.1}\def \vadj {.85}\else % final kaph
+\ifnum \act@cd = \hc@r \def \hadj {.35}\else % resh
+\ifnum \act@cd = \hc@d \def \hadj {.2}\else % daleth
+\ifnum \act@cd = \hc@q \def \hadj {.1}\else % qoph
+\ifnum \act@cd = \hc@w \def \hadj {.15}\else % waw
+\ifnum \act@cd = \hc@si \def \hadj {-.1}\else % sin
+\fi\fi\fi\fi\fi\fi\fi
+\setbox0 \hbox to \a@wd {\hss ##1\hss}\dimen@ \vadj\a@ht
+\dimen2 \a@slant\dimen@ \advance\dimen2 \hadj\a@wd
+\global\setbox\ab@x \hbox
+{\rlap {\kern\dimen2 \raise\dimen@\box0 }\unhcopy\ab@x }\fi }%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\globaldefs = 0 }% end font HCLASSIC
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+\global\let \@set@hcls \set@hcls
+
+\gdef \set@hcls{% routines for the HCLASSIC font family
+%\globaldefs = 1\relax
+\a@message {patch HCLASSIC}%
+\@set@hcls
+\globaldefs = 1\relax
+\def \the@dot {\vrule width\h@p height0pt depth\h@p }%
+\def \the@mdot {\vrule width\h@p height-\h@p depth2\h@p }%
+\def \the@ldot {\vrule width\h@p height-2\h@p depth3\h@p }%
+\def \the@shwa {\the@dot \kern-\h@p \the@ldot }%
+\def \the@sere {\the@dot \kern\h@p \the@dot }%
+\def \the@segol {\the@dot \the@ldot \the@dot }%
+\def \the@qibbus {\the@dot \the@mdot \the@ldot }%
+\def \the@meteg {\vrule width\h@p height0pt depth3\h@p }%
+\def \the@meteg {\vrule width\h@p height-.2\h@p depth3\h@p }%
+\def \the@patach {\vrule width3\h@p height0pt depth\h@p }%
+\def \the@qames {\the@patach \kern-2\h@p \the@meteg \kern\h@p }%
+\def \put@dummy {\h@vowel {}}%
+\def \put@patach {\h@vowel {\the@patach }}%
+\def \put@qames {\h@vowel {\the@qames }}%
+\def \put@segol {\h@vowel {\the@segol }}%
+\def \put@qibbus {\h@vowel {\the@qibbus }}%
+\def \put@chireq {\h@vowel {\the@dot }}%
+\def \put@qameschat {\h@vowel {\the@qames }}%
+\def \put@shwa {\h@vowel {\the@shwa }}%
+\def \put@sere {\h@vowel {\the@sere }}%
+\def \put@chpatach {\h@vowel {\the@patach \kern\h@p \the@shwa }}%
+\def \put@chsegol {\h@vowel {\the@segol \kern\h@p \the@shwa }}%
+\def \put@chqames {\h@vowel {\the@qames \kern\h@p \the@shwa }}%
+\def \put@cholem {\h@vowel {}\h@ldot }%
+\def \put@patachf {\h@vowel {\kern4\h@p \the@patach }}%
+%
+\def \h@vowel {% check for meteg
+\if@meteg \xpa \h@meteg \else \xpa \h@putvowel \fi }%
+%
+\def \h@meteg ##1{% put vowel and meteg
+\h@putvowel {\the@meteg \kern\h@p ##1}}%
+%
+\def \h@vowel ##1{% check for meteg
+\if@meteg \xpa \h@meteg \else \xpa \h@putvowel \fi {\raise -.2ex\hbox{##1}}}%
+%
+\def \h@vowel ##1{% check for meteg
+\if@meteg \h@meteg {##1}\else \h@putvowel {\raise -.2ex\hbox{##1}}\fi }%
+%
+\def \h@vowel ##1{% check for meteg
+\if@meteg
+\h@putvowel {\raise -.2ex\hbox{\the@meteg \kern\h@p ##1}}\else
+\h@putvowel {\raise -.2ex\hbox{##1}}\fi }%
+%
+\globaldefs = 0 }% end standard fonts
+
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \set@shlm{% routines for the SHALOM fonts
+\globaldefs = 1\relax
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+\def \h@putchar {% choose character glyph
+\ifnum \act@cd = \hc@v \put@b@x {18}\else
+\ifnum \act@cd = \hc@oy \put@b@x {19}\else
+\ifnum \act@cd = \hc@ey \put@b@x {21}\else
+ \h@put@char \act@cd
+\fi\fi\fi }%
+%
+\def \put@maqqef {% deposit maqqef
+\put@box {\char 25}}%
+%
+\def \isn@rrow {% narrow character (class 2) ?
+\xpa \is@in@list \hc@sk gdinrwyGDNORUWY>}%
+%
+\def \h@vowel ##1{% check class
+\heb@voc = ##1\relax
+\if\isn@rrow \advance\heb@voc 17
+\put@box {\unhcopy\ab@x \llap{\char\heb@voc \kern -.075em }}%
+\else \xpa\h@v@wel \xpa{\the\heb@voc }\fi }%
+%
+\def \h@v@wel ##1{% add vowel char right
+\put@box {\unhcopy\ab@x \char ##1}}%
+%
+\def \put@dummy {\relax }% % dummy for meteg, silluq (?)
+\def \put@segol {\h@vowel {50}}% % segol
+\def \put@qibbus {\h@vowel {52}}% % qibbus
+\def \put@qameschat {\h@vowel {54}}% % qames chatuph
+\def \put@sere {\h@vowel {49}}% % sere
+\def \put@chpatach {\h@vowel {56}}% % chateph patach
+\def \put@chsegol {\h@vowel {55}}% % chateph segol
+\def \put@chqames {\h@vowel {57}}% % chateph qames
+\def \put@patachf {\h@vowel {70}}% % patach furtivum
+%
+\def \put@shwa {% shwa on final kaf ?
+\ifnum\act@cd = \hc@kf \h@v@wel {85}\else \h@vowel {51}\fi }%
+%
+\def \put@qames {% qames on alef or final kaf ?
+\ifnum\act@cd = \hc@a \put@b@x {17}\else
+\ifnum\act@cd = \hc@kf \h@v@wel {86}\else \h@vowel {54}\fi\fi }%
+%
+\def \put@patach {% patach on alef or 2 yod ?
+\ifnum\act@cd = \hc@ey \put@b@x {22}\else
+\ifnum\act@cd = \hc@a \put@b@x {16}\else \h@vowel {53}\fi\fi }%
+%
+\def \put@chireq {% chireq on yod ?
+\ifnum\act@cd = \hc@y \put@b@x {20}\else \h@vowel {48}\fi }%
+%
+\def \put@cholem {% cholem breve, meteg?
+\ifnum\act@cd = \hc@l \put@box {\char 61 \unhcopy\ab@x }\else
+\put@box {\rlap {\kern .1em \char 61 }\unhcopy\ab@x }\fi }%
+%
+\def \h@cholem {% depends on carrier
+\ifnum \act@cd = \hc@w \put@b@x {62}\else \h@shindot \fi }%
+%
+\def \h@shindot {% right dot for sin
+\ifnum \act@cd = \hc@si \put@b@x {23}\else
+\put@box {\unhcopy\ab@x \llap {\char 61 \kern .1em}}\fi }%
+%
+\def \h@sindot {% left dot for sin
+\ifnum \act@cd = \hc@si \put@b@x {24}\fi }%
+%
+\def \h@rdot {\h@v@wel {61}}% right dot for waw, cholem breve
+%
+\def \h@raphe {\h@v@wel {26}}% soft consonant
+%
+\def \put@dagesh {% test for yod and class2
+\ifnum\act@cd = \hc@y \h@v@wel {89}\else
+\ifnum\act@cd = \hc@w \put@b@x {60}\else
+\if\isn@rrow \put@box {\unhcopy\ab@x \llap {\char 88 \kern .05em}}%
+\else \h@v@wel {87}\fi\fi\fi }%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\globaldefs = 0 }% end font SHALOM
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \set@hstd{% routines for the standard fonts
+\globaldefs = 1\relax
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+\let \h@putchar \h@@putchar
+%
+\def \put@maqqef {% deposit maqqef
+\put@box {\kern.05em\raise .6ex \hbox {\char \act@cd }\kern.05em}}%
+%
+\let \h@raphe \h@@raphe
+%
+\let \h@put@dot \h@@putdot
+%
+\def \h@shindot {\h@put@dot {.8}}% % right dot for shin
+%
+\def \h@sindot {\h@put@dot {.2}}% % left dot for sin
+%
+\def \h@rdot {\h@put@dot {.5}}% % right dot for waw, cholem breve
+%
+\def \h@ldot {% left dot for cholem breve
+%\ifnum \act@cd = \hc@l \relax \h@put@dot {-.1}% lamed
+\ifnum \act@cd = \hc@l \relax \h@put@dot {-.2}% lamed
+\else \h@put@dot {.1}\fi }%
+%
+\def \h@cholem {% depends on carrier
+\ifnum \act@cd = \hc@w \h@rdot \else \h@shindot \fi }%
+%
+\def \the@raphe {\vrule width8\h@p height\h@p depth0pt }%
+\def \the@dot {\vrule width\h@p height0pt depth\h@p }%
+\def \the@mdot {\vrule width\h@p height-\h@p depth2\h@p }%
+\def \the@ldot {\vrule width\h@p height-2\h@p depth3\h@p }%
+\def \the@shwa {\the@dot \kern-\h@p \the@ldot }%
+\def \the@sere {\the@dot \kern\h@p \the@dot }%
+\def \the@segol {\the@dot \the@ldot \the@dot }%
+\def \the@qibbus {\the@dot \the@mdot \the@ldot }%
+\def \the@meteg {\vrule width\h@p height0pt depth3\h@p }%
+\def \the@patach {\vrule width3\h@p height0pt depth\h@p }%
+\def \the@qames {\the@patach \kern-2\h@p \the@meteg \kern\h@p }%
+%
+\def \put@dummy {\relax}%
+\def \put@dummy {\h@vowel {}}%
+\def \put@patach {\h@vowel {\the@patach }}%
+\def \put@qames {\h@vowel {\the@qames }}%
+\def \put@segol {\h@vowel {\the@segol }}%
+\def \put@qibbus {\h@vowel {\the@qibbus }}%
+\def \put@chireq {\h@vowel {\the@dot }}%
+\def \put@qameschat {\h@vowel {\the@qames }}%
+\def \put@shwa {\h@vowel {\the@shwa }}%
+\def \put@sere {\h@vowel {\the@sere }}%
+\def \put@chpatach {\h@vowel {\the@patach \kern\h@p \the@shwa }}%
+\def \put@chsegol {\h@vowel {\the@segol \kern\h@p \the@shwa }}%
+\def \put@chqames {\h@vowel {\the@qames \kern\h@p \the@shwa }}%
+\def \put@cholem {\h@vowel {}\h@ldot }%
+\def \put@patachf {\h@vowel {\kern4\h@p \the@patach }}%
+%
+\def \put@dagesh {\def \vadj {.48}\def \hadj {0}% default
+\ifnum \act@cd = \hc@j \def \hadj {-.2}\fi % gimel
+\ifnum \act@cd = \hc@w \def \hadj {-.3}\def \vadj {.55}\fi % waw
+\ifnum \act@cd = \hc@z \def \hadj {-.4}\fi % zayin
+\ifnum \act@cd = \hc@tt \def \hadj {.1}\fi % tet
+\ifnum \act@cd = \hc@y \def \hadj {-.45}\def \vadj {.55}\fi % yod
+\ifnum \act@cd = \hc@l \def \hadj {-.1}\def \vadj {.3}\fi % lamed
+\ifnum \act@cd = \hc@n \def \hadj {-.2}\fi % nun
+\ifnum \act@cd = \hc@nf \def \hadj {-.2}\fi % nun sofit
+\ifnum \act@cd = \hc@f \def \hadj {.05}\fi % pe
+\ifnum \act@cd = \hc@ff \def \hadj {.15}\fi % pe sofit
+\ifnum \act@cd = \hc@ss \def \hadj {.1}\fi % sade
+\ifnum \act@cd = \hc@sf \def \hadj {.1}\fi % sade sofit
+\ifnum \act@cd = \hc@si \def \hadj {.18}\fi % shin
+\ifnum \act@cd = \hc@M \def \vadj {.7}\fi % box
+\dimen@ \vadj\a@ht \dimen2 \a@slant\dimen@ \advance \dimen2 -\h@p
+\advance\dimen2 \hadj\a@wd \advance\dimen2 .5\a@wd
+\global\setbox\ab@x \hbox
+{\rlap{\kern\dimen2 \raise\dimen@\hbox{\the@dot }}\unhcopy\ab@x}}%
+%
+\def \h@putvowel ##1{% vowel mark
+\ifx ##1\relax \relax \else \def \hadj {0}\def \vadj {0}%
+\ifnum \act@cd = \hc@P \let\vadj \v@adj \put@b@x{\hc@Pv }\else % vowel-ayin
+\ifnum \act@cd = \hc@kf \def \hadj {-.1}\def \vadj {.85}\else % final kaph
+\ifnum \act@cd = \hc@r \def \hadj {.35}\else % resh
+\ifnum \act@cd = \hc@d \def \hadj {.2}\else % daleth
+\ifnum \act@cd = \hc@q \def \hadj {.1}\else % qoph
+\ifnum \act@cd = \hc@y \def \hadj {.1}\else % yod
+\ifnum \act@cd = \hc@w \def \hadj {.15}\else % waw
+\ifnum \act@cd = \hc@si \def \hadj {-.1}\else % sin
+\fi\fi\fi\fi\fi\fi\fi\fi
+\setbox0 \hbox to \a@wd {\hss ##1\hss}\dimen@ \vadj\a@ht
+\advance \dimen@ -2\h@p
+\dimen2 \a@slant\dimen@ \advance\dimen2 \hadj\a@wd
+\global\setbox\ab@x \hbox
+{\rlap {\kern\dimen2 \raise\dimen@\box0 }\unhcopy\ab@x }\fi }%
+%
+\def \h@vowel {% check for meteg
+\if@meteg \xpa \h@meteg \else \xpa \h@putvowel \fi }%
+%
+\def \h@meteg ##1{% put vowel and meteg
+\h@putvowel {\the@meteg \kern\h@p ##1}}%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\globaldefs = 0 }% end standard fonts
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%}% end of dynamic definitions
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/hmac.sty b/language/arabic/arabtex/texinput/hmac.sty
new file mode 100644
index 0000000000..bdf3ea3169
--- /dev/null
+++ b/language/arabic/arabtex/texinput/hmac.sty
@@ -0,0 +1,156 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% hmac.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% hmac.sty
+% Scanner for MAC Hebrew
+% to install it, include it as a LaTeX package or style option "hmac"
+% with Plain TeX, say "\input hmac.sty"
+% to activate it, say "\setcode{hmac}"
+% 07.03.2002
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \hmacatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \hmacatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {hmac.sty} {3.10a MAC Hebrew encoding} {07.03.2002}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \hmac@catcodes {% assignments for MAC Hebrew
+\countdef \is@m=2 \is@m = 160
+\countdef \is@n=4 \is@n = 32
+\loop \ifnum \catcode \is@m = 11 \else \catcode \is@m = 11 \fi
+\global\lccode \is@m = \is@n
+\ifnum 255 > \is@m \advance \is@m 1 \advance \is@n 1 \repeat
+\is@m=0 \is@n=0
+\catcode `\^^81 11
+\catcode `\^^a0 12 }
+
+{\hmac@catcodes
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Hebrew
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \sethmac@codes {% activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@^^81 {yy"A}
+\def \sc@^^a0 {@} \def \sc@^^a1 {!}
+\def \sc@^^a2 {\a@dq} \def \sc@^^a3 {\a@hsh}
+\def \sc@^^a4 {\a@dlr} \def \sc@^^a5 {\a@pct}
+\def \sc@^^a6 {\a@dlr} \def \sc@^^a7 {\a@qt}
+\def \sc@^^a8 {(} \def \sc@^^a9 {)} \def \sc@^^aa {*} \def \sc@^^ab {+}
+\def \sc@^^ac {,} \def \sc@^^ad {\h@phen}
+\def \sc@^^ae {.} \def \sc@^^af {/}
+
+\def \sc@^^b0 {0} \def \sc@^^b1 {1} \def \sc@^^b2 {2} \def \sc@^^b3 {3}
+\def \sc@^^b4 {4} \def \sc@^^b5 {5} \def \sc@^^b6 {6} \def \sc@^^b7 {7}
+\def \sc@^^b8 {8} \def \sc@^^b9 {9} \def \sc@^^ba {:} \def \sc@^^bb {;}
+\def \sc@^^bc {\a@rab} \def \sc@^^bd {=}
+\def \sc@^^be {\a@lab} \def \sc@^^bf {?}
+
+\def \sc@^^c0 {l"\n@xp\a@o} \def \sc@^^c1 {,,}
+\def \sc@^^c2 {@} \def \sc@^^c3 {@}
+\def \sc@^^c4 {@} \def \sc@^^c5 {@}
+\def \sc@^^c6 {"\n@xp\a@Zu} \def \sc@^^c7 {w"\n@xp\a@o}
+\def \sc@^^c8 {w"\n@xp\a@Zu} \def \sc@^^c9 {\a@ell}
+\def \sc@^^ca {N} \def \sc@^^cb {"A}
+\def \sc@^^cc {"a} \def \sc@^^cd {"\n@xp\a@E}
+\def \sc@^^ce {"e} \def \sc@^^cf {"i}
+
+\def \sc@^^d0 {\a@end} \def \sc@^^d1 {\a@emd}
+\def \sc@^^d2 {\a@lq\a@lq} \def \sc@^^d3 {\a@rq\a@rq}
+\def \sc@^^d4 {\a@lq} \def \sc@^^d5 {\a@rq}
+\def \sc@^^d6 {\n@xp\a@S"\n@xp\a@Ze} \def \sc@^^d7 {\n@xp\a@S"\n@xp\a@Za}
+\def \sc@^^d8 {"\n@xp\a@Zo} \def \sc@^^d9 {"\n@xp\a@e}
+\def \sc@^^da {"\n@xp\a@A} \def \sc@^^db {"\n@xp\a@I}
+\def \sc@^^dc {"u} \def \sc@^^dd {"\n@xp\a@o}
+\def \sc@^^de {"o} \def \sc@^^df {"\n@xp\a@O}
+
+\def \sc@^^e0 {Q} \def \sc@^^e1 {b} \def \sc@^^e2 {g} \def \sc@^^e3 {d}
+\def \sc@^^e4 {h} \def \sc@^^e5 {w} \def \sc@^^e6 {z} \def \sc@^^e7 {X}
+\def \sc@^^e8 {C} \def \sc@^^e9 {y} \def \sc@^^ea {k} \def \sc@^^eb {k}
+\def \sc@^^ec {l} \def \sc@^^ed {m} \def \sc@^^ee {m} \def \sc@^^ef {n}
+
+\def \sc@^^f0 {n} \def \sc@^^f1 {s} \def \sc@^^f2 {P} \def \sc@^^f3 {p}
+\def \sc@^^f4 {p} \def \sc@^^f5 {S} \def \sc@^^f6 {S} \def \sc@^^f7 {q}
+\def \sc@^^f8 {r} \def\sc@^^f9{\n@xp\a@S}
+\def \sc@^^fa {t} \def \sc@^^fb {\a@rbc}
+\def \sc@^^fc {]} \def \sc@^^fd {\a@lbc}
+\def \sc@^^fe {[} \def \sc@^^ff {\a@bar}
+
+\a@digits = {0123456789} \a@paren = {()[]} \a@first = {"`^^e6}
+\globaldefs=0 }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for MAC Hebrew
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \hmac@scan #1>{% standard scanner call: token sequence -> \a@tokens
+\iftest@scan \tracingmacros = 1
+\ifshow \else \lowercase{\a@verb #1>}\fi\fi
+\global\def \a@rest {}\global\a@tokens = {}\sc@beg #1\@ \@@
+\iftest@scan \tracingmacros = 0 %
+\xpa \a@verb \xpa (\the\a@tokens )>\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \hmac@beg {% start MAC Hebrew scanner
+\h@mzafalse \iz@fetfalse \@ssimfalse \novocalize % because of explicit quoting
+\hmac@word }
+
+{\catcode `\^^M=13 \endlinechar = -1
+\gdef \hmac@word #1{% transform input into internal notation
+\ifx #1\@ \def \next {\sc@endscan }\else % finished
+\if \nxp ^^M\nxp #1\def \next {\hmac@par #1}% active character
+\else \def \next {\hmac@w@rd #1}%
+\fi\fi \next }%
+} % catcode 13
+
+\gdef \hmac@w@rd #1#2{% special cases
+\case #1\of
+{ #2{\hmac@word #1-#2}
+ -{\hmac@minus #2}
+ ^^a0{\sc@back #2}
+% ^^ad{\hmac@minus #2}
+\default {\hmac@@word #1#2}
+}\endcase }
+
+\gdef \hmac@@word #1{% default branch
+\ifcat a\nxp #1\edef \sc@char {\csname sc@#1\endcsname }%
+\else \def \sc@char {\nxp #1}%
+\fi \sc@put \hmac@word }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \hmac@minus {% hyphen between words
+\def \sc@char {-}\sc@put \hmac@beg }
+
+\gdef \hmac@par #1\@ \@@ {% new line, push back the rest
+\sc@back \\ #1\@ \@@ }
+
+\gdef \hmac@endscan \@@ {\global\let \a@scan \hmac@scan }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+} % \hmac@catcodes
+
+\def \set@hmac {% select the MAC Hebrew scanner
+\let \sc@beg \hmac@beg \let \sc@word \hmac@word
+\let \sc@back \sc@@back \let \sc@endscan \hmac@endscan
+\global\let \a@scan \hmac@scan \sethmac@codes
+\hmac@catcodes
+\a@message {input encoding set to MAC Hebrew and ISO 8859-8 conventions}}
+
+\xpa \def \xpa \sc@table \xpa {\sc@table % add the MAC Hebrew encoding
+hmac\set@hmac iso8859-8\set@hmac iso88598\set@hmac }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@message {scanner for MAC Hebrew code installed.}
+
+\catcode `\@ = \hmacatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/isiri.sty b/language/arabic/arabtex/texinput/isiri.sty
new file mode 100644
index 0000000000..b4664d9b3e
--- /dev/null
+++ b/language/arabic/arabtex/texinput/isiri.sty
@@ -0,0 +1,225 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% isiri.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% isiri.sty
+% Scanner for ISIRI 3342 Code
+% to install it, include it as a LaTeX package or style option "isiri"
+% with Plain TeX, say "\input isiri.sty"
+% to activate it, say "\setcode {isiri3342}" or "\setcode {isiri}"
+% 26.04.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \isiriatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \isiriatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {isiri.sty} {3.11 ISIRI 3342 input encoding } {26.04.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \isiri@catcodes {% assignments for ISIRI 3342
+\countdef \is@m=2 \countdef \is@n=4
+\is@m = 160 \is@n = 32
+\loop \ifnum \catcode \is@m = 11 \else \catcode \is@m = 11 \fi
+\global\lccode \is@m = \is@n
+\ifnum 255 > \is@m \advance \is@m 1 \advance \is@n 1 \repeat
+\is@m=0 \is@n=0 \catcode `\^ 7 \catcode `\^^a0 12 }
+
+{\isiri@catcodes
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Arabic
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \setisi@codes {% activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@^^a0 {@} \def \sc@^^a1 {||} \def \sc@^^a2 {-} \def \sc@^^a3 {!}
+\def \sc@^^a4 {\a@dlr} \def \sc@^^a5 {\a@pct}
+\def \sc@^^a6 {\a@amp} \def \sc@^^a7 {\a@qt}
+\def \sc@^^a8 {(} \def \sc@^^a9 {)} \def \sc@^^aa {*} \def \sc@^^ab {+}
+\def \sc@^^ac {,} \def \sc@^^ad {-} \def \sc@^^ae {.} \def \sc@^^af {/}
+
+\def \sc@^^b0 {0} \def \sc@^^b1 {1} \def \sc@^^b2 {2} \def \sc@^^b3 {3}
+\def \sc@^^b4 {4} \def \sc@^^b5 {5} \def \sc@^^b6 {6} \def \sc@^^b7 {7}
+\def \sc@^^b8 {8} \def \sc@^^b9 {9} \def \sc@^^ba {:} \def \sc@^^bb {;}
+\def \sc@^^bc {\a@lab} \def \sc@^^bd {=}
+\def \sc@^^be {\a@rab} \def \sc@^^bf {?}
+
+\def \sc@^^c0 {QA} \def \sc@^^c1 {A} \def \sc@^^c2 {Q|} \def \sc@^^c3 {b}
+\def \sc@^^c4 {p} \def \sc@^^c5 {t} \def \sc@^^c6 {C} \def \sc@^^c7 {G}
+\def \sc@^^c8 {J} \def \sc@^^c9 {H} \def \sc@^^ca {X} \def \sc@^^cb {d}
+\def \sc@^^cc {F} \def \sc@^^cd {r} \def \sc@^^ce {z} \def \sc@^^cf {j}
+
+\def \sc@^^d0 {s} \def \sc@^^d1 {x} \def \sc@^^d2 {S} \def \sc@^^d3 {D}
+\def \sc@^^d4 {V} \def \sc@^^d5 {Z} \def \sc@^^d6 {P} \def \sc@^^d7 {R}
+\def \sc@^^d8 {f} \def \sc@^^d9 {q} \def \sc@^^da {\n@xp \a@k}
+\def \sc@^^db {g}
+\def \sc@^^dc {l} \def \sc@^^dd {m} \def \sc@^^de {n} \def \sc@^^df {w}
+
+\def \sc@^^e0 {h} \def \sc@^^e1 {Y} \def \sc@^^e2 {[} \def \sc@^^e3 {]}
+\def \sc@^^e4 {\a@lbc} \def \sc@^^e5 {\a@rbc}
+\def \sc@^^e6 {'} \def \sc@^^e7 {`}
+\def \sc@^^e8 {*} \def \sc@^^e9 {B}
+\def \sc@^^ea {\a@bar} \def \sc@^^eb {\a@bsl}
+\def \sc@^^ec {@} \def \sc@^^ed {@} \def \sc@^^ee {@} \def \sc@^^ef {@}
+
+\def \sc@^^f0 {"a} \def \sc@^^f1 {"i} \def \sc@^^f2 {"u} \def \sc@^^f3 {"aN}
+\def \sc@^^f4 {"iN}\def \sc@^^f5 {"uN} \def \sc@^^f6 {@} \def \sc@^^f7 {""}
+\def \sc@^^f8 {Qa} \def \sc@^^f9 {Qw} \def \sc@^^fa {Qi} \def \sc@^^fb {QY}
+\def \sc@^^fc {T} \def \sc@^^fd {k} \def \sc@^^fe {y} \def \sc@^^ff {E}
+\a@digits = {0123456789^^b0^^b1^^b2^^b3^^b4^^b5^^b6^^b7^^b8^^b9}
+\a@paren = {()[]^^a8^^a9^^e2^^e3}
+\a@first = {"`^^e6}
+\globaldefs=0 }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \isi@scan #1>{% standard scanner call: token sequence -> \a@tokens
+\iftest@scan \tracingmacros = 1
+\ifshow \else \lowercase{\a@verb #1>}\fi\fi
+\global\def \a@rest {}\global\a@tokens = {}\sc@beg #1\@ \@@
+\iftest@scan \tracingmacros = 0 %
+\xpa \a@verb \xpa (\the\a@tokens )>\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+{\catcode `\^ 7
+\gdef \isi@beg #1#2{% start ISIRI 3342 scanner
+\h@mzafalse \iz@fetfalse \yahdots \novocalize % because of explicit quoting
+ \@ssimfalse
+\case #1\of
+{ \@{\sc@endscan #2} % finished
+ ^^c1{\isi@alif@beg #2}
+ ^^e6{\isi@lquote #2}
+\default {\isi@word #1#2}
+}\endcase }
+
+{\catcode `\^^M=13 \endlinechar = -1
+\gdef \isi@word #1#2{% transform input into internal notation
+\ifx #1\@ \def \next {\sc@endscan #2}\else % finished
+\if \nxp ^^M\nxp #1\def \next {\isi@par #1#2}% active character
+\else \def \next {\isi@w@rd #1#2}%
+\fi\fi \next }%
+} % catcode 13
+
+\gdef \isi@w@rd #1#2{% special cases
+\case #1\of
+{ #2{\isi@word #1-#2}
+ -{\isi@minus #2}
+ ^^a0{\sc@back #2}
+ ^^ad{\isi@minus #2}
+ ^^c1{\isi@alif #2}
+ ^^c2{\isi@hamza #2}
+ ^^df{\isi@waw #2}
+ ^^e0{\isi@hah #2}
+ ^^e1{\isi@Yah #2}
+ ^^e7{\isi@rquote #2}
+ ^^fe{\isi@yah #2}
+\default {\isi@@word #1#2}
+}\endcase }
+
+\gdef \isi@@word #1#2{% default branch
+\ifcat a\nxp #1\edef \sc@char {\csname sc@#1\endcsname }%
+\else \def \sc@char {\nxp #1}%
+\fi \sc@put
+\ifx #2^^f6\def \next {\isi@word #1}% shadda
+\else \def \next {\isi@word #2}%
+\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \isi@alif@beg #1{% alif
+\ifx #1^^a2\def \next {\isi@alif@P }\else
+\def \next {\isi@word #1}\def \sc@char {a}\sc@put
+\fi \next }
+
+\gdef \isi@alif #1{% alif
+\ifx #1^^a2\def \next {\isi@alif@P }\else
+\def \next {\isi@word #1}\def \sc@char {A}\sc@put
+\fi \next }
+
+\gdef \isi@alif@P #1{% alif PCN hamza ?
+\ifx #1^^c2\def \sc@char {Qa}\def \next {\isi@word }\else
+\def \sc@char {A-}\def \next {\isi@word #1}%
+\fi \sc@put \next }
+
+\gdef \isi@waw #1{% waw
+\ifx #1^^a2\def \next {\isi@waw@P }\else
+\def \next {\isi@word #1}\def \sc@char {w}\sc@put
+\fi \next }
+
+\gdef \isi@waw@P #1{% waw PCN hamza ?
+\ifx #1^^c2\def \sc@char {Qw}\def \next {\isi@word }\else
+\def \sc@char {w-}\def \next {\isi@word #1}%
+\fi \sc@put \next }
+
+\gdef \isi@yah #1{% yah
+\ifx #1^^a2\def \next {\isi@yah@P }\else
+\def \next {\isi@word #1}\def \sc@char {y}\sc@put
+\fi \next }
+
+\gdef \isi@Yah #1{% Yah
+\ifx #1^^a2\def \next {\isi@yah@P }\else
+\def \next {\isi@word #1}\def \sc@char {Y}\sc@put
+\fi \next }
+
+\gdef \isi@yah@P #1{% yah PCN hamza ?
+\ifx #1^^c2\def \sc@char {QY}\def \next {\isi@word }\else
+\def \sc@char {y-}\def \next {\isi@word #1}%
+\fi \sc@put \next }
+
+\gdef \isi@hah #1{% hah
+\ifx #1^^a2\def \next {\isi@hah@P }\else
+\def \next {\isi@word #1}\def \sc@char {h}\sc@put
+\fi \next }
+
+\gdef \isi@hah@P #1{% hah PCN hamza ?
+\ifx #1^^c2\def \sc@char {Qh}\def \next {\isi@word }\else
+\def \sc@char {h-}\def \next {\isi@word #1}%
+\fi \sc@put \next }
+
+\gdef \isi@hamza #1{% hamza
+\ifx #1^^a2\def \sc@char {QY}\def \next {\isi@word }%
+\else \def \sc@char {Q|}\def \next {\isi@word #1}%
+\fi \sc@put \next }
+
+\gdef \isi@minus {% hyphen between words
+\def \sc@char {-}\sc@put \isi@beg }
+
+\gdef \isi@lquote {% left quote
+\def \sc@char {`}\sc@put \isi@beg }
+
+\gdef \isi@rquote {% right quote
+\def \sc@char {'}\sc@put \isi@word }
+
+\gdef \isi@par #1\@ \@@ {% new line, push back the rest
+\sc@back \\ #1\@ \@@ }
+
+\gdef \isi@endscan \@@ {\global\let \a@scan \isi@scan }
+}% catcode ^
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+} % \isiri@catcodes
+
+\def \set@isiri {% select the ISIRI 3342 scanner
+\let \sc@beg \isi@beg \let \sc@word \isi@word
+\let \sc@back \sc@@back \let \sc@endscan \isi@endscan
+\global\let \a@scan \isi@scan \setisi@codes
+\isiri@catcodes \yahdots
+\a@message {input encoding set to ISIRI 3342 conventions}}
+
+\xpa \def \xpa \sc@table \xpa {\sc@table % add the ASMO449 encoding
+isiri\set@isiri isiri3342\set@isiri }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@message {scanner for code ISIRI 3342 installed.}
+
+\catcode `\@ = \isiriatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/iso88596.sty b/language/arabic/arabtex/texinput/iso88596.sty
new file mode 100644
index 0000000000..15b1fb298c
--- /dev/null
+++ b/language/arabic/arabtex/texinput/iso88596.sty
@@ -0,0 +1,23 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% iso88596.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% iso88596.sty
+% Scanner for ISO 8859-6 Code
+% reuses the MacOS Arabic scanner
+% to install it, include it as a LaTeX package or style option "iso88596"
+% with Plain TeX, say "\input iso88596.sty"
+% to activate it, say "\setcode {iso8859-6}" or "\setcode{iso88596}"
+% 07.05.2000
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chardef \isocatcode = \catcode`\@ \catcode`\@ = 11
+\a@ident {iso88596.sty} {3.10 ISO 8859-6 encoding} {07.05.2000}
+
+\UsePackage {amac} % reuse MacOS Arabic scanner
+\a@message {scanner for ISO 88596-9 code installed.}
+
+\catcode `\@ = \isocatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/manifest.txt b/language/arabic/arabtex/texinput/manifest.txt
new file mode 100644
index 0000000000..ba96b76f42
--- /dev/null
+++ b/language/arabic/arabtex/texinput/manifest.txt
@@ -0,0 +1,80 @@
+ArabTeX, version 3.10, directory TEXINPUT, September 16, 2001
+
+ 3.09.00 19.50 9320 0 abidir.sty
+17.07.99 18.51 2093 0 abjad.sty
+ 4.06.00 13.48 17259 0 aboxes.sty
+ 1.11.98 16.52 928 0 acjk.sty
+ 5.04.00 17.35 11330 0 acmd.sty
+ 1.11.98 17.16 3478 0 aconfig.sty
+11.04.99 17.39 7250 0 aedpatch.sty
+ 1.11.98 17.03 1722 0 afonts.sty
+ 1.11.98 17.03 2348 0 afonts0.sty
+ 1.11.98 17.04 1851 0 afonts1.sty
+19.10.99 15.19 1964 0 afonts2.sty
+28.05.00 23.41 9025 0 alatex.sty
+ 4.06.00 16.16 21063 0 aligs.sty
+ 1.11.98 18.42 7079 0 alists.sty
+ 9.09.01 17.11 7776 0 amac.sty
+ 4.06.00 3.29 6072 0 aoutput.sty
+ 1.05.00 18.40 33467 0 aparse.sty
+16.09.01 13.18 2834 0 apatch.sty
+ 1.11.98 17.03 1165 0 arababel.sty
+ 9.05.97 14.05 802 0 arabart.cls
+ 9.05.97 14.05 1049 0 arabbook.cls
+ 1.11.98 17.00 3041 0 arabchrs.sty
+ 1.11.98 18.42 4505 0 arabext.sty
+14.09.01 13.51 26510 0 arabrep.cls
+ 4.06.00 16.38 9136 0 arabskel.sty
+ 1.11.98 18.42 8917 0 arabsymb.sty
+16.09.01 13.11 26773 0 arabtex.sty
+16.09.01 13.10 4576 0 arabtex.tex
+17.07.99 21.23 6772 0 arabtoks.sty
+ 1.11.98 18.42 3214 0 arabwin.sty
+13.09.01 16.16 15334 0 ascan.sty
+21.04.00 20.52 10857 0 asect.sty
+ 9.05.97 14.07 1222 0 asize10.clo
+ 9.05.97 14.07 1222 0 asize11.clo
+ 9.05.97 14.07 1222 0 asize12.clo
+ 8.05.00 0.45 4425 0 asmo449.sty
+ 1.11.98 18.43 4677 0 atabg.sty
+10.09.01 2.40 18080 0 atrans.sty
+10.09.01 2.33 12425 0 awrite.sty
+ 8.05.00 0.49 7441 0 bhs.sty
+ 1.12.98 12.56 4631 0 bhslabel.sty
+21.11.95 12.47 1984 0 captions.def
+ 8.05.00 0.39 7622 0 cp1256.sty
+ 4.11.98 14.25 172 0 etrans.sty
+10.09.01 2.04 4480 0 gedalin.sty
+17.06.00 19.14 5057 0 hebchrs.sty
+12.06.00 18.41 1715 0 hebsymb.sty
+12.06.00 14.54 2747 0 hebtex.sty
+16.09.01 13.10 3733 0 hebtex.tex
+ 7.05.00 13.40 7789 0 hecmd.sty
+ 1.11.98 18.23 1723 0 hefonts.sty
+ 1.11.98 18.23 1499 0 hefonts0.sty
+ 1.11.98 18.23 1256 0 hefonts1.sty
+12.06.00 13.19 1879 0 hefonts2.sty
+14.06.00 20.17 8481 0 heparse.sty
+13.04.00 17.39 1289 0 hepatch.sty
+21.08.00 19.27 8818 0 hescan.sty
+ 8.05.00 1.00 3494 0 hetrans.sty
+10.09.01 1.43 20413 0 hewrite.sty
+ 8.05.00 0.40 6599 0 hmac.sty
+ 8.05.00 0.40 8338 0 isiri.sty
+ 8.05.00 0.40 919 0 iso88596.sty
+ 1.11.98 18.44 3594 0 latexext.sty
+16.09.01 18.35 0 0 manifest.txt
+ 4.11.98 14.25 165 0 nashbf.sty
+ 1.11.98 18.44 1531 0 raw.sty
+ 1.11.98 18.45 4200 0 twoblks.sty
+13.06.00 18.05 3678 0 uheb.fd
+23.05.99 12.38 1495 0 unash.fd
+13.06.00 14.44 1351 0 utf8.sty
+13.06.00 16.08 11198 0 utfcode.sty
+22.04.00 13.14 2113 0 Uxnsh.fd
+ 1.11.98 18.45 2652 0 verses.sty
+14.09.01 15.13 7481 0 witbhs.sty
+ 4.06.00 19.43 7260 0 xarbskel.sty
+ 1.11.98 16.55 9655 0 xarbsymb.sty
+
+ 80 Datei(en) 481235 Byte belegt
diff --git a/language/arabic/arabtex/texinput/nashbf.sty b/language/arabic/arabtex/texinput/nashbf.sty
new file mode 100644
index 0000000000..aefdd050e4
--- /dev/null
+++ b/language/arabic/arabtex/texinput/nashbf.sty
@@ -0,0 +1,9 @@
+% nashbf.sty
+
+\endinput
+
+% this module is no more needed.
+% its effect is now taken care of by "arabtex.sty"; use \setnashbf
+% 04.11.1998
+% Klaus Lagally
+
diff --git a/language/arabic/arabtex/texinput/raw.sty b/language/arabic/arabtex/texinput/raw.sty
new file mode 100644
index 0000000000..2c1a584b28
--- /dev/null
+++ b/language/arabic/arabtex/texinput/raw.sty
@@ -0,0 +1,41 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% raw.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% raw.sty
+% package for activating most special characters for OCR work
+% and switching off most special processing
+% the characters " < > cannot presently be handled correctly
+% activate special processing by \setraw
+% revert to the normal mode by \unsetraw
+% 04.03.1996
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \rawatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \rawatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {raw.sty} {0.91 special characters} {04.03.1996}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \setraw {% activate special characters
+\a@paren = {} \a@digits = {} \a@first = {.'`~,|:}
+\catcode `\^ 12 \catcode `\_ 12
+\catcode `\$ 12 \catcode `\# 12 \catcode `\& 12
+\catcode `\% 12 \catcode `\- 11 \catcode `\= 11 }
+
+\def \unsetraw {% undo changes
+\a@digits = {0123456789} \a@paren = {()[]}
+\a@first = {.^_-'`~,|"=:} % default, scanner dependent
+\catcode `\^ 7 \catcode `\_ 8
+\catcode `\$ 3 \catcode `\# 6 \catcode `\& 4
+\catcode `\% 14 \catcode `\- 12 \catcode `\= 12 }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\catcode `\@ = \rawatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/saw.sty b/language/arabic/arabtex/texinput/saw.sty
new file mode 100644
index 0000000000..5ca630d456
--- /dev/null
+++ b/language/arabic/arabtex/texinput/saw.sty
@@ -0,0 +1,43 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% saw.sty
+% macros for SAW and ALS
+% only available in one size
+% 22.06.2006
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {saw.sty}{1.00 SAW and ALS } {22.06.2006}
+
+\def \SAW {% for Roman mode
+% .salla all-ah `alayhi wa-sallam
+\setbox0 \hbox {\setarab \novocalize \tiny
+\vbox {\hbox {\<.sall_A \hskip-0.6em al-ll_ahu >}%
+\nointerlineskip \vskip -1.5ex
+\hbox {\<wa-salama >}%
+\nointerlineskip \vskip -2.2ex
+\hbox {\hskip .4em \<`alayBBhi >\,}}}%
+\dp0 0pt \leavevmode \lower .20\ht0 \box0 }
+
+\def \ALS {% for Roman mode
+% `alayhi al-ssalAm
+\setbox0 \hbox {\setarab \novocalize \tiny
+\vbox {\hbox {\,\<`alaByBhi >}%
+\nointerlineskip \vskip -1.0ex
+\hbox {\<al-ssalAm >\,}}}%
+\leavevmode \box0 }
+
+\def \a@c@SAW {% for Arabic paragraph mode
+\nospace \putwordb@x {\SAW \hskip -0.3em }\test@token }
+
+\def \a@c@ALS {% for Arabic paragraph mode
+\nospace \putwordb@x {\ALS \hskip -0.3em }\test@token }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
diff --git a/language/arabic/arabtex/texinput/sotoku.sty b/language/arabic/arabtex/texinput/sotoku.sty
new file mode 100644
index 0000000000..eded081e36
--- /dev/null
+++ b/language/arabic/arabtex/texinput/sotoku.sty
@@ -0,0 +1,47 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% sotoku.sty
+% additional transcription module for ArabTeX
+% special transcription
+% 16.02.2003
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Additional Transcription Modes:
+% transcribe `ayn by the Arabic letter
+% activate by: \settrans{sotoku}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\catcode`\@ = 11
+\a@ident{sotoku.sty}{1.00 generate special transliteration }{16.02.2003}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\catcode `\~=10
+\gdef \tr@sotoku {% define Sotoku transliteration
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\tr@zdmg % standard routine
+% transliterate 'ayin' as Arabic letter:
+\gdef \tr@P {{\scriptsize\transfalse\arabtrue\showfalse\<`>}\@vocalfalse}
+% transliterate 'hamza' as Arabic letter:
+\gdef \tr@Q {{\transfalse\arabtrue\showfalse\<-'>}\@vocalfalse}
+% comment out if not required!
+\a@message {Sotoku~special~transliteration.}}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@extend \tr@table {sotoku\tr@sotoku }% install
+
+\settrans{sotoku}% activate
+% switch to standard version by \settrans{standard}
+
+\catcode`\@ = \transatcode
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+
+
diff --git a/language/arabic/arabtex/texinput/twoblks.sty b/language/arabic/arabtex/texinput/twoblks.sty
new file mode 100644
index 0000000000..93687c2988
--- /dev/null
+++ b/language/arabic/arabtex/texinput/twoblks.sty
@@ -0,0 +1,104 @@
+% twoblocks.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% defines the command \twoblocks {#1}{#2}
+% to position two text blocks side by side
+% separated by \colsep horizontal space
+% 17.11.1993
+% 06.06.1994 % do not read the arguments prematurely: catcodes !
+% no warranty whatever
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \twblatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \twblatcode = \catcode`\@ \catcode`\@ = 11
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newbox \boxa \newbox \boxb \newbox \boxc \newbox \boxd
+\newdimen \htmin \newdimen \hta \newdimen \htb
+\newdimen \pagerest \newdimen \splitheight \newdimen \totalheight
+\newdimen \colwidth \newdimen \colsep
+
+\colsep 0.4in % adjust to your preference
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \unpackbox #1{% unwrap minipage to get a \vbox only
+ \setbox0 \vbox {\unvbox #1\global \setbox1 \lastbox } % get line
+ \setbox0 \hbox {\unhbox1 \unskip \unskip \unpenalty % get inner box
+ \global \setbox #1 \lastbox }} % and forget the rest
+
+\def \a@minipagerestore {% modify tabbing and list spacing
+ \vskip 0pt plus 12pt \emergencystretch 3cm \hbadness 5000 }
+
+\def \depositboxes {% fill page, recursive
+ \nointerlineskip \null \allowbreak % update page builder parameters
+ \pagerest \pagegoal \advance \pagerest -\pagetotal
+ \advance \pagerest -\maxdepth
+ \advance \pagerest -\baselineskip % just to make sure
+ \getheights % max total height of \boxa and \boxb
+\ifdim \totalheight > \pagerest % no more space, split?
+ \splitheight \totalheight
+ \advance \splitheight -2\baselineskip % try to avoid widows
+ \ifdim \splitheight > \pagerest \splitheight \pagerest
+ \fi
+ \htmin 2\baselineskip
+ \ifdim \splitheight > \htmin % try to avoid clubs
+ \splitboxes \splitheight % to \boxc and \boxd, and output
+ \else \vfill \eject % new page
+ \fi
+ \depositboxes % try again
+\else \combineboxes % output \boxa and \boxb
+\fi }
+
+\def \adjustbox #1{% set depth to total height, height zero, full width
+ \ifvoid#1 \setbox#1 \null \fi \wd#1 \colwidth
+ \dimen0 \ht#1 \advance \dimen0 \dp#1 \ht#1 \z@ \dp#1 \dimen0 }
+
+\def \getheights {% \ht plus \dp of boxes \boxa and \boxb
+ \hta \ht \boxa \advance \hta \dp \boxa
+ \htb \ht \boxb \advance \htb \dp \boxb
+ \ifdim \htb > \hta \totalheight \htb \else \totalheight \hta \fi }
+
+\def \splitboxes #1{% split off #1 from \boxa and \boxb
+ \splitmaxdepth \z@ \splittopskip \topskip
+ \ifdim #1 > \hta \setbox \boxc \box \boxa
+ \else \setbox \boxc \vsplit \boxa to #1 \fi
+ \ifdim #1 > \htb \setbox \boxd \box \boxb
+ \else \setbox \boxd \vsplit \boxb to #1 \fi
+ \outputboxes \boxc \boxd \vfill \eject }
+
+\def \outputboxes #1#2{% hanging from top of \hbox
+ \adjustbox #1 \adjustbox #2 % height zero, all depth
+ \nointerlineskip
+ \hbox to \textwidth {\noindent \box #1\hfill \box #2}\allowbreak }
+
+\def \combineboxes {% output \boxa and \boxb
+ \outputboxes \boxa \boxb }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \twoblocks {% two aligned paragraphs
+ \bgroup \colwidth \textwidth \advance \colwidth -\colsep
+ \divide \colwidth 2 \let \@minipagerestore \a@minipagerestore
+ \setbox \boxa \vbox \bgroup \minipage[t]\colwidth
+ \bgroup \aftergroup \tw@blocks \ignorespaces \let \next }
+
+\def \tw@blocks {% after first block
+ \endminipage \egroup \unpackbox \boxa % unwrap minipage
+ \setbox \boxb \vbox \bgroup \minipage[t]\colwidth
+ \bgroup \aftergroup \tw@bl@cks \ignorespaces \let \next }
+
+\def \tw@bl@cks {% after second block
+ \endminipage \egroup \unpackbox \boxb % unwrap minipage
+ \depositboxes \egroup } % split if necessary
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\catcode `\@ = \twblatcode
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/uheb.fd b/language/arabic/arabtex/texinput/uheb.fd
new file mode 100644
index 0000000000..8b96772325
--- /dev/null
+++ b/language/arabic/arabtex/texinput/uheb.fd
@@ -0,0 +1,122 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Uheb.fd
+% ArabTeX
+% Hebrew font descriptions for LaTeX2e
+% 13.06.2000
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Bernd Raichle and Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% This file contains the font description of the Hebrew fonts
+% fontencoding: U
+% fontfamily: heb
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% make sure, that it is used with NFSS2 only
+%
+\ifx\DeclareFontShape\undefined
+ \message{Something is wrong -- %
+ this file can only be used with NFSS2!!!}
+\expandafter\endinput\fi
+
+\ProvidesFile{uheb.fd }[ 2000/06/13 v3.10 ArabTeX Hebrew font definitions]
+
+\DeclareFontFamily{U}{heb}{}%
+
+\DeclareFontShape{U}{heb}{m}{n}{%
+ <-8> fixed * [102.4] hclassic
+ <8-10> s * [12.8] hclassic
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * [12.8] hclassic
+}%
+{\fontdimen5\font =.8\fontdimen2\font % ex
+ \fontdimen6\font = 3\fontdimen5\font } % em
+
+\DeclareFontShape{U}{heb}{bx}{n}{%
+ <-8> fixed * [102.4] hcaption
+ <8-10> s * [12.8] hcaption
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * [12.8] hcaption
+}%
+{\fontdimen5\font =.8\fontdimen2\font % ex
+ \fontdimen6\font = 3\fontdimen5\font % em
+ \fontdimen1\font =.2pt } % slant
+
+\DeclareFontShape{U}{heb}{m}{Jm}{%
+ <-10> fixed * Jerusalem
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * Jerusalem
+}{}
+
+\DeclareFontShape{U}{heb}{m}{jm}{%
+ <-10> fixed * jerusale
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * jerusale
+}{}
+
+\DeclareFontShape{U}{heb}{m}{ds}{%
+ <-10> fixed * deadsea
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * deadsea
+}{}
+
+\DeclareFontShape{U}{heb}{m}{ta}{%
+ <-10> fixed * telaviv
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * telaviv
+}{}
+
+\DeclareFontShape{U}{heb}{m}{oj}{%
+ <-10> fixed * oldjaffa
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * oldjaffa
+}{}
+
+\DeclareFontShape{U}{heb}{m}{so}{%
+ <-10> fixed * shlm_old
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * shlm_old
+}%
+{\fontdimen5\font =\fontdimen2\font } % ex
+
+\DeclareFontShape{U}{heb}{m}{sr}{%
+ <-10> fixed * shlm_scr
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * shlm_scr
+}%
+{\fontdimen5\font =\fontdimen2\font } % ex
+
+\DeclareFontShape{U}{heb}{m}{sk}{%
+ <-10> fixed * shlm_stk
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * shlm_stk
+}%
+{\fontdimen5\font =\fontdimen2\font } % ex
+
+\DeclareFontShape{U}{heb}{m}{fr}{%
+ <-10> fixed * fr
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * fr
+}{}
+
+\DeclareFontShape{U}{heb}{bx}{fr}{%
+% <-10> fixed * [12.8] frbx
+ <-10> fixed * frbx
+% <10><10.95><12><14.4><17.28><20.74><24.88> s * [12.8] frbx
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * frbx
+}{}
+
+\DeclareFontShape{U}{heb}{sl}{fr}{%
+% <-10> fixed * [12.8] frsl
+ <-10> fixed * frsl
+% <10><10.95><12><14.4><17.28><20.74><24.88> s * [12.8] frsl
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * frsl
+}%
+{\fontdimen1\font =.2pt } % slant
+
+\DeclareFontShape{U}{heb}{m}{crml}{%
+ <-10> fixed * crml10
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * crml10
+}%
+{\fontdimen5\font =\fontdimen2\font } % ex
+
+\DeclareFontShape{U}{heb}{sl}{crml}{%
+ <-10> fixed * crmlsl10
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * crmlsl10
+}%
+{\fontdimen5\font =\fontdimen2\font } % ex
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/unash.fd b/language/arabic/arabtex/texinput/unash.fd
new file mode 100644
index 0000000000..00ab4d6ba0
--- /dev/null
+++ b/language/arabic/arabtex/texinput/unash.fd
@@ -0,0 +1,46 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Unash.fd
+%
+% 31.08.93 1.0 created file when added support for NFSS2 (br)
+% 04.04.1997 ranges fixed (KL)
+% 17.09.1997 smaller sizes allowed
+% 31.03.1998 test for xnsh14: does not work
+% 12.07.1998 cleanup
+% 23.05.1999 name "unash.fd"
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Bernd Raichle and Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% This file contains the font description of font `nash'
+% fontencoding: U
+% fontfamily: nash
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% make sure, that it is used with NFSS2 only
+%
+\ifx\DeclareFontShape\undefined
+ \message{Something is wrong -- %
+ this file can only be used with LaTeX2e and NFSS2!!!}
+\expandafter\endinput\fi
+
+\ProvidesFile{unash.fd}[1999/05/23 3.08 ArabTeX Naskh font definitions]
+
+\DeclareFontFamily{U}{nash}{}%
+
+\DeclareFontShape{U}{nash}{m}{n}{%
+ <-6> sfixed * [7.2] nash14
+ <6-10> s * [1.44] nash14
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * [1.44] nash14
+}{}
+
+\DeclareFontShape{U}{nash}{bx}{n}{%
+ <-6> sfixed * [7.2] nash14bf
+ <6-10> s * [1.44] nash14bf
+ <10><10.95><12><14.4><17.28><20.74><24.88> s * [1.44] nash14bf
+}{}
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/utf8.sty b/language/arabic/arabtex/texinput/utf8.sty
new file mode 100644
index 0000000000..fa7167e96c
--- /dev/null
+++ b/language/arabic/arabtex/texinput/utf8.sty
@@ -0,0 +1,42 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% utf8.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% utf8.sty
+% Scanner for UTF-8 Code
+% to install it, include it as a LaTeX package or style option "utf8"
+% with Plain TeX, say "\input utf8.sty"
+% to activate it, say "\setcode {utf8}"
+% 13.06.2000
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \utfatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \utfatcode = \catcode`\@ \catcode`\@ = 11
+
+\UsePackage {utfcode}
+
+\a@ident {utf8.sty} {3.10 UTF-8 input encoding } {13.06.2000}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \set@utfc {% select the UTF-8 scanner
+\global\let \a@scan \utfc@scan
+\global\def \sc@beg {\utf@beg }%
+\global\def \sc@word {\utf@word }%
+\global\a@digits = {0123456789}%
+\global\a@first = {ϕ}%
+\catcode ` 11
+\a@message {input encoding set to UTF-8 conventions}}
+
+\xpa \def \xpa \sc@table \xpa {\sc@table % add the UTF-8 encoding
+utf-8\set@utfc utf8\set@utfc }
+
+\a@message {scanner for code UTF-8 installed.}
+
+\catcode `\@ = \utfatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/utfcode.sty b/language/arabic/arabtex/texinput/utfcode.sty
new file mode 100644
index 0000000000..5f8ab2753e
--- /dev/null
+++ b/language/arabic/arabtex/texinput/utfcode.sty
@@ -0,0 +1,279 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% utfcode.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% utfcode.sty
+% scanner module for the Arabic and Hebrew segments of UTF-8
+% loaded and called by utf8.sty
+% 07.03.2002
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\catcode`\@ = 11
+
+\a@ident {utfcode.sty} {3.10a Arabic+Hebrew segment of UTF-8} {07.03.2002}
+
+\newcount \u@lb \newcount \u@lq
+
+\newif \ifa@quote
+
+\def \utfc@scan #1>{% modified scanner call: token sequence -> \a@tokens
+\iftest@scan \tracingmacros = 1 \fi
+\global\def \a@rest {}\global\a@tokens = {}\def \sc@char {}%
+\utf@beg #1\@ \@ \@ \@@ % transform
+\iftest@scan \tracingmacros = 0 \xpa \a@verb \xpa (\the\a@tokens )>\fi }
+
+\def \utf@beg #1#2{% start UTF-8 scanner
+\h@mzafalse \iz@fetfalse \novocalize % because of explicit quoting
+ \@ssimfalse
+ \def \next {\utf@word #1#2}%
+\ifnum `#1="D8 \ifnum `#2="27 \def \next {\utf@alif }\fi \else
+%\ifx #1"\def \next {\utf@lquote #2}\else
+\ifx #1/\global \a@tokens ={#1}\def \next {\utf@word #2}\else % x>
+%\fi
+\fi\fi \next }
+
+{\catcode `\^ 7 \catcode `\^^M=13
+\gdef \utf@word #1#2{% transform input into internal notation
+\ifx #1\@ \def \next {\utf@end #2}\else % finished
+\ifx #1-\def \next {\utf@minus #2}\else %
+%ifx #1"\def \next {\utf@rquote #2}\else %
+\ifx #1/\def \next {\sc@back #1#2}\else %
+%\if \nxp ^^M\nxp #1\def \next {\utf@par #2}\else % active character
+\ifnum `#1="D6 \def \next {\utf@dvi #2}\else %
+\ifnum `#1="D7 \def \next {\utf@dvii #2}\else %
+\ifnum `#1="D8 \def \next {\utf@dviii #2}\else %
+\ifnum `#1="D9 \def \next {\utf@dix #2}\else %
+\ifnum `#1="DA \def \next {\utf@da #2}\else %
+\ifnum `#1="DB \def \next {\utf@db #2}\else %
+ \def \next {\utf@asci #1#2}%
+\fi\fi\fi\fi\fi\fi %
+%\fi\fi
+\fi\fi\fi \next }%
+%
+\gdef \utf@word #1{% transform input into internal notation
+\ifx #1\@ \def \next {\utf@end }\else % finished
+\ifx #1-\def \next {\utf@minus }\else %
+\ifx #1/\def \next {\sc@back #1}\else %
+\ifnum `#1="D6 \def \next {\utf@dvi }\else %
+\ifnum `#1="D7 \def \next {\utf@dvii }\else %
+\ifnum `#1="D8 \def \next {\utf@dviii }\else %
+\ifnum `#1="D9 \def \next {\utf@dix }\else %
+\ifnum `#1="DA \def \next {\utf@da }\else %
+\ifnum `#1="DB \def \next {\utf@db }\else %
+ \def \next {\utf@asci #1}%
+\fi\fi\fi\fi\fi\fi %
+\fi\fi\fi \next }%
+} % catcode 13
+
+\def \utf@end #1\@@ {\relax }
+
+\def \utf@next {% save and deposit character
+\sc@put \utf@word }
+
+\def \utf@asci #1{% deposit ASCII item
+\def \sc@char {#1}\utf@next }
+
+{\catcode `\% 12 \gdef \a@pc {%}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \utf@dvi #1{% segment D6
+ \u@lb `#1\relax \advance \u@lb -128
+ \u@lq \u@lb \divide \u@lq 8
+ \edef \sc@char {}%
+\ifcase \u@lq \or \or \or \or \or
+\or \advance \u@lb -48 \edef \sc@char
+ {\ifcase \u@lb
+ "\n@xp\a@e\or "\n@xp\a@I\or "\n@xp\a@A\or "\n@xp\a@O\or
+ "i\or "\n@xp\a@E\or "e\or "a\or
+ \fi }%
+\or \advance \u@lb -56 \edef \sc@char
+ {\ifcase \u@lb
+ "A\or "\n@xp\a@o\or L\or "u\or
+ "\n@xp\a@Zu\or |\or B\or "\n@xp\a@Zo\or
+ \fi }%
+\fi \utf@next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \utf@dvii #1{% segment D7
+ \u@lb `#1\relax \advance \u@lb -128
+ \u@lq \u@lb \divide \u@lq 8
+\ifcase \u@lq \edef \sc@char
+ {\ifcase \u@lb
+ K\or "\n@xp\a@Ze\or "\n@xp\a@Za\or :\or "\n@xp\a@Zi\or \or \or \or
+ \fi }%
+\or \advance \u@lb -8 \edef \sc@char {}%
+\or \advance \u@lb -16 \edef \sc@char
+ {\ifcase \u@lb
+ Q\or b\or g\or d\or h\or w\or z\or X\or
+ \fi }%
+\or \advance \u@lb -24 \edef \sc@char
+ {\ifcase \u@lb
+ C\or y\or k\or k\or l\or m\or m\or n\or
+ \fi }%
+\or \advance \u@lb -32 \edef \sc@char
+ {\ifcase \u@lb
+ n\or s\or P\or p\or p\or S\or S\or q\or
+ \fi }%
+\or \advance \u@lb -40 \edef \sc@char
+ {\ifcase \u@lb
+ r\or \n@xp\a@S \or t\or \or \or \or \or \or
+ \fi }%
+\or \advance \u@lb -48 \edef \sc@char
+ {\ifcase \u@lb
+ w\n@xp\a@U w\or wy\or y\n@xp\a@U y\or '\or
+ ''\or \or \or \or
+ \fi }%
+\or \advance \u@lb -56 \edef \sc@char
+ {\ifcase \u@lb
+ \or \or \or \or \or \or \or "|\or
+ \fi }%
+\fi \utf@next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \utf@dviii #1{% segment D8
+ \u@lb `#1\relax \advance \u@lb -"80
+ \u@lq \u@lb \divide \u@lq 8
+\ifcase \u@lq \edef \sc@char {}%
+\or \advance \u@lb -8 \edef \sc@char {\ifcase \u@lb
+ \or \or \or \or ,\or \or \or \or \fi }%
+\or \advance \u@lb -"10 \edef \sc@char {}%
+\or \advance \u@lb -"18 \edef \sc@char {\ifcase \u@lb
+ \or \or \or ;\or \or \or \or ?\or \fi }%
+\or \advance \u@lb -"20 \edef \sc@char {\ifcase \u@lb
+ \or Q|\or QA\or Qa\or Qw\or Qi\or Qy\or A\or \fi }%
+\or \advance \u@lb -"28 \edef \sc@char {\ifcase \u@lb
+ b\or T\or t\or C\or G\or H\or X\or d\or \fi }%
+\or \advance \u@lb -"30 \edef \sc@char {\ifcase \u@lb
+ F\or r\or z\or s\or x\or S\or D\or V\or \fi }%
+\or \advance \u@lb -"38 \edef \sc@char {\ifcase \u@lb
+ Z\or P\or R\or \or \or \or \or \or \fi }%
+\fi \utf@next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \utf@dix #1{% segment D9
+ \u@lb `#1\relax \advance \u@lb -"80
+ \u@lq \u@lb \divide \u@lq 8
+\ifcase \u@lq \edef \sc@char {\ifcase \u@lb
+ B\or f\or q\or k\or l\or m\or n\or h\or \fi }%
+\or \advance \u@lb -8 \edef \sc@char {\ifcase \u@lb
+ w\or Y\or y\or "aN\or "uN\or "iN\or "a\or "u\or \fi }%
+\or \advance \u@lb -"10 \edef \sc@char {\ifcase \u@lb
+ "i\or "\n@xp\a@Ze\or ""\or "\n@xp\a@ZE\or
+ "\n@xp\a@Za\or "\n@xp\a@Zu\or \or \or \fi }%
+\or \advance \u@lb -"18 \edef \sc@char {}%
+\or \advance \u@lb -"20 \edef \sc@char {\ifcase \u@lb
+ 0\or 1\or 2\or 3\or 4\or 5\or 6\or 7\or \fi }%
+\or \advance \u@lb -"28 \edef \sc@char {\ifcase \u@lb
+ 8\or 9\or \a@pc\or \f@sila\or
+ \f@sila\or *\or \or \or \fi }%
+\or \advance \u@lb -"30 \edef \sc@char {\ifcase \u@lb
+ "\n@xp\a@a\or "\or "\n@xp\a@ZA\or "\n@xp\a@ZU\or
+% N"\n@xp\a@Za\or Qa\or Qw\or Qw"u\or \fi }%
+N"\n@xp\a@Za\or N"\n@xp\a@Za A\or N"\n@xp\a@Za w\or N"\n@xp\a@Za w"u\or \fi }%
+\or \advance \u@lb -"38 \edef \sc@char {\ifcase \u@lb
+% Qy\or \n@xp\a@t\or \n@xp\a@T\or \n@xp\a@ab\or
+ N"\n@xp\a@Za Y\or \n@xp\a@t\or \n@xp\a@T\or \n@xp\a@ab\or
+ \n@xp\a@v\or \n@xp\a@at\or p\or \n@xp\a@ac\or \fi }%
+\fi \utf@next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \utf@da #1{% segment DA
+ \u@lb `#1\relax \advance \u@lb -"80
+ \u@lq \u@lb \divide \u@lq 8
+\ifcase \u@lq \edef \sc@char {\ifcase \u@lb
+ \n@xp\a@ap\or c\or \n@xp\a@G\or \n@xp\a@ag\or
+ \n@xp\a@ah\or \n@xp\a@c\or J\or \n@xp\a@aj\or \fi }%
+\or \advance \u@lb -8 \edef \sc@char {\ifcase \u@lb
+ \n@xp\a@d\or \n@xp\a@aA\or \n@xp\a@D\or \n@xp\a@aB\or
+ \n@xp\a@ad\or \n@xp\a@af\or \n@xp\a@aC\or \n@xp\a@ae\or \fi }%
+\or \advance \u@lb -"10 \edef \sc@char {\ifcase \u@lb
+ \n@xp\a@aD\or \n@xp\a@r\or \n@xp\a@aF\or \n@xp\a@q\or
+ \n@xp\a@aG\or \n@xp\a@R\or \n@xp\a@z\or \n@xp\a@aH\or \fi }%
+\or \advance \u@lb -"18 \edef \sc@char {\ifcase \u@lb
+ j\or \n@xp\a@ar\or \n@xp\a@s\or \n@xp\a@aJ\or
+ \n@xp\a@aK\or \n@xp\a@aL\or \n@xp\a@aM\or \n@xp\a@aO\or \fi }%
+\or \advance \u@lb -"20 \edef \sc@char {\ifcase \u@lb
+ \n@xp\a@p\or \n@xp\a@f\or \n@xp\a@F\or \n@xp\a@aP\or
+ v\or \n@xp\a@V\or \n@xp\a@aq\or \n@xp\a@aQ\or \fi }%
+\or \advance \u@lb -"28 \edef \sc@char {\ifcase \u@lb
+ \n@xp\a@aR\or \n@xp\a@k\or \n@xp\a@ax\or \n@xp\a@g\or
+ \n@xp\a@L\or K\or \n@xp\a@aS\or g\or \fi }%
+\or \advance \u@lb -"30 \edef \sc@char {\ifcase \u@lb
+ \n@xp\a@J\or \n@xp\a@al\or \n@xp\a@aT\or \n@xp\a@ak\or
+ \n@xp\a@M\or \n@xp\a@l\or \n@xp\a@aW\or \n@xp\a@aX\or \fi }%
+\or \advance \u@lb -"38 \edef \sc@char {\ifcase \u@lb
+ \n@xp\a@aY\or \n@xp\a@aZ\or \n@xp\a@n\or \n@xp\a@an\or
+ \n@xp\a@m\or \n@xp\a@am\or h-\or \n@xp\a@aE\or \fi }%
+\fi \utf@next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \utf@db #1{% segment DB
+ \u@lb `#1\relax \advance \u@lb -"80
+ \u@lq \u@lb \divide \u@lq 8
+\ifcase \u@lq \edef \sc@char {\ifcase \u@lb
+ Qh\or \n@xp\a@h\or \n@xp\a@B\or \n@xp\a@j\or
+ \n@xp\a@aU\or \n@xp\a@aV\or \n@xp\a@W\or \n@xp\a@w\or \fi }%
+\or \advance \u@lb -8 \edef \sc@char {\ifcase \u@lb
+ \n@xp\a@aw\or \n@xp\a@au\or \n@xp\a@av\or \n@xp\a@X\or
+ Y\or L\or \n@xp\a@az\or \n@xp\a@x\or \fi }%
+\or \advance \u@lb -"10 \edef \sc@char {\ifcase \u@lb
+ \n@xp\a@Y\or \n@xp\a@y\or E\or \n@xp\a@ay\or
+ B\or \n@xp\a@H\or \or \or \fi }%
+\or \advance \u@lb -"18 \edef \sc@char {}%
+\or \advance \u@lb -"20 \edef \sc@char {}%
+\or \advance \u@lb -"28 \edef \sc@char {}%
+\or \advance \u@lb -"30 \edef \sc@char {\ifcase \u@lb
+ 0\or 1\or 2\or 3\or
+ 4\or 5\or 6\or 7\or \fi }%
+\or \advance \u@lb -"38 \edef \sc@char {\ifcase \u@lb
+ 8\or 9\or \n@xp\a@aI\or \n@xp\a@aN\or
+ \n@xp\a@P\or \n@xp\a@ai"\n@xp\a@Zi\or
+ \n@xp\a@ao"\n@xp\a@Zi\or \or \fi }%
+\fi \utf@next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \utf@alif {% alif at the beginning of a word
+\def \sc@char {a}\sc@put \utf@word }
+
+\def \utf@minus {% hyphen between words
+\def \sc@char {-}\sc@put \utf@beg }
+%\def \sc@char {B}\sc@put \utf@beg }
+
+\def \utf@lquote {% left quote
+\ifa@quote \def \sc@char {'}\global\a@quotefalse
+\else \def \sc@char {`}\global\a@quotetrue
+\fi \sc@put \utf@beg }
+
+\def \utf@rquote {% right quote
+\global\a@quotefalse \def \sc@char {'}\sc@put \utf@word }
+
+\def \utf@par #1\@ \@@ {% new line, push back the rest
+\sc@back \\#1\@ \@@ }
+
+\def \utf@b@cs #1#2{% test word end
+\def \sc@char {#1}\sc@put
+%\ifx #2\@ \def \next {\sc@endscan #2}\else
+\ifx #2\@ \def \next {\utf@end #2}\else
+\ifcat -\nxp #2 \def \next {\utf@word #2}\else
+\def \next {\sc@back #2}\fi \fi \next }
+
+\def \utf@cs #1#2{% control sequence within a word; push back?
+\xpa \ifx #1\closegeresh \def \next {\utf@b@cs {\nxp \lq }#2}\else
+\xpa \ifx #1\closequote \def \next {\utf@b@cs {`}#2}\else
+ \def \next {\sc@back #1#2}%
+\fi\fi \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\catcode `\@ = \utfatcode
+
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/verses.sty b/language/arabic/arabtex/texinput/verses.sty
new file mode 100644
index 0000000000..5845f76002
--- /dev/null
+++ b/language/arabic/arabtex/texinput/verses.sty
@@ -0,0 +1,106 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% verses.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% verses.sty
+% utility for ArabTeX
+% macros for typesetting Arabic verses in two columns
+% usage: load as a package, or after loading ArabTeX
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+% 08.02.2006
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Usage:
+% (use within an Arabic environment)
+%
+% \setversedim #1#2 % define the layout (within a group):
+% #1 = length of both half-verses
+% #2 = separation distance = length of a connection, if present
+% Variant:
+% \setversedim #1[#2]#3 % for half-verses of unequal length
+% #1 = length of first (=right) half-verse
+% #2 = length of second (=left) half-verse
+% #3 = separation distance = length of a connection, if present
+%
+% \halfverses #1#2 % typeset two separated half-verses
+% #1 = text of first (=right) half-verse
+% #2 = text of second (=left) half-verse
+% Variant:
+% \halfverses #1[#2]#3 % typeset two connected half-verses
+% #1 = text of first (=right) half-verse
+% #2 = text of connection
+% #3 = text of second (=left) half-verse
+%
+% Alternative (if preferred):
+%
+% \connverses #1#2#3 % = \halfverses #1[#2]#3
+%
+% Note: use keshide to attach the connection, if required
+% Note: if the verses do not fit on the line, they will be put on
+% two lines, flush to the margins.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \verseatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \verseatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {verses.sty} {3.12 verses in two columns} {08.02.2006}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% define the layout, verses will be centered
+
+\newdimen \a@hvlen \newdimen \a@hvsep
+\newdimen \a@hvind \newdimen \a@@hvlen
+
+\def \setversedim #1#2{% set lengths of half-verse, [separation]
+\ifx \LaTeX \undefined \a@hvind \hsize
+\else \a@hvind \textwidth \fi
+\a@hvlen #1\relax \advance \a@hvind -\a@hvlen
+\ifx [#2\def \next {\set@verseI [}\else
+\a@@hvlen \a@hvlen \def \next {\set@@verse {#2}}\fi \next }
+
+\def \set@verseI [#1]{% optional parameter
+\a@@hvlen #1\relax \set@@verse }
+
+\def \set@@verse #1{% separation
+\advance \a@hvind -\a@@hvlen \a@hvsep #1\relax
+\advance \a@hvind -\a@hvsep \divide \a@hvind 2 }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \connverses #1#2#3{% first half-verse, connection, second half-verse
+\cond{\ifdim 0pt > \a@hvind }%
+{\spreadbox \a@hvlen {#1}\\ \hfill }% first block
+{\noindent \hskip \a@hvind \relax \spreadbox \a@hvlen {#1}}\fi
+\spreadbox \a@hvsep {#2}% separator
+\spreadbox \a@@hvlen {#3}% second block
+\tracingmacros 0
+\par }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% macro for two half verses
+\def \halfverses #1#2{% normal case
+\connverses {#1}{\hfill}{#2}}
+
+\def \a@c@halfverses #1#2{% optional parameter?
+%\tracingmacros 1
+\cond{\ifx [#2}{\half@verses {#1}[}%
+{\half@verses {#1}[\hfill]{#2}}\fi }
+
+\def \half@verses #1[#2]#3{% first[mid]second
+\test@token \connverses {#1}{#2}{#3}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% define a default layout
+% do this within a group!
+
+%\setversedim {2.0in}{0.3in}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% make macros known to ArabTeX
+\allowarab \connverses \all@wtw@ \setversedim
+
+\catcode `\@ = \verseatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/witbhs.sty b/language/arabic/arabtex/texinput/witbhs.sty
new file mode 100644
index 0000000000..ced1700841
--- /dev/null
+++ b/language/arabic/arabtex/texinput/witbhs.sty
@@ -0,0 +1,209 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% witbhs.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% witbhs.sty
+% Scanner for a variant of the encoding used in the machine-readable
+% Biblia Hebraica Stuttgartensia
+% to install it, include it as a LaTeX package or style option "witbhs"
+% with Plain TeX, say "\input witbhs.sty"
+% to activate it, say "\setcode {witbhs}
+% 14.09.2001
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% about the encoding contact: arian@th.vu.nl
+% Dr Arian J.C.Verheij
+% NWO / VU, Dpt. Biblical Studies & CS
+% De Boelelaan 1105, kr. 14A-38
+% NL 1081 HV Amsterdam
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \bhsatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \bhsatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {witbhs.sty} {3.10 read WITBHS Hebrew encoding} {14.09.2001}
+
+\UsePackage {bhslabel} % process BHS labels
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for WITBHS Hebrew coding
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\catcode `\"=12 \catcode `\>=11 \catcode `\&=12
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \setwitbhs@codes {% activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@A {a} \def \sc@B {b} \def \sc@C {x} \def \sc@D {d}
+\def \sc@E {e} \def\sc@F{\n@xp\a@s} \def\sc@G{g} \def \sc@H {h}
+\def \sc@I {i} \def \sc@J {y} \def \sc@K {k} \def \sc@L {l}
+\def \sc@M {m} \def \sc@N {n} \def\sc@O{\n@xp\a@o}\def \sc@P {p}
+\def \sc@Q {q} \def \sc@R {r} \def \sc@S {s} \def \sc@T {t}
+\def \sc@U {u} \def \sc@V {C} \def \sc@W {w} \def \sc@X {X}
+\def \sc@Y {S} \def \sc@Z {z} \def \sc@@ {A}
+\a@digits = {0123456789} \a@paren = {[]}
+\a@first = {>+<##&$":.,*0123456789}
+\globaldefs=0 }
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for WITBHS
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+{\arab@codes \catcode `\> 11
+
+\gdef \witbhs@beg #1#2{% start WITBHS scanner
+\@ssimfalse \def \next {\witbhs@word #1#2}%
+\ifx #1\@\def \next {\sc@endscan #2}\else % finished
+\ifx #2\@\def \next {\witbhs@testpara #1#2}\else
+\ifx #2?\def \next {\witbhs@testpara #1#2}\else
+\fi\fi\fi \next }
+
+\gdef \witbhs@word #1#2{% transform input into internal notation
+\case #1\of
+{ \@{\sc@endscan #2}
+ ]{\witbhs@word }
+ /{\witbhs@word #2}
+ 0{\witbhs@zero #2}
+ 7{\witbhs@seven #2}
+ 12345689{\witbhs@word }
+ ?{\witbhs@query #2}
+ :{\witbhs@colon #2}
+% O{\witbhs@O #2}
+ W{\witbhs@W #2}
+ *{\witbhs@star #2}
+% #2{\witbhs@word #1|#2}
+\default {\witbhs@rest #1#2}
+}\endcase }
+
+\gdef \witbhs@rest #1#2{% transform input into internal notation
+ \def \next {\sc@put \witbhs@word #2}%
+\case #1\of
+{ .{\def \sc@char {\nxp \a@Zu }}
+ |{\def \sc@char {\nxp \a@U }}
+ '{\def \sc@char {'}}
+ >{\def \sc@char {Q}}
+ +{\def \sc@char {N}} % phantom carrier
+ ${\def \sc@char {M}} % phantom carrier
+ ={\def \sc@char {-}} % medial form at end
+ <{\def \sc@char {P}}
+ &{\def \sc@char {\nxp \a@s }}
+ ;{\def \sc@char {\nxp \a@E }}
+ -{\def \sc@char {B}}
+\default {\ifcat \nxp #1\relax \def \next {\sc@back #1{#2}}\else
+ \if \nxp #1\a@hash \def \sc@char {\nxp \a@S }\else
+ \ifcat \nxp #1a\edef \sc@char {\csname sc@#1\endcsname }%
+ \fi\fi\fi }
+}\endcase \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \witbhs@star {% qere / qetiv
+\def \sc@char {*}\sc@put \witbhs@word }
+
+\gdef \witbhs@colon #1{% shwa or chatef
+\def \next {\witbhs@word }%
+\ifx #1A\def \sc@char {\nxp \a@A }\else
+\ifx #1@\def \sc@char {\nxp \a@O }\else
+\ifx #1E\def \sc@char {\nxp \a@I }\else
+\def \sc@char {\nxp \a@e }\def \next {\witbhs@word #1}%
+\fi\fi\fi \sc@put \next }
+
+\iffalse
+\gdef \witbhs@O {% cholem or cholem waw
+\def \sc@char {\nxp \a@o }\sc@put \witbhs@word }
+\fi
+
+\gdef \witbhs@W #1{% waw or shureq
+\def \sc@char {w}\def \next {\witbhs@word #1}%
+\ifx #1.\def \sc@char {U}\def \next {\witbhs@word }%
+\fi \sc@put \next }
+
+\gdef \witbhs@seven #1{% meteg
+\def \next {\witbhs@word }%
+\ifx #15\def \sc@char {|}\sc@put \else
+\if\is@in@set #1\a@digits \else \def \next {\witbhs@word #1}%
+\fi\fi \next }
+
+\gdef \witbhs@zero #1{% sop pasuq and pasuq
+\def \next {\witbhs@word }%
+\ifx #10\def \sc@char {:}\sc@put \else
+%\ifx #15\def \sc@char {K}\sc@put \else
+\ifx #15\def \next {\witbhs@pasuq }\else
+\if\is@in@set #1\a@digits \else \def \next {\witbhs@word #1}%
+\fi\fi\fi \next }
+
+}% \arab@codes
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \witbhs@testpara #1#2{% single initial P ?
+\ifx #1P\def \next {\witbhs@para #1#2}%
+\else \def \next {\witbhs@word #1#2}%
+\fi \next }
+
+\def \a@c@witbhspara {% small paragraph mark
+\putwordb@x {\small \heb@font \heb@testfont
+\act@cd '164 \advance \act@cd \heb@dsp
+\space \char \act@cd \space }\test@token }
+
+\def \a@c@pasuq {% verse division
+\putwordb@x {\small $\!|\!$}\test@token }
+
+\def \witbhs@para P#1\@ \@@ {% prepare paragraph mark
+\sc@back \witbhspara #1\@ \@@ }
+
+\def \witbhs@pasuq #1\@ \@@ {% prepare verse division
+\sc@back \pasuq #1\@ \@@ }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \witbhs@query #1\@ \@@ {% new line, push back the rest
+\ifnum \bhsmode = 1 \sc@back \\#1\@ \@@ \else % finish line
+\ifnum \bhsmode = 2 \sc@back \|#1\@ \@@ \else % stretch line
+ \sc@back #1\@ \@@ % start next word
+\fi\fi }
+
+\newcount \bhsmode \bhsmode 0
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \set@witbhs {% substitute the BHS scanner
+\let \sc@beg \witbhs@beg \let \sc@word \witbhs@word
+\let \sc@back \sc@@back \let \sc@endscan \sc@@endscan
+\let \a@scan \a@@scan \setwitbhs@codes
+\let \arab@codes \wit@arab@codes
+\let \unarab@codes \wit@unarab@codes
+\a@message {input encoding set to WITBHS conventions}}
+
+\xpa \def \xpa \sc@table \xpa {\sc@table % add the BHS encoding
+witbhs\set@witbhs }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \wit@arab@codes {% save and set special characters
+\csname originalTeX\endcsname
+\chardef \spc@de = \catcode`\ \catcode`\ = 10
+\chardef \dqc@de = \catcode`\" \catcode`\" = \@other
+\chardef \lsc@de = \catcode`\< \catcode`\< = \@other
+\chardef \gtc@de = \catcode`\> \catcode`\> = 11
+\chardef \atc@de = \catcode`\@ \catcode`\@ = 11
+\chardef \hsc@de = \catcode`\# \catcode`\# = \@other
+\chardef \amc@de = \catcode`\& \catcode`\& = \@other
+\arab@charsubdefmax \charsubdefmax \charsubdefmax \m@ne }
+
+\def \wit@unarab@codes {% reset catcodes
+\catcode`\ = \spc@de \catcode`\< = \lsc@de \catcode`\" = \dqc@de
+\catcode`\# = \hsc@de \catcode`\> = \gtc@de \catcode`\@ = \atc@de
+\catcode`\& = \amc@de
+\charsubdefmax \arab@charsubdefmax }
+
+{\catcode`\# = \@other \gdef \a@hash {#}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@message {scanner for WITBHS encoding installed.}
+
+\catcode `\@ = \bhsatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/texinput/xarbskel.sty b/language/arabic/arabtex/texinput/xarbskel.sty
new file mode 100644
index 0000000000..522c8120bc
--- /dev/null
+++ b/language/arabic/arabtex/texinput/xarbskel.sty
@@ -0,0 +1,126 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% xarbskel.sty
+% ArabTeX
+% character skeleton definitions for font xnsh14
+% called in HMODE
+% extends arabskel.sty
+% Version 17.07.1999
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chardef \sklatcode = \catcode`\@ \catcode`\@ = 11
+\a@ident {xarbskel.sty}{3.09 character skeleton definitions }{17.07.1999}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Arabic
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+\gdef \setx@skels {% define \ArabTeX character skeletons for font xnsh
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% pattern: class, code, connect, {iso, fin, med, ini}
+\gdef \sk@@ {10 ,\a@block ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % illegal
+\gdef \sk@def {10 ,\a@block ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % default
+
+% basic letters
+\gdef \sk@a {10 ,\a@alif ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % alif
+\gdef \sk@ain { 4 ,\a@ain ,1 ,{{4,0}{4,1}{0,0}{0,0}}} % `ain
+\gdef \sk@b { 1 ,\a@bah ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % bah, no dot
+\gdef \sk@b@p { 9 ,\a@bah@p ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % bah, loop
+\gdef \sk@d {10 ,\a@dal ,0 ,{{0,0}{0,0}{0,2}{0,0}}} % dal
+\gdef \sk@d@p {10 ,\a@dal@p ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % dal, loop
+\gdef \sk@f@s { 6 ,\a@fah@s ,1 ,{{0,5}{0,5}{0,0}{0,0}}} % fah, no dot
+\gdef \sk@g { 5 ,\a@gaf ,1 ,{{0,2}{0,4}{0,0}{0,0}}} % gaf
+\gdef \sk@g@p { 5 ,\a@gaf@p ,1 ,{{0,2}{0,4}{0,0}{0,0}}} % gaf, loop
+\gdef \sk@g@s { 5 ,\a@gaf@s ,1 ,{{0,2}{0,3}{0,0}{0,0}}} % gaf, bar
+\gdef \sk@g@ps{ 5,\a@gaf@p@s,1 ,{{0,2}{0,3}{0,0}{0,0}}} % gaf, loop, bar
+\gdef \sk@h {10 ,\a@hah ,1 ,{{0,0}{0,-1}{0,0}{0,0}}} % hah
+\gdef \sk@h@m {10 ,\a@hah ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % hah marbouta
+\gdef \sk@h@s {10 ,\a@h@s ,1 ,{{1,0}{0,0}{0,0}{0,0}}} % urdu hah
+\gdef \sk@h@u {10,\a@hah@urd,1 ,{{1,0}{0,0}{0,0}{0,0}}} % urdu hah
+\gdef \sk@hh { 3 ,\a@hhah ,1 ,{{4,0}{4,0}{0,0}{0,2}}} % hhah
+\gdef \sk@k { 5 ,\a@kaf ,1 ,{{0,2}{0,3}{0,0}{0,-1}}} % kaf
+\gdef \sk@k { 5 ,\a@kaf ,1 ,{{6,-1}{6,-1}{6,-2}{6,-3}}} % kaf
+\gdef \sk@k@p { 5 ,\a@kaf@p ,1 ,{{0,2}{0,2}{0,0}{0,-1}}} % kaf, loop
+\gdef \sk@k@s { 5 ,\a@kaf@s ,1 ,{{0,2}{0,3}{0,0}{0,-1}}} % kaf, no mark
+\gdef \sk@k@s { 5 ,\a@kaf@s ,1 ,{{0,2}{0,3}{6,-3}{6,-2}}} % kaf, no mark
+\gdef \sk@k@w { 5 ,\a@kaf@w ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % wide kaf
+\gdef \sk@kh { 3 ,\a@khah ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % khah
+\gdef \sk@l { 0 ,\a@lam ,1 ,{{0,3}{0,2}{0,0}{0,0}}} % lam
+\gdef \sk@l@w { 0 ,\a@lam@l ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % lower lam
+\gdef \sk@m {10 ,\a@mim ,1 ,{{0,1}{0,0}{0,0}{0,0}}} % mim
+\gdef \sk@n { 1 ,\a@nun ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % nun, no dot
+\gdef \sk@n@p { 9 ,\a@nun@p ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % nun, loop
+\gdef \sk@q { 6 ,\a@qaf ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % qaf
+\gdef \sk@q@s { 6 ,\a@qaf@s ,1 ,{{0,2}{0,2}{0,0}{0,0}}} % qaf without dots
+\gdef \sk@r { 8 ,\a@rah ,0 ,{{0,2}{0,1}{0,0}{0,0}}} % rah
+\gdef \sk@r@p { 8 ,\a@rah@p ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % rah, loop
+\gdef \sk@r@s { 8 ,\a@rah@s ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % rah, two dots
+\gdef \sk@s { 2 ,\a@sin ,1 ,{{0,6}{0,4}{0,1}{0,3}}} % sin
+\gdef \sk@ss { 2 ,\a@sad ,1 ,{{0,4}{0,4}{0,1}{0,2}}} % ssad
+\gdef \sk@tt { 7 ,\a@ttah ,1 ,{{0,2}{0,2}{0,1}{0,1}}} % ttah
+\gdef \sk@w {10 ,\a@waw ,0 ,{{0,1}{0,1}{0,0}{0,0}}} % waw
+\gdef \sk@w@r {10 ,\a@waw@r ,0 ,{{0,1}{0,1}{0,0}{0,0}}} % waw with ring
+\gdef \sk@w@b {10 ,\a@waw@b ,0 ,{{0,1}{0,1}{0,0}{0,0}}} % waw with bar
+\gdef \sk@y { 1 ,\a@yah ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % yah
+\gdef \sk@y@h { 1 ,\a@yah@h ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % yah, stroke
+\gdef \sk@y@p { 1 ,\a@yah@p ,1 ,{{0,1}{0,2}{0,0}{0,0}}} % yah bari
+\gdef \sk@y@ps{ 9,\a@yah@p@s,1 ,{{0,1}{0,2}{0,0}{0,0}}} % yah bari with loop
+
+% special forms
+\gdef \sk@sn@s { 2 ,\a@sin@spec ,1 ,{{0,6}{0,4}{0,-2}{0,-1}}} % sin short
+\gdef \sk@sd@s { 2 ,\a@sad@spec ,1 ,{{0,4}{0,4}{0,-3}{0,-2}}} % ssad short
+\gdef \sk@j@cl { 3 ,\a@gim@close ,1 ,{{0,0}{0,0}{0,0}{0,1}}} % gim closed
+\gdef \sk@k@sh { 5 ,\a@kaf@spec ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % kaf, short
+\gdef \sk@k@sh { 5 ,\a@kaf@spec ,1 ,{{6,0}{6,0}{6,0}{6,-3}}} % kaf, short
+\gdef \sk@k@sp { 5 ,\a@kaf@p@spec ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % gaf1 short
+\gdef \sk@g@sh { 5 ,\a@gaf@spec ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % gaf- short
+\gdef \sk@g@sp { 5 ,\a@gaf@p@spec ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % gaf2 short
+\gdef \sk@y@s { 1 ,\a@yah@spec ,1 ,{{0,0}{0,2}{0,0}{0,0}}} % yah lig
+\gdef \sk@y@h@s { 1 ,\a@yah@h@spec ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % yah' lig
+\gdef \sk@hh@s { 3 ,\a@hhah@spec ,1 ,{{4,0}{4,6}{0,1}{0,0}}} % hhah short
+\gdef \sk@kh@s { 3 ,\a@khah@spec ,1 ,{{0,0}{0,0}{0,1}{0,0}}} % khah short
+\gdef \sk@l@a {10 ,\a@lam@alif ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % lam-alif
+\gdef \sk@m@si {10 ,\a@mim@sind ,1 ,{{0,2}{0,0}{0,0}{0,0}}} % Sindhi mim
+
+% specials
+\gdef \sk@B {10 ,\a@tatwil,1 ,{{0,0}{0,0}{0,0}{0,0}}} % tatwil
+\gdef \sk@Q {10 ,\a@hamzc ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % hamza char
+\gdef \sk@W {10 ,\a@break ,0 ,{{0,0}{0,0}{0,0}{0,0}}} % small space 34
+\gdef \sk@spc {10 ,\a@smspc ,1 ,{{0,0}{0,0}{2,0}{2,0}}} % small space 36
+\gdef \sk@skip{10 ,\a@skip ,1 ,{{0,0}{0,0}{2,0}{2,0}}} % small space 37
+
+% ligatures
+\gdef \sk@b@sp { 1 ,\a@bah@spec ,1 ,{{0,0}{0,0}{0,0}{0,1}}} % r-b-?
+\gdef \sk@b@g { 1 ,\a@bah@spec@gim ,1 ,{{0,0}{0,0}{0,2}{0,4}}} % j-b-?
+\gdef \sk@b@h { 1 ,\a@bah@high ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % s-b-?
+\gdef \sk@b@y { 1 ,\a@bah@spec@yah ,1 ,{{0,0}{0,0}{0,-1}{0,0}}} % y-b-?
+\gdef \sk@b@e@m { 1 ,\a@bah@end@mim ,1 ,{{0,0}{0,0}{0,1}{0,0}}} % m-b-?
+\gdef \sk@b@m@m { 1 ,\a@bah@mid@mim ,1 ,{{0,0}{0,0}{2,2}{2,2}}} % m-b-?
+\gdef \sk@b@e@h { 1 ,\a@bah@end@hah ,1 ,{{0,0}{0,0}{2,2}{0,0}}} % h-b-?
+\gdef \sk@h@s@l {10 ,\a@hah@spec@lam ,1 ,{{1,0}{0,0}{1,-3}{0,0}}} % E-h-?
+\gdef \sk@l@h { 0 ,\a@lam@spec@hah ,1 ,{{0,0}{0,0}{0,0}{0,-3}}} % m-l-|
+\gdef \sk@l@g { 0 ,\a@lam@gim ,1 ,{{0,0}{0,0}{0,0}{0,4}}} % j-l-|
+\gdef \sk@l@g@s { 0 ,\a@lam@gim ,1 ,{{0,0}{0,0}{0,0}{0,1}}} % j-l-|
+\gdef \sk@l@y { 0 ,\a@lam@spec@yah ,1 ,{{0,0}{0,0}{0,1}{0,0}}} % j-l-?
+\gdef \sk@l@m { 0 ,\a@lam@spec@mim ,1 ,{{0,0}{0,0}{0,0}{0,-2}}} % m-l-|
+\gdef \sk@l@lng { 0 ,\a@lam@long ,1 ,{{0,0}{0,0}{0,0}{0,1}}} % y-l-|
+\gdef \sk@m@s {10 ,\a@mim@spec ,1 ,{{0,0}{0,-1}{0,2}{0,2}}} % ?-m-l
+\gdef \sk@m@s@h {10 ,\a@mim@spec@high,1 ,{{0,0}{0,0}{0,0}{0,0}}} % j-m-|
+\gdef \sk@m@s@l {10 ,\a@mim@spec@long,1 ,{{0,0}{0,0}{0,-1}{0,0}}} % ?-m-l
+\gdef \sk@m@s@m {10 ,\a@mim@spec@mim ,1 ,{{0,0}{0,0}{0,5}{0,0}}} % m-m-|
+\gdef \sk@m@l@g {10 ,\a@mim@lam@gim ,1 ,{{0,0}{0,0}{0,0}{0,0}}} % j-m-l
+\gdef \sk@l@spc {10 ,\a@smspc ,1 ,{{0,0}{0,0}{0,0}{0,-4}}} % small space
+
+\global\let \sk@free \sk@W % phantom for outtable
+
+\global\let \sk@b@s \sk@b
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}}% end of dynamic definitions for Arabic
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\catcode`\@ = \sklatcode
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabtex/texinput/xarbsymb.sty b/language/arabic/arabtex/texinput/xarbsymb.sty
new file mode 100644
index 0000000000..6c283aaed6
--- /dev/null
+++ b/language/arabic/arabtex/texinput/xarbsymb.sty
@@ -0,0 +1,213 @@
+%%%%%%%%%%%%%%%%%%%% xarbsymb.sty %%%%%%%%%%%%%%%%%%%%
+% 15.7.1998 16:19:14
+% code assignments for arabic font in ArabTeX
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+% 15.07.98
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@ident {xarbsymb.sty} {3.07 symbolic output encoding } {15.07.1998}
+
+\chardef \a@nashcode = '1 % file has been read
+
+%%%%%%%%%%%%%%%%%% connection forms %%%%%%%%%%%%%%%%%%
+
+\chardef \a@f@iso = '0 % isolated
+\chardef \a@f@end = '1 % final
+\chardef \a@f@mid = '2 % medial
+\chardef \a@f@beg = '3 % initial
+
+%%%%%%%%%%%%%%%%%% diacritical marks %%%%%%%%%%%%%%%%%
+
+\chardef \a@ttah@dia = '010 % for urdu
+\chardef \a@one@dot@up = '011 %
+\chardef \a@two@dots@down = '012 %
+\chardef \a@fatha = '013 %
+\chardef \a@kasra = '013 %
+\chardef \a@damma = '014 %
+\chardef \a@hamza = '015 %
+\chardef \a@madda = '016 %
+\chardef \a@shadda = '017 %
+\chardef \a@two@dots@up = '020 %
+\chardef \a@three@dots@up = '021 %
+\chardef \a@three@dots@down = '022 %
+\chardef \a@fathatan = '023 %
+\chardef \a@kasratan = '023 %
+\chardef \a@dammatan = '024 %
+\chardef \a@sukun = '025 %
+\chardef \a@wasla = '026 %
+\chardef \a@quran@alif = '027 %
+\chardef \a@bow@dia = '030 % for kurdish
+\chardef \a@e@dia = '040 % for pashto
+\chardef \a@zwarakay = '040 % for pashto
+\chardef \a@one@dot@down = '056 % period
+\chardef \a@hamz@s = '143 % for kashmiri 0674
+\chardef \a@bars = '144 % for 06fd, 06fe
+\chardef \a@roof = '145 % for 06c9
+\chardef \a@h@dia = '146 % for urdu
+\chardef \a@ammad = '146 % for pashto
+
+\chardef \a@f@iv = '122 % farsi 4
+\chardef \a@f@v = '123 % farsi 5
+\chardef \a@f@vi = '124 % farsi 6
+
+%%%%%%%%%%%%%%%%%% letters %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chardef \a@alif = '100 % 100,101
+\chardef \a@alif@iso = \a@alif % 100
+\chardef \a@alif@end = '101 % 101
+
+\chardef \a@lam@alif = '102 % 102,103
+\chardef \a@lam@alif@iso = \a@lam@alif % 102
+\chardef \a@lam@alif@end = '103 % 103
+
+\chardef \a@bah@s = '110 % 110-113 bah without dots
+\chardef \a@bah = \a@bah@s % 110
+\chardef \a@bah@p = '114 % 114-117 bah with loop
+
+\chardef \a@rah = '120 % 120,121
+%% zay 122 122,123
+%% zhah 124 124,125
+\chardef \a@rah@p = '126 % 126,127 rah with loop
+
+\chardef \a@hamza@iso = '132 % 132
+\chardef \a@hamzc = \a@hamza@iso % 132
+
+\chardef \a@dal = '130 % 130,131
+\chardef \a@dal@p = '136 % 136,137 dal with loop
+
+\chardef \a@gim@close = '144 % 147 closed gim
+%% gim 140 140-143
+\chardef \a@hhah = '150 % 150-153
+\chardef \a@rah@s = '156 % 156,157 rah with two dots
+\chardef \a@khah = '160 % 160-163
+%% tsah 170 170-173
+\chardef \a@rah@k = '166 % 166,167 kurdish rah
+
+\chardef \a@sin = '200 % 200-203
+\chardef \a@sin@spec = '202 % 204,205 short form
+%% shin_spec 204 206,207 short form
+\chardef \a@qaf@s = '206 % 206,207 qaf without dots
+%% shin 210 210-213
+%% sin_p 214 214,215 sin with two dots
+
+\chardef \a@sad = '220 % 220-223
+\chardef \a@sad@spec = '222 % 224,225 short form
+%% dad_spec 224 226,227 short form
+%% dad 230 230-233
+
+\chardef \a@gaf@p@spec = '224 % 226,227 short form of gaf with loop
+\chardef \a@gaf@p@s = '230 % 230-233 gaf with loop
+\chardef \a@kaf@w = '234 % 234-237 wide kaf
+
+\chardef \a@ttah = '240 % 240-243
+
+%% zzah 244 244-247
+\chardef \a@waw@r = '244 % 244,245 waw with ring
+\chardef \a@waw@b = '246 % 246,247 waw with bar
+
+\chardef \a@ain = '250 % 250-253
+\chardef \a@fah@s = '254 % 254-257 fah family
+
+\chardef \a@kaf@p@s = '260 % 260-263 kaf with loop
+\chardef \a@gaf@p = \a@kaf@p@s % 260
+\chardef \a@kaf@p = '264 % 264,265 kaf with loop and mark
+\chardef \a@kaf@p@spec = '264 % 266,267 short form of kaf with loop
+\chardef \a@kaf@s = '270 % 270-273 kaf family
+\chardef \a@kaf = '274 % 274,275
+\chardef \a@kaf@spec = '274 % 276,277 short form
+\chardef \a@gaf@s = '300 % 300-303 gaf family
+\chardef \a@gaf = '304 % 304,305
+\chardef \a@gaf@spec = '304 % 306,307 short form
+
+\chardef \a@lam = '310 % 310-313
+\chardef \a@mim = '320 % 320-323
+\chardef \a@mim@sind = '335 % 335 Sindhi final mim 06fe
+
+\chardef \a@nun = '340 % 340,341
+\chardef \a@nun@p = '342 % 342,343 nun with loop
+
+\chardef \a@hah = '350 % 350-354
+\chardef \a@hah@urd = '353 % 353,354 two-eyed hah,
+ % see hah and hah_spec_lam
+\chardef \a@hah@spec@lam = '352 % 354 medial hah after initial lam
+\chardef \a@hah@spec = '354 % 355-357 final short hah;
+\chardef \a@h@s = \a@hah@spec % 354
+ % also medial hah after sin
+
+\chardef \a@waw = '360 % 360,361
+%% fah 362 362,363
+\chardef \a@qaf = '364 % 364,365
+%% vah 366 366,367
+
+\chardef \a@yah = '370 % 370,371
+\chardef \a@yah@spec = '371 % 372 ligature for final yah
+\chardef \a@yah@h = '373 % 373,374 yah with hook
+\chardef \a@yah@h@spec = '374 % 375 ligature for yah with hook
+\chardef \a@yah@p = '376 % 376,377 long yah
+\chardef \a@yah@p@s = '366 % 366,367 long yah with loop
+
+%%%%%%%%%%%%%%%%%% special characters %%%%%%%%%%%%%%%%%%%
+
+\chardef \a@block = '000 % 000-003
+\chardef \a@tatwil = '004 % 004-007
+
+\chardef \a@rquotes = '042 % 042
+\chardef \a@period = '056 % 056
+\chardef \a@lquotes = '134 % 134
+
+\chardef \a@space@spec = '044 % 046,047 carrier for dots
+\chardef \a@smspc = \a@space@spec % 044
+\chardef \a@skip = '045 % 047 small space, initial (!)
+\chardef \a@no@break = '046 % 046 no space, breaks ligatures
+\chardef \a@break = '047 % 047 small space, medial
+
+%%%%%%%%%%%%%%%%%% ligatures %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chardef \a@bah@spec@gim = '027 % 031 medial bah before gim
+\chardef \a@bah@beg@gim = '030 % 032 initial (!) bah before gim
+\chardef \a@g@to@mb = '031 % 033 medial bah to gim
+\chardef \a@bah@high = '032 % 034,035 before sin, sad
+\chardef \a@bah@spec = '034 % 036,037 bah before final rah, nun
+\chardef \a@lam@spec@low = '072 % 074 medial lam for 'allah'
+\chardef \a@lam@l = \a@lam@spec@low % 072
+\chardef \a@alif@spec@mim = '075 % 076 final alif after mim
+\chardef \a@bah@end@hah = '102 % 104,105 bah before final hah
+\chardef \a@bah@spec@yah = '104 % 106,107 bah before gim, with tie;
+ % also bah before yah
+%% gim_spec 143 144,145 from above
+\chardef \a@hhah@spec = '153 % 154,155 from above
+\chardef \a@khah@spec = '163 % 164,165 from above
+%% tsah_spec 173 174,175 from above
+\chardef \a@lam@gim = '311 % 314 lam on gim
+\chardef \a@lam@on@gim = '312 % 314 initial (!) lam before gim
+\chardef \a@lam@long = '312 % 315 initial lam before yah
+\chardef \a@lam@spec@yah = '314 % 316 before final yah ?
+\chardef \a@lam@spec@mim = '314 % 317 initial lam before medial mim
+\chardef \a@mim@spec@high = '322 % 324 from above
+\chardef \a@mim@spec = '324 % 325-327 final; medial after lam;
+ % also before gim
+\chardef \a@mim@spec@mim = '325 % 330 initial mim before mim
+\chardef \a@mim@lam@gim = '327 % 331 medial mim between lam and gim
+\chardef \a@lam@spec@hah = '330 % 333 initial lam before medial hah
+\chardef \a@mim@spec@long = '332 % 334 medial mim after lam, vocalized
+\chardef \a@mm@to@b = '333 % 335 bah to medial mim
+\chardef \a@bah@mid@mim = '334 % 336,337 bah before medial mim
+\chardef \a@mim@spec@alif = '342 % 344 medial mim before alif
+\chardef \a@er@to@s = '343 % 345 sin to final rah
+\chardef \a@bah@end@mim = '344 % 346 medial bah before final mim
+\chardef \a@bah@beg@mim = '345 % 347 initial (!) bah before final mim
+
+%%%%%%%%%%%%%%%%%% ties %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chardef \a@g@to@s = \a@bah@spec@gim % sin to gim
+\chardef \a@em@to@s = \a@bah@end@mim % sin to final mim
+\chardef \a@mh@to@s = \a@bah@end@hah % sin to medial hah or final mim
+\chardef \a@g@to@bb = \a@bah@beg@gim % initial bah to gim
+\chardef \a@em@to@bb = \a@bah@beg@mim % initial bah to final mim
+
+%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\endinput
diff --git a/language/arabic/arabtex/texinput/yiddish.sty b/language/arabic/arabtex/texinput/yiddish.sty
new file mode 100644
index 0000000000..3f6e67ca70
--- /dev/null
+++ b/language/arabic/arabtex/texinput/yiddish.sty
@@ -0,0 +1,195 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% hescan.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% yiddish.sty
+% experimental scanner for Yiddish ASCII files
+% to activate it, say "\setcode {yiddish}
+% 14.06.2000
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Informatik
+% Universitaet Stuttgart
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \yidatcode \undefined \else \xpa \endinput \fi
+
+\chardef \yidatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {yiddish.sty}
+{3.10 scanner for YIVO Yiddish encoding} {14.06.2000}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% dynamic definitions for Hebrew
+{\catcode `\^ 7 \catcode `\ =9 \catcode `\^^M=9 \catcode `\^^I=9
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\gdef \setyid@codes {\seta@codes % activate and change some codes
+\globaldefs=1
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def \sc@a {Q"a} \def \sc@b {b}
+\def \sc@c {@} \def \sc@d {d}
+\def \sc@e {P} \def \sc@f {f\n@xp\a@Zo}
+\def \sc@g {g} \def \sc@h {h}
+\def \sc@i {y} \def \sc@j {@}
+\def \sc@k {q} \def \sc@l {l}
+\def \sc@m {m} \def \sc@n {n}
+\def \sc@o {Q"A}\def \sc@p {\n@xp\a@f}
+\def \sc@q {@} \def \sc@r {r}
+\def \sc@s {s} \def \sc@t {t}
+\def \sc@u {w} \def \sc@v {\n@xp\a@w}
+\def \sc@w {w} \def \sc@x {@}
+\def \sc@y {y} \def \sc@z {z}
+%
+\xpa \def \csname sc@`\endcsname {Q}
+\a@digits = {0123456789} \a@paren = {()[]} \a@first = {}
+\globaldefs=0
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+}% end of dynamic definitions for Hebrew: oldcode and pccode
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \yid@scan #1>{% modified scanner call: token sequence -> \a@tokens
+\iftest@scan \tracingmacros = 1
+\ifshow \else \lowercase {\a@verb #1>}\fi\fi
+\global\def \a@rest {}\global\a@tokens = {}\@ssimfalse
+\novocalize \lowercase {\sc@beg #1\@ \@@ }% transform
+\iftest@scan \tracingmacros = 0 \xpa \a@verb \xpa (\the\a@tokens )>\fi }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\gdef \yid@beg #1{% start \ArabTeX scanner
+ \def \next {\yid@word #1}%
+\case #1\of
+{iu {\def \sc@char {Q}\sc@put }%
+a {\def \next {\y@d@a}}%
+e {\def \next {\y@d@e}}%
+o {\def \next {\y@d@o}}%
+\default{\def \sc@char {@}}%
+}\endcase \next }
+
+\def \yid@word #1{% transform input into internal notation
+% \def \next {\yid@word }%
+\ifx #1\@ \def \next {\sc@endscan }\else
+\ifcat \nxp #1\relax \def \next {\yid@cs #1}\else % control sequence
+\apply \yid@next \tocase #1\of
+{ a{\yid@a }%
+ e{\yid@e }%
+ y{\yid@y }%
+ o{\yid@o }%
+ k{\yid@k }%
+ t{\yid@t }%
+ s{\yid@s }%
+ z{\yid@z }%
+ -{\yid@B }%
+\default {\yid@@word #1}%
+}\endcase
+\fi\fi \next }
+
+\def \yid@next #1{\def \next {#1}}
+
+\def \yid@@word #1{% transform input into internal notation
+\case #1\of
+{ `{\def \sc@char {Q}}%
+ "{\def \sc@char {\a@dq}}%
+\default {\ifcat \noexpand #1a\edef \sc@char {\csname sc@#1\endcsname }%
+ \else \def \sc@char {#1}\fi}%
+}\endcase
+\sc@put \yid@word }%
+
+\def \y@d@cs #1#2{% test word end
+\def \sc@char {#1}\sc@put
+\ifx #2\@ \def \next {\sc@endscan #2}\else
+\ifcat -\nxp #2 \def \next {\yid@word #2}\else
+\def \next {\sc@back #2}\fi \fi \next }
+
+\def \yid@cs #1#2{% control sequence within a word; push back?
+\xpa \ifx #1\closegeresh \def \next {\y@d@cs {\nxp \lq }#2}\else
+\xpa \ifx #1\closequote \def \next {\y@d@cs {`}#2}\else
+ \def \next {\sc@back #1#2}%
+\fi\fi \next }
+
+\def \yid@endscan \@@ {\global\let \a@scan \yid@scan }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \y@d@a #1{% `ay ?
+\ifx #1y\def \sc@char {Q"\nxp\a@ZA}\def \next {\yid@word }\else
+\def \sc@char {Q"a}\def \next {\yid@word #1}%
+\fi \sc@put \next }
+
+\def \y@d@e #1{% `ey ?
+\ifx #1y\def \sc@char {Q"\nxp\a@ZE}\def \next {\yid@word }\else
+\def \sc@char {P}\def \next {\yid@word #1}%
+\fi \sc@put \next }
+
+\def \y@d@o #1{% `oy ?
+\ifx #1y\def \sc@char {Q"\nxp\a@ZO}\def \next {\yid@word }\else
+\def \sc@char {Q"A}\def \next {\yid@word #1}%
+\fi \sc@put \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \yid@a #1{% ay ?
+\ifx #1y\def \sc@char {"\nxp\a@ZA}\def \next {\yid@word }\else
+\def \sc@char {Q"a}\def \next {\yid@word #1}%
+\fi \sc@put \next }
+
+\def \yid@e #1{% ey ?
+\ifx #1y\def \sc@char {"\nxp\a@ZE}\def \next {\yid@word }\else
+\def \sc@char {P}\def \next {\yid@word #1}%
+\fi \sc@put \next }
+
+\def \yid@y #1{% yi ?
+\ifx #1i\def \sc@char {yy"i}\def \next {\yid@word }\else
+\def \sc@char {y}\def \next {\yid@word #1}%
+\fi \sc@put \next }
+
+\def \yid@o #1{% oy ?
+\ifx #1y\def \sc@char {"\nxp\a@ZO}\def \next {\yid@word }\else
+\def \sc@char {Q"A}\def \next {\yid@word #1}%
+\fi \sc@put \next }
+
+\def \yid@k #1{% kh ?
+\ifx #1h\def \sc@char {k}\def \next {\yid@word }\else
+\def \sc@char {q}\def \next {\yid@word #1}%
+\fi \sc@put \next }
+
+\def \yid@t #1{% ts ?
+\ifx #1s\def \sc@char {S}\def \next {\yid@word }\else
+\def \sc@char {C}\def \next {\yid@word #1}%
+\fi \sc@put \next }
+
+\def \yid@s #1{% sh ?
+\ifx #1h\def \sc@char {\nxp\a@S}\def \next {\yid@word }\else
+\def \sc@char {s}\def \next {\yid@word #1}%
+\fi \sc@put \next }
+
+\def \yid@z #1{% zh ?
+\ifx #1h\def \sc@char {z\nxp\a@S}\def \next {\yid@word }\else
+\def \sc@char {z}\def \next {\yid@word #1}%
+\fi \sc@put \next }
+
+\def \yid@B #1{% -- ?
+\ifx #1-\def \sc@char {\a@end}\def \next {\yid@word }\else
+\def \sc@char {B}\def \next {\yid@word #1}%
+\fi \sc@put \next }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \yid@select {% select the new scanner
+\heb@catcodes % inside hebtex.sty; to make sure
+\let \sc@beg \yid@beg \let \sc@word \yid@word
+\let \sc@back \sc@@back \let \sc@endscan \yid@endscan
+\setyid@codes \global\let \a@scan \yid@scan
+\a@message {input encoding set to YIVO Yiddish conventions}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\xpa \def \xpa \sc@table \xpa {\sc@table % add the Hebrew encodings
+yiddish\yid@select }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\a@message {scanner for YIVO Yiddish installed.}
+
+\catcode `\@ = \yidatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/arabic/arabtex/tfm/hcaption.tfm b/language/arabic/arabtex/tfm/hcaption.tfm
new file mode 100644
index 0000000000..dc4c41b235
--- /dev/null
+++ b/language/arabic/arabtex/tfm/hcaption.tfm
Binary files differ
diff --git a/language/arabic/arabtex/tfm/hclassic.tfm b/language/arabic/arabtex/tfm/hclassic.tfm
new file mode 100644
index 0000000000..ffcb2a7fa4
--- /dev/null
+++ b/language/arabic/arabtex/tfm/hclassic.tfm
Binary files differ
diff --git a/language/arabic/arabtex/tfm/nash14.tfm b/language/arabic/arabtex/tfm/nash14.tfm
new file mode 100644
index 0000000000..00a5276e00
--- /dev/null
+++ b/language/arabic/arabtex/tfm/nash14.tfm
Binary files differ
diff --git a/language/arabic/arabtex/tfm/nash14bf.tfm b/language/arabic/arabtex/tfm/nash14bf.tfm
new file mode 100644
index 0000000000..695eb4b0d7
--- /dev/null
+++ b/language/arabic/arabtex/tfm/nash14bf.tfm
Binary files differ
diff --git a/language/arabic/arabtex/tfm/xnsh14.tfm b/language/arabic/arabtex/tfm/xnsh14.tfm
new file mode 100644
index 0000000000..b4b7b15f6c
--- /dev/null
+++ b/language/arabic/arabtex/tfm/xnsh14.tfm
Binary files differ
diff --git a/language/arabic/arabtex/tfm/xnsh14bf.tfm b/language/arabic/arabtex/tfm/xnsh14bf.tfm
new file mode 100644
index 0000000000..7e0efe8bd0
--- /dev/null
+++ b/language/arabic/arabtex/tfm/xnsh14bf.tfm
Binary files differ
diff --git a/language/arabic/arabtex/tfm/yarborn.tfm b/language/arabic/arabtex/tfm/yarborn.tfm
new file mode 100644
index 0000000000..5b5f6aea4d
--- /dev/null
+++ b/language/arabic/arabtex/tfm/yarborn.tfm
Binary files differ
diff --git a/language/arabic/arabtex/verses.sty b/language/arabic/arabtex/verses.sty
new file mode 100644
index 0000000000..5845f76002
--- /dev/null
+++ b/language/arabic/arabtex/verses.sty
@@ -0,0 +1,106 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%% verses.sty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% verses.sty
+% utility for ArabTeX
+% macros for typesetting Arabic verses in two columns
+% usage: load as a package, or after loading ArabTeX
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% (c) Klaus Lagally
+% Institut fuer Formale Methoden der Informatik
+% Universitaet Stuttgart
+% 08.02.2006
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Usage:
+% (use within an Arabic environment)
+%
+% \setversedim #1#2 % define the layout (within a group):
+% #1 = length of both half-verses
+% #2 = separation distance = length of a connection, if present
+% Variant:
+% \setversedim #1[#2]#3 % for half-verses of unequal length
+% #1 = length of first (=right) half-verse
+% #2 = length of second (=left) half-verse
+% #3 = separation distance = length of a connection, if present
+%
+% \halfverses #1#2 % typeset two separated half-verses
+% #1 = text of first (=right) half-verse
+% #2 = text of second (=left) half-verse
+% Variant:
+% \halfverses #1[#2]#3 % typeset two connected half-verses
+% #1 = text of first (=right) half-verse
+% #2 = text of connection
+% #3 = text of second (=left) half-verse
+%
+% Alternative (if preferred):
+%
+% \connverses #1#2#3 % = \halfverses #1[#2]#3
+%
+% Note: use keshide to attach the connection, if required
+% Note: if the verses do not fit on the line, they will be put on
+% two lines, flush to the margins.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifx \verseatcode \undefined \else \expandafter \endinput
+\fi % load only once
+
+\chardef \verseatcode = \catcode`\@ \catcode`\@ = 11
+
+\a@ident {verses.sty} {3.12 verses in two columns} {08.02.2006}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% define the layout, verses will be centered
+
+\newdimen \a@hvlen \newdimen \a@hvsep
+\newdimen \a@hvind \newdimen \a@@hvlen
+
+\def \setversedim #1#2{% set lengths of half-verse, [separation]
+\ifx \LaTeX \undefined \a@hvind \hsize
+\else \a@hvind \textwidth \fi
+\a@hvlen #1\relax \advance \a@hvind -\a@hvlen
+\ifx [#2\def \next {\set@verseI [}\else
+\a@@hvlen \a@hvlen \def \next {\set@@verse {#2}}\fi \next }
+
+\def \set@verseI [#1]{% optional parameter
+\a@@hvlen #1\relax \set@@verse }
+
+\def \set@@verse #1{% separation
+\advance \a@hvind -\a@@hvlen \a@hvsep #1\relax
+\advance \a@hvind -\a@hvsep \divide \a@hvind 2 }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def \connverses #1#2#3{% first half-verse, connection, second half-verse
+\cond{\ifdim 0pt > \a@hvind }%
+{\spreadbox \a@hvlen {#1}\\ \hfill }% first block
+{\noindent \hskip \a@hvind \relax \spreadbox \a@hvlen {#1}}\fi
+\spreadbox \a@hvsep {#2}% separator
+\spreadbox \a@@hvlen {#3}% second block
+\tracingmacros 0
+\par }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% macro for two half verses
+\def \halfverses #1#2{% normal case
+\connverses {#1}{\hfill}{#2}}
+
+\def \a@c@halfverses #1#2{% optional parameter?
+%\tracingmacros 1
+\cond{\ifx [#2}{\half@verses {#1}[}%
+{\half@verses {#1}[\hfill]{#2}}\fi }
+
+\def \half@verses #1[#2]#3{% first[mid]second
+\test@token \connverses {#1}{#2}{#3}}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% define a default layout
+% do this within a group!
+
+%\setversedim {2.0in}{0.3in}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% make macros known to ArabTeX
+\allowarab \connverses \all@wtw@ \setversedim
+
+\catcode `\@ = \verseatcode
+\endinput
+%%%%%%%%%%%%%%%%%%%%%%%% EOF %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/language/arabic/arabxetex b/language/arabic/arabxetex
new file mode 120000
index 0000000000..b7be1837f9
--- /dev/null
+++ b/language/arabic/arabxetex
@@ -0,0 +1 @@
+../../macros/xetex/latex/arabxetex \ No newline at end of file
diff --git a/language/arabic/dad/Dad-bold.afm b/language/arabic/dad/Dad-bold.afm
new file mode 100644
index 0000000000..58b26f3410
--- /dev/null
+++ b/language/arabic/dad/Dad-bold.afm
@@ -0,0 +1,276 @@
+StartFontMetrics 2.0
+Comment Panose 2 0 0 0 0 0 0 0 0 0
+FullName Dad Bold
+FontName Dad-Bold
+FamilyName Dad
+Weight Bold
+Version 1.000
+IsFixedPitch false
+ItalicAngle 0.00
+FontBBox -278 -546 1017 951
+Ascender 750
+Descender -250
+XHeight 500
+CapHeight 700
+UnderlinePosition -100
+UnderlineThickness 50
+EncodingScheme FontSpecific
+StartCharMetrics 256
+C 0 ; WX 248 ; N afii57415.fin ; B 86 0 270 513 ;
+C 1 ; WX 590 ; N afii57507.ini ; B 0 -241 591 292 ;
+C 2 ; WX 589 ; N afii57507.med ; B 0 -241 610 292 ;
+C 3 ; WX 518 ; N afii57507.fin ; B 2 -320 539 290 ;
+C 4 ; WX 800 ; N afii57430.ini ; B 0 0 800 513 ;
+C 5 ; WX 801 ; N afii57430.med ; B 0 0 822 513 ;
+C 6 ; WX 996 ; N afii57430.fin ; B 2 -180 1017 508 ;
+C 7 ; WX 590 ; N afii57421.ini ; B 0 0 591 292 ;
+C 8 ; WX 589 ; N afii57421.med ; B 0 0 610 292 ;
+C 9 ; WX 518 ; N afii57421.fin ; B 2 -320 539 290 ;
+C 10 ; WX 321 ; N afii57450.ini ; B 0 -184 321 309 ;
+C 11 ; WX 323 ; N afii57450.med ; B 0 -184 344 308 ;
+C 12 ; WX 526 ; N afii57449.fin ; B 7 -265 547 110 ;
+C 13 ; WX 800 ; N afii57429.ini ; B 0 0 800 303 ;
+C 14 ; WX 801 ; N afii57429.med ; B 0 0 822 303 ;
+C 15 ; WX 996 ; N afii57429.fin ; B 2 -180 1017 303 ;
+C 16 ; WX 529 ; N afii57431.ini ; B -1 0 530 510 ;
+C 17 ; WX 529 ; N afii57431.med ; B -1 0 551 510 ;
+C 18 ; WX 529 ; N afii57431.fin ; B -44 0 551 510 ;
+C 19 ; WX 426 ; N afii57448.fin ; B -29 -267 447 316 ;
+C 20 ; WX 529 ; N afii57432.ini ; B -1 0 530 510 ;
+C 21 ; WX 529 ; N afii57432.med ; B -1 0 551 510 ;
+C 22 ; WX 529 ; N afii57432.fin ; B -44 0 551 510 ;
+C 23 ; WX 443 ; N afii57433.ini ; B 0 0 441 353 ;
+C 24 ; WX 425 ; N afii57433.med ; B 0 0 447 331 ;
+C 25 ; WX 425 ; N afii57433.fin ; B 9 -329 446 311 ;
+C 26 ; WX 321 ; N afii57416.ini ; B 0 -192 321 309 ;
+C 27 ; WX 323 ; N afii57416.med ; B 0 -192 344 308 ;
+C 28 ; WX 589 ; N afii57416.fin ; B 13 -201 610 275 ;
+C 29 ; WX 345 ; N afii57423.fin ; B 54 -35 367 344 ;
+C 30 ; WX 325 ; N uni06C0.fin ; B 2 0 347 554 ;
+C 31 ; WX 320 ; N afii57441.ini ; B 0 0 320 530 ;
+C 32 ; WX 262 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 244 ; N exclam ; B 91 0 163 441 ;
+C 34 ; WX 1 ; N _0034 ; B 0 0 0 0 ;
+C 35 ; WX 1 ; N _0035 ; B 0 0 0 0 ;
+C 36 ; WX 1 ; N _0036 ; B 0 0 0 0 ;
+C 37 ; WX 546 ; N percent ; B 56 -11 494 562 ;
+C 38 ; WX 1 ; N uni200D.fin ; B 0 0 0 0 ;
+C 39 ; WX 1 ; N _0039 ; B 0 0 0 0 ;
+C 40 ; WX 293 ; N parenleft ; B 39 -341 248 556 ;
+C 41 ; WX 293 ; N parenright ; B 43 -341 254 556 ;
+C 42 ; WX 433 ; N asterisk ; B 72 -109 385 240 ;
+C 43 ; WX 0 ; N afii57457 ; B 12 569 186 736 ;
+C 44 ; WX 212 ; N afii57388 ; B 48 -40 167 162 ;
+C 45 ; WX 1 ; N uni200D.iso ; B 0 0 0 0 ;
+C 46 ; WX 205 ; N period ; B 29 -2 115 82 ;
+C 47 ; WX 439 ; N slash ; B -7 -192 458 541 ;
+C 48 ; WX 424 ; N afii57392 ; B 133 97 287 322 ;
+C 49 ; WX 424 ; N afii57393 ; B 124 -45 301 502 ;
+C 50 ; WX 424 ; N afii57394 ; B 67 -50 364 489 ;
+C 51 ; WX 424 ; N afii57395 ; B 4 -58 420 485 ;
+C 52 ; WX 424 ; N afii57396 ; B 16 -50 399 503 ;
+C 53 ; WX 424 ; N afii57397 ; B 59 -26 391 478 ;
+C 54 ; WX 424 ; N afii57398 ; B 44 -6 371 481 ;
+C 55 ; WX 424 ; N afii57399 ; B 14 -21 411 502 ;
+C 56 ; WX 424 ; N afii57400 ; B 17 -39 414 484 ;
+C 57 ; WX 424 ; N afii57401 ; B 58 -52 376 509 ;
+C 58 ; WX 244 ; N colon ; B 92 -1 161 299 ;
+C 59 ; WX 228 ; N afii57403 ; B 48 35 197 465 ;
+C 60 ; WX 285 ; N less ; B 28 -9 269 398 ;
+C 61 ; WX 439 ; N equal ; B 19 91 425 301 ;
+C 62 ; WX 285 ; N greater ; B 15 -9 257 398 ;
+C 63 ; WX 275 ; N afii57407 ; B 12 26 256 457 ;
+C 64 ; WX 1 ; N _0064 ; B 0 0 0 0 ;
+C 65 ; WX 228 ; N afii57415.iso ; B 108 -35 182 513 ;
+C 66 ; WX 293 ; N guillemotleft ; B 110 -13 315 270 ;
+C 67 ; WX 537 ; N afii57507.iso ; B 13 -326 524 291 ;
+C 68 ; WX 992 ; N afii57430.iso ; B 2 -180 992 506 ;
+C 69 ; WX 293 ; N guillemotright ; B -1 -13 203 270 ;
+C 70 ; WX 165 ; N afii57444.ini2 ; B -158 -100 184 517 ;
+C 71 ; WX 247 ; N afii57444.ini3 ; B -278 -64 269 506 ;
+C 72 ; WX 537 ; N afii57421.iso ; B 13 -326 524 291 ;
+C 73 ; WX 574 ; N afii57449.iso ; B 2 -174 567 336 ;
+C 74 ; WX 338 ; N afii57508.iso ; B -31 -217 337 528 ;
+C 75 ; WX 170 ; N afii57440.iso ; B -26 0 197 110 ;
+C 76 ; WX 145 ; N afii57444.ini4 ; B -19 -8 123 398 ;
+C 77 ; WX 145 ; N afii57444.med2 ; B -19 -8 173 398 ;
+C 78 ; WX 1 ; N _0078 ; B 0 0 0 0 ;
+C 79 ; WX 170 ; N afii57440.ini ; B -26 0 197 110 ;
+C 80 ; WX 170 ; N afii57440.med ; B -26 0 197 110 ;
+C 81 ; WX 170 ; N afii57440.fin ; B -26 0 197 110 ;
+C 82 ; WX 467 ; N afii57434.iso ; B 4 -291 465 521 ;
+C 83 ; WX 992 ; N afii57429.iso ; B 2 -180 992 303 ;
+C 84 ; WX 531 ; N afii57431.iso ; B -44 0 530 510 ;
+C 85 ; WX 425 ; N afii57448.iso ; B -29 -233 425 351 ;
+C 86 ; WX 1 ; N _0086 ; B 0 0 0 0 ;
+C 87 ; WX 1 ; N _0087 ; B 0 0 0 0 ;
+C 88 ; WX 1 ; N _0088 ; B 0 0 0 0 ;
+C 89 ; WX 574 ; N afii57450.iso ; B 2 -323 567 336 ;
+C 90 ; WX 531 ; N afii57432.iso ; B -44 0 530 510 ;
+C 91 ; WX 293 ; N bracketleft ; B 50 -275 241 591 ;
+C 92 ; WX 439 ; N backslash ; B -7 -192 458 541 ;
+C 93 ; WX 293 ; N bracketright ; B 49 -275 240 591 ;
+C 94 ; WX 1 ; N _0094 ; B 0 0 0 0 ;
+C 95 ; WX 1 ; N _0095 ; B 0 0 0 0 ;
+C 96 ; WX 467 ; N afii57433.iso ; B 4 -289 465 356 ;
+C 97 ; WX 0 ; N afii57454 ; B 36 596 185 716 ;
+C 98 ; WX 593 ; N afii57416.iso ; B 13 -200 586 275 ;
+C 99 ; WX 593 ; N afii57419.iso ; B 13 -43 586 481 ;
+C 100 ; WX 343 ; N afii57423.iso ; B 54 -35 341 344 ;
+C 101 ; WX 359 ; N uni06C0.iso ; B 18 -29 340 534 ;
+C 102 ; WX 679 ; N afii57441.iso ; B 12 -17 670 530 ;
+C 103 ; WX 557 ; N afii57509.iso ; B 7 -2 555 495 ;
+C 104 ; WX 359 ; N afii57470.iso ; B 18 -29 340 311 ;
+C 105 ; WX 0 ; N afii57456 ; B -39 -462 125 -322 ;
+C 106 ; WX 537 ; N afii57420.iso ; B 13 -326 524 291 ;
+C 107 ; WX 476 ; N afii57443.iso ; B 6 -18 473 517 ;
+C 108 ; WX 427 ; N afii57444.iso ; B 9 -180 432 513 ;
+C 109 ; WX 345 ; N afii57445.iso ; B 4 -329 343 288 ;
+C 110 ; WX 448 ; N afii57446.iso ; B 2 -180 443 451 ;
+C 111 ; WX 0 ; N afii57458 ; B 39 569 184 741 ;
+C 112 ; WX 593 ; N afii57506.iso ; B 13 -283 586 275 ;
+C 113 ; WX 526 ; N afii57442.iso ; B 15 -268 521 517 ;
+C 114 ; WX 338 ; N afii57425.iso ; B -31 -217 337 252 ;
+C 115 ; WX 825 ; N afii57427.iso ; B 2 -180 823 268 ;
+C 116 ; WX 593 ; N afii57418.iso ; B 13 -43 586 390 ;
+C 117 ; WX 0 ; N afii57455 ; B 6 570 185 793 ;
+C 118 ; WX 679 ; N afii57505.iso ; B 12 -17 670 586 ;
+C 119 ; WX 1 ; N _0119 ; B 0 0 0 0 ;
+C 120 ; WX 537 ; N afii57422.iso ; B 13 -326 524 483 ;
+C 121 ; WX 1 ; N _0121 ; B 0 0 0 0 ;
+C 122 ; WX 338 ; N afii57426.iso ; B -31 -217 337 472 ;
+C 123 ; WX 293 ; N braceleft ; B 63 -252 256 591 ;
+C 124 ; WX 338 ; N afii57409.iso ; B 23 -23 328 309 ;
+C 125 ; WX 293 ; N braceright ; B 36 -252 227 591 ;
+C 126 ; WX 1 ; N _0126 ; B 0 0 0 0 ;
+C 127 ; WX 1 ; N _0127 ; B 0 0 0 0 ;
+C 128 ; WX 510 ; N _0128 ; B 8 -104 510 569 ;
+C 129 ; WX 1 ; N _0129 ; B 0 0 0 0 ;
+C 130 ; WX 1 ; N _0130 ; B 0 0 0 0 ;
+C 131 ; WX 228 ; N uni0671.iso ; B -29 -39 262 573 ;
+C 132 ; WX 359 ; N afii57417.iso ; B 18 -29 340 470 ;
+C 133 ; WX 343 ; N afii57424.iso ; B 54 -35 341 523 ;
+C 134 ; WX 345 ; N afii57424.fin ; B 54 -35 367 523 ;
+C 135 ; WX 458 ; N afii57519.fin ; B 94 -186 489 148 ;
+C 136 ; WX 593 ; N uni06D2.iso ; B 13 -43 586 275 ;
+C 137 ; WX 825 ; N afii57428.iso ; B 2 -180 823 523 ;
+C 138 ; WX 0 ; N afii57457_uni0653 ; B -46 569 197 888 ;
+C 139 ; WX 448 ; N afii57514.iso ; B 2 -180 443 259 ;
+C 140 ; WX 679 ; N uni06A1.iso ; B 12 -17 670 381 ;
+C 141 ; WX 526 ; N uni066F.iso ; B 15 -268 521 310 ;
+C 142 ; WX 0 ; N uni0670 ; B 22 550 85 773 ;
+C 143 ; WX 246 ; N afii57415.fin2 ; B 17 -86 325 393 ;
+C 144 ; WX 246 ; N afii57411.fin2 ; B 1 -86 325 563 ;
+C 145 ; WX 246 ; N afii57413.fin2 ; B 1 -295 325 393 ;
+C 146 ; WX 246 ; N afii57410.fin2 ; B 3 -86 325 519 ;
+C 147 ; WX 283 ; N afii57470.fin2 ; B 27 -10 311 310 ;
+C 148 ; WX 183 ; N afii57444_afii57457_uni0670.med ; B -28 -14 201 547 ;
+C 149 ; WX 1 ; N _0149 ; B 0 0 0 0 ;
+C 150 ; WX 0 ; N afii57457_afii57454 ; B 12 569 186 826 ;
+C 151 ; WX 0 ; N afii57457_afii57456 ; B 12 551 186 840 ;
+C 152 ; WX 0 ; N afii57457_afii57455 ; B -11 560 186 915 ;
+C 153 ; WX 0 ; N afii57451 ; B 21 570 185 795 ;
+C 154 ; WX 0 ; N afii57453 ; B -40 -546 124 -322 ;
+C 155 ; WX 0 ; N afii57452 ; B -1 570 187 790 ;
+C 156 ; WX 0 ; N afii57457_afii57451 ; B 8 564 190 928 ;
+C 157 ; WX 0 ; N afii57457_afii57453 ; B 12 570 186 917 ;
+C 158 ; WX 0 ; N afii57457_afii57452 ; B 3 556 190 942 ;
+C 159 ; WX 1 ; N uni0653 ; B 14 550 258 730 ;
+C 160 ; WX 324 ; N afii57441.med ; B 0 0 346 530 ;
+C 161 ; WX 670 ; N afii57441.fin ; B 12 -17 691 530 ;
+C 162 ; WX 366 ; N afii57509.ini ; B 0 0 366 501 ;
+C 163 ; WX 369 ; N afii57509.med ; B 0 0 386 502 ;
+C 164 ; WX 559 ; N afii57509.fin ; B 7 -2 581 504 ;
+C 165 ; WX 494 ; N afii57470.ini ; B 0 -30 488 415 ;
+C 166 ; WX 416 ; N afii57470.med ; B 0 -226 437 359 ;
+C 167 ; WX 325 ; N afii57470.fin ; B 9 0 347 420 ;
+C 168 ; WX 590 ; N afii57420.ini ; B 0 -192 591 292 ;
+C 169 ; WX 589 ; N afii57420.med ; B 0 -192 610 292 ;
+C 170 ; WX 518 ; N afii57420.fin ; B 2 -320 539 290 ;
+C 171 ; WX 366 ; N afii57443.ini ; B 0 0 366 458 ;
+C 172 ; WX 369 ; N afii57443.med ; B 0 0 386 458 ;
+C 173 ; WX 457 ; N afii57443.fin ; B 5 -14 478 513 ;
+C 174 ; WX 256 ; N afii57444.ini ; B 0 0 267 513 ;
+C 175 ; WX 254 ; N afii57444.med ; B -5 0 276 513 ;
+C 176 ; WX 416 ; N afii57444.fin ; B 9 -180 437 517 ;
+C 177 ; WX 408 ; N afii57445.ini ; B 0 -1 403 301 ;
+C 178 ; WX 406 ; N afii57445.med ; B 0 -1 427 301 ;
+C 179 ; WX 344 ; N afii57445.fin ; B 4 -329 366 288 ;
+C 180 ; WX 321 ; N afii57446.ini ; B 0 0 321 509 ;
+C 181 ; WX 323 ; N afii57446.med ; B 0 0 344 509 ;
+C 182 ; WX 446 ; N afii57446.fin ; B 2 -180 468 451 ;
+C 183 ; WX 321 ; N afii57506.ini ; B 0 -241 321 309 ;
+C 184 ; WX 323 ; N afii57506.med ; B 0 -241 344 308 ;
+C 185 ; WX 589 ; N afii57506.fin ; B 13 -284 610 275 ;
+C 186 ; WX 320 ; N afii57442.ini ; B 0 0 320 512 ;
+C 187 ; WX 324 ; N afii57442.med ; B 0 0 346 519 ;
+C 188 ; WX 528 ; N afii57442.fin ; B 15 -268 549 517 ;
+C 189 ; WX 339 ; N afii57425.fin ; B -31 -217 361 218 ;
+C 190 ; WX 642 ; N afii57427.ini ; B 0 -5 643 268 ;
+C 191 ; WX 642 ; N afii57427.med ; B 0 -4 664 268 ;
+C 192 ; WX 823 ; N afii57427.fin ; B 2 -180 844 268 ;
+C 193 ; WX 321 ; N afii57418.ini ; B 0 0 321 479 ;
+C 194 ; WX 228 ; N afii57410.iso ; B 3 -39 236 519 ;
+C 195 ; WX 589 ; N afii57418.fin ; B 13 -44 610 390 ;
+C 196 ; WX 320 ; N afii57505.ini ; B 0 0 320 586 ;
+C 197 ; WX 324 ; N afii57505.med ; B 0 0 346 587 ;
+C 198 ; WX 670 ; N afii57505.fin ; B 12 -17 691 586 ;
+C 199 ; WX 590 ; N afii57422.ini ; B 0 0 591 484 ;
+C 200 ; WX 589 ; N afii57422.med ; B 0 0 610 484 ;
+C 201 ; WX 518 ; N afii57422.fin ; B 2 -320 539 482 ;
+C 202 ; WX 526 ; N afii57450.fin ; B 7 -414 547 110 ;
+C 203 ; WX 339 ; N afii57426.fin ; B -31 -217 361 472 ;
+C 204 ; WX 248 ; N afii57411.fin ; B 1 0 271 521 ;
+C 205 ; WX 248 ; N afii57413.fin ; B 25 -184 270 513 ;
+C 206 ; WX 426 ; N afii57412.fin ; B -29 -267 447 522 ;
+C 207 ; WX 321 ; N afii57414.ini ; B 0 0 321 521 ;
+C 208 ; WX 323 ; N afii57414.med ; B 0 0 344 521 ;
+C 209 ; WX 526 ; N afii57414.fin ; B 6 -265 547 343 ;
+C 210 ; WX 325 ; N afii57417.fin ; B -6 0 347 527 ;
+C 211 ; WX 321 ; N afii57419.ini ; B 0 0 321 511 ;
+C 212 ; WX 323 ; N afii57419.med ; B 0 0 344 515 ;
+C 213 ; WX 589 ; N afii57419.fin ; B 13 -44 610 481 ;
+C 214 ; WX 443 ; N afii57434.ini ; B 0 0 441 525 ;
+C 215 ; WX 425 ; N afii57434.med ; B 0 0 447 523 ;
+C 216 ; WX 425 ; N afii57434.fin ; B 9 -329 446 502 ;
+C 217 ; WX 339 ; N afii57508.fin ; B -31 -217 361 528 ;
+C 218 ; WX 642 ; N afii57428.ini ; B 0 -5 643 525 ;
+C 219 ; WX 642 ; N afii57428.med ; B 0 -4 664 525 ;
+C 220 ; WX 823 ; N afii57428.fin ; B 2 -180 844 526 ;
+C 221 ; WX 248 ; N afii57410.fin ; B 3 0 271 519 ;
+C 222 ; WX 321 ; N uni066E.ini ; B 0 0 321 309 ;
+C 223 ; WX 323 ; N uni066E.med ; B 0 0 344 308 ;
+C 224 ; WX 446 ; N afii57514.fin ; B 2 -180 468 259 ;
+C 225 ; WX 589 ; N uni066E.fin ; B 13 -44 610 275 ;
+C 226 ; WX 320 ; N uni06A1.ini ; B 0 0 320 381 ;
+C 227 ; WX 324 ; N uni06A1.med ; B 0 0 346 381 ;
+C 228 ; WX 228 ; N afii57411.iso ; B 54 -39 194 521 ;
+C 229 ; WX 528 ; N uni066F.fin ; B 15 -268 549 310 ;
+C 230 ; WX 301 ; N afii57415.fin3 ; B 87 -9 290 362 ;
+C 231 ; WX 301 ; N afii57411.fin3 ; B 1 -9 290 535 ;
+C 232 ; WX 301 ; N afii57413.fin3 ; B 1 -284 290 362 ;
+C 233 ; WX 301 ; N afii57410.fin3 ; B 28 -9 290 519 ;
+C 234 ; WX 0 ; N afii57457_ ; B 12 556 186 951 ;
+C 235 ; WX 323 ; N afii57418.med ; B 0 0 344 482 ;
+C 236 ; WX 321 ; N afii57514.ini ; B 0 0 321 309 ;
+C 237 ; WX 323 ; N afii57514.med ; B 0 0 344 308 ;
+C 238 ; WX 320 ; N uni066F.ini ; B 0 0 320 381 ;
+C 239 ; WX 228 ; N afii57413.iso ; B 83 -149 224 547 ;
+C 240 ; WX 248 ; N uni0671.fin ; B -29 0 271 573 ;
+C 241 ; WX 246 ; N uni0671.fin2 ; B -39 -86 325 568 ;
+C 242 ; WX 301 ; N uni0671.fin3 ; B -39 -9 290 568 ;
+C 243 ; WX 670 ; N uni06A1.fin ; B 12 -17 691 381 ;
+C 244 ; WX 321 ; N afii57417.ini ; B 0 0 321 479 ;
+C 245 ; WX 323 ; N afii57417.med ; B 0 0 344 482 ;
+C 246 ; WX 324 ; N uni066F.med ; B 0 0 346 381 ;
+C 247 ; WX 672 ; N afii57444_afii57444.iso ; B 9 -180 683 517 ;
+C 248 ; WX 509 ; N afii57444_afii57444.ini ; B -5 0 520 513 ;
+C 249 ; WX 503 ; N afii57444_afii57444.ini2 ; B -278 -64 514 513 ;
+C 250 ; WX 611 ; N afii57444_afii57444_afii57457_uni0670_afii57470.iso ; B 27 -14 589 547 ;
+C 251 ; WX 577 ; N _0251 ; B 14 9 560 541 ;
+C 252 ; WX 425 ; N afii57412.iso ; B -29 -233 425 522 ;
+C 253 ; WX 742 ; N _0253 ; B 56 -11 691 562 ;
+C 254 ; WX 936 ; N _0254 ; B 56 -11 887 562 ;
+C 255 ; WX 574 ; N afii57414.iso ; B 2 -174 567 478 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/language/arabic/dad/Dad-bold.pfb b/language/arabic/dad/Dad-bold.pfb
new file mode 100644
index 0000000000..552566d43c
--- /dev/null
+++ b/language/arabic/dad/Dad-bold.pfb
Binary files differ
diff --git a/language/arabic/dad/Dad-mono.afm b/language/arabic/dad/Dad-mono.afm
new file mode 100644
index 0000000000..c9f049afbf
--- /dev/null
+++ b/language/arabic/dad/Dad-mono.afm
@@ -0,0 +1,276 @@
+StartFontMetrics 2.0
+Comment Panose 2 0 0 0 0 0 0 0 0 0
+FullName Dad Mono
+FontName Dad-Mono
+FamilyName Dad
+Weight Normal
+Version 1.000
+IsFixedPitch false
+ItalicAngle 0.00
+FontBBox -266 -391 1039 1230
+Ascender 750
+Descender -250
+XHeight 500
+CapHeight 700
+UnderlinePosition -100
+UnderlineThickness 50
+EncodingScheme FontSpecific
+StartCharMetrics 256
+C 0 ; WX 525 ; N afii57415.fin ; B 196 0 525 646 ;
+C 1 ; WX 525 ; N afii57507.ini ; B 0 -288 525 379 ;
+C 2 ; WX 525 ; N afii57507.med ; B 0 -291 525 382 ;
+C 3 ; WX 525 ; N afii57507.fin ; B 70 -308 526 383 ;
+C 4 ; WX 525 ; N afii57430.ini ; B 0 0 506 580 ;
+C 5 ; WX 525 ; N afii57430.med ; B 0 0 525 580 ;
+C 6 ; WX 525 ; N afii57430.fin ; B 1 -193 525 588 ;
+C 7 ; WX 525 ; N afii57421.ini ; B 0 0 525 379 ;
+C 8 ; WX 525 ; N afii57421.med ; B 0 0 525 382 ;
+C 9 ; WX 525 ; N afii57421.fin ; B 68 -308 524 383 ;
+C 10 ; WX 525 ; N afii57450.ini ; B 0 -294 503 422 ;
+C 11 ; WX 525 ; N afii57450.med ; B 0 -302 525 427 ;
+C 12 ; WX 525 ; N afii57449.fin ; B 26 -286 525 113 ;
+C 13 ; WX 525 ; N afii57429.ini ; B 0 0 506 362 ;
+C 14 ; WX 525 ; N afii57429.med ; B 0 0 525 362 ;
+C 15 ; WX 525 ; N afii57429.fin ; B 1 -193 525 364 ;
+C 16 ; WX 525 ; N afii57431.ini ; B 0 0 505 644 ;
+C 17 ; WX 525 ; N afii57431.med ; B 0 0 525 644 ;
+C 18 ; WX 525 ; N afii57431.fin ; B 0 0 525 644 ;
+C 19 ; WX 525 ; N afii57448.fin ; B 87 -200 525 345 ;
+C 20 ; WX 525 ; N afii57432.ini ; B 0 0 505 644 ;
+C 21 ; WX 525 ; N afii57432.med ; B 0 0 525 644 ;
+C 22 ; WX 525 ; N afii57432.fin ; B 0 0 525 644 ;
+C 23 ; WX 525 ; N afii57433.ini ; B 0 0 424 385 ;
+C 24 ; WX 525 ; N afii57433.med ; B 0 0 525 365 ;
+C 25 ; WX 525 ; N afii57433.fin ; B 94 -308 525 365 ;
+C 26 ; WX 525 ; N afii57416.ini ; B 0 -230 498 422 ;
+C 27 ; WX 525 ; N afii57416.med ; B 0 -268 525 427 ;
+C 28 ; WX 525 ; N afii57416.fin ; B 0 -267 525 407 ;
+C 29 ; WX 525 ; N afii57423.fin ; B 125 0 525 519 ;
+C 30 ; WX 525 ; N uni06C0.fin ; B 135 0 525 799 ;
+C 31 ; WX 525 ; N afii57441.ini ; B 0 0 518 678 ;
+C 32 ; WX 525 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 525 ; N exclam ; B 212 0 312 622 ;
+C 34 ; WX 525 ; N _0034 ; B 126 328 398 622 ;
+C 35 ; WX 525 ; N _0035 ; B 35 0 489 611 ;
+C 36 ; WX 525 ; N _0036 ; B 58 -83 466 694 ;
+C 37 ; WX 525 ; N percent ; B 50 -83 475 694 ;
+C 38 ; WX 0 ; N uni200D.fin ; B 0 0 0 0 ;
+C 39 ; WX 0 ; N _0039 ; B 0 0 0 0 ;
+C 40 ; WX 525 ; N parenleft ; B 88 -82 352 694 ;
+C 41 ; WX 525 ; N parenright ; B 173 -82 437 694 ;
+C 42 ; WX 525 ; N asterisk ; B 68 90 456 521 ;
+C 43 ; WX 0 ; N afii57457 ; B 0 817 0 1002 ;
+C 44 ; WX 525 ; N afii57388 ; B 180 0 346 264 ;
+C 45 ; WX 0 ; N uni200D.iso ; B 0 0 0 0 ;
+C 46 ; WX 525 ; N period ; B 200 0 325 125 ;
+C 47 ; WX 525 ; N slash ; B 58 -83 466 694 ;
+C 48 ; WX 525 ; N afii57392 ; B 178 179 347 471 ;
+C 49 ; WX 525 ; N afii57393 ; B 140 0 343 654 ;
+C 50 ; WX 525 ; N afii57394 ; B 116 -8 386 666 ;
+C 51 ; WX 525 ; N afii57395 ; B 88 -4 446 665 ;
+C 52 ; WX 525 ; N afii57396 ; B 140 -2 405 648 ;
+C 53 ; WX 525 ; N afii57397 ; B 122 30 398 443 ;
+C 54 ; WX 525 ; N afii57398 ; B 101 2 389 679 ;
+C 55 ; WX 525 ; N afii57399 ; B 90 0 436 683 ;
+C 56 ; WX 525 ; N afii57400 ; B 90 -10 436 672 ;
+C 57 ; WX 525 ; N afii57401 ; B 100 -41 393 607 ;
+C 58 ; WX 525 ; N colon ; B 200 0 325 431 ;
+C 59 ; WX 525 ; N afii57403 ; B 180 0 330 570 ;
+C 60 ; WX 525 ; N less ; B 56 56 468 556 ;
+C 61 ; WX 525 ; N equal ; B 38 195 486 417 ;
+C 62 ; WX 525 ; N greater ; B 56 56 468 556 ;
+C 63 ; WX 525 ; N afii57407 ; B 62 0 462 617 ;
+C 64 ; WX 525 ; N _0064 ; B 44 -6 480 617 ;
+C 65 ; WX 525 ; N afii57415.iso ; B 205 -21 297 650 ;
+C 66 ; WX 525 ; N guillemotleft ; B 45 24 500 425 ;
+C 67 ; WX 525 ; N afii57507.iso ; B 94 -308 525 320 ;
+C 68 ; WX 525 ; N afii57430.iso ; B 1 -193 500 588 ;
+C 69 ; WX 525 ; N guillemotright ; B 31 18 486 419 ;
+C 70 ; WX 218 ; N afii57444.ini2 ; B -129 0 125 656 ;
+C 71 ; WX 189 ; N afii57444.ini3 ; B -266 -43 189 695 ;
+C 72 ; WX 525 ; N afii57421.iso ; B 94 -308 525 320 ;
+C 73 ; WX 525 ; N afii57449.iso ; B 24 -122 452 385 ;
+C 74 ; WX 525 ; N afii57508.iso ; B 58 -210 465 768 ;
+C 75 ; WX 525 ; N afii57440.iso ; B 0 0 525 113 ;
+C 76 ; WX 84 ; N afii57444.ini4 ; B -29 0 84 571 ;
+C 77 ; WX 84 ; N afii57444.med2 ; B -29 0 84 571 ;
+C 78 ; WX 0 ; N _0078 ; B 0 0 0 0 ;
+C 79 ; WX 525 ; N afii57440.ini ; B -10 0 535 113 ;
+C 80 ; WX 525 ; N afii57440.med ; B 0 0 525 113 ;
+C 81 ; WX 525 ; N afii57440.fin ; B 0 0 525 113 ;
+C 82 ; WX 525 ; N afii57434.iso ; B 74 -308 521 656 ;
+C 83 ; WX 525 ; N afii57429.iso ; B 1 -193 500 364 ;
+C 84 ; WX 525 ; N afii57431.iso ; B 0 0 505 644 ;
+C 85 ; WX 525 ; N afii57448.iso ; B 85 -200 442 338 ;
+C 86 ; WX 0 ; N _0086 ; B 0 0 0 0 ;
+C 87 ; WX 0 ; N _0087 ; B 0 0 0 0 ;
+C 88 ; WX 0 ; N _0088 ; B 0 0 0 0 ;
+C 89 ; WX 525 ; N afii57450.iso ; B 24 -304 452 385 ;
+C 90 ; WX 525 ; N afii57432.iso ; B 0 0 505 644 ;
+C 91 ; WX 525 ; N bracketleft ; B 41 -83 302 694 ;
+C 92 ; WX 525 ; N backslash ; B 58 -83 466 694 ;
+C 93 ; WX 525 ; N bracketright ; B 222 -83 483 694 ;
+C 94 ; WX 525 ; N _0094 ; B 100 471 424 611 ;
+C 95 ; WX 525 ; N _0095 ; B 56 -95 468 -25 ;
+C 96 ; WX 525 ; N afii57433.iso ; B 74 -308 521 380 ;
+C 97 ; WX 0 ; N afii57454 ; B 199 790 325 893 ;
+C 98 ; WX 525 ; N afii57416.iso ; B 4 -267 485 425 ;
+C 99 ; WX 525 ; N afii57419.iso ; B 4 0 485 740 ;
+C 100 ; WX 525 ; N afii57423.iso ; B 159 -5 454 462 ;
+C 101 ; WX 525 ; N uni06C0.iso ; B 197 0 415 799 ;
+C 102 ; WX 525 ; N afii57441.iso ; B 2 0 520 678 ;
+C 103 ; WX 525 ; N afii57509.iso ; B 1 -8 525 675 ;
+C 104 ; WX 525 ; N afii57470.iso ; B 197 0 415 397 ;
+C 105 ; WX 0 ; N afii57456 ; B 199 -302 325 -200 ;
+C 106 ; WX 525 ; N afii57420.iso ; B 94 -308 525 320 ;
+C 107 ; WX 525 ; N afii57443.iso ; B 3 -18 490 651 ;
+C 108 ; WX 525 ; N afii57444.iso ; B 59 -98 480 652 ;
+C 109 ; WX 525 ; N afii57445.iso ; B 148 -308 525 351 ;
+C 110 ; WX 525 ; N afii57446.iso ; B 54 -198 479 556 ;
+C 111 ; WX 0 ; N afii57458 ; B 200 811 325 977 ;
+C 112 ; WX 525 ; N afii57506.iso ; B 4 -308 485 425 ;
+C 113 ; WX 525 ; N afii57442.iso ; B 46 -193 512 614 ;
+C 114 ; WX 525 ; N afii57425.iso ; B 58 -210 448 404 ;
+C 115 ; WX 525 ; N afii57427.iso ; B 0 -187 512 408 ;
+C 116 ; WX 525 ; N afii57418.iso ; B 4 0 485 542 ;
+C 117 ; WX 0 ; N afii57455 ; B 166 793 333 1025 ;
+C 118 ; WX 525 ; N afii57505.iso ; B 2 0 521 812 ;
+C 119 ; WX 0 ; N _0119 ; B 0 0 0 0 ;
+C 120 ; WX 525 ; N afii57422.iso ; B 94 -308 525 622 ;
+C 121 ; WX 0 ; N _0121 ; B 0 0 0 0 ;
+C 122 ; WX 525 ; N afii57426.iso ; B 58 -210 448 650 ;
+C 123 ; WX 525 ; N braceleft ; B 57 -83 467 694 ;
+C 124 ; WX 525 ; N afii57409.iso ; B 191 79 409 392 ;
+C 125 ; WX 525 ; N braceright ; B 57 -83 467 694 ;
+C 126 ; WX 525 ; N _0126 ; B 44 -132 480 240 ;
+C 127 ; WX 0 ; N _0127 ; B 0 0 0 0 ;
+C 128 ; WX 525 ; N _0128 ; B 8 -104 525 569 ;
+C 129 ; WX 0 ; N _0129 ; B 0 0 0 0 ;
+C 130 ; WX 0 ; N _0130 ; B 0 0 0 0 ;
+C 131 ; WX 525 ; N uni0671.iso ; B 155 -21 345 838 ;
+C 132 ; WX 525 ; N afii57417.iso ; B 157 0 415 616 ;
+C 133 ; WX 525 ; N afii57424.iso ; B 159 -5 454 698 ;
+C 134 ; WX 525 ; N afii57424.fin ; B 125 0 525 701 ;
+C 135 ; WX 525 ; N afii57519.fin ; B 38 -205 524 254 ;
+C 136 ; WX 525 ; N uni06D2.iso ; B 4 0 485 425 ;
+C 137 ; WX 525 ; N afii57428.iso ; B 0 -187 512 704 ;
+C 138 ; WX 0 ; N afii57457_uni0653 ; B 104 797 388 1120 ;
+C 139 ; WX 525 ; N afii57514.iso ; B 4 0 485 425 ;
+C 140 ; WX 525 ; N uni06A1.iso ; B 2 0 520 456 ;
+C 141 ; WX 525 ; N uni066F.iso ; B 46 -193 512 371 ;
+C 142 ; WX 0 ; N uni0670 ; B 241 788 283 1126 ;
+C 143 ; WX 307 ; N afii57415.fin2 ; B 46 0 398 559 ;
+C 144 ; WX 307 ; N afii57411.fin2 ; B 46 0 398 816 ;
+C 145 ; WX 307 ; N afii57413.fin2 ; B 46 -278 398 559 ;
+C 146 ; WX 307 ; N afii57410.fin2 ; B 26 0 398 744 ;
+C 147 ; WX 291 ; N afii57470.fin2 ; B 0 0 322 483 ;
+C 148 ; WX 150 ; N afii57444_afii57457_uni0670.med ; B -109 0 152 983 ;
+C 149 ; WX 0 ; N _0149 ; B 0 0 0 0 ;
+C 150 ; WX 0 ; N afii57457_afii57454 ; B 171 797 346 1078 ;
+C 151 ; WX 0 ; N afii57457_afii57456 ; B 171 792 346 1079 ;
+C 152 ; WX 0 ; N afii57457_afii57455 ; B 151 797 346 1188 ;
+C 153 ; WX 0 ; N afii57451 ; B 199 790 325 981 ;
+C 154 ; WX 0 ; N afii57453 ; B 199 -391 325 -200 ;
+C 155 ; WX 0 ; N afii57452 ; B 154 787 337 1029 ;
+C 156 ; WX 0 ; N afii57457_afii57451 ; B 171 797 346 1164 ;
+C 157 ; WX 0 ; N afii57457_afii57453 ; B 171 791 346 1162 ;
+C 158 ; WX 0 ; N afii57457_afii57452 ; B 163 797 346 1198 ;
+C 159 ; WX 0 ; N uni0653 ; B 121 770 404 875 ;
+C 160 ; WX 525 ; N afii57441.med ; B 0 0 525 630 ;
+C 161 ; WX 525 ; N afii57441.fin ; B 0 -16 525 631 ;
+C 162 ; WX 525 ; N afii57509.ini ; B 0 0 525 680 ;
+C 163 ; WX 525 ; N afii57509.med ; B 0 0 525 682 ;
+C 164 ; WX 525 ; N afii57509.fin ; B 0 -7 525 680 ;
+C 165 ; WX 525 ; N afii57470.ini ; B 0 -8 403 384 ;
+C 166 ; WX 525 ; N afii57470.med ; B 0 -213 525 375 ;
+C 167 ; WX 525 ; N afii57470.fin ; B 135 0 525 519 ;
+C 168 ; WX 525 ; N afii57420.ini ; B 0 -161 525 379 ;
+C 169 ; WX 525 ; N afii57420.med ; B 0 -250 525 382 ;
+C 170 ; WX 525 ; N afii57420.fin ; B 68 -308 524 383 ;
+C 171 ; WX 525 ; N afii57443.ini ; B 0 0 525 654 ;
+C 172 ; WX 525 ; N afii57443.med ; B 0 0 525 652 ;
+C 173 ; WX 525 ; N afii57443.fin ; B 3 -18 525 649 ;
+C 174 ; WX 525 ; N afii57444.ini ; B 0 0 514 661 ;
+C 175 ; WX 525 ; N afii57444.med ; B 0 0 525 649 ;
+C 176 ; WX 525 ; N afii57444.fin ; B 17 -161 525 646 ;
+C 177 ; WX 525 ; N afii57445.ini ; B 0 -6 490 373 ;
+C 178 ; WX 525 ; N afii57445.med ; B 0 -6 525 373 ;
+C 179 ; WX 525 ; N afii57445.fin ; B 148 -308 525 351 ;
+C 180 ; WX 525 ; N afii57446.ini ; B 0 0 498 663 ;
+C 181 ; WX 525 ; N afii57446.med ; B 0 0 525 647 ;
+C 182 ; WX 525 ; N afii57446.fin ; B 37 -215 525 562 ;
+C 183 ; WX 525 ; N afii57506.ini ; B 0 -308 498 422 ;
+C 184 ; WX 525 ; N afii57506.med ; B 0 -295 525 427 ;
+C 185 ; WX 525 ; N afii57506.fin ; B 0 -308 525 407 ;
+C 186 ; WX 525 ; N afii57442.ini ; B 0 0 518 650 ;
+C 187 ; WX 525 ; N afii57442.med ; B 0 0 525 639 ;
+C 188 ; WX 525 ; N afii57442.fin ; B 61 -178 525 549 ;
+C 189 ; WX 525 ; N afii57425.fin ; B 44 -211 525 397 ;
+C 190 ; WX 525 ; N afii57427.ini ; B 0 0 503 406 ;
+C 191 ; WX 525 ; N afii57427.med ; B 0 0 525 404 ;
+C 192 ; WX 525 ; N afii57427.fin ; B 0 -187 525 416 ;
+C 193 ; WX 525 ; N afii57418.ini ; B 0 0 525 643 ;
+C 194 ; WX 525 ; N afii57410.iso ; B 121 -21 404 818 ;
+C 195 ; WX 525 ; N afii57418.fin ; B 0 0 525 542 ;
+C 196 ; WX 525 ; N afii57505.ini ; B 0 0 524 797 ;
+C 197 ; WX 525 ; N afii57505.med ; B 0 0 525 749 ;
+C 198 ; WX 525 ; N afii57505.fin ; B 0 -16 529 737 ;
+C 199 ; WX 525 ; N afii57422.ini ; B 0 0 525 574 ;
+C 200 ; WX 525 ; N afii57422.med ; B 0 0 525 642 ;
+C 201 ; WX 525 ; N afii57422.fin ; B 94 -308 525 622 ;
+C 202 ; WX 525 ; N afii57450.fin ; B 41 -308 525 113 ;
+C 203 ; WX 525 ; N afii57426.fin ; B 44 -211 525 650 ;
+C 204 ; WX 525 ; N afii57411.fin ; B 161 0 525 852 ;
+C 205 ; WX 525 ; N afii57413.fin ; B 196 -303 525 646 ;
+C 206 ; WX 525 ; N afii57412.fin ; B 87 -200 525 623 ;
+C 207 ; WX 525 ; N afii57414.ini ; B 0 0 498 667 ;
+C 208 ; WX 525 ; N afii57414.med ; B 0 0 525 681 ;
+C 209 ; WX 525 ; N afii57414.fin ; B 26 -286 525 393 ;
+C 210 ; WX 525 ; N afii57417.fin ; B 135 0 525 717 ;
+C 211 ; WX 525 ; N afii57419.ini ; B 0 0 524 771 ;
+C 212 ; WX 525 ; N afii57419.med ; B 0 0 525 758 ;
+C 213 ; WX 525 ; N afii57419.fin ; B 0 0 525 740 ;
+C 214 ; WX 525 ; N afii57434.ini ; B 0 0 424 646 ;
+C 215 ; WX 525 ; N afii57434.med ; B 0 0 525 609 ;
+C 216 ; WX 525 ; N afii57434.fin ; B 94 -308 525 602 ;
+C 217 ; WX 525 ; N afii57508.fin ; B 44 -211 525 758 ;
+C 218 ; WX 525 ; N afii57428.ini ; B 0 0 503 705 ;
+C 219 ; WX 525 ; N afii57428.med ; B 0 0 525 715 ;
+C 220 ; WX 525 ; N afii57428.fin ; B 0 -187 525 704 ;
+C 221 ; WX 525 ; N afii57410.fin ; B 96 0 525 818 ;
+C 222 ; WX 525 ; N uni066E.ini ; B 0 0 498 422 ;
+C 223 ; WX 525 ; N uni066E.med ; B 0 0 525 427 ;
+C 224 ; WX 525 ; N afii57514.fin ; B 37 -215 525 358 ;
+C 225 ; WX 525 ; N uni066E.fin ; B 0 0 525 407 ;
+C 226 ; WX 525 ; N uni06A1.ini ; B 0 0 518 452 ;
+C 227 ; WX 525 ; N uni06A1.med ; B 0 0 525 406 ;
+C 228 ; WX 525 ; N afii57411.iso ; B 167 -21 302 852 ;
+C 229 ; WX 525 ; N uni066F.fin ; B 61 -178 525 334 ;
+C 230 ; WX 336 ; N afii57415.fin3 ; B 65 115 351 539 ;
+C 231 ; WX 336 ; N afii57411.fin3 ; B 54 115 351 827 ;
+C 232 ; WX 336 ; N afii57413.fin3 ; B 54 -338 351 539 ;
+C 233 ; WX 336 ; N afii57410.fin3 ; B 29 115 351 711 ;
+C 234 ; WX 0 ; N afii57457_ ; B 171 797 346 1230 ;
+C 235 ; WX 525 ; N afii57418.med ; B 0 0 525 625 ;
+C 236 ; WX 525 ; N afii57514.ini ; B 0 0 498 422 ;
+C 237 ; WX 525 ; N afii57514.med ; B 0 0 525 427 ;
+C 238 ; WX 525 ; N uni066F.ini ; B 0 0 518 452 ;
+C 239 ; WX 525 ; N afii57413.iso ; B 177 -308 311 650 ;
+C 240 ; WX 525 ; N uni0671.fin ; B 141 0 525 838 ;
+C 241 ; WX 307 ; N uni0671.fin2 ; B 27 0 398 805 ;
+C 242 ; WX 336 ; N uni0671.fin3 ; B 37 115 351 805 ;
+C 243 ; WX 525 ; N uni06A1.fin ; B 0 -16 525 407 ;
+C 244 ; WX 525 ; N afii57417.ini ; B 0 0 525 643 ;
+C 245 ; WX 525 ; N afii57417.med ; B 0 0 525 625 ;
+C 246 ; WX 525 ; N uni066F.med ; B 0 0 525 406 ;
+C 247 ; WX 1050 ; N afii57444_afii57444.iso ; B 17 -161 1039 661 ;
+C 248 ; WX 1050 ; N afii57444_afii57444.ini ; B 0 0 1039 661 ;
+C 249 ; WX 714 ; N afii57444_afii57444.ini2 ; B -266 -43 703 695 ;
+C 250 ; WX 525 ; N afii57444_afii57444_afii57457_uni0670_afii57470.iso ; B 0 0 525 983 ;
+C 251 ; WX 525 ; N _0251 ; B 13 9 509 560 ;
+C 252 ; WX 525 ; N afii57412.iso ; B 85 -200 442 623 ;
+C 253 ; WX 525 ; N _0253 ; B 50 -83 635 694 ;
+C 254 ; WX 525 ; N _0254 ; B 50 -83 475 694 ;
+C 255 ; WX 525 ; N afii57414.iso ; B 24 -122 452 598 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/language/arabic/dad/Dad-mono.pfb b/language/arabic/dad/Dad-mono.pfb
new file mode 100644
index 0000000000..eb64275151
--- /dev/null
+++ b/language/arabic/dad/Dad-mono.pfb
Binary files differ
diff --git a/language/arabic/dad/Dad.afm b/language/arabic/dad/Dad.afm
new file mode 100644
index 0000000000..25be7d46d0
--- /dev/null
+++ b/language/arabic/dad/Dad.afm
@@ -0,0 +1,276 @@
+StartFontMetrics 2.0
+Comment Panose 2 0 0 0 0 0 0 0 0 0
+FullName Dad
+FontName Dad
+FamilyName Dad
+Weight Normal
+Version 1.000
+IsFixedPitch false
+ItalicAngle 0.00
+FontBBox -257 -547 990 951
+Ascender 750
+Descender -250
+XHeight 500
+CapHeight 700
+UnderlinePosition -100
+UnderlineThickness 50
+EncodingScheme FontSpecific
+StartCharMetrics 256
+C 0 ; WX 244 ; N afii57415.fin ; B 114 0 306 548 ;
+C 1 ; WX 515 ; N afii57507.ini ; B -6 -303 514 238 ;
+C 2 ; WX 515 ; N afii57507.med ; B -6 -303 576 238 ;
+C 3 ; WX 437 ; N afii57507.fin ; B 6 -317 499 221 ;
+C 4 ; WX 775 ; N afii57430.ini ; B -6 0 773 457 ;
+C 5 ; WX 775 ; N afii57430.med ; B -6 0 836 457 ;
+C 6 ; WX 919 ; N afii57430.fin ; B 6 -188 990 446 ;
+C 7 ; WX 514 ; N afii57421.ini ; B -6 0 514 238 ;
+C 8 ; WX 514 ; N afii57421.med ; B -6 0 576 238 ;
+C 9 ; WX 437 ; N afii57421.fin ; B 6 -317 499 221 ;
+C 10 ; WX 248 ; N afii57450.ini ; B -6 -230 245 242 ;
+C 11 ; WX 248 ; N afii57450.med ; B -6 -230 310 243 ;
+C 12 ; WX 490 ; N afii57449.fin ; B 8 -273 551 71 ;
+C 13 ; WX 773 ; N afii57429.ini ; B -6 0 773 239 ;
+C 14 ; WX 775 ; N afii57429.med ; B -6 0 836 239 ;
+C 15 ; WX 928 ; N afii57429.fin ; B 6 -188 990 222 ;
+C 16 ; WX 499 ; N afii57431.ini ; B -6 0 501 556 ;
+C 17 ; WX 501 ; N afii57431.med ; B -4 0 563 556 ;
+C 18 ; WX 499 ; N afii57431.fin ; B -2 0 561 548 ;
+C 19 ; WX 326 ; N afii57448.fin ; B -57 -186 387 234 ;
+C 20 ; WX 499 ; N afii57432.ini ; B -6 0 501 556 ;
+C 21 ; WX 507 ; N afii57432.med ; B -4 0 563 556 ;
+C 22 ; WX 499 ; N afii57432.fin ; B -2 0 561 548 ;
+C 23 ; WX 391 ; N afii57433.ini ; B -6 0 383 271 ;
+C 24 ; WX 355 ; N afii57433.med ; B -6 0 416 268 ;
+C 25 ; WX 393 ; N afii57433.fin ; B 13 -329 454 250 ;
+C 26 ; WX 248 ; N afii57416.ini ; B -6 -227 245 242 ;
+C 27 ; WX 248 ; N afii57416.med ; B -6 -227 310 243 ;
+C 28 ; WX 536 ; N afii57416.fin ; B 10 -254 598 208 ;
+C 29 ; WX 382 ; N afii57423.fin ; B 106 -28 443 328 ;
+C 30 ; WX 270 ; N uni06C0.fin ; B -3 0 303 531 ;
+C 31 ; WX 302 ; N afii57441.ini ; B -6 0 305 485 ;
+C 32 ; WX 262 ; N space ; B 0 0 0 0 ;
+C 33 ; WX 244 ; N exclam ; B 91 0 163 441 ;
+C 34 ; WX 1 ; N _0034 ; B 0 0 0 0 ;
+C 35 ; WX 1 ; N _0035 ; B 0 0 0 0 ;
+C 36 ; WX 1 ; N _0036 ; B 0 0 0 0 ;
+C 37 ; WX 546 ; N percent ; B 56 -11 494 562 ;
+C 38 ; WX 1 ; N uni200D.fin ; B 0 0 0 0 ;
+C 39 ; WX 1 ; N _0039 ; B 0 0 0 0 ;
+C 40 ; WX 293 ; N parenleft ; B 39 -306 248 591 ;
+C 41 ; WX 293 ; N parenright ; B 43 -306 254 591 ;
+C 42 ; WX 433 ; N asterisk ; B 72 -74 385 274 ;
+C 43 ; WX 0 ; N afii57457 ; B 12 569 186 736 ;
+C 44 ; WX 212 ; N afii57388 ; B 48 -5 167 197 ;
+C 45 ; WX 1 ; N uni200D.iso ; B 0 0 0 0 ;
+C 46 ; WX 205 ; N period ; B 29 -2 115 82 ;
+C 47 ; WX 439 ; N slash ; B -7 -192 458 541 ;
+C 48 ; WX 439 ; N afii57392 ; B 149 70 291 212 ;
+C 49 ; WX 439 ; N afii57393 ; B 126 0 333 544 ;
+C 50 ; WX 439 ; N afii57394 ; B 78 -4 384 521 ;
+C 51 ; WX 439 ; N afii57395 ; B 33 0 402 534 ;
+C 52 ; WX 439 ; N afii57396 ; B 124 0 352 529 ;
+C 53 ; WX 439 ; N afii57397 ; B 111 -3 351 343 ;
+C 54 ; WX 439 ; N afii57398 ; B 50 0 401 536 ;
+C 55 ; WX 439 ; N afii57399 ; B 44 -2 417 505 ;
+C 56 ; WX 439 ; N afii57400 ; B 44 0 439 528 ;
+C 57 ; WX 439 ; N afii57401 ; B 78 0 386 530 ;
+C 58 ; WX 244 ; N colon ; B 92 -1 161 299 ;
+C 59 ; WX 236 ; N afii57403 ; B 45 -6 163 493 ;
+C 60 ; WX 285 ; N less ; B 28 -9 269 398 ;
+C 61 ; WX 439 ; N equal ; B 19 91 425 301 ;
+C 62 ; WX 285 ; N greater ; B 15 -9 257 398 ;
+C 63 ; WX 377 ; N afii57407 ; B 37 -7 331 562 ;
+C 64 ; WX 1 ; N _0064 ; B 0 0 0 0 ;
+C 65 ; WX 244 ; N afii57415.iso ; B 137 0 195 548 ;
+C 66 ; WX 293 ; N guillemotleft ; B 110 -13 315 270 ;
+C 67 ; WX 489 ; N afii57507.iso ; B 10 -300 469 262 ;
+C 68 ; WX 928 ; N afii57430.iso ; B 6 -188 920 446 ;
+C 69 ; WX 293 ; N guillemotright ; B -1 -13 203 270 ;
+C 70 ; WX 180 ; N afii57444.ini2 ; B -128 -13 162 546 ;
+C 71 ; WX 250 ; N afii57444.ini3 ; B -257 -62 312 513 ;
+C 72 ; WX 489 ; N afii57421.iso ; B 10 -300 469 262 ;
+C 73 ; WX 536 ; N afii57449.iso ; B 14 -215 530 232 ;
+C 74 ; WX 341 ; N afii57508.iso ; B -17 -200 341 481 ;
+C 75 ; WX 170 ; N afii57440.iso ; B -6 0 231 71 ;
+C 76 ; WX 144 ; N afii57444.ini4 ; B -18 -7 115 490 ;
+C 77 ; WX 179 ; N afii57444.med2 ; B -18 -7 190 490 ;
+C 78 ; WX 1 ; N _0078 ; B 0 0 0 0 ;
+C 79 ; WX 170 ; N afii57440.ini ; B -6 0 231 71 ;
+C 80 ; WX 170 ; N afii57440.med ; B -6 0 231 71 ;
+C 81 ; WX 170 ; N afii57440.fin ; B -6 0 231 71 ;
+C 82 ; WX 489 ; N afii57434.iso ; B 10 -317 450 513 ;
+C 83 ; WX 928 ; N afii57429.iso ; B 6 -188 920 222 ;
+C 84 ; WX 499 ; N afii57431.iso ; B 4 0 499 548 ;
+C 85 ; WX 328 ; N afii57448.iso ; B -35 -185 328 233 ;
+C 86 ; WX 1 ; N _0086 ; B 0 0 0 0 ;
+C 87 ; WX 1 ; N _0087 ; B 0 0 0 0 ;
+C 88 ; WX 1 ; N _0088 ; B 0 0 0 0 ;
+C 89 ; WX 538 ; N afii57450.iso ; B 14 -385 530 232 ;
+C 90 ; WX 499 ; N afii57432.iso ; B 4 0 499 548 ;
+C 91 ; WX 293 ; N bracketleft ; B 50 -275 241 591 ;
+C 92 ; WX 439 ; N backslash ; B -7 -192 458 541 ;
+C 93 ; WX 293 ; N bracketright ; B 49 -275 240 591 ;
+C 94 ; WX 1 ; N _0094 ; B 0 0 0 0 ;
+C 95 ; WX 1 ; N _0095 ; B 0 0 0 0 ;
+C 96 ; WX 489 ; N afii57433.iso ; B 10 -317 450 333 ;
+C 97 ; WX 0 ; N afii57454 ; B 36 596 185 716 ;
+C 98 ; WX 535 ; N afii57416.iso ; B 11 -254 531 208 ;
+C 99 ; WX 536 ; N afii57419.iso ; B 11 -43 531 406 ;
+C 100 ; WX 382 ; N afii57423.iso ; B 107 -27 377 328 ;
+C 101 ; WX 293 ; N uni06C0.iso ; B -3 -20 254 531 ;
+C 102 ; WX 655 ; N afii57441.iso ; B 4 -18 648 485 ;
+C 103 ; WX 589 ; N afii57509.iso ; B 3 0 592 570 ;
+C 104 ; WX 293 ; N afii57470.iso ; B 9 -20 254 288 ;
+C 105 ; WX 0 ; N afii57456 ; B -39 -462 125 -322 ;
+C 106 ; WX 489 ; N afii57420.iso ; B 10 -300 469 262 ;
+C 107 ; WX 456 ; N afii57443.iso ; B -12 -30 448 548 ;
+C 108 ; WX 397 ; N afii57444.iso ; B -13 -148 394 548 ;
+C 109 ; WX 340 ; N afii57445.iso ; B 11 -351 336 218 ;
+C 110 ; WX 446 ; N afii57446.iso ; B 6 -188 439 386 ;
+C 111 ; WX 0 ; N afii57458 ; B 39 569 184 741 ;
+C 112 ; WX 536 ; N afii57506.iso ; B 11 -330 531 208 ;
+C 113 ; WX 459 ; N afii57442.iso ; B 8 -214 452 419 ;
+C 114 ; WX 341 ; N afii57425.iso ; B -17 -200 341 188 ;
+C 115 ; WX 764 ; N afii57427.iso ; B 6 -188 747 201 ;
+C 116 ; WX 535 ; N afii57418.iso ; B 11 -43 531 289 ;
+C 117 ; WX 0 ; N afii57455 ; B 6 570 185 793 ;
+C 118 ; WX 655 ; N afii57505.iso ; B 4 -18 652 565 ;
+C 119 ; WX 1 ; N _0119 ; B 0 0 0 0 ;
+C 120 ; WX 489 ; N afii57422.iso ; B 10 -300 469 478 ;
+C 121 ; WX 1 ; N _0121 ; B 0 0 0 0 ;
+C 122 ; WX 341 ; N afii57426.iso ; B -17 -200 341 423 ;
+C 123 ; WX 293 ; N braceleft ; B 63 -252 256 591 ;
+C 124 ; WX 263 ; N afii57409.iso ; B -10 -24 208 213 ;
+C 125 ; WX 293 ; N braceright ; B 36 -252 227 591 ;
+C 126 ; WX 1 ; N _0126 ; B 0 0 0 0 ;
+C 127 ; WX 1 ; N _0127 ; B 0 0 0 0 ;
+C 128 ; WX 502 ; N _0128 ; B 8 -104 502 569 ;
+C 129 ; WX 1 ; N _0129 ; B 0 0 0 0 ;
+C 130 ; WX 1 ; N _0130 ; B 0 0 0 0 ;
+C 131 ; WX 244 ; N uni0671.iso ; B -19 -42 272 603 ;
+C 132 ; WX 293 ; N afii57417.iso ; B 9 -20 254 457 ;
+C 133 ; WX 382 ; N afii57424.iso ; B 107 -27 377 501 ;
+C 134 ; WX 382 ; N afii57424.fin ; B 106 -28 443 501 ;
+C 135 ; WX 489 ; N afii57519.fin ; B 115 -176 534 121 ;
+C 136 ; WX 535 ; N uni06D2.iso ; B 11 -43 531 208 ;
+C 137 ; WX 754 ; N afii57428.iso ; B 6 -188 747 481 ;
+C 138 ; WX 0 ; N afii57457_uni0653 ; B -46 569 197 888 ;
+C 139 ; WX 446 ; N afii57514.iso ; B 6 -188 439 184 ;
+C 140 ; WX 655 ; N uni06A1.iso ; B 4 -18 648 313 ;
+C 141 ; WX 459 ; N uni066F.iso ; B 8 -214 452 235 ;
+C 142 ; WX 0 ; N uni0670 ; B 22 550 85 773 ;
+C 143 ; WX 260 ; N afii57415.fin2 ; B 56 -13 334 433 ;
+C 144 ; WX 260 ; N afii57411.fin2 ; B 0 -13 334 621 ;
+C 145 ; WX 260 ; N afii57413.fin2 ; B 56 -261 334 433 ;
+C 146 ; WX 260 ; N afii57410.fin2 ; B -16 -13 334 621 ;
+C 147 ; WX 327 ; N afii57470.fin2 ; B 12 -10 339 355 ;
+C 148 ; WX 217 ; N afii57444_afii57457_uni0670.med ; B -60 -10 228 688 ;
+C 149 ; WX 1 ; N _0149 ; B 0 0 0 0 ;
+C 150 ; WX 0 ; N afii57457_afii57454 ; B 12 569 186 826 ;
+C 151 ; WX 0 ; N afii57457_afii57456 ; B 12 551 186 840 ;
+C 152 ; WX 0 ; N afii57457_afii57455 ; B -11 560 186 915 ;
+C 153 ; WX 0 ; N afii57451 ; B 21 570 185 795 ;
+C 154 ; WX 0 ; N afii57453 ; B -40 -547 124 -323 ;
+C 155 ; WX 0 ; N afii57452 ; B -1 570 187 790 ;
+C 156 ; WX 0 ; N afii57457_afii57451 ; B 8 564 190 928 ;
+C 157 ; WX 0 ; N afii57457_afii57453 ; B 12 570 186 917 ;
+C 158 ; WX 0 ; N afii57457_afii57452 ; B 3 556 190 942 ;
+C 159 ; WX 1 ; N uni0653 ; B 14 550 258 730 ;
+C 160 ; WX 302 ; N afii57441.med ; B -6 0 364 485 ;
+C 161 ; WX 655 ; N afii57441.fin ; B 5 -19 716 485 ;
+C 162 ; WX 375 ; N afii57509.ini ; B -6 0 366 570 ;
+C 163 ; WX 371 ; N afii57509.med ; B -20 0 432 587 ;
+C 164 ; WX 589 ; N afii57509.fin ; B 3 0 650 587 ;
+C 165 ; WX 435 ; N afii57470.ini ; B -6 -9 418 349 ;
+C 166 ; WX 355 ; N afii57470.med ; B -6 -192 416 286 ;
+C 167 ; WX 270 ; N afii57470.fin ; B 10 0 303 385 ;
+C 168 ; WX 514 ; N afii57420.ini ; B -6 -213 514 238 ;
+C 169 ; WX 514 ; N afii57420.med ; B -6 -213 576 238 ;
+C 170 ; WX 437 ; N afii57420.fin ; B 6 -317 499 221 ;
+C 171 ; WX 371 ; N afii57443.ini ; B -6 0 366 548 ;
+C 172 ; WX 375 ; N afii57443.med ; B -6 0 436 548 ;
+C 173 ; WX 446 ; N afii57443.fin ; B 10 -30 508 548 ;
+C 174 ; WX 195 ; N afii57444.ini ; B -6 0 192 548 ;
+C 175 ; WX 195 ; N afii57444.med ; B -6 0 257 548 ;
+C 176 ; WX 397 ; N afii57444.fin ; B -13 -148 459 548 ;
+C 177 ; WX 368 ; N afii57445.ini ; B -6 -6 362 223 ;
+C 178 ; WX 368 ; N afii57445.med ; B -6 -6 428 223 ;
+C 179 ; WX 340 ; N afii57445.fin ; B 11 -351 402 218 ;
+C 180 ; WX 245 ; N afii57446.ini ; B -6 0 245 447 ;
+C 181 ; WX 248 ; N afii57446.med ; B -6 0 310 447 ;
+C 182 ; WX 446 ; N afii57446.fin ; B 6 -188 508 386 ;
+C 183 ; WX 248 ; N afii57506.ini ; B -6 -321 245 242 ;
+C 184 ; WX 248 ; N afii57506.med ; B -6 -321 310 243 ;
+C 185 ; WX 536 ; N afii57506.fin ; B 10 -330 598 208 ;
+C 186 ; WX 302 ; N afii57442.ini ; B -6 0 305 483 ;
+C 187 ; WX 302 ; N afii57442.med ; B -6 0 364 483 ;
+C 188 ; WX 459 ; N afii57442.fin ; B 9 -214 520 418 ;
+C 189 ; WX 341 ; N afii57425.fin ; B -17 -201 403 188 ;
+C 190 ; WX 618 ; N afii57427.ini ; B -6 -6 615 201 ;
+C 191 ; WX 616 ; N afii57427.med ; B -6 -7 679 201 ;
+C 192 ; WX 755 ; N afii57427.fin ; B 6 -188 817 201 ;
+C 193 ; WX 248 ; N afii57418.ini ; B -6 0 245 442 ;
+C 194 ; WX 244 ; N afii57410.iso ; B 14 -42 258 601 ;
+C 195 ; WX 536 ; N afii57418.fin ; B 10 -44 598 289 ;
+C 196 ; WX 302 ; N afii57505.ini ; B -6 0 305 569 ;
+C 197 ; WX 302 ; N afii57505.med ; B -6 0 364 569 ;
+C 198 ; WX 655 ; N afii57505.fin ; B 6 -18 716 565 ;
+C 199 ; WX 514 ; N afii57422.ini ; B -6 0 514 480 ;
+C 200 ; WX 514 ; N afii57422.med ; B -6 0 576 480 ;
+C 201 ; WX 437 ; N afii57422.fin ; B 6 -317 499 428 ;
+C 202 ; WX 490 ; N afii57450.fin ; B 8 -422 551 71 ;
+C 203 ; WX 341 ; N afii57426.fin ; B -17 -201 403 423 ;
+C 204 ; WX 244 ; N afii57411.fin ; B 0 0 306 566 ;
+C 205 ; WX 244 ; N afii57413.fin ; B 56 -257 306 548 ;
+C 206 ; WX 326 ; N afii57412.fin ; B -57 -186 387 426 ;
+C 207 ; WX 248 ; N afii57414.ini ; B -6 0 245 509 ;
+C 208 ; WX 248 ; N afii57414.med ; B -6 0 310 509 ;
+C 209 ; WX 490 ; N afii57414.fin ; B -29 -274 551 368 ;
+C 210 ; WX 270 ; N afii57417.fin ; B 10 0 331 531 ;
+C 211 ; WX 248 ; N afii57419.ini ; B -6 0 245 562 ;
+C 212 ; WX 248 ; N afii57419.med ; B -6 0 310 562 ;
+C 213 ; WX 536 ; N afii57419.fin ; B 10 -44 598 406 ;
+C 214 ; WX 391 ; N afii57434.ini ; B -6 0 383 479 ;
+C 215 ; WX 355 ; N afii57434.med ; B -6 0 416 445 ;
+C 216 ; WX 393 ; N afii57434.fin ; B 13 -329 454 471 ;
+C 217 ; WX 341 ; N afii57508.fin ; B -17 -201 403 481 ;
+C 218 ; WX 618 ; N afii57428.ini ; B -6 -6 615 481 ;
+C 219 ; WX 618 ; N afii57428.med ; B -6 -7 679 481 ;
+C 220 ; WX 768 ; N afii57428.fin ; B 6 -188 817 481 ;
+C 221 ; WX 244 ; N afii57410.fin ; B -6 0 306 551 ;
+C 222 ; WX 245 ; N uni066E.ini ; B -6 0 245 242 ;
+C 223 ; WX 248 ; N uni066E.med ; B -6 0 310 243 ;
+C 224 ; WX 446 ; N afii57514.fin ; B 6 -188 508 184 ;
+C 225 ; WX 536 ; N uni066E.fin ; B 10 -44 598 208 ;
+C 226 ; WX 302 ; N uni06A1.ini ; B -6 0 305 317 ;
+C 227 ; WX 302 ; N uni06A1.med ; B -6 0 364 317 ;
+C 228 ; WX 244 ; N afii57411.iso ; B 66 -42 215 605 ;
+C 229 ; WX 459 ; N uni066F.fin ; B 9 -214 520 236 ;
+C 230 ; WX 238 ; N afii57415.fin3 ; B 40 10 274 401 ;
+C 231 ; WX 238 ; N afii57411.fin3 ; B -3 10 274 590 ;
+C 232 ; WX 238 ; N afii57413.fin3 ; B 40 -299 274 401 ;
+C 233 ; WX 238 ; N afii57410.fin3 ; B -16 10 274 591 ;
+C 234 ; WX 0 ; N afii57457_ ; B 12 556 186 951 ;
+C 235 ; WX 248 ; N afii57418.med ; B -6 0 310 442 ;
+C 236 ; WX 245 ; N afii57514.ini ; B -6 0 245 242 ;
+C 237 ; WX 248 ; N afii57514.med ; B -6 0 310 243 ;
+C 238 ; WX 302 ; N uni066F.ini ; B -6 0 305 317 ;
+C 239 ; WX 244 ; N afii57413.iso ; B 74 -291 235 548 ;
+C 240 ; WX 244 ; N uni0671.fin ; B -29 0 306 573 ;
+C 241 ; WX 260 ; N uni0671.fin2 ; B -39 -13 334 603 ;
+C 242 ; WX 238 ; N uni0671.fin3 ; B -49 10 274 583 ;
+C 243 ; WX 655 ; N uni06A1.fin ; B 6 -18 716 313 ;
+C 244 ; WX 248 ; N afii57417.ini ; B -6 0 245 442 ;
+C 245 ; WX 248 ; N afii57417.med ; B -6 0 310 442 ;
+C 246 ; WX 302 ; N uni066F.med ; B -6 0 364 317 ;
+C 247 ; WX 593 ; N afii57444_afii57444.iso ; B -13 -148 589 548 ;
+C 248 ; WX 390 ; N afii57444_afii57444.ini ; B -6 0 387 548 ;
+C 249 ; WX 445 ; N afii57444_afii57444.ini2 ; B -257 -62 442 548 ;
+C 250 ; WX 690 ; N afii57444_afii57444_afii57457_uni0670_afii57470.iso ; B 12 -51 660 688 ;
+C 251 ; WX 577 ; N _0251 ; B 14 9 560 541 ;
+C 252 ; WX 328 ; N afii57412.iso ; B -35 -185 328 426 ;
+C 253 ; WX 742 ; N _0253 ; B 56 -11 691 562 ;
+C 254 ; WX 936 ; N _0254 ; B 56 -11 887 562 ;
+C 255 ; WX 538 ; N afii57414.iso ; B -29 -215 530 456 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/language/arabic/dad/Dad.pfb b/language/arabic/dad/Dad.pfb
new file mode 100644
index 0000000000..016f0984dc
--- /dev/null
+++ b/language/arabic/dad/Dad.pfb
Binary files differ
diff --git a/language/arabic/dad/OT1dad.fd b/language/arabic/dad/OT1dad.fd
new file mode 100644
index 0000000000..58fec9f55f
--- /dev/null
+++ b/language/arabic/dad/OT1dad.fd
@@ -0,0 +1,33 @@
+%%% ====================================================================
+%%% @font-description-file{
+%%% filename = "OT1dad.fd",
+%%% version = "1.1",
+%%% date = "2014/10/11",
+%%% author = "Yannis Haralambous",
+%%% copyright = "This file is part of the dad package, released
+%%% under the LPPL."
+%%% keywords = "TeX, file header,
+%%% supported = "yes",
+%%% abstract = "This is the OT1 font description file of the dad
+%%% system for typesetting in the Arabic language.",
+%%% }
+%%% ====================================================================
+%Filename: OT1dad.fd
+%Created by: tex fonttime
+%Created using: \familyinst{OT1}{dad}
+
+%This file contains the font definitions for the dade family in the
+%OT1 encoding. It is used by the LaTeX New Font Selection Scheme.
+%It was generated by the fontinst package.
+
+\DeclareFontFamily{OT1}{dad}{}
+
+\DeclareFontShape{OT1}{dad}{m}{n}{<-> [1.2] dad}{}
+
+\DeclareFontShape{OT1}{dad}{bx}{n}{<-> [1.2] dadbold}{}
+
+\DeclareFontShape{OT1}{dad}{m}{i}{<-> ssub * dad/m/n}{}
+
+\DeclareFontShape{OT1}{dad}{bx}{i}{<-> ssub * dad/m/n}{}
+
+\DeclareFontShape{OT1}{dad}{m}{mono}{<-> [1.0] dadmono}{}
diff --git a/language/arabic/dad/README b/language/arabic/dad/README
new file mode 100644
index 0000000000..968b9ea1dc
--- /dev/null
+++ b/language/arabic/dad/README
@@ -0,0 +1,134 @@
+README for ض (dad) package, 2017/05/20, v1.2
+
+TABLE OF CONTENTS
+=================
+
+0 Changes in v1.2
+1 Introduction
+2 Download
+3 Installation
+4 Additional Packages
+5 Package Compatibility
+6 Authors/Maintainer
+7 Bug Reports
+8 Known Problems
+
+
+0 CHANGES IN V1.2
+=================
+
+I added support for LuaTeX 0.95 by including package luatex85 and by changing \luatextextdir into \textdir in file dad.sty.
+
+
+1 INTRODUCTION
+==============
+
+This LaTeX package allows simple typesetting in Arabic script, intended for mixed Latin-Arabic script usage, in situations where heavy-duty solutions are discouraged.
+The ض system operates with both Unicode and transliterated input, allowing the user to choose the most appropriate approach for every situation.
+
+A paper describing the package has been submitted to TUGboat.
+
+This material is subject to the LaTeX Project Public License
+(LPPL). See http://www.ctan.org/tex-archive/help/Catalogue/
+licenses.lppl.html for the details of that license.
+
+2 DOWNLOAD
+==========
+
+ض should become available on CTAN soon:
+ CTAN:/language/arabic/dad/
+
+The distribution contains the following files:
+
+2.1 FONT FILES AND RELATED FILES
+================================
+dadbold.ofm
+dad.ofm
+dadmono.ofm
+dadmono.ovf
+dadbold.ovf
+dad.ovf
+Dad-mono.pfb
+Dad-bold.pfb
+Dad.pfb
+Dad.afm
+Dad-mono.afm
+Dad-bold.afm
+dadrealbold.tfm
+dadreal.tfm
+dadrealmono.tfm
+dad.map
+dad.sty
+OT1dad.fd
+T1dad.fd
+
+2.2 DOCUMENTATION
+=================
+dad-user-guide.pdf
+dad-user-guide.tex
+dad-user-guide.bib
+
+2.4 PERL SCRIPTS FOR UTF-8 <-> TRANSLITERATION CONVERSION
+=========================================================
+dad-to-utf8.pl
+utf8-to-dad.pl
+
+2.3 FILES USED FOR GENERATING THE FONT METRIC FILES
+===================================================
+make-dad-font.pl
+dadbold.adjust
+dad.adjust
+dadmono.adjust
+
+3 INSTALLATION
+==============
+
+Place the files in directories where TeX can find them.
+
+4 ADDITIONAL PACKAGES
+=====================
+
+ض itself does not load other packages.
+
+5 PACKAGE COMPATIBILITY
+=======================
+
+To typeset with this package you need lualatex.
+To generate the OVF and OFM files from OVP you need wovp2ovf version
+higher or equal than 1.13 (build 34787).
+
+6 AUTHOR/MAINTAINER
+=====================
+
+* Author and maintainer of the package:
+ Yannis Haralambous
+
+7 BUG REPORTS
+==============
+
+A bug report should contain:
+* Comprehensive problem description. This includes error or
+ warning messages.
+* \errorcontextlines=\maxdimen can be added in the
+ TeX code to get more information in TeX error messages.
+* Minimal test file that shows the problem, but does not
+ contain any unnecessary packages and code.
+* Used drivers/programs.
+* Version information about used packages and programs.
+* If you are using LaTeX, then add "\listfiles". Then
+ a list of version information is printed at the end
+ of the LaTeX run.
+* Please no other files than the minimal test file.
+ The other files .log, .dvi, .ps, .pdf are seldom
+ necessary, so send them only on request.
+* Please .zip or .tar.gz your file(s) before sending them!
+
+Bug address
+-----------
+Bug reports can be send to the maintainer:
+ Yannis Haralambous
+ <yannis [dot] haralambous [at] telecom-bretagne [dot] eu>
+
+
+8 KNOWN PROBLEMS
+=================
diff --git a/language/arabic/dad/T1dad.fd b/language/arabic/dad/T1dad.fd
new file mode 100644
index 0000000000..b0e89442a0
--- /dev/null
+++ b/language/arabic/dad/T1dad.fd
@@ -0,0 +1,33 @@
+%%% ====================================================================
+%%% @font-description-file{
+%%% filename = "T1dad.fd",
+%%% version = "1.1",
+%%% date = "2014/10/11",
+%%% author = "Yannis Haralambous",
+%%% copyright = "This file is part of the dad package, released
+%%% under the LPPL."
+%%% keywords = "TeX, file header,
+%%% supported = "yes",
+%%% abstract = "This is the T1 font description file of the dad
+%%% system for typesetting in the Arabic language.",
+%%% }
+%%% ====================================================================
+%Filename: T1dad.fd
+%Created by: tex fonttime
+%Created using: \familyinst{T1}{dad}
+
+%This file contains the font definitions for the dade family in the
+%T1 encoding. It is used by the LaTeX New Font Selection Scheme.
+%It was generated by the fontinst package.
+
+\DeclareFontFamily{T1}{dad}{}
+
+\DeclareFontShape{T1}{dad}{m}{n}{<-> [1.2] dad}{}
+
+\DeclareFontShape{T1}{dad}{bx}{n}{<-> [1.2] dadbold}{}
+
+\DeclareFontShape{T1}{dad}{m}{i}{<-> ssub * dad/m/n}{}
+
+\DeclareFontShape{T1}{dad}{bx}{i}{<-> ssub * dad/m/n}{}
+
+\DeclareFontShape{T1}{dad}{m}{mono}{<-> [1.0] dadmono}{}
diff --git a/language/arabic/dad/dad-to-utf8.pl b/language/arabic/dad/dad-to-utf8.pl
new file mode 100755
index 0000000000..85d971af48
--- /dev/null
+++ b/language/arabic/dad/dad-to-utf8.pl
@@ -0,0 +1,98 @@
+#!/usr/bin/perl
+use utf8;
+binmode stdin,":utf8";
+binmode stdout,":utf8";
+
+sub encode {
+my $s=shift;
+my @RES=();
+while ($s =~ m/(.)/g) {
+$c=$1;
+#if ($c =~ m/[A-Za-z]/) {
+push @RES, ord($c);
+#} else {
+#push @RES, $c;
+#}
+}
+return join("•",@RES);
+}
+
+sub decode {
+my $s=shift;
+my @S=split(/•/,$s);
+my $res="";
+foreach $c (@S) {
+#if ($c =~ m/^[0-9]+$/) {
+$res.=chr($c);
+#} else { $res.=$c; }
+}
+return $res;
+}
+
+while (<>) {
+s/\\([A-Za-z]+)/"\\".&encode($1)."§"/ge;
+s/\|/ء/g;
+s/'A/آ/g;
+s/'a/أ/g;
+s/'u/ؤ/g;
+s/'i/إ/g;
+s/'I/ئ/g;
+s/'b/ٮ/g;
+s/'n/ں/g;
+s/'f/ڡ/g;
+s/'q/ٯ/g;
+s/s-h/سه/g;
+s/t-h/ته/g;
+s/z-h/زه/g;
+s/d-h/ده/g;
+s/A/ا/g;
+s/b/ب/g;
+s/t\*/ة/g;
+s/c/ث/g;
+s/t/ت/g;
+s/j/ج/g;
+s/H/ح/g;
+s/x/خ/g;
+s/dh/ذ/g;
+s/d/د/g;
+s/r/ر/g;
+s/zh/ژ/g;
+s/z/ز/g;
+s/sh/ش/g;
+s/s/س/g;
+s/S/ص/g;
+s/D/ض/g;
+s/T/ط/g;
+s/Z/ظ/g;
+s/`/ع/g;
+s/R/غ/g;
+s/f/ف/g;
+s/q/ق/g;
+s/k/ك/g;
+s/[Ll]/ل/g;
+s/m/م/g;
+s/n/ن/g;
+s/h/ه/g;
+s/U/و/g;
+s/I/ى/g;
+s/Y/ي/g;
+s/p/پ/g;
+s/C/چ/g;
+s/v/ڤ/g;
+s/g/گ/g;
+s/e/ۀ/g;
+s/--/ـ/g;
+s/-/‍/g;
+s/aN/ً/g;
+s/uN/ٌ/g;
+s/iN/ٍ/g;
+s/a\*\*/ٓ/g;
+s/a\*/ٰ/g;
+s/a/َ/g;
+s/u/ُ/g;
+s/i/ِ/g;
+s/\+/ّ/g;
+s/o/ْ/g;
+s/\\([0-9•]+)§/"\\".&decode($1)/ge;
+print;
+} \ No newline at end of file
diff --git a/language/arabic/dad/dad-user-guide.bib b/language/arabic/dad/dad-user-guide.bib
new file mode 100644
index 0000000000..89c54ed978
--- /dev/null
+++ b/language/arabic/dad/dad-user-guide.bib
@@ -0,0 +1,231 @@
+%%% ====================================================================
+%%% BibTeX-file{
+%%% filename = "dad-user-guide.bib",
+%%% version = "1.1",
+%%% date = "2014/10/11",
+%%% author = "Yannis Haralambous",
+%%% copyright = "This file is part of the dad package, released
+%%% under the LPPL."
+%%% keywords = "TeX, file header",
+%%% supported = "yes",
+%%% abstract = "This is the BIB file of the user's guide of the dad
+%%% system for typesetting in the Arabic language.",
+%%% }
+%%% ====================================================================
+%% This BibTeX bibliography file was created using BibDesk.
+%% http://bibdesk.sourceforge.net/
+
+
+%% Created for Yannis Haralambous at 2014-07-30 18:07:22 +0200
+
+
+%% Saved with string encoding Occidental (ASCII)
+
+
+
+@inproceedings{yharabic2,
+ Author = {Haralambous, Yannis},
+ Booktitle = {Proceedings of {Euro\TeX} '92},
+ Date-Added = {2014-07-30 16:05:56 +0000},
+ Date-Modified = {2014-07-30 16:06:56 +0000},
+ Pages = {293--305},
+ Publisher = {Czechoslovak \TeX\ Users Group},
+ Title = {Towards the revival of traditional {A}rabic typography through {\TeX}},
+ Year = {1992}}
+
+@inproceedings{lagally,
+ Author = {Lagally, Klaus},
+ Booktitle = {Proceedings of {Euro\TeX} '92},
+ Date-Added = {2014-07-30 16:00:23 +0000},
+ Date-Modified = {2014-07-30 16:05:40 +0000},
+ Pages = {153--172},
+ Publisher = {Czechoslovak \TeX\ Users Group},
+ Title = {Arab{\TeX} --- Typesetting {A}rabic with vowels and ligatures},
+ Year = {1992}}
+
+@book{lakh2,
+ Address = {Rabat, Morocco},
+ Author = {Lakhdar-Ghazal, Ahmed},
+ Date-Added = {2014-07-30 15:55:34 +0000},
+ Date-Modified = {2014-07-30 15:56:19 +0000},
+ Publisher = {Institut d'\'etudes et de recherches pour l'arabisation},
+ Title = {Pour apprendre et ma\^itriser la langue arabe},
+ Year = {1991}}
+
+@book{lakh1,
+ Address = {Rabat, Morocco},
+ Author = {Richert, Nicole},
+ Date-Added = {2014-07-30 15:53:53 +0000},
+ Date-Modified = {2014-07-30 15:55:32 +0000},
+ Publisher = {Institut d'\'etudes et de recherches pour l'arabisation},
+ Title = {Arabisation et technologie},
+ Year = {1987}}
+
+@article{deksmartlig,
+ Author = {Knuth, Donald E.},
+ Date-Added = {2014-07-30 15:49:36 +0000},
+ Date-Modified = {2014-07-30 15:50:22 +0000},
+ Journal = {TUGboat},
+ Pages = {325--328},
+ Title = {The new versions of {\TeX} and {\MF}},
+ Volume = {10},
+ Year = {1989}}
+
+@article{yharabic,
+ Author = {Haralambous, Yannis},
+ Date-Added = {2014-07-30 15:46:40 +0000},
+ Date-Modified = {2014-07-30 15:47:48 +0000},
+ Journal = {TUGboat},
+ Pages = {520--522},
+ Title = {Arabic, {P}ersian and {O}ttoman {\TeX} for {Mac} and {PC}},
+ Volume = {11},
+ Year = {1990}}
+
+@article{dekvf,
+ Author = {Knuth, Donald E.},
+ Date-Added = {2014-07-30 15:44:04 +0000},
+ Date-Modified = {2014-07-30 15:45:53 +0000},
+ Journal = {TUGboat},
+ Pages = {13--23},
+ Title = {Virtual fonts: more fun for grand wizards},
+ Volume = {11},
+ Year = {1990}}
+
+@article{luatex,
+ Author = {Hoekwater, Taco},
+ Date-Added = {2014-07-30 15:39:58 +0000},
+ Date-Modified = {2014-07-30 15:41:35 +0000},
+ Journal = {TUGboat},
+ Pages = {312--313},
+ Title = {{Lua\TeX}},
+ Volume = {28},
+ Year = {2007}}
+
+@article{pdftex,
+ Author = {H{\`a}n, Th{\'e} Th{\`a}nh},
+ Date-Added = {2014-07-30 15:35:36 +0000},
+ Date-Modified = {2014-07-30 15:36:41 +0000},
+ Journal = {Cahiers GUTenberg},
+ Pages = {197--210},
+ Title = {The {pdf\TeX} Program},
+ Volume = {28--29},
+ Year = {1998}}
+
+@inproceedings{omega3,
+ Author = {Haralambous, Yannis and Plaice, John},
+ Booktitle = {{Electronic Publishing, Artistic Imaging, and Digital Typography}},
+ Date-Added = {2014-07-30 15:32:38 +0000},
+ Date-Modified = {2014-07-30 15:33:54 +0000},
+ Publisher = {Springer},
+ Series = {LNCS},
+ Title = {The Design and Use of a Multiple-Alphabet Font with {$\Omega$}},
+ Volume = {1375},
+ Year = {1998}}
+
+@inproceedings{omega2,
+ Author = {Haralambous, Yannis and Plaice, John},
+ Booktitle = {{Proceedings of the International Symposium on Multilingual Information Processing '97}},
+ Date-Added = {2014-07-30 15:30:59 +0000},
+ Date-Modified = {2014-07-30 15:33:43 +0000},
+ Pages = {137--154},
+ Publisher = {ETL, Tsukuba, Japan},
+ Title = {Multilingual Typesetting with ${\Omega}$, a Case Study : {Arabic}},
+ Year = {1997}}
+
+@article{omega,
+ Author = {Haralambous, Yannis and Plaice, John},
+ Date-Added = {2014-07-30 15:28:46 +0000},
+ Date-Modified = {2014-07-30 15:30:25 +0000},
+ Journal = {TUGboat},
+ Pages = {344--352},
+ Title = {First Applications of {$\Omega$} : {Adobe Poetica, Arabic, Greek, Khmer}},
+ Volume = {15},
+ Year = {1994}}
+
+@book{livre,
+ Author = {Haralambous, Yannis},
+ Date-Added = {2014-07-30 15:23:12 +0000},
+ Date-Modified = {2014-07-30 15:23:50 +0000},
+ Publisher = {O'Reilly},
+ Title = {Fonts \& {E}ncodings},
+ Year = {2007}}
+
+@article{xetex,
+ Author = {Kew, Jonathan},
+ Date-Added = {2014-07-30 15:20:37 +0000},
+ Date-Modified = {2014-07-30 15:21:45 +0000},
+ Journal = {TUGboat},
+ Pages = {115--124},
+ Title = {{\XeTeX}, the Multilingual Lion: {\TeX} meets {U}nicode and smart font technologies},
+ Volume = {26},
+ Year = {2005}}
+
+@unpublished{writelatex,
+ Author = {Hammersley, John and Lees-Miller, John and others},
+ Date-Added = {2014-07-30 15:16:36 +0000},
+ Date-Modified = {2014-07-30 15:19:03 +0000},
+ Note = {\url{http://www.writelatex.com}},
+ Title = {The {write\LaTeX} online collaborative {\LaTeX} editor}}
+
+@unpublished{ieee,
+ Author = {Shell, Michael},
+ Date-Added = {2014-07-30 15:14:54 +0000},
+ Date-Modified = {2014-07-30 15:16:15 +0000},
+ Note = {\url{http://www.ieee.org/documents/LaTeX_letter5March2007.pdf}},
+ Title = {{IEEEtran \LaTeX} class},
+ Year = {2007}}
+
+@unpublished{citala,
+ Author = {Haralambous, Yannis and Lenca, Philippe and Lazrek, Azzeddine},
+ Date-Added = {2014-07-30 15:13:16 +0000},
+ Date-Modified = {2014-07-30 15:14:38 +0000},
+ Note = {submitted to \emph{CITALA 2014}},
+ Title = {Arabic text classification using association rules, dependency relations and hyperonymization}}
+
+@book{learn,
+author={Mace, John},
+title={Arabic verbs and essential grammar},
+publisher={Teach yourself books},
+year={1999}}
+
+@book{learn2,
+author={Smart, John R.},
+title={Arabic},
+publisher={Teach yourself books},
+year={1986}}
+
+@book{syed,
+author={Syed, Barakat Ahmad},
+title={Introduction to {Q}uranic script},
+publisher={Curzon Press},
+year={1984}}
+
+@article{tugboat,
+author={Haralambous, Yannis},
+title={A simple Arabic typesetting system for mixed Latin/Arabic alphabet documents: \emph{\d{d}\=ad}},
+year={2014},
+journal={TUGboat},
+volume = {35},
+number = {3}
+}
+
+@unpublished{agl,
+author={{Adobe Systems}},
+title={Adobe Glyph List},
+year={2002},
+note={\url{http://partners.adobe.com/public/developer/en/opentype/glyphlist.txt}}}
+
+@unpublished{oum,
+author={\mbox{\arab{sAHrAlbsmt*}}},
+title={{\arab{Am klcUm klmAt ARAnY kUkb Alshrq AlsYd-h Am klcUm mUsU`h kAmlh}}},
+year={2008},
+note={\url{http://alsabbah.yoo7.com/t417-topic}}
+}
+
+@book{ryding2014,
+ Address = {Cambridge},
+ Author = {Ryding, Karin C.},
+ Publisher = {Cambridge University Press},
+ Title = {Arabic. A linguistic introduction},
+ Isbn = {978-1-107-02331},
+ Year = {2014}}
diff --git a/language/arabic/dad/dad-user-guide.pdf b/language/arabic/dad/dad-user-guide.pdf
new file mode 100644
index 0000000000..7fef54224c
--- /dev/null
+++ b/language/arabic/dad/dad-user-guide.pdf
Binary files differ
diff --git a/language/arabic/dad/dad-user-guide.tex b/language/arabic/dad/dad-user-guide.tex
new file mode 100644
index 0000000000..988557686c
--- /dev/null
+++ b/language/arabic/dad/dad-user-guide.tex
@@ -0,0 +1,437 @@
+%%% ====================================================================
+%%% @LaTeX-file{
+%%% filename = "dad-user-guide.tex",
+%%% version = "1.2",
+%%% date = "2017/05/20",
+%%% author = "Yannis Haralambous",
+%%% copyright = "This file is part of the dad package, released
+%%% under the LPPL."
+%%% keywords = "TeX, file header,
+%%% supported = "yes",
+%%% abstract = "This is the user's guide of the dad
+%%% system for typesetting in the Arabic language.",
+%%% }
+%%% ====================================================================
+% needs lualatex to be processed
+\documentclass[11pt,a4paper]{article}
+\usepackage{luatex85}
+\pdfmapfile{/hom/yannis/projets/smf/0/smfpdftex.map}
+\usepackage{graphicx,color,framed,a4wide}
+\usepackage{ifpdf}
+%\usepackage[utf8]{inputenc}
+\ifpdf
+\usepackage[breaklinks,hidelinks]{hyperref}
+\usepackage{tikz}
+\usetikzlibrary{arrows}
+\else
+\usepackage{url}
+\fi
+\usepackage[colorinlistoftodos]{todonotes}
+\usepackage{dad}
+\def\hamza{'}%\textsuperscript{\ejective}}
+\def\ayn{`}%\textsuperscript{\reveject}}
+\usepackage{fontspec}
+
+%%% Start of metadata %%%
+
+\title{User's Guide of \arab{D} (\emph{\d{d}\=ad}),\\ a Simple Arabic Typesetting System\\ for Mixed Latin/Arabic Alphabet Documents\\[12pt]Version 1.2/2017-05-20}
+
+% repeat info for each author.
+\author{Yannis Haralambous\thanks{IMT Atlantique,
+UMR~CNRS~6285 Lab-STICC,
+Technop\^ole Brest Iroise
+CS 83818, 29238~Brest~Cedex~3, France, \url{yannis.haralambous@imt-atlantique.fr}}}
+%\netaddress{yannis.haralambous (at) telecom-bretagne dot eu}
+%\personalURL{http://example.org/~user/}
+\date{}
+%%% End of metadata %%%
+
+
+%\newfontfamily\arabicfont[Script=Arabic,Scale=1.2]{Scheherazade-Regular.ttf}
+%\newcommand{\textarabic}[1]{\bgroup\textdir TRT\arabicfont #1\egroup}
+\begin{document}
+
+\maketitle
+
+\section*{New features of version 1.2}
+
+I added support for Lua\TeX\ 0.95 by including package \verb=luatex85= and by changing \verb=\luatextextdir= into \verb=\textdir=.
+
+\section{Introduction}
+
+\noindent\mbox{\arab{D}} is a package for typesetting Arabic in the simplest possible way. It is particularly well suited for mixed Arabic/Latin documents. ``Simplest possible'' means:
+\begin{itemize}
+\item it is compatible with all \LaTeX\ style files, since the code is minimal and all the complexity is in the font;
+\item input can be done in Unicode or in transliteration, the latter being often the best choice when mixing left-to-right and right-to-left scripts;
+\item the only \TeX nical requirement is Lua\TeX, not because of the Lua language (which is not used, for the moment), but because of features that have survived from Lua\TeX's $\Omega$ origins: bidirectionality and use of large fonts (OVF, OFM).
+\end{itemize}
+Choose Lua\TeX\ as your \TeX\ engine, load the package into your document, and \arab{AhlAaN Us-hlAaN!}, just start writing in Arabic using command \verb=\arab=.
+
+More information about \arab{D} (history, evolution, rationale of technical choices, \TeX nicalities) can be found in \cite{tugboat}.
+
+%\begin{framed}
+%\noindent ATTENTION! \textbf{\arab{xTr!}} Because of bugs in Lua\TeX, in some cases appear mysterious blank spaces on the left of the text, word parts are duplicated, and sometimes \TeX\ breaks with an error message \texttt{This can't happen (sub\_disc\_widths).} These errors have been submitted to the Lua\TeX\ team (\url{http://tracker.luatex.org/view.php?id=912&history=1#history}), which will provide the necessary corrections \arab{'in shA| ALLh}.
+%\end{framed}
+
+\section{The name}
+
+Thanks to the Internet, search engines, social media, and the like, people are becoming more and more aware of other languages and writing systems. Why not give this package an Arabic name, be it a single letter?
+
+The author has chosen letter \arab{D}, called \emph{\d{d}\=ad}, because Arabic is traditionally called the ``language of the \emph{\d{d}\=ad},'' since this sound was considered as being unique to Arabic.
+
+The reader is probably wondering how to pronounce this letter,technically a ``voiced velarized alveolar stop'' \cite[p.~16]{ryding2014}. Here is how \cite[p.~10]{learn2} describes its pronunciation:
+
+\begin{quotation}
+Pronounce the regular sound `d' and you will find that the tip of your tongue will touch in the region of the upper front teeth/gum. Now pronounce the sound again and at the same time depress the \emph{middle} of the tongue. This has the effect of creating a larger space between the tongue and the roof of the mouth and gives the sound produced a distinctive `hollow' characteristic, which also effects the surrounding vowels. It is difficult to find a parallel in English, but the difference between `Sam' and `psalm' (standard English pronunciation) gives a clue. Tense the tongue muscles in pronouncing `psalm' and you are nearly there. Now pronounce the a-vowel of `psalm' before and after `\d{d}', saying `a\d{d}a', keeping the tongue tense, and that's as near as we can get to describing it in print.
+\end{quotation}
+
+\section{How to use \arab{D}}
+
+The package provides three PostScript Type~1 fonts (plain, bold and typewriter), ``real'' fonts (regular TFM) and large virtual fonts (OVF and OFM files). There are also rudimentary FD and STY files, a MAP file, Perl scripts for conversion to (and from) UTF-8, the Perl script which builds the font and finally adjustment files, in case the user wants to change kerning and diacritic placement.
+
+Once the package is installed, to use it just call
+\begin{verbatim}
+\usepackage{dad}
+\end{verbatim}
+
+Notice however that it requires Lua\TeX\ (for change of direction and OVF/OFM compliance).
+
+To typeset in Arabic, one uses the command \verb=\arab= (which is ``long'': paragraph changes are allowed in its argument).
+
+Arabic text can be input in transliteration, as described in Table~\ref{trans} or in Unicode UTF-8 (\S\,\ref{unicode}).
+
+{\tolerance5000 For example, to obtain \arab{AlkitAb} one would write in transliteration \verb=\arab{=\texttt{AlkitAb}\verb=}= or in Unicode \verb=\arab{=\arabtt{AlkitAb}\verb=}=. By writing \verb=\arabtt{=\texttt{AlkitAb}\verb=}= one obtains the typewriter version \arabtt{AlkitAb} (which is less appealing, but fits quite nicely with the Computer Modern Typewriter font).
+
+}
+
+\begin{table*}[t]
+\centering{\renewcommand{\arraystretch}{2}
+
+\caption{Transliteration of \arab{D} system\label{trans}}
+\begin{tabular}{|c|c||c|c||c|c||c|c||c|c||c|c|}
+\hline
+\arab{|}&\texttt{|}&\arab{'A}&\texttt{'A}&\arab{'a}&\texttt{'a}&\arab{'u}&\texttt{'u}&\arab{'i}&\texttt{'i}&\arab{'I}&\texttt{'I}\\
+\arab{A}&\texttt{A}&\arab{b}&\texttt{b}&\arab{t*}&\texttt{t*}&\arab{t}&\texttt{t}&\arab{th}&\texttt{th}&\arab{j}&\texttt{j}\\
+\arab{H}&\texttt{H}&\arab{x}&\texttt{x}&\arab{d}&\texttt{d}&\arab{dh}&\texttt{dh}&\arab{r}&\texttt{r}&\arab{z}&\texttt{z}\\
+\arab{s}&\texttt{s}&\arab{sh}&\texttt{sh}&\arab{S}&\texttt{S}&\arab{D}&\texttt{D}&\arab{T}&\texttt{T}&\arab{Z}&\texttt{Z}\\
+\arab{`}&\texttt{`}&\arab{R}&\texttt{R}&\arab{f}&\texttt{f}&\arab{q}&\texttt{q}&\arab{k}&\texttt{k}&\arab{l}&\texttt{l}\\
+\arab{m}&\texttt{m}&\arab{n}&\texttt{n}&\arab{h}&\texttt{h}&\arab{U}&\texttt{U}&\arab{I}&\texttt{I}&\arab{Y}&\texttt{Y}\\\hline
+\arab{A*}&\texttt{A*}&\arab{^^^^00fbo}&\texttt{o}&\arab{^^^^00fba}&\texttt{a}&\arab{^^^^00fbi}&\texttt{i}&\arab{^^^^00fbu}&\texttt{u}&\arab{^^^^00fbaN}&\texttt{aN}\\
+\arab{^^^^00fbiN}&\texttt{iN}&\arab{^^^^00fbuN}&\texttt{uN}&\arab{^^^^00fb+}&\texttt{+}&\arab{^^^^00fb+a}&\texttt{+a}&\arab{^^^^00fb+i}&\texttt{+i}&\arab{^^^^00fb+u}&\texttt{+u}\\
+\arab{^^^^00fb+aN}&\texttt{+aN}&\arab{^^^^00fb+iN}&\texttt{+iN}&\arab{^^^^00fb+uN}&\texttt{+uN}&\arab{^^^^00fba*}&\texttt{a*}&\arab{^^^^00fb+a*}&\texttt{+a*}&\arab{LLh}&\texttt{LLh}\\\hline
+\arab{p}&\texttt{p}&\arab{g}&\texttt{g}&\arab{C}&\texttt{C}&\arab{J}&\texttt{J}&\arab{e}&\texttt{e}&\arab{v}&\texttt{v}\\\hline
+\arab{'b}&\texttt{'b}&\arab{'n}&\texttt{'n}&\arab{'f}&\texttt{'f}&\arab{'q}&\texttt{'q}&\arab{^^^^00fba**}&\texttt{a**}&\arab{^^^^00fb+a**}&\texttt{+a**}\\\hline
+\end{tabular}
+
+}
+\end{table*}
+
+\clubpenalty10000
+
+\subsection{Rationale of the transliteration}
+
+Here are the rules of the proposed transliteration:
+\begin{enumerate}
+\item pharyngeal \arabttexample{H}, emphatic \arabttexample{S}, \arabttexample{D}, \arabttexample{T},
+\arabttexample{Z} and velar \arabttexample{R} are \emph{uppercased}---do not confuse them with glottal \arabttexample{h}, non-emphatic \arabttexample{s}, \arabttexample{d}, \arabttexample{t}, \arabttexample{z}, and alveolar \arabttexample{r};
+\item long vowels (\arabttexample{A}, \arabttexample{U}, \arabttexample{Y}) and
+\emph{\hamza$\!$alif maq\d s\=ura} (\arabttexample{I}) are also
+\emph{uppercased};
+
+\item some consonants are modified by adding a character \texttt{h} (\arabttexample{dh}, \arabttexample{th}, \arabttexample{sh});
+
+\item the stand-alone \emph{hamza} is obtained by a vertical bar \texttt{|} and letter ayn by a grave accent (which, in legacy \TeX\ produces an inverted curly apostrophe, which is sometimes used to transliterate this letter);
+
+\item to avoid confusion between pairs of letters and letters obtained by digraphs, one has to use a dash to separate characters: compare \arabttexample{s-h} and \arabttexample{sh}, or \arabttexample{t-h} and \arabttexample{th};
+
+\item more generally, the dash plays the r\^ole of \emph{zero-width joiner}\footnote{Except for the case of letter \arabttexample{dh} which is biform and hence is not connected with the following letter. By writing \arabttexample{d-h} one obtains letters \emph{d\=al} and \emph{h\=a\hamza}, but the \emph{h\=a\hamza} is not in medial form, as it would be in any other case when preceded by a dash.}: when writing \arabttexample{-b}, the letter \emph{b\=a\hamza} will be in final form; \arabttexample{b-} and \arabttexample{-b-} will produce initial and middle letters, provided of course the letter is quadriform (as is letter \emph{b\=a\hamza} in this example). This is very useful when describing grammar rules, to signify that a letter (or letter group) is an affix;
+
+\item the dash can also be used to reestablish contextual forms when combined with \TeX\ commands, for example, to colorize letters. There is only one special case: when we want to colorize a letter of an isolated ligature \arab{lA}, instead of a dash, we use digit \texttt{4}. For the final ligature \arab{-lA} it will be a digit \texttt{5}. Example: to colorize the \emph{l\=am}s of \arab{t-\textcolor{red}{-l5-}-A5\textcolor{red}{l4-}-A4}, write
+\begin{verbatim}
+\arab{t-\textcolor{red}{-l5-}-A5%
+\textcolor{red}{l4-}-A4}
+\end{verbatim}
+
+%\def\kesh{\leavevmode\leaders\hrule height\fontdimen8\hfill\kern0pt}
+
+\item finally, there is yet another use of the dash: when doubled, it produces a kashida
+%tatweel
+%(also known as ``kashida'')
+stroke: compare \arabttexample{lYl} and \arabttexample{l--Y--l}. There is also a \verb=\kesh= command for extensible kashida (it is equivalent to a \verb=\hrulefill= using the default rule thickness font dimension \verb=\fontdimen8=): \verb=l--\kesh--Y--\kesh--l.= will produce:
+
+\noindent\arab{l--\kesh--Y--\kesh--l.}
+
+\item some digraphs start with an apostrophe: it is the case of \emph{hamza}-carriers \arabttexample{'a}, \arabttexample{'i}, \arabttexample{'u}, \arabttexample{'I}, \arabttexample{'A} but also of undotted letters \emph{b\=a\hamza} \arabttexample{'b}, \emph{n\=un} \arabttexample{'n}, \emph{f\=a\hamza} \arabttexample{'f} and \emph{q\=af} \arabttexample{'q};
+
+\item other digraphs end with one or more asterisks: the most frequent one is the \emph{t\=a\hamza\ marbu\d{t}a} \arabttexample{t*} (which can be used also in initial and medial, and then becomes a regular \emph{t\=a\hamza}). The asterisk is also used for the \emph{Ua\d{s}la} (which is only placed on the \emph{\hamza$\!$alif}) \arabttexample{A*} as well as for the vertical \emph{fat\d{h}a} (as in \arabttexample{ha*dhA}) and the \emph{madda}. The latter is normally used only on the \emph{\hamza$\!$alif} (\arabttexample{'A}) but can be found also in the notorious \emph{muqa\d t\d ta\ayn\=at} in the Koran, as in \arab{`a**sa**qa**} (\emph{Koran} 42:2) or \arab{ka**ha*Ya*`a**Sa**} (\emph{Koran} 19:1)---sometimes it is even combined with a \emph{\v{s}adda} (as in \arab{Ala**m+a**Sa**}, \emph{Koran} 7:1 and \cite[p.~111]{syed} for the \emph{\v{s}adda});
+
+\item there is a special transcription for the ligature \arabttexample{LLh} used for the \arab{اسم الجلالة} ``noun of majesty,'' which is the name of God \arab{ALLh}: in this case---and in this case only---an uppercase \texttt{L} is used. The reason is that we wish to avoid ambiguity with other uses of the trigram \emph{l\=am}-\emph{l\=am}-\emph{h\=a\hamza}, for example \arab{YuDolilohu} (\emph{Koran} 6:39) where we encounter letters \arab{llh} but not with the meaning ``God.'' Contrarily to other systems, the \arab{LLh} ligature is available also in final form (for \arab{faLiLhi} which occurs six times in the Koran, for example \emph{Koran} 6:149), and it is possible to add diacritics to its first glyph (as in \arab{UaLiLhi}, \emph{Koran} 2:115 or \arab{L+iLhi}, \emph{Koran} 2:165).
+\end{enumerate}
+
+\begin{figure*}[p]
+\arab{\begin{center}
+\textbf{rbA`YAt AlxYAm}
+
+\medskip
+
+\begin{minipage}{10cm}
+sm`t SUtA hAtfA fY AlsH--\kesh--r n--\kesh--AdI mn AlRYb rfAt Albsh--\kesh--r\\
+hbUA Aml'aUA k'as AlmnI qb--\kesh--l 'an tml'a k--\kesh--'as Al`m--\kesh--r kf Alq--\kesh--dr\\
+lA tshRl AlbAl bmADY Alzm--\kesh--An UlA b--\kesh--'At Al`Y--\kesh--sh qb--\kesh--l Al'aUAn\\
+U'aR--\kesh--nm mn AlHAD--\kesh--r ldhAt--\kesh--h flYs f--\kesh--Y Tb--\kesh--` AllYAl--\kesh--Y Al'am--\kesh--An\\
+Rd bZhr AlRYb UAlYUm l--\kesh--Y Ukm YxYb AlZ--\kesh--n f--\kesh--Y Almqb--\kesh--l\\
+Uls--\kesh--t bAlRAf--\kesh--l Ht--\kesh--I 'arI jm--\kesh--Al dnY--\kesh--AY U lA Ajtl--\kesh--I\\
+Alqlb qd 'aDnAh `shq Aljm--\kesh--Al UAlS--\kesh--dr q--\kesh--d D--\kesh--Aq bm--\kesh--A lA Yq--\kesh--Al\\
+YA rb hl YrDYk hdhA AlZlm--\kesh--A UAlm--\kesh--A| Yns--\kesh--Ab 'am--\kesh--Am--\kesh--Y zlAl\\
+'aUlI bhdhA Alqlb 'an Yxfq--\kesh--A U fY RrAm AlH--\kesh--b 'an YHtrq--\kesh--A\\
+mA 'aDY` AlYUm AldhY m--\kesh--r b--\kesh--Y mn RYr 'an 'ahUI U 'an 'a`shq--\kesh--A\\
+'afq xfYf AlZl hdhA AlsH--\kesh--r n--\kesh--AdI d` Aln--\kesh--Um Un--\kesh--AR AlUt--\kesh--r\\
+fm--\kesh--A 'aT--\kesh--Al Aln--\kesh--Um `m--\kesh--rA UlA qSr mn Al'a`mAr TUl Als-h--\kesh--r\\
+fk--\kesh--m tUl--\kesh--I AllY--\kesh--l b`--\kesh--d Alnh--\kesh--Ar UT--\kesh--Al bAl'anj--\kesh--m h--\kesh--dhA Alm--\kesh--dAr\\
+f'amsh AlhUYnt* 'an hdhA Alc--\kesh--rI m--\kesh--n 'a`Y--\kesh--n sAH--\kesh--rt* AlAH--\kesh--UrAr\\
+lA tUHsh Alnfs bxUf AlZn--\kesh--Un U'aRnm mn AlHADr 'amn AlYqY--\kesh--n\\
+fqd tsAUI fY AlcrI rAH--\kesh--l RdA UmAD mn AlUf AlsnY--\kesh--n\\
+ATf'I lZI Alqlb bshhd AlrD--\kesh--Ab f'inm--\kesh--A Al'aY--\kesh--Am mc--\kesh--l AlsH--\kesh--Ab\\
+U`Yshn--\kesh--A TY--\kesh--f xY--\kesh--Al fn--\kesh--l HZ--\kesh--k mn--\kesh--h qb--\kesh--l f--\kesh--Ut Alshb--\kesh--Ab\\
+lbst cUb Al`Ysh lm Astsh--\kesh--r UH--\kesh--rt fY--\kesh--h bY--\kesh--n sht--\kesh--I Alfk--\kesh--r\\
+UsUf 'anDU AlcUb `nY Ul--\kesh--m 'adrk lm--\kesh--AdhA j'I--\kesh--t 'aY--\kesh--n AlmR--\kesh--r\\
+YA mn YHAr Alfhm fY qdrt--\kesh--k UtTl--\kesh--b Alnf--\kesh--s Hm--\kesh--I TA`t--\kesh--k\\
+Askrn--\kesh--Y Al'ic--\kesh--m U lknn--\kesh--Y SH--\kesh--Ut bAl'am--\kesh--Al f--\kesh--Y rHmt--\kesh--k\\
+'in lm 'akn 'axlSt fY TA`t--\kesh--k f'inn--\kesh--Y 'aTm--\kesh--` f--\kesh--Y rHmt--\kesh--k\\
+U'inm--\kesh--A Yshf--\kesh--` l--\kesh--Y b'ann--\kesh--Y q--\kesh--d `sh--\kesh--t lA 'ash--\kesh--rk fY UHdt--\kesh--k\\
+nxfY `n AlnAs snI Tl`t--\kesh--k f'inn--\kesh--Y 'aTm--\kesh--` f--\kesh--Y rHmt--\kesh--k\\
+f'an--\kesh--t mj--\kesh--lAh U'an--\kesh--t Al--\kesh--dhY t--\kesh--rI bdY--\kesh--` AlSn--\kesh--` f--\kesh--Y 'AYt--\kesh--k\\
+An tfDl AlqTrt* mn bHrh--\kesh--A ff--\kesh--Y m--\kesh--dAh--\kesh--A mnt-h--\kesh--I 'amrh--\kesh--A\\
+tqArb--\kesh--t Y--\kesh--A rb m--\kesh--A bYnn--\kesh--A msAf--\kesh--t* Alb`--\kesh--d `l--\kesh--I qdrh--\kesh--A\\
+YA `Alm Al'asrAr `lm AlYq--\kesh--Y--\kesh--n Y--\kesh--A kAsh--\kesh--f AlD--\kesh--r `--\kesh--n AlbA'IsY--\kesh--n\\
+Y--\kesh--A qAb--\kesh--l Al'a`--\kesh--dhAr `dn--\kesh--A 'il--\kesh--I Zl--\kesh--k f'aqb--\kesh--l tUb--\kesh--t* AltA'IbY--\kesh--n
+\end{minipage}
+\end{center}}
+\caption{The lyrics of the song \arab{rbA`YAt AlxYAm} (Oum Kalthoum, 1950) \cite{oum}\label{oum}}
+\end{figure*}
+
+\begin{figure*}[p]
+
+\kern-2cm
+
+\scriptsize
+\begin{verbatim}
+\documentclass{article}
+\usepackage{dad}
+\begin{document}
+\arab{
+\begin{center}
+\textbf{rbA`YAt AlxYAm}
+
+\medskip
+
+\begin{minipage}{10cm}
+sm`t SUtA hAtfA fY AlsH--\kesh--r n--\kesh--AdI mn AlRYb rfAt Albsh--\kesh--r\\
+hbUA Aml'aUA k'as AlmnI qb--\kesh--l 'an tml'a k--\kesh--'as Al`m--\kesh--r kf
+Alq--\kesh--dr\\
+lA tshRl AlbAl bmADY Alzm--\kesh--An UlA b--\kesh--'At Al`Y--\kesh--sh qb--\kesh--l
+Al'aUAn\\
+U'aR--\kesh--nm mn AlHAD--\kesh--r ldhAt--\kesh--h flYs f--\kesh--Y Tb--\kesh--`
+AllYAl--\kesh--Y Al'am--\kesh--An\\
+Rd bZhr AlRYb UAlYUm l--\kesh--Y Ukm YxYb AlZ--\kesh--n f--\kesh--Y Almqb--\kesh--l\\
+Uls--\kesh--t bAlRAf--\kesh--l Ht--\kesh--I 'arI jm--\kesh--Al dnY--\kesh--AY U
+lA Ajtl--\kesh--I\\
+Alqlb qd 'aDnAh `shq Aljm--\kesh--Al UAlS--\kesh--dr q--\kesh--d D--\kesh--Aq bm--\kesh--A
+lA Yq--\kesh--Al\\
+YA rb hl YrDYk hdhA AlZlm--\kesh--A UAlm--\kesh--A| Yns--\kesh--Ab 'am--\kesh--Am--\kesh--Y
+zlAl\\
+'aUlI bhdhA Alqlb 'an Yxfq--\kesh--A U fY RrAm AlH--\kesh--b 'an YHtrq--\kesh--A\\
+mA 'aDY` AlYUm AldhY m--\kesh--r b--\kesh--Y mn RYr 'an 'ahUI U 'an 'a`shq--\kesh--A\\
+'afq xfYf AlZl hdhA AlsH--\kesh--r n--\kesh--AdI d` Aln--\kesh--Um Un--\kesh--AR
+AlUt--\kesh--r\\
+fm--\kesh--A 'aT--\kesh--Al Aln--\kesh--Um `m--\kesh--rA UlA qSr mn Al'a`mAr TUl
+Als-h--\kesh--r\\
+fk--\kesh--m tUl--\kesh--I AllY--\kesh--l b`--\kesh--d Alnh--\kesh--Ar UT--\kesh--Al
+bAl'anj--\kesh--m h--\kesh--dhA Alm--\kesh--dAr\\
+f'amsh AlhUYnt* 'an hdhA Alc--\kesh--rI m--\kesh--n 'a`Y--\kesh--n sAH--\kesh--rt*
+AlAH--\kesh--UrAr\\
+lA tUHsh Alnfs bxUf AlZn--\kesh--Un U'aRnm mn AlHADr 'amn AlYqY--\kesh--n\\
+fqd tsAUI fY AlcrI rAH--\kesh--l RdA UmAD mn AlUf AlsnY--\kesh--n\\
+ATf'I lZI Alqlb bshhd AlrD--\kesh--Ab f'inm--\kesh--A Al'aY--\kesh--Am mc--\kesh--l
+AlsH--\kesh--Ab\\
+U`Yshn--\kesh--A TY--\kesh--f xY--\kesh--Al fn--\kesh--l HZ--\kesh--k mn--\kesh--h
+qb--\kesh--l f--\kesh--Ut Alshb--\kesh--Ab\\
+lbst cUb Al`Ysh lm Astsh--\kesh--r UH--\kesh--rt fY--\kesh--h bY--\kesh--n sht--\kesh--I
+Alfk--\kesh--r\\
+UsUf 'anDU AlcUb `nY Ul--\kesh--m 'adrk lm--\kesh--AdhA j'I--\kesh--t 'aY--\kesh--n
+AlmR--\kesh--r\\
+YA mn YHAr Alfhm fY qdrt--\kesh--k UtTl--\kesh--b Alnf--\kesh--s Hm--\kesh--I TA`t--\kesh--k\\
+Askrn--\kesh--Y Al'ic--\kesh--m U lknn--\kesh--Y SH--\kesh--Ut bAl'am--\kesh--Al
+f--\kesh--Y rHmt--\kesh--k\\
+'in lm 'akn 'axlSt fY TA`t--\kesh--k f'inn--\kesh--Y 'aTm--\kesh--` f--\kesh--Y
+rHmt--\kesh--k\\
+U'inm--\kesh--A Yshf--\kesh--` l--\kesh--Y b'ann--\kesh--Y q--\kesh--d `sh--\kesh--t
+lA 'ash--\kesh--rk fY UHdt--\kesh--k\\
+nxfY `n AlnAs snI Tl`t--\kesh--k f'inn--\kesh--Y 'aTm--\kesh--` f--\kesh--Y rHmt--\kesh--k\\
+f'an--\kesh--t mj--\kesh--lAh U'an--\kesh--t Al--\kesh--dhY t--\kesh--rI bdY--\kesh--`
+AlSn--\kesh--` f--\kesh--Y 'AYt--\kesh--k\\
+An tfDl AlqTrt* mn bHrh--\kesh--A ff--\kesh--Y m--\kesh--dAh--\kesh--A mnt-h--\kesh--I
+'amrh--\kesh--A\\
+tqArb--\kesh--t Y--\kesh--A rb m--\kesh--A bYnn--\kesh--A msAf--\kesh--t* Alb`--\kesh--d
+`l--\kesh--I qdrh--\kesh--A\\
+YA `Alm Al'asrAr `lm AlYq--\kesh--Y--\kesh--n Y--\kesh--A kAsh--\kesh--f AlD--\kesh--r
+`--\kesh--n AlbA'IsY--\kesh--n\\
+Y--\kesh--A qAb--\kesh--l Al'a`--\kesh--dhAr `dn--\kesh--A 'il--\kesh--I Zl--\kesh--k
+f'aqb--\kesh--l tUb--\kesh--t* AltA'IbY--\kesh--n
+\end{minipage}
+\end{center}
+}
+\end{document}
+\end{verbatim}
+\caption{\TeX\ code of Fig.~\ref{oum}, transliterated input}
+\end{figure*}
+
+\begin{figure*}[p]
+
+\kern-2cm
+
+\scriptsize
+\begin{verbatim}
+\documentclass{article}
+\usepackage{dad}
+\begin{document}
+\arab{
+\begin{center}
+\end{verbatim}
+
+\kern-1.2\baselineskip
+
+\verb=\textbf{=\arabtt{rbA`YAt AlxYAm}\verb=}=
+
+\kern-1.2\baselineskip
+
+\begin{verbatim}
+
+\medskip
+
+\begin{minipage}{10cm}
+\end{verbatim}
+\def\CRCRCR{\textbackslash\textbackslash\\}
+\arabtt{sm`t SUtA hAtfA fY AlsH--\textbackslash tT --r n--\textbackslash tT --AdI mn AlRYb rfAt Albsh--\textbackslash tT --r\CRCRCR
+hbUA Aml'aUA k'as AlmnI qb--\textbackslash tT --l 'an tml'a k--\textbackslash tT --'as Al`m--\textbackslash tT --r kf
+Alq--\textbackslash tT --dr\CRCRCR
+lA tshRl AlbAl bmADY Alzm--\textbackslash tT --An UlA b--\textbackslash tT --'At Al`Y--\textbackslash tT --sh qb--\textbackslash tT --l
+Al'aUAn\CRCRCR
+U'aR--\textbackslash tT --nm mn AlHAD--\textbackslash tT --r ldhAt--\textbackslash tT --h flYs f--\textbackslash tT --Y Tb--\textbackslash tT --`
+AllYAl--\textbackslash tT --Y Al'am--\textbackslash tT --An\CRCRCR
+Rd bZhr AlRYb UAlYUm l--\textbackslash tT --Y Ukm YxYb AlZ--\textbackslash tT --n f--\textbackslash tT --Y Almqb--\textbackslash tT --l\CRCRCR
+Uls--\textbackslash tT --t bAlRAf--\textbackslash tT --l Ht--\textbackslash tT --I 'arI jm--\textbackslash tT --Al dnY--\textbackslash tT --AY U
+lA Ajtl--\textbackslash tT --I\CRCRCR
+Alqlb qd 'aDnAh `shq Aljm--\textbackslash tT --Al UAlS--\textbackslash tT --dr q--\textbackslash tT --d D--\textbackslash tT --Aq bm--\textbackslash tT --A
+lA Yq--\textbackslash tT --Al\CRCRCR
+YA rb hl YrDYk hdhA AlZlm--\textbackslash tT --A UAlm--\textbackslash tT --A| Yns--\textbackslash tT --Ab 'am--\textbackslash tT --Am--\textbackslash tT --Y
+zlAl\CRCRCR
+'aUlI bhdhA Alqlb 'an Yxfq--\textbackslash tT --A U fY RrAm AlH--\textbackslash tT --b 'an YHtrq--\textbackslash tT --A\CRCRCR
+mA 'aDY` AlYUm AldhY m--\textbackslash tT --r b--\textbackslash tT --Y mn RYr 'an 'ahUI U 'an 'a`shq--\textbackslash tT --A\CRCRCR
+'afq xfYf AlZl hdhA AlsH--\textbackslash tT --r n--\textbackslash tT --AdI d` Aln--\textbackslash tT --Um Un--\textbackslash tT --AR\\
+AlUt--\textbackslash tT --r\CRCRCR
+fm--\textbackslash tT --A 'aT--\textbackslash tT --Al Aln--\textbackslash tT --Um `m--\textbackslash tT --rA UlA qSr mn Al'a`mAr TUl
+Als-h--\textbackslash tT --r\CRCRCR
+fk--\textbackslash tT --m tUl--\textbackslash tT --I AllY--\textbackslash tT --l b`--\textbackslash tT --d Alnh--\textbackslash tT --Ar UT--\textbackslash tT --Al
+bAl'anj--\textbackslash tT --m h--\textbackslash tT --dhA Alm--\textbackslash tT --dAr\CRCRCR
+f'amsh AlhUYnt* 'an hdhA Alc--\textbackslash tT --rI m--\textbackslash tT --n 'a`Y--\textbackslash tT --n sAH--\textbackslash tT --rt*
+AlAH--\textbackslash tT --UrAr\CRCRCR
+lA tUHsh Alnfs bxUf AlZn--\textbackslash tT --Un U'aRnm mn AlHADr 'amn AlYqY--\textbackslash tT --n\CRCRCR
+fqd tsAUI fY AlcrI rAH--\textbackslash tT --l RdA UmAD mn AlUf AlsnY--\textbackslash tT --n\CRCRCR
+ATf'I lZI Alqlb bshhd AlrD--\textbackslash tT --Ab f'inm--\textbackslash tT --A Al'aY--\textbackslash tT --Am mc--\textbackslash tT --l
+AlsH--\textbackslash tT --Ab\CRCRCR
+U`Yshn--\textbackslash tT --A TY--\textbackslash tT --f xY--\textbackslash tT --Al fn--\textbackslash tT --l HZ--\textbackslash tT --k mn--\textbackslash tT --h
+qb--\textbackslash tT --l f--\textbackslash tT --Ut Alshb--\textbackslash tT --Ab\CRCRCR
+lbst cUb Al`Ysh lm Astsh--\textbackslash tT --r UH--\textbackslash tT --rt fY--\textbackslash tT --h bY--\textbackslash tT --n sht--\textbackslash tT --I
+Alfk--\textbackslash tT --r\CRCRCR
+UsUf 'anDU AlcUb `nY Ul--\textbackslash tT --m 'adrk lm--\textbackslash tT --AdhA j'I--\textbackslash tT --t 'aY--\textbackslash tT --n
+AlmR--\textbackslash tT --r\CRCRCR
+YA mn YHAr Alfhm fY qdrt--\textbackslash tT --k UtTl--\textbackslash tT --b Alnf--\textbackslash tT --s Hm--\textbackslash tT --I TA`t--\textbackslash tT --k\CRCRCR
+Askrn--\textbackslash tT --Y Al'ic--\textbackslash tT --m U lknn--\textbackslash tT --Y SH--\textbackslash tT --Ut bAl'am--\textbackslash tT --Al
+f--\textbackslash tT --Y rHmt--\textbackslash tT --k\CRCRCR
+'in lm 'akn 'axlSt fY TA`t--\textbackslash tT --k f'inn--\textbackslash tT --Y 'aTm--\textbackslash tT --` f--\textbackslash tT --Y
+rHmt--\textbackslash tT --k\CRCRCR
+U'inm--\textbackslash tT --A Yshf--\textbackslash tT --` l--\textbackslash tT --Y b'ann--\textbackslash tT --Y q--\textbackslash tT --d `sh--\textbackslash tT --t
+lA 'ash--\textbackslash tT --rk fY UHdt--\textbackslash tT --k\CRCRCR
+nxfY `n AlnAs snI Tl`t--\textbackslash tT --k f'inn--\textbackslash tT --Y 'aTm--\textbackslash tT --` f--\textbackslash tT --Y rHmt--\textbackslash tT --k\CRCRCR
+f'an--\textbackslash tT --t mj--\textbackslash tT --lAh U'an--\textbackslash tT --t Al--\textbackslash tT --dhY t--\textbackslash tT --rI bdY--\textbackslash tT --`
+AlSn--\textbackslash tT --` f--\textbackslash tT --Y 'AYt--\textbackslash tT --k\CRCRCR
+An tfDl AlqTrt* mn bHrh--\textbackslash tT --A ff--\textbackslash tT --Y m--\textbackslash tT --dAh--\textbackslash tT --A mnt-h--\textbackslash tT --I
+'amrh--\textbackslash tT --A\CRCRCR
+tqArb--\textbackslash tT --t Y--\textbackslash tT --A rb m--\textbackslash tT --A bYnn--\textbackslash tT --A msAf--\textbackslash tT --t* Alb`--\textbackslash tT --d
+`l--\textbackslash tT --I qdrh--\textbackslash tT --A\CRCRCR
+YA `Alm Al'asrAr `lm AlYq--\textbackslash tT --Y--\textbackslash tT --n Y--\textbackslash tT --A kAsh--\textbackslash tT --f AlD--\textbackslash tT --r
+`--\textbackslash tT --n AlbA'IsY--\textbackslash tT --n\CRCRCR
+Y--\textbackslash tT --A qAb--\textbackslash tT --l Al'a`--\textbackslash tT --dhAr `dn--\textbackslash tT --A 'il--\textbackslash tT --I Zl--\textbackslash tT --k
+f'aqb--\textbackslash tT --l tUb--\textbackslash tT --t*\\
+AltA'IbY--\textbackslash tT --n\hfill}
+\begin{verbatim}
+\end{minipage}
+\end{center}
+}
+\end{document}
+\end{verbatim}
+\caption{\TeX\ code of Fig.~\ref{oum}, Unicode input}
+\end{figure*}
+
+\subsection{Unicode input}\label{unicode}
+
+Input can be transliterated or provided directly in Unicode Arabic: \texttt{\textbackslash arab\{YAnis\}} or \texttt{\textbackslash arab\{\arabtt{YAn--is}\}} or even \texttt{\textbackslash arab\{\arabtt{YA}\,nis\}} or \texttt{\textbackslash arab\{YA\,\arabtt{n--is}\}} will produce the same result: \arab{YAnis}.
+
+All cells of Table~\ref{trans} can be obtained by the corresponding Unicode characters (mostly via a single character, except for \emph{\v{s}adda} + vowel combinations which require two characters). There is a special case, though: the \arab{LLh} ligature (see next section).
+
+For the convenience of the user who wants to write kashida (so that Arabic input is not disrupted) we have defined a command (in Arabic characters) \arabtt{tT}\textbackslash{} (\arab{tT} are the first two letters of \arab{tTUYl} = \emph{ta\d{t}Uyl}, the Arabic name of kashida) which is exactly equivalent to \verb=\kesh= and has to be placed between Unicode \textsc{U+0640 arabic tatwell} characters.
+
+\subsubsection{The \arab{LLh} ligature and Unicode}\label{allah}
+
+The \arab{LLh} ligature is traditionally used for writing the name of God: \arab{ALLh}. It can be found in religious texts, but also in expressions (for example, \arab{'in shA| ALLh} which means ``hopefully'' appears even in French language as \emph{inchallah} and in Portuguese as \emph{oxal\'a}) and in the very common surname \arab{`bd ALLh} Abdallah.
+
+The problem with this ligature is that it contains a rather rare diacritic (a \emph{\v{s}adda} combined with a vertical \emph{fat\d{h}a}---the latter us available on Apple Arabic keyboard layout but not on the Microsoft one) and, as a convenience, most standard fonts will replace the character string \emph{l\=am}-\emph{l\=am}-\emph{h\=a\hamza} (which would normally look like \arab{llh}) by the complete ligature \arab{LLh} (in other words: the font not only changes the glyphs but, at the same time, also adds the diacritics). This behavior is barely legitimate: a ligature (as in `fi' or `\arab{lA}') is normally limited to a change of glyphs, and should not add new characters (in this case, characters \textsc{U+0651 arabic shadda} and \textsc{U+0671 arabic letter superscript alef}) since this means that what is rendered does not correspond anymore to the underlying Unicode character string.
+
+Nevertheless, for the user's convenience, we have adopted that behavior also in \arab{D}, but only in the case of Unicode input. Therefore when the user types Unicode \emph{l\=am}-\emph{l\=am}-\emph{h\=a\hamza} (the first \emph{l\=am} must not be preceded by a quadriform letter), the system will produce the \arab{LLh} ligature.
+
+This method will not work if a diacritic is inserted between the two \emph{l\=am}s, or if the first \emph{l\=am} follows a quadriform letter and hence will be medial. For that case, we have defined a macro \arabtt{llh}\verb=/= (the macro name is in Arabic script so that right-to-left direction is not disrupted) which takes an argument: the vowel between the two \emph{l\=am}s. Hence, to obtain \arab{faLiLhi} the user can choose between one of the following two:
+\begin{quote}
+\arabtt{^^^^00fbi}\texttt{\{}\arabtt{^^^^00fbi}\texttt{\}}\arabtt{llh}\texttt{/}\arabtt{f--a}\\[6pt]
+\texttt{faLiLhi}
+\end{quote}
+(The dotted circle, used to show the combining nature of short vowels and other diacritics, can be obtained by the macros \verb=\arabdottedcircle= or \arabtt{dA'Irt*}\verb=/= with the macro name in Arabic script.)
+
+\begin{figure*}
+{\centering
+
+\begin{tikzpicture}[->,>=stealth',x=2cm,y=2cm,auto,node distance=3cm,
+ thick,main node/.style={circle,inner sep=1pt,draw,align=center,font=\small}]
+
+\node[main node] (8) at (-1,1) {$\emptyset$};
+\node[main node] (1) at (0,1) {$l_0$\\\arab{l}};
+\node[main node] (2) at (1.5,1) {$ll_0$\\\arab{ll}};
+\node[main node] (3) at (3,1) {$ll_5A_3$\\\arab{llA}};
+\node[main node] (4) at (3,0) {$ll_1k_3$\\\arab{llk}};
+\node[main node] (5) at (2,0) {$LLh_0$\\\arab{LLh}};
+\node[main node] (6) at (1,0) {$l_1k_3$\\\arab{lk}};
+\node[main node] (7) at (0,0) {$l_4A_4$\\\arab{lA}};
+
+\path[every node/.style={font=\small}]
+(8) edge node {$l_0$ \arab{l}} (1)
+(1) edge node {$l_0$ \arab{l}} (2)
+(2) edge node {$A_0$ \arab{A}} (3)
+(2) edge node {$k_0$ \arab{k}} (4)
+(2) edge node {$h_0$ \arab{h}} (5)
+(1) edge node {$k_0$ \arab{k}} (6)
+(1) edge node {$A_0$ \arab{A}} (7)
+;
+\end{tikzpicture}
+
+}
+\caption{Finite state automaton starting with an isolated \emph{l\=am} (\emph{\hamza$\!$alif} \arab{A} stands for the set of letter $\mathcal{A}={}\{$ \arab{A}, \arab{'a}, \arab{'i}, \arab{'A}, \arab{A*} $\}$; \arab{k} stands for any Arabic letter besides \arab{h} and set $\mathcal{A}$.\label{fsa}}
+\end{figure*}
+
+\section{\TeX nicalities}\label{technica}
+
+More information about \arab{D} (history, evolution, rationale of technical choices, \TeX nicalities) can be found in \cite{tugboat}.
+
+\bibliographystyle{plain} % we recommend the plain bibliography style
+\bibliography{dad-user-guide} % xampl.bib comes with BibTeX
+
+\end{document} \ No newline at end of file
diff --git a/language/arabic/dad/dad.adjust b/language/arabic/dad/dad.adjust
new file mode 100644
index 0000000000..c22301215f
--- /dev/null
+++ b/language/arabic/dad/dad.adjust
@@ -0,0 +1,492 @@
+KRN alif0 he0 -100
+KRN alif0 khe0 -100
+KRN alif0 dzim0 -100
+KRN alif0 tche0 -100
+KRN alifuphamza0 he0 -100
+KRN alifuphamza0 khe0 -100
+KRN alifuphamza0 dzim0 -100
+KRN alifuphamza0 tche0 -100
+KRN aliflohamza0 he0 -100
+KRN aliflohamza0 khe0 -100
+KRN aliflohamza0 dzim0 -100
+KRN aliflohamza0 tche0 -100
+KRN alifwasla0 he0 -100
+KRN alifwasla0 khe0 -100
+KRN alifwasla0 dzim0 -100
+KRN alifwasla0 tche0 -100
+KRN alifmadda0 he0 -100
+KRN alifmadda0 khe0 -100
+KRN alifmadda0 dzim0 -100
+KRN alifmadda0 tche0 -100
+KRN alif3 he0 -100
+KRN alif3 khe0 -100
+KRN alif3 dzim0 -100
+KRN alif3 tche0 -100
+KRN alifuphamza3 he0 -100
+KRN alifuphamza3 khe0 -100
+KRN alifuphamza3 dzim0 -100
+KRN alifuphamza3 tche0 -100
+KRN aliflohamza3 he0 -100
+KRN aliflohamza3 khe0 -100
+KRN aliflohamza3 dzim0 -100
+KRN aliflohamza3 tche0 -100
+KRN alifwasla3 he0 -100
+KRN alifwasla3 khe0 -100
+KRN alifwasla3 dzim0 -100
+KRN alifwasla3 tche0 -100
+KRN alifmadda3 he0 -100
+KRN alifmadda3 khe0 -100
+KRN alifmadda3 dzim0 -100
+KRN alifmadda3 tche0 -100
+KRN alif4 he0 -100
+KRN alif4 khe0 -100
+KRN alif4 dzim0 -100
+KRN alif4 tche0 -100
+KRN alifuphamza4 he0 -100
+KRN alifuphamza4 khe0 -100
+KRN alifuphamza4 dzim0 -100
+KRN alifuphamza4 tche0 -100
+KRN aliflohamza4 he0 -100
+KRN aliflohamza4 khe0 -100
+KRN aliflohamza4 dzim0 -100
+KRN aliflohamza4 tche0 -100
+KRN alifwasla4 he0 -100
+KRN alifwasla4 khe0 -100
+KRN alifwasla4 dzim0 -100
+KRN alifwasla4 tche0 -100
+KRN alifmadda43 he0 -100
+KRN alifmadda43 khe0 -100
+KRN alifmadda43 dzim0 -100
+KRN alifmadda43 tche0 -100
+KRN alif5 he0 -100
+KRN alif5 khe0 -100
+KRN alif5 dzim0 -100
+KRN alif5 tche0 -100
+KRN alifuphamza5 he0 -100
+KRN alifuphamza5 khe0 -100
+KRN alifuphamza5 dzim0 -100
+KRN alifuphamza5 tche0 -100
+KRN aliflohamza5 he0 -100
+KRN aliflohamza5 khe0 -100
+KRN aliflohamza5 dzim0 -100
+KRN aliflohamza5 tche0 -100
+KRN alifwasla5 he0 -100
+KRN alifwasla5 khe0 -100
+KRN alifwasla5 dzim0 -100
+KRN alifwasla5 tche0 -100
+KRN alifmadda5 he0 -100
+KRN alifmadda5 khe0 -100
+KRN alifmadda5 dzim0 -100
+KRN alifmadda5 tche0 -100
+KRN alif0 ayn0 -150
+KRN alif0 ghayn0 -150
+KRN alifuphamza0 ayn0 -150
+KRN alifuphamza0 ghayn0 -150
+KRN aliflohamza0 ayn0 -150
+KRN aliflohamza0 ghayn0 -150
+KRN alifwasla0 ayn0 -150
+KRN alifwasla0 ghayn0 -150
+KRN alifmadda0 ayn0 -150
+KRN alifmadda0 ghayn0 -150
+KRN alif3 ayn0 -150
+KRN alif3 ghayn0 -150
+KRN alifuphamza3 ayn0 -150
+KRN alifuphamza3 ghayn0 -150
+KRN aliflohamza3 ayn0 -150
+KRN aliflohamza3 ghayn0 -150
+KRN alifwasla3 ayn0 -150
+KRN alifwasla3 ghayn0 -150
+KRN alifmadda3 ayn0 -150
+KRN alifmadda3 ghayn0 -150
+KRN alif4 ayn0 -150
+KRN alif4 ghayn0 -150
+KRN alifuphamza4 ayn0 -150
+KRN alifuphamza4 ghayn0 -150
+KRN aliflohamza4 ayn0 -150
+KRN aliflohamza4 ghayn0 -150
+KRN alifwasla4 ayn0 -150
+KRN alifwasla4 ghayn0 -150
+KRN alifmadda43 ayn0 -150
+KRN alifmadda43 ghayn0 -150
+KRN alif5 ayn0 -150
+KRN alif5 ghayn0 -150
+KRN alifuphamza5 ayn0 -150
+KRN alifuphamza5 ghayn0 -150
+KRN aliflohamza5 ayn0 -150
+KRN aliflohamza5 ghayn0 -150
+KRN alifwasla5 ayn0 -150
+KRN alifwasla5 ghayn0 -150
+KRN alifmadda5 ayn0 -150
+KRN alifmadda5 ghayn0 -150
+KRN ra0 he0 -100
+KRN ra0 khe0 -100
+KRN ra0 dzim0 -100
+KRN ra0 tche0 -100
+KRN ra3 he0 -100
+KRN ra3 khe0 -100
+KRN ra3 dzim0 -100
+KRN ra3 tche0 -100
+KRN za0 he0 -100
+KRN za0 khe0 -100
+KRN za0 dzim0 -100
+KRN za0 tche0 -100
+KRN za3 he0 -100
+KRN za3 khe0 -100
+KRN za3 dzim0 -100
+KRN za3 tche0 -100
+KRN zhe0 he0 -100
+KRN zhe0 khe0 -100
+KRN zhe0 dzim0 -100
+KRN zhe0 tche0 -100
+KRN zhe3 he0 -100
+KRN zhe3 khe0 -100
+KRN zhe3 dzim0 -100
+KRN zhe3 tche0 -100
+KRN ra0 ayn0 -100
+KRN ra0 ghayn0 -100
+KRN ra3 ayn0 -100
+KRN ra3 ghayn0 -100
+KRN za0 ayn0 -100
+KRN za0 ghayn0 -100
+KRN za3 ayn0 -100
+KRN za3 ghayn0 -100
+KRN zhe0 ayn0 -100
+KRN zhe0 ghayn0 -100
+KRN zhe3 ayn0 -100
+KRN zhe3 ghayn0 -100
+KRN ra0 he0 -100
+KRN ra0 khe0 -100
+KRN ra0 dzim0 -100
+KRN ra0 tche0 -100
+KRN ra3 he0 -100
+KRN ra3 khe0 -100
+KRN ra3 dzim0 -100
+KRN ra3 tche0 -100
+KRN za0 he0 -100
+KRN za0 khe0 -100
+KRN za0 dzim0 -100
+KRN za0 tche0 -100
+KRN za3 he0 -100
+KRN za3 khe0 -100
+KRN za3 dzim0 -100
+KRN za3 tche0 -100
+KRN zhe0 he0 -100
+KRN zhe0 khe0 -100
+KRN zhe0 dzim0 -100
+KRN zhe0 tche0 -100
+KRN zhe3 he0 -100
+KRN zhe3 khe0 -100
+KRN zhe3 dzim0 -100
+KRN zhe3 tche0 -100
+KRN ra0 alif0 -100
+KRN ra0 alifuphamza0 -100
+KRN ra0 aliflohamza0 -100
+KRN ra0 alifwasla0 -100
+KRN ra0 alifmadda0 -100
+KRN ra3 alif0 -100
+KRN ra3 alifuphamza0 -100
+KRN ra3 aliflohamza0 -100
+KRN ra3 alifwasla0 -100
+KRN ra3 alifmadda0 -100
+# KRN za0 alif0 -100
+# KRN za0 alifuphamza0 -100
+# KRN za0 aliflohamza0 -100
+# KRN za0 alifwasla0 -100
+# KRN za0 alifmadda0 -100
+# KRN za3 alif0 -100
+# KRN za3 alifuphamza0 -100
+# KRN za3 aliflohamza0 -100
+# KRN za3 alifwasla0 -100
+# KRN za3 alifmadda0 -100
+# KRN zhe0 alif0 -100
+# KRN zhe0 alifuphamza0 -100
+# KRN zhe0 aliflohamza0 -100
+# KRN zhe0 alifwasla0 -100
+# KRN zhe0 alifmadda0 -100
+# KRN zhe3 alif0 -100
+# KRN zhe3 alifuphamza0 -100
+# KRN zhe3 aliflohamza0 -100
+# KRN zhe3 alifwasla0 -100
+# KRN zhe3 alifmadda0 -100
+KRN ra0 lam4 -50
+KRN ra3 lam4 -50
+KRN za0 lam4 -50
+KRN za3 lam4 -50
+KRN zhe0 lam4 -50
+KRN zhe3 lam4 -50
+KRN dal0 he0 -100
+KRN dal0 khe0 -100
+KRN dal0 dzim0 -100
+KRN dal0 tche0 -100
+KRN dal3 he0 -100
+KRN dal3 khe0 -100
+KRN dal3 dzim0 -100
+KRN dal3 tche0 -100
+KRN dhal0 he0 -100
+KRN dhal0 khe0 -100
+KRN dhal0 dzim0 -100
+KRN dhal0 tche0 -100
+KRN dhal3 he0 -100
+KRN dhal3 khe0 -100
+KRN dhal3 dzim0 -100
+KRN dhal3 tche0 -100
+KRN dal0 ayn0 -150
+KRN dal0 ghayn0 -150
+KRN dal3 ayn0 -150
+KRN dal3 ghayn0 -150
+KRN dhal0 ayn0 -150
+KRN dhal0 ghayn0 -150
+KRN dhal3 ayn0 -150
+KRN dhal3 ghayn0 -150
+ADJ tche0 #UVOWEL# 0 -200
+ADJ tche1 #UVOWEL# 0 -200
+ADJ tche2 #UVOWEL# 0 -200
+ADJ tche3 #UVOWEL# 0 -200
+ADJ he0 #UVOWEL# 0 -200
+ADJ he1 #UVOWEL# 0 -200
+ADJ he2 #UVOWEL# 0 -200
+ADJ he3 #UVOWEL# 0 -200
+ADJ he1 #LVOWEL# 0 150
+ADJ he2 #LVOWEL# 0 150
+ADJ khe1 #LVOWEL# 0 150
+ADJ khe2 #LVOWEL# 0 150
+ADJ khe0 #UVOWEL# 0 -50
+ADJ khe1 #UVOWEL# 0 -50
+ADJ khe2 #UVOWEL# 0 -50
+ADJ khe3 #UVOWEL# 0 -50
+ADJ dzim0 #UVOWEL# 0 -200
+ADJ dzim1 #UVOWEL# 0 -200
+ADJ dzim2 #UVOWEL# 0 -200
+ADJ dzim3 #UVOWEL# 0 -200
+ADJ dad0 #UVOWEL# 0 -200
+ADJ dad1 #UVOWEL# 50 -200
+ADJ dad2 #UVOWEL# 50 -200
+ADJ dad3 #UVOWEL# 0 -200
+ADJ dad1 #LVOWEL# 50 150
+ADJ dad2 #LVOWEL# 50 150
+ADJ alifmaqsura0 #UVOWEL# 0 -300
+ADJ alifmaqsura1 #UVOWEL# 0 -300
+ADJ alifmaqsura2 #UVOWEL# 0 -300
+ADJ alifmaqsura3 #UVOWEL# 0 -300
+ADJ ghayn1 #LVOWEL# 0 150
+ADJ ghayn2 #LVOWEL# 0 150
+ADJ sad0 #UVOWEL# 0 -200
+ADJ sad1 #UVOWEL# 50 -200
+ADJ sad2 #UVOWEL# 50 -200
+ADJ sad3 #UVOWEL# 0 -200
+ADJ sad1 #LVOWEL# 50 150
+ADJ sad2 #LVOWEL# 50 150
+ADJ tta0 #LVOWEL# 0 150
+ADJ tta1 #LVOWEL# 0 150
+ADJ tta2 #LVOWEL# 0 150
+ADJ tta3 #LVOWEL# 0 150
+ADJ zza0 #LVOWEL# 0 150
+ADJ zza1 #LVOWEL# 0 150
+ADJ zza2 #LVOWEL# 0 150
+ADJ zza3 #LVOWEL# 0 150
+ADJ waw0 #UVOWEL# 0 -200
+ADJ waw3 #UVOWEL# 0 -200
+ADJ ayn0 #UVOWEL# 0 -200
+ADJ ayn1 #UVOWEL# 0 -200
+ADJ ayn2 #UVOWEL# 0 -200
+ADJ ayn3 #UVOWEL# 0 -200
+ADJ ayn1 #LVOWEL# 0 150
+ADJ ayn2 #LVOWEL# 0 150
+ADJ ba0 #UVOWEL# 0 -200
+ADJ ba1 #UVOWEL# 0 -200
+ADJ ba2 #UVOWEL# 0 -200
+ADJ ba3 #UVOWEL# 0 -200
+ADJ banodots0 #UVOWEL# 0 -300
+ADJ banodots1 #UVOWEL# 0 -300
+ADJ banodots2 #UVOWEL# 0 -300
+ADJ banodots3 #UVOWEL# 0 -300
+ADJ banodots0 #LVOWEL# 0 150
+ADJ banodots1 #LVOWEL# 0 150
+ADJ banodots2 #LVOWEL# 0 150
+ADJ banodots3 #LVOWEL# 0 150
+ADJ pe0 #UVOWEL# 0 -200
+ADJ pe1 #UVOWEL# 0 -200
+ADJ pe2 #UVOWEL# 0 -200
+ADJ pe3 #UVOWEL# 0 -200
+ADJ ta0 #UVOWEL# 0 -150
+ADJ ta3 #UVOWEL# 0 -150
+ADJ ta0 #LVOWEL# 0 150
+ADJ ta1 #LVOWEL# 0 150
+ADJ ta2 #LVOWEL# 0 150
+ADJ ta3 #LVOWEL# 0 150
+ADJ tha0 #LVOWEL# 0 150
+ADJ tha1 #LVOWEL# 0 150
+ADJ tha2 #LVOWEL# 0 150
+ADJ tha3 #LVOWEL# 0 150
+ADJ tha0 #UVOWEL# 0 0
+ADJ tha1 #UVOWEL# -50 50
+ADJ tha2 #UVOWEL# -50 50
+ADJ tha3 #UVOWEL# 0 0
+ADJ dal0 #UVOWEL# 0 -200
+ADJ dal3 #UVOWEL# 0 -200
+ADJ dal0 #LVOWEL# 0 150
+ADJ dal3 #LVOWEL# 0 150
+ADJ fa0 #LVOWEL# 0 150
+ADJ fa1 #LVOWEL# 0 150
+ADJ fa2 #LVOWEL# 0 150
+ADJ fa3 #LVOWEL# 0 150
+ADJ fa0 #UVOWEL# 0 -200
+ADJ fa3 #UVOWEL# 0 -200
+ADJ fanodots0 #UVOWEL# 0 -200
+ADJ fanodots1 #UVOWEL# 0 -200
+ADJ fanodots2 #UVOWEL# 0 -200
+ADJ fanodots3 #UVOWEL# 0 -200
+ADJ fanodots0 #LVOWEL# 0 150
+ADJ fanodots1 #LVOWEL# 0 150
+ADJ fanodots2 #LVOWEL# 0 150
+ADJ fanodots3 #LVOWEL# 0 150
+ADJ gaf0 #LVOWEL# 0 150
+ADJ gaf1 #LVOWEL# 0 150
+ADJ gaf2 #LVOWEL# 0 150
+ADJ gaf3 #LVOWEL# 0 150
+ADJ gaf0 #UVOWEL# 0 -100
+ADJ gaf3 #UVOWEL# 0 -100
+ADJ kaf0 #LVOWEL# 0 150
+ADJ kaf1 #LVOWEL# 0 150
+ADJ kaf2 #LVOWEL# 0 150
+ADJ kaf3 #LVOWEL# 0 150
+ADJ kaf0 #UVOWEL# 0 -150
+ADJ kaf3 #UVOWEL# 0 -150
+ADJ ha0 #LVOWEL# 0 150
+ADJ ha1 #LVOWEL# 0 150
+ADJ ha3 #LVOWEL# 0 150
+ADJ ha4 #LVOWEL# 50 150
+ADJ ha0 #UVOWEL# 0 -150
+ADJ ha1 #UVOWEL# 0 -150
+ADJ ha2 #UVOWEL# 0 -150
+ADJ ha3 #UVOWEL# 0 -150
+ADJ ha4 #UVOWEL# 0 -150
+ADJ lam0 #UVOWEL# -50 -150
+ADJ lam3 #UVOWEL# -50 -150
+ADJ lam6 #UVOWEL# -50 -150
+# ADJ lam7 #UVOWEL# -50 -150
+ADJ lam8 #UVOWEL# -50 -150
+ADJ lam1 #LVOWEL# 50 150
+ADJ lam2 #LVOWEL# 50 150
+ADJ lam4 #LVOWEL# 50 150
+ADJ lam5 #LVOWEL# 50 150
+ADJ lam6 #LVOWEL# 50 150
+ADJ lam7 #LVOWEL# 50 150
+ADJ lam8 #LVOWEL# 50 150
+ADJ meem0 #UVOWEL# 0 -200
+ADJ meem1 #UVOWEL# 0 -200
+ADJ meem2 #UVOWEL# 0 -200
+ADJ meem3 #UVOWEL# 0 -200
+ADJ meem0 #LVOWEL# 0 -50
+ADJ meem1 #LVOWEL# 0 150
+ADJ meem2 #LVOWEL# 0 150
+ADJ meem3 #LVOWEL# 0 -50
+ADJ nun0 #UVOWEL# 0 -100
+ADJ nun1 #UVOWEL# 0 -50
+ADJ nun2 #UVOWEL# 0 -50
+ADJ nun3 #UVOWEL# 0 -100
+ADJ nun1 #LVOWEL# 0 150
+ADJ nun2 #LVOWEL# 0 150
+ADJ nunnodots0 #UVOWEL# 0 -300
+ADJ nunnodots1 #UVOWEL# 0 -300
+ADJ nunnodots2 #UVOWEL# 0 -300
+ADJ nunnodots3 #UVOWEL# 0 -300
+ADJ nunnodots1 #LVOWEL# 0 150
+ADJ nunnodots2 #LVOWEL# 0 150
+ADJ qaf0 #UVOWEL# 0 -100
+ADJ qaf3 #UVOWEL# 0 -100
+ADJ qaf1 #LVOWEL# 0 150
+ADJ qaf2 #LVOWEL# 0 150
+ADJ qafnodots0 #UVOWEL# 0 -200
+ADJ qafnodots1 #UVOWEL# 0 -200
+ADJ qafnodots2 #UVOWEL# 0 -200
+ADJ qafnodots3 #UVOWEL# 0 -200
+ADJ qafnodots1 #LVOWEL# 0 150
+ADJ qafnodots2 #LVOWEL# 0 150
+ADJ ra0 #UVOWEL# 0 -300
+ADJ ra3 #UVOWEL# 0 -300
+ADJ sin0 #UVOWEL# 0 -200
+ADJ sin1 #UVOWEL# 0 -200
+ADJ sin2 #UVOWEL# 0 -200
+ADJ sin3 #UVOWEL# 0 -200
+ADJ sin1 #LVOWEL# 0 150
+ADJ sin2 #LVOWEL# 0 150
+ADJ va0 #LVOWEL# 0 150
+ADJ va1 #LVOWEL# 0 150
+ADJ va2 #LVOWEL# 0 150
+ADJ va3 #LVOWEL# 0 150
+ADJ va0 #UVOWEL# 0 -200
+ADJ va3 #UVOWEL# 0 -200
+ADJ ya0 #UVOWEL# 0 -200
+ADJ ya1 #UVOWEL# 0 -200
+ADJ ya2 #UVOWEL# 0 -200
+ADJ ya3 #UVOWEL# 0 -300
+ADJ ya0 #LVOWEL# 0 -100
+ADJ ya3 #LVOWEL# 0 -100
+ADJ za0 #UVOWEL# 0 -100
+ADJ za3 #UVOWEL# 0 -100
+ADJ dhal0 #LVOWEL# 0 150
+ADJ dhal3 #LVOWEL# 0 150
+ADJ shin0 #UVOWEL# 0 -200
+ADJ shin1 #UVOWEL# 0 -200
+ADJ shin2 #UVOWEL# 0 -200
+ADJ shin3 #UVOWEL# 0 -200
+ADJ shin1 #LVOWEL# 0 150
+ADJ shin2 #LVOWEL# 0 150
+ADJ tamarbuta0 #LVOWEL# 0 150
+ADJ tamarbuta1 #LVOWEL# 0 150
+ADJ tamarbuta2 #LVOWEL# 0 150
+ADJ tamarbuta3 #LVOWEL# 0 150
+ADJ alif0 #LVOWEL# 75 150
+ADJ alif3 #LVOWEL# 100 150
+ADJ alif4 #LVOWEL# 0 150
+ADJ alif5 #LVOWEL# 0 150
+ADJ alif4 #UVOWEL# 0 -75
+ADJ alif5 #UVOWEL# 0 -75
+ADJ alifuphamza0 #LVOWEL# 0 150
+ADJ alifuphamza3 #LVOWEL# 0 150
+ADJ alifuphamza4 #LVOWEL# 0 150
+ADJ alifuphamza5 #LVOWEL# 0 150
+ADJ alifmadda0 #LVOWEL# 0 150
+ADJ alifmadda3 #LVOWEL# 0 150
+ADJ alifmadda4 #LVOWEL# 0 150
+ADJ alifmadda5 #LVOWEL# 0 150
+ADJ alifwasla0 #LVOWEL# 0 150
+ADJ alifwasla3 #LVOWEL# 0 150
+ADJ alifwasla4 #LVOWEL# 0 150
+ADJ alifwasla5 #LVOWEL# 0 150
+ADJ alifuphamza0 #UVOWEL# 0 50
+ADJ alifuphamza3 #UVOWEL# -40 30
+ADJ alifuphamza4 #UVOWEL# -50 70
+ADJ alifuphamza5 #UVOWEL# -60 40
+ADJ aliflohamza0 #LVOWEL# 100 20
+ADJ aliflohamza3 #LVOWEL# 80 60
+ADJ aliflohamza4 #LVOWEL# 80 60
+ADJ aliflohamza5 #LVOWEL# 80 30
+ADJ wawhamza0 #UVOWEL# 20 -140
+ADJ wawhamza3 #UVOWEL# 20 -140
+ADJ yahamza0 #UVOWEL# -80 -90
+ADJ yahamza1 #UVOWEL# 0 -30
+ADJ yahamza2 #UVOWEL# 0 -30
+ADJ yahamza3 #UVOWEL# -80 -170
+ADJ yahamza1 #LVOWEL# 50 150
+ADJ yahamza2 #LVOWEL# 50 150
+ADJ hamza0 #UVOWEL# -30 -300
+ADJ hamza0 #LVOWEL# 30 270
+ADJ lam6 #UVOWEL# 10 0
+ADJ keshideh0 #UVOWEL# 0 -300
+ADJ keshideh1 #UVOWEL# 0 -300
+ADJ keshideh2 #UVOWEL# 0 -300
+ADJ keshideh3 #UVOWEL# 0 -300
+ADJ keshideh0 #LVOWEL# 0 150
+ADJ keshideh1 #LVOWEL# 0 150
+ADJ keshideh2 #LVOWEL# 0 150
+ADJ keshideh3 #LVOWEL# 0 150
+ADJ zwj0 #UVOWEL# 0 -300
+ADJ zwj1 #UVOWEL# 0 -300
+ADJ zwj2 #UVOWEL# 0 -300
+ADJ zwj3 #UVOWEL# 0 -300
+ADJ zwj0 #LVOWEL# 0 150
+ADJ zwj1 #LVOWEL# 0 150
+ADJ zwj2 #LVOWEL# 0 150
+ADJ zwj3 #LVOWEL# 0 150
diff --git a/language/arabic/dad/dad.map b/language/arabic/dad/dad.map
new file mode 100644
index 0000000000..472294183d
--- /dev/null
+++ b/language/arabic/dad/dad.map
@@ -0,0 +1,3 @@
+dadreal Dad <Dad.pfb
+dadrealbold Dad-Bold <Dad-bold.pfb
+dadrealmono Dad-Mono <Dad-mono.pfb
diff --git a/language/arabic/dad/dad.ofm b/language/arabic/dad/dad.ofm
new file mode 100644
index 0000000000..bd1e54f416
--- /dev/null
+++ b/language/arabic/dad/dad.ofm
Binary files differ
diff --git a/language/arabic/dad/dad.ovf b/language/arabic/dad/dad.ovf
new file mode 100644
index 0000000000..302f0923cc
--- /dev/null
+++ b/language/arabic/dad/dad.ovf
Binary files differ
diff --git a/language/arabic/dad/dad.sty b/language/arabic/dad/dad.sty
new file mode 100644
index 0000000000..336dc01bbe
--- /dev/null
+++ b/language/arabic/dad/dad.sty
@@ -0,0 +1,31 @@
+%%% ====================================================================
+%%% @LaTeX-style-file{
+%%% filename = "dad.sty",
+%%% version = "1.2",
+%%% date = "2017/05/20",
+%%% author = "Yannis Haralambous",
+%%% copyright = "This file is part of the dad package, released
+%%% under the LPPL."
+%%% keywords = "TeX, file header,
+%%% supported = "yes",
+%%% abstract = "This is the LaTeX style file of the dad
+%%% system for typesetting in the Arabic language.",
+%%% }
+%%% ====================================================================
+\RequirePackage{luatex85}
+\long\def\arab#1{\bgroup\language-1\fontencoding{OT1}\fontfamily{dad}\selectfont\textdir TRT#1\egroup}
+\def\arabttexample#1{\arab{#1} $=$ \texttt{#1}}
+\long\def\arabtt#1{\bgroup\language-1\fontencoding{OT1}\fontfamily{dad}\fontshape{mono}\selectfont\textdir TRT#1\egroup}
+\def\kesh{\leavevmode\leaders\hrule height \fontdimen8\font\hfill\kern0pt}
+\def\arabttsep#1#2{\arab{#1} $=$ \texttt{#2}}
+\def\arabdottedcircle{^^^^00fb}
+\catcode"0626=11
+\catcode"0627=11
+\catcode"0629=11
+\catcode"0631=11
+\catcode"062F=11
+\catcode"0644=11
+\catcode"0647=11
+\def\لله#1{L#1Lh}
+\def\دائرة{^^^^00fb}
+\endinput \ No newline at end of file
diff --git a/language/arabic/dad/dadbold.adjust b/language/arabic/dad/dadbold.adjust
new file mode 100644
index 0000000000..ae7059be95
--- /dev/null
+++ b/language/arabic/dad/dadbold.adjust
@@ -0,0 +1,492 @@
+KRN alif0 he0 -100
+KRN alif0 khe0 -100
+KRN alif0 dzim0 -100
+KRN alif0 tche0 -100
+KRN alifuphamza0 he0 -100
+KRN alifuphamza0 khe0 -100
+KRN alifuphamza0 dzim0 -100
+KRN alifuphamza0 tche0 -100
+KRN aliflohamza0 he0 -100
+KRN aliflohamza0 khe0 -100
+KRN aliflohamza0 dzim0 -100
+KRN aliflohamza0 tche0 -100
+KRN alifwasla0 he0 -100
+KRN alifwasla0 khe0 -100
+KRN alifwasla0 dzim0 -100
+KRN alifwasla0 tche0 -100
+KRN alifmadda0 he0 -100
+KRN alifmadda0 khe0 -100
+KRN alifmadda0 dzim0 -100
+KRN alifmadda0 tche0 -100
+KRN alif3 he0 -100
+KRN alif3 khe0 -100
+KRN alif3 dzim0 -100
+KRN alif3 tche0 -100
+KRN alifuphamza3 he0 -100
+KRN alifuphamza3 khe0 -100
+KRN alifuphamza3 dzim0 -100
+KRN alifuphamza3 tche0 -100
+KRN aliflohamza3 he0 -100
+KRN aliflohamza3 khe0 -100
+KRN aliflohamza3 dzim0 -100
+KRN aliflohamza3 tche0 -100
+KRN alifwasla3 he0 -100
+KRN alifwasla3 khe0 -100
+KRN alifwasla3 dzim0 -100
+KRN alifwasla3 tche0 -100
+KRN alifmadda3 he0 -100
+KRN alifmadda3 khe0 -100
+KRN alifmadda3 dzim0 -100
+KRN alifmadda3 tche0 -100
+KRN alif4 he0 -100
+KRN alif4 khe0 -100
+KRN alif4 dzim0 -100
+KRN alif4 tche0 -100
+KRN alifuphamza4 he0 -100
+KRN alifuphamza4 khe0 -100
+KRN alifuphamza4 dzim0 -100
+KRN alifuphamza4 tche0 -100
+KRN aliflohamza4 he0 -100
+KRN aliflohamza4 khe0 -100
+KRN aliflohamza4 dzim0 -100
+KRN aliflohamza4 tche0 -100
+KRN alifwasla4 he0 -100
+KRN alifwasla4 khe0 -100
+KRN alifwasla4 dzim0 -100
+KRN alifwasla4 tche0 -100
+KRN alifmadda43 he0 -100
+KRN alifmadda43 khe0 -100
+KRN alifmadda43 dzim0 -100
+KRN alifmadda43 tche0 -100
+KRN alif5 he0 -100
+KRN alif5 khe0 -100
+KRN alif5 dzim0 -100
+KRN alif5 tche0 -100
+KRN alifuphamza5 he0 -100
+KRN alifuphamza5 khe0 -100
+KRN alifuphamza5 dzim0 -100
+KRN alifuphamza5 tche0 -100
+KRN aliflohamza5 he0 -100
+KRN aliflohamza5 khe0 -100
+KRN aliflohamza5 dzim0 -100
+KRN aliflohamza5 tche0 -100
+KRN alifwasla5 he0 -100
+KRN alifwasla5 khe0 -100
+KRN alifwasla5 dzim0 -100
+KRN alifwasla5 tche0 -100
+KRN alifmadda5 he0 -100
+KRN alifmadda5 khe0 -100
+KRN alifmadda5 dzim0 -100
+KRN alifmadda5 tche0 -100
+KRN alif0 ayn0 -150
+KRN alif0 ghayn0 -150
+KRN alifuphamza0 ayn0 -150
+KRN alifuphamza0 ghayn0 -150
+KRN aliflohamza0 ayn0 -150
+KRN aliflohamza0 ghayn0 -150
+KRN alifwasla0 ayn0 -150
+KRN alifwasla0 ghayn0 -150
+KRN alifmadda0 ayn0 -150
+KRN alifmadda0 ghayn0 -150
+KRN alif3 ayn0 -150
+KRN alif3 ghayn0 -150
+KRN alifuphamza3 ayn0 -150
+KRN alifuphamza3 ghayn0 -150
+KRN aliflohamza3 ayn0 -150
+KRN aliflohamza3 ghayn0 -150
+KRN alifwasla3 ayn0 -150
+KRN alifwasla3 ghayn0 -150
+KRN alifmadda3 ayn0 -150
+KRN alifmadda3 ghayn0 -150
+KRN alif4 ayn0 -150
+KRN alif4 ghayn0 -150
+KRN alifuphamza4 ayn0 -150
+KRN alifuphamza4 ghayn0 -150
+KRN aliflohamza4 ayn0 -150
+KRN aliflohamza4 ghayn0 -150
+KRN alifwasla4 ayn0 -150
+KRN alifwasla4 ghayn0 -150
+KRN alifmadda43 ayn0 -150
+KRN alifmadda43 ghayn0 -150
+KRN alif5 ayn0 -150
+KRN alif5 ghayn0 -150
+KRN alifuphamza5 ayn0 -150
+KRN alifuphamza5 ghayn0 -150
+KRN aliflohamza5 ayn0 -150
+KRN aliflohamza5 ghayn0 -150
+KRN alifwasla5 ayn0 -150
+KRN alifwasla5 ghayn0 -150
+KRN alifmadda5 ayn0 -150
+KRN alifmadda5 ghayn0 -150
+KRN ra0 he0 -100
+KRN ra0 khe0 -100
+KRN ra0 dzim0 -100
+KRN ra0 tche0 -100
+KRN ra3 he0 -100
+KRN ra3 khe0 -100
+KRN ra3 dzim0 -100
+KRN ra3 tche0 -100
+KRN za0 he0 -100
+KRN za0 khe0 -100
+KRN za0 dzim0 -100
+KRN za0 tche0 -100
+KRN za3 he0 -100
+KRN za3 khe0 -100
+KRN za3 dzim0 -100
+KRN za3 tche0 -100
+KRN zhe0 he0 -100
+KRN zhe0 khe0 -100
+KRN zhe0 dzim0 -100
+KRN zhe0 tche0 -100
+KRN zhe3 he0 -100
+KRN zhe3 khe0 -100
+KRN zhe3 dzim0 -100
+KRN zhe3 tche0 -100
+KRN ra0 ayn0 -100
+KRN ra0 ghayn0 -100
+KRN ra3 ayn0 -100
+KRN ra3 ghayn0 -100
+KRN za0 ayn0 -100
+KRN za0 ghayn0 -100
+KRN za3 ayn0 -100
+KRN za3 ghayn0 -100
+KRN zhe0 ayn0 -100
+KRN zhe0 ghayn0 -100
+KRN zhe3 ayn0 -100
+KRN zhe3 ghayn0 -100
+KRN ra0 he0 -100
+KRN ra0 khe0 -100
+KRN ra0 dzim0 -100
+KRN ra0 tche0 -100
+KRN ra3 he0 -100
+KRN ra3 khe0 -100
+KRN ra3 dzim0 -100
+KRN ra3 tche0 -100
+KRN za0 he0 -100
+KRN za0 khe0 -100
+KRN za0 dzim0 -100
+KRN za0 tche0 -100
+KRN za3 he0 -100
+KRN za3 khe0 -100
+KRN za3 dzim0 -100
+KRN za3 tche0 -100
+KRN zhe0 he0 -100
+KRN zhe0 khe0 -100
+KRN zhe0 dzim0 -100
+KRN zhe0 tche0 -100
+KRN zhe3 he0 -100
+KRN zhe3 khe0 -100
+KRN zhe3 dzim0 -100
+KRN zhe3 tche0 -100
+KRN ra0 alif0 -100
+KRN ra0 alifuphamza0 -100
+KRN ra0 aliflohamza0 -100
+KRN ra0 alifwasla0 -100
+KRN ra0 alifmadda0 -100
+KRN ra3 alif0 -100
+KRN ra3 alifuphamza0 -100
+KRN ra3 aliflohamza0 -100
+KRN ra3 alifwasla0 -100
+KRN ra3 alifmadda0 -100
+# KRN za0 alif0 -100
+# KRN za0 alifuphamza0 -100
+# KRN za0 aliflohamza0 -100
+# KRN za0 alifwasla0 -100
+# KRN za0 alifmadda0 -100
+# KRN za3 alif0 -100
+# KRN za3 alifuphamza0 -100
+# KRN za3 aliflohamza0 -100
+# KRN za3 alifwasla0 -100
+# KRN za3 alifmadda0 -100
+# KRN zhe0 alif0 -100
+# KRN zhe0 alifuphamza0 -100
+# KRN zhe0 aliflohamza0 -100
+# KRN zhe0 alifwasla0 -100
+# KRN zhe0 alifmadda0 -100
+# KRN zhe3 alif0 -100
+# KRN zhe3 alifuphamza0 -100
+# KRN zhe3 aliflohamza0 -100
+# KRN zhe3 alifwasla0 -100
+# KRN zhe3 alifmadda0 -100
+KRN ra0 lam4 -50
+KRN ra3 lam4 -50
+KRN za0 lam4 -50
+KRN za3 lam4 -50
+KRN zhe0 lam4 -50
+KRN zhe3 lam4 -50
+KRN dal0 he0 -100
+KRN dal0 khe0 -100
+KRN dal0 dzim0 -100
+KRN dal0 tche0 -100
+KRN dal3 he0 -100
+KRN dal3 khe0 -100
+KRN dal3 dzim0 -100
+KRN dal3 tche0 -100
+KRN dhal0 he0 -100
+KRN dhal0 khe0 -100
+KRN dhal0 dzim0 -100
+KRN dhal0 tche0 -100
+KRN dhal3 he0 -100
+KRN dhal3 khe0 -100
+KRN dhal3 dzim0 -100
+KRN dhal3 tche0 -100
+KRN dal0 ayn0 -150
+KRN dal0 ghayn0 -150
+KRN dal3 ayn0 -150
+KRN dal3 ghayn0 -150
+KRN dhal0 ayn0 -150
+KRN dhal0 ghayn0 -150
+KRN dhal3 ayn0 -150
+KRN dhal3 ghayn0 -150
+ADJ tche0 #UVOWEL# 0 -200
+ADJ tche1 #UVOWEL# 0 -200
+ADJ tche2 #UVOWEL# 0 -200
+ADJ tche3 #UVOWEL# 0 -200
+ADJ he0 #UVOWEL# 0 -200
+ADJ he1 #UVOWEL# 0 -200
+ADJ he2 #UVOWEL# 0 -200
+ADJ he3 #UVOWEL# 0 -200
+ADJ he1 #LVOWEL# 0 150
+ADJ he2 #LVOWEL# 0 150
+ADJ khe1 #LVOWEL# 0 150
+ADJ khe2 #LVOWEL# 0 150
+ADJ khe0 #UVOWEL# 0 -50
+ADJ khe1 #UVOWEL# 0 -50
+ADJ khe2 #UVOWEL# 0 -50
+ADJ khe3 #UVOWEL# 0 -50
+ADJ dzim0 #UVOWEL# 0 -200
+ADJ dzim1 #UVOWEL# 0 -200
+ADJ dzim2 #UVOWEL# 0 -200
+ADJ dzim3 #UVOWEL# 0 -200
+ADJ dad0 #UVOWEL# 0 -200
+ADJ dad1 #UVOWEL# 50 -200
+ADJ dad2 #UVOWEL# 50 -200
+ADJ dad3 #UVOWEL# 0 -200
+ADJ dad1 #LVOWEL# 50 150
+ADJ dad2 #LVOWEL# 50 150
+ADJ alifmaqsura0 #UVOWEL# 0 -300
+ADJ alifmaqsura1 #UVOWEL# 0 -300
+ADJ alifmaqsura2 #UVOWEL# 0 -300
+ADJ alifmaqsura3 #UVOWEL# 0 -300
+ADJ ghayn1 #LVOWEL# 0 150
+ADJ ghayn2 #LVOWEL# 0 150
+ADJ sad0 #UVOWEL# 0 -200
+ADJ sad1 #UVOWEL# 50 -200
+ADJ sad2 #UVOWEL# 50 -200
+ADJ sad3 #UVOWEL# 0 -200
+ADJ sad1 #LVOWEL# 50 150
+ADJ sad2 #LVOWEL# 50 150
+ADJ tta0 #LVOWEL# 0 150
+ADJ tta1 #LVOWEL# 0 150
+ADJ tta2 #LVOWEL# 0 150
+ADJ tta3 #LVOWEL# 0 150
+ADJ zza0 #LVOWEL# 0 150
+ADJ zza1 #LVOWEL# 0 150
+ADJ zza2 #LVOWEL# 0 150
+ADJ zza3 #LVOWEL# 0 150
+ADJ waw0 #UVOWEL# 0 -200
+ADJ waw3 #UVOWEL# 0 -200
+ADJ ayn0 #UVOWEL# 0 -200
+ADJ ayn1 #UVOWEL# 0 -200
+ADJ ayn2 #UVOWEL# 0 -200
+ADJ ayn3 #UVOWEL# 0 -200
+ADJ ayn1 #LVOWEL# 0 150
+ADJ ayn2 #LVOWEL# 0 150
+ADJ ba0 #UVOWEL# 0 -200
+ADJ ba1 #UVOWEL# 0 -200
+ADJ ba2 #UVOWEL# 0 -200
+ADJ ba3 #UVOWEL# 0 -200
+ADJ banodots0 #UVOWEL# 0 -300
+ADJ banodots1 #UVOWEL# 0 -300
+ADJ banodots2 #UVOWEL# 0 -300
+ADJ banodots3 #UVOWEL# 0 -300
+ADJ banodots0 #LVOWEL# 0 150
+ADJ banodots1 #LVOWEL# 0 150
+ADJ banodots2 #LVOWEL# 0 150
+ADJ banodots3 #LVOWEL# 0 150
+ADJ pe0 #UVOWEL# 0 -200
+ADJ pe1 #UVOWEL# 0 -200
+ADJ pe2 #UVOWEL# 0 -200
+ADJ pe3 #UVOWEL# 0 -200
+ADJ ta0 #UVOWEL# 0 -150
+ADJ ta3 #UVOWEL# 0 -150
+ADJ ta0 #LVOWEL# 0 150
+ADJ ta1 #LVOWEL# 0 150
+ADJ ta2 #LVOWEL# 0 150
+ADJ ta3 #LVOWEL# 0 150
+ADJ tha0 #LVOWEL# 0 150
+ADJ tha1 #LVOWEL# 0 150
+ADJ tha2 #LVOWEL# 0 150
+ADJ tha3 #LVOWEL# 0 150
+ADJ tha0 #UVOWEL# 0 0
+ADJ tha1 #UVOWEL# -50 50
+ADJ tha2 #UVOWEL# -50 50
+ADJ tha3 #UVOWEL# 0 0
+ADJ dal0 #UVOWEL# 0 -200
+ADJ dal3 #UVOWEL# 0 -200
+ADJ dal0 #LVOWEL# 0 150
+ADJ dal3 #LVOWEL# 0 150
+ADJ fa0 #LVOWEL# 0 150
+ADJ fa1 #LVOWEL# 0 150
+ADJ fa2 #LVOWEL# 0 150
+ADJ fa3 #LVOWEL# 0 150
+ADJ fa0 #UVOWEL# 0 -200
+ADJ fa3 #UVOWEL# 0 -200
+ADJ fanodots0 #UVOWEL# 0 -200
+ADJ fanodots1 #UVOWEL# 0 -200
+ADJ fanodots2 #UVOWEL# 0 -200
+ADJ fanodots3 #UVOWEL# 0 -200
+ADJ fanodots0 #LVOWEL# 0 150
+ADJ fanodots1 #LVOWEL# 0 150
+ADJ fanodots2 #LVOWEL# 0 150
+ADJ fanodots3 #LVOWEL# 0 150
+ADJ gaf0 #LVOWEL# 0 150
+ADJ gaf1 #LVOWEL# 0 150
+ADJ gaf2 #LVOWEL# 0 150
+ADJ gaf3 #LVOWEL# 0 150
+ADJ gaf0 #UVOWEL# 0 -100
+ADJ gaf3 #UVOWEL# 0 -100
+ADJ kaf0 #LVOWEL# 0 150
+ADJ kaf1 #LVOWEL# 0 150
+ADJ kaf2 #LVOWEL# 0 150
+ADJ kaf3 #LVOWEL# 0 150
+ADJ kaf0 #UVOWEL# 0 -150
+ADJ kaf3 #UVOWEL# 0 -150
+ADJ ha0 #LVOWEL# 0 150
+ADJ ha1 #LVOWEL# 0 150
+ADJ ha3 #LVOWEL# 0 150
+ADJ ha4 #LVOWEL# 50 150
+ADJ ha0 #UVOWEL# 0 -150
+ADJ ha1 #UVOWEL# 0 -150
+ADJ ha2 #UVOWEL# 0 -150
+ADJ ha3 #UVOWEL# 0 -150
+ADJ ha4 #UVOWEL# 0 -150
+ADJ lam0 #UVOWEL# -50 -150
+ADJ lam3 #UVOWEL# -50 -150
+ADJ lam6 #UVOWEL# -50 -150
+ADJ lam7 #UVOWEL# -50 -150
+ADJ lam8 #UVOWEL# -50 -150
+ADJ lam1 #LVOWEL# 50 150
+ADJ lam2 #LVOWEL# 50 150
+ADJ lam4 #LVOWEL# 50 150
+ADJ lam5 #LVOWEL# 50 150
+ADJ lam6 #LVOWEL# 50 150
+ADJ lam7 #LVOWEL# 50 150
+ADJ lam8 #LVOWEL# 50 150
+ADJ meem0 #UVOWEL# 0 -200
+ADJ meem1 #UVOWEL# 0 -200
+ADJ meem2 #UVOWEL# 0 -200
+ADJ meem3 #UVOWEL# 0 -200
+ADJ meem0 #LVOWEL# 0 -50
+ADJ meem1 #LVOWEL# 0 150
+ADJ meem2 #LVOWEL# 0 150
+ADJ meem3 #LVOWEL# 0 -50
+ADJ nun0 #UVOWEL# 0 -100
+ADJ nun1 #UVOWEL# 0 -50
+ADJ nun2 #UVOWEL# 0 -50
+ADJ nun3 #UVOWEL# 0 -100
+ADJ nun1 #LVOWEL# 0 150
+ADJ nun2 #LVOWEL# 0 150
+ADJ nunnodots0 #UVOWEL# 0 -300
+ADJ nunnodots1 #UVOWEL# 0 -300
+ADJ nunnodots2 #UVOWEL# 0 -300
+ADJ nunnodots3 #UVOWEL# 0 -300
+ADJ nunnodots1 #LVOWEL# 0 150
+ADJ nunnodots2 #LVOWEL# 0 150
+ADJ qaf0 #UVOWEL# 0 -100
+ADJ qaf3 #UVOWEL# 0 -100
+ADJ qaf1 #LVOWEL# 0 150
+ADJ qaf2 #LVOWEL# 0 150
+ADJ qafnodots0 #UVOWEL# 0 -200
+ADJ qafnodots1 #UVOWEL# 0 -200
+ADJ qafnodots2 #UVOWEL# 0 -200
+ADJ qafnodots3 #UVOWEL# 0 -200
+ADJ qafnodots1 #LVOWEL# 0 150
+ADJ qafnodots2 #LVOWEL# 0 150
+ADJ ra0 #UVOWEL# 0 -300
+ADJ ra3 #UVOWEL# 0 -300
+ADJ sin0 #UVOWEL# 0 -200
+ADJ sin1 #UVOWEL# 0 -200
+ADJ sin2 #UVOWEL# 0 -200
+ADJ sin3 #UVOWEL# 0 -200
+ADJ sin1 #LVOWEL# 0 150
+ADJ sin2 #LVOWEL# 0 150
+ADJ va0 #LVOWEL# 0 150
+ADJ va1 #LVOWEL# 0 150
+ADJ va2 #LVOWEL# 0 150
+ADJ va3 #LVOWEL# 0 150
+ADJ va0 #UVOWEL# 0 -200
+ADJ va3 #UVOWEL# 0 -200
+ADJ ya0 #UVOWEL# 0 -200
+ADJ ya1 #UVOWEL# 0 -200
+ADJ ya2 #UVOWEL# 0 -200
+ADJ ya3 #UVOWEL# 0 -300
+ADJ ya0 #LVOWEL# 0 -100
+ADJ ya3 #LVOWEL# 0 -100
+ADJ za0 #UVOWEL# 0 -100
+ADJ za3 #UVOWEL# 0 -100
+ADJ dhal0 #LVOWEL# 0 150
+ADJ dhal3 #LVOWEL# 0 150
+ADJ shin0 #UVOWEL# 0 -200
+ADJ shin1 #UVOWEL# 0 -200
+ADJ shin2 #UVOWEL# 0 -200
+ADJ shin3 #UVOWEL# 0 -200
+ADJ shin1 #LVOWEL# 0 150
+ADJ shin2 #LVOWEL# 0 150
+ADJ tamarbuta0 #LVOWEL# 0 150
+ADJ tamarbuta1 #LVOWEL# 0 150
+ADJ tamarbuta2 #LVOWEL# 0 150
+ADJ tamarbuta3 #LVOWEL# 0 150
+ADJ alif0 #LVOWEL# 75 150
+ADJ alif3 #LVOWEL# 100 150
+ADJ alif4 #LVOWEL# 50 150
+ADJ alif5 #LVOWEL# 0 150
+ADJ alif4 #UVOWEL# 0 -75
+ADJ alif5 #UVOWEL# 0 -75
+ADJ alifuphamza0 #LVOWEL# 0 150
+ADJ alifuphamza3 #LVOWEL# 0 150
+ADJ alifuphamza4 #LVOWEL# 0 150
+ADJ alifuphamza5 #LVOWEL# 0 150
+ADJ alifmadda0 #LVOWEL# 0 150
+ADJ alifmadda3 #LVOWEL# 0 150
+ADJ alifmadda4 #LVOWEL# 0 150
+ADJ alifmadda5 #LVOWEL# 0 150
+ADJ alifwasla0 #LVOWEL# 0 150
+ADJ alifwasla3 #LVOWEL# 0 150
+ADJ alifwasla4 #LVOWEL# 0 150
+ADJ alifwasla5 #LVOWEL# 0 150
+ADJ alifuphamza0 #UVOWEL# 0 -40
+ADJ alifuphamza3 #UVOWEL# -40 -40
+ADJ alifuphamza4 #UVOWEL# -70 -10
+ADJ alifuphamza5 #UVOWEL# -60 -40
+ADJ aliflohamza0 #LVOWEL# 100 160
+ADJ aliflohamza3 #LVOWEL# 70 140
+ADJ aliflohamza4 #LVOWEL# 60 50
+ADJ aliflohamza5 #LVOWEL# 40 40
+ADJ wawhamza0 #UVOWEL# 0 -60
+ADJ wawhamza3 #UVOWEL# 40 -60
+ADJ yahamza0 #UVOWEL# -80 -90
+ADJ yahamza1 #UVOWEL# 0 -60
+ADJ yahamza2 #UVOWEL# 0 -60
+ADJ yahamza3 #UVOWEL# -80 -220
+ADJ yahamza1 #LVOWEL# 50 150
+ADJ yahamza2 #LVOWEL# 50 150
+ADJ hamza0 #UVOWEL# 30 -250
+ADJ hamza0 #LVOWEL# 90 260
+ADJ lam6 #UVOWEL# 10 0
+ADJ keshideh0 #UVOWEL# 0 -300
+ADJ keshideh1 #UVOWEL# 0 -300
+ADJ keshideh2 #UVOWEL# 0 -300
+ADJ keshideh3 #UVOWEL# 0 -300
+ADJ keshideh0 #LVOWEL# 0 150
+ADJ keshideh1 #LVOWEL# 0 150
+ADJ keshideh2 #LVOWEL# 0 150
+ADJ keshideh3 #LVOWEL# 0 150
+ADJ zwj0 #UVOWEL# 0 -300
+ADJ zwj1 #UVOWEL# 0 -300
+ADJ zwj2 #UVOWEL# 0 -300
+ADJ zwj3 #UVOWEL# 0 -300
+ADJ zwj0 #LVOWEL# 0 150
+ADJ zwj1 #LVOWEL# 0 150
+ADJ zwj2 #LVOWEL# 0 150
+ADJ zwj3 #LVOWEL# 0 150
diff --git a/language/arabic/dad/dadbold.ofm b/language/arabic/dad/dadbold.ofm
new file mode 100644
index 0000000000..39c4ed824b
--- /dev/null
+++ b/language/arabic/dad/dadbold.ofm
Binary files differ
diff --git a/language/arabic/dad/dadbold.ovf b/language/arabic/dad/dadbold.ovf
new file mode 100644
index 0000000000..79bb7783b1
--- /dev/null
+++ b/language/arabic/dad/dadbold.ovf
Binary files differ
diff --git a/language/arabic/dad/dadmono.adjust b/language/arabic/dad/dadmono.adjust
new file mode 100644
index 0000000000..ce821bb99c
--- /dev/null
+++ b/language/arabic/dad/dadmono.adjust
@@ -0,0 +1,325 @@
+# ADJ lam7 #UVOWEL# -50 -150
+ADJ alif0 #LVOWEL# 0 0
+ADJ alif3 #LVOWEL# 0 0
+ADJ alif4 #LVOWEL# -150 0
+ADJ alif4 #UVOWEL# -150 -75
+ADJ alif5 #LVOWEL# -150 0
+ADJ alif5 #UVOWEL# -150 -75
+ADJ aliflohamza0 #LVOWEL# 0 -150
+ADJ aliflohamza3 #LVOWEL# 0 -150
+ADJ aliflohamza4 #LVOWEL# -100 -100
+ADJ aliflohamza5 #LVOWEL# -120 -170
+ADJ alifmadda0 #LVOWEL# 0 0
+ADJ alifmadda3 #LVOWEL# 0 0
+ADJ alifmadda4 #LVOWEL# 0 0
+ADJ alifmadda5 #LVOWEL# 0 0
+ADJ alifmaqsura0 #LVOWEL# 0 -100
+ADJ alifmaqsura0 #UVOWEL# 0 -250
+ADJ alifmaqsura1 #LVOWEL# 0 -250
+ADJ alifmaqsura1 #UVOWEL# 0 -250
+ADJ alifmaqsura2 #LVOWEL# 0 -250
+ADJ alifmaqsura2 #UVOWEL# 0 -250
+ADJ alifmaqsura3 #LVOWEL# 0 -250
+ADJ alifmaqsura3 #UVOWEL# 0 -500
+ADJ alifuphamza0 #LVOWEL# 0 0
+ADJ alifuphamza0 #UVOWEL# -100 100
+ADJ alifuphamza3 #LVOWEL# 0 0
+ADJ alifuphamza3 #UVOWEL# -100 100
+ADJ alifuphamza4 #LVOWEL# 0 0
+ADJ alifuphamza4 #UVOWEL# -200 100
+ADJ alifuphamza5 #LVOWEL# 0 0
+ADJ alifuphamza5 #UVOWEL# -200 100
+ADJ alifwasla0 #LVOWEL# 0 0
+ADJ alifwasla3 #LVOWEL# 0 0
+ADJ alifwasla4 #LVOWEL# 0 0
+ADJ alifwasla5 #LVOWEL# 0 0
+ADJ ayn0 #LVOWEL# 0 -250
+ADJ ayn0 #UVOWEL# 0 -200
+ADJ ayn1 #LVOWEL# 0 0
+ADJ ayn1 #UVOWEL# 0 -200
+ADJ ayn2 #LVOWEL# 0 0
+ADJ ayn2 #UVOWEL# 0 -200
+ADJ ayn3 #LVOWEL# 0 -250
+ADJ ayn3 #UVOWEL# 0 -200
+ADJ ba0 #LVOWEL# -100 -250
+ADJ ba0 #UVOWEL# 0 -200
+ADJ ba1 #LVOWEL# -100 -250
+ADJ ba1 #UVOWEL# 0 -200
+ADJ ba2 #LVOWEL# -100 -250
+ADJ ba2 #UVOWEL# 0 -200
+ADJ ba3 #LVOWEL# -100 -250
+ADJ ba3 #UVOWEL# 0 -200
+ADJ banodots0 #LVOWEL# 0 0
+ADJ banodots0 #UVOWEL# 0 -250
+ADJ banodots1 #LVOWEL# 0 0
+ADJ banodots1 #UVOWEL# 0 -250
+ADJ banodots2 #LVOWEL# 0 0
+ADJ banodots2 #UVOWEL# 0 -250
+ADJ banodots3 #LVOWEL# 0 0
+ADJ banodots3 #UVOWEL# 0 -250
+ADJ dad0 #LVOWEL# 0 -150
+ADJ dad0 #UVOWEL# 0 -100
+ADJ dad1 #UVOWEL# 50 -100
+ADJ dad2 #UVOWEL# 50 -100
+ADJ dad3 #LVOWEL# 0 -150
+ADJ dad3 #UVOWEL# 0 -100
+ADJ dal0 #LVOWEL# 0 0
+ADJ dal0 #UVOWEL# 0 -200
+ADJ dal3 #LVOWEL# 0 0
+ADJ dal3 #UVOWEL# 0 -200
+ADJ dhal0 #LVOWEL# 0 0
+ADJ dhal3 #LVOWEL# 0 0
+ADJ dzim0 #UVOWEL# 0 -200
+ADJ dzim1 #UVOWEL# 0 -200
+ADJ dzim2 #UVOWEL# 0 -200
+ADJ dzim3 #UVOWEL# 0 -200
+ADJ dzim0 #LVOWEL# 0 -250
+ADJ dzim1 #LVOWEL# 0 -100
+ADJ dzim2 #LVOWEL# 0 -200
+ADJ dzim3 #LVOWEL# 0 -250
+ADJ fa0 #LVOWEL# 0 0
+ADJ fa0 #UVOWEL# 0 -100
+ADJ fa1 #LVOWEL# 0 0
+ADJ fa1 #UVOWEL# 0 -100
+ADJ fa2 #LVOWEL# 0 0
+ADJ fa2 #UVOWEL# 0 -100
+ADJ fa3 #LVOWEL# 0 0
+ADJ fa3 #UVOWEL# 0 -100
+ADJ fanodots0 #LVOWEL# 0 0
+ADJ fanodots0 #UVOWEL# 0 -200
+ADJ fanodots1 #LVOWEL# 0 0
+ADJ fanodots1 #UVOWEL# 0 -200
+ADJ fanodots2 #LVOWEL# 0 0
+ADJ fanodots2 #UVOWEL# 0 -200
+ADJ fanodots3 #LVOWEL# 0 0
+ADJ fanodots3 #UVOWEL# 0 -200
+ADJ gaf0 #LVOWEL# 0 0
+ADJ gaf0 #UVOWEL# 0 -100
+ADJ gaf1 #LVOWEL# 0 0
+ADJ gaf2 #LVOWEL# 0 0
+ADJ gaf3 #LVOWEL# 0 0
+ADJ gaf3 #UVOWEL# 0 -100
+ADJ ghayn0 #LVOWEL# 0 -250
+ADJ ghayn1 #LVOWEL# 0 0
+ADJ ghayn2 #LVOWEL# 0 0
+ADJ ghayn3 #LVOWEL# 0 -250
+ADJ ghayn2 #UVOWEL# 0 -100
+ADJ ghayn3 #UVOWEL# 0 -100
+ADJ ha0 #LVOWEL# 0 0
+ADJ ha0 #UVOWEL# 0 -150
+ADJ ha1 #LVOWEL# 0 0
+ADJ ha1 #UVOWEL# 0 -150
+ADJ ha2 #UVOWEL# 0 -150
+ADJ ha2 #LVOWEL# 0 -200
+ADJ ha3 #LVOWEL# 0 0
+ADJ ha3 #UVOWEL# 0 -150
+ADJ ha4 #LVOWEL# -200 0
+ADJ ha4 #UVOWEL# -200 -250
+ADJ hamza0 #LVOWEL# 30 200
+ADJ hamza0 #UVOWEL# -30 -300
+ADJ he0 #LVOWEL# 0 -250
+ADJ he0 #UVOWEL# 0 -200
+ADJ he1 #LVOWEL# 0 0
+ADJ he1 #UVOWEL# 0 -200
+ADJ he2 #LVOWEL# 0 0
+ADJ he2 #UVOWEL# 0 -200
+ADJ he3 #LVOWEL# 0 -250
+ADJ he3 #UVOWEL# 0 -200
+ADJ kaf0 #LVOWEL# 0 0
+ADJ kaf0 #UVOWEL# 0 -100
+ADJ kaf1 #LVOWEL# 0 0
+ADJ kaf2 #LVOWEL# 0 0
+ADJ kaf3 #LVOWEL# 0 0
+ADJ kaf3 #UVOWEL# 0 -100
+ADJ keshideh0 #LVOWEL# 0 0
+ADJ keshideh0 #UVOWEL# 0 -250
+ADJ keshideh1 #LVOWEL# 0 0
+ADJ keshideh1 #UVOWEL# 0 -250
+ADJ keshideh2 #LVOWEL# 0 0
+ADJ keshideh2 #UVOWEL# 0 -250
+ADJ keshideh3 #LVOWEL# 0 0
+ADJ keshideh3 #UVOWEL# 0 -250
+ADJ khe0 #UVOWEL# 0 -50
+ADJ khe0 #LVOWEL# 0 -200
+ADJ khe1 #LVOWEL# 0 0
+ADJ khe1 #UVOWEL# 0 -50
+ADJ khe2 #LVOWEL# 0 0
+ADJ khe2 #UVOWEL# 0 -50
+ADJ khe3 #UVOWEL# 0 -50
+ADJ khe3 #LVOWEL# 0 -200
+ADJ lam0 #UVOWEL# -50 -100
+ADJ lam0 #LVOWEL# -50 -150
+ADJ lam1 #LVOWEL# 50 0
+ADJ lam2 #LVOWEL# 50 0
+ADJ lam3 #UVOWEL# -50 -100
+ADJ lam3 #LVOWEL# -50 -150
+ADJ lam4 #LVOWEL# -200 0
+ADJ lam5 #LVOWEL# -200 0
+ADJ lam4 #UVOWEL# -200 0
+ADJ lam5 #UVOWEL# -200 0
+ADJ lam6 #LVOWEL# -200 0
+ADJ lam6 #UVOWEL# -200 -200
+ADJ lam7 #UVOWEL# -200 -200
+ADJ lam7 #LVOWEL# -200 0
+ADJ lam8 #LVOWEL# -170 0
+ADJ lam8 #UVOWEL# -170 -100
+ADJ meem0 #LVOWEL# 0 -200
+ADJ meem0 #UVOWEL# 0 -200
+ADJ meem1 #LVOWEL# 0 0
+ADJ meem1 #UVOWEL# 0 -200
+ADJ meem2 #LVOWEL# 0 0
+ADJ meem2 #UVOWEL# 0 -200
+ADJ meem3 #LVOWEL# 0 -200
+ADJ meem3 #UVOWEL# 0 -200
+ADJ nun0 #UVOWEL# 0 -100
+ADJ nun0 #LVOWEL# 0 -200
+ADJ nun1 #LVOWEL# 0 0
+ADJ nun1 #UVOWEL# 0 -50
+ADJ nun2 #LVOWEL# 0 0
+ADJ nun2 #UVOWEL# 0 -50
+ADJ nun3 #UVOWEL# 0 -100
+ADJ nun3 #LVOWEL# 0 -200
+ADJ nunnodots0 #UVOWEL# 0 -250
+ADJ nunnodots1 #LVOWEL# 0 0
+ADJ nunnodots1 #UVOWEL# 0 -250
+ADJ nunnodots2 #LVOWEL# 0 0
+ADJ nunnodots2 #UVOWEL# 0 -250
+ADJ nunnodots3 #UVOWEL# 0 -250
+ADJ nunnodots3 #LVOWEL# 0 -200
+ADJ pe0 #UVOWEL# 0 -200
+ADJ pe1 #UVOWEL# 0 -200
+ADJ pe2 #UVOWEL# 0 -200
+ADJ pe3 #UVOWEL# 0 -200
+ADJ pe0 #LVOWEL# 0 -200
+ADJ pe1 #LVOWEL# 0 -200
+ADJ pe2 #LVOWEL# 0 -200
+ADJ pe3 #LVOWEL# 0 -200
+ADJ qaf0 #UVOWEL# 0 -100
+ADJ qaf1 #LVOWEL# 0 0
+ADJ qaf2 #LVOWEL# 0 0
+ADJ qaf3 #UVOWEL# 0 -100
+ADJ qaf0 #LVOWEL# 0 -150
+ADJ qaf3 #LVOWEL# 0 -150
+ADJ qafnodots0 #UVOWEL# 0 -200
+ADJ qafnodots1 #LVOWEL# 0 0
+ADJ qafnodots1 #UVOWEL# 0 -200
+ADJ qafnodots2 #LVOWEL# 0 0
+ADJ qafnodots2 #UVOWEL# 0 -200
+ADJ qafnodots3 #UVOWEL# 0 -200
+ADJ qafnodots0 #LVOWEL# 0 -150
+ADJ qafnodots3 #LVOWEL# 0 -150
+ADJ ra0 #LVOWEL# 0 -250
+ADJ ra0 #UVOWEL# 0 -250
+ADJ ra3 #LVOWEL# 0 -250
+ADJ ra3 #UVOWEL# 0 -250
+ADJ sad0 #LVOWEL# 0 -150
+ADJ sad0 #UVOWEL# 0 -200
+ADJ sad1 #LVOWEL# 50 0
+ADJ sad1 #UVOWEL# 50 -200
+ADJ sad2 #LVOWEL# 50 0
+ADJ sad2 #UVOWEL# 50 -200
+ADJ sad3 #LVOWEL# 0 -150
+ADJ sad3 #UVOWEL# 0 -200
+ADJ shin0 #UVOWEL# 0 -200
+ADJ shin0 #LVOWEL# 0 -100
+ADJ shin1 #LVOWEL# 0 0
+ADJ shin1 #UVOWEL# 0 -200
+ADJ shin2 #LVOWEL# 0 0
+ADJ shin2 #UVOWEL# 0 -200
+ADJ shin3 #UVOWEL# 0 -200
+ADJ shin3 #LVOWEL# 0 -100
+ADJ sin0 #UVOWEL# 0 -200
+ADJ sin0 #LVOWEL# 0 -100
+ADJ sin1 #LVOWEL# 0 0
+ADJ sin1 #UVOWEL# 0 -200
+ADJ sin2 #LVOWEL# 0 0
+ADJ sin2 #UVOWEL# 0 -200
+ADJ sin3 #UVOWEL# 0 -200
+ADJ sin3 #LVOWEL# 0 -100
+ADJ ta0 #LVOWEL# 0 0
+ADJ ta0 #UVOWEL# 0 -150
+ADJ ta1 #LVOWEL# 0 0
+ADJ ta2 #LVOWEL# 0 0
+ADJ ta3 #LVOWEL# 0 0
+ADJ ta3 #UVOWEL# 0 -150
+ADJ tamarbuta0 #LVOWEL# 0 0
+ADJ tamarbuta1 #LVOWEL# 0 0
+ADJ tamarbuta2 #LVOWEL# 0 0
+ADJ tamarbuta3 #LVOWEL# 0 0
+ADJ tamarbuta3 #UVOWEL# 0 50
+ADJ tche0 #LVOWEL# 0 -250
+ADJ tche0 #UVOWEL# 0 -200
+ADJ tche1 #LVOWEL# 0 -250
+ADJ tche1 #UVOWEL# 0 -200
+ADJ tche2 #LVOWEL# 0 -250
+ADJ tche2 #UVOWEL# 0 -200
+ADJ tche3 #LVOWEL# 0 -250
+ADJ tche3 #UVOWEL# 0 -200
+ADJ tha0 #LVOWEL# 0 0
+ADJ tha0 #UVOWEL# 0 100
+ADJ tha1 #LVOWEL# 0 0
+ADJ tha1 #UVOWEL# 0 100
+ADJ tha2 #LVOWEL# 0 0
+ADJ tha2 #UVOWEL# 0 100
+ADJ tha3 #LVOWEL# 0 0
+ADJ tha3 #UVOWEL# 0 100
+ADJ tta0 #LVOWEL# 0 0
+ADJ tta0 #UVOWEL# -100 0
+ADJ tta1 #LVOWEL# 0 0
+ADJ tta1 #UVOWEL# -100 0
+ADJ tta2 #LVOWEL# 0 0
+ADJ tta2 #UVOWEL# -100 0
+ADJ tta3 #LVOWEL# 0 0
+ADJ tta3 #UVOWEL# -100 0
+ADJ va0 #LVOWEL# 0 0
+ADJ va0 #UVOWEL# 0 0
+ADJ va1 #LVOWEL# 0 0
+ADJ va2 #LVOWEL# 0 0
+ADJ va3 #LVOWEL# 0 0
+ADJ va3 #UVOWEL# 0 0
+ADJ waw0 #LVOWEL# 0 -250
+ADJ waw0 #UVOWEL# 0 -250
+ADJ waw3 #LVOWEL# 0 -250
+ADJ waw3 #UVOWEL# 0 -250
+ADJ wawhamza0 #UVOWEL# 20 -100
+ADJ wawhamza3 #UVOWEL# 20 -100
+ADJ ya0 #LVOWEL# 0 -200
+ADJ ya0 #UVOWEL# 0 -200
+ADJ ya1 #UVOWEL# 0 -200
+ADJ ya2 #UVOWEL# 0 -200
+ADJ ya1 #LVOWEL# 0 -200
+ADJ ya2 #LVOWEL# 0 -200
+ADJ ya3 #LVOWEL# 0 -250
+ADJ ya3 #UVOWEL# 0 -400
+ADJ yahamza0 #LVOWEL# 0 -70
+ADJ yahamza0 #UVOWEL# -80 -90
+ADJ yahamza1 #LVOWEL# 50 0
+ADJ yahamza1 #UVOWEL# 50 -50
+ADJ yahamza2 #LVOWEL# 50 0
+ADJ yahamza2 #UVOWEL# 0 -30
+ADJ yahamza3 #LVOWEL# 0 -250
+ADJ yahamza3 #UVOWEL# -80 -250
+ADJ za0 #LVOWEL# 0 -250
+ADJ za0 #UVOWEL# 0 0
+ADJ za3 #LVOWEL# 0 -250
+ADJ za3 #UVOWEL# 0 0
+ADJ zhe0 #LVOWEL# 0 -250
+ADJ zhe0 #UVOWEL# 0 100
+ADJ zhe3 #LVOWEL# 0 -250
+ADJ zhe3 #UVOWEL# 0 100
+ADJ zwj0 #LVOWEL# 0 0
+ADJ zwj0 #UVOWEL# 0 -250
+ADJ zwj1 #LVOWEL# 0 0
+ADJ zwj1 #UVOWEL# 0 -250
+ADJ zwj2 #LVOWEL# 0 0
+ADJ zwj2 #UVOWEL# 0 -250
+ADJ zwj3 #LVOWEL# 0 0
+ADJ zwj3 #UVOWEL# 0 -250
+ADJ zza0 #LVOWEL# 0 0
+ADJ zza0 #UVOWEL# -100 0
+ADJ zza1 #LVOWEL# 0 0
+ADJ zza1 #UVOWEL# -100 0
+ADJ zza2 #LVOWEL# 0 0
+ADJ zza2 #UVOWEL# -100 0
+ADJ zza3 #LVOWEL# 0 0
+ADJ zza3 #UVOWEL# -100 0
diff --git a/language/arabic/dad/dadmono.ofm b/language/arabic/dad/dadmono.ofm
new file mode 100644
index 0000000000..187829f811
--- /dev/null
+++ b/language/arabic/dad/dadmono.ofm
Binary files differ
diff --git a/language/arabic/dad/dadmono.ovf b/language/arabic/dad/dadmono.ovf
new file mode 100644
index 0000000000..acdfe2e93e
--- /dev/null
+++ b/language/arabic/dad/dadmono.ovf
Binary files differ
diff --git a/language/arabic/dad/dadreal.tfm b/language/arabic/dad/dadreal.tfm
new file mode 100644
index 0000000000..48a8db7737
--- /dev/null
+++ b/language/arabic/dad/dadreal.tfm
Binary files differ
diff --git a/language/arabic/dad/dadrealbold.tfm b/language/arabic/dad/dadrealbold.tfm
new file mode 100644
index 0000000000..193aee7485
--- /dev/null
+++ b/language/arabic/dad/dadrealbold.tfm
Binary files differ
diff --git a/language/arabic/dad/dadrealmono.tfm b/language/arabic/dad/dadrealmono.tfm
new file mode 100644
index 0000000000..5c47cd0768
--- /dev/null
+++ b/language/arabic/dad/dadrealmono.tfm
Binary files differ
diff --git a/language/arabic/dad/make-dad-font.pl b/language/arabic/dad/make-dad-font.pl
new file mode 100644
index 0000000000..82fb82a37c
--- /dev/null
+++ b/language/arabic/dad/make-dad-font.pl
@@ -0,0 +1,1171 @@
+# %%% ====================================================================
+# %%% @Perl-file{
+# %%% filename = "make-dad-font.pl",
+# %%% version = "1.1",
+# %%% date = "2014/10/11",
+# %%% author = "Yannis Haralambous",
+# %%% copyright = "This file is part of the dad package, released
+# %%% under the LPPL."
+# %%% keywords = "TeX, file header,
+# %%% supported = "yes",
+# %%% abstract = "This is the Perl script that creates
+# %%% the dad fonts out of their AFM and ADJUST files.",
+# %%% }
+# %%% ====================================================================
+$MAXHEIGHT=560;
+$MAXDEPTH=-360;
+if ($ARGV[0] ne "") { $STYLE_="-".$ARGV[0]; $STYLE=$ARGV[0]; } else { $STYLE=""; }
+
+@LETTERS=("alif","ba","tamarbuta","ta","tha","dzim","he","khe","dal","dhal","ra","za",
+"sin","shin","sad","dad","tta","zza","ayn","ghayn","fa","qaf","kaf","lam","meem","nun",
+"ha","waw","ya","alifmaqsura","alifwasla","pe","tche","zhe","va","gaf",
+"hahamza","alifuphamza","alifmadda","aliflohamza","wawhamza","yahamza","banodots","nunnodots","fanodots","qafnodots","keshideh");
+@LETTERS_NO_LAMS=("alif","ba","tamarbuta","ta","tha","dzim","he","khe","dal","dhal","ra","za","sin","shin","sad","dad","tta","zza","ayn","ghayn","fa","qaf","kaf","meem","nun",
+"ha","waw","ya","alifmaqsura","alifwasla","alifmadda","pe","tche","zhe","va","gaf",
+"hahamza","alifuphamza","aliflohamza","wawhamza","yahamza","banodots","nunnodots","fanodots","qafnodots","keshideh");
+@LETTERS_NO_ALIFS=("ba","tamarbuta","ta","tha","dzim","he","khe","dal","dhal","ra","za",
+"sin","shin","sad","dad","tta","zza","ayn","ghayn","fa","qaf","kaf","lam","meem","nun",
+"ha","waw","ya","alifmaqsura","pe","tche","zhe","va","gaf",
+"hahamza","wawhamza","yahamza","banodots","nunnodots","fanodots","qafnodots","keshideh");
+@LETTERS_NO_LAMS_NO_ALIFS=("ba","tamarbuta","ta","tha","dzim","he","khe","dal","dhal","ra","za","sin","shin","sad","dad","tta","zza","ayn","ghayn","fa","qaf","kaf","meem","nun",
+"ha","waw","ya","alifmaqsura","pe","tche","zhe","va","gaf",
+"hahamza","wawhamza","yahamza","banodots","nunnodots","fanodots","qafnodots","keshideh");
+@LAMS=("lam");
+@ALIFS=("alif","alifuphamza","aliflohamza","alifwasla","alifmadda");
+@DIACS=("shadda","sukun","madda","vfatha");
+@vDIACS=("fatha","kasra","damma");
+$FORM{"apos"}=4;
+$FORM{"alif"}=2;
+$FORM{"ba"}=4;
+$FORM{"banodots"}=4;
+$FORM{"tamarbuta"}=4;
+$FORM{"ta"}=4;
+$FORM{"tha"}=4;
+$FORM{"dzim"}=4;
+$FORM{"he"}=4;
+$FORM{"khe"}=4;
+$FORM{"dal"}=2;
+$FORM{"dhal"}=2;
+$FORM{"ra"}=2;
+$FORM{"za"}=2;
+$FORM{"sin"}=4;
+$FORM{"shin"}=4;
+$FORM{"sad"}=4;
+$FORM{"dad"}=4;
+$FORM{"tta"}=4;
+$FORM{"zza"}=4;
+$FORM{"ayn"}=4;
+$FORM{"ghayn"}=4;
+$FORM{"fa"}=4;
+$FORM{"fanodots"}=4;
+$FORM{"qaf"}=4;
+$FORM{"qafnodots"}=4;
+$FORM{"kaf"}=4;
+$FORM{"lam"}=4;
+$FORM{"meem"}=4;
+$FORM{"nun"}=4;
+$FORM{"nunnodots"}=4;
+$FORM{"ha"}=4;
+$FORM{"waw"}=2;
+$FORM{"ya"}=4;
+$FORM{"alifmaqsura"}=2;
+$FORM{"alifwasla"}=2;
+$FORM{"pe"}=4;
+$FORM{"tche"}=4;
+$FORM{"zhe"}=2;
+$FORM{"va"}=4;
+$FORM{"gaf"}=4;
+$FORM{"hahamza"}=2;
+$FORM{"alifuphamza"}=2;
+$FORM{"aliflohamza"}=2;
+$FORM{"wawhamza"}=2;
+$FORM{"yahamza"}=4;
+$FORM{"hamza"}=1;
+$FORM{"keshideh"}=4;
+$FORM{"zwj"}=4;
+$POS{"alif0"}="41";
+$POS{"alif3"}="00";
+$POS{"alif4"}="8F";
+$POS{"alif5"}="E6";
+$POS{"ba0"}="62";
+$POS{"ba1"}="1A";
+$POS{"ba2"}="1B";
+$POS{"ba3"}="1C";
+$POS{"banodots0"}="88";
+$POS{"banodots1"}="DE";
+$POS{"banodots2"}="DF";
+$POS{"banodots3"}="E1";
+$POS{"tamarbuta0"}="84";
+$POS{"tamarbuta1"}="F4";
+$POS{"tamarbuta2"}="F5";
+$POS{"tamarbuta3"}="D2";
+$POS{"ta0"}="74";
+$POS{"ta1"}="C1";
+$POS{"ta2"}="EB";
+$POS{"ta3"}="C3";
+$POS{"tha0"}="63";
+$POS{"tha1"}="D3";
+$POS{"tha2"}="D4";
+$POS{"tha3"}="D5";
+$POS{"dzim0"}="6A";
+$POS{"dzim1"}="A8";
+$POS{"dzim2"}="A9";
+$POS{"dzim3"}="AA";
+$POS{"he0"}="48";
+$POS{"he1"}="07";
+$POS{"he2"}="08";
+$POS{"he3"}="09";
+$POS{"khe0"}="78";
+$POS{"khe1"}="C7";
+$POS{"khe2"}="C8";
+$POS{"khe3"}="C9";
+$POS{"dal0"}="64";
+$POS{"dal3"}="1D";
+$POS{"dhal0"}="85";
+$POS{"dhal3"}="86";
+$POS{"ra0"}="72";
+$POS{"ra3"}="BD";
+$POS{"za0"}="7A";
+$POS{"za3"}="CB";
+$POS{"sin0"}="73";
+$POS{"sin1"}="BE";
+$POS{"sin2"}="BF";
+$POS{"sin3"}="C0";
+$POS{"shin0"}="89";
+$POS{"shin1"}="DA";
+$POS{"shin2"}="DB";
+$POS{"shin3"}="DC";
+$POS{"sad0"}="53";
+$POS{"sad1"}="0D";
+$POS{"sad2"}="0E";
+$POS{"sad3"}="0F";
+$POS{"dad0"}="44";
+$POS{"dad1"}="04";
+$POS{"dad2"}="05";
+$POS{"dad3"}="06";
+$POS{"tta0"}="54";
+$POS{"tta1"}="10";
+$POS{"tta2"}="11";
+$POS{"tta3"}="12";
+$POS{"zza0"}="5A";
+$POS{"zza1"}="14";
+$POS{"zza2"}="15";
+$POS{"zza3"}="16";
+$POS{"ayn0"}="60";
+$POS{"ayn1"}="17";
+$POS{"ayn2"}="18";
+$POS{"ayn3"}="19";
+$POS{"ghayn0"}="52";
+$POS{"ghayn1"}="D6";
+$POS{"ghayn2"}="D7";
+$POS{"ghayn3"}="D8";
+$POS{"fa0"}="66";
+$POS{"fa1"}="1F";
+$POS{"fa2"}="A0";
+$POS{"fa3"}="A1";
+$POS{"fanodots0"}="8C";
+$POS{"fanodots1"}="E2";
+$POS{"fanodots2"}="E3";
+$POS{"fanodots3"}="F3";
+$POS{"qaf0"}="71";
+$POS{"qaf1"}="BA";
+$POS{"qaf2"}="BB";
+$POS{"qaf3"}="BC";
+$POS{"qafnodots0"}="8D";
+$POS{"qafnodots1"}="EE";
+$POS{"qafnodots2"}="F6";
+$POS{"qafnodots3"}="E5";
+$POS{"kaf0"}="6B";
+$POS{"kaf1"}="AB";
+$POS{"kaf2"}="AC";
+$POS{"kaf3"}="AD";
+$POS{"lam0"}="6C";
+$POS{"lam1"}="AE";
+$POS{"lam2"}="AF";
+$POS{"lam3"}="B0";
+$POS{"lam4"}="46"; #lam1-alif3
+$POS{"lam5"}="47"; #lam2-alif3
+$POS{"lam6"}="4C"; #lam1-(lam2)-ha3
+$POS{"lam7"}="4D"; #lam2-(lam2)-ha3
+$POS{"lam8"}="94"; #(lam1)-lam2-ha3
+$POS{"ll0"}="F7";
+$POS{"ll1"}="F8";
+$POS{"ll5"}="F9";
+$POS{"LLh0"}="FA";
+$POS{"meem0"}="6D";
+$POS{"meem1"}="B1";
+$POS{"meem2"}="B2";
+$POS{"meem3"}="B3";
+$POS{"nun0"}="6E";
+$POS{"nun1"}="B4";
+$POS{"nun2"}="B5";
+$POS{"nun3"}="B6";
+$POS{"nunnodots0"}="8B";
+$POS{"nunnodots1"}="EC";
+$POS{"nunnodots2"}="ED";
+$POS{"nunnodots3"}="E0";
+$POS{"ha0"}="68";
+$POS{"ha1"}="A5";
+$POS{"ha2"}="A6";
+$POS{"ha3"}="A7";
+$POS{"ha4"}="93"; #(lam1-lam2)-ha3
+$POS{"waw0"}="55";
+$POS{"waw3"}="13";
+$POS{"ya0"}="59";
+$POS{"ya1"}="0A";
+$POS{"ya2"}="0B";
+$POS{"ya3"}="CA";
+$POS{"alifmaqsura0"}="49";
+$POS{"alifmaqsura3"}="0C";
+$POS{"pe0"}="70";
+$POS{"pe1"}="B7";
+$POS{"pe2"}="B8";
+$POS{"pe3"}="B9";
+$POS{"tche0"}="43";
+$POS{"tche1"}="01";
+$POS{"tche2"}="02";
+$POS{"tche3"}="03";
+$POS{"zhe0"}="4A";
+$POS{"zhe3"}="D9";
+$POS{"va0"}="76";
+$POS{"va1"}="C4";
+$POS{"va2"}="C5";
+$POS{"va3"}="C6";
+$POS{"gaf0"}="67";
+$POS{"gaf1"}="A2";
+$POS{"gaf2"}="A3";
+$POS{"gaf3"}="A4";
+$POS{"hahamza0"}="65";
+$POS{"hahamza3"}="1E";
+$POS{"alifuphamza0"}="E4";
+$POS{"alifuphamza3"}="CC";
+$POS{"alifuphamza4"}="90";
+$POS{"alifuphamza5"}="E7";
+$POS{"aliflohamza0"}="EF";
+$POS{"aliflohamza3"}="CD";
+$POS{"aliflohamza4"}="91";
+$POS{"aliflohamza5"}="E8";
+$POS{"alifmadda0"}="C2";
+$POS{"alifmadda3"}="DD";
+$POS{"alifmadda4"}="92";
+$POS{"alifmadda5"}="E9";
+$POS{"alifwasla0"}="83";
+$POS{"alifwasla3"}="F0";
+$POS{"alifwasla4"}="F1";
+$POS{"alifwasla5"}="F2";
+$POS{"wawhamza0"}="FC";
+$POS{"wawhamza3"}="CE";
+$POS{"yahamza0"}="FF";
+$POS{"yahamza1"}="CF";
+$POS{"yahamza2"}="D0";
+$POS{"yahamza3"}="D1";
+$POS{"hamza0"}="7C";
+$POS{"keshideh0"}="4B";
+$POS{"keshideh1"}="4F";
+$POS{"keshideh2"}="50";
+$POS{"keshideh3"}="51";
+$POS{"zwj0"}="2D";
+$POS{"zwj1"}="2D";
+$POS{"zwj2"}="2D";
+$POS{"zwj3"}="26";
+$POS{"fatha"}="61";
+$POS{"vfatha"}="8E";
+$POS{"kasra"}="69";
+$POS{"damma"}="75";
+$POS{"sukun"}="6F";
+$POS{"madda"}="9F";
+$POS{"fathatan"}="99";
+$POS{"kasratan"}="9A";
+$POS{"dammatan"}="9B";
+$POS{"shadda"}="2B";
+$POS{"shaddafatha"}="96";
+$POS{"shaddavfatha"}="EA";
+$POS{"shaddakasra"}="97";
+$POS{"shaddadamma"}="98";
+$POS{"shaddamadda"}="8A";
+$POS{"shaddafathatan"}="9C";
+$POS{"shaddakasratan"}="9D";
+$POS{"shaddadammatan"}="9E";
+$POS{"BC"}="7C";
+$POS{"plus"}="2B";
+$POS{"apos0"}="27";
+$POS{"apos1"}="56";
+$POS{"apos2"}="57";
+$POS{"apos3"}="58";
+$POS{"apos4"}="5E";
+$POS{"apos5"}="5F";
+$POS{"aster"}="2A";
+$POS{"N"}="4E";
+$POS{"zero"}="30";
+$POS{"un"}="31";
+$POS{"deux"}="32";
+$POS{"trois"}="33";
+$POS{"quatre"}="34";
+$POS{"cinq"}="35";
+$POS{"six"}="36";
+$POS{"sept"}="37";
+$POS{"huit"}="38";
+$POS{"neuf"}="39";
+$POS{"question"}="3F";
+$POS{"comma"}="2C";
+$POS{"semicolon"}="EB";
+$DECALAGE{"fatha"}=1;
+$DECALAGE{"kasra"}=2;
+$DECALAGE{"damma"}=3;
+$DECALAGE{"fathatan"}=4;
+$DECALAGE{"kasratan"}=5;
+$DECALAGE{"dammatan"}=7;
+$DECALAGE{"shadda"}=8;
+$DECALAGE{"shaddafatha"}=9;
+$DECALAGE{"shaddakasra"}=10;
+$DECALAGE{"shaddadamma"}=11;
+$DECALAGE{"shaddafathatan"}=12;
+$DECALAGE{"shaddakasratan"}=13;
+$DECALAGE{"shaddadammatan"}=14;
+$DECALAGE{"sukun"}=15;
+$DECALAGE{"madda"}=16;
+$DECALAGE{"vfatha"}=17;
+$DECALAGE{"shaddavfatha"}=18;
+$DECALAGE{"shaddamadda"}=19;
+
+$UTFPOS{"alif0"}="0627";
+$UTFPOS{"ba0"}="0628";
+$UTFPOS{"banodots0"}="066E";
+$UTFPOS{"tamarbuta0"}="0629";
+$UTFPOS{"ta0"}="062A";
+$UTFPOS{"tha0"}="062B";
+$UTFPOS{"dzim0"}="062C";
+$UTFPOS{"he0"}="062D";
+$UTFPOS{"khe0"}="062E";
+$UTFPOS{"dal0"}="062F";
+$UTFPOS{"dhal0"}="0630";
+$UTFPOS{"ra0"}="0631";
+$UTFPOS{"za0"}="0632";
+$UTFPOS{"sin0"}="0633";
+$UTFPOS{"shin0"}="0634";
+$UTFPOS{"sad0"}="0635";
+$UTFPOS{"dad0"}="0636";
+$UTFPOS{"tta0"}="0637";
+$UTFPOS{"zza0"}="0638";
+$UTFPOS{"ayn0"}="0639";
+$UTFPOS{"ghayn0"}="063A";
+$UTFPOS{"fa0"}="0641";
+$UTFPOS{"fanodots0"}="06A1";
+$UTFPOS{"qaf0"}="0642";
+$UTFPOS{"qafnodots0"}="066F";
+$UTFPOS{"kaf0"}="0643";
+$UTFPOS{"lam0"}="0644";
+$UTFPOS{"meem0"}="0645";
+$UTFPOS{"nun0"}="0646";
+$UTFPOS{"nunnodots0"}="06BA";
+$UTFPOS{"ha0"}="0647";
+$UTFPOS{"waw0"}="0648";
+$UTFPOS{"ya0"}="064A";
+$UTFPOS{"alifmaqsura0"}="0649";
+$UTFPOS{"pe0"}="067E";
+$UTFPOS{"tche0"}="0686";
+$UTFPOS{"zhe0"}="0698";
+$UTFPOS{"va0"}="06A4";
+$UTFPOS{"gaf0"}="06AF";
+$UTFPOS{"hahamza0"}="06C2";
+$UTFPOS{"alifuphamza0"}="0623";
+$UTFPOS{"aliflohamza0"}="0625";
+$UTFPOS{"alifmadda0"}="0622";
+$UTFPOS{"alifwasla0"}="0671";
+$UTFPOS{"wawhamza0"}="0624";
+$UTFPOS{"yahamza0"}="0626";
+$UTFPOS{"hamza0"}="0621";
+$UTFPOS{"keshideh0"}="0640";
+$UTFPOS{"zwj0"}="200D";
+$UTFPOS{"fatha"}="064E";
+$UTFPOS{"vfatha"}="0670";
+$UTFPOS{"kasra"}="0650";
+$UTFPOS{"damma"}="064F";
+$UTFPOS{"shadda"}="0651";
+$UTFPOS{"sukun"}="0652";
+$UTFPOS{"madda"}="0653";
+$UTFPOS{"fathatan"}="064B";
+$UTFPOS{"kasratan"}="064D";
+$UTFPOS{"dammatan"}="064C";
+$UTFPOS{"zero"}="0660";
+$UTFPOS{"un"}="0661";
+$UTFPOS{"deux"}="0662";
+$UTFPOS{"trois"}="0663";
+$UTFPOS{"quatre"}="0664";
+$UTFPOS{"cinq"}="0665";
+$UTFPOS{"six"}="0666";
+$UTFPOS{"sept"}="0667";
+$UTFPOS{"huit"}="0668";
+$UTFPOS{"neuf"}="0669";
+$UTFPOS{"question"}="061F";
+$UTFPOS{"comma"}="060C";
+$UTFPOS{"semicolon"}="061B";
+foreach $utf (%UTFPOS) {
+if ($POS{$utf} ne "") {
+$UTF_GOTO{$POS{$utf}}=$UTFPOS{$utf};
+}}
+
+###read AFM file
+open IN, "Dad$STYLE_.afm";
+while (<IN>) {
+if (m/^C ([0-9]+) ; WX ([0-9]+) ; N [^;]+ ; B ([0-9-]+) ([0-9-]+) ([0-9-]+) ([0-9-]+) ;/) {
+$w=$2;
+$h=$6;
+$d=$4;
+$HEX=sprintf("%X",$1 + 0);
+$HEX=~s/^([0-9A-F])$/0\1/;
+$WIDTH{$HEX}=$w/1000;
+$HEIGHT{$HEX}=($h>$MAXHEIGHT?$MAXHEIGHT/1000:$h/1000);
+if ($d != 0) { $DEPTH{$HEX}=-($d<$MAXDEPTH?$MAXDEPTH/1000:$d/1000); } else { $DEPTH{$HEX}="0.0"; }
+}
+}
+close IN;
+
+if ($STYLE eq "bold") { $thickness="0.111"; }
+elsif ($STYLE eq "mono") { $thickness="0.113"; }
+else { $thickness="0.072"; }
+
+$PRELUDE="(OFMLEVEL D 0)
+(FONTDIR TL)
+(FAMILY YARABIC)
+(FACE F MRR)
+(CODINGSCHEME FONTSPECIFIC)
+(DESIGNSIZE R 10.0)
+(CHECKSUM H 9DCC4880)
+(FONTDIMEN
+ (SLANT R 0.000000)
+ (SPACE R 0.333334)
+ (STRETCH R 0.166667)
+ (SHRINK R 0.111112)
+ (XHEIGHT R 0.430555)
+ (QUAD R 1.000003)
+ (EXTRASPACE R 0.111112)
+ (DEFAULTRULETHICKNESS R $thickness)
+ )
+(MAPFONT D 0
+ (FONTNAME dadreal$STYLE)
+ (FONTAT R 1.0)
+ (FONTDSIZE R 10.0)
+ )
+(LIGTABLE
+";
+$PL_PRELUDE="(FAMILY DADREAL)
+(CODINGSCHEME FONTSPECIFIC)
+(DESIGNSIZE R 10.0)
+(FONTDIMEN
+ (SPACE R 0.333334)
+ (STRETCH R 0.166667)
+ (SHRINK R 0.111112)
+ (XHEIGHT R 0.430555)
+ (QUAD R 1.000003)
+ (EXTRASPACE R 0.111112)
+ )
+(LIGTABLE
+";
+
+###write real PL file
+open OUT, ">dadreal$STYLE.pl";
+print OUT $PL_PRELUDE;
+print OUT " )\n";
+foreach $i (0 .. 255) {
+$i_hex=sprintf("%X",$i);
+$i_hex=~s/^([0-9A-F])$/0\1/;
+print OUT "(CHARACTER H $i_hex (COMMENT char$i_hex)
+ (CHARWD R ".$WIDTH{$i_hex}.")
+ (CHARHT R ".$HEIGHT{$i_hex}.")
+ (CHARDP R ".$DEPTH{$i_hex}.")
+ )
+";
+}
+close OUT;
+system("pltotf dadreal$STYLE.pl");
+
+sub alter_LIGS {
+my $label=shift;
+my $LIG=shift;
+my $right=shift;
+my $result=shift;
+if ($label ne "" and $LIG ne "" and $right ne "" and $result ne "") {
+if ($LIGS{$label} =~ m|[/]?LIG[/>]*:$right:([0-9A-F]+)|) {
+$LIGS{$label} =~ s|[/]?LIG[/>]*:$right:([0-9A-F]+)|$LIG:$right:$result|;
+} else {
+if ($LIGS{$label} ne "") {
+$LIGS{$label} .= "#";
+}
+$LIGS{$label} .= "$LIG:$right:$result";
+}
+}
+}
+
+sub addoperation {
+my $tmp=shift;
+my $label=$POS{$tmp};
+my $LIG=shift;
+my $tmp=shift;
+my $right=$POS{$tmp};
+my $tmp=shift;
+my $result=$POS{$tmp};
+&alter_LIGS($label,$LIG,$right,$result);
+}
+
+sub addplusutfvowoperation {
+my $tmp=shift;
+my $label=$POS{$tmp};
+my $LIG=shift;
+my $tmp=shift;
+my $right=$UTFPOS{$tmp};
+my $tmp=shift;
+my $result=$POS{$tmp};
+&alter_LIGS($label,$LIG,$right,$result);
+}
+
+sub addutfoperation {
+my $tmp=shift;
+if ($tmp =~ m/^(.+?)([0-9])$/) { $labelc=$1; $labelp=$2; }
+my $label=$POS{$tmp};
+my $LIG=shift;
+my $tmp=shift;
+if ($tmp =~ m/^(.+?)([0-9])$/) { $rightc=$1; $rightp=$2; }
+my $right=$POS{$tmp};
+my $tmp=shift;
+if ($tmp =~ m/^(.+?)([0-9])$/) { $resultc=$1; $resultp=$2; }
+my $result=$POS{$tmp};
+
+if ($labelp==0 and $UTFPOS{$labelc.$labelp} ne "") { $label=$UTF_GOTO{$label}; }
+if ($rightp==0 and $UTFPOS{$rightc.$rightp} ne "") { $right=$UTF_GOTO{$right}; }
+if ($resultp==0 and $UTFPOS{$resultc.$resultp} ne "") { $result=$UTF_GOTO{$result}; }
+
+&alter_LIGS($label,$LIG,$right,$result);
+}
+
+sub addutfvowoperation {
+my $tmp=shift;
+my $label=$UTFPOS{$tmp};
+my $labellow=$POS{$tmp};
+my $tmp=shift;
+my $vowelname=$tmp;
+my $vow=$UTFPOS{$tmp};
+my $vowlow=$POS{$tmp};
+
+&alter_LIGS($label,"LIG",$vow,sprintf("%X",$DECALAGE{$vowelname}).$labellow);
+}
+
+# sub addutfccoperation {
+# my $tmp=shift;
+# my $label=$UTFPOS{$tmp};
+# my $labellow=$POS{$tmp};
+# my $tmp=shift;
+# my $vowelname=$tmp;
+# my $vow=$UTFPOS{$tmp};
+# my $vowlow=$POS{$tmp};
+# my $tmp=shift;
+# my $labelb=$UTFPOS{$tmp};
+# my $labelblow=$POS{$tmp};•••
+#
+# &alter_LIGS(sprintf("%X",$DECALAGE{$vowelname}).$labellow,"/LIG",$labelb,$labelblow);
+# }
+
+##k0 + l0 - /LIG/ -> k0 - l0
+##k0 + - LIG/ -> k1 -
+##- + l0 LIG -> l3
+# foreach $lettera (@LETTERS) {
+# if ($FORM{$lettera}==4) {
+# foreach $letterb (@LETTERS) {
+# &addoperation($lettera."0","/LIG/",$letterb."0","zwj0");
+# }
+# &addoperation($lettera."0","LIG/","zwj0",$lettera."1");
+# }
+# if ($FORM{$lettera}==4 or $FORM{$lettera}==2) {
+# &addoperation("zwj0","LIG",$lettera."0",$lettera."3");
+# }
+# }
+foreach $lettera (@LETTERS) {
+&addoperation("zwj0","LIG",$lettera."0",$lettera."3");
+&addutfoperation("zwj0","LIG",$lettera."0",$lettera."3");
+}
+&addoperation("zwj0","LIG","apos0","apos3");
+
+foreach $lettera (@LETTERS) {
+if ($FORM{$lettera}==4) {
+&addoperation($lettera."0","LIG/","zwj0",$lettera."1");
+&addoperation($lettera."3","LIG/","zwj0",$lettera."2");
+&addutfoperation($lettera."0","LIG/","zwj0",$lettera."1");
+&addutfoperation($lettera."3","LIG/","zwj0",$lettera."2");
+&addoperation($lettera."0","LIG/","apos0",$lettera."1");
+&addoperation($lettera."3","LIG/","apos0",$lettera."2");
+&addoperation($lettera."0","LIG/","lam6",$lettera."1");
+&addoperation($lettera."3","LIG/","lam6",$lettera."2");
+&addoperation($lettera."2","/LIG","lam6","lam7");
+&addoperation($lettera."1","/LIG","lam6","lam7");
+&addutfoperation($lettera."0","LIG/","lam6",$lettera."1");
+&addutfoperation($lettera."3","LIG/","lam6",$lettera."2");
+&addutfoperation($lettera."2","/LIG","lam6","lam7");
+&addutfoperation($lettera."1","/LIG","lam6","lam7");
+}
+elsif ($FORM{$lettera}==2) {
+&addoperation($lettera."0","/LIG","zwj0","zwj3");
+&addoperation($lettera."3","/LIG","zwj0","zwj3");
+}
+}
+foreach $lettera (@LETTERS_NO_LAMS) {
+if ($FORM{$lettera}==4) {
+&addoperation($lettera."1","/LIG","apos0","apos3");
+&addoperation($lettera."2","/LIG","apos0","apos3");
+}
+}
+foreach $lettera (@LAMS) {
+if ($FORM{$lettera}==4) {
+&addoperation($lettera."1","/LIG","apos0","apos3");
+&addoperation($lettera."2","/LIG","apos0","apos3");
+&addoperation($lettera."0","LIG/","apos0",$lettera."4");
+&addoperation($lettera."3","LIG/","apos0",$lettera."5");
+&addoperation($lettera."4","/LIG>","apos0","apos4");
+&addoperation($lettera."5","/LIG>","apos0","apos5");
+}
+}
+
+foreach $lettera (@LETTERS_NO_LAMS) {
+if ($FORM{$lettera}==4) {
+foreach $letterb (@LETTERS_NO_ALIFS) {
+if ($FORM{$letterb}==4 or $FORM{$letterb}==2) {
+&addoperation($lettera."0","LIG/",$letterb."0",$lettera."1");
+&addoperation($lettera."3","LIG/",$letterb."0",$lettera."2");
+&addoperation($lettera."1","/LIG",$letterb."0",$letterb."3");
+&addoperation($lettera."2","/LIG",$letterb."0",$letterb."3");
+&addutfoperation($lettera."0","LIG/",$letterb."0",$lettera."1");
+&addutfoperation($lettera."3","LIG/",$letterb."0",$lettera."2");
+&addutfoperation($lettera."1","/LIG",$letterb."0",$letterb."3");
+&addutfoperation($lettera."2","/LIG",$letterb."0",$letterb."3");
+}
+}
+}
+}
+foreach $lettera (@LAMS) {
+if ($FORM{$lettera}==4) {
+foreach $letterb (@LETTERS_NO_ALIFS) {
+if ($FORM{$letterb}==4 or $FORM{$letterb}==2) {
+&addoperation($lettera."0","LIG/",$letterb."0",$lettera."1");
+&addoperation($lettera."3","LIG/",$letterb."0",$lettera."2");
+&addoperation($lettera."1","/LIG",$letterb."0",$letterb."3");
+&addoperation($lettera."2","/LIG",$letterb."0",$letterb."3");
+&addutfoperation($lettera."0","LIG/",$letterb."0",$lettera."1");
+&addutfoperation($lettera."3","LIG/",$letterb."0",$lettera."2");
+&addutfoperation($lettera."1","/LIG",$letterb."0",$letterb."3");
+&addutfoperation($lettera."2","/LIG",$letterb."0",$letterb."3");
+}
+}
+}
+}
+foreach $lettera (@LETTERS_NO_LAMS) {
+if ($FORM{$lettera}==4) {
+foreach $letterb (@ALIFS) {
+if ($FORM{$letterb}==4 or $FORM{$letterb}==2) {
+&addoperation($lettera."0","LIG/",$letterb."0",$lettera."1");
+&addoperation($lettera."3","LIG/",$letterb."0",$lettera."2");
+&addoperation($lettera."1","/LIG",$letterb."0",$letterb."3");
+&addoperation($lettera."2","/LIG",$letterb."0",$letterb."3");
+&addutfoperation($lettera."0","LIG/",$letterb."0",$lettera."1");
+&addutfoperation($lettera."3","LIG/",$letterb."0",$lettera."2");
+&addutfoperation($lettera."1","/LIG",$letterb."0",$letterb."3");
+&addutfoperation($lettera."2","/LIG",$letterb."0",$letterb."3");
+}
+}
+}
+}
+foreach $lettera (@LAMS) {
+foreach $letterb (@ALIFS) {
+&addoperation($lettera."0","LIG/",$letterb."0",$lettera."4");
+&addoperation($lettera."3","LIG/",$letterb."0",$lettera."5");
+&addoperation($lettera."4","/LIG>",$letterb."0",$letterb."4");
+&addoperation($lettera."5","/LIG>",$letterb."0",$letterb."5");
+&addutfoperation($lettera."0","LIG/",$letterb."0",$lettera."4");
+&addutfoperation($lettera."3","LIG/",$letterb."0",$lettera."5");
+&addutfoperation($lettera."4","/LIG>",$letterb."0",$letterb."4");
+&addutfoperation($lettera."5","/LIG>",$letterb."0",$letterb."5");
+}
+}
+
+foreach $letter (@LETTERS) {
+foreach $vowel ("fatha","kasra","damma","sukun","shadda","madda","vfatha") {
+&addutfvowoperation($letter."0",$vowel);
+# foreach $letterb (@LETTERS) {
+# if ($FORM{$letter}==4 and $FORM{$letterb}==4) {•••
+# &addutfccoperation($letter."0",$vowel,"LIG/",$letterb."0",$letter."1");
+# &addutfccoperation($letter."1",$vowel,"/LIG",$letterb."0",$letterb."3");
+# }
+# }
+}
+}
+
+##encoding operations
+# &operation("'","LIG","a","alifuphamza0"); ä
+# &operation("'","LIG","i","aliflohamza0"); ï
+# &operation("'","LIG","u","wawhamza0"); ü
+# &operation("'","LIG","I","yahamza0"); ÿ
+# &operation("'","LIG","A","alifmadda0"); Â
+&addoperation("lam6","/LIG","lam6","lam8");
+&addoperation("lam7","/LIG","lam6","lam8");
+&addoperation("lam8","/LIG","ha0","ha4");
+&addoperation("apos0","LIG","ba0","banodots0");
+&addoperation("apos3","LIG","ba0","banodots3");
+&addoperation("apos0","LIG","nun0","nunnodots0");
+&addoperation("apos3","LIG","nun0","nunnodots3");
+&addoperation("apos0","LIG","fa0","fanodots0");
+&addoperation("apos3","LIG","fa0","fanodots3");
+&addoperation("apos0","LIG","qaf0","qafnodots0");
+&addoperation("apos3","LIG","qaf0","qafnodots3");
+&addoperation("apos0","LIG","fatha","alifuphamza0");
+&addoperation("apos3","LIG","fatha","alifuphamza3");
+&addoperation("apos4","LIG","fatha","alifuphamza4");
+&addoperation("apos5","LIG","fatha","alifuphamza5");
+&addoperation("apos0","LIG","kasra","aliflohamza0");
+&addoperation("apos3","LIG","kasra","aliflohamza3");
+&addoperation("apos4","LIG","kasra","aliflohamza4");
+&addoperation("apos5","LIG","kasra","aliflohamza5");
+&addoperation("apos0","LIG","alif0","alifmadda0");
+&addoperation("apos3","LIG","alif0","alifmadda3");
+&addoperation("apos4","LIG","alif0","alifmadda4");
+&addoperation("apos5","LIG","alif0","alifmadda5");
+&addoperation("apos0","LIG","damma","wawhamza0");
+&addoperation("apos3","LIG","damma","wawhamza3");
+&addoperation("apos0","LIG","alifmaqsura0","yahamza0");
+&addoperation("apos3","LIG","alifmaqsura0","yahamza3");
+&addoperation("alif0","LIG","aster","alifwasla0");
+&addoperation("alif3","LIG","aster","alifwasla3");
+&addoperation("ta0","LIG","aster","tamarbuta0");
+&addoperation("ta1","LIG","aster","tamarbuta1");
+&addoperation("ta2","LIG","aster","tamarbuta2");
+&addoperation("ta3","LIG","aster","tamarbuta3");
+&addoperation("ta0","LIG","ha0","tha0");
+&addoperation("ta1","LIG","ha0","tha1");
+&addoperation("ta2","LIG","ha0","tha2");
+&addoperation("ta3","LIG","ha0","tha3");
+&addoperation("dal0","LIG","ha0","dhal0");
+&addoperation("dal3","LIG","ha0","dhal3");
+# &addoperation("za0","LIG","ha0","zhe0");
+# &addoperation("za3","LIG","ha0","zhe3");
+# &addoperation("kaf0","LIG","ha0","khe0");
+# &addoperation("kaf1","LIG","ha0","khe1");
+# &addoperation("kaf2","LIG","ha0","khe2");
+# &addoperation("kaf3","LIG","ha0","khe3");
+&addoperation("lam0","LIG","quatre","lam4");
+&addoperation("lam3","LIG","cinq","lam5");
+&addoperation("lam1","LIG","quatre","lam4");
+&addoperation("lam2","LIG","cinq","lam5");
+&addoperation("alif3","LIG","quatre","alif4");
+&addoperation("alif3","LIG","cinq","alif5");
+&addoperation("alifuphamza3","LIG","quatre","alifuphamza4");
+&addoperation("alifuphamza3","LIG","cinq","alifuphamza5");
+&addoperation("aliflohamza3","LIG","quatre","aliflohamza4");
+&addoperation("aliflohamza3","LIG","cinq","aliflohamza5");
+&addoperation("alifmadda3","LIG","quatre","alifmadda4");
+&addoperation("alifmadda3","LIG","cinq","alifmadda5");
+&addoperation("alifwasla3","LIG","quatre","alifwasla4");
+&addoperation("alifwasla3","LIG","cinq","alifwasla5");
+&addoperation("sin0","LIG","ha0","shin0");
+&addoperation("sin1","LIG","ha0","shin1");
+&addoperation("sin2","LIG","ha0","shin2");
+&addoperation("sin3","LIG","ha0","shin3");
+# &addoperation("gaf0","LIG","ha0","ghayn0");
+# &addoperation("gaf1","LIG","ha0","ghayn1");
+# &addoperation("gaf2","LIG","ha0","ghayn2");
+# &addoperation("gaf3","LIG","ha0","ghayn3");
+&addoperation("plus","LIG","fatha","shaddafatha");
+&addoperation("plus","LIG","kasra","shaddakasra");
+&addoperation("plus","LIG","damma","shaddadamma");
+&addoperation("fatha","LIG","N","fathatan");
+&addoperation("kasra","LIG","N","kasratan");
+&addoperation("damma","LIG","N","dammatan");
+&addoperation("fatha","LIG","aster","vfatha");
+&addoperation("vfatha","LIG","aster","madda");
+&addoperation("shaddafatha","LIG","aster","shaddavfatha");
+&addoperation("shaddavfatha","LIG","aster","shaddamadda");
+&addoperation("shaddafatha","LIG","N","shaddafathatan");
+&addoperation("shaddakasra","LIG","N","shaddakasratan");
+&addoperation("shaddadamma","LIG","N","shaddadammatan");
+&addoperation("zwj0","LIG","zwj0","keshideh0");
+&addoperation("zwj3","LIG","zwj0","keshideh3");
+&addoperation("keshideh0","/LIG>","zwj0","keshideh0");
+&addoperation("keshideh3","/LIG>","zwj0","keshideh3");
+
+if (-e "dad$STYLE.adjust") {
+open ADJ, "dad$STYLE.adjust";
+while (<ADJ>) {
+if (m/^KRN ([^ ]+) ([^ ]+) ([0-9.-]+)/) {
+$l=$1;
+$r=$2;
+$k=$3;
+if ($POS{$l} ne "" and $POS{$r} ne "") {
+if ($LIGS{$POS{$l}} eq "") {
+$LIGS{$POS{$l}} = "KRN:".$POS{$r}.":".$k;
+} else {
+$LIGS{$POS{$l}} .= "#KRN:".$POS{$r}.":".$k;
+}
+}
+}
+elsif (m/^ADJ ([^ ]+) ([^ ]+) ([0-9.-]+) ([0-9.-]+)/) {
+$l=$1;
+$r=$2;
+$h=$3;
+$v=$4;
+if ($POS{$l} ne "" and ($POS{$r} ne "" or $r eq "#UVOWEL#" or $r eq "#LVOWEL#")) {
+$HADJUST{"$l:$r"}=$h;
+$VADJUST{"$l:$r"}=$v;
+}
+}
+}
+close ADJ;
+}
+
+%ALREADY_OUTPUT=();
+
+sub clone_LIGS {
+my $orig=shift;
+my $diac=shift;
+my $decalage=shift;
+
+my $new=$orig."+".$diac;
+
+foreach $i ("0","1","2","3","4","5","6","7","8") {
+if ($POS{$orig.$i} ne "") {
+
+
+###############
+$POS{$new.$i}=sprintf("%X",hex($POS{$orig.$i})+$decalage*256);
+
+my @lesLIGS=split(/#/,$LIGS{$POS{$orig.$i}});
+my @tmp=();
+foreach $laLIG (@lesLIGS) {
+($a,$b,$c)=split(/:/,$laLIG);
+
+if ($a eq "LIG/" and hex($b)<256) { $c=sprintf("%X",hex($c)+$decalage*256); }
+push @tmp, "$a:$b:$c";
+#if ($b eq "69" and $c eq "A6C") { print STDERR "zut"; }
+if ($UTF_GOTO{$b} ne "") {
+if ($decalage==8 and ($diac eq "fatha" or $diac eq "kasra" or $diac eq "damma" or $diac eq "fathatan" or $diac eq "kasratan" or $diac eq "dammatan" or $diac eq "vfatha" or $diac eq "damma")) {}
+else { push @tmp, "$a:".$UTF_GOTO{$b}.":$c"; }
+#if ($UTF_GOTO{$b} eq "0650" and $c eq "26C") { print STDERR "$b $c yes"; }
+}
+}
+
+###############
+if ($diac eq "fathatan" or $diac eq "kasratan" or $diac eq "dammatan") {
+$new_without_tan=$new;
+$new_without_tan=~s/tan$//;
+&addoperation($new_without_tan.$i,"LIG","N",$new.$i);
+}
+elsif ($diac eq "shaddafathatan" or $diac eq "shaddakasratan" or $diac eq "shaddadammatan") {
+$new_without_tan=$new;
+$new_without_tan=~s/tan$//;
+&addoperation($new_without_tan.$i,"LIG","N",$new.$i);
+$diac_without_shadda=$diac;
+$diac_without_shadda=~s/^shadda//;
+&addplusutfvowoperation($orig."+"."shadda".$i,"LIG",$diac_without_shadda,$new.$i);
+}
+elsif ($diac eq "shaddafatha" or $diac eq "shaddakasra" or $diac eq "shaddadamma") {
+$diac_without_shadda=$diac;
+$diac_without_shadda=~s/^shadda//;
+&addoperation($orig."+"."shadda".$i,"LIG",$diac_without_shadda,$new.$i);
+&addplusutfvowoperation($orig."+"."shadda".$i,"LIG",$diac_without_shadda,$new.$i);
+}
+elsif ($diac eq "shaddavfatha") {
+&addoperation($orig."+"."shaddafatha".$i,"LIG","aster",$orig."+"."shaddavfatha".$i);
+&addplusutfvowoperation($orig."+"."shadda".$i,"LIG","vfatha",$new.$i);
+}
+elsif ($diac eq "vfatha") {
+&addoperation($orig."+"."fatha".$i,"LIG","aster",$orig."+"."vfatha".$i);
+}
+elsif ($diac eq "madda") {
+&addoperation($orig."+"."vfatha".$i,"LIG","aster",$orig."+"."madda".$i);
+}
+elsif ($diac eq "shaddamadda") {
+&addoperation($orig."+"."shaddavfatha".$i,"LIG","aster",$orig."+"."shaddamadda".$i);
+&addplusutfvowoperation($orig."+"."shadda".$i,"LIG","madda",$new.$i);
+}
+###############
+
+$LIGS{$POS{$new.$i}}=join("#",@tmp);
+###############
+
+
+}
+}
+}
+
+
+$UVOWEL{"fatha"}=1;
+$UVOWEL{"damma"}=1;
+$LVOWEL{"kasra"}=1;
+$UVOWEL{"fathatan"}=1;
+$UVOWEL{"dammatan"}=1;
+$LVOWEL{"kasratan"}=1;
+$UVOWEL{"shaddafatha"}=1;
+$UVOWEL{"shaddadamma"}=1;
+$UVOWEL{"shaddakasra"}=1;
+$UVOWEL{"shaddafathatan"}=1;
+$UVOWEL{"shaddadammatan"}=1;
+$UVOWEL{"shaddakasratan"}=1;
+$UVOWEL{"sukun"}=1;
+$UVOWEL{"shadda"}=1;
+$UVOWEL{"madda"}=1;
+$UVOWEL{"vfatha"}=1;
+$UVOWEL{"shaddavfatha"}=1;
+$UVOWEL{"shaddamadda"}=1;
+
+sub buildchar_one {
+my $base=shift;
+my $form=shift;
+my $diac=shift;
+my $decalage=shift;
+my $position=sprintf("%X",hex($POS{$base.$form})+$decalage*256);
+my $res="";
+
+if ($POS{"$base$form"} ne "") {
+$POS{"$base+$diac$form"}=$position;
+&addoperation("$base$form","LIG",$diac,"$base+$diac$form");
+&addplusutfvowoperation("$base$form","LIG",$diac,"$base+$diac$form");
+$res="(CHARACTER H $position (COMMENT $base+$diac$form)
+ (CHARWD R ".$WIDTH{$POS{$base.$form}}.")
+ (CHARHT R ".$HEIGHT{$POS{$base.$form}}.")
+ (CHARDP R ".$DEPTH{$POS{$base.$form}}.")
+ (MAP
+ (SELECTFONT D 0)
+";
+
+if ($UVOWEL{$diac}==1 and ($HADJUST{"$base$form:#UVOWEL#"} ne "" or $VADJUST{"$base$form:#UVOWEL#"} ne "")) {
+$HADJUST{"$base$form:$diac"}=$HADJUST{"$base$form:#UVOWEL#"};
+$VADJUST{"$base$form:$diac"}=$VADJUST{"$base$form:#UVOWEL#"};
+}
+if ($LVOWEL{$diac}==1 and ($HADJUST{"$base$form:#LVOWEL#"} ne "" or $VADJUST{"$base$form:#LVOWEL#"} ne "")) {
+$HADJUST{"$base$form:$diac"}=$HADJUST{"$base$form:#LVOWEL#"};
+$VADJUST{"$base$form:$diac"}=$VADJUST{"$base$form:#LVOWEL#"};
+}
+
+$res.=
+" (PUSH)
+ (SETCHAR H ".$POS{$base.$form}.")
+ (POP)
+";
+if ($HADJUST{"$base$form:$diac"} ne "" or $VADJUST{"$base$form:$diac"} ne "")
+{
+$res.=
+" (PUSH)
+ (MOVERIGHT R ".($HADJUST{"$base$form:$diac"}/1000).")
+ (MOVEUP R ".($VADJUST{"$base$form:$diac"}/1000).")
+ (SETCHAR H ".$POS{$diac}.")
+ (POP)
+"; } else {
+$res.=" (SETCHAR H ".$POS{$diac}.")
+"; }
+$res.=" )
+ )
+";
+}
+}
+
+foreach $utf (sort keys %UTFPOS) {
+if ($WIDTH{$POS{$utf}} ne "") {
+$BUILD .= "(CHARACTER H ".$UTFPOS{$utf}." (COMMENT char".$UTFPOS{$utf}.")
+ (CHARWD R ".$WIDTH{$POS{$utf}}.")
+ (CHARHT R ".$HEIGHT{$POS{$utf}}.")
+ (CHARDP R ".$DEPTH{$POS{$utf}}.")
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H ".$POS{$utf}.")
+ )
+ )
+";
+}
+}
+
+foreach $vowel ("fatha","kasra","damma","fathatan","kasratan","dammatan","sukun","shadda","shaddafatha","shaddakasra","shaddadamma","shaddafathatan","shaddakasratan","shaddadammatan",
+"vfatha","shaddavfatha","madda","shaddamadda") #,"shadda","sukun","madda","shaddafatha","shaddakasra","shaddadamma","shaddafathatan","shaddakasratan","shaddadammatan")
+{
+foreach $letter (@LETTERS_NO_LAMS_NO_ALIFS) {
+if ($FORM{$letter}==4) {
+$BUILD .= &buildchar_one($letter,"0",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"1",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"2",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"3",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"4",$vowel,$DECALAGE{$vowel});
+} elsif ($FORM{$letter}==2) {
+$BUILD .= &buildchar_one($letter,"0",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"3",$vowel,$DECALAGE{$vowel});
+} elsif ($FORM{$letter}==1) {
+$BUILD .= &buildchar_one($letter,"0",$vowel,$DECALAGE{$vowel});
+}
+&clone_LIGS($letter,$vowel,$DECALAGE{$vowel});
+}
+foreach $letter (@LAMS) {
+$BUILD .= &buildchar_one($letter,"0",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"1",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"2",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"3",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"4",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"5",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"6",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"7",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"8",$vowel,$DECALAGE{$vowel});
+&clone_LIGS($letter,$vowel,$DECALAGE{$vowel});
+}
+foreach $letter (@ALIFS) {
+$BUILD .= &buildchar_one($letter,"0",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"3",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"4",$vowel,$DECALAGE{$vowel});
+$BUILD .= &buildchar_one($letter,"5",$vowel,$DECALAGE{$vowel});
+&clone_LIGS($letter,$vowel,$DECALAGE{$vowel});
+}
+$BUILD .= &buildchar_one("hamza","0",$vowel,$DECALAGE{$vowel});
+&clone_LIGS("hamza",$vowel,$DECALAGE{$vowel});
+}
+
+# sub printLIGS {
+# my $res="";
+# my $letter=shift;
+# if ($ALREADY_OUTPUT{$POS{$letter}} ne "") { return ""; }
+# else { $ALREADY_OUTPUT{$POS{$letter}}=1;
+# if ($LIGS{$POS{$letter}} ne "") {
+# @lesLIGS=split(/#/,$LIGS{$POS{$letter}});
+# $res .= " (LABEL H ".$POS{$letter}.")\n";
+# foreach $uneLIG (@lesLIGS) {
+# ($LIG,$right,$result)=split(/:/,$uneLIG);
+# $res .= " ($LIG H $right H $result)\n";
+# }
+# $res .= " (STOP)\n";
+# }
+# return $res;
+# }
+# }
+
+%BIG=();
+foreach $key (sort keys %LIGS) {
+$BIG{$key."|".$LIGS{$key}}=1;
+}
+%LIGS=();
+foreach $entry (sort keys %BIG) {
+($left,$right)=split(/\|/,$entry);
+$LIGS{$left}=$right;
+}
+
+sub erase_ligature {
+my $left=shift;
+my $right=shift;
+$LIS{$left} =~ /#$right:[^:]+:[^#:]+/g;
+$LIS{$left} =~ /^$right:[^:]+:[^#:]+/;
+}
+
+&erase_ligature("0644","0644");
+&alter_LIGS("0644","LIG","0644","F7");
+
+foreach $letterb (@ALIFS) {
+&addutfoperation("ll0","LIG/",$letterb."0","ll5");
+&addutfoperation("ll5","/LIG>",$letterb."0",$letterb."5");
+}
+
+foreach $letterb (@LETTERS_NO_ALIFS) {
+if ($letterb ne "ha") {
+if ($FORM{$letterb}==4 or $FORM{$letterb}==2) {
+&addutfoperation("ll0","LIG/",$letterb."0","ll1");
+&addutfoperation("ll1","/LIG",$letterb."0",$letterb."3");
+}
+}
+}
+&addutfoperation("ll0","LIG","ha0","LLh0");
+
+###write dad.ovp
+open OUT, ">dad$STYLE.ovp";
+print OUT $PRELUDE;
+foreach $key (sort keys %LIGS) {
+if ($key ne "" and $LIGS{$key} ne "") {
+@lesLIGS=split(/#/,$LIGS{$key});
+$res .= " (LABEL H $key)\n";
+foreach $uneLIG (@lesLIGS) {
+($LIG,$right,$result)=split(/:/,$uneLIG);
+if ($LIG eq "KRN") {
+$result /= 1000;
+$res .= " ($LIG H $right R $result)\n";
+} else {
+$res .= " ($LIG H $right H $result)\n";
+}
+}
+$res .= " (STOP)\n";
+}
+}
+print OUT $res;
+
+# print OUT &printLIGS("zwj0");
+# foreach $letter (@LETTERS_NO_LAMS_NO_ALIFS) {
+# if ($FORM{$letter}==4) {
+# print OUT &printLIGS($letter."0");
+# print OUT &printLIGS($letter."1");
+# print OUT &printLIGS($letter."2");
+# print OUT &printLIGS($letter."3");
+# } elsif ($FORM{$letter}==2) {
+# print OUT &printLIGS($letter."0");
+# print OUT &printLIGS($letter."3");
+# } elsif ($FORM{$letter}==1) {
+# print OUT &printLIGS($letter."0");
+# }
+# }
+# foreach $letter (@LAMS) {
+# print OUT &printLIGS($letter."0");
+# print OUT &printLIGS($letter."1");
+# print OUT &printLIGS($letter."2");
+# print OUT &printLIGS($letter."3");
+# print OUT &printLIGS($letter."4");
+# print OUT &printLIGS($letter."5");
+# }
+# foreach $letter (@ALIFS) {
+# print OUT &printLIGS($letter."0");
+# print OUT &printLIGS($letter."3");
+# print OUT &printLIGS($letter."4");
+# print OUT &printLIGS($letter."5");
+# }
+# foreach $diac (@DIACS) {
+# print OUT &printLIGS($diac);
+# }
+# foreach $diac (@vDIACS) {
+# print OUT &printLIGS($diac."tan");
+# print OUT &printLIGS("shadda".$diac);
+# print OUT &printLIGS("shadda".$diac."tan");
+# }
+
+
+print OUT " )\n"; ###END OF LIGTABLE
+
+foreach $i (0 .. 255) {
+$i_hex=sprintf("%X",$i);
+$i_hex=~s/^([0-9A-F])$/0\1/;
+print OUT "(CHARACTER H $i_hex (COMMENT char$i_hex)
+ (CHARWD R ".$WIDTH{$i_hex}.")
+ (CHARHT R ".$HEIGHT{$i_hex}.")
+ (CHARDP R ".$DEPTH{$i_hex}.")
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H $i_hex)
+ )
+ )
+";
+}
+
+
+print OUT $BUILD;
+
+
+
+
+close OUT;
+system("cp Dad$STYLE_.pfa /hom/yannis/texmf-static/fonts/pfb/");
+system("wovp2ovf dad$STYLE.ovp");
+
+open IN, "dad$STYLE.ovp";
+while (<IN>) {
+if (m/LIG[^T]/) { $countLIG++; }
+if (m|/LIG/|) { $countSMA++; }
+elsif (m|/LIG|) { $countSMA++; }
+elsif (m|LIG/|) { $countSMA++; }
+if (m/KRN/) { $countKRN++; }
+if (m/CHARACTER/) { $countCHA++; }
+}
+print "$countLIG ligatures ($countSMA smart), $countKRN kerns, $countCHA characters\n";
+close IN;
diff --git a/language/arabic/dad/utf8-to-dad.pl b/language/arabic/dad/utf8-to-dad.pl
new file mode 100755
index 0000000000..e834ea5843
--- /dev/null
+++ b/language/arabic/dad/utf8-to-dad.pl
@@ -0,0 +1,82 @@
+#!/usr/bin/perl
+use utf8;
+binmode stdin,":utf8";
+binmode stdout,":utf8";
+
+while (<>) {
+s/لله/LLh/g;
+s/لِله/LiLh/g;
+s/لِّله/L+iLh/g;
+s/أ/'a/g;
+s/إ/'i/g;
+s/ؤ/'u/g;
+s/ىٔ/'I/g;
+s/هٔ/e/g;
+s/آ/'A/g;
+s/ء/|/g;
+s/ٱ/A*/g;
+s/آ/'A/g;
+s/أ/'a/g;
+s/ؤ/'u/g;
+s/إ/'i/g;
+s/ئ/'I/g;
+s/ا/A/g;
+s/ب/b/g;
+s/ة/t*/g;
+s/ت/t/g;
+s/ث/c/g;
+s/ج/j/g;
+s/ح/H/g;
+s/خ/x/g;
+s/د/d/g;
+s/ذ/d•/g;
+s/ر/r/g;
+s/ز/z/g;
+s/س/s/g;
+s/ش/s•/g;
+s/ص/S/g;
+s/ض/D/g;
+s/ط/T/g;
+s/ظ/Z/g;
+s/ع/`/g;
+s/غ/R/g;
+s/ف/f/g;
+s/ق/q/g;
+s/ك/k/g;
+s/ل/l/g;
+s/م/m/g;
+s/ن/n/g;
+s/ه/h/g;
+s/و/U/g;
+s/ى/I/g;
+s/ي/Y/g;
+s/پ/p/g;
+s/گ/g/g;
+s/چ/C/g;
+s/ۀ/e/g;
+s/ژ/J/g;
+s/ڤ/v/g;
+s/ٮ/'b/g;
+s/ں/'n/g;
+s/ڡ/'f/g;
+s/ٯ/'q/g;
+s/ً/aN/g;
+s/ٌ/uN/g;
+s/ٍ/iN/g;
+s/َ/a/g;
+s/ُ/u/g;
+s/ِ/i/g;
+s/ّ/+/g;
+s/ْ/o/g;
+s/ٰ/a*/g;
+s/ٓ/a**/g;
+s/،/,/g;
+s/؟/?/g;
+s/؛/;/g;
+tr/٠١٢٣٤٥٦٧٨٩٪/0123456789%/;
+s/‍/-/g;
+s/ـ/--/g;
+s/([tds])h/\1-h/g;
+s/•/h/g;
+print;
+} \ No newline at end of file